Perkecil dengan PCA
Termasuk bagian Pembelajaran Tanpa Pengawasan dalam perjalanan Machine Learning di Coddy. Pelajaran 44 dari 51.
64 piksel lebih banyak daripada yang dibutuhkan digit. PCA dapat menargetkan proporsi varians alih-alih jumlah komponen:
n_components=0.9 mempertahankan jumlah komponen paling sedikit yang mencakup 90%:
pca = PCA(n_components=0.9)
X_small = pca.fit_transform(X)
print(pca.n_components_, X_small.shape)Ini mencetak 21 (1797, 21): sepertiga dari jumlah angka, sebagian besar gambar.
Tidak ada penskalaan di sini: setiap piksel memiliki satu unit yang sama, dengan intensitas dari 0 hingga 16. Penskalaan akan memperbesar piksel tepi yang hampir kosong hingga menjadi fitur penuh.
Tantangan
SedangSaatnya mengecilkan hasil pemindaian. Program membaca porsi varians yang akan dipertahankan, seperti 0.8.
- Cetak jumlah komponen yang dibutuhkan PCA untuk mempertahankan porsi tersebut pada piksel mentah, lalu pada piksel yang diskalakan.
- Pertahankan versi yang membutuhkan lebih sedikit komponen: cetak namanya dan bentuk data yang telah direduksi.
Untuk 0.6:
Raw pixels: 7 components
Scaled pixels: 11 components
Keep: raw pixels, shape (1797, 7)Mulai dari sini, proyek mempertahankan 80% varians.
Coba sendiri
from sklearn.datasets import load_digits
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler
# Dari Look at the Digits: 1,797 hasil pemindaian dengan 64 piksel, nilai tinta dari 0 hingga 16
digits = load_digits()
X = digits.data
y = digits.target
# Proporsi varians yang dipertahankan, misalnya 0.8
share = float(input())
# 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