Автоматизация научных исследований в машинном обучении (практика, В.В. Стрижов)/ФУПМ, осень 2019

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Занятие 1 (6-11 сентября))
(Занятие 6 (11 октября — 16 октября))
(45 промежуточных версий не показаны.)
Строка 1: Строка 1:
{{Main|Численные методы обучения по прецедентам (практика, В.В. Стрижов)}}
{{Main|Численные методы обучения по прецедентам (практика, В.В. Стрижов)}}
 +
__NOTOC__
 +
=Машинное обучение=
 +
''Постановка задач и выбор моделей в машинном обучении''
{{tip|Дополнительные материалы находятся [[Численные методы обучения по прецедентам (практика, В.В. Стрижов)|на основной странице]]'''
{{tip|Дополнительные материалы находятся [[Численные методы обучения по прецедентам (практика, В.В. Стрижов)|на основной странице]]'''
Строка 5: Строка 8:
}}
}}
-
== Занятие 1 (6-11 сентября) ==
+
== Занятие 1 (6 11 сентября) ==
# Подготовка инструментов: выполнить (или проверить, что владеете инструментом),
# Подготовка инструментов: выполнить (или проверить, что владеете инструментом),
#* пункты '''1, 2, 4, 6, 7, 9, 11, 12 ,13''' ДЗ-1 из основной страницы,
#* пункты '''1, 2, 4, 6, 7, 9, 11, 12 ,13''' ДЗ-1 из основной страницы,
Строка 20: Строка 23:
## Нарисовать дисперсию прогноза ([https://nbviewer.jupyter.org/github/Intelligent-Systems-Phystech/StartCode/blob/master/Kachkov2018LateProblem2/LateProblem2.ipynb пример полосы]). Дисперсия в каждом значении зависимой переменной вычисляется путем случайного семплирования обучающей выборки, выборка разбивается несколько раз.
## Нарисовать дисперсию прогноза ([https://nbviewer.jupyter.org/github/Intelligent-Systems-Phystech/StartCode/blob/master/Kachkov2018LateProblem2/LateProblem2.ipynb пример полосы]). Дисперсия в каждом значении зависимой переменной вычисляется путем случайного семплирования обучающей выборки, выборка разбивается несколько раз.
## Дополнительно*: предложить способ порождения новых (признаков) моделей.
## Дополнительно*: предложить способ порождения новых (признаков) моделей.
-
'''Анкета'''
+
-
* [https://forms.gle/RCRs2RBJxP8Rv5vD6 Анкета "'''записаться на курс'''"] (стоит отдельно от основной по просьбе робота)
+
-
* [https://forms.gle/YyCBiD852y59QVdC7 Анкета с вопросами на повторение] (основная)
+
-
 
+
'''Материалы'''
'''Материалы'''
* [[Media:Strijov2019PS-Intro.pdf|Вводные слайды]]
* [[Media:Strijov2019PS-Intro.pdf|Вводные слайды]]
Строка 35: Строка 35:
Прочитать, чем '''[https://stackoverflow.com/questions/5009600/difference-between-fork-and-branch-on-github отличается branch от fork]'''
Прочитать, чем '''[https://stackoverflow.com/questions/5009600/difference-between-fork-and-branch-on-github отличается branch от fork]'''
-
== Занятие 2 (13-18 сентября) ==
+
'''Анкета'''
 +
* [https://forms.gle/RCRs2RBJxP8Rv5vD6 Анкета "'''записаться на курс'''"] (стоит отдельно от основной по просьбе робота. Внимание работает только под @phystech.edu и только один раз)
 +
* [https://forms.gle/EFjLLr27jJdBAheB9 Анкета '''"сдача задания'''"] (стоит отдельно от основной. нужна для того, чтобы собрать название папок GitHub где Вы выполнили задание)
 +
* [https://forms.gle/bAjdzDthU1QcGEpt8 Анкета '''"рецензия'''"] (стоит отдельно от основной. нужна для того, чтобы собрать рецензии людей)
 +
* [https://forms.gle/YyCBiD852y59QVdC7 Анкета с вопросами на повторение] (основная)
 +
 
 +
 
 +
== Занятие 2 (13 18 сентября) ==
{{tip| Тут будут '''в пятницу в 18:35''' ссылки на
{{tip| Тут будут '''в пятницу в 18:35''' ссылки на
-
* '''видео-стрим''' семинара
+
* [https://youtu.be/c7oTaoDgh4Y '''видео-стрим''' семинара]
-
* hangouts для желающих задать вопрос
+
* [https://t.me/Qs_ML ссылка на телеграм для вопросов]}}
-
* если видео будет значимо отставать, то будет ссылка на телеграм для вопросов}}
+
 
 +
'''Задание'''
 +
# Загрузить выборку (из прежнего задания, или из UCI, или на ваш вкус), нормировать признаки.
 +
# Для линейной модели (на выбор: модель регрессии или классификации)
 +
#* написать генетический алгоритм выбора признаков (или другой, по вашему выбору).
 +
# Построить графики зависимости,
 +
## ось абсцисс: итерации, <!-- x-axis is iteration -->
 +
## ось ординат: функция ошибки ''S'' и ее стандартное отклонение (обучающая и тестовая выборка), <!-- y-axis is the error function S, train test, std-->
 +
## ось ординат: параметны модели "лапша" (желательно стандартное отклонение), <!-- y-axis is “noodle” of the parameters, std -->
 +
## дополнительно, ось ординат: структура модели, индикаторная вектор-функция. <!-- y-axis is the structure indicator function -->
 +
# Задание делать в той же папке [https://github.com/Intelligent-Systems-Phystech/2019-StartCode 2019-StartCode]
 +
# Дополнительно: применить генетический алгоритм к выбору двухслойной нейросети и нарисовать те же графики и кривую обучения нейросети.
 +
 
 +
'''Материалы'''
 +
* [[Media:Strijov2019FeatureSelection.pdf|Выбор признаков]]
 +
* [[Media:Strijov20192NNUniversalModel.pdf|Структура нейросети]]
 +
 
 +
'''Анкета'''
 +
* [https://forms.gle/LdnZSmjJWVTzZTAYA Анкета с вопросами] (основная. дедлайн 19.09.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/EFjLLr27jJdBAheB9 Анкета '''"сдача задания'''"] (для указание папки на GitHub со 2м заданием. дедлайн 19.09.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/bAjdzDthU1QcGEpt8 Анкета '''"рецензия'''"] (собрать результаты людей. дедлайн 20.09.2019 9:00. доступна только с почты @phystech.edu)
 +
 
 +
== Занятие 3 (20 — 25 сентября) ==
 +
{{tip| Ссылки:
 +
* [https://youtu.be/snESVZdqY7Q видео-стрим семинара]
 +
* [https://t.me/Qs_ML телеграм для вопросов]}}
 +
 
 +
'''Задание'''
 +
# Выбрать проект на свой вкус, и записать его план (pdf) в следующем виде:
 +
## название и ответы на вопросы (написать, от лица эксперта или аналитика),
 +
## схема в формате IDEF0.
 +
# Детализация проекта такова, что план понятен непосвященному читателю.
 +
# Рисовать можно любым инструментом, включая карандаш.
 +
# Задание загрузить в папку [https://github.com/Intelligent-Systems-Phystech/2019-IDEF0 2019-IDEF0] в файле '''Surname2019Projname.pdf'''
 +
(В качестве проекта можно взять алгоритм выбора модели NN-AE из второй части этого семинара).
 +
 +
'''Материалы'''
 +
* [[Media:Strijov2019IDEF0.pdf|Стандарт IDEF при планировании проектов]]
 +
* [[Media:Strijov2019Autoencoder.pdf|Автоэнкодер и нейросеть]]
 +
 
 +
'''Анкета'''
 +
* [https://forms.gle/DnwhGLbTSrgrrFaq7 Анкета с вопросами] (основная. дедлайн 26.09.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/EFjLLr27jJdBAheB9 Анкета '''"сдача задания'''"] (для указание папки на GitHub с 3м заданием. дедлайн 27.09.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/bAjdzDthU1QcGEpt8 Анкета '''"рецензия'''"] (собрать результаты людей. дедлайн 27.09.2019 16:00. доступна только с почты @phystech.edu)
 +
 
 +
== Занятие 4 (27 сентября — 2 октября) ==
 +
{{tip| Ссылки:
 +
* [https://youtu.be/fSIPU3aZjLs видео-стрим семинара]
 +
* телеграм для вопросов там же}}
 +
 
 +
'''Задание'''
 +
# В файле main.ipynb от первого задания добавить раздел с новым вычислительным экспериментом "порождение метрических признаков"
 +
## выборка та же, на ваш выбор,
 +
## задача регрессии или классификации, на ваш выбор,
 +
## кластеризовать, вычислить центры кластеров,
 +
## набор признаков: вычислить расстояние от каждого объекта выборки до центра каждого кластера.
 +
# Сравнить качество, полученное линейной моделью по исходным и по метрическим признакам.
 +
# Построить график зависимости качества модели от числа кластеров.
 +
 +
'''Материалы'''
 +
* [[Media:Zhuikov2015MSPresentation.pdf|Построение рекомендательной системы, метрический подход]]
 +
* [[Media:Strijov2019MetricsLearnig.pdf|Метрическое обучение]]
 +
 
 +
'''Анкета'''
 +
* [https://forms.gle/4SVake6dkpLWawPMA Анкета с вопросами] (основная. дедлайн 03.10.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/EFjLLr27jJdBAheB9 Анкета '''"сдача задания'''"] (для указание папки на GitHub с 4м заданием. дедлайн 03.10.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/bAjdzDthU1QcGEpt8 Анкета '''"рецензия'''"] (собрать результаты людей. дедлайн 04.10.2019 9:00. доступна только с почты @phystech.edu)
 +
 
 +
== Занятие 5 (4 октября — 9 октября) ==
 +
{{tip| Ссылки:
 +
* [https://youtu.be/pcP2T274Ltw видео-стрим семинара]
 +
* телеграм для вопросов там же}}
 +
 
 +
'''Задание'''
 +
# В папке от первого задания добавить ноутбук var_analysis.ipynb с вычислительным экспериментом "визуализация пространства параметров"
 +
#* выборка та же, на ваш выбор,
 +
#* задача регрессии или классификации, на ваш выбор,
 +
# написать процедуру bootstrep, которая возвращает К выборок того же объема, что и обучающая,
 +
## для каждой выборки настроить параметры,
 +
## вычислить ожидание параметров, дисперсию и ковариацию параметров, ожидание ошибки, дисперсию ошибки.
 +
# (Дополнительно) для фиксированного числа признаков построить график зависимости ожидания и дисперсии ошибки от объема выборки.
 +
 +
'''Материалы'''
 +
* [[Media:Strijov2019ProblemStatement.pdf|Постановка задач, формат]]
 +
* [[Media:Strijov2019VisualVariance.pdf|Визуальный анализ признакового пространства и объема выборки]]
 +
 
 +
'''Анкета'''
 +
* [https://forms.gle/4J9UEXqZHheHCuW58 Анкета с вопросами] (основная. дедлайн 10.10.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/EFjLLr27jJdBAheB9 Анкета '''"сдача задания'''"] (для указание папки на GitHub с 4м заданием. дедлайн 10.10.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/bAjdzDthU1QcGEpt8 Анкета '''"рецензия'''"] (собрать результаты людей. дедлайн 11.10.2019 9:00. доступна только с почты @phystech.edu)
 +
 
 +
== Занятие 6 (11 октября — 16 октября) ==
 +
{{tip| Уважаемые слушатели! По техническим причинам семинара сегодня не будет. Он переносится на завтра на это же время.
 +
 
 +
Ссылки:
 +
* [https://youtu.be/CYOaa4_DqlI видео-стрим семинара]
 +
* телеграм для вопросов там же}}
 +
 
 +
'''Задание'''
 +
# В папке от первого задания добавить ноутбук isotonic.ipynb с вычислительным экспериментом "ранговая регрессия",
 +
#* выборка на ваш выбор, [https://sourceforge.net/p/mvr/code/HEAD/tree/data/HybridCarsComparison.xls?format=raw или эта] (про автомобили),
 +
#* сами, как эксперты, выставьте рейтинг объектов (автомобилей) и признаков (их технических характеристик),
 +
#* требуется решить задачу изотонической регрессии.
 +
# Нарисовать график зависимости вычисленных параметров от выставленных при различных значениях регуляризатора:
 +
## несколько графиков плоских, либо
 +
## один трехмерный, по оси ординат регуляризатор, по оси аппликат - восстановленные веса, по оси абсцисс - выставленные.
 +
 +
'''Материалы'''
 +
* [[Media:Strijov2019Indicators1.pdf|Построение интегральных индикаторов]]
 +
 
 +
'''Анкета'''
 +
* [https://forms.gle/JWFyLEr4QsrrtRtY6 Анкета с вопросами] (основная. дедлайн 17.10.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/EFjLLr27jJdBAheB9 Анкета '''"сдача задания'''"] (для указание папки на GitHub с заданием. дедлайн 17.10.2019 9:00. доступна только с почты @phystech.edu)
 +
* [https://forms.gle/bAjdzDthU1QcGEpt8 Анкета '''"рецензия'''"] (собрать результаты людей. дедлайн 18.10.2019 9:00. доступна только с почты @phystech.edu)

Версия 14:43, 14 октября 2019

Машинное обучение

Постановка задач и выбор моделей в машинном обучении


Дополнительные материалы находятся на основной странице
  • Короткий адрес этой страницы bit.ly/PS-ML


Занятие 1 (6 — 11 сентября)

  1. Подготовка инструментов: выполнить (или проверить, что владеете инструментом),
    • пункты 1, 2, 4, 6, 7, 9, 11, 12 ,13 ДЗ-1 из основной страницы,
    • пункты 4, 5 ДЗ-2.
  2. Получить доступ к https://github.com/Intelligent-Systems-Phystech/
  3. В папке 2019-StartCode создать папку ДЗ Surname2019Linear и файл main.ipynb
    1. В тетради кратко указать название и цель эксперимента.
    2. Загрузить выборку
      1. простую (цена на хлеб),
      2. посложнее (потребление электроэнергии),
      3. совет: лучше загружать по ссылке, а не сохранять в репозиторий.
    3. Построить несколько моделей (пример).
    4. Нарисовать график прогноза (оформление: пример 1, пример 2).
    5. Нарисовать дисперсию прогноза (пример полосы). Дисперсия в каждом значении зависимой переменной вычисляется путем случайного семплирования обучающей выборки, выборка разбивается несколько раз.
    6. Дополнительно*: предложить способ порождения новых (признаков) моделей.

Материалы

Советы по пользованию репозиторием

  • GitHub: клонируйте мастер и заливайте правки в него, если работаете только со своим кодом. См. краткое руководство по работе с GitHub.
    1. Update first, Commit after (Pull first, Push after)
    2. Your own work only, no external publications
    3. No big files (put link to external datasets)
    4. No temporary nor dummy files

Прочитать, чем отличается branch от fork

Анкета


Занятие 2 (13 — 18 сентября)

Тут будут в пятницу в 18:35 ссылки на


Задание

  1. Загрузить выборку (из прежнего задания, или из UCI, или на ваш вкус), нормировать признаки.
  2. Для линейной модели (на выбор: модель регрессии или классификации)
    • написать генетический алгоритм выбора признаков (или другой, по вашему выбору).
  3. Построить графики зависимости,
    1. ось абсцисс: итерации,
    2. ось ординат: функция ошибки S и ее стандартное отклонение (обучающая и тестовая выборка),
    3. ось ординат: параметны модели "лапша" (желательно стандартное отклонение),
    4. дополнительно, ось ординат: структура модели, индикаторная вектор-функция.
  4. Задание делать в той же папке 2019-StartCode
  5. Дополнительно: применить генетический алгоритм к выбору двухслойной нейросети и нарисовать те же графики и кривую обучения нейросети.

Материалы

Анкета

  • Анкета с вопросами (основная. дедлайн 19.09.2019 9:00. доступна только с почты @phystech.edu)
  • Анкета "сдача задания" (для указание папки на GitHub со 2м заданием. дедлайн 19.09.2019 9:00. доступна только с почты @phystech.edu)
  • Анкета "рецензия" (собрать результаты людей. дедлайн 20.09.2019 9:00. доступна только с почты @phystech.edu)

Занятие 3 (20 — 25 сентября)

Ссылки:


Задание

  1. Выбрать проект на свой вкус, и записать его план (pdf) в следующем виде:
    1. название и ответы на вопросы (написать, от лица эксперта или аналитика),
    2. схема в формате IDEF0.
  2. Детализация проекта такова, что план понятен непосвященному читателю.
  3. Рисовать можно любым инструментом, включая карандаш.
  4. Задание загрузить в папку 2019-IDEF0 в файле Surname2019Projname.pdf

(В качестве проекта можно взять алгоритм выбора модели NN-AE из второй части этого семинара).

Материалы

Анкета

Занятие 4 (27 сентября — 2 октября)

Ссылки:


Задание

  1. В файле main.ipynb от первого задания добавить раздел с новым вычислительным экспериментом "порождение метрических признаков"
    1. выборка та же, на ваш выбор,
    2. задача регрессии или классификации, на ваш выбор,
    3. кластеризовать, вычислить центры кластеров,
    4. набор признаков: вычислить расстояние от каждого объекта выборки до центра каждого кластера.
  2. Сравнить качество, полученное линейной моделью по исходным и по метрическим признакам.
  3. Построить график зависимости качества модели от числа кластеров.

Материалы

Анкета

Занятие 5 (4 октября — 9 октября)

Ссылки:


Задание

  1. В папке от первого задания добавить ноутбук var_analysis.ipynb с вычислительным экспериментом "визуализация пространства параметров"
    • выборка та же, на ваш выбор,
    • задача регрессии или классификации, на ваш выбор,
  2. написать процедуру bootstrep, которая возвращает К выборок того же объема, что и обучающая,
    1. для каждой выборки настроить параметры,
    2. вычислить ожидание параметров, дисперсию и ковариацию параметров, ожидание ошибки, дисперсию ошибки.
  3. (Дополнительно) для фиксированного числа признаков построить график зависимости ожидания и дисперсии ошибки от объема выборки.

Материалы

Анкета

Занятие 6 (11 октября — 16 октября)

Уважаемые слушатели! По техническим причинам семинара сегодня не будет. Он переносится на завтра на это же время.

Ссылки:


Задание

  1. В папке от первого задания добавить ноутбук isotonic.ipynb с вычислительным экспериментом "ранговая регрессия",
    • выборка на ваш выбор, или эта (про автомобили),
    • сами, как эксперты, выставьте рейтинг объектов (автомобилей) и признаков (их технических характеристик),
    • требуется решить задачу изотонической регрессии.
  2. Нарисовать график зависимости вычисленных параметров от выставленных при различных значениях регуляризатора:
    1. несколько графиков плоских, либо
    2. один трехмерный, по оси ординат регуляризатор, по оси аппликат - восстановленные веса, по оси абсцисс - выставленные.

Материалы

Анкета

Личные инструменты