ML можно рассматривать по-разному. Простым взглядом может быть то, что ML по своей сути является очень продвинутой формой интерполяции, в которой мы пытаемся сопоставить входные данные с выходными. Другая точка зрения состоит в том, что ML также можно рассматривать как создание наилучшей функции распределения вероятностей с учетом набора пар входных данных. Преимущество вероятностного мышления заключается в том, что мы можем начать использовать мощные инструменты, предоставляемые теорией вероятностей, для решения изучаемой проблемы. В этой статье мы рассмотрим, как мы можем использовать инструменты теории вероятностей для интерполяции данных!
Мы рассмотрим классификацию и регрессию отдельно.
Классификация
Прежде чем мы перейдем к разработке теории предсказания категории для неизвестных входных данных, нам нужно установить некоторые обозначения и концепции.
Во-первых, это пространство выборок S, множество всех возможностей. Чтобы построить S, мы определяем следующее:
Тест - это просто будущие/неизвестные входы.
Обратите внимание, что для того, чтобы задача имела смысл, нам нужно, чтобы
Будем также придерживаться следующих обозначений:
В задаче классификации мощность множества Y конечна.
Поскольку некоторые функции в x могут быть действительными, мощность X может быть бесконечной.
Для каждого элемента в S существует вероятность появления. Входные векторы и соответствующие выходные данные, заданные как часть обучения, представляют собой просто выборку множества S с учетом неизвестных лежащих в основе вероятностей, P(s), где s — элемент S.
Далее мы определяем событие. Событие E — это просто подмножество S. P(E) — это вероятность возникновения E.
Например, E может быть набором:
То есть второй элемент должен быть c₁.
Как классифицировать тестовые входы?
Цель классификации состоит в том, чтобы предсказать категорию cₖ для заданного x. Поскольку мы связываем вероятность с каждым элементом в S, чтобы сделать прогноз, мы можем просто указать cₖ, для которого P({(x, cₖ)}) является максимальным.
Итак, все, что нам нужно, это P({(x, cₖ)}). Для этого мы можем использовать условные вероятности.
Таким образом, для вычисления P(x, cₖ) нам нужны две вещи.
Поскольку нам дан только обучающий набор, мы можем в лучшем случае только аппроксимировать две требуемые величины.
P(cₖ) можно рассчитать, просто подсчитав, сколько раз cₖ встречается в обучающем наборе.
Вычисление P(x|cₖ) гораздо сложнее. Есть несколько способов сделать это. Некоторые из них:
- Знание предметной области: мы знаем функцию достаточно хорошо, чтобы иметь хорошее представление о функции вероятности. Например, погрешность измерительных приборов часто имеет тенденцию следовать нормальному распределению. Если это связано с подсчетом чего-либо, это может быть распределение Пуассона.
- Используйте гистограмму значений признаков для аппроксимации функции вероятности.
Когда у нас есть две величины, мы можем просто сделать:
Следует отметить, что мы также можем выразить результат как:
используя правило Байеса. В любом случае мы получим идентичные результаты.
Регрессия
В регрессии мы пытаемся построить кривую, чтобы предсказать недискретную величину. Обычно мы думаем о отображении как:
Задача, которую мы пытаемся решить, состоит в том, чтобы найти наилучший h(x). Для регрессии подход, который мы обычно используем, состоит в том, чтобы определить выборочное пространство H как набор всех возможных гипотез.
Наш лучший прогноз будет
P({h}) необходимо рассчитать на основе обучающих данных с учетом распределения шума. Поскольку суммирование может быть вычислительно затратным или неосуществимым, обычно мы аппроксимируем y следующим образом:
Спасибо, что прочитали.
Кредиты
Все изображения, содержащие математические выражения, были созданы с помощью Mathcha Online.