Model Aglomeratif
Termasuk bagian Pembelajaran Tanpa Pengawasan dalam perjalanan Machine Learning di Coddy. Pelajaran 17 dari 51.
Mobil memenuhi dua tempat parkir, dengan deretan mobil di sepanjang jalan di antaranya. Dua cara untuk menggabungkannya menjadi 2 klaster:
scikit-learn melakukan penggabungan. Tentukan kapan harus berhenti dengan n_clusters:
from sklearn.cluster import AgglomerativeClustering
model = AgglomerativeClustering(n_clusters=2, linkage="ward")
labels = model.fit_predict(X)linkage menentukan seberapa jauh jarak antara dua kelompok:
"ward", nilai default: menjaga kelompok tetap rapat"complete": jarak pasangan terjauh"average": rata-rata jarak semua pasangan"single": jarak pasangan terdekat
Single mengikuti rantai: di sini jalan menelan kedua tempat parkir. Ward membentuk kelompok yang bulat dan seimbang.
Tantangan
SedangStroberi liar tumbuh di tiga petak, ditambah beberapa tanaman di sepanjang jalan setapak. Linkage mana yang menemukan petak-petak tersebut? plants menyimpan posisi tanaman.
- Untuk setiap linkage di
linkages, kelompokkan tanaman menjadi 3 grup. - Cetak ukuran grup sebagai list, dari yang terbesar terlebih dahulu.
- Jika grup terbesar menampung lebih dari setengah jumlah tanaman, tambahkan
chained.
Untuk padang rumput lain:
ward: [40, 38, 31]
complete: [41, 37, 31]
average: [41, 37, 31]
single: [86, 22, 1] chainedCoba sendiri
import numpy as np
import pandas as pd
from sklearn.cluster import AgglomerativeClustering
# Lokasi tumbuhnya 109 tanaman stroberi liar di padang rumput (meter): tiga kelompok dan satu jalur
rng = np.random.default_rng(4)
plants = np.round(np.concatenate([
rng.normal([2, 3], 0.8, size=(40, 2)),
rng.normal([9, 4], 1.0, size=(35, 2)),
rng.normal([6, 10], 0.9, size=(25, 2)),
np.column_stack([np.linspace(3, 8, 9), np.linspace(3.2, 4, 9)]) + rng.normal(0, 0.15, size=(9, 2)),
]), 2)
linkages = ["ward", "complete", "average", "single"]
# Tulis kodemu di bawah ini
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pembelajaran Tanpa Pengawasan
1Menemukan Kelompok
Belajar Tanpa LabelMengukur KemiripanK-Means secara ManualK-Means dengan scikit-learnRangkuman: Anggota Gym4Pengelompokan Hierarkis
Penggabungan Langkah demi LangkahModel AglomeratifDendrogramRingkasan: Ras Anjing7PCA dalam Praktik
Melihat 64 DimensiKomponen sebagai PolaKompres dan RekonstruksiPCA Sebelum ModelRangkuman: Pemindai Wajah10Proyek: Penjelajah Digit
Amati DigitnyaPerkecil dengan PCAKelompokkan DigitBeri Nama pada KelompokTemukan yang Tidak BiasaLatihan sendiri: Compiler Python online