Вычисление и визуализация суммы квадратов ошибок
Теперь вы вычислите сумму квадратов ошибок для разного числа кластеров — от 1 до 10.
Вы будете использовать нормализованные данные RFMT, созданные в предыдущем упражнении. Они хранятся в переменной datamart_rfmt_normalized. Модуль KMeans из библиотеки scikit-learn уже импортирован. Также инициализирован пустой словарь для хранения суммы квадратов ошибок: sse = {}.
При желании изучите данные в консоли.
Это упражнение является частью курса
Сегментация клиентов в Python
Инструкции к упражнению
- Инициализируйте KMeans с
kкластерами и случайным состоянием 1, затем обучите модель на нормализованном наборе данных. - Присвойте сумму квадратов расстояний элементу с ключом
kв словареsse. - Добавьте заголовок графика «The Elbow Method», подпись оси X — «k» и подпись оси Y — «SSE».
- Постройте график значений SSE для каждого
k, хранящегося в качестве ключа в словаре.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Fit KMeans and calculate SSE for each k between 1 and 10
for k in range(1, 11):
# Initialize KMeans with k clusters and fit it
kmeans = ____(____=____, ____=1 ).____(datamart_rfmt_normalized)
# Assign sum of squared distances to k element of the sse dictionary
____[____] = kmeans.____
# Add the plot title, x and y axis labels
plt.____('The Elbow Method')
plt.____('____')
plt.____('____')
# Plot SSE values for each k stored as keys in the dictionary
sns.____(x=list(sse.____()), y=list(sse.____()))
plt.show()