Сколько кластеров зерна?
В видеоуроке вы узнали, как выбрать подходящее число кластеров для набора данных с помощью графика инерции k-means. Вам предоставлен массив samples, содержащий измерения образцов зерна (такие как площадь, периметр, длина и ряд других характеристик). Какое число кластеров будет оптимальным в данном случае?
KMeans и PyPlot (plt) уже импортированы для вас.
Этот набор данных получен из репозитория машинного обучения UCI.
Это упражнение является частью курса
Обучение без учителя на Python
Инструкции к упражнению
- Для каждого из заданных значений
kвыполните следующие шаги: - Создайте экземпляр
KMeansс именемmodelи числом кластеровk. - Обучите модель на данных о зерне
samples. - Добавьте значение атрибута
inertia_объектаmodelв списокinertias. - Код для построения графика
ksиinertiasуже написан за вас — нажмите «Отправить ответ», чтобы увидеть график!
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
ks = range(1, 6)
inertias = []
for k in ks:
# Create a KMeans instance with k clusters: model
____
# Fit model to samples
____
# Append the inertia to the list of inertias
____
# Plot ks vs inertias
plt.plot(ks, inertias, '-o')
plt.xlabel('number of clusters, k')
plt.ylabel('inertia')
plt.xticks(ks)
plt.show()