Дневнички

Ответить в тред Ответить в тред
Привет, дневникач. Здесь будет наивный тред о ДРОД 15/05/19 Срд 15:15:04 2650181
maxresdefault.jpg 51Кб, 1280x720
1280x720
Привет, дневникач. Здесь будет наивный тред о том, как я постигаю deep learning.

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

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

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

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

Пока что предварительная минимальная цель: пройти первые два курса Deep Learning Specialization, чтобы вспомнить основные вещи, и в процессе поискать, куда двигаться дальше.
День 1 ДРОД 15/05/19 Срд 17:29:36 2650392
Aldaris !!C2yzXqwZ0Y 15/05/19 Срд 20:07:50 2650653
>>265018 (OP)
У меня есть вопросы.

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

2. Какие были соображения по выбору фреймворка? То есть почему TF, а не torch или керас?
Аноним 16/05/19 Чтв 02:01:34 2651064
>>265065
1. Мне пока сложно ответить на этот вопрос.
2. Никаких соображений не было. А как выбрать фреймворк?
День 2 ДРОД 18/05/19 Суб 01:49:52 2653405
Почти прослушал вторую неделю, почти выполнил опциональное упражнение-введение в питон.
ДРОД 21/05/19 Втр 12:31:34 2658586
Доделал вторую неделю: сдал тест и упражнение - jupyter notebook, в котором реализована логистическая регрессия для различения котов (кот или не-кот).

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

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

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

Третья неделя посвящена простым нейронным сетям, а четвертая (последняя) - глобоким. Об этих неделях я еще надеюсь написать подробнее чуть позже.
ДРОД 21/05/19 Втр 21:23:25 2660157
День 4 ДРОД 22/05/19 Срд 13:18:54 2661358
Досмотрел лекции третьей недели 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 ДРОД 22/05/19 Срд 23:04:15 2662349
Сделал упражнение-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 ДРОД 23/05/19 Чтв 17:24:21 26635510
Досмотрел лекции четвертой недели, приступил к упражнениям. На этой неделе два jupyter-ноутбука: сначала строим общий алгоритм многослойной сети, затем применяем - опять для распознавания котов, но теперь с точностью 80%.
День 7 ДРОД 24/05/19 Птн 18:57:49 26648911
Сделал один jupyter notebook четвертой недели, остался еще один, финальный, доделать тесты - и первый курс будет пройден.
День 8 ДРОД 25/05/19 Суб 16:02:45 26664312
Окей, доделал последний jupyter notebook четвёртой недели, в котором четырехслойная сеть классифицирует котов с точностью 80%, сдал все тесты. Закончил курс Neural Networks and Deep Learning и получил красивый сертификат. Это первый из пяти (1/5) курсов в Deep Learning Specialization.
День 9 ДРОД 27/05/19 Пнд 21:34:25 26698513
Посмотрел лекции первой недели курса 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 27/05/19 Пнд 21:48:01 26698714
Как вкатываться в компиляторы?

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 29/05/19 Срд 00:20:28 26729115
Сделал пару jupyter-ноутбуков первой недели второго курса, остался один.
День 11 ДРОД !!80Pn0mpd9w 29/05/19 Срд 23:55:40 26744216
Аноним 30/05/19 Чтв 00:06:02 26744617
Ну как, пока не сложилось впечатления, что тебя наебывают?
Аноним 30/05/19 Чтв 11:37:23 26758818
>>266643
>Neural Networks and Deep Learning
фокус на матешу или на использование библиотек?
Аноним 03/06/19 Пнд 21:23:04 26839219
>>267446
Нет. Что ты, собственно, имеешь в виду?

>>267588
>Neural Networks and Deep Learning
>фокус на матешу
Мне кажется, довольно сбалансированное введение.
День 12 ДРОД !!80Pn0mpd9w 04/06/19 Втр 20:07:59 26853020
Сделал вторую неделю второго курса (курс: Improving Deep Neural Networks). В jupyter-ноутбуке реализовывали разные виды оптимизации: mini-batches, gradient descent with momentum, adam.
День 13 ДРОД !!80Pn0mpd9w 09/06/19 Вск 19:12:20 26912421
Посмотрел целиком четвертый курс 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 16/06/19 Вск 14:48:17 27010722
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 16/06/19 Вск 14:49:14 27010823
>>270107
Дополнение к 2): каналы - в телеграме. По-видимому, ссылки на телеграм запрещены.
ДРОД !!80Pn0mpd9w 16/06/19 Вск 14:51:00 27010924
ДРОД !!80Pn0mpd9w 18/06/19 Втр 14:04:43 27042525
День 14, час 1 ДРОД !!80Pn0mpd9w 18/06/19 Втр 16:40:09 27044626
Посмотрел первую половину второй недели пятого курса (Sequence Models) - о word embeddings.
День 14, час 2 ДРОД !!80Pn0mpd9w 18/06/19 Втр 20:16:59 27049127
Посмотрел вторую половину второй недели пятого курса (Sequence Models) - о word2vec и GloVe.
День 14, час 3 ДРОД !!80Pn0mpd9w 18/06/19 Втр 22:37:39 27051328
Сделал первый jupyter-notebook этой недели - работу с GloVe-эмбеддингами. Одно из заданий пропитано духом SJW - написание функции гендерной нетрализации слов. Для этого вычисляем "gender" как разницу между "man" и "woman", и для каждого входного слова вычитаем из него проекцию на "gender".
День 15, час 1 ДРОД !!80Pn0mpd9w 19/06/19 Срд 14:43:08 27060829
Досмотрел до конца вторую неделю пятого курса (Sequence Models) - оказывается, там еще оставался небольшой блок видео как раз о гендерной нейтрализации, а также о sentiment classification.

Начал делать второй jupyter notebook этой недели - вычисление смайлика по текстовому предложению. Уже сделал первую пробную модель: предложение разбивается на слова, каждое слово конвертируется в GloVe-вектор, берется среднее значение полученных векторов и прогоняется через однослойную сеть с softmax-выходом, который лейблит результат одним из пяти возможных смайликов.
День 15, час 2 ДРОД !!80Pn0mpd9w 19/06/19 Срд 19:13:35 27064130
Сделал первый из трёх jupyter ноутбуков первой недели пятого курса (Sequence Models). Реализовал forward pass для RNN и для LSTM. Позже нужно будет еще доделать backpropagation для LSTM - это опциональное упражнение.
День 15, час 3 ДРОД !!80Pn0mpd9w 19/06/19 Срд 19:57:34 27065631
Начал второй jupyter notebook первой недели пятого курса (Sequence Models).
День 16: план ДРОД !!80Pn0mpd9w 20/06/19 Чтв 15:17:25 27082932
Сегодня хочу досмотреть третью (последнюю) неделю пятого (последнего) курса Sequence Models специализации Deep Learning и хочу сделать один jupyter notebook.

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

Сегодня здесь будут более подробные отчёты.
День 16: 1 полчаса ДРОД !!80Pn0mpd9w 20/06/19 Чтв 16:19:14 27083333
Слушаю лекции третьей недели: машинный перевод, энкодер\декодер, beam search
День 16: 2 полчаса ДРОД !!80Pn0mpd9w 20/06/19 Чтв 19:14:24 27085934
Досмотрел кусочек лекций первой недели Sequence Models - о bidirectional RNN и deep RNNs.
День 16: 3 полчаса ДРОД !!80Pn0mpd9w 20/06/19 Чтв 20:39:53 27087135
Досмотрел лекции третьей недели: attention model, speech recognition, trigger word
День 16: 4 полчаса ДРОД !!80Pn0mpd9w 20/06/19 Чтв 22:09:32 27088436
Доделываю notebook со второй недели, секвенциальная модель в Keras, которая лепит на предложения смайлики.
День 16: 5 полчаса ДРОД !!80Pn0mpd9w 21/06/19 Птн 00:17:07 27090837
Доделал модель в Keras. Ноутбуки второй недели последнего курса готовы.
День 17 ДРОД !!80Pn0mpd9w 21/06/19 Птн 16:35:36 27100338
Сегодня меня ждёт attention-модель в Keras, которая приводит даты в стандартный формат. Три основных слоя: на входе двунаправленная LSTM, затем attention-слой и на выходе однонаправленная LSTM.
ДРОД !!80Pn0mpd9w 23/06/19 Вск 14:10:53 27128939
ДРОД !!80Pn0mpd9w 23/06/19 Вск 14:42:01 27129640
Ian Goodfellow рассказывает, что на MNIST для точности <1% до ~2014 года нужно было порядка 60000 примеров, в 2016 с помощью semi-supervised GAN для той же точности понадобилось 100 примеров https://youtu.be/Z6rxFNMGdn0?t=2623
День 18 ДРОД !!80Pn0mpd9w 25/06/19 Втр 14:55:25 27170141
Начал свой небольшой проект - буду классифицировать изображения. Первая подзадача - заскрейпить с сайта, выкачать и сохранить базу данных, с картинками.

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

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

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

Попробуем еще раз получасовые отчёты.
День 19: 1 полчаса ДРОД !!80Pn0mpd9w 27/06/19 Чтв 14:57:31 27202544
Третий курс, первая неделя: evaluation metrics
День 19: 2 полчаса ДРОД !!80Pn0mpd9w 27/06/19 Чтв 15:42:48 27203645
Третий курс, посмотрел первую половину первой недели: обязательно брать dev и test из одной выборки, распределение train/dev/test ближе к 99/0.5/0.5 на данных больше миллиона, люди часто используют train/dev без теста и называют это train/test (всё это уже проговаривалось в предыдущих курсах).
День 19: 3 полчаса ДРОД !!80Pn0mpd9w 27/06/19 Чтв 16:36:50 27204746
Третий курс, первая неделя: Bayes error, avoidable bias (это разрыв между Human error, который есть прикидка для Bayes error, и Training set error).
День 19: 4 полчаса ДРОД !!80Pn0mpd9w 27/06/19 Чтв 17:07:54 27205547
Третий курс, досмотрел первую неделю:
1) Для уменьшения avoidable bias (чтобы ошибки алгоритма на тренировочном сете уменьшались до человеческих) - дольше тренировать, использовать оптимизационные алгоритмы (Adam, RMSProp), учеличивать число слоев и юнитов в них, менять другие гиперпараметры и вообще всю архитектуру
2) Для уменьшения variance - брать правильную выборку, накидывать больше тренировочных данных, регуляризация данных (L2, dropout, дополнение данных), менять гиперпараметры/архитектуру
День 19: 5 полчаса ДРОД !!80Pn0mpd9w 27/06/19 Чтв 18:24:47 27207248
Закончил первую неделю третьего курса. Ошибки в тесте этой недели:
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 28/06/19 Птн 11:59:54 27220449
Сегодня вторая (и последняя) неделя курса Structuring Machine Learning Projects.
День 20: 1 полчаса ДРОД !!80Pn0mpd9w 28/06/19 Птн 17:17:53 27234550
Третий курс, вторая неделя: анализ ошибок, некорректно размеченные данные
День 20: 2 полчаса ДРОД !!80Pn0mpd9w 28/06/19 Птн 19:21:38 27237751
Третий курс, посмотрел половину второй недели: data mismatch
День 20: 3 полчаса ДРОД !!80Pn0mpd9w 29/06/19 Суб 00:13:42 27246952
Третий курс, вторая неделя: transfer learning, многозадачное обучение
День 20: 4 полчаса ДРОД !!80Pn0mpd9w 29/06/19 Суб 00:54:16 27247453
Досмотрел третий курс (Structuring Machine Learning Projects), хотел быстро сдать тест и получить сертификат - но курсера ушла на maintenance.

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

Однозначный совет тем, кто будет смотреть эту специализацию: сделайте как я и посмотрите третий курс после четвертого и пятого. Как мне кажется, он скучнее последующих курсов, а его важность лучше осознается когда уже есть практический опыт работы с моделями. (Впрочем, в моем случае основная часть этой работы еще впереди.)
День 20: 5 полчаса ДРОД !!80Pn0mpd9w 29/06/19 Суб 01:47:16 27248054
Окей, доделал последний тест. Закончил третий (3/5) курс Structuring Machine Learning Projects специализации Deep Learning. Итого два сертификата.
День 21 ДРОД !!80Pn0mpd9w 29/06/19 Суб 13:49:10 27256155
У 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) Утверждают, что код курсов подойдёт для обеих версий тензорфлоу. Это плюс.
Аноним 29/06/19 Суб 16:38:24 27259956
>>270109
Так, ну этот курс пока не работает: всего шесть (омерзительных) лекций, и упражнений я там не нашел.
День 21: 2 часа ДРОД !!80Pn0mpd9w 29/06/19 Суб 20:36:35 27264157
Решил доделать второй (2/5) курс Improving Deep Neural Networks специализации Deep Learning. Сделал последний остававшийся ноутбук курса - ноутбук третьей недели о введении в tensorflow: трёхслойная сеть учится считать число пальцев на фотографии.
День 21: 2 часа ДРОД !!80Pn0mpd9w 30/06/19 Вск 02:14:57 27270558
Оказывается, во втором курсе (Improving Deep Neural Networks) не был готов еще один ноутбук - о gradient checking. Сделал и его. Все ноутбуки второго курса теперь готовы, осталось сдать тесты - оставлю это на завтра.
День 22 ДРОД !!80Pn0mpd9w 02/07/19 Втр 16:26:30 27331959
Прошел первый курс Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning специализации TensorFlow in Practice.

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

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

Поразбирался, кстати, в инфраструктуре kaggle, и теперь жалею, что с первых дней не стал разбирать кернелы - думаю, это правильный способ изучать что-либо в машинном обучении. Очень круто, что у завершенных соревнований часто можно посмотреть решения, иногда даже по итогу прочитать статьи на архиве. Кроме того, кернелы (фактически те же ноутбуки) - это идеальный способ коммуникации внутри сайта. В них можно объяснить какую-то мысль, рассказать решение, сделать базовую модель.
День 23 ДРОД !!80Pn0mpd9w 02/07/19 Втр 17:22:12 27333960
Проходил сейчас тест второго курса специализации Deep Learning - вспоминал, что такое weight decay и inverted dropout.
День 23: 1 час ДРОД !!80Pn0mpd9w 02/07/19 Втр 19:24:37 27338461
Досмотрел недосмотренную часть о 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 03/07/19 Срд 02:52:37 27349262
Сдал курс Convolutional Neural Networks in TensorFlow за несколько часов - это четыре недели, по одному тесту в конце каждой. На курс это, конечно, всё не тянет, но было интересно.

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

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

Несмотря на всё сказанное, с этой специализацией удобно начинать работать с keras - можно быстро ознакомиться с простыми примерами.
День 25 ДРОД !!80Pn0mpd9w 06/07/19 Суб 15:29:08 27460864
Сделал jupyter notebook первой недели пятого курса (Sequence Models) - генерация имён динозавров с помощью обычной RNN.
День 26 ДРОД !!80Pn0mpd9w 08/07/19 Пнд 12:52:05 27499765
Сегодя буду генерировать джазовые композиции.
ДРОД !!80Pn0mpd9w 08/07/19 Пнд 13:02:26 27500466
Тем временем появилась вторая часть курса 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 08/07/19 Пнд 13:06:30 27500967
Неплохой канал об NLP в телеге: Говорит AI govorit_ai
День 26: 2 часа ДРОД !!80Pn0mpd9w 08/07/19 Пнд 17:37:10 27506268
Сделал jupyter notebook с генерацией midi-джаза с помощью LSTM.
Осталось два ноутбука и два теста до конца пятого курса.
Аноним 08/07/19 Пнд 22:56:30 27518469
>>271003
Доделал эту модель, хорошо разобрался с аттеншеном.

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

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

Тебе успехов!
Аноним 09/07/19 Втр 22:15:42 27567173
>>275616
Привет. Расскажи, какой опыт и на какую квалификацию (интерн/сеньёр) подаешь. Хочу понять, когда стоит пробовать идти куда-нибудь стажёром.

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

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

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

Потом уже можно начинать делать дела.
Аноним 10/07/19 Срд 10:36:51 27579975
>>275671
Работаю 7 месяцев в банке математиком, закончил матмех спбгу. Там позиция с начальным опытом, но очень наукоемкая отрасль.

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

Алсо, лучше в стартапы пытаться, я думаю. И чтобы был кто-то опытный в этой теме в команде.
День 28 ДРОД !!80Pn0mpd9w 10/07/19 Срд 13:43:32 27581476
Итак, сегодня приступаю к ноутбукам 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, попробовать написать поиск в тексте по смыслу.
ДРОД !!80Pn0mpd9w 10/07/19 Срд 14:28:36 27583577
image.jpeg 845Кб, 1024x1024
1024x1024
День 28: 1 час ДРОД !!80Pn0mpd9w 10/07/19 Срд 17:42:31 27587878
Сделал один ноутбук: реализовал руками конволюционный и пулинг слои.
День 28: 1 час ДРОД !!80Pn0mpd9w 10/07/19 Срд 19:24:11 27591679
Сделал еще один ноутбук: граф в тензорфлоу с конволюционными и пулинг слоями - модель для распознавания количества пальцев на фото. Сделал тест и закрыл первую неделю Convolutional Neural Networks.
Аноним 10/07/19 Срд 19:42:45 27593880
Возвращаясь к началу треда. Вот ты прошёл эн курсов. Круто, не спорю. Но что в итоге для себя выбрал в качестве данных для профессиональной деятельности? Картинки, звуки?.. Если выбрал, погружался ли в early тематику по этим данным?

Как у тебя с бэкграундом? Теорвер, матстатистика, теория оптимизации, гармонический анализ? Если пойдешь джуном, то вряд ли адекваты будут тебя спрашивать, как тренить сетку с двумя головами. Будут вопросы из базового курса.
Аноним 10/07/19 Срд 20:32:26 27594981
>>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/
Аноним 10/07/19 Срд 22:04:22 27601182
>>275949
Ты реально молодцом. Просто вспомнил, как недавно собеседовал одного. Тот разочаровался в своей области и решил удариться в датасаенс. Прошёл сколько-то курсов на курсере... И в итоге не смог сказать, как он датасаенс применил бы в своей предыдущей области знаний, хотя статистические задачи там только так распространены.

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

Короче всё у тебя круто. Просто помни про особенности данных и не забывай про базу. Успехов!
ДРОД !!80Pn0mpd9w 10/07/19 Срд 22:32:57 27602683
>>276011
> Короче всё у тебя круто. Просто помни про особенности данных и не забывай про базу. Успехов!
Хех, спасибо. И тебе успехов, бро.
День 29 ДРОД !!80Pn0mpd9w 11/07/19 Чтв 13:42:30 27618784
Осталось 4 ноутбука до конца специализации. Сегодня вторая неделя курса о свёрточных сетях: будем делать ноутбук о ResNets.

Посмотрел, кстати, 30 секунд специализации Big Data for Data Engineers Specialization: через произношение специалистов из Яндекса пробраться невозможно, к сожалению.
Аноним 11/07/19 Чтв 14:23:44 27619685
Оп, расскажи, ты за деньги покупал доступ к специализации, или она бесплатная, или ты писал письмо с просьбой сделать её для тебя бесплатной? Тоже хочу пройти, но я нищий студент.
Аноним 11/07/19 Чтв 17:06:19 27621486
>>276196
Специализацию по TensorFlow прошел бесплатно, т.к. успел за 7 дней. А Ng купил, но знакомые рассказывают, что фин. помощь получить вполне реально, подробностей не знаю.

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

Следующий ноутбук - ноутбук предпоследней недели - о YOLO!
ДРОД !!80Pn0mpd9w 11/07/19 Чтв 20:53:52 27626388
Или всё-таки посмотреть неделю этой специализации о Big Data?..

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

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

Продолжаю думать над дальнейшими стратегиями. Пообщался на днях с одним датасайентистом, он мне предложил небольшой список того, что можно подучить. Я постепенно расшарю этот список здесь. Например, курс Байесовские методы в машинном обучении https://www.youtube.com/playlist?list=PLEqoHzpnmTfCiJpMPccTWXD9DB4ERQkyw
День 31: 2 часа ДРОД !!80Pn0mpd9w 19/07/19 Птн 15:30:19 27806290
Пересмотрел половину третьей недели четвертого курса (Convolutional Neural Networks) -- о YOLO.
День 32 ДРОД !!80Pn0mpd9w 20/07/19 Суб 13:21:22 27827391
Сегодня наполеоновские планы доделать специализацию Deep Learning. Попробую отписывать каждые полчаса.
День 32: 2 часа ДРОД !!80Pn0mpd9w 20/07/19 Суб 16:36:04 27830092
Почти досмотрел лекции о YOLO.
День 32: полчаса ДРОД !!80Pn0mpd9w 20/07/19 Суб 17:06:41 27830193
Досмотрел видео о Non-max Suppression и Anchor Boxes. Осталось последнее видео, затем - ноутбук.
День 32: полчаса ДРОД !!80Pn0mpd9w 20/07/19 Суб 17:46:43 27830494
Досмотрел лекции третьей недели.
День 32: полчаса ДРОД !!80Pn0mpd9w 20/07/19 Суб 19:33:49 27832595
Делаю ноутбук о YOLO: сделал фильтрацию боксов.
День 32: полчаса ДРОД !!80Pn0mpd9w 20/07/19 Суб 20:26:53 27833496
Сделал non_max_suppression из ноутбука о YOLO.
День 32: полчаса ДРОД !!80Pn0mpd9w 20/07/19 Суб 21:01:48 27833897
index.png 128Кб, 378x223
378x223
Доделал ноутбук о YOLO. Определяет машинки, всё красиво, но все-таки здесь ноутбук скорее о пост-обработке результатов, саму модель я не делал.
День 32 ДРОД !!80Pn0mpd9w 20/07/19 Суб 21:38:01 27834698
louvregenerated.png 876Кб, 1450x480
1450x480
День 32: час ДРОД !!80Pn0mpd9w 20/07/19 Суб 23:05:45 27838499
Сделал половину ноутбука о NST. Интересная штука - style matrix: подаём изображение в глубокую сеть (например, VGG), затем считатаем трёхмерный тензор активации с одного из внутренних слоёв, сплющиваем двумерную картинку с каждого канала в линию, так чтобы получилась матрица A размера (высотадлина, число каналов). Матрица стилей - это A^T A (где A^T - транспонированная А) - иными словами, мы считаем похожесть (косинус расстояния) для каждой пары каналов. Каналы в сети соответствуют фичам - например, ближе ко входу сети это могут быть фичи, которые детектируют наличие вертикальных линий. Таким образом, элементы матрицы стилей отражают, насколько каждая пара фич идут рука об руку.
ДРОД !!80Pn0mpd9w 20/07/19 Суб 23:09:17 278386100
>>278384
Сделал половину ноутбука о NST. Интересная штука - style matrix: подаём изображение в глубокую сеть (например, VGG), затем считаем трёхмерный тензор активации с одного из внутренних слоёв, сплющиваем двумерную картинку с каждого канала в линию, так чтобы получилась матрица A размера (высота x длина, число каналов). Матрица стилей - это A^T x A (где A^T - транспонированная А) - иными словами, мы считаем похожесть (косинус расстояния) для каждой пары каналов. Каналы в сети соответствуют фичам - например, ближе ко входу сети это могут быть фичи, которые детектируют наличие вертикальных линий. Таким образом, элементы матрицы стилей отражают, насколько каждая пара фич идут рука об руку.
fix
День 32: час ДРОД !!80Pn0mpd9w 20/07/19 Суб 23:54:02 278397101
Прошел два теста, доделываю Neural Style Transfer.
День 32: час ДРОД !!80Pn0mpd9w 21/07/19 Вск 00:41:58 278404102
Доделал NST. Остался последний тест и последний ноутбук - Face Recognition.
День 32: час ДРОД !!80Pn0mpd9w 21/07/19 Вск 02:00:43 278424103
Сдал последний тест и сделал треть последнего ноутбука, использующего FaceNet.
День 32: 2 часа ДРОД !!80Pn0mpd9w 21/07/19 Вск 03:40:51 278441104
Доделал ноутбук, закончил курс Convolutional Neural Networks и вместе с ним закончил специализацию Deep Learning. Дали красивый сертификат за всю специализацию.
ДРОД !!80Pn0mpd9w 21/07/19 Вск 15:38:02 278555105
Поиск работы: первые итоги ДРОД !!80Pn0mpd9w 26/07/19 Птн 13:10:19 279620106
2546093d0b18274[...].jpg 301Кб, 2000x1080
2000x1080
Разослал резюме в четыре компании на вакансии по машинному обучению. В одной из них меня пособеседовали по телефону, еще в одной - лично.

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

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

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

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

Ребята на обоих собеседованиях были интересные, и задачи у них интересные, но не думаю, что я кого-либо положительно впечатлил.
ДРОД !!80Pn0mpd9w 26/07/19 Птн 13:32:32 279627107
>>279620
Да, самое интересное забыл: спрашивали, что такое sequence2sequence и что такое attention-слой.
День 33 ДРОД !!80Pn0mpd9w 27/07/19 Суб 10:40:15 279790108
Аноним 27/07/19 Суб 11:02:30 279796109
изображение.jpg 144Кб, 976x669
976x669
Здравствуйте, не обращайте внимания, я просто пришёл сказать, как же жесть вы круты в постоянстве в достижении своих целей и что я вами восхищён, продолжайте в том же духе, спасибо, до свидания.
Аноним 27/07/19 Суб 14:17:57 279813110
Аноним 27/07/19 Суб 14:19:41 279814111
Попросил финансовую помощь для специализации Advanced Machine Learning - посмотрим, как это работает.
День 33 ДРОД !!80Pn0mpd9w 27/07/19 Суб 16:09:28 279825112
im210.png 114Кб, 339x316
339x316
Посмотрел 2/3 первой недели курса Fundamentals of Reinforcement Learning (это 1-й из четырех курсов RL-специализации). На этой неделе рассказали о k-руком бандите и оценке action values.
День 33: 2 часа ДРОД !!80Pn0mpd9w 27/07/19 Суб 21:57:34 279881113
Досмотрел первую неделю курса 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 28/07/19 Вск 00:28:29 279891114
Сделал тест первой недели, ноутбук остается на завтра.
Аноним 17/08/19 Суб 22:11:31 286024115
Ты как, ОП, дропнул все или забил на дневник? Я устроился на ту работу. Делаю дип лернингом молекулы теперь. Пока все по кайфу
ДРОД !!80Pn0mpd9w 17/08/19 Суб 22:35:03 286027116
>>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 17/02/20 Пнд 13:55:46 341932117
Привет, дневникач.

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

Однако старые привычки умирают с трудом, и вот мне пришел бесплатный купон на Профессиональный IBM Сертификат по Data Science от курсеры -- 7 курсов, нужно успеть за месяц -- и я снова с вами, снова вспоминаю основы.
Аноним 25/08/20 Втр 01:09:06 399286118
Добра, анон. Сам теперь занимаюсь по курсу DLS, буду почитывать твой дневник
Аноним 25/08/20 Втр 04:18:53 399306119
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов