December 14th, 2019

Курс Большие данные, машинное обучение, искусственный интеллект

(он же «Базы данных» — семестр 2), семестр 1 здесь

Как обычно, курс обзорный - всего понемногу, с практическим уклоном (почти для каждой лекции - практическая лаба) - так, чтобы потом в любую из областей можно было заглубиться самостоятельно. Немного контекста, немного математики, немного кода на Пайтоне. Это уже третий заход, но первые два получились не особо интересными (по случайным статьям из интернета и курса по ML Вышки с Курсеры), на этот раз подошел более основательно и закупил почти все книги по машинному обучению, которые нашел на русском языке. По этому поводу заявляю: книги всё еще лучше, чем интернет. Но нормального объяснения основ нейронных сетей и градиентного спуска не нашел ни в интернете, ни в литературе, так и пришлось делать всё самому. В целом, получилось норм (я сам доволен), хотя многое еще находится в статусе черновика.

Студенты - 3й курс Цифровая экономика (Прикладная математика и информатика) и просто Прикладная математика и информатика в НГТУ им Р.Е.Алексеева (1-я часть курса - обычные базы данных, осенний семестр; 2-я часть курса - бигдата, весенний семестр).

- Большие данные - лекция-1 - введение
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-1-vviedieniie

Вступление получилось (как сейчас стало понятно, начальную часть сделал 3 года назад) немного бихевиористским, но здесь оно всё равно в тему. Главное не забывать, что если нам в некоторой ситуации удобно рассматривать предмет как некоторую ограниченную модель, не следует потом смешивать рассматриваемый предмет и его модель, т.е. принимать модель за предмет.

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

- Большие данные - лекция-2 - MNIST + nolearn + lasagne
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-2-mnist-plus-nolearn-plus-lasagne

- Большие данные - лекция-3 - Титаник + pandas
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-3-titanik-plus-pandas
Python как «эксель» без мышки (работа с табличными данными), Pandas + Титаник

- Большие данные - лекция-4 - Титаник + Matplotlib + Pandas
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-4-titanik-plus-matplotlib-plus-pandas
Визуализация данных с pandas и matplotlib

- Большие данные - лекция-5 - работа с категориями и текстами
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-5-rabota-s-katieghoriiami-i-tiekstami
Работа с текстом: категории, мешок слов, tf-idf, ЕЯ (NLP)

- Большие данные - лекция-6 - тексты - предварительная обработка, NLP - NLTK
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-6-tieksty-priedvaritiel-naia-obrabotka-nlp-nltk
Предварительная обработка текста, работа с ЕЯ (NLP), NLTK

- Большие данные - лекция-7 - регрессия - разведочный анализ
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-7-rieghriessiia-razviedochnyi-analiz
Регрессия, регрессионная модель — модель предсказания целевой переменной на непрерывной шкале.
Часть 1: разведочный анализ, распределение значений, отношения переменных, корреляция


- Большие данные - лекция-8 - регрессия - построение модели
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-8-rieghriessiia-postroieniie-modieli
Регрессия, регрессионная модель — модель предсказания целевой переменной на непрерывной шкале.
Часть 2: построение модели предсказания: линейная модель, криволинейная модель, выбросы, подгонка, оценка качества


- Большие данные - лекция-9 - обучение без учителя, кластеризация
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-9-obuchieniie-biez-uchitielia-klastierizatsiia
Обучение без учителя (работа с немаркированными данными), кластеризация: k средних, агломеративная кластеризация, оптимальное число кластеров, области высокой плотности

- Большие данные - лекция-10 - градиентный спуск, адаптивный линейный нейрон
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-10-ghradiientnyi-spusk-adaptivnyi-linieinyi-nieiron
Градиентный спуск, двоичная классификация, адаптивный линейный нейрон ADALINE

Более подробный вариант лекции на Хабре: Градиентный спуск по косточкам
бонус в ЖЖ: https://1i7.livejournal.com/116300.html

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

- Большие данные - лекция-11 - логистическая регрессия: градиентный спуск с сигмоидой
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-11-loghistichieskaia-rieghriessiia-ghradiientnyi-spusk-s-sighmoidoi
Логистическая регрессия: градиентный спуск с сигмоидой

Здесь тоже собираюсь сделать версию для Хабры, добавлю ссылку, как соберусь

- Большие данные - лекция-12 - многослойный перцептрон (многомерный градиент, обратное распространение)
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-12-mnoghosloinyi-piertsieptron-mnoghomiernyi-ghradiient-obratnoie-rasprostranieniie
Обучение нейронной сети: обратное распространение ошибки, дифференцирование сложной функции

спойлер: сетку из 3-х нейронов так и не обучил, но в процессе успел вскрыть некоторые интересные вещи, поэтому оно того все равно стоит (надеюсь, что к новому кругу лекций, т.е. весной ближе к лету, доучу)

- Большие данные - лекция-13 - источники данных
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-13-istochniki-dannykh
Источники информации, источники данных

Где добывать данные для моделей (для этой лекции теги - "фактчек" и "цифра")

- Большие данные - лекция-14 - итоги, вычислительная техника, ИИ, ИР, кибернетика
https://speakerdeck.com/sadr0b0t/bol-shiie-dannyie-liektsiia-14-itoghi-vychislitiel-naia-tiekhnika-ii-ir-kibiernietika
Итоги, из истории вычислительной техники, ИИ, кибернетики


Материалы: разные статьи из интернета (MNIST), первые лекциии с Титаником - курс ВШЭ на Курсере, дальше разные темы в основном - Себастьян Рашка "Python и машинное обучение", в конце - нейронные сети Рашка, Николенко "Глубокое обучение", мои собственные изыскания и изо всех остальных книг по чуть-чуть.

Да, для историко-философской части еще: Норберт Винер «Кибернетика, или управление и связь в животном и машине», «История информационных технологий в СССР» под общей редакцией Ю.В.Ревича, Джон Фон Нейман «Вычислительная машина и мозг».

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

Collapse )