stdsquare²
🎓 Kelas
stdsquare / materi / slides / pertemuan-03
Tema
Japan
Arcade
Dark Retro
Font
‹ Daftar slide Pertemuan 3: Singular Value Decomposition dan Independent Component Analysis
Program Studi Bisnis Digital • FEB UNDIP

Pembelajaran Dalam dan Pembelajaran Mesin

Pertemuan 3 — Singular Value Decomposition dan Independent Component Analysis

Membedah matriks data menjadi komponen paling informatif (SVD), lalu memisahkan sinyal yang bercampur menjadi sumber aslinya (ICA) — dua alat inti reduksi dimensi setelah PCA.

RPS MINGGU 3 • 2×50 MENIT
Bagian 1 dari 3
Fondasi Singular Value Decomposition
Dari gagasan PCA minggu lalu menuju mesin pembedah matriks yang lebih umum: apa itu SVD, apa arti tiap komponennya, dan bagaimana menghitungnya dari nol.

Dari PCA ke SVD: Mengapa Perlu Alat Baru?

Minggu lalu Anda belajar PCA (Principal Component Analysis) — meringkas data menjadi sumbu-sumbu utama berdasarkan variance (sebaran) terbesar. SVD adalah mesin matematis yang menghasilkan PCA di baliknya, dan berlaku untuk matriks apa pun — bukan hanya matriks data yang persegi.

PCA (Minggu 2)
SUMBU VARIANCE
Butuh matriks kovarian persegi; hanya cocok untuk data numerik terpusat.
SVD (Hari Ini)
DEKOMPOSISI UMUM
Berlaku untuk matriks apa pun (persegi atau tidak) — dasar dari PCA, kompresi gambar, & sistem rekomendasi.
ICA (Hari Ini)
PISAH SUMBER
Bukan cari variance terbesar, tapi mencari sinyal yang paling independen (saling bebas).

Intuisi SVD: Putar → Regang → Putar

Secara geometris, mengalikan vektor (data satu titik) dengan matriks A itu setara dengan tiga gerakan berurutan. SVD membongkar gerakan itu menjadi tiga matriks terpisah:

A = U × Σ × VT
VTPutar (input)×ΣRegang (skala)×UPutar (output)=AMatriks data asli

Bacanya dari kanan ke kiri: data diputar dulu oleh VT, lalu diregangkan sepanjang sumbu baru oleh Σ, baru diputar lagi oleh U ke posisi akhirnya.

Coba Sendiri: Animasi Putar - Regang - Putar

Jalankan animasi bertahap dan amati bagaimana satu vektor diputar oleh V superscript T, diregangkan oleh Sigma, lalu diputar lagi oleh U.

Anatomi Tiga Komponen SVD

U — Vektor Singular Kiri
  • Arah-arah baru di ruang output (misalnya: "pola pengguna").
  • Kolom-kolomnya saling ortogonal (tegak lurus satu sama lain, tidak tumpang tindih informasi).
Σ — Nilai Singular
  • Angka non-negatif σ₁ ≥ σ₂ ≥ ... di diagonal.
  • Makin besar σ, makin besar "kekuatan"/informasi arah itu.
VT — Vektor Singular Kanan
  • Arah-arah baru di ruang input (misalnya: "pola produk").
  • Juga saling ortogonal satu sama lain.
Analogi: kalau A adalah matriks rating pengguna × produk Tokopedia, U menangkap "tipe pengguna", Σ menangkap seberapa dominan tiap tipe itu, dan VT menangkap "tipe produk" yang berkaitan.

Hitung dari Nol 1: Mencari Nilai Singular

Matriks contoh (sengaja kecil & simetris agar bisa dihitung tangan): A = [[3,1],[1,3]]

LangkahPerhitunganNilai
1. Matriks data A (2×2)A = [[3,1],[1,3]]simetris
2. Hitung ATA (A simetris → ATA = A²)3×3+1×1=10  |  3×1+1×3=6ATA=[[10,6],[6,10]]
3. Cari akar karakteristik (nilai eigen λ)(10−λ)² − 6² = 0 → λ²−20λ+64=0λ = 16 atau 4
4. Nilai singular σ = √λσ₁=√16  |  σ₂=√4σ₁=4 ; σ₂=2
HASIL
σ₁=4    σ₂=2

Coba Sendiri: Reduksi Rank dari Nilai Singular

Ubah matriks 2x2 sederhana, telusuri langkah menemukan nilai singularnya, lalu lihat bagaimana pemangkasan rank memengaruhi galat rekonstruksi.

Truncated SVD: Membuang Komponen yang Tak Penting

Karena σ₁ ≥ σ₂ ≥ ... terurut dari besar ke kecil, kita bisa memotong (truncate) dan hanya menyimpan k komponen pertama — inilah inti reduksi dimensi lewat SVD.

A ≈ Ak = σ₁u₁v₁T + σ₂u₂v₂T + ... + σkukvkT
Teorema Eckart-Young

Ak (rank-k) adalah pendekatan terbaik dari A di antara semua matriks rank-k lainnya — tidak ada cara lain memangkas dimensi dengan galat lebih kecil.

Mengapa Ini Penting untuk Bisnis Digital
  • Kompresi gambar produk e-commerce (ukuran file lebih kecil).
  • Sistem rekomendasi (menyimpan "selera" bukan tiap rating mentah).

Hitung dari Nol 2: Rekonstruksi Rank-1 & Galat

Lanjutan contoh A=[[3,1],[1,3]]. Vektor singular (karena simetris, sama dengan vektor eigen): v₁=(0.71, 0.71) untuk σ₁=4.

LangkahPerhitunganNilai
1. Ambil komponen terbesar saja (rank-1)A₁ = σ₁ × v₁ × v₁T4 × [[0.5,0.5],[0.5,0.5]]
2. Hitung hasil kali per elemen4 × 0.5 = 2 (tiap sel)A₁ = [[2,2],[2,2]]
3. Bandingkan dengan data asli AA − A₁ = [[3−2,1−2],[1−2,3−2]]Galat = [[1,−1],[−1,1]]
4. Ukur besar galat (norma Frobenius)√(1²+(−1)²+(−1)²+1²)‖Galat‖ = √4 = 2
COCOK DENGAN TEORI
‖Galat‖ = σ₂ = 2

SVD di Dunia Bisnis Digital Nyata

KOMPRESI GAMBAR
FOTO PRODUK
Gambar = matriks piksel. Simpan k komponen SVD terbesar → ukuran file jauh lebih kecil, kualitas visual nyaris sama untuk thumbnail e-commerce.
SISTEM REKOMENDASI
COLLABORATIVE FILTERING
Matriks rating pengguna×produk (mis. Netflix, Tokopedia) diringkas SVD untuk menebak rating yang belum diisi pengguna — dasar rekomendasi "produk untuk Anda".
Prinsip yang sama: matriks besar & jarang terisi (sparse) → SVD menangkap pola tersembunyi dengan jauh lebih sedikit angka.
Bagian 2 dari 3
Independent Component Analysis (ICA)
Ketika SVD/PCA mencari variance terbesar, ICA mencari sesuatu yang berbeda: sinyal-sinyal yang paling independen — berguna saat data adalah campuran beberapa sumber asli.

Motivasi ICA: Masalah "Pesta Koktail"

Dua orang bicara bersamaan di satu ruangan, direkam oleh dua mikrofon di posisi berbeda. Tiap mikrofon menangkap campuran kedua suara dengan proporsi berbeda. Bisakah kita memisahkan kembali suara asli hanya dari dua rekaman campuran itu?

Sumber 1Sumber 2Mikrofon AMikrofon BICA → Sumber 1 kembaliICA → Sumber 2 kembali
Setiap mikrofon = 1 kombinasi linear dari sumber asli. ICA mencari kombinasi kebalikan yang memisahkannya lagi.

Coba Sendiri: Pisahkan Suara di Pesta Koktail

Atur campuran dua sinyal sumber pada dua "mikrofon" virtual, lalu jalankan ICA dan amati bagaimana kedua sumber asli terpisah kembali.

ICA vs PCA: Beda Filosofi Dasar

PCA / SVD
  • Mencari arah dengan variance (sebaran) terbesar.
  • Komponen hanya dijamin saling ortogonal (tegak lurus secara statistik/tak berkorelasi).
  • Cocok untuk: kompresi, meringkas variasi data.
ICA
  • Mencari sinyal yang paling independen (jauh lebih ketat dari sekadar tak berkorelasi).
  • Memanfaatkan sifat non-Gaussian (bentuk sebaran data tidak seperti lonceng normal) untuk memisahkan sumber.
  • Cocok untuk: memisahkan sumber sinyal yang bercampur.
Jebakan umum: independen (ICA) ≠ tak berkorelasi (PCA). Dua variabel bisa tak berkorelasi tapi masih saling bergantung secara nonlinear — ICA menuntut syarat lebih kuat.

Model Pencampuran & Tujuan Unmixing

ICA mengasumsikan data yang teramati (X) adalah campuran linear dari sumber asli tersembunyi (S) lewat matriks pencampuran (A) yang tidak diketahui:

X = A × S

Tujuan ICA: temukan matriks unmixing (pembalik) W sedemikian sehingga:

Y = W × X ≈ S
X
TEROBSERVASI
Data mentah yang kita miliki (rekaman mikrofon, data transaksi).
A
TAK DIKETAHUI
Proporsi pencampuran; inilah yang harus "ditebak" ICA.
S
SUMBER ASLI
Sinyal independen yang ingin kita temukan kembali (Y ≈ S).

Walkthrough: Bagaimana ICA Bekerja di Balik Layar

Walkthrough A — Persiapan Data
  • 1. Centering: kurangi tiap sinyal dengan rata-ratanya (mean = 0).
  • 2. Whitening: transformasi agar sinyal tak-berkorelasi & variance seragam (memakai hasil SVD/PCA sebagai langkah awal!).
Walkthrough B — Pencarian Sumber
  • 3. Optimasi: cari arah W yang membuat hasil Y = WX se-non-Gaussian mungkin (mis. maksimalkan kurtosis).
  • 4. Iterasi: ulangi sampai konvergen → tiap komponen Y adalah satu sumber independen.
Intuisi kunci: menurut teorema limit pusat, campuran banyak sinyal cenderung menjadi lebih Gaussian (mirip lonceng). Jadi mencari arah paling tidak Gaussian = mencari sumber asli yang belum tercampur.

ICA di Dunia Bisnis Digital Nyata

DETEKSI ANOMALI/FRAUD
POLA TERSEMBUNYI
Data transaksi GoPay/BCA adalah campuran pola belanja normal & pola penipuan. ICA memisahkan komponen "penipuan" yang tersembunyi di balik jutaan transaksi wajar.
SINYAL & SENSOR
EEG / AUDIO
Riset neuromarketing (mengukur reaksi otak konsumen terhadap iklan) memakai ICA untuk memisahkan sinyal otak asli dari gangguan/noise perangkat.
Benang merah: kapan pun data Anda adalah campuran beberapa sumber tersembunyi, ICA adalah kandidat kuat — berbeda dengan SVD/PCA yang lebih cocok untuk sekadar meringkas variasi.
Bagian 3 dari 3
Sintesis, Perbandingan & Praktik
Menyatukan PCA, SVD, dan ICA dalam satu peta perbandingan, lalu menerapkannya pada kasus bisnis digital sungguhan.

Peta Perbandingan: PCA, SVD, ICA

AspekPCASVDICA
Tujuan utamaMaksimalkan varianceDekomposisi matriks umumMaksimalkan independensi
Syarat matriksPersegi (kovarian)Matriks apa punMatriks apa pun
Asumsi distribusiTidak ketatTidak ketatNon-Gaussian
Komponen dijaminOrtogonal (tak berkorelasi)Ortogonal (U, V)Independen (lebih ketat)
Contoh pemakaianRingkas fitur data numerikKompresi, rekomendasiPisah sinyal campuran, fraud
Ingat: PCA adalah hasil khusus dari SVD (untuk matriks kovarian). ICA adalah alat yang berbeda filosofi — tak selalu bisa saling menggantikan.

Studi Kasus: Data Pengguna E-Commerce

Sebuah tim data di startup e-commerce lokal punya dua kebutuhan berbeda. Tentukan metode mana (SVD atau ICA) yang lebih tepat untuk tiap kasus:

Kasus A
Membangun fitur "produk untuk Anda" dari matriks rating 5 juta pengguna × 200 ribu produk yang sebagian besar kosong.
Kasus B
Log transaksi harian tercampur antara pola belanja normal, pola promo/flash sale, dan pola bot/scalper yang tak diketahui jumlahnya.
Kasus A → SVD/truncated SVD (collaborative filtering, meringkas matriks besar & jarang). Kasus B → ICA (memisahkan sumber pola yang bercampur & tak diketahui proporsinya).

Latihan Kelas: Diskusi Kelompok (10 Menit)

Instruksi
  • Berkelompok 3-4 orang.
  • Pilih 1 skenario data digital yang Anda kenal (Shopee, GoPay, Instagram Ads, dsb).
  • Tentukan: apakah masalahnya lebih cocok didekati SVD atau ICA, dan jelaskan alasannya dalam 3 kalimat.
PANDUAN PERTANYAAN
1. Apakah tujuan Anda meringkas variasi, atau memisahkan sumber tersembunyi?
2. Apakah proporsi campurannya diketahui atau tidak?
3. Apakah data Anda menyerupai distribusi normal (Gaussian) atau tidak?
Siapkan 1 juru bicara per kelompok — akan diminta presentasi singkat 1 menit ke seluruh kelas.

Rangkuman & Menuju Pertemuan 4

Cheat Sheet Hari Ini
  • SVD: A = UΣVT — putar, regang, putar; dasar dari PCA & kompresi/rekomendasi.
  • Truncated SVD: simpan k komponen terbesar — galat terukur (Eckart-Young).
  • ICA: X=AS → cari W agar Y=WX≈S; manfaatkan sifat non-Gaussian.
  • Beda kunci: SVD/PCA = variance terbesar; ICA = independensi sumber.
MINGGU DEPAN — PERTEMUAN 4
FACTOR ANALYSIS & LDA
Kita lanjutkan keluarga teknik reduksi dimensi: Factor Analysis (menemukan faktor laten di balik data) dan Linear Discriminant Learning (reduksi dimensi yang memperhatikan label/kelas).
Tugas: baca modul singkat Factor Analysis (dibagikan di LMS) & kerjakan 2 soal hitung SVD 2×2 tambahan sebagai latihan mandiri sebelum pertemuan berikutnya.