Difference between revisions of "Week 7"
Line 40: | Line 40: | ||
# Анализ свойств модели с помощью внешних критериев, учет возможных ограничений на параметры и структуру модели | # Анализ свойств модели с помощью внешних критериев, учет возможных ограничений на параметры и структуру модели | ||
## построение парето-оптимального фронта множества моделей, из которых производится выбор. | ## построение парето-оптимального фронта множества моделей, из которых производится выбор. | ||
+ | |||
+ | ===Базовый вариант анализа=== | ||
+ | Обоснование модели, анализ ошибки. Отвечаем на вопрос почему мы используем именно такую прогностическую модель. | ||
+ | |||
+ | # Для задачи из Домашнего задания 2 (или для любой новой задачи, [http://www.machinelearning.ru/wiki/index.php?title=%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%B0%D1%8F_%D1%80%D0%B5%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%B8%D1%8F_%28%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80%29 или вот этой задачи]) сделать анализ ошибки и нарисовать один график на выбор. | ||
+ | #* Зависимость значения ошибки и его [https://ru.wikipedia.org/wiki/%D0%A1%D1%80%D0%B5%D0%B4%D0%BD%D0%B5%D0%BA%D0%B2%D0%B0%D0%B4%D1%80%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BE%D1%82%D0%BA%D0%BB%D0%BE%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5 стандартного отклонения] от сложности (числа признаков) на обучении и контроле. | ||
+ | #* Зависимость значения ошибки и его стандартного отклонения от объема выборки на обучении и контроле. | ||
+ | #* Комбинация первых двух вариантов. | ||
+ | #* Зависимость значения ошибки и его стандартного отклонения от номера шага в итерационной процедуре. | ||
+ | |||
+ | === Кривая обучения === | ||
+ | Запускаем нейросети на общеупотребляемых выборках. Строим график зависимости ошибки от номера итерации алгоритма оптимизации параметров модели. | ||
+ | |||
+ | # На ваш выбор взять выборку и тип нейронной сети. Согласовать объем выборки и сложность нейронной сети. | ||
+ | # В процедуру оптимизации нейронной сети вставить код, получающий ошибку на тестовой и контрольной выборках или воспользоваться встроенными процедурами. | ||
+ | # Для разных объемов выборки построить графики кривой обучения, показывающие различные скорости обучения. | ||
+ | # Наложить на выборку шум. Например, перемешать независимые переменные или добавить случайный шум в зависимые, на ваш выбор. Построить несколько графиков кривой обучения в условиях наложенного шума с разной дисперсией. | ||
+ | |||
+ | === Анализ структуры модели === | ||
+ | Анализ пространства параметров, гиперпараметров, структуры модели | ||
+ | |||
+ | # Поставить вычислительный эксперимент на реальной выборке, проанализировать структуру модели. | ||
+ | # Обсудить, что является структурным параметром, согласно которому модель выбирается из множества моделей, примеры: | ||
+ | #* число признаков обобщенно-линейные модели, | ||
+ | #* число слоев нейросети, число нейронов или параметров каждого слоя, | ||
+ | #* число ближайших соседей, | ||
+ | #* другие параметры. | ||
+ | # Обсудить способ выбора модели: | ||
+ | #* с помощью алгоритмического задания структуры, | ||
+ | #* посредством включения структурных параметров в модель, | ||
+ | #* посредством включения структурных параметров в функцию ошибки, | ||
+ | #* наложением ограничений на функцию ошибки, | ||
+ | #* введением механизма релаксации элементов функции ошибки, | ||
+ | # Обсудить алгоритм выбора модели, оптимизации структурных параметров, примеры: | ||
+ | #* перебор из списка, заданного вручную, | ||
+ | #* полный перебор, | ||
+ | #* генетические алгоритмы, | ||
+ | #* оптимизация с релаксацией, | ||
+ | #* алгоритмы выбора признаков, | ||
+ | #* алгоритмы прореживания, | ||
+ | #* другие специальные алгоритмы. | ||
+ | # Запустить алгоритмы оптимизации | ||
+ | #* параметров, | ||
+ | #* гиперпараметров (если имеются), | ||
+ | #* структурных параметров. | ||
+ | # Построить сравнительную таблицу моделей на одной выборке и оптимизируемой функции ошибки. | ||
==Resources== | ==Resources== |
Revision as of 00:45, 25 March 2021
Make the error and quality analysis. Finalise the computational experiment.
Формальный результат:
- график с анализом ошибки (например, кривая обучения или зависимость точности от сложности и дисперсия функции ошибки)
- таблица сравнения моделей (пусть даже не до конц заполненная)
Contents
E: Error analysis
Запустить базовый эксперимент, проанализировать его результаты.
Цель анализа
Построить таблицу сравнения различных моделей на нескольких выборках согласно набору критериев качества. Таблица модели-выборки-критерии и нарисовать зависимость функции потерь или критерия качества от влияющих на эту функцию факторов. Например, от сложности модели, от шага итерации оптимизации, от дисперсии параметров.
Анализ ошибки в вычислительных экспериментах — это анализ изменения значений функции ошибки при изменении состава выборки (или при других изменениях условий эксплуатации модели).
Начальные требования для анализа
- Поставлена задача оптимизации параметров.
- Задана стратегия разбиения скользящего контроля.
- Задан набор внешних (эксплуатационных) критериев качества модели.
- Для набора разбиений получен
- набор значений векторов оптимальных параметров,
- набор значений функции ошибки на обучении и на контроле.
- Получен набор значений внешних критериев на обучении и контроле.
Анализ ошибки содержит следующие базовые статистические тесты].
- Анализ состава выборки:
- анализ простоты выборки по отдельным признакам (гистограммы признаков),
- анализ мультикоррелированности признаков, в частности анализ ковариационных матриц (вычисление коэффициента детерминации <tex>R^2</tex>, фактора инфляции дисперсии VIF, визуализация результатов метода Белсли, в частности, при изменении состава признаков, факторного анализа),
- тест наличия выбросов в выборке (визуализация изменения функции ошибки при исключении выбросов),
- тест наличия мультимоделей (снижение ошибки при, например, использовании стратегии бустинга)
- оценка необходимой мощности выборки (по оси абсцисс — число объектов, по оси ординат — ошибка на обучении и ее стандартное отклонение),
- оценка необходимого числа признаков (по оси абсцисс — последовательно добавляемые признаки; признаки добавляются, например, по убыванию скорости изменения ошибки — т. н. ускорение и торможение ошибки)).
- Анализ дисперсии параметров и функции ошибки
- анализ стандартного отклонения функции ошибки (внутреннего критерия) и внешних критериев (в частности, визуализация ROC — обучение и контроль на каждом из разбиений),
- анализ изменения функции ошибки на итерациях оптимизации (ось абсцисс — итерации, ось ординат функция ошибки на обучении, контроле и ее стандартное отклонение),
- анализ изменения параметров и гиперпараметров модели (по оси абсцисс — итерации, по оси ординат — набор параметров, лапша и их стандартные отклонения или гипер-параметры),
- анализ изменения параметров и функций ошибки при изменении структурных параметров или регуляризаторов (они по оси абсцисс, по оси ординат — не забываем о стандартном отклонении, получаемом скользящим контролем).
- Сложность алгоритма оптимизации функции ошибки в зависимости от объема выборки
- теоретическая,
- эмпирическая,
- аппроксимация эмпирической функции теоретической (по оси абсцисс — объем выборки, число признаков, число кластеров).
- Анализ свойств модели с помощью внешних критериев, учет возможных ограничений на параметры и структуру модели
- построение парето-оптимального фронта множества моделей, из которых производится выбор.
Базовый вариант анализа
Обоснование модели, анализ ошибки. Отвечаем на вопрос почему мы используем именно такую прогностическую модель.
- Для задачи из Домашнего задания 2 (или для любой новой задачи, или вот этой задачи) сделать анализ ошибки и нарисовать один график на выбор.
- Зависимость значения ошибки и его стандартного отклонения от сложности (числа признаков) на обучении и контроле.
- Зависимость значения ошибки и его стандартного отклонения от объема выборки на обучении и контроле.
- Комбинация первых двух вариантов.
- Зависимость значения ошибки и его стандартного отклонения от номера шага в итерационной процедуре.
Кривая обучения
Запускаем нейросети на общеупотребляемых выборках. Строим график зависимости ошибки от номера итерации алгоритма оптимизации параметров модели.
- На ваш выбор взять выборку и тип нейронной сети. Согласовать объем выборки и сложность нейронной сети.
- В процедуру оптимизации нейронной сети вставить код, получающий ошибку на тестовой и контрольной выборках или воспользоваться встроенными процедурами.
- Для разных объемов выборки построить графики кривой обучения, показывающие различные скорости обучения.
- Наложить на выборку шум. Например, перемешать независимые переменные или добавить случайный шум в зависимые, на ваш выбор. Построить несколько графиков кривой обучения в условиях наложенного шума с разной дисперсией.
Анализ структуры модели
Анализ пространства параметров, гиперпараметров, структуры модели
- Поставить вычислительный эксперимент на реальной выборке, проанализировать структуру модели.
- Обсудить, что является структурным параметром, согласно которому модель выбирается из множества моделей, примеры:
- число признаков обобщенно-линейные модели,
- число слоев нейросети, число нейронов или параметров каждого слоя,
- число ближайших соседей,
- другие параметры.
- Обсудить способ выбора модели:
- с помощью алгоритмического задания структуры,
- посредством включения структурных параметров в модель,
- посредством включения структурных параметров в функцию ошибки,
- наложением ограничений на функцию ошибки,
- введением механизма релаксации элементов функции ошибки,
- Обсудить алгоритм выбора модели, оптимизации структурных параметров, примеры:
- перебор из списка, заданного вручную,
- полный перебор,
- генетические алгоритмы,
- оптимизация с релаксацией,
- алгоритмы выбора признаков,
- алгоритмы прореживания,
- другие специальные алгоритмы.
- Запустить алгоритмы оптимизации
- параметров,
- гиперпараметров (если имеются),
- структурных параметров.
- Построить сравнительную таблицу моделей на одной выборке и оптимизируемой функции ошибки.
Resources
- [Video for week 7].
- [Slides for week 7].