Изменения

Перейти к: навигация, поиск

Жизненный цикл модели машинного обучения

312 байт добавлено, 21:14, 13 февраля 2020
Нет описания правки
==Анализ и подготовка данных==
На данном этом этапе осуществляется анализ, сбор и подготовка всех необходимых данных для использования в модели. Основные задача данного этого этапа состоит в том, чтобы получить обработанный, высококачественный набор данных, который подчиняется некоторой закономерности. Анализ и подготовка данных состоят из 4 стадий: анализ данных, сбор данных, нормализация данных и моделирование данных. 
===Анализ данных===
Задача данного этого шага – понять слабые и сильные стороны в имеющихся данных, определить их достаточность, предложить идеи, как их использовать, и лучше понять бизнес-процессы заказчика. Требуется провести анализ всех источников данных, к которым заказчик предоставляет доступ. Если собственных данных не хватает, тогда необходимо купить данные у третьих лиц или организовать сбор новых данных. Для начала нужно понимать, какие данные есть у заказчика. Данные могут быть: собственными, сторонними и «потенциальными» данными (нужно организовать сбор, чтобы их получить). Также требуется описать данные во всех источниках (таблица, ключ, количество строк, количество столбцов, объем на диске). Далее, с помощью таблиц и графиков смотрим на данные, чтобы сформулировать гипотезы о том, как данные помогут решить поставленную задачу. Обязательно до моделирования требуется оценить насколько качественные нужны данные, так как любые ошибки на данном шаге могут негативно повлиять на ход проекта. Типичные проблемы, которые могут быть в данных: пропущенные значения, ошибки в данных, опечатки, неконсистентная кодировка значений (например «w» и «women» в разных системах) .
===Сбор данных===
Сбор данных — это процесс сбора информации по интересующим переменным в установленной систематической форме, которая позволяет отвечать на поставленные вопросы исследования, проверять гипотезы и оценивать результаты. Правильный сбор данных имеет важное значение для обеспечения целостности исследований. Как выбор подходящих инструментов сбора данных, так и четко разграниченные инструкции по их правильному использованию снижают вероятность возникновения ошибок. Прогнозирующие модели хороши только для данных, из которых они построены, поэтому правильная практика сбора данных имеет решающее значение для разработки высокопроизводительных моделей. Данные не должны содержать ошибок и обязаны быть безошибочными и содержать релевантную информациюрелевантными.
===Нормализация данных===
Следующий шаг в процессе подготовки — это то место, где аналитики и инженеры данных обычно проводят большую часть своего времени: очистка и нормализация "грязных" данных. Часто это требует от них принимать решения на основе данных, которые они не совсем понимают, например, что делать с отсутствующими или неполными данными, а также с выбросами. Что еще хуже - , эти данные нелегко соотнести с соответствующей единицей анализа: вашим клиентом. Например, чтобы предсказать, уйдет ли один клиент (а не сегмент или целая аудитория), нельзя полагаться на разрозненные данные из разрозненных источников. Инженер по данным подготовит и объединит все данные из этих источников в формат, который могут интерпретировать модели машинного обучения.
===Моделирование данных===
Следующим этапом подготовки данных является моделирование данных, которые мы хотим использовать для прогнозирования. Моделирование данных — это сложный процесс создания логического представления структуры данных. Правильно сконструированная модель данных должна быть адекватна предметной области, т.е. соответствовать всем пользовательским представлениям данных. Моделирование также включает в себя смешивание и агрегирование веб данных, данных из мобильных приложений, оффлайн данных и др.
Для модели, рассматриваемой в данном конспекте, инженеры объединяют разнородные данные в цельный набор данных. Например, у них есть уже готовые данные по признакам, и они объединяют их в один набор данных.
 
 
===Конструирование признаков===
[http://neerc.ifmo.ru/wiki/index.php?title=%D0%A3%D0%BC%D0%B5%D0%BD%D1%8C%D1%88%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80%D0%BD%D0%BE%D1%81%D1%82%D0%B8 Конструирование признаков ] состоит из учета, статистической обработки и преобразования данных для создания признаков, используемых в модели. Чтобы понять лежащие в основе модели механизмы, целесообразно оценить связь между компонентами и понять, как алгоритмы машинного обучения будут использовать эти компоненты.
На данном этапе нужно творческое сочетание опыта и информации, полученной на этапе исследования данных. В конструирование признаков необходимо найти баланс. Важно найти и учесть информативные переменные, не создавая при этом лишние несвязанные признаки. Информативные признаки улучшают результат модели, а не информативные — добавляют в модель ненужный шум. При создании признаков необходимо учитывать все новые данные, полученные во время обучения модели.
===Обучение модели===
В зависимости от типа вопроса, на который вы ищете ответ, можно использовать разные алгоритмы моделирования. Процесс обучения модели машинного обучения состоит из следующих шагов:
С помощью кросс-валидации разделите необходимо разделить набор данных случайным образом на два набора данных: * Данные для обучения и . * Данные для тестирования.
Обучите модель с помощью тренировочного набора данных.
Оцените набор данных для обучения и тестирования.
Используйте ансамбль конкурирующих алгоритмов машинного обучения, а также связанные с ними параметры настройки (перебор [http://neerc.ifmo.ru/wiki/index.php?title=%D0%9C%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C_%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D0%B0_%D0%B8_%D0%B5%D1%91_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80 гиперпараметров]), которые определяют ответы на поставленный вопрос по имеющимся данным.
Выясните, какой алгоритм наиболее точно решает поставленную задачу, сравнивая метрики для все возможных вариантов.
 
 
 
 
==Развертывание==
===Дифференциальные тесты===
Происходит сравнение результатов, данных новой моделью, и результатов, данных старой моделью для стандартного набора тестовых данных. Необходимо настроить чувствительность этих тестов в зависимости от варианта использования модели. Эти тесты могут быть жизненно важны для обнаружения моделей, которые выглядят рабочими, например, когда устаревший набор данных использовался в обучении или признак была был случайно удалена удален из кода. Эти виды проблемТакие проблемы, связанных с MLприсущие машинному обучения, не приведут к провалу традиционных тестов.ошибке на стандартных тестах.
===Контрольные тесты===
* [[Общие понятия]]
* [[Глубокое обучение]]
* [[Виды ансамблей]]
==Источники информации==
[[Категория: Машинное обучение]]
[[Категория: Глубокое обучение]]
[[Категория: Ансамбли]]
51
правка

Навигация