[ML0to100] — S1E13

Поскольку ваша основная задача - выбрать алгоритм обучения и обучить его на некоторых данных, могут возникнуть две ошибки: «плохой алгоритм». и «неверные данные»

Примеры неверных данных-

1. Недостаточное количество обучающих данных -

Для правильной работы большинства алгоритмов машинного обучения требуется много данных.

Даже для очень простых проблем обычно требуются тысячи примеров, а для сложных проблем, таких как распознавание изображений или речи, может потребоваться миллионы примеров (если вы не можете повторно использовать части существующей модели).

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

По словам авторов -

«Эти результаты предполагают, что мы, возможно, захотим пересмотреть компромисс между тратой времени и денег на разработку алгоритмов по сравнению с их расходами на разработку корпуса».

Дополнительные подтверждающие документы - Необоснованная эффективность данных (2009 г.)

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

2. Непредставительные данные обучения

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

Например,

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

  • сплошная линия → линейная модель на новых данных
  • пунктирная линия → старая модель

Наблюдения-

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

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

Если выборка слишком мала, вы получите шум выборки.

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

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

Терменология-

Размер обычно относится к количеству атрибутов.

Атрибут - это один из конкретных «типов данных». В машинном обучении атрибуты часто называют функциями.

Бывшее имя, вес, рост, возраст и т. Д.

Экземпляр- Экземпляр - это пример обучающих данных. Экземпляр описывается множеством атрибутов.

Бывший Санидхья, 62,5.11,18

3. Данные низкого качества

Если ваши обучающие данные содержат ошибки, выбросы и шум, системе будет сложнее обнаруживать лежащие в основе закономерности.

Решение состоит в том, чтобы очистить данные обучения. (90% того, что вы будете делать как специалист по данным)

Выбросы -

  • Отменить или исправить

В некоторых экземплярах отсутствуют некоторые функции -

(например, 5% ваших клиентов не указали свой возраст) -

  • Полностью игнорировать этот атрибут (атрибут Ex- age)
  • Игнорировать неполные экземпляры (например, 5%)
  • Заполните данные (например, средний возраст)
  • Обучите одну модель с функцией (атрибутом) и одну модель без нее

4. Нерелевантные функции

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

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

Он включает в себя следующие этапы:

  • Выбор функций - выбор наиболее полезных функций для обучения среди существующих функций)
  • Извлечение функций - объединение существующих функций для создания более полезных, которые мы видели ранее, могут помочь алгоритмы уменьшения размерности)
  • Создание новых функций путем сбора новых данных

Читать далее - Что такое« переоснащение в машинном обучении? [S1E14

Сводные шпаргалки, заметки, флэш-карты, записные книжки Google Colab, коды и т. д. будут предоставлены в дальнейших уроках по мере необходимости.

Прочтите всю серию «S1» [ML0to100], чтобы узнать о следующем:

  • Что такое машинное обучение, какие проблемы оно пытается решить, а также основные категории и фундаментальные концепции его систем.
  • Шаги в типичном проекте машинного обучения
  • Обучение путем подбора модели к данным
  • Оптимизация функции стоимости
  • Обработка, очистка и подготовка данных
  • Выбор и инженерные особенности
  • Выбор модели и настройка гиперпараметров с помощью перекрестной проверки
  • Проблемы машинного обучения, в частности, недостаточная и переоснащенная (компромисс смещения / дисперсии)
  • Наиболее распространенные алгоритмы обучения: линейная и полиномиальная регрессия, логистическая регрессия, k-ближайшие соседи, машины опорных векторов, деревья решений, случайные леса и ансамблевые методы.
  • Уменьшение размерности обучающих данных для борьбы с «проклятием размерности»
  • Другие методы неконтролируемого обучения, включая кластеризацию, оценку плотности и обнаружение аномалий. Часть II, Нейронные сети и глубокое обучение, охватывает следующие темы:
  • Что такое нейронные сети и чем они хороши для построения и обучения нейронных сетей с использованием TensorFlow и Keras
  • Наиболее важные архитектуры нейронных сетей: нейронные сети с прямой связью для табличных данных, сверточные сети для компьютерного зрения, повторяющиеся сети и сети долгосрочной краткосрочной памяти (LSTM) для обработки последовательностей, кодировщики / декодеры и преобразователи для обработки естественного языка, автокодеры и генеративные состязательные сети (GAN) для генеративного обучения
  • Методы обучения глубоких нейронных сетей
  • Как создать агента (например, бота в игре), который может изучать хорошие стратегии методом проб и ошибок, используя обучение с подкреплением
  • Эффективная загрузка и предварительная обработка больших объемов данных
  • Обучение и масштабное развертывание моделей TensorFlow

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