Объясните основы машинного обучения на множестве примеров (Часть 2 находится здесь.)

Кто должен это прочитать

Тем, кто слышал о машинном обучении, но не уверен, какие процессы недоступны для машинного обучения.

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

TL;DR (краткое описание)

Это все шаги, которые я хочу объяснить. Я напишу шаги с 1 по 4 на этой странице. (Шаги с 5 по 8 находятся здесь.)

  1. Понимание целей: зачем вам машинное обучение?
  2. Сбор данных: какие данные доступны?
  3. Понимание данных: что означают ваши данные?
  4. Подготовьте данные: помните! Часто это самый трудоемкий шаг.
  5. Выберите модели
  6. Обучайте и тестируйте/оценивайте модели
  7. Настройка параметров
  8. Операционализация моделей

Примечание

Вы можете пропустить это, если вы не полностью понимаете этот раздел.

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

1. Поймите цель

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

Вариант использования 1) Вы менеджер отдела продаж. Вы обнаружите, что если ваша команда получит 100 телефонных номеров потенциальных клиентов, только 1 из них на самом деле купит ваш продукт. Чтобы увеличить доход, не нанимая новых участников, вы хотите знать, какие потенциальные клиенты являются более перспективными, чтобы ваша команда могла сосредоточиться на этих людях. Вы разговариваете с начальником и решаете, что KPI равен 5%. (= Если вы знаете 100 телефонных номеров, вы хотите, чтобы 5% владельцев телефонных номеров купили хотя бы один продукт.)

Вариант использования 2) Вы работаете в лаборатории алгоритмов машинного обучения. Вы хотите изобрести алгоритм, чтобы проверить, является ли изображение кошкой или нет. Согласно продолжающимся исследованиям, наивысшая точность составила 96% при 12-часовом обучении модели. Вы хотите построить новую модель, которая работает быстрее. Основные KPI — точность 96% и 3 часа на обучение модели.

Почему важны измеримые KPI? Я напишу причины в шаге 8 (после прохождения всех объяснений).

2. Соберите данные

Прежде чем что-то делать, вы должны собрать данные. А пока постараемся собрать как можно больше данных.

В примере с отделом продаж у вас могут быть номера телефонов потенциальных клиентов, адреса электронной почты, покупал ли он/она ваши продукты, демографические данные (например, возраст, пол, доход, семейное положение, раса, религия, уровень образования…), история телефонных звонков, записи телефонных звонков, посещения офлайн-магазинов, история посещений интернет-магазина…

В этом случае важен вопрос «независимо от того, купил ли он/она ваши продукты (Купили?)», потому что вы собираетесь выяснить, что новый потенциальный клиент, которого вы встретите в будущем, больше похоже на людей, которые купили продукты или людей, которые не купили продукты. Если ваши модели машинного обучения говорят: «Новый потенциальный клиент X очень похож на людей, которые покупали продукты в прошлом, поэтому он/она, скорее всего, купят продукты!», то вы приложите больше усилий, чтобы приблизиться к X.

Не думайте слишком много о качестве данных сейчас. Вы можете удалить «плохие» данные позже.

3. Понимание данных

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

3–1. Понимание характеристик ваших данных с точки зрения бизнеса.

Пример 1) Вы используете номер телефона в качестве идентификатора человека.

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

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

Пример 4) «Посещения офлайн-магазина» учитываются только тогда, когда покупатели посещают офлайн-магазины и регистрируются/входят на ваш веб-сайт, сканируя QR-код. Это означает, что многие посещения не могут быть учтены в ваших данных. Однако действие по сканированию QR-кода может подтвердить интересы клиента.

3–2. Понимание характеристик ваших данных с точки зрения статистики

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

Характеристики одного поля данных: количество, сумма, максимум (максимум), минимум (минимум), среднее, медиана…

Самому старшему потенциальному покупателю 80 лет, самому молодому — 18. Средний возраст — 34,2 года.
60% состоят в браке и 32% холосты. Данные содержат 121 093 телефонных номера.

Характеристики не только поля данных: корреляции

Записи телефонных разговоров, как правило, длиннее, если потенциальными клиентами являются женщины.
Средний возраст женатых – 36,7 лет, а средний возраст одиноких – 32,1 года.

Дубликаты

Один телефонный звонок может создать две строки данных истории телефонных звонков из-за некоторых системных проблем. Вы можете удалить одну строку из данных истории телефонных звонков.

Отсутствующие значения

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

Выбросы

Вы обнаружите, что одному человеку в ваших данных 500 лет, что, очевидно, невозможно, если только он/она не вампир :P Ваш веб-сайт не проверяет введенное значение как возраст, поэтому он/она ошибочно или намеренно ввел 500, и оно было сохранено. в вашей базе данных.
Важно!! Не существует универсального метода выявления выбросов. Вы должны знать предысторию своих данных.
(Например, вы не знаете, является ли один 100-летний парень исключением или нет. Если вы предлагаете общественные услуги для пожилых людей, он может не считаться Если вы управляете веб-сайтами для старшеклассниц, вы, вероятно, захотите игнорировать его.)

4. Подготовьте данные

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

4–1. Очистка данных

Связать данные

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

Удалить дубликаты/выбросы

Вы определили, какая часть данных является дубликатом или выбросом на шаге 3, и теперь фактически удаляете их.

Обработка отсутствующих значений

Отсутствующие значения часто вызывают головную боль, потому что большинство моделей машинного обучения не могут работать с отсутствующими значениями. У вас есть 4 варианта.

  1. Используйте модель, которая позволяет входным данным содержать пропущенные значения.
    Плюсы: на этом этапе требуется меньше работы.
    Минусы: доступно гораздо меньше моделей, поэтому меньше возможностей для проб и ошибок.
  2. Замените отсутствующие значения средним/медианным.
    Плюсы: вы не потеряете данные (в отличие от варианта 4).
    Минусы: значения могут не совпадать. точный.
  3. Используйте алгоритмы, чтобы угадать пропущенные значения.
    Плюсы: вы можете получить значения, которые являются более точными, чем среднее/медиана.
    Минусы: вы по-прежнему не знаете, вычислены ли значения алгоритмы правильные. Использование алгоритмов может занять некоторое время.
  4. Удалить данные с отсутствующими значениями.
    Плюсы: проще всего!
    Минусы: у вас меньше данных.

4–2. Маркировка данных

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

Распознавание изображений (например, поиск кошек на картинках) обычно требует большого количества изображений для создания моделей. Вы можете выйти, чтобы сфотографироваться или поискать фотографии в Интернете. Проблема в том, что на этих картинках нет меток (независимо от того, изображены на них кошки или нет).

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

(Если вам нужно больше человеческих ресурсов, Amazon Mechanical Turk — один из вариантов.)

4–3. Расширение данных

Это также подходит для варианта использования изображения кошки. Увеличение данных заключается в увеличении объема данных путем создания новых данных.

Одна важная идея заключается в том, что даже если вы повернете изображения кошек, эти изображения все равно будут содержать кошек!

Например, изначально у вас было только 10 000 изображений кошек, но если добавить 10 000 изображений, повернутых на 45 градусов по часовой стрелке и 10 000 размытых изображений, то теперь у вас есть 30 000 изображений!

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

↓ Это «четкое» изображение.

↓ Здесь немного темно, кошачьи глаза светятся, а стул скрывает тело кошки. Следовательно, это гораздо более «шумная» картина.

Конец этой страницы...

Перейдите к шагу 5–8 по этой ссылке!