02.6.2
Singular Value Decomposition (SVD)
Ringkasan
- SVD memfaktorkan matriks menjadi basis ortogonal dan nilai singular untuk aproksimasi low-rank.
- Memotong nilai singular kecil membantu mereduksi noise sambil mempertahankan sinyal utama.
- SVD adalah fondasi penting untuk PCA dan berbagai model faktor laten.
Intuisi #
SVD memecah data menjadi mode independen yang diurutkan berdasarkan kekuatan kontribusinya. Mode kuat memberi representasi ringkas dengan kehilangan informasi terkontrol.
Penjelasan Rinci #
1. Mengapa SVD? #
- Setiap matriks (A) dapat ditulis sebagai (U\Sigma V^\top); memotong (\Sigma) memberi aproksimasi low-rank terbaik.
- SVD stabil dan tersedia di SciPy/NumPy.
2. Definisi #
$$A = U \Sigma V^\top$$- (U): vektor singular kiri.
- (\Sigma): nilai singular terurut menurun.
- (V): vektor singular kanan.
3. Menyiapkan gambar #
| |
4. Hitung SVD #
| |
5. Kompresi low-rank #
| |
Beberapa nilai singular saja sudah cukup menjaga kualitas visual.
6. Melihat vektor singular #
| |
7. Tips #
- Pilih jumlah nilai singular berdasarkan fraksi energi (\sum_{i=1}^k \sigma_i / \sum_j \sigma_j).
- Menghilangkan nilai kecil = denoising.
- PCA dapat dihitung lewat SVD pada data yang sudah dicentangkan.
- Gunakan SVD terpotong/randomized untuk matriks besar.