Обычное руководство по контролируемому обучению с помощью scikit-learn - регрессия гребня ядра (23)

Это двадцать третья часть из 92 частей традиционного руководства по контролируемому обучению с помощью scikit-learn, написанного с целью научиться реализовывать алгоритмы для продуктивного использования и быть в состоянии объяснить алгоритмическую логику, лежащую в основе этого. Ссылки на все части вы найдете в первой статье.

Начнем с двух терминологий

Kernal

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

Например, как представить текстовый документ или последовательность белка, которая может иметь переменную длину? или молекулярная структура со сложной трехмерной геометрией? или эволюционное древо, которое имеет переменный размер и форму?

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

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

Ядерный трюк

Вместо того, чтобы определять наш вектор признаков в терминах ядер, φ (x) = [κ (x, x1),…, κ (x, xN)], мы можем вместо этого работать с исходными векторами признаков x, но модифицировать алгоритм так, чтобы что он заменяет все скалярные произведения вида x, x вызовом функции ядра κ (x, x). Это называется трюком с ядром. Оказывается, многие алгоритмы могут быть подвергнуты ядру таким образом.

Теперь мы готовы обсудить регрессию гребня ядра.

Математически

Пусть x ∈ RD - некоторый вектор признаков, а X - соответствующая матрица плана N × D. Мы хотим минимизировать

Оптимальное решение дается

Что это значит?

Ядро изучает функцию в произвольном пространстве

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

Для нелинейных ядер это соответствует нелинейной функции в исходном пространстве.

Простыми словами:

KRR - это метод интерполяции (вставка чего-то другого в нечто иное, например, «вставка песен в произведение»). Здесь нас в основном беспокоит ошибка приближения машинного обучения (MLA) к f (x) в области интерполяции.

Кредиты

Все кредиты относятся к документации Scikit-learn, и все ссылки соответствуют официальному руководству пользователя.

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

об авторе

Я Венали Сонон, специалист по данным по профессии, а также студент управления, стремящийся продвинуться по карьерной лестнице в финансовой индустрии.