Моделі
Основи попередньої обробки даних і побудови конвеєрів вже розглянуто. Наступний етап — моделювання.
Модель у Scikit-learn — це естіматор, який надає методи .predict()
та .score()
, а також успадковує .fit()
від усіх естіматорів.
.fit()
Після попередньої обробки даних і підготовки їх до моделі першим кроком побудови моделі є навчання моделі. Це виконується за допомогою .fit(X, y)
.
Для навчання моделі для задачі контрольованого навчання (наприклад, регресія, класифікація) необхідно передати як X
, так і y
до методу .fit()
.
Якщо ви працюєте із задачею неконтрольованого навчання (наприклад, кластеризація), марковані дані не потрібні, тому можна передати лише змінну X
, .fit(X)
. Проте використання .fit(X, y)
не викличе помилки. Модель просто проігнорує змінну y
.
Під час навчання модель засвоює все необхідне для здійснення прогнозів. Те, що вивчає модель, і тривалість навчання залежать від обраного алгоритму. Для кожної задачі існує багато моделей, заснованих на різних алгоритмах. Деякі навчаються повільніше, інші — швидше.
Однак навчання зазвичай є найбільш трудомісткою частиною машинного навчання. Якщо навчальна вибірка велика, навчання моделі може тривати хвилини, години або навіть дні.
.predict()
Після навчання моделі за допомогою методу .fit()
вона може виконувати прогнозування. Прогнозування здійснюється просто викликом методу .predict()
:
model.fit(X, y) # Train a model
y_pred = model.predict(X_new) # Get a prediction
Зазвичай потрібно передбачити цільову змінну для нових об'єктів, X_new
.
.score()
Метод .score()
використовується для оцінки продуктивності навченої моделі. Зазвичай він обчислюється на тестовій вибірці (у наступних розділах буде пояснено, що це таке). Ось синтаксис:
model.fit(X, y) # Training the model
model.score(X_test, y_test)
Метод .score()
вимагає фактичних значень цільової змінної (y_test
у прикладі). Він обчислює прогноз для екземплярів X_test
і порівнює цей прогноз із істинною ціллю (y_test
) за допомогою певної метрики. За замовчуванням цією метрикою є точність для задач класифікації.
X_test
позначає підмножину датасету, відому як тестова вибірка, яка використовується для оцінки продуктивності моделі після навчання. Вона містить ознаки (вхідні дані). y_test
— це відповідна підмножина істинних міток для X_test
. Разом вони дозволяють оцінити, наскільки добре модель прогнозує нові, невідомі дані.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 3.13
Моделі
Свайпніть щоб показати меню
Основи попередньої обробки даних і побудови конвеєрів вже розглянуто. Наступний етап — моделювання.
Модель у Scikit-learn — це естіматор, який надає методи .predict()
та .score()
, а також успадковує .fit()
від усіх естіматорів.
.fit()
Після попередньої обробки даних і підготовки їх до моделі першим кроком побудови моделі є навчання моделі. Це виконується за допомогою .fit(X, y)
.
Для навчання моделі для задачі контрольованого навчання (наприклад, регресія, класифікація) необхідно передати як X
, так і y
до методу .fit()
.
Якщо ви працюєте із задачею неконтрольованого навчання (наприклад, кластеризація), марковані дані не потрібні, тому можна передати лише змінну X
, .fit(X)
. Проте використання .fit(X, y)
не викличе помилки. Модель просто проігнорує змінну y
.
Під час навчання модель засвоює все необхідне для здійснення прогнозів. Те, що вивчає модель, і тривалість навчання залежать від обраного алгоритму. Для кожної задачі існує багато моделей, заснованих на різних алгоритмах. Деякі навчаються повільніше, інші — швидше.
Однак навчання зазвичай є найбільш трудомісткою частиною машинного навчання. Якщо навчальна вибірка велика, навчання моделі може тривати хвилини, години або навіть дні.
.predict()
Після навчання моделі за допомогою методу .fit()
вона може виконувати прогнозування. Прогнозування здійснюється просто викликом методу .predict()
:
model.fit(X, y) # Train a model
y_pred = model.predict(X_new) # Get a prediction
Зазвичай потрібно передбачити цільову змінну для нових об'єктів, X_new
.
.score()
Метод .score()
використовується для оцінки продуктивності навченої моделі. Зазвичай він обчислюється на тестовій вибірці (у наступних розділах буде пояснено, що це таке). Ось синтаксис:
model.fit(X, y) # Training the model
model.score(X_test, y_test)
Метод .score()
вимагає фактичних значень цільової змінної (y_test
у прикладі). Він обчислює прогноз для екземплярів X_test
і порівнює цей прогноз із істинною ціллю (y_test
) за допомогою певної метрики. За замовчуванням цією метрикою є точність для задач класифікації.
X_test
позначає підмножину датасету, відому як тестова вибірка, яка використовується для оцінки продуктивності моделі після навчання. Вона містить ознаки (вхідні дані). y_test
— це відповідна підмножина істинних міток для X_test
. Разом вони дозволяють оцінити, наскільки добре модель прогнозує нові, невідомі дані.
Дякуємо за ваш відгук!