В предыдущей статье я говорил о линейной регрессии для непрерывных переменных. Как насчет дискретных переменных, эффективна ли для них линейная регрессия?

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

Проблемы классификации с двумя классами называются задачами бинарной классификации и кодируются как y = {0,1}. Проблемы классификации более двух классов называются многоклассовой классификацией.

Зачем нам кодировать?

К сожалению, компьютеры не могут понимать слова, как люди, они всего лишь продвинутые калькуляторы. :)

Следующий вопрос: как мы кодируем данные?

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

Нет… это не так :(. Предположим, я хочу сделать бинарную классификацию. В линейной регрессии значения возвращают непрерывные значения, которые больше единицы или меньше нуля, но мне нужен точный ответ, например 0 или 1. Таким образом, эта модель не фиксирует цель в классификации хорошо.

Итак, какую модель я должен использовать для классификации?

Логистическая регрессия

Эта модель не предсказывает цели y = 0 или y = 1 напрямую. Эта модель предсказывает условную вероятность с использованием сигмовидной функции.

Модель логистической регрессии дает непрерывные вероятности классов

Как мы можем сделать бинарную классификацию с этой условной функцией вероятности?

Если вероятность ≥ 0,5, мы классифицируем как 1, в противном случае мы классифицируем как 0. Правильно!

Как мы можем измерить вероятность того, что мы нашли хорошее?

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

Уравнение логарифмического правдоподобия:

Для изучения модели логистической регрессии нам нужно решить задачу оптимизации, чтобы найти оптимальные тета, мы можем использовать градиентный подъем, а не градиентный спуск, потому что наша цель — максимизировать логарифмическое правдоподобие!

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

Градиент логарифмического правдоподобия

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

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

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