Расскажите о рутине машинного обучения

машинное обучение искусственный интеллект глубокое обучение Java
Расскажите о рутине машинного обучения

предисловие

Здесь мы говорим об общем процессе анализа проблем машинного обучения, Хотя существуют различные проблемы машинного обучения, общие шаги и лучшие практики имеют определенные процедуры.

понять проблему

Прежде всего, вы должны понять, какую проблему вы пытаетесь решить, например,

  • Какую бизнес-задачу нужно решить?
  • Какие информационные каналы задействованы в решении этой проблемы?
  • Как собирать данные и где источник данных
  • Полны ли данные и каков минимальный масштаб данных?
  • Публикуются ли данные регулярно или собираются в режиме реального времени
  • Определите ценные факторы, влияющие на модель
  • нагрузка

Вышеописанное бла-бла-бла.

ETL-обработка

Собираемые данные могут быть табличными данными, серией данных в реальном времени, N-мерной матрицей или другими типами данных, а также могут представлять собой различные носители данных.Посредством обработки ETL смешанные источники данных преобразуются в формат, который нам нужен для генерации структурированных данных.

предварительная обработка данных

Для собранных данных могут быть недостатки, такие как нулевые значения, выбросы или смещения, вызванные самим генератором данных. Эти дефекты могут привести к ухудшению производительности модели.В то же время для оптимизации более быстрой сходимости требуется обработка стандартизации данных, поэтому требуется предварительная обработка данных.

Например, отсутствующие значения можно просто установить на 0, среднее значение столбца, медиану, максимальное значение частоты или даже надежные алгоритмы и knn и т. д.

Например, стандартизируйте набор данных, чтобы набор данных нормально распределялся со средним значением 0 и стандартным отклонением 1. Это также обеспечивает эффект масштабирования функций.

определение модели

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

  • Задача, которую необходимо выполнить, состоит в том, чтобы предсказать результат или классифицировать данные, первое — это проблема регрессии, а вторая — проблема классификации.
  • Для задач классификации, если требуется маркировка данных, это обучение с учителем, в противном случае это обучение без учителя с использованием методов кластеризации.
  • Являются ли данные непрерывными, и если да, рассмотрите модели последовательности, такие как авторегрессия и RNN.
  • По возможности старайтесь использовать простые модели, такие как одномерная или многомерная линейная или логистическая регрессия.
  • Случаи, которые не могут быть решены с помощью простой модели, могут быть решены с помощью многослойной нейронной сети, например, сложная нелинейность.
  • Сколько размерных переменных используется, извлеките функции с большим эффектом и удалите неважные функции, такие как использование PCA для уменьшения размерности.
  • Без присмотра или без присмотра? Рассматриваете обучение с подкреплением?

функция потерь

Функция потерь используется для измерения качества модели. Она может измерять разрыв между прогнозируемым значением модели и фактическим ожиданием. Выбор неподходящей функции может повлиять на точность модели и даже повлиять на скорость сходимости.

обучение модели

Как только данные будут готовы и модель определена, вы можете начать обучение модели. В обучении участвуют несколько ключевых терминов: итерация, которая представляет собой процесс расчета и настройки модели; пакет, когда набор данных вводится в модель партиями за раз; эпоха, когда обрабатывается весь набор данных, называется эпохой. .

Кроме того, отрегулируйте начальные веса модели перед обучением модели для более быстрой и лучшей сходимости. Его нельзя инициализировать до 0, иначе обучение не удастся. Обычно веса можно инициализировать с помощью методов нормализации.

Сегментация набора данных

Как правило, весь набор данных делится на три группы с соотношением 7: 2: 1. Первая группа — обучающая выборка, которая используется для настройки параметров модели, вторая — проверочная выборка, которая используется для сравнения прямое выполнение нескольких моделей; третья группа для тестового набора используется для проверки точности модели, полученной путем обучения.

модельный эффект

После того, как модель обучена, это зависит от эффекта и способности к обобщению.

Для задач регрессии можно использовать следующие индикаторы, чтобы понять эффект подгонки.

  • средняя абсолютная ошибка
  • средняя абсолютная ошибка
  • среднеквадратическая ошибка и т.д.

Для задач классификации можно использовать следующие индикаторы, чтобы понять эффект классификации.

  • точность
  • точность
  • отзывать
  • Значение F
  • матрица путаницы

Для проблем кластеризации можно использовать следующие индикаторы, чтобы понять эффект кластеризации.

  • фактор силуэта
  • однородность
  • честность
  • V мера

------------- Рекомендуем прочитать ------------

Краткое изложение моих проектов с открытым исходным кодом (машинное и глубокое обучение, НЛП, сетевой ввод-вывод, AIML, протокол mysql, чат-бот)

Зачем писать «Анализ проектирования ядра Tomcat»

Резюме моей статьи за 2017 год — машинное обучение

Краткое изложение моих статей за 2017 год — Java и промежуточное ПО

Резюме моих статей 2017 года — глубокое обучение

Краткое изложение моих статей за 2017 год — исходный код JDK

Резюме моей статьи за 2017 год — обработка естественного языка

Резюме моих статей 2017 года — Java Concurrency


Поговори со мной, задай мне вопросы:

Добро пожаловать, чтобы следовать: