Сравнение с качеством, доступным человеку
33. Зачем сравнивать с уровнем качества, доступным человеку
Многие системы, использующие машинное обучение, преследуют цель автоматизировать задачи, с которыми люди хорошо справляются. В качестве примера можно привести распознавание изображений, распознавание речи, классификация спама в электронной почте. Обучающиеся алгоритмы настолько улучшились, что им удается превзойти человека на все большем и большем количестве таких задач.
Кроме того, есть несколько причин, исходя из которых построение систем машинного обучения упрощается, если вы пытаетесь выполнить с их помощью задачу, с которой хорошо справляются люди:
- Просто разметить данные с помощью асессоров. Например, поскольку люди хорошо распознают изображения кошек, асессоры могут с высокой точностью разметить выборки, необходимые для обучения вашего алгоритма.
- Анализ ошибок может опираться на человеческую интуицию. Предположим, алгоритм распознавания речи работает хуже, чем это делает человек. Например, алгоритм неправильно расшифровывает фрагмент и выдает: «Этот рецепт требует парту яблок», принимая «пару» за «парту». Вы можете использовать интуицию человека и попытаться понять, какую информацию человек использует для получения правильной транскрипции, после чего использовать эту информацию для изменения обучающегося алгоритма.
- Можно использовать качество решения задачи человеком в качестве эталона, а также установить «желаемую частоту ошибок». Предположим, что качество работы алгоритма при выполнении задачи достигло уровня, которому соответствует 10% ошибок, а человек допускает только 2% ошибок. Тогда мы знаем, что оптимальная частота ошибок не превышает 2%, а избегаемое смещение для нашего алгоритма составляет не менее 8%. Таким образом, мы должны попробовать методы уменьшения смещения.
Хотя пункт № 3 может показаться неважным, я считаю, что наличие разумного и достижимого целевого показателя ошибок помогает ускорить прогресс команды. Осознание того, что алгоритм имеет большое избегаемое смещение невероятно полезно и подсказывает спектр методов, которые можно попробовать применить.
Есть некоторые задачи, с которыми даже люди не могут справиться. Например, выбрать книгу, чтобы рекомендовать ее вам; или выбрать рекламное объявление, чтобы показать его пользователю на веб-сайте; или спрогнозировать ситуацию на фондовом рынке. Компьютеры уже превосходят качество решения этих задач большинством людей. В тахих приложениях мы сталкиваемся со следующими проблемами:
- Сложнее получить размеченную выборку для обучения алгоритмов. Например, асессорам сложно разметить базу данных пользователей с указанием «оптимальной» книги для каждого из них. Если у вас есть веб-сайт или приложение, которое продает книги, вы можете получить размеченные данные, показывая пользователям книги и отмечая те, которые они покупают. Если вы не используете такой сайт, вам нужно найти более креативные способы получения данных.
- Нельзя рассчитывать на человеческую интуицию. Например, практически никто не умеет предсказывать поведение фондового рынка. Так что, если наш алгоритм прогнозирования стоимости акций работает не лучше, чем случайное гадание, трудно понять, как его улучшить.
- Трудно понять, какова оптимальная частота ошибок и разумная желаемая частота ошибок. Предположим, что имеющаяся система рекомендаций книг работает довольно хорошо. Как узнать, не имея базового («человеческого») уровня качества и соответствующей ему доли ошибок, насколько ее еще можно улучшить?
продолжение следует