Любой алгоритм машинного обучения - это набор гипотез, который принимается до рассмотрения данных обучения и используется для поиска оптимальной модели. Алгоритмы машинного обучения делятся на 3 большие категории:
- Обучение с учителем - определены входные характеристики и выходные метки.
- Обучение без учителя - набор данных не помечен, а цель - выявить скрытые взаимосвязи.
- Обучение с подкреплением - присутствует некоторая форма обратной связи, и есть необходимость оптимизировать какой-то параметр.
В этом посте у нас будет высокоуровневое описание некоторых распространенных и популярных алгоритмов машинного обучения, а также их общее представление. Я займусь более глубоким анализом этих алгоритмов в следующих статьях. Обратите внимание, что этот пост основан на моем предыдущем посте об общих терминах машинного обучения, поэтому, пожалуйста, ознакомьтесь с этим постом, прежде чем читать его.
Обычная линейная регрессия методом наименьших квадратов
- При линейной регрессии цель состоит в том, чтобы провести линию через распределение, которое является ближайшим к большинству точек в обучающей выборке.
- В простой линейной регрессии линия регрессии минимизирует сумму расстояний от отдельных точек, то есть сумму «квадрата остатков». Следовательно, этот метод также называют «обыкновенным наименьшим квадратом».
- Линейная регрессия также может быть достигнута в случае многомерных данных, то есть наборов данных, которые имеют несколько функций. В этом случае линия - это просто плоскость более высокого измерения с размерами N-1, где N - размер набора данных.
Логистическая регрессия
- Логистическая регрессия, хотя и называется регрессией, является методом классификации.
- В отличие от линейной регрессии, логистическая регрессия не предполагает линейной связи между зависимыми и независимыми переменными. Хотя предполагается линейная зависимость от логита независимых переменных.
- Другими словами, поверхность принятия решений линейна.
Машины опорных векторов
- Машина опорных векторов (SVM) - это управляемый алгоритм машинного обучения, который можно использовать как для классификации, так и для задач регрессии.
- В SVM мы строим точки данных в N-мерном пространстве, где N - количество функций, и находим гиперплоскость для различения точек данных.
- Это хороший алгоритм, когда количество измерений велико по сравнению с количеством точек данных.
- Из-за работы с пространствами большой размерности этот алгоритм требует больших вычислительных ресурсов.
К-средство кластеризации
- Попытки разбить данные на K групп, ближайших к K центроидам.
- Это можно рассматривать как создание стереотипов среди групп людей.
Алгоритм реализации K означает кластеризацию довольно прост.
- Вы случайным образом выбираете K центроидов
- Назначьте каждую точку данных ближайшему к ней центроиду.
- Повторное вычисление центроидов на основе среднего положения точек каждого центроида.
- Итерируйте до тех пор, пока точки не перестанут менять назначения центроидам.
Чтобы предсказать, просто найдите центроид, к которому они ближе всего.
Деревья решений:
- Дерево решений - это классификатор в виде древовидной структуры.
- Деревья решений классифицируют экземпляры или примеры, начиная с корня дерева и перемещаясь по нему до конечного узла, который является целевым значением.
- Создание деревьев решений полезно, поскольку они имитируют человеческое понимание и, следовательно, модели просты для понимания.
- Маленькие деревья лучше, поскольку чем больше деревья, тем меньше точность.
Это некоторые ключевые машинные алгоритмы, которые, на мой взгляд, важны и должны быть изучены тем, кто только начинает машинное обучение. Алгоритмы машинного обучения похожи на вилки, ножи, пилы и т. Д. Они имеют различные преимущества и недостатки и применимы в разных сценариях.
Если этот пост вас вдохновил, я настоятельно рекомендую вам пойти дальше и глубже понять эти алгоритмы. Также взгляните на этот замечательный пост в SO, чтобы узнать, как можно проверить недостатки и допущения любого статистического метода. Если вы столкнулись с некоторыми распространенными алгоритмами, которые, по вашему мнению, тоже важны и не включены здесь, напишите о них в комментариях ниже.
Спасибо за прочтение. Если вы хотите поговорить об этом подробнее, просто напишите мне @ alt227Joydeep. Буду рад обсудить это дальше. Также, пожалуйста, хлопайте в ладоши и помогите этой статье привлечь больше аудитории.
Больше чтения:
- Деревья решений
- "Линейная регрессия"
- "Логистическая регрессия"
- Опорные векторные машины
- K означает кластеризацию