Как стать автором
Обновить

Комментарии 29

Спасибо! Отличная подборка!
А почему «octave» указано как недостаток? Он по синтаксису практически совпадает с matlabом, с которым при анализе данных стоит познакомится. Но, в отличие от matlabа свободный.

Во-первых, потому что, что у Matlab, что у Octave нет нормальной IDE уровня pycharm, и как следствие невозможность рефракторить код. => большие проекты очень тяжело поддерживать и улучшать.


Во-вторых, потому при работе с нейронными сетями достаточно много предобработки и постобработки данных и прочей инженерии. Многое можно делать в MatLab, но обычно это море боли.


В-третьих, хочется чтобы при работе с нейронными сетями прокачивались и другие навыки, а именно умение писать код, который пригодится, например, при поиске работы. А MatLab, в индустрии не очень распространен.


Не так давно я написал текст по мотивам работы в стартапе, который использовал MatLab в Data Science и попытался объяснить почему мне это не понравилось. => Из физиков в Data Science (Из двигателей науки в офисный планктон). Вторая часть


Вот прямо сейчас проходит соревнование по машинному обучению, в котором надо предсказать эпилептические припадки => https://www.kaggle.com/c/melbourne-university-seizure-prediction


Его спонсирует Matlab и даже выдает бесплатную лицензию. Можно использовать много различных подходов к этой проблеме, но нейронные сети один из наиболее перспективных. Есть подозрение, что в итоге в топе не будет никого, кто бы использовал MatLab. При всем уважении к этому инструменту есть гораздо более внятные альернативы, которые дадут как минимум не худший результат, но быстрее и с меньшей болью.

Потому что октав не умеет в CUDA, cudann и тому подобные вещи для интеграции глубоких сетей с GPU

Потому что для питона есть куча готовых моделей и на нем написан TensorFlow в который гугл вбахивает очень много

Потому что большинство статей по дип лернингу зачастую имею гитхаб репозитории с готовыми моделями на питоне.

Если рассматривать машинное обучение в целом и если есть желание поколупать математику октав ок. Но есть scikit.learn, numpy, и прочая прочая прочая

Плюс как правильно подсказывают удобные IDE

И еще python notebooks

Я в свое время прошел курс Andrew Ng, который использовал как раз octave
Потом был курс от яндекса на питоне. На питоне легче.
cs231n.stanford.edu использует питон
cs224d.stanford.edu использвет питон
www.udacity.com/course/deep-learning--ud730 тоже использует питон

Если есть большое желание разобраться с нуля именно в дип лернинге то cs231n.stanford.edu
Если нет времени но разобраться все равно хочется, то

http://brohrer.github.io/how_convolutional_neural_networks_work.html

Спаведливости ради замечу, что билиотека caffe использует CUDA, cudnn и прочее, и к ней можно прикрутить octave/matlab interface.


Хотя keras с theano / tensorflow backend все-равно гораздо удобнее. А neon, еще и быстее.

ну к кафе можно и пхп прикрутить раз уж на то пошло )
Для octave notebook тоже есть. Эта технология к языку не привязана.
А где же курс Машинного обучения от Физтеха и Яндекса на Корсере?
Думали, добавлять или нет. Решили сделать подборку конкретно специализированных курсов по deep learning.
а где недостатки в вашем курсе?
ИМХО, трудно оценить себя(или результат своей работы) объективно, поэтому выявить преимущества и недостатки суждено людям, прошедшим этот курс.
ну а попробуйте сравнить ваш курс и курс Хинтона, например? я же не предлагаю вам оценить хороший у вас курс или нет, а оценить по конкретным параметрам, которые объективны, вот вы написали что у Хинтона трудный, а у вас какой? ну и так далее
Постарался выделить объективные параметры.

Сложность: средняя. Преподаватель очень хорошо умеет объяснять сложные вещи простыми словами, а не наоборот, умеет доносить интуицию, которая скрывается за тем или иным алгоритмом. Тем не менее, есть требования для входа: человек должен уже обладать знаниями в области машинного обучения + уметь пользоваться Linux.

Упор: практика и бизнес. Теории ровно столько, чтобы уметь решать практические задачи. Серия разборов кейсов — как это все применять в бизнесе и какие есть подводные камни.

Инфраструктура: виртуальная машина с GPU, на которой всю неделю 24/7 можно решать лабораторную работу по классификации изображений.

Поддержка: преподаватель и координатор будут на связи постоянно, помогая в непонятных моментах.

Нетворк: знакомство с людьми, которые развиваются в том же направлении.

Стоимость: программа платная в отличие от большинства онлайн-курсов.

Участие: пока только очное.
ну теперь если по вашей логике отсортировать, то получится так

Преимущества
  • Упор: практика и бизнес. Теории ровно столько, чтобы уметь решать практические задачи. Серия разборов кейсов — как это все применять в бизнесе и какие есть подводные камни.
  • Инфраструктура: виртуальная машина с GPU, на которой всю неделю 24/7 можно решать лабораторную работу по классификации изображений.
  • Поддержка: преподаватель и координатор будут на связи постоянно, помогая в непонятных моментах.


Недостатки
  • Сложность: средняя. Преподаватель очень хорошо умеет объяснять сложные вещи простыми словами, а не наоборот, умеет доносить интуицию, которая скрывается за тем или иным алгоритмом. Тем не менее, есть требования для входа: человек должен уже обладать знаниями в области машинного обучения + уметь пользоваться Linux.
  • Стоимость: программа платная в отличие от большинства онлайн-курсов.
  • Участие: пока только очное.


то что есть везде можно вынести за скобки я думаю:
  • Нетворк: знакомство с людьми, которые развиваются в том же направлении.


И позвольте еще пару вопросов задать по поводу оценок?

В практических заданиях использованы стандартные учебные задачи распознавания изображений и обработки текстов, практические приложения изученных моделей к задачам бизнеса в заданиях отсутствуют и в курсе не обсуждаются.

Почему это плохо? Вам не кажется, что преподы топовых вузов не спроста выбирают всегда именно эти датасеты?

Вводный курс: посвящен собственно нейронным сетям, составляющим основу глубокого обучения, но конкретные видов нейронных сетей, используемых в глубоком обучении, и их приложения в программе курса отсутствуют.

А у вас за 2 дня не вводный?

Это не массовый онлайн курс, а опубликованные в открытом доступе материалы университетского курса.

Так у вас не массовый, может тоже в недостатки?

Ограниченное число студентов, за все время всего 2500 – ограниченные возможности пользоваться форумами и помощью community.

Вы серьезно? Извините, но похоже на высасывание недостатков из пальца.

Ну что добавим в статью это?
Давайте начнем с того, что мы не претендуем на истину в последней истанции. Любой обзор чего угодно содержит в себе степень субъективизма и любой читатель, а тем более человек разбирающийся в этой области как вы, имеет полное право с чем-либо не согласиться. Для этого и есть комментарии, в которых участники обогащают общую картину мира, как это и происходит сейчас.

1) У меня нет точного знания, почему преподаватели топовых вузов выбирают эти датасеты. Причин может быть масса: нет доступа к другим датасетам; они уже однажды были хорошо разобраны и нет смысла что-то менять (path dependence); они удобны по каким-то другим причинам. Мы можем только догадываться.

2) Конечно, вводный. Я так и написал, что теории ровно столько, чтобы начать решать задачи в этой области. Мы стремимся дать базу, с которой можно работать дальше. Попробовать deep learning на практике на нескольких задачах, убедиться, что это не страшно, и выстроить в голове фреймворк, который дальше можно целенаправленно заполнять, уже понимая, что к чему в этой области. Понятно, что за два дня невозможно стать экспертом в области, но начать им становиться можно.

3) Конечно, не массовый, это же очное участие.

4) По количеству студентов — согласен, тут может быть перегнули.

Спасибо за участие в дискуссии и вопросы!
Давайте начнем с того, что мы не претендуем на истину в последней истанции. Любой обзор чего угодно содержит в себе степень субъективизма и любой читатель, а тем более человек разбирающийся в этой области как вы, имеет полное право с чем-либо не согласиться.


ну так я помогаю вам улучшить пост, нужно пользоваться моментом

1) У меня нет точного знания, почему преподаватели топовых вузов выбирают эти датасеты.

пф, ну это отмазки уже; даже если нет точного знания, то нельзя выбирать случайно, при полной неопределенности, как у вас, нужно выбирать, то что используют старшие преподы, или обосновывать свой выбор более конструктивно; ну или просто не писать, что выбор стандартных датасетов это что то плохое

Причин может быть масса: нет доступа к другим датасетам;

Хинтон например в гугле работает…

они уже однажды были хорошо разобраны и нет смысла что-то менять (path dependence);

а вы на курсе собираетесь заниматься научным поиском модели которая превзойдет остальные и такие простые датасеты вам не подходят?

Мы можем только догадываться.

да, точно, вы правы

2) Конечно, вводный.

так почему вы не записали это в свои недостатки, а у других записали?

3) Конечно, не массовый, это же очное участие.

почему у кого то это в недостатках, но не у вас?

4) По количеству студентов — согласен, тут может быть перегнули.

ну хоть в чем то, вы уже вычеркнули это из недостатков “Data Science: Deep Learning in Python” от Lazy Programmer?

Спасибо за участие в дискуссии и вопросы!

пожалуйста, мне это тоже доставляет удовольствие
Недостатки — не для рекламных статей!
Неадекватная цена.
Наверное искали и не нашли. 30к за день — там же сам Хинтон лабы проверять будет.

Ничего не имею против платы за обучение, но эти ребята стригут что-то совсем не по-детски, при всей сомнительной полезности данного «курса».
Номер 7 вроде бы не о том, Reinforcement learning != Deep learning
P.S. От себя рекомендую курсы на Udacity — средний курс там лучше среднего в других источниках. Не хочу обидеть Coursera'у, там есть, например, Compilers или Discrete Optimizations, но реальность по моим наблюдениям такова.
Это да, но видимо имеется в виду общая область, тот же AlphaGo, например.
Очень странно про ваш курс. 60 000 рублей за 2 дня обзорной экскурсии? Нет, спасибо.
https://www.kadenze.com/courses/creative-applications-of-deep-learning-with-tensorflow/info — TensorFlow, Python в ноутбуках Jupyter. Правда, текущий курс уже заканчивается, но материалы (включая текстовые варианты лекций, где немало полезных ссылок) можно найти на гитхаб — https://github.com/pkmital/CADL.
Забыли еще курс от Stanford https://www.coursera.org/learn/machine-learning
Основы Machine Learning для новичков, вместе с повторением математики.
А кто-нибудь может посоветовать нормальные курсы по математике, которые бы упрощали вход в machine learning / deep learning?
Скопирую рекомендуемые ресурсы с курса от МФТИ и Яндекса.

Линейная алгебра
Ильин, Ким. Линейная алгебра и аналитическая геометрия (1998) — МГУ.
Умнов. Аналитическая геометрия и линейная алгебра (2011) — МФТИ.
Деммель. Вычислительная линейная алгебра. Теория и приложения (2001) — понятный кусок про матричные разложения.

Математический анализ
Ильин, Позняк, Основы математического анализа (2005) — МГУ.
Тер-Крикоров, Шабунин. Курс математического анализа (2001) — МФТИ, много примеров.
Иванов. Лекции по математическому анализу (2000) — МФТИ, очень короткое, но полное изложение.

Методы оптимизации
Нестеров. Методы выпуклой оптимизации (2010) — математически строгое введение в оптимизацию от живого классика.
Boyd, Vandenberghe. Convex Optimization (2004) — идеальная книга по классической оптимизации, много интересных постановок задач.
Schneider, Kirkpatrick. Stochastic Optimization (2006) — стохастическая оптимизация во всём многообразии.

Теория вероятностей и статистика
Dekking, Kraaikamp, Lopuhaa, Meester. A Modern Introduction to Probability and Statistics, Understanding Why and How (2005) — доступная книга, описывающая базовые понятия, теоремы и методы; разбирается очень много примеров, тесно связанных с задачами машинного обучения и анализа данных.
Лагутин. Наглядная математическая статистика (2007) — в основном статистика, но есть и небольшое введение в теорию вероятностей. Стоит читать, кроме глав про классификацию и анализ данных, там изложение не слишком современно.
Чжун, АитСахлиа. Элементарный курс теории вероятностей. Стохастические процессы и финансовая математика (2007) — очень простое изложение.
Отличные лекции с мехмата Новосибирского Государственного Университета:http://www.nsu.ru/mmf/tvims/chernova/tv/tv_nsu07.pdf — теория вероятностей,http://www.nsu.ru/mmf/tvims/chernova/ms/ms_nsu07.pdf — математическая статистика.
Diez, Barr, Çetinkaya-Rundel, Dorazio. Advanced High School Statistics (2015) — вводная книга, программа соответствует типичному курсу Statistics 101 хорошего западного университета.
DasGupta. Probability for Statistics and Machine Learning: Fundamentals and Advanced Topics (2011) — для смелого читателя, рассматриваются в том числе достаточно высокоуровневые методы.
ох, нифига себе списочек.
Спасибо

Я бы посоветовал пытаться разобраться в туториалах по Deep Learning, пытаясь методом тыка улучшить свои результаты и для этого соревнования по машинному обучению подходят как нельзя лучше.


Например, под циферки с MNIST https://www.kaggle.com/c/digit-recognizer сотни туториалов.


Вот это чуть более насыщенное — http://danielnouri.org/notes/2014/12/17/using-convolutional-neural-nets-to-detect-facial-keypoints-tutorial/


Это позволяет сфокусироваться на том, где не хватает знаний вот именно сейчас + пока не начнешь писать код и пытаться понять, почему все работает не так как хочется ни черта ни запоминается.


Книжки надо читать и много. Но не все подряд (хочется, конечно, но времени нет ), а те, которые углубят знания, которых не хватает прямо сейчас.


Но начать участвовать в соревнованиях по машинному обучению и deep learning я бы рекомендовал уже сейчас, даже если есть чувство что математического апарата не хватает.


Чтобы чакры начали открываться надо создать сотни моделей, которые не заработают, понять почему они не работают — а это много-много итераций и в результате возможно создать что-то стоящее. И чем раньше начать их делать, тем лучше.


И если по началу это просто метод тыка, то после определенного числа итераций он превращается в метод научного тыка — а это основной подход в нейронных сетях в настоящее время в силу того, что теория по нейронным сетям очень сильно отстает от того, что можно достигнуть на практике.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий