ПочатиПочніть безкоштовно

Визначення оптимальної кількості кластерів

Тут ви застосуєте метод «ліктя», щоб визначити оптимальну кількість кластерів, де зменшення сумарної квадратичної похибки стає незначним. Це важливий крок, щоб отримати орієнтовне математичне значення кількості кластерів для стартового тестування. Ви переберете кілька значень кількості кластерів k і запустите алгоритм KMeans для кожного, а потім побудуєте графік похибок проти кожного k, щоб знайти «лікоть», де темп зменшення похибок уповільнюється.

Модуль KMeans завантажено з sklearn.cluster, бібліотеку seaborn імпортовано як sns, а модуль matplotlib.pyplot — як plt. Також масштабований набір даних завантажено як wholesale_scaled_df (DataFrame бібліотеки pandas).

Ця вправа є частиною курсу

Machine Learning для маркетингу в Python

Переглянути курс

Інструкції до вправи

  • Створіть порожній словник sse.
  • Навчіть алгоритм KMeans для значень k від 1 до 11 і збережіть похибки у словнику sse.
  • Додайте заголовок до графіка.
  • Створіть точковий графік із ключами по осі X і значеннями по осі Y та відобразіть діаграму.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create empty sse dictionary
sse = {}

# Fit KMeans algorithm on k values between 1 and 11
for k in ___(1, 11):
    kmeans = ___(n_clusters=___, random_state=333)
    kmeans.___(wholesale_scaled_df)
    sse[k] = kmeans.inertia_

# Add the title to the plot
plt.___('Elbow criterion method chart')

# Create and display a scatter plot
sns.pointplot(x=list(sse.___()), y=list(sse.___()))
plt.___()
Редагувати та запускати код