Введение

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

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

Вам нужен способ измерить успех.

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

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

Если ваша цель — создать продукт, использующий машинное обучение, вам придется думать не только об обучении и тестировании точности.

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

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

Вот некоторые из этих факторов:

  • Как быстро вы сможете создавать системы, которые будут осмысливать данные?
  • Насколько легко ваши клиенты (или конечные пользователи) могут взаимодействовать с этими системами?
  • Что это означает для структуры вашей команды? Можете ли вы добавить людей без увеличения затрат или снижения эффективности?

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

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

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

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

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

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

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

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

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

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

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

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

Машинное обучение также может помочь сократить человеческие усилия и снизить затраты. Например, вы можете захотеть использовать машинное обучение в бизнес-задаче, где вы пытаетесь извлечь данные из набора документов (например, документы написаны от руки и отсканированы). Вы также можете использовать машинное обучение для решения проблем с данными, которые включают удаление повторяющихся записей в вашей базе данных — скажем, если в каждом документе есть две версии одного и того же человека с разными именами (например, Джон Смит против Джона Маккаскера).

В обоих случаях важным моментом является определение объективной метрики, которая может быть измерена автоматически и напрямую привязана к пользовательскому опыту: сколько времени мне требуется для поиска в моих электронных письмах? Это полезная функция или нет?

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

Заключение

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