Общие сведения о принципах машинного обучения

Завершено

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

На упрощенном уровне модель машинного обучения — это функция , которая принимает функции наблюдаемой сущности (ее характеристики) и выполняет вычисление для их возврата прогнозируемой метки. Обычно обычно ссылаться на функции как x и прогнозируемую метку как y; так что в действительности модель машинного обучения — это функция f в выраженииy = f(x).

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

Типы машинного обучения

Широко говоря, существует два распространенных вида машинного обучения:

  • Защищенное машинное обучение, в котором модель обучена с помощью данных, включающих известные значения меток (поэтому алгоритм использует существующие данные для установления связи между x и y, что приводит к функции, которая может применяться к x для вычисления y).
  • Неуправляемое машинное обучение, в котором модель обучена с помощью только значений функции (x) и наблюдений групп (или кластеров) с аналогичными функциями.

Контролируемое машинное обучение

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

  • Алгоритмы регрессии , в которых метка является числовым значением, например цена, температура, сумма или другое значение, которое можно измерять. Алгоритмы регрессии создают модели, в которых функция (f) работает с функциями (x) для вычисления числового значения метки (y).

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

  • Алгоритмы классификации , в которых метка является дискретной категорией (или классом). Алгоритмы классификации создают модели, в которых функция (f) работает с функциями (x) для вычисления значения вероятности для каждого возможного класса и возвращает метку (y) для класса с наибольшей вероятностью.

    Например, алгоритм классификации можно использовать для обучения модели, которая прогнозирует, имеет ли пациент диабет на основе таких признаков, как уровень инсулина крови, вес, высота, возраст и т. д. Модель классификации, определяющая один из двух возможных классов (например, true или false), является примером двоичной классификации. Алгоритмы, прогнозирующие вероятность более двух классов (например, различающиеся между пациентами без диабета, диабета типа 1 или диабета типа 2) используются для многоклассовой классификации.

Неконтролируемое машинное обучение

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

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