Этого треда уже нет.
Это копия, сохраненная 30 июля 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
maxresdefault.jpg51 Кб, 1280x720
Привет, дневникач. Здесь будет наивный тред о ДРОД 265018 В конец треда | Веб
Привет, дневникач. Здесь будет наивный тред о том, как я постигаю deep learning.

Вводные данные: (недо)программист, на питоне писал мало и давно, понимаю, как работают регрессии и что такое backpropagation, есть некоторое представление о свёрточных сетях.

Предыдущие попытки ограничились просмотром половины оригинального курса ML от Ng и еще половины курса нейросетей от Хинтона. У меня нет опыта работы с фреймворками типа pytorch или tensorflow.

Зачем мне всё это? Конечно же я хочу вкатиться и получать свои 333ккк/парсек, но это еще не всё. Моё знакомство с нейросетями было исключительно приятным и в то же время очень теоретическим: хочу научиться самостоятельно решать простые проблемы из реального мира.

Плана пока нет: я не знаю, с чего лучше начать. Как я вижу, самое правильное - погрузиться в один из курсов fast.ai и пройти туториалы по tensorflow. Нужно выяснить, какой уровень задач на kaggle, чтобы как можно скорее приступить к практике. Если здесь есть опытные датаучёные, оцените, пожалуйста, этот план.

Пока что предварительная минимальная цель: пройти первые два курса Deep Learning Specialization, чтобы вспомнить основные вещи, и в процессе поискать, куда двигаться дальше.
День 1 ДРОД 2 265039
Посмотрел первую неделю курса Neural Networks and Deep Learning и прорешал тест.

Думаю о том, чтобы попробовать эти краш-курсы:
1) Learn TensorFlow and deep learning, without a Ph.D. https://cloud.google.com/blog/products/gcp/learn-tensorflow-and-deep-learning-without-a-phd

2) TensorFlow Crash Course | Basics Of TensorFlow | TensorFlow Tutorial For Beginners | Edureka https://www.youtube.com/watch?v=DFKHh7_zzJc
Aldaris !!C2yzXqwZ0Y 3 265065
>>265018 (OP)
У меня есть вопросы.

1. Ты ML для каких целей (кроме 300кк/сек) изучаешь? То есть картинки/текст/временные ряды/финансы/звук?

2. Какие были соображения по выбору фреймворка? То есть почему TF, а не torch или керас?
4 265106
>>265065
1. Мне пока сложно ответить на этот вопрос.
2. Никаких соображений не было. А как выбрать фреймворк?
День 2 ДРОД 5 265340
Почти прослушал вторую неделю, почти выполнил опциональное упражнение-введение в питон.
ДРОД 6 265858
Доделал вторую неделю: сдал тест и упражнение - jupyter notebook, в котором реализована логистическая регрессия для различения котов (кот или не-кот).

Курс, которой я смотрю (Neural Networks and Deep Learning из Deep Learning Specialization), устроен следующем образом.

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

Вторая неделя состоит из двух частей: первая посвящена логистической регрессии и градиентному спуску, вторая - векторизации и библиотеке numpy в питоне. Еще есть тест, опциональный jupyter notebook-введение в numpy, и обязательный jupyter notebook с реализацией логистической регрессии. Никакого знания питона, как мне кажется, не требуется - всё необходимое можно выучить в ноутбуке о numpy.

Третья неделя посвящена простым нейронным сетям, а четвертая (последняя) - глобоким. Об этих неделях я еще надеюсь написать подробнее чуть позже.
ДРОД 7 266015
Смотрел смешные видосы:

1) История прогресса в области распознавания объектов: YOLO Object Detection https://www.youtube.com/watch?v=4eIBisqx9_g

2) Презентация YOLO на TED: How computers learn to recognize objects instantly | Joseph Redmon https://www.youtube.com/watch?v=Cgxsv1riJhI

3) TED о DeepFake: Fake videos of real people -- and how to spot them | Supasorn Suwajanakorn https://www.youtube.com/watch?v=o2DDU4g0PRo
День 4 ДРОД 8 266135
Досмотрел лекции третьей недели Neural Networks and Deep Learning. В них - двуслойные сети и backpropagation. В jupyter notebook-упражнении этой недели по набору точек двух цветов на плоскости разделяют эту плоскость на области; пока только приступаю к этому упражнению.

Посмотрел получасовой обзор Getting Started with TensorFlow 2.0 (Google I/O'19) https://www.youtube.com/watch?v=lEljKc9ZtU8

Узнал оттуда, что как раз недавно вышла вторая версия tensorflow и все предыдущие туториалы несколько устарели. Новые туториалы здесь: https://www.tensorflow.org/alpha

Нашел пару специализаций по TensorFlow на курсере:

1. TensorFlow Specialization by deeplearning.ai https://www.coursera.org/collections/tensorflow-deeplearning-ai

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

2. Machine Learning with TensorFlow on Google Cloud Platform Specialization https://www.coursera.org/specializations/machine-learning-tensorflow-gcp

Специализация от гугла с упором на их инфраструктуру.

Проблема обеих специализаций в том, что они используют старую версию tensorflow. Как пишут комментаторы, как минимум в случае первой специализации это не такая уж большая проблема - deprecated фичи в лекциях не используются. Тем не менее, возможно, проще было бы просто пройти открытые туториалы по новой версии фреймворка.
День 5 ДРОД 9 266234
Сделал упражнение-jupyter notebook третьей недели Neural Networks and Deep Learning: двуслойную нейросеть, рисующую цветок на плоскости, который подходит под данные точки. Начал смотреть лекции четвертой недели.

1. Неплохой обзоный лист видео: Machine Learning at Google I/O 2019 https://www.youtube.com/playlist?list=PLOU2XLYxmsIKW-llcbcFdpR9RjCfYHZaV

2. Интервью с топ-кегглером: Profiling Top Kagglers: Bestfitting, Currently #1 in the World http://blog.kaggle.com/2018/05/07/profiling-top-kagglers-bestfitting-currently-1-in-the-world/

Отрывочек:

> In a few words, what wins competitions?


> Good CV, learning from other competitions and reading related papers, discipline and mental toughness.



3. Разные специализации от Яндекса и ВШЭ: https://yandexdataschool.ru/edu-process/online-courses

Особенно приглянулась эта: https://www.coursera.org/specializations/aml - по-видимому, что-то очень жесткое "в русском стиле". Интересно, насколько это вообще адекватно, ревью неплохие: https://www.quora.com/What-are-your-reviews-of-the-Advanced-Machine-Learning-specialization-on-Coursera-by-Higher-School-of-Economics

Один из курсов этой специализации называется: How to Win a Data Science Competition: Learn from Top Kagglers

4.Awesome - Most Cited Deep Learning Papers https://github.com/terryum/awesome-deep-learning-papers
День 6 ДРОД 10 266355
Досмотрел лекции четвертой недели, приступил к упражнениям. На этой неделе два jupyter-ноутбука: сначала строим общий алгоритм многослойной сети, затем применяем - опять для распознавания котов, но теперь с точностью 80%.
День 7 ДРОД 11 266489
Сделал один jupyter notebook четвертой недели, остался еще один, финальный, доделать тесты - и первый курс будет пройден.
День 8 ДРОД 12 266643
Окей, доделал последний jupyter notebook четвёртой недели, в котором четырехслойная сеть классифицирует котов с точностью 80%, сдал все тесты. Закончил курс Neural Networks and Deep Learning и получил красивый сертификат. Это первый из пяти (1/5) курсов в Deep Learning Specialization.
День 9 ДРОД 13 266985
Посмотрел лекции первой недели курса Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization. Это второй (2/5) курс специализации.

Из развлечений:

1. Выступление Yann LeCun в 2017-м об успехах AI: Yann LeCun - Power & Limits of Deep Learning https://www.youtube.com/watch?v=0tEhw5t6rhc

2. Посмотрел третью неделю Introduction to Deep Learning из специализации Advanced Machine Learning о свёрточных сетях. Теперь примерно понимаю, как писать свёрточные слои.

3. О том, как работает AlphaGo Zero: How AlphaGo Zero works - Google DeepMind https://www.youtube.com/watch?v=MgowR4pq3e8

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

Теперь я хочу пройти курс по разработке компиляторов.
Компиляторы ДРОД !!80Pn0mpd9w 14 266987
Как вкатываться в компиляторы?

1. Вот этот курс от Alex Aiken из Стэнфорда собрал хорошие рецензии: https://lagunita.stanford.edu/courses/Engineering/Compilers/Fall2014/about

2. Эту книгу тоже горячо рекомендуют, и автор известный: A. Appel. Modern Compiler Implementation in ML

3. Essentials of Compilation: An Incremental Approach https://jeapostrophe.github.io/courses/2017/spring/406/notes/book.pdf
Короткая книга, 130 страниц, пишут компилятор для лисп-подобного языка.
День 10 ДРОД !!80Pn0mpd9w 15 267291
Сделал пару jupyter-ноутбуков первой недели второго курса, остался один.
День 11 ДРОД !!80Pn0mpd9w 16 267442
Посмотрел часть третьей недели второго курса (курс: Improving Deep Neural Networks о softmax и о фреймворках. Jupyter-ноутбук-упражнение этой недели - введение в tensorflow, сделал половину.

Вечером немного почитал о Graph Neural Networks: https://towardsdatascience.com/a-gentle-introduction-to-graph-neural-network-basics-deepwalk-and-graphsage-db5d540d50b3
17 267446
Ну как, пока не сложилось впечатления, что тебя наебывают?
18 267588
>>266643

>Neural Networks and Deep Learning


фокус на матешу или на использование библиотек?
19 268392
>>267446
Нет. Что ты, собственно, имеешь в виду?

>>267588

>Neural Networks and Deep Learning


>фокус на матешу


Мне кажется, довольно сбалансированное введение.
День 12 ДРОД !!80Pn0mpd9w 20 268530
Сделал вторую неделю второго курса (курс: Improving Deep Neural Networks). В jupyter-ноутбуке реализовывали разные виды оптимизации: mini-batches, gradient descent with momentum, adam.
День 13 ДРОД !!80Pn0mpd9w 21 269124
Посмотрел целиком четвертый курс Convolutional Neural Networks специализации Deep Learning, без упражнений.

Первая неделя: свёрточные слои, max-pooling.
Вторая неделя: зоопарк архитектур CNN - AlexNet, VGG, Inception, Resnet.
Третья неделя: YOLO
Четвертая неделя: распознавание лиц, DeepFace и FaceNet, neural style transfer.

Встретился с работающим nlp-шником, он накидал ссылочек и базвордов:
1. Блог Google AI.
1.1 Universal Sentence Encoder (аналог word2vec)
https://ai.googleblog.com/2018/05/advances-in-semantic-textual-similarity.html
1.2 Строить структуру предложения в google cloud:
https://cloud.google.com/natural-language/
https://stanfordnlp.github.io/CoreNLP/
2. bay area deep learning 10 часов, посмотреть про лейбелинг действий на картинках, трансфер learning
3. Transformer - машинный перевод
4. NLP Chronicles: spaCy, the NLP Library Built for Production https://heartbeat.fritz.ai/nlp-chronicles-intro-to-spacy-34949f1bc118
ДРОД !!80Pn0mpd9w 22 270107
1) Стендфордский курс по NLP: http://web.stanford.edu/class/cs224n/
Лекции этого курса 2019-го года: https://www.youtube.com/playlist?list=PLoROMvodv4rOhcuXMZkNm7j3fVwBBY42z

2) Канал с обзорами ML-статей: gonzo_ML
Еще один неплохой канал: pathetic_low_freq

3) Объяснение GAN для широкой аудитории: Generative Adversarial Networks (GANs) - Computerphile https://www.youtube.com/watch?v=Sw9r8CL98N0

4) Ссылки на трансформер:
Поговори с трансформером: https://talktotransformer.com/
Трансформер помогает писателям: https://transformer.huggingface.co/
Объяснение работы трансформера:
https://nostalgebraist.tumblr.com/post/185326092369/the-transformer-explained
ДРОД !!80Pn0mpd9w 23 270108
>>270107
Дополнение к 2): каналы - в телеграме. По-видимому, ссылки на телеграм запрещены.
ДРОД !!80Pn0mpd9w 24 270109
Вот еще интересный курс от Udacity: https://blog.udacity.com/2019/03/learn-tensorflow-for-deep-learning-applications.html Practical Machine Learning with TensorFlow 2.0 Alpha
ДРОД !!80Pn0mpd9w 25 270425
Курс по библиотеке spaCy https://course.spacy.io/
День 14, час 1 ДРОД !!80Pn0mpd9w 26 270446
Посмотрел первую половину второй недели пятого курса (Sequence Models) - о word embeddings.
День 14, час 2 ДРОД !!80Pn0mpd9w 27 270491
Посмотрел вторую половину второй недели пятого курса (Sequence Models) - о word2vec и GloVe.
День 14, час 3 ДРОД !!80Pn0mpd9w 28 270513
Сделал первый jupyter-notebook этой недели - работу с GloVe-эмбеддингами. Одно из заданий пропитано духом SJW - написание функции гендерной нетрализации слов. Для этого вычисляем "gender" как разницу между "man" и "woman", и для каждого входного слова вычитаем из него проекцию на "gender".
День 15, час 1 ДРОД !!80Pn0mpd9w 29 270608
Досмотрел до конца вторую неделю пятого курса (Sequence Models) - оказывается, там еще оставался небольшой блок видео как раз о гендерной нейтрализации, а также о sentiment classification.

Начал делать второй jupyter notebook этой недели - вычисление смайлика по текстовому предложению. Уже сделал первую пробную модель: предложение разбивается на слова, каждое слово конвертируется в GloVe-вектор, берется среднее значение полученных векторов и прогоняется через однослойную сеть с softmax-выходом, который лейблит результат одним из пяти возможных смайликов.
День 15, час 2 ДРОД !!80Pn0mpd9w 30 270641
Сделал первый из трёх jupyter ноутбуков первой недели пятого курса (Sequence Models). Реализовал forward pass для RNN и для LSTM. Позже нужно будет еще доделать backpropagation для LSTM - это опциональное упражнение.
День 15, час 3 ДРОД !!80Pn0mpd9w 31 270656
Начал второй jupyter notebook первой недели пятого курса (Sequence Models).
День 16: план ДРОД !!80Pn0mpd9w 32 270829
Сегодня хочу досмотреть третью (последнюю) неделю пятого (последнего) курса Sequence Models специализации Deep Learning и хочу сделать один jupyter notebook.

Что мне осталось, чтобы закрыть специализацию? Доделать пару notebook'ов и тесты второго курса (Improving Deep Neural Networks). Четвертый курс (Convolutional Neural Networks) я лишь посмотрел, но нужно сделать оттуда упражнения - это самая объёмная часть, четыре недели. Третий курс я даже не открывал, но там всего две недели. И наконец, в пятом курсе остались 2 ноутбука и тесты с первых недель, а также третья неделя, которой я сегодня займусь.

Сегодня здесь будут более подробные отчёты.
День 16: 1 полчаса ДРОД !!80Pn0mpd9w 33 270833
Слушаю лекции третьей недели: машинный перевод, энкодер\декодер, beam search
День 16: 2 полчаса ДРОД !!80Pn0mpd9w 34 270859
Досмотрел кусочек лекций первой недели Sequence Models - о bidirectional RNN и deep RNNs.
День 16: 3 полчаса ДРОД !!80Pn0mpd9w 35 270871
Досмотрел лекции третьей недели: attention model, speech recognition, trigger word
День 16: 4 полчаса ДРОД !!80Pn0mpd9w 36 270884
Доделываю notebook со второй недели, секвенциальная модель в Keras, которая лепит на предложения смайлики.
День 16: 5 полчаса ДРОД !!80Pn0mpd9w 37 270908
Доделал модель в Keras. Ноутбуки второй недели последнего курса готовы.
День 17 ДРОД !!80Pn0mpd9w 38 271003
Сегодня меня ждёт attention-модель в Keras, которая приводит даты в стандартный формат. Три основных слоя: на входе двунаправленная LSTM, затем attention-слой и на выходе однонаправленная LSTM.
ДРОД !!80Pn0mpd9w 39 271289
Крутой пост о ситуации в мире GANов https://blog.floydhub.com/gans-story-so-far/
ДРОД !!80Pn0mpd9w 40 271296
Ian Goodfellow рассказывает, что на MNIST для точности <1% до ~2014 года нужно было порядка 60000 примеров, в 2016 с помощью semi-supervised GAN для той же точности понадобилось 100 примеров https://youtu.be/Z6rxFNMGdn0?t=2623
День 18 ДРОД !!80Pn0mpd9w 41 271701
Начал свой небольшой проект - буду классифицировать изображения. Первая подзадача - заскрейпить с сайта, выкачать и сохранить базу данных, с картинками.

Вчера с помощью BeautifulSoup, pandas, lxml.html и многой изоленты написал скрейпер самой текстовой базы без картинок; ночью скрипт скачал часть базы. Самая большая проблема - изображения. По предварительной информации, их около 100 терабайт - я совсем не уверен, что вообще получится их выкачать с хлипкого академического сайта. Для хранения такого количества данных уже имеет смысл использовать Hadoop/HDFS, с которым еще надо разобраться. В лицензии написано, что для учебных целей эту бд можно использовать бесплатно, но никакого простого способа скачать её в один клик я не нашел.

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

Читаю статью, которая может здесь пригодиться: https://arxiv.org/abs/1606.03498
ДРОД !!80Pn0mpd9w 42 272017
>>271701
Ошибся в оценке, всё-таки объем данных ближе к 100 гб, так что вполне можно обойтись классическими методами.
День 19 ДРОД !!80Pn0mpd9w 43 272019
Сегодня посмотрю третий (3/5) курс Structuring Machine Learning Projects специализации Deep Learning. В этом курсе всего две недели и нет упражнений.

Попробуем еще раз получасовые отчёты.
День 19: 1 полчаса ДРОД !!80Pn0mpd9w 44 272025
Третий курс, первая неделя: evaluation metrics
День 19: 2 полчаса ДРОД !!80Pn0mpd9w 45 272036
Третий курс, посмотрел первую половину первой недели: обязательно брать dev и test из одной выборки, распределение train/dev/test ближе к 99/0.5/0.5 на данных больше миллиона, люди часто используют train/dev без теста и называют это train/test (всё это уже проговаривалось в предыдущих курсах).
День 19: 3 полчаса ДРОД !!80Pn0mpd9w 46 272047
Третий курс, первая неделя: Bayes error, avoidable bias (это разрыв между Human error, который есть прикидка для Bayes error, и Training set error).
День 19: 4 полчаса ДРОД !!80Pn0mpd9w 47 272055
Третий курс, досмотрел первую неделю:
1) Для уменьшения avoidable bias (чтобы ошибки алгоритма на тренировочном сете уменьшались до человеческих) - дольше тренировать, использовать оптимизационные алгоритмы (Adam, RMSProp), учеличивать число слоев и юнитов в них, менять другие гиперпараметры и вообще всю архитектуру
2) Для уменьшения variance - брать правильную выборку, накидывать больше тренировочных данных, регуляризация данных (L2, dropout, дополнение данных), менять гиперпараметры/архитектуру
День 19: 5 полчаса ДРОД !!80Pn0mpd9w 48 272072
Закончил первую неделю третьего курса. Ошибки в тесте этой недели:
1) При большом bias и малой variance, оказывается, имеет смысл уменьшать регуляризацию.
2) Дано: Training set error 0.05%
Правильная галочка: "If the test set is big enough for the 0.05% error estimate to be accurate, this implies Bayes error is ≤0.05"
Ну ок.
3) Если уже есть готовая модель, натренированная на ~10M и вам принесли еще 1000 изображений нового вида того, что нужно детектить, то эти изображения лучше всего распределить между dev и test и поправить оценку - увеличить пенальти для мисклассификации новых изображений.
День 20 ДРОД !!80Pn0mpd9w 49 272204
Сегодня вторая (и последняя) неделя курса Structuring Machine Learning Projects.
День 20: 1 полчаса ДРОД !!80Pn0mpd9w 50 272345
Третий курс, вторая неделя: анализ ошибок, некорректно размеченные данные
День 20: 2 полчаса ДРОД !!80Pn0mpd9w 51 272377
Третий курс, посмотрел половину второй недели: data mismatch
День 20: 3 полчаса ДРОД !!80Pn0mpd9w 52 272469
Третий курс, вторая неделя: transfer learning, многозадачное обучение
День 20: 4 полчаса ДРОД !!80Pn0mpd9w 53 272474
Досмотрел третий курс (Structuring Machine Learning Projects), хотел быстро сдать тест и получить сертификат - но курсера ушла на maintenance.

Впечатления от курса смешанные. С одной стороны, много практической информации о том, как оценивать модель, но с другой стороны, я так и не разобрался в важном вопросе - что делать с новопоступающими плохими пользовательскими данными? В тесте первой недели утверждалось, что лучше их добавить в dev/test, а на этой неделе - что их можно либо распределить равномерно между train/dev/test, либо положить целиком в train. Вероятно, я здесь упускаю особенности каждой индивидуальной ситуации.

Однозначный совет тем, кто будет смотреть эту специализацию: сделайте как я и посмотрите третий курс после четвертого и пятого. Как мне кажется, он скучнее последующих курсов, а его важность лучше осознается когда уже есть практический опыт работы с моделями. (Впрочем, в моем случае основная часть этой работы еще впереди.)
День 20: 5 полчаса ДРОД !!80Pn0mpd9w 54 272480
Окей, доделал последний тест. Закончил третий (3/5) курс Structuring Machine Learning Projects специализации Deep Learning. Итого два сертификата.
День 21 ДРОД !!80Pn0mpd9w 55 272561
У deeplearning.ai две специализации на курсере: Deep Learning и TensorFlow in Practice.

В специализации Deep Learning из пяти курсов я закончил два (еще два курса почти готовы, и еще один я лишь посмотрел).

Специализация TensorFlow in Practice пока не запустилась во всей полноте - анонсировано 4 курса, из которых доступны три:
1) Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning
2) Convolutional Neural Networks in TensorFlow
3) Natural Language Processing in TensorFlow
4) (пока не доступен) Sequences, Time Series and Prediction

Сейчас планирую познакомиться с b]TensorFlow in Practice[/b] и понять, нужна ли мне эта специализация. Предварительные замечания:
1) Во всех курсах упражнения-jupyter ноутбуки не оцениваются, оценка зависит лишь от тестов. Это минус.
2) Весь курс связан с тензорфлоу и, насколько я успел увидеть, как раз в значительной степени состоит из прохождения ноутбуков. Это плюс.
3) Утверждают, что код курсов подойдёт для обеих версий тензорфлоу. Это плюс.
56 272599
>>270109
Так, ну этот курс пока не работает: всего шесть (омерзительных) лекций, и упражнений я там не нашел.
День 21: 2 часа ДРОД !!80Pn0mpd9w 57 272641
Решил доделать второй (2/5) курс Improving Deep Neural Networks специализации Deep Learning. Сделал последний остававшийся ноутбук курса - ноутбук третьей недели о введении в tensorflow: трёхслойная сеть учится считать число пальцев на фотографии.
День 21: 2 часа ДРОД !!80Pn0mpd9w 58 272705
Оказывается, во втором курсе (Improving Deep Neural Networks) не был готов еще один ноутбук - о gradient checking. Сделал и его. Все ноутбуки второго курса теперь готовы, осталось сдать тесты - оставлю это на завтра.
День 22 ДРОД !!80Pn0mpd9w 59 273319
Прошел первый курс Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning специализации TensorFlow in Practice.

Этот курс исключительно простой, после специализации Ng он кажется несерьезным, в нём почти ничего не объясняют. Цель - сразу же приступить к написанию сетей в keras, причем почти сразу пишут многослойные сети с конволюционнными слоями. Наверное, это идеально для тех, кто хочет быстро вкатиться в практическую инженерию и не хочет учить матешу.

Мне всё равно этот курс полезен, так как у Ng я много занимаюсь разными тонкими аспектами машинного обучения, но мало работаю с конкретными задачами.

Поразбирался, кстати, в инфраструктуре kaggle, и теперь жалею, что с первых дней не стал разбирать кернелы - думаю, это правильный способ изучать что-либо в машинном обучении. Очень круто, что у завершенных соревнований часто можно посмотреть решения, иногда даже по итогу прочитать статьи на архиве. Кроме того, кернелы (фактически те же ноутбуки) - это идеальный способ коммуникации внутри сайта. В них можно объяснить какую-то мысль, рассказать решение, сделать базовую модель.
День 23 ДРОД !!80Pn0mpd9w 60 273339
Проходил сейчас тест второго курса специализации Deep Learning - вспоминал, что такое weight decay и inverted dropout.
День 23: 1 час ДРОД !!80Pn0mpd9w 61 273384
Досмотрел недосмотренную часть о batch normalization, сдал три теста и закрыл курс Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization. Это был второй курс специализации Deep Learning. Тем самым я закрыл цель из ОП этого треда: пройти первые два курса Deep Learning.

Итого по двум специализациям:
Deep Learning Specialization
1) Neural Networks and Deep Learning - сдал и получил сертификат
2) Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization - сдал и получил сертификат
3) Structuring Machine Learning Projects - сдал и получил сертификат
4) Convolutional Neural Networks - просмотрены все лекции, не сделаны упражнения
5) Sequence Models - просмотрены все лекции, сдана половина упражнений

TensorFlow in Practice Specialization
1) Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning - сдал и получил сертификат
2) Convolutional Neural Networks in TensorFlow - не приступал
3) Natural Language Processing in TensorFlow - не приступал
День 23: 3 часа ДРОД !!80Pn0mpd9w 62 273492
Сдал курс Convolutional Neural Networks in TensorFlow за несколько часов - это четыре недели, по одному тесту в конце каждой. На курс это, конечно, всё не тянет, но было интересно.

На второй неделе показали, как в keras на лету клонировать данные, применяя к ним разные линейные трансформации. На третьей неделе покали transfer learning, заморозив низ у inception v3, - на выход добавили полносвязный слой и дропаут - и оно научилось отличать котов от собак с точностью 96%.
День 24: 4 часа ДРОД !!80Pn0mpd9w 63 274501
Сделал Natural Language Processing in TensorFlow. Это последний доступный курс специализации TensorFlow in Practice, так что буду считать, что я её закончил. Всего у меня теперь шесть сертификатов, три по одной специализации, три по другой.

В целом, вся специализация по объему равносильна одному курсу у Ng. Часто упрощение доходит до той степени, что сложно понять, что имелось в виду. Например, в последнем курсе: что мешало лектору привести схему, показывающую устройство embedding-слоя, его вход и выход, схему, которая была у Ng? А как работает conv1d-слой, которому скармливают embedding? На мой взгляд, там не так-то просто самому догадаться, но об этом ни слова в лекции - считается, по-видимому, что пользоваться этим нужно без понимания происходящего.

Несмотря на всё сказанное, с этой специализацией удобно начинать работать с keras - можно быстро ознакомиться с простыми примерами.
День 25 ДРОД !!80Pn0mpd9w 64 274608
Сделал jupyter notebook первой недели пятого курса (Sequence Models) - генерация имён динозавров с помощью обычной RNN.
День 26 ДРОД !!80Pn0mpd9w 65 274997
Сегодя буду генерировать джазовые композиции.
ДРОД !!80Pn0mpd9w 66 275004
Тем временем появилась вторая часть курса Practical Deep Learning for Coders под названием Deep Learning from the Foundations: https://course.fast.ai/part2.html

По-видимому, подход тот же, что у Ng - объяснить основы и дать руками пощупать архитектуру сетей.

Первую часть этого курса всё еще планирую со временем посмотреть, но сейчас приоритетные задачи такие:
1. Доделать специализацию Deep Learning
2. Разобраться с простыми соревнованиями на kaggle
3. Написать пробную модель для своего проекта >>271701
ДРОД !!80Pn0mpd9w 67 275009
Неплохой канал об NLP в телеге: Говорит AI govorit_ai
День 26: 2 часа ДРОД !!80Pn0mpd9w 68 275062
Сделал jupyter notebook с генерацией midi-джаза с помощью LSTM.
Осталось два ноутбука и два теста до конца пятого курса.
69 275184
>>271003
Доделал эту модель, хорошо разобрался с аттеншеном.

Остался один ноутбук NLP курса.
День 27 ДРОД !!80Pn0mpd9w 70 275371
И еще один новый курс от fast.ai, посвященный NLP: https://www.fast.ai/2019/07/08/fastai-nlp/

Сегодня хочу доделать пятый курс (5/5) специализации Deep Learning.
День 27: час ДРОД !!80Pn0mpd9w 71 275608
Финальный jupyter notebook пятого курса - trigger word detection - триггер по голосовой команде типа "окей гугл". Сеть делали в keras: conv1d -> relu -> gru -> gru -> dense -> sigmoid (многочисленные batch normalization и dropout-слои опущены). На вход этому подаётся спектрограмма 10-секундной аудиозаписи, а на выходе последовательность нулей и единиц, где единицы идут подряд по 50 штук в местах, соответствующих моменту сразу после произнесения команды "activate" в аудиофайле.
72 275616
Сап. В пятницу буду делать тестовое в контору с нейронками-ganами. Надеюсь, выгорит.

Тебе успехов!
73 275671
>>275616
Привет. Расскажи, какой опыт и на какую квалификацию (интерн/сеньёр) подаешь. Хочу понять, когда стоит пробовать идти куда-нибудь стажёром.

Удачи с GANами! Как раз одна из первых вещей, которую я разбирал на kaggle: https://www.kaggle.com/jesucristo/gan-introduction
День 27: час ДРОД !!80Pn0mpd9w 74 275680
Тем временем я доделал все тесты и закончил курс Sequence Models специализации Deep Learning.

Позади 7 курсов, получено 7 сертификатов: 4 из Deep Learning и 3 из TensorFlow in Practice.

Остался один курс - Convolutional Neural Networks.

Потом уже можно начинать делать дела.
75 275799
>>275671
Работаю 7 месяцев в банке математиком, закончил матмех спбгу. Там позиция с начальным опытом, но очень наукоемкая отрасль.

Стажерских вакансий очень много в банках и рекламе, но это бездуховно, что ли. Скучновато.

Алсо, лучше в стартапы пытаться, я думаю. И чтобы был кто-то опытный в этой теме в команде.
День 28 ДРОД !!80Pn0mpd9w 76 275814
Итак, сегодня приступаю к ноутбукам 4-го курса, Convolutional Neural Networks. Этот курс я уже посмотрел, но нужно сделать упражнения. Это последний оставшийся курс специализации Deep Learning: осталось сделать шесть ноутбуков и несколько тестов - и я наконец закончу с этой специализацией.

Что дальше? Сейчас я раздумываю над тем, что кроме своего проекта и практики на кегле мне хорошо бы подучить SQL, а также пройти что-нибудь вроде Big Data for Data Engineers Specialization: https://www.coursera.org/specializations/big-data-engineering

С другой стороны, мне самому сейчас интересно разобрать некоторые статьи и попилить простые приложения. Возможно, эффективнее было бы на этом и сконцентрироваться. Небольшой список проектов-мечт:
1. Написать классификатор для одной академической базы данных размеченных фотографий (100000 фотографий)
2. Разобраться с графовыми нейросетями (GNN) и поиграть с одной конкретной моделью.
3. Разобраться со spaCy. Посмотреть, что происходит в русском NLP, попробовать написать поиск в тексте по смыслу.
image.jpeg845 Кб, 1024x1024
ДРОД !!80Pn0mpd9w 77 275835
Неплохой сайт, если нужна фейковая фотка для профиля: https://thispersondoesnotexist.com/
День 28: 1 час ДРОД !!80Pn0mpd9w 78 275878
Сделал один ноутбук: реализовал руками конволюционный и пулинг слои.
День 28: 1 час ДРОД !!80Pn0mpd9w 79 275916
Сделал еще один ноутбук: граф в тензорфлоу с конволюционными и пулинг слоями - модель для распознавания количества пальцев на фото. Сделал тест и закрыл первую неделю Convolutional Neural Networks.
80 275938
Возвращаясь к началу треда. Вот ты прошёл эн курсов. Круто, не спорю. Но что в итоге для себя выбрал в качестве данных для профессиональной деятельности? Картинки, звуки?.. Если выбрал, погружался ли в early тематику по этим данным?

Как у тебя с бэкграундом? Теорвер, матстатистика, теория оптимизации, гармонический анализ? Если пойдешь джуном, то вряд ли адекваты будут тебя спрашивать, как тренить сетку с двумя головами. Будут вопросы из базового курса.
81 275949
>>275938
В посте >>275814 я описал несколько проектов, которые меня сейчас интересуют.

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

LSTMу, например, 20 лет, но стоит ли читать оригинальную статью о нём? Я умею написать LSTM руками и сделал с ним несколько моделей - хочется верить, что этого пока достаточно. Сейчас планирую почитать статьи о Transformer - и попробовать применить готовые модели.

Гармонический анализ я не учил, но теорвер и матстатистику я учил и сдавал. Интересно, что за пять курсов у Ng эти знания почти никак не пригодились: variance упоминалась, когда обсуждали инициализацию весов (Xavier initialization) и нормализацию, условную вероятность вспомнили при объяснении использования beam search для машинного перевода.

Думаю, что стоит повторить вещи, которые обычно спрашивают на собеседованиях. Вот здесь небольшой сборник: The Data Science Interview Study Guide https://www.coriers.com/the-data-science-interview-study-guide/
82 276011
>>275949
Ты реально молодцом. Просто вспомнил, как недавно собеседовал одного. Тот разочаровался в своей области и решил удариться в датасаенс. Прошёл сколько-то курсов на курсере... И в итоге не смог сказать, как он датасаенс применил бы в своей предыдущей области знаний, хотя статистические задачи там только так распространены.

Ну а в nlp наверно действительно early часть не сильно развита, чтоб в нее вдаваться. Я просто судил по основным областям: картинки, речь, экономика, сигналы, отделив нлп. Там везде важен бэкграунд, даже проф. Воронцов говорил, что опытный в определенной области человек просто посмотрев на данные может сварганить недурственную фичу для классификатора например.

Короче всё у тебя круто. Просто помни про особенности данных и не забывай про базу. Успехов!
ДРОД !!80Pn0mpd9w 83 276026
>>276011

> Короче всё у тебя круто. Просто помни про особенности данных и не забывай про базу. Успехов!


Хех, спасибо. И тебе успехов, бро.
День 29 ДРОД !!80Pn0mpd9w 84 276187
Осталось 4 ноутбука до конца специализации. Сегодня вторая неделя курса о свёрточных сетях: будем делать ноутбук о ResNets.

Посмотрел, кстати, 30 секунд специализации Big Data for Data Engineers Specialization: через произношение специалистов из Яндекса пробраться невозможно, к сожалению.
85 276196
Оп, расскажи, ты за деньги покупал доступ к специализации, или она бесплатная, или ты писал письмо с просьбой сделать её для тебя бесплатной? Тоже хочу пройти, но я нищий студент.
86 276214
>>276196
Специализацию по TensorFlow прошел бесплатно, т.к. успел за 7 дней. А Ng купил, но знакомые рассказывают, что фин. помощь получить вполне реально, подробностей не знаю.

Подозреваю, что можно регистрировать левые аккаунты, смотреть лекции и решать упражнения в течение 7 дней с каждого - до тех пор пока всё не сделаешь.
День 29: 1 час ДРОД !!80Pn0mpd9w 87 276232
Сделал ResNet: написал convolutional и identity блоки, и записал с их использованием модель. Полученную модель натренировал распознавать количество пальцев на фотографии.

Следующий ноутбук - ноутбук предпоследней недели - о YOLO!
ДРОД !!80Pn0mpd9w 88 276263
Или всё-таки посмотреть неделю этой специализации о Big Data?..

Еще по совету местного анона хочу повторить SQL здесь: http://sql-ex.ru/
День 30 ДРОД !!80Pn0mpd9w 89 277331
Сегодня ноутбук уou only look once, предпоследняя неделя четвертого курса. Есть какое-то ностальгическое желание не заканчивать курс, потянуть еще немного.

Интересно, что я нашел реальный проект, где как раз следует использовать YOLO: вытаскивать данные из сканов документов. Проблема в том, что для тренировки нужна база данных этих документов, а у меня её нет, так что не уверен, что возьмусь. Все-таки очень хочется применить знания в диких условиях.

Продолжаю думать над дальнейшими стратегиями. Пообщался на днях с одним датасайентистом, он мне предложил небольшой список того, что можно подучить. Я постепенно расшарю этот список здесь. Например, курс Байесовские методы в машинном обучении https://www.youtube.com/playlist?list=PLEqoHzpnmTfCiJpMPccTWXD9DB4ERQkyw
День 31: 2 часа ДРОД !!80Pn0mpd9w 90 278062
Пересмотрел половину третьей недели четвертого курса (Convolutional Neural Networks) -- о YOLO.
День 32 ДРОД !!80Pn0mpd9w 91 278273
Сегодня наполеоновские планы доделать специализацию Deep Learning. Попробую отписывать каждые полчаса.
День 32: 2 часа ДРОД !!80Pn0mpd9w 92 278300
Почти досмотрел лекции о YOLO.
День 32: полчаса ДРОД !!80Pn0mpd9w 93 278301
Досмотрел видео о Non-max Suppression и Anchor Boxes. Осталось последнее видео, затем - ноутбук.
День 32: полчаса ДРОД !!80Pn0mpd9w 94 278304
Досмотрел лекции третьей недели.
День 32: полчаса ДРОД !!80Pn0mpd9w 95 278325
Делаю ноутбук о YOLO: сделал фильтрацию боксов.
День 32: полчаса ДРОД !!80Pn0mpd9w 96 278334
Сделал non_max_suppression из ноутбука о YOLO.
index.png128 Кб, 378x223
День 32: полчаса ДРОД !!80Pn0mpd9w 97 278338
Доделал ноутбук о YOLO. Определяет машинки, всё красиво, но все-таки здесь ноутбук скорее о пост-обработке результатов, саму модель я не делал.
louvregenerated.png876 Кб, 1450x480
День 32 ДРОД !!80Pn0mpd9w 98 278346
Итак, последняя неделя, два ноутбука. Первый ноутбук - о Neural Style Transfer: https://arxiv.org/abs/1508.06576
День 32: час ДРОД !!80Pn0mpd9w 99 278384
Сделал половину ноутбука о NST. Интересная штука - style matrix: подаём изображение в глубокую сеть (например, VGG), затем считатаем трёхмерный тензор активации с одного из внутренних слоёв, сплющиваем двумерную картинку с каждого канала в линию, так чтобы получилась матрица A размера (высотадлина, число каналов). Матрица стилей - это A^T A (где A^T - транспонированная А) - иными словами, мы считаем похожесть (косинус расстояния) для каждой пары каналов. Каналы в сети соответствуют фичам - например, ближе ко входу сети это могут быть фичи, которые детектируют наличие вертикальных линий. Таким образом, элементы матрицы стилей отражают, насколько каждая пара фич идут рука об руку.
ДРОД !!80Pn0mpd9w 100 278386
>>278384
Сделал половину ноутбука о NST. Интересная штука - style matrix: подаём изображение в глубокую сеть (например, VGG), затем считаем трёхмерный тензор активации с одного из внутренних слоёв, сплющиваем двумерную картинку с каждого канала в линию, так чтобы получилась матрица A размера (высота x длина, число каналов). Матрица стилей - это A^T x A (где A^T - транспонированная А) - иными словами, мы считаем похожесть (косинус расстояния) для каждой пары каналов. Каналы в сети соответствуют фичам - например, ближе ко входу сети это могут быть фичи, которые детектируют наличие вертикальных линий. Таким образом, элементы матрицы стилей отражают, насколько каждая пара фич идут рука об руку.
fix
День 32: час ДРОД !!80Pn0mpd9w 101 278397
Прошел два теста, доделываю Neural Style Transfer.
День 32: час ДРОД !!80Pn0mpd9w 102 278404
Доделал NST. Остался последний тест и последний ноутбук - Face Recognition.
День 32: час ДРОД !!80Pn0mpd9w 103 278424
Сдал последний тест и сделал треть последнего ноутбука, использующего FaceNet.
День 32: 2 часа ДРОД !!80Pn0mpd9w 104 278441
Доделал ноутбук, закончил курс Convolutional Neural Networks и вместе с ним закончил специализацию Deep Learning. Дали красивый сертификат за всю специализацию.
ДРОД !!80Pn0mpd9w 105 278555
Присматриваюсь к учебнику по статистике с Julia: https://people.smp.uq.edu.au/YoniNazarathy/julia-stats/StatisticsWithJulia.pdf
2546093d0b18274ae5447689faee46c692ae19~mv2.jpg301 Кб, 2000x1080
Поиск работы: первые итоги ДРОД !!80Pn0mpd9w 106 279620
Разослал резюме в четыре компании на вакансии по машинному обучению. В одной из них меня пособеседовали по телефону, еще в одной - лично.

В телефонным интервью ничего технического не спросили. Я рассказал, что умею делать и какие модели тренировал.

Техническое собеседование в другой компании длилось больше 40 минут. Все вопросы можно разбить на четыре категории: математика, классический ml, нейронные сети, python и tensorflow. Ниже те вопросы, которые я запомнил - где-то 80% от общего количества вопросов:

1) Математика: определение производной, выпуклая функция, собственное значение оператора. Попросили взять производную многочлена второй степени.
2) ML: какие бывают loss function для логистической и линейной регрессий, какие бывают алгоритмы оптимизации, что такое стохастический градиентный спуск.
3) Нейронные сети: арифметика количества параметров для конволюционных слоёв, что делать при оверфиттинге, что такое resnet и зачем он нужен, перечислить известные CNN архитектуры, сколько слоёв у VGG.
4) Python и tensorflow: range vs. xrange и вопрос с заморозкой слоя в tensorflow, суть которого я не очень понял.

Мне показалось, что с первыми тремя пунктами я справился. Я знал ответы на все вопросы, но отвечать нужно было увереннее. По tensorflow и pythonу спрашивали меньше - думаю, потому, что я не ответил на первые простые вопросы.

Ребята на обоих собеседованиях были интересные, и задачи у них интересные, но не думаю, что я кого-либо положительно впечатлил.
ДРОД !!80Pn0mpd9w 107 279627
>>279620
Да, самое интересное забыл: спрашивали, что такое sequence2sequence и что такое attention-слой.
День 33 ДРОД !!80Pn0mpd9w 108 279790
Сегодня посмотреть на Reinforcement Learning Specialization: https://www.coursera.org/specializations/reinforcement-learning
изображение.jpg144 Кб, 976x669
109 279796
Здравствуйте, не обращайте внимания, я просто пришёл сказать, как же жесть вы круты в постоянстве в достижении своих целей и что я вами восхищён, продолжайте в том же духе, спасибо, до свидания.
110 279813
>>279796
Спасибо.
111 279814
Попросил финансовую помощь для специализации Advanced Machine Learning - посмотрим, как это работает.
im210.png114 Кб, 339x316
День 33 ДРОД !!80Pn0mpd9w 112 279825
Посмотрел 2/3 первой недели курса Fundamentals of Reinforcement Learning (это 1-й из четырех курсов RL-специализации). На этой неделе рассказали о k-руком бандите и оценке action values.
День 33: 2 часа ДРОД !!80Pn0mpd9w 113 279881
Досмотрел первую неделю курса Fundamentals of Reinforcement Learning - об оптимистических начальных значениях и Upper-Confidence Bound. Пока что очень нравится. В этой специализации в качестве упражнений тоже тесты и ноутбуки, а еще нужно будет оценивать упражнения других участников (peer-review).

Пара ссылок из курса:
1) Для разработчиков приложений - персонализатор юзер-экспириенса: https://azure.microsoft.com/en-us/services/cognitive-services/personalizer/
2) Tutorial on Real World Interactive Learning http://hunch.net/~rwil/
День 33: 15 минут ДРОД !!80Pn0mpd9w 114 279891
Сделал тест первой недели, ноутбук остается на завтра.
115 286024
Ты как, ОП, дропнул все или забил на дневник? Я устроился на ту работу. Делаю дип лернингом молекулы теперь. Пока все по кайфу
ДРОД !!80Pn0mpd9w 116 286027
>>286024

> Я устроился на ту работу.


Круто, так держать!

Да, на дневник немного забил, но на диплёнинг не забил. Как раз сегодня думал что-нибудь здесь написать.

Мне одобрили заявку на финансовую помощь для первого курса специализации Advanced Machine Learning от ВШЭ. К курсу пока не приступал.

В последние недели подучивал основы питона. В основном учу по ответам на стековерфлоу - например, недавно разбирался с либой multiprocessing, пулами, воркерами. Пробежал за вечер книгу Learn Python 3 the Hard Way - не впечатлила.

Обнаружил и наслаждаюсь питоновскими презентациями David Beazley - кажется, только ради них можно учить этот язык:
https://www.youtube.com/watch?v=MCs5OvhV9S4
https://www.youtube.com/watch?v=D1twn9kLmYg

Планирую посмотреть целиком его python туториал:
https://www.youtube.com/watch?v=748Sh0vIxxQ&list=PLR0GRm4CkTkyUgN1XKxH3lokRN6633pp_&index=1

RL специализацию пока продолжать не буду, судя по всему.
СЕЗОН 2 ДРОД !!80Pn0mpd9w 117 341932
Привет, дневникач.

Вот уже почти год (9 месяцев) прошел с тех пор, как я создал здесь этот тред. За это время я закончил в общей сложности 10 курсов, связанных с ML/DL, успел поработать датасатанистом, съехать в сторону инжиниринга больших данных -- а последние три месяца я занимался совсем другой областью.

Однако старые привычки умирают с трудом, и вот мне пришел бесплатный купон на Профессиональный IBM Сертификат по Data Science от курсеры -- 7 курсов, нужно успеть за месяц -- и я снова с вами, снова вспоминаю основы.
118 399286
Добра, анон. Сам теперь занимаюсь по курсу DLS, буду почитывать твой дневник
119 399306
>>399286
Спасибо.
Продолжение тут: >>373463 (OP)
Тред утонул или удален.
Это копия, сохраненная 30 июля 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /dr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски