• Где брать данные для изучения машинного обучения?

    @doktr
    Data Scientist
    Если еще актуально, то тут много всего интересного: www.quandl.com
    Ответ написан
    Комментировать
  • Как преобразовывать категориальные данные с закодированными значениями?

    @doktr
    Data Scientist
    Подойдет функция из pandas:
    pd.get_dummies(df['n_school'])
    Ответ написан
    Комментировать
  • Как уйти с распутья технологий?

    @doktr
    Data Scientist
    Если хотите стать программистом, учите С++, остальное приложится.
    Ответ написан
  • Как хранить в БД много статистических данных?

    @doktr
    Data Scientist
    Однородные данные разбросаны по нескольким серверам в кластере. Условно говоря, на одном сервере данные за февраль 2011, на другом - за март 2014, так что особой разницы нет, какой давности нужна статистика - все вытаскивается по запросу за примерно одинаковое количество времени. Данные организованы с помощью MapReduce либо другой похожей по применению технологии. Если бы такое огромное количество информации хранилось в реляционных базах данных, то запросы бы жуто тормозили и вместо долей секунд отрабатывали за часы.
    Ответ написан
    Комментировать
  • Запрет на join? Оптимизированная выборка из связи многие-ко-многим без join с параметрами из линкованных таблиц?

    @doktr
    Data Scientist
    Если поля, по которым производится JOIN, имеют индексы, то запрос будет идти гораздо быстрее, чем без них, так что нужно смотреть индивидуально. Если индексов нет, то в плане выполнения, скорее всего, будет FULL SCAN и итоговое время будет пропорционально произведению количества строк в двух соединяемых таблицах - O(M*N).
    Ответ написан
    Комментировать
  • Суть машинного обучения сводится к классификации проанализированных данных?

    @doktr
    Data Scientist
    Основная задача машинного обучения - разработать искусственный интеллект, обладающий восприятием, как минимум таким же, как у человека, чтобы анализировать в автоматическом режиме полученные с помощью данного восприятия факты и предсказывать на основе этого будущее.
    В идеале ИИ должен заменить человека на всех участках - из-за этого многие профессии могут скоро стать совершенно ненужными. Последние, кто останутся у дел - программисты ИИ. Уже сейчас у людей, занимающихся машинным обучением, годовой доход - самый высокий в мире IT. Конкуренция пока не очень большая, так что если начать изучать ML, то можно успеть.
    На Курсере много курсов по машинному обучению, но, возможно. еще понадобятся книги по линейной алгебре, теории вероятности, статистике и матанализу.
    Ответ написан
  • Что выбрать для back-end медицинского портала?

    @doktr
    Data Scientist
    C# и MSSQL в качестве базы.
    Ответ написан
    Комментировать
  • Какой ЯП больше подойдет для создания ИНС?

    @doktr
    Data Scientist
    Python можете выбрать, к нему есть куча модулей для ИИ и научных вычислений (SciPy, NumPy, GraphLab, Pandas и т.д.). В науке это язык номер 1.
    Ответ написан
    Комментировать
  • Язык программирования и технологии для экономических (финансовых) продуктов?

    @doktr
    Data Scientist
    Потребуются еще базы данных, без какой-либо спецификации SQL (Oracle, MS SQL и т.д.) не обойтись. Язык программирования - любой, я бы использовал C# с WPF для десктопа.
    Ответ написан
    Комментировать
  • Какой курс по машинному обучению на Coursera полезнее?

    @doktr
    Data Scientist
    Вашингтонская специализация по ML мне показалась удачной. Недавно прошел ее первый курс - "Machine Learning Foundations: A Case Study Approach", сейчас изучаю второй - "Machine Learning: Regression". После курса ML от Эндрю Ына сначала показалось простовато, но, несмотря на более прикладной характер вашингтонской специализации, в нее включены некоторые алгоритмы, на которые у Ына места не хватило.
    Также большой плюс - в конце каждой недели есть не только тест, но и большое практическое задание (используется iPython Notebook, модули GraphLab, NumPy и т.д.), причем сначала используются готовые рабочие инструменты, а по мере продвижения нужно будет и собственные алгоритмы писать на Python'е. Видно, что труда в курс вложено достаточно, а это показатель того, что курс будет полезен.

    Если брать для сравнения курс Университета Джона Хопкинса "Practical Machine Learning" из специализации Data Science, то там все менее динамично и недостаточно практических заданий.

    Есть еще одна схожая специализация из Вашингтонского университета - "Tackle Real Data Challenges", но ее очень сложно воспринимать из-за достаточно монотонной подачи ведущего плюс практика предложена странная - предлагается поучаствовать в любом конкурсе на Kaggle (что само по себе, конечно, обязательная вещь, но нужны еще задания обучающие) и написать по нему обзор, что гораздо больше бы подошло курсу гуманитарной направленности, но никак не технической.

    P.S. К курсам российского производства у меня отношение скептическое. Если уж американцы в половине случаев не тянут, то чего ждать от отечественных производителей. Со специализацией МФТИ и Яндекса я, конечно, предварительно ознакомился. Начало динамичное - преподаватели вроде бы не страдают бубнением, активно жестикулируют (что тоже очень важно для более быстрого восприятия и концентрации внимания), на заднем фоне цветы, красивая мебель - все это очень хорошо. Если будет время в промежутках между вашингтонскими курсами, то обязательно пройду и этот курс.
    Пока что доступен только первый курс - там собственно машинного обучения нет (только линейная алгебра, начала анализа и Python). Но уже прослеживается нехорошая тенденция - курс состоит всего из 4 недель (понятно, что на математику и начальные знания по модулям больше тратиться не хочется, но что мешает добавить чего-то более существенного, более сложного), а в Вашингтонском первый и второй курсы (дальше пока не смотрел) - 6-недельные (по моему, меньшее количество недель в любом курсе - это явно мало, учитывая, что первая неделя в любом курсе - вводная), причем в первом же курсе в быстром темпе, но довольно подробно дан обзор по основным базовым темам и алгоритмам ML, разве что кроме нейронных сетей.
    Так что не воспринимать курс МФТИ и Яндекса как что-то более, чем дополнение к основным курсам Coursera либо рассчитанное на совсем уж начальную аудиторию, пока что особых оснований нет.
    Ответ написан
    3 комментария
  • Python/Django-кидди, SQL-мартышка, Web-негр — что перспективнее (Ага, «Pre-Junior»)?

    @doktr
    Data Scientist
    Самый реальный вариант - второй (где SQL - на хлеб с маслом всегда будет), первый тоже неплох в перспективе, но третий - точно на любителя.
    Ответ написан
    1 комментарий
  • Какой интересный проект можно сделать по машинному обучению?

    @doktr
    Data Scientist
    Возьмите задачу классификации изображений: определить, кто на фотографии - кошка или собака. Для обучения возьмите пару тысяч фотоизображений кошек и собак. Было бы интересно увидеть результат, хотя, возможно, кто-то уже добился успеха в данной теме.
    Ответ написан
  • Как понимать термин "предметная область"?

    @doktr
    Data Scientist
    Если человек занимается разработкой алгоритмов, например, для банка, то предметная область - финансы. Соответственно, Вам нужно описать, какие Вы будете распознавать образы и для чего.
    Ответ написан
    Комментировать
  • Как определить смысл пользовательского ввода используя семантику или нейронные сети?

    @doktr
    Data Scientist
    Если главная задача бота - определить, правильный или нет ответ на вопрос (y=1 или y=0),
    то это задача классификации.
    Для обучения нужно на входе иметь наборы (для несколько результатов измерений)
    из одной или несколько переменнных (x1, x2, x3 . и т.д., причем x1=1),
    каждому такому набору соответствует определенное значение y (равное 0 или 1).
    Нужно подобрать такое уравнение логистической регрессии h(x), чтобы при h(x)>=0.5 y был равен 1, а при h(x)<0.5 y=0. Для этого с помощью оценки стоимости на обучающем наборе подбирают коэффициенты при иксах - тета1, тета2, тета3 и т.д.. Выводят требуемое уравнение (с помощью градиентного спуска или других методов), по которому можно узнать (с некоторой долей вероятности, близкой к 99%), правильный или нет ответ.
    В качестве иксов можно использовать данные как из вопроса (если они будут не непрерывные числовые, а слова - например, "Эверест", "высота", то этим словам будут соответствовать дискретные значения соответствующих переменных), так и из ответа (для численных значений - непрерывные, для слов и единиц имерений - дискретные).
    Ответ написан
    Комментировать