Ответы пользователя по тегу Python
  • Собеседник на нейросети или как собрать велосипед?

    @dmshar
    А может, если пока не умеете самостоятельно произвести Google-поиск, создавать чат бота рановато? Ведь даже имея какие-то подсказки, возникнут десятки вопросы, ответы на которые придется спрашивать у Гуугла? Или опять придете сюда?
    Ну ладно, вот первая десятка ответов, который дал поиск. Для пользователей с разным уровнем исходной подготовки. Он вам по каким-то причинам не подходит?
    https://serpstat.com/ru/blog/kak-sozdat-chat-bota/
    https://shcherbakovs.com/stepbystep-plan-to-create...
    https://habr.com/ru/post/311008/
    https://vc.ru/services/57488-14-servisov-dlya-sozd...
    https://ain.ua/2017/03/23/5-servisov-kotorye-pozvo...
    https://ru.wix.com/russianhtml/leader-ru?utm_sourc...
    https://neurohive.io/ru/tutorial/kak-sozdat-chat-b...
    https://proglib.io/p/chat-bots-intro/
    https://habr.com/ru/post/317732/
    https://habr.com/ru/post/340190/
    Ответ написан
  • Как построить модель, когда обучающая выборка состоит из ежеминутных показаний?

    @dmshar
    В вашей задачи скорее всего показатель качества каким-то образом зависит от изменений параметров процесса в течении предыдущего часа (а может - не только одного, но и нескольких предыдущих часов - т.н. системы с задержкой. А может - и еще замысловатее - зависимость есть и от значения показателя качества в некоторые предыдущие периоды). Например - не было-ли выбросов, не происходили ли циклические изменения и пр. Таких показателей процесса - много. От тривиальных - среднего, среднеквадратичного отклонения, до более сложных - формы функции распределения значений, энтропии, наличия тренда и его характеристик и пр. И скорее всего именно от каких-то из этих показателей и/или их сочетаний, а так-же от взаимных изменений показателей наблюдаемых вами временных рядов между собой каким-то образом зависит то значение показателя качества, которое вы получаете ежечасно. Вот собственно это вам и надо выяснить. Т.е. анализируем процесс за час (это ваши входные данные) - делаем предсказание качества (это выходной результат вашей модели). Ну, можно, конечно, тупа попытаться запихнуть в какую нибудь сетку все своим сырые данные (N*60 точек за час, где N-количество ваших датчиков), но думаю толку от этого будет мало. Поэтому, очевидно, первый этап, который вам придется пройти - Feature engineering, т.е. конструирования параметров, по которым потом вы и будете обучать свою модель.
    Вот как-то так.
    Ответ написан
    Комментировать
  • Как вывести на экран список ребер, считанных из файла?

    @dmshar
    То-ли я чего-то недопонимаю, то-ли вопрос - почти детский.
    В вашей постановке любой элемент матрицы, отличный от нуля соответствует ребру, индексы этого элемента - узлы связанные данным ребром, а значение - вес. Все!
    Вопрос-то в чем? Как перебрать все элементы матрицы?
    Ответ написан
  • Как можно определить класс по графику с помощью свёрточных нейронных сетей?

    @dmshar
    Типичная задача многомерной классификации. Решается либо любым классическим методом (и при двух входных параметрах и трех классах - наверняка это предпочтительно) из библиотеки Scikit-Learn к примеру.

    Ну, вот тут автор балуется с Keras:
    https://blog.stroganov.pro/классификация-нейросетью/
    Можете повторить подвиг, если очень хочется.

    А вот зачем сюда прикручивать сверточные сети, предназначенные вообще-то говоря для работы с визуализацией - не понимаю. Из-за моды?
    Ответ написан
    1 комментарий
  • С какой книги начать изучение блокчейн?

    @dmshar
    Вот тут:
    https://www.amazon.com/Mastering-Blockchain-Distri...
    Не на Python конечно, но очень подробно и методично. После нее будет все равно, на каком языке работать дальше.
    Ответ написан
    Комментировать
  • Как сделать поиск деталей на изображении?

    @dmshar
    Ну, если речь идет о рспознавании лиц, то, например:
    https://habr.com/ru/post/301096/
    https://habr.com/ru/company/synesis/blog/238129/
    api-2d3d-cad.com/face_recognition_with_opencv
    Если объекты "вообще" - то можно начать отсюда:
    https://www.asozykin.ru/deep_learning/2018/07/24/O...
    Ответ написан
    Комментировать
  • Что нужно знать, чтобы заниматься анализом данных?

    @dmshar
    Что-бы заниматься анализом данных надо, в первую очередь:
    1. Уметь САМОСТОЯТЕЛЬНО искать и находить информацию в интернете.
    2. Уметь САМОСТОЯТЕЛЬНО анализировать найденную информацию.
    3. Уметь САМОСТОЯТЕЛЬНО делать выводы из анализа.
    Пока у ТС с этим, очевидно, никак. Данный вопрос даже на Тостере задается по три раза в неделю, а в интернете - ежедневно куча статей на тему. Открывем теги "Машинное обучение", "Data science", "Data mining", да "IT-ОБРАЗОВАНИЕ" наконец. и вперед! "А вот нет, искать - не хочется, найти - не получается, пусть кто-то мне другой найдет и расскажет.

    И еще. Если даже "джун в программировании" вам не нравится, потому как "очень много учить надо", то хочу вас разочаровать, в анализе данных учить надо во много раз больше.
    Ответ написан
  • Почему в решениях с одинаковой сложностью существенная разница во времени расчета?

    @dmshar
    "Я вам не скажу за всю Одессу" :-), но давайте сравним только with_map(a, l) и traditional_way(a, l). В обоих функциях присутствует цикл (for item in l:) который выполняется примерно за одинаковое время. Но with_map содержит еще и строку
    z = min(map(lambda x: abs(a-x), l)) , которая сначала выполняет map(lambda x: abs(a-x), l) -
    еще один проход по массиву, а в полученном результате ищет min - т.е. пробегает по списку еще раз. Итого - три прохода по массиву, вместо одного в traditional_way. С остальными функциями - примерно та-же история. (Например min(l, key=lambda x: abs(a-x)) - это как минимум два прохода по вашему списку).
    Ответ написан
    3 комментария
  • Какие технологии выбрать для веб приложения с использованием нейронных сетей?

    @dmshar
    Стандартный стек библиотек для реализации алгоритмов ML "с нуля на Python":
    - Scipy,
    - NumPy,
    - Pandas,
    - Scikit-learn.
    Для визуализации - связка с D3.js.
    Для курсового проекта - хватит более чем.
    Ответ написан
    Комментировать
  • Как скачать и обрезать изображения?

    @dmshar
    Вообще-то вставлять в paint для того, что бы потом "обрезать и сохранить" вовсе не надо. Если, конечно, вы не собираетесь делать это вручную. Но если вы этого не понимаете, то я слабо представляю себе, как можно объяснить, как выполнить все остальное. Ну, посмотрите, например, как работать с OpenCV. Впрочем, если вы поведаете нам, где и что вы уже учили, то может и удастся немного "адаптировать" объяснение под вас..
    Ответ написан
    4 комментария
  • Знаете ли вы ещё подобные проекты?

    @dmshar
    Таких проектов - с открытым исходным кодом в том числе - достаточно много в сети. Вы бы предварительно рассказали, что именно вы считаете "интересным" проектом. Например, то что я увидел, мне интересным не показался.
    Ответ написан
    6 комментариев
  • Нейронная сеть. Как предсказать победу одной из трех команд?

    @dmshar
    Задача предсказания победителя в матче ничем не отличается от задачи классификации животного. Только в спортивной задаче объектом классификации выступает "матч" который включает описание команд, в нем принявших участие. Результат классификации - соответственно не "кошки"/"собачки", а "победа команды 1"/ "победа команды 2".
    Соответствующие "готовые реализации" есть и в Python, и в R, да и в практической любой библиотеке по Machine Learning.
    Ответ написан
  • Как сделать бинарную классификацию текстов на python?

    @dmshar
    Вообще-тот материалов в сети не просто много, а необозримо много. На любой цвет и вкус, с учетом любого инструмента, которым вы владеете. Практически любая книга по машинному обучения или по Нейросетям сегодня обязательно содержит раздел, посвященную работу с текстами и классификация - самая простая задача, которая при 'том обсуждается.
    Вот тут почти элементарное введение в тему, что как и почему делать:
    https://tproger.ru/translations/text-classificatio...
    Вот тут разбивают на 20 тем, но вы можете и сократить до нужных вам двух:
    scikit-learn.org/stable/tutorial/text_analytics/wo...
    Вот тут описана "Готовое решение" с помощью другой библиотеки
    www.nltk.org
    Но главная проблема не в источниках. Главный вопрос - у вас есть достаточно объемный и при этом размеченный набор данных для обучения любого алгоритма? Если есть - можно и источники поизучать, а если нет - то подумайте, как найти такой набор.
    Ответ написан
    Комментировать
  • Как запустить pretrained model?

    @dmshar
    Попробуйте просто убрать этот оператор.
    Ответ написан
  • Как создать Обучаемый бот на основе ML?

    @dmshar
    "я вот новичок в машинном обучении" + "но есть хорошая идея, как можно обучать бота" ---> Вы уверены, что идея действительно хорошая?
    обучать бота решать задачи разных типов в сфере финансы ---> Вы уверены, что один бот сможет решать задачи разных типов?
    То есть будет проблема бот чтобы понял эту проблему ---> Ага, бот должен сам понять проблему. Как вы себе это реально представляете?
    и решил с соответсвующими формулами ---> т.е. вы ожидаете от бота решения с формулами??? Простите, а зачем?
    Пока в голову пришло только по порядку всевозможные проблемы писать----> Эта фраза весьма загадочна. Какие "всевозможные" проблемы по какому "порядку" писать? Зачем? какое это имеет отношение к написанию самого бота???
    Может кто то сможет подсказать оптимальное решение?---> Отпимальным будет начать с того, что-бы разобраться с тем, что такое "машинное обучение", что такое "бот", как вообще там все работает, потом внятно сформулировать вопрос. За одной по дороге поймете, на сколько "хороша" идея.
    Ответ написан
  • Выбор архитектуры и средств реализации сверточной нейронной сети?

    @dmshar
    Вообще-то ответ на три первых заданных вопроса - это нехилая себе такая работа. С соответствующим анализом, сравнением и пр. необходимыми атрибутами.
    Ответ на три последних - это на уровне студента первокурсника-троечника(отличники даже на первом курсе таких вопросов уже не задают).
    Поэтому, исходя из заданных вопросов, у вас есть два пути. Лучшее что вы можете сделать - если не хотите, конечно, с треском завалить проект - это нанять компетентного в этих вопросах человека. Дорого конечно, но за знания и умения (других) надо платить.
    Второй путь - самостоятельно разобраться в теме, благо литературы - навалом, даже как-то не совсем удобно их тут перечислять. Ну, для затравки, разве что:
    1. Хайкин Нейронные сети полный курс. 2 издание
    2. Николенко С., Кадурин А., Архангельская Е. Глубокое обучение. — СПб.: Питер, 2018
    3. Гудфеллоу Я., Бенджио И., Курвилль А. Глубокое обучение -М.: ДМК Пресс, 2018.
    4. David Kriesel A Brief Introduction to Neural Networks
    (вон, в комментах вам даже чью-то докторскую диссертацию по ходу освоить предложили :-). Правда не думаю, что вы в ней разберетесь, не освоив истоки)
    Ну и в интернете ссылок более чем много. Для совсем ленивых - есть видеокурсы. Даже на русском :-)
    Только долгий этот путь. Так что лучше все-таки - первый.
    Ответ написан
    1 комментарий
  • Есть ли библиотеки для автоматической генерации нейросетей?

    @dmshar
    Ну, начнем с TensorFlow. Все что упомянуто, можно указывать.
    Ответ написан
    Комментировать
  • Код или математика?

    @dmshar
    Давайте все таки строго формализуем вопрос.
    "в коде обучения нейронной сети или математической модели этого самого обучения" - как то совсем нечетко. Предположим, вы имели ввиду
    "математическая модель обучения" =="алгоритм обучения сети"
    "код обучения" == "программная реализация этого самого алгоритма".
    Тогда задача получает строгую формулировку: "Мы запрограммировали некоторый процесс обучения. Результат не такой, как мы ожидаем. Где ошибка - в алгоритме или в коде".
    И если это так, то в такой постановке задача хоть и не может быть решена с абсолютной точностью, но понятно что надо делать, что-бы дать ответ. По большому счету, она теперь ничем не отличается от обычной задачи, решаемой на этапе тестирования при разработке любого программного продукта - от игрушек до веб-сайтов.

    Вариантов решения два.

    Аналитический:
    1. Глубинный анализ алгоритма (т.е. еще раз изучаем, что написано в той книжке, откуда мы его взяли, ведь и в книжках бывают ошибки).
    1. Традиционный код-ревью.
    (Ну, как тут уже пошутили - можно взвалить обе эти задачи на преподавателя :-). ).

    Экспериментальный:
    1. Находим и четко записываем алгоритм.
    2. Даем его запрограммировать двум, трем.... чем больше-тем лучше... программистам. Получаем множество реализаций одного и того-же алгоритма.
    3. Прогоняем процесс обучения сети через каждую реализацию. Сравниваем результаты с ожидаемыми.
    4. Если реализации дали результаты, отличные от ожидаемых, но совпадающие между собой - ищи ошибки в алгоритме. Если реализации дали результаты, отличные от ожидаемых, но различные между собой - ищи ошибки в коде.

    Но простых, "книжных" решений этой задачи - нет.
    Ответ написан
    Комментировать
  • Что не так с моим кодом python?

    @dmshar
    При попытке четвертого захода в функцию dot первым параметром передается число (конкретно -"class 'float" - 0.5833820394550312) , а не список.
    Ответ написан