Машинное обучение - Алгоритмы классификации - преобразователи и оценщики sklearn

машинное обучение

Цель

Знайте конвертер sklearn и поток оценки

преобразователь

Подумайте о шагах разработки функций, которые вы сделали ранее?

  • Instantiate (экземпляр представляет собой класс-трансформер (Transformer))

  • Вызовите fit_transform (для документа, чтобы установить матрицу частот классификационных слов, его нельзя вызывать одновременно)

Интерфейс разработки признаков называется преобразователем, и вызов преобразователя имеет несколько форм.

  • fit_transform

  • fit

  • transform

В чем разница между этими методами? Просто посмотрите на следующий код

In [1]: from sklearn.preprocessing import StandardScaler
 
In [2]: std1 = StandardScaler()
 
In [3]: a = [[1,2,3], [4,5,6]]
 
In [4]: std1.fit_transform(a)
Out[4]:
array([[-1., -1., -1.],
       [ 1.,  1.,  1.]])
 
In [5]: std2 = StandardScaler()
 
In [6]: std2.fit(a)
Out[6]: StandardScaler(copy=True, with_mean=True, with_std=True)
 
In [7]: std2.transform(a)
Out[7]:
array([[-1., -1., -1.],
       [ 1.,  1.,  1.]])

Из этого видно, что роль fit_transform эквивалентна трансформации плюс подгонке. Но зачем предоставлять отдельную подгонку или использовать оригинальный std2 для стандартизации. Преобразовать b по среднему и стандартному отклонению a

In [8]: b = [[7,8,9], [10, 11, 12]]
 
In [9]: std2.transform(b)
Out[9]:
array([[3., 3., 3.],
       [5., 5., 5.]])
 
In [10]: std2.fit_transform(b)
Out[10]:
array([[-1., -1., -1.],
       [ 1.,  1.,  1.]])

Estimator (реализация алгоритма машинного обучения sklearn)

В sklearn оценщик (оценщик) играет важную роль, представляет собой класс API, реализующий алгоритм

  • Оценщик для классификации:

    • sklearn.neighbors алгоритм k-ближайшего соседа

    • sklearn.naive_bayes Байесовский

    • sklearn.linear_model.LogisticRegression логистическая регрессия

    • sklearn.tree дерево решений и случайный лес

  • Оценщик для регрессии:

    • sklearn.linear_model.LinearRegression Линейная регрессия

    • sklearn.linear_model.Ridge Регрессия хребта

  • Оценщики для неконтролируемого обучения

    • sklearn.cluster.KMeans кластеризация

Рабочий процесс оценщика