Поняття Scikit-learn
Бібліотека scikit-learn (імпортується як sklearn
) надає різноманітні функції та класи для попередньої обробки даних і моделювання. Основними об'єктами sklearn
є естіматор, трансформер, предиктор та модель.
Естіматор
Кожен клас у sklearn
, який має метод .fit()
, вважається естіматором. Метод .fit()
дозволяє об'єкту навчатися на даних.
Іншими словами, метод .fit()
призначений для навчання об'єкта. Він приймає параметри X
та y
(y
є необов'язковим для задач без учителя).
estimator.fit(X, y) # For supervised learning tasks
estimator.fit(X) # For unsupervised learning tasks
Недостатньо корисно, якщо об'єкт лише навчається на даних, не даючи жодного результату. Більш практичними є два типи об'єктів, які успадковують естіматор: трансформер і предиктор.
Трансформер
Трансформер має методи .fit()
та .transform()
, які змінюють дані певним чином.
Зазвичай трансформери повинні навчитися на даних перед трансформацією, тому спочатку застосовується .fit()
, а потім .transform()
. Щоб уникнути цього, трансформери також мають метод .fit_transform()
.
.fit_transform()
дає той самий результат, що й послідовне застосування .fit()
та .transform()
, але іноді працює швидше, тому його переважно використовують замість .fit().transform()
.
transformer.fit(X) # Train the transformer
transformer.transform(X) # Transform the data using an already trained transformer
transformer.fit_transform(X) # Train the transformer and transform the data
Трансформери зазвичай використовуються для трансформації масиву X
. Однак, як ми побачимо на прикладі LabelEncoder
, деякі трансформери призначені для масиву y
.
Значення nan
, показані у тренувальному наборі на зображенні, вказують на відсутні дані у Python.
Предиктор
Предиктор — це оцінювач (має метод .fit()
), який також має метод .predict()
. Метод .predict()
використовується для здійснення прогнозів.
predictor.fit(X, y) # Training the predictor
predictor.predict(X_new) # Predicting the target for new instances once the predictor is trained.
Модель
Модель — це тип предиктора, який також містить метод .score()
. Цей метод обчислює оцінку (метрику) для вимірювання ефективності предиктора.
model.fit(X, y) # Train the model
model.score(X, y) # Calculate a score for the trained model on X, y set.
Як зазначалося у попередньому розділі, accuracy — це метрика, що відображає відсоток правильних прогнозів.
Етап попередньої обробки включає роботу з трансформерами, а на етапі моделювання ми працюємо з предикторами (точніше, з моделями).
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 3.13
Поняття Scikit-learn
Свайпніть щоб показати меню
Бібліотека scikit-learn (імпортується як sklearn
) надає різноманітні функції та класи для попередньої обробки даних і моделювання. Основними об'єктами sklearn
є естіматор, трансформер, предиктор та модель.
Естіматор
Кожен клас у sklearn
, який має метод .fit()
, вважається естіматором. Метод .fit()
дозволяє об'єкту навчатися на даних.
Іншими словами, метод .fit()
призначений для навчання об'єкта. Він приймає параметри X
та y
(y
є необов'язковим для задач без учителя).
estimator.fit(X, y) # For supervised learning tasks
estimator.fit(X) # For unsupervised learning tasks
Недостатньо корисно, якщо об'єкт лише навчається на даних, не даючи жодного результату. Більш практичними є два типи об'єктів, які успадковують естіматор: трансформер і предиктор.
Трансформер
Трансформер має методи .fit()
та .transform()
, які змінюють дані певним чином.
Зазвичай трансформери повинні навчитися на даних перед трансформацією, тому спочатку застосовується .fit()
, а потім .transform()
. Щоб уникнути цього, трансформери також мають метод .fit_transform()
.
.fit_transform()
дає той самий результат, що й послідовне застосування .fit()
та .transform()
, але іноді працює швидше, тому його переважно використовують замість .fit().transform()
.
transformer.fit(X) # Train the transformer
transformer.transform(X) # Transform the data using an already trained transformer
transformer.fit_transform(X) # Train the transformer and transform the data
Трансформери зазвичай використовуються для трансформації масиву X
. Однак, як ми побачимо на прикладі LabelEncoder
, деякі трансформери призначені для масиву y
.
Значення nan
, показані у тренувальному наборі на зображенні, вказують на відсутні дані у Python.
Предиктор
Предиктор — це оцінювач (має метод .fit()
), який також має метод .predict()
. Метод .predict()
використовується для здійснення прогнозів.
predictor.fit(X, y) # Training the predictor
predictor.predict(X_new) # Predicting the target for new instances once the predictor is trained.
Модель
Модель — це тип предиктора, який також містить метод .score()
. Цей метод обчислює оцінку (метрику) для вимірювання ефективності предиктора.
model.fit(X, y) # Train the model
model.score(X, y) # Calculate a score for the trained model on X, y set.
Як зазначалося у попередньому розділі, accuracy — це метрика, що відображає відсоток правильних прогнозів.
Етап попередньої обробки включає роботу з трансформерами, а на етапі моделювання ми працюємо з предикторами (точніше, з моделями).
Дякуємо за ваш відгук!