Заметки о курсе Coursera Машинное обучение, проведенном Эндрю Нг, адъюнкт-профессором Стэнфордского университета.

На неделе 1 и неделе 2 мы представили задачу контролируемого обучения и регрессии. Сегодня мы собираемся обсудить еще одну проблему контролируемого обучения - проблему классификации.

Прежде чем вдаваться в подробности, мы должны подумать - в чем разница между проблемой регрессии и проблемой классификации? Ответ - это тип метки, первое - непрерывное число, второе - дискретное.

В задаче регрессии метка - это непрерывное число (или действительное число). Взяв цену на жилье в качестве примера, в зависимости от различных комбинаций характеристик, мы можем получить метку (то есть цену), например, 460 000 долларов США, 232 000 долларов США, 315 000 долларов США и т. Д. Все они представляют собой фактическую ценность данных.

В то время как метка в разделе «Задача классификации» представляет собой «категорию». Здесь мы рассмотрим обнаружение рака груди в качестве примера. При обнаружении рака груди нас больше всего беспокоит тип опухоли, то есть злокачественная или доброкачественная. Для удобства мы просто пометили злокачественные и доброкачественные как 0 и 1 соответственно. Обратите внимание, что дискретное число (0 и 1) означает метку (тип опухоли) данных.

Теперь у нас есть основные идеи двух проблем. Давайте углубимся в детали проблемы классификации!

Проблема классификации

Функция гипотезы

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

Логистическая регрессия также называется сигмовидной функцией, которая преобразует действительные числа в вероятности в диапазоне [0, 1]. Следовательно, значение сигмовидной функции означает, насколько данные принадлежат категории. Формула имеет следующий вид.

  • Обратите внимание, что y представляет метку, y = 1 - метку цели, а y = 0 - другую метку, а в сигмоидной функции мы всегда беспокоиться о метке цели.
  • В большинстве случаев мы принимаем 0,5 в качестве порога вероятности. Если h (x) ≥0,5, мы предполагаем, что данные принадлежат метке 1, а h (x) ‹0,5, мы предполагаем, что данные принадлежат метке 0.

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

  1. Подготовка набора данных - предположим, что у нас есть набор данных по обнаружению груди, каждый из которых имеет две функции и одну метку.

2. Получение параметров - после обучения мы получаем красивую модель, то есть параметры логистической регрессии. Здесь мы предполагаем, что они равны -3, 1 и 1.

3. Прогнозирование меток - в соответствии с сигмоидной функцией с изученными параметрами.

  • Если -3 + x1 + x2≥0, это означает h (x) ≥0,5, то мы прогнозируем, что эта опухоль доброкачественная (метка 1).
  • Если нет, то мы предполагаем, что эта опухоль злокачественная (метка 0).

Понимание концепции вероятности в логистической регрессии

На следующем рисунке, хотя метка точки A и точки B равна 1, их вероятности различны, и P (B∈1) ›P (A∈1). Когда точка находится дальше от красной линии, эта метка более определима. В то время как, когда точка находится прямо на красной линии, предсказатель не может с уверенностью определить, к какой метке должна принадлежать точка, поскольку вероятности одинаковы, P (a∈label0) = P (a∈label1) = 0,5. Это интуиция.

Функция стоимости

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

Градиентный спуск

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

Мультиклассовая классификация

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

Здесь мы представляем общий метод, основанный на логистической регрессии, который называется one-vs-all или one-vs-rest.

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

Например, предположим, что у нас есть набор данных с тремя классами.

  • Класс1 (△)
  • Класс2 (◯)
  • Класс 3 (☆)

  • Шаг 1 - выбор class1 как положительного класса, а других классов как отрицательного класса.

  • Шаг 2. Предположим, мы получили предиктор g1 (z1) после процесса обучения, мы используем этот предиктор для оценки вероятности принадлежности к классу 1 (△).

  • Шаг 3 - повторите шаги 1 и 2, но установите другой положительный класс. Наконец, мы можем получить g2 (z2) и g3 (z3), как показано на следующем рисунке. Мы используем предикторы g2 и g3 для оценки вероятности принадлежности к классу 2 (◯) и классу 3 (☆) соответственно.

  • Шаг 4 - прогнозирование класса новых данных с помощью трех предикторов: g1, g2 и g3.

Как видите, вероятности, которые мы получаем для новых данных, составляют g1 ‹0,5, g2› 0,5 и g3 ‹0,5. Максимальное значение составляет g2› 0,5. Следовательно, мы можем заключить метку прогнозирования этого нового данные относятся к классу 2 (◯).

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

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

Я надеюсь, что эта статья окажется для вас полезной / полезной, и, если она вам нравится, поставьте мне. Любые отзывы, мысли, комментарии, предложения или вопросы приветствуются!