Вопрос или проблема
Я видел множество уроков и статей о том или ином модели, которые демонстрируют отличные показатели точности. В данном случае, скажем, 85%. Но я никогда не вижу, что делать с оставшимися 15%? Я предполагаю, что большинство из тех людей, о которых я читаю, являются учеными или академиками, пытающимися донести свою точку зрения, но что происходит, когда вы находитесь в коммерческой индустрии, где 85% просто недостаточно? Что вы делаете с этими 15%? Нужны ли дополнительные эпохи? Другая модель? Другая архитектура? Что? Спасибо.
Здесь вступает в игру так называемый термин “базовая линия”. Необходимо иметь базовую линию, это может быть простая модель, которая предсказывает производительность (точность, полнота или что-либо другое), и стараться улучшать ее. Или, что более естественно, когда это возможно, лучше всего иметь человеческую базовую линию. Последняя распространена в отраслях, но ее сложнее получить, так как для сбора данных нужны человеческие метки.
Куда идти с оставшимися процентами неудачных предсказаний, зависит от ситуации. Часто многие используют модельный подход, поскольку это кажется самым очевидным с учетом множества новых моделей и архитектур, которые публикуются и выходят, и пытаются улучшить их. Однако часто это не очень помогает, и обычно занимает много времени. Другие могут принять подход, ориентированный на данные. Это означает, что они будут больше сосредотачиваться на данных, на том, есть ли у данных правильное качество, точны ли метки и аннотации и, что наиболее важно, достаточно ли их с учетом модели, на которой идет обучение. Например, глубокие нейронные сети довольно жадны. Это значит, что чем больше данных, тем лучше. Либо даже могут задать более фундаментальные вопросы о том, является ли такие данные хорошим представлением для машинного суждения (правило здесь – если человек способен сделать суждение за X секунд/мс, машина тоже может).
Есть и другие, кто учитывает оба подхода и берет лучшее из каждого мира. Они внимательно смотрят на данные, но также уделяют значительное внимание модели, будь то оптимизация гиперпараметров или выбор модели или архитектуры модели и т. д.
В конце концов, нужно задать себе вопрос: что если модели нет? Вы получаете выгоду от предсказаний модели даже при 85% точности? Или стоимость неправильного предсказания такова, что только 98% полноты будет приемлемым, в противном случае лучше взяться за ручные процессы, пока не будет достигнуто приемлемое значение. Здесь важны ожидания бизнеса, и они идут рука об руку с практиками машинного обучения и науки о данных.
Я настоятельно рекомендую посмотреть Недавнюю лекцию Эндрю Нга о Переходе от модели к данным в ИИ. Он приводит практические примеры таких сценариев, которые помогут лучше понять вопрос.
Ваши варианты:
-
Не делать ничего с моделью. (Так зачем вы ее создавали?)
-
Использовать модель, зная, что она работает достаточно хорошо, хотя и делает ошибки.
(Оценка того, работает ли она достаточно хорошо, это отдельный разговор.)
Программное обеспечение для распознавания речи, такое как Siri, может допускать ошибки, но программное обеспечение по-прежнему полезно. Альтернатива – вообще не иметь распознавания речи. Мне было бы приятно видеть меньше ошибок, но я считаю программное обеспечение для распознавания речи удобным инструментом.
Помните, что вы не знаете, какие $15\%$ случаев в реальных условиях являются неудачами (пока не получите обратную связь от пользователя, что может быть и никогда).
Короче говоря, я бы сказал:
- остаться с прежним, вероятно, ручным процессом, если он более удобен
- или попытаться понять, почему результат всего лишь 85% и улучшить модель/качество данных
- попробовать другие модели, параметры, создать дополнительные характеристики
- получить больше и более чистых данных
- или нанять топового дата-сайентиста, который мог бы помочь с этой проблемой
При принятии решения, достаточно ли 85%, вы можете сравнить его с процентом успешности старого процесса и/или рассчитать и сравнить затраты старого и ML процессов с 85%, чтобы помочь решить, что лучше для вас или оправдать инвестиции времени или денег в его улучшение.
Ответ или решение
Когда вы сталкиваетесь с неудачной частью обученного набора данных, на уровне 15% ошибок, важно правильно определить, какие шаги предпринять дальше. Существует несколько подходов и стратегий, которые вы можете рассмотреть в зависимости от контекста и потребностей вашего бизнеса.
-
Анализ моделирования:
- Начните с определения базового уровня, чтобы понять, насколько ваша модель работает по сравнению с другими методами. Это может быть простой статистический метод или ручной процесс, который выполнялся ранее. Обратите внимание на уровень ошибок в старом методе и сравните его с работой вашей модели.
-
Понимание ошибок:
- Важно проанализировать, какие ошибки допускает ваша модель. Определите, представлены ли эти случаи в обучающем наборе данных. Если ошибки можно объяснить качеством данных или отсутствием определенных признаков, это может указать путь к улучшению.
-
Улучшение данных:
- Рассмотрите возможность повышения качества данных. Это может включать в себя выбор качественных источников данных, улучшение разметки или добавление дополнительных функций. Возможно, ваш набор данных недостаточно велик для обучения модели, особенно если вы используете глубокие нейронные сети, которые требуют значительного объема данных.
-
Экспериментируйте с моделями:
- Изучите возможность использования других моделей или архитектур. Пробуйте различные алгоритмы машинного обучения с различной сложностью и возможностями обобщения. Также рассмотрите настройку гиперпараметров вашей текущей модели, чтобы попробовать извлечь из нее максимум.
-
Гибридный подход:
- Даже если вы решите сосредоточиться на улучшении модели, не забывайте про данные. Комбинированный подход может помочь вам в улучшении как качеств модели, так и надежности данных, которые вы используете.
-
Проблема применения:
- Задайтесь вопросом, действительно ли ваш бизнес требует идеальной модели. Иногда наличие модельных предсказаний при 85% точности может быть достаточно для принятия бизнес-решений. Рассмотрите стоимость ошибок — если ошибки модели приводят к серьезным последствиям, возможно, стоит рассмотреть возможность ведения процесса вручную, пока не будет достигнута приемлемая точность.
-
Обратная связь пользователя:
- Соберите обратную связь от пользователей, чтобы понять, как ошибки модели влияют на конечный результат. Это может помочь вам уточнить, какие именно аспекты модели требуют доработки.
-
Анализ бизнес-целей:
- Важно помнить, что любые улучшения модели должны быть оправданы с точки зрения бизнеса. Сравните показатели вашей модели с предыдущими процессами и стоимостью, чтобы определить, какое решение будет наиболее целесообразным.
В заключение, правильный подход к неудачной части обученного набора данных зависит от многих факторов, включая ваши бизнес-цели, доступные ресурсы и последствия ошибок. Учтите, что постоянное тестирование и итерации являются ключевыми элементами для достижения оптимальных результатов.