Ответы пользователя по тегу Машинное обучение
  • Как можно использовать обученные модели в вебе?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    Да много чего можно делать.
    Например, разгрузить серверы, перенести часть вычислений в браузеры.
    С помощью ML можно делать кластеризацию, фильтрацию, распознавания, различные оптимизации в маршрутизациях и т.д.
    Ответ написан
    Комментировать
  • Стоит ли изучать Machine Learning если хочется создавать видеоигры?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    ML в геймдеве можно использовать как на микроуровне, например, для оптимизаций вычислений и различных симуляций развеивания одежды на персонажах, динамики движений, мимики, физики жидкостей и различных материалов и т.д.

    Так же ML в геймдеве можно использовать на макроуровне, т.е. описывать модели которые будут управлять игровым миром, насыщать его событиями, действиями NPC, в общем для оживления мира.

    Так же ML можно использовать для анализа поведения самих игроков, оценивать что им интересно или не интересно, чтобы понимать куда развивать игру дальше.
    Ответ написан
    Комментировать
  • Есть конструктор нейросетей для «чайников»?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    Комментировать
  • Как сформировать HTML(dom) данные в матричном виде для машинного обучения?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    Ну DOM является древовидной структурой (грубо говоря, частный случай графа). Вопрос в том, как представить этот граф в удобном виде?
    В простейшем случае: взять массив из N на N элементов, где N - число элементов DOM, и представить этот граф в виде матрицы смежности. Ну а сами элементы и их атрибуты можно представить в виде вектора из N элементов, где каждый элемент будет категориальным (название тэга). Если нужно учитывать атрибуты этих тегов, то в векторе из N элементов, элементами сделать другие вектора, которые будут состоять из категориального названия тэга, из каких-нибудь там названий классов, основных атрибутов и т.п. Зависит от того, какие атрибуты считать значимыми и учитывать как ML-фичи, а какие можно проигнорировать.

    Ну а сам процесс формирования, это обход DOM-дерева и заполнение соответствующих структур данных.

    А ещё, лет 10 назад я делал такое решение:
    - фильтровал html, оставлял структуру и значимые для меня атрибуты, остальное откидывал
    - заменял контент в тегах и значения атрибутов на некоторые значения по умолчанию (важна была только структура, а не сам контент)
    - при обходе такого отфильтрованного DOM брал хеш от html в строковом представлении каждой обойдённой ноды со всеми дочерними элементами, и накапливал частоту встречаемости таких хешей с разных сайтов

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

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    Погуглите фразу: u-net neural network
    Мне кажется, эта модель как раз то что вам нужно, и она хорошо зарекомендовала себя в сегментации медицинских изображений, и в других задачах машинного обучения (например, Kaggle Sea Lion Population: оценка популяции морск...)
    Ответ написан
  • Где найти специалиста по направлению Машинное обучение?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    В ШАД готовят специалистов по направлению Машинное обучение.
    Ответ написан
    1 комментарий
  • Классификация участков последовательностей с помощью RNN/LSTM?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    А обязательно это делать с помощью RNN или LSTM?
    У свёрточных нейронок ведь есть возможность обучать сами паттерны(свёртки), т.е. как раз те штуки, которые зажигают выходной нейрон, когда паттерн максимально коррелирует с данными под ним. Можно просто считать кол-во зажиганий свёрточного нейрона, тем самым определять кол-во повторов.
    Ответ написан
  • Какую задачу можно решать с помощью генетического алгоритма (маш.обучение) на больших данных?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    Можно решать задачу символьной регрессии.
    Вот, например, на хабре про неё есть статья: https://habrahabr.ru/post/163195/
    Вместо базовых функций (сложения, умножения и т.п.) можно поизвращаться и прикрутить нейронные сети, градиентные бустинги и т.п.
    Ответ написан
    Комментировать
  • Машинное обучение - с чего начинать программисту?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    По поводу математики, думаю полезным будут следующие курсы:
    - дискретная математика
    - математическая статистика
    - теория вероятностей
    - численные методы
    - методы математического моделирования
    - линейная алгебра

    Из программирования:
    - алгоритмы и структуры данных
    - теория графов
    - нейронные сети
    - компьютерная графика (т.к. машинное обучение и нейронные сети в последнее время часто используют именно в компьютерном зрении)
    Ответ написан
    2 комментария
  • С какой книги начать изучать машинное обучение?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    Комментировать
  • Какой интересный проект можно сделать по машинному обучению?

    pro_co_ru
    @pro_co_ru
    Старший инженер-программист
    Откопал такую задачку:

    Искусственный муравей (Artificial Ant). Представляет чрезвычайно сложную задачу15
    для
    генетического программирования. В данной задаче необходимо найти простой алгоритм
    управления роботом-муравьем, который находит и съедает наибольшее количество пищи за
    400 тактов модельного времени16
    . Муравей может двигаться вперед, поворачивать налево и
    направо. Если во время движения он проходит через ячейку с пищей, то он съедает ее.
    Муравей также может «почуять», есть ли в клетке перед ним пища. Решетка с миром, в
    котором живет искусственный муравей показана на рис. 69. След ячеек с пищей известен как
    «След Санта Фе». Мир тороидальный: выход за границы приводит к появлению муравья с
    противоположной стороны.

    Особь искусственного муравья состоит из одного дерева. Оценка приспособленности
    производится следующим образом. Муравей начинает путь с левого верхнего угла и
    повернут направо. Затем начинается исполнение дерева: при активации узла движения или
    сенсора, муравей соответственно двигается или чувствует. Когда исполнение дерева
    заканчивается, оно начинает исполняться с самого начала. Каждое движение занимает 1 такт
    времени. Оценка заканчивается, когда муравей съел всю пищу в мире, либо когда
    закончилось 400 шагов. Приспособленность равна количеству съеденной пищи.
    Задача искусственного муравья отличается от задачи символьной регрессии и булевских
    задач тем, что сами значения на выходах узлов дерева игнорируются. Единственно важным
    является то, как влияет действие узла на сам мир, т.е. побочный эффект от активации узла:
    движение муравья, поворот и т.д. Это означает, что для искусственного муравья порядок
    исполнения узлов определяет действия особи, в то время как для предыдущих задач
    очередность исполнения узлов дерева не играла особой роли. Пример решения (очень
    компактного) для задачи искусственного муравья: (progn3 (if-food-ahead move
    (progn2 left (progn2 (progn3 right right right) (if-food-ahead
    move right)))) move right).
    Ответ написан
    Комментировать