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

Как я узнаю, что эта модель будет успешной? Как он будет работать в производстве?

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

Что такое оценка модели?

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

Показатели эффективности оценки моделей учат нас:

  • Насколько хорошо работает наша модель
  • Достаточно ли точна наша модель для запуска в производство
  • Повысит ли тренировочный набор большего размера производительность моей модели?
  • Моя модель не подходит или подходит больше?

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

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

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

Метрики для моделей классификации

При оценке моделей классификации сообщаются следующие показатели:

  • Точность измеряет соотношение истинных результатов к общему количеству обращений. Стремитесь к высокой точности.
    точность = # правильных прогнозов / # общее количество точек данных
  • Потеря журнала - это единичный балл, который представляет собой преимущество классификатора над случайным прогнозом. Потеря журнала измеряет неопределенность вашей модели, сравнивая вероятности ее выходных данных с известными значениями (основная истина). Вы хотите минимизировать потери журнала для модели в целом.
  • Точность - это соотношение истинных результатов ко всем положительным результатам.
  • Напомнить - это доля всех правильных результатов, возвращаемых моделью.
  • F1-балл - это средневзвешенное значение точности и запоминания от 0 до 1, где идеальное значение F-балла равно 1.
  • AUC измеряет площадь под кривой с истинными положительными результатами по оси y и ложными срабатываниями по оси x. Этот показатель полезен, потому что он предоставляет единое число, которое позволяет сравнивать модели разных типов.
  • Матрица неточностей - корреляция между меткой и классификацией модели. Одна ось матрицы неточностей - это метка, предсказанная моделью, а другая ось - фактическая метка. N представляет количество классов. В задаче двоичной классификации N = 2
  • Предположим, что набор тестовых данных содержит 100 примеров в положительном классе и 200 примеров в отрицательном классе; тогда таблица путаницы может выглядеть примерно так:

Глядя на матрицу, можно четко сказать, что положительный класс имеет меньшую точность (80 / (20 + 80) = 80%), чем отрицательный класс (195 / (5 + 195) = 97,5%). Эта информация теряется, если посмотреть только на общую точность, которая в этом случае будет (80 + 195) / (100 + 200) = 91,7%.

Учитесь на примере:

Чтобы понять оценку модели, давайте рассмотрим представленную Skyl.ai модель искусственного интеллекта Теги вопросов и ответов, которая классифицирует и помечает вопросы как frame_type, is_scripting_language и язык.

Эта модель обучается с использованием современного алгоритма глубокого обучения Skyl на наборе функций размером 6550 записей, разделенных на набор 90:10 и набор тестов.

Эта недавно обученная модель имеет точность обучения 80,39% с использованием 5895 записей в качестве обучающего набора и имеет оценку оценки обучения 80,2% на основе 655 наборов тестов.

Как оценивать модели с использованием новых данных?

Чтобы начать оценку моделей с использованием данных для невидимых производственных данных, начните с ручной маркировки данных фактическим классом:

После того, как вы пометили эти данные, начните прогнозировать в мелком масштабе, используя вашу модель. Загрузите подготовленный CSV-файл и нажмите кнопку «Начать оценку».

После завершения процесса оценки модели для прогнозирования выходных данных Skyl вычисляет все показатели производительности Model Evaluation на основе прогнозируемых и фактических значений.

Когда мне начать оценку модели?

  1. После того, как вы обучили каждую модель в качестве набора для тестирования и проверки.
  2. Периодически проверяйте модель на предмет дрейфа, оценивая новые производственные данные, помеченные фактическим классом.
  3. После добавления новых функций для увеличения объема вашей модели.
  4. Настройка гиперпараметров на основе оценочных показателей.

Заключить

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

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

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

Первоначально опубликовано: https://blog.skyl.ai/evaluating-a-machine-learning-model/