Масштабування даних
Для алгоритмів ML, що використовують метрики відстані, вкрай важливо завжди масштабувати дані, адже ознаки на різних шкалах спотворюють результати. K-means використовує евклідову відстань для оцінки відстані до центрів кластерів, тому перед реалізацією алгоритму дані слід спершу масштабувати. Зробімо це.
Доступний датафрейм df з попередньої вправи з невеликою підготовкою даних, тож він готовий до використання зі sklearn. Мітки шахрайства збережено окремо в labels — ви зможете використати їх для подальшої перевірки результатів. numpy імпортовано як np.
Ця вправа є частиною курсу
Виявлення шахрайства в Python
Інструкції до вправи
- Імпортуйте
MinMaxScaler. - Перетворіть датафрейм
dfна масив NumPyX, узявши лише значенняdf, і переконайтеся, що всі значення мають типfloat. - Застосуйте визначений скейлер до
X, щоб отримати масштабовані значенняX_scaledта привести всі ознаки до шкали 0–1.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Import the scaler
from sklearn.preprocessing import ____
# Take the float values of df for X
X = df.values.astype(np.____)
# Define the scaler and apply to the data
scaler = ____()
X_scaled = scaler.____(X)