Anda di halaman 1dari 29

Pengenalan Pola/

Pattern Recognition

Feature Selection
Team Teaching
Dasar Pengenalan Pola 2
1. The Design Cycle
2. Collect Data
3. Object to Dataset
4. Feature Selection Using PCA
– Menghitung Eigen Value
– Menghitung Eigen Vector
– Transformasi Data Fitur
– Menghitung Nilai Error
The Design Cycle
Apa sensor yang harus kita gunakan?
Collect data Bagaimana mengumpulkan data?
Bagaimana mengetahui fitur apa yang dipilih,
Choose features dan bagaimana kita memilihnya ...?
(Misal transformasi data fitur dengan PCA)
Apa classifier yang akan digunakan?
Choose model Apakah ada classifier yang terbaik ...?

Bagaimana kita melakukan proses Training?


Train system
Bagaimana mengevaluasi kinerja sistem?
Evaluate system Bagaimana memvalidasi hasil?
Berapakah tingkat kepercayaan hasil keputusan?
Collect Data
• Mengambil nilai data dari objek, Tipe data berdasarkan
penskalaan datanya :
– Data Kualitatif : Data yang bukan berupa angka,. Terbagi dua :
• Nominal : Data yang paling rendah dalam level pengukuran
data. Contoh : Jenis kelamin, Merk mobil, Nama tempat
• Ordinal : Ada tingkatan data. Contoh : Sangat setuju, Setuju,
kurang setuju, tidak setuju.
– Data Kuantitatif : Data berupa angka dalam arti sebenarnya.
Terbagi dua :
• Data Interval, Contoh : Interval temperatur ruang adalah sbb :
Cukup panas jika antara 50C-80 C, Panas jika antara 80 C-
110 C, Sangat panas jika antara 110 C-140 C.
• Data Rasio, Tingkat pengukuran paling ‘tinggi’ ; bersifat angka
dalam arti sesungguhnya. Contoh : Tinggi badan, Berat badan,
Usia.
Object to Dataset
• Ilustrasi transformasi data dari objek yang diamati :

– Text No Fitur 1 Fitur 2 . . Fitur N Kelas


– Citra 1
– Audio 2
– Video 3
– Etc .
.
M
Keterangan :
– M menyatakan banyak data, N menyatakan banyak fitur.
– Ektraksi fitur dilakukan jika data yang diamati masih berupa data mentah
(misalnya masih berupa kumpulan data awal).
– Fitur yang diambil adalah yang merupakan ciri khas yang membedakan
satu objek dengan objek lainnya.
Dimensionality Reduction
• Problem : kompleksitas komputasi
terhadap pengenalan pola pada ruang
dimensi yang tinggi.
• Solusi : mapping data ke dalam ruang
dimensi yang lebih rendah
Dimensionality Reduction
• Pengurangan dimensi data dapat dilakukan
dengan :
• Mengkombinasikan Fitur (secara linear maupun non-
linear)
• Memilih himpunan bagian dari fitur-fitur yang tersedia

• Kombinasi Linier merupakan pendekatan yang


menarik karena metode tersebut dilakukan
dengan perhitungan yang sederhana dan
terlacak secara analitis
Dimensionality Reduction
• Diberikan x ϵ RN, dengan tujuan untuk mencari
transformasi linier U sehingga y = UTx ; y ϵ RK
dimana K<N

 a1   b1 
   
a b2 
x  2
 ... 
   reduce dimensiona lity    y  
 ... 
K  N 
   
a
 N bk 
Dimensionality Reduction
• Pendekatan klasik untuk menghitung transformasi
linier yang optimal adalah Principal Components Analysis
(PCA): mencari proyeksi yang menyediakan informasi
sebanyak mungkin dalam data dengan pendekatan least-
squares.

• Tujuan PCA : mengurangi dimensi data dengan


mempertahankan sebanyak mungkin informasi
dari dataset yang asli.
Dimensionality Reduction
• Pendekatan vektor dengan menemukan basis
untuk memetakan vektor ke dalam ruang
dimensi yang lebih rendah
 a1 
– Representasi ruang Dimensi-Lebih Tinggi :  
 a2 
x  a1v1  a2 v2  ...  a N v N x
 ... 
v1 , v2 , ... , v N merupakan basis dari ruang dimensi N  
aN 

– Representasi ruang Dimensi-Lebih Rendah :  b1 


xˆ  b1u1  b2u2  ...  bK u K  
 b2 
u1 , u2 , ... , u K merupakan basis dari ruang dimensi K y
 ... 
 
bk 
Feature Selection Using PCA
• Pengurangan dimensi berdampak pada
hilangnya informasi
• PCA mempertahankan sebanyak mungkin
informasi, dengan cara meminimalkan error :
x  xˆ
• Bagaimana caranya menentukan sub-ruang
dimensi yang lebih rendah yang terbaik ?

• Eigenvektor yang terbaik dari matriks covarians x


 Eigenvalue yang terbesar
• Disebut sebagai Principal Components
Feature Selection Using PCA
• Misalkan x1, x2, ..., xM terdapat dalam vektor N x 1
1. Mencari Mean (nilai rata-rata) dari data
2. Menghitung Zero Mean (setiap nilai pada data sampel
dikurangi nilai rata-rata tiap parameter yang terkait)
3. Membangun matriks Covarians dengan mengkalikan
matriks Zero Mean dengan transposenya
4. Menghitung eigenvalue
5. Menghitung matriks eigenvektor
6. Mengurangi dimensi N sebesar K dimensi yang
didapatkan dari eigenvalue yang terbesar sampai
sampai yang terkecil sebanyak K pertama
Feature Selection Using PCA
• Langkah 1: Mencari Mean Global (nilai rata-rata)
M

x1  x2  ...  xM x i
x  i 1
M M
• Langkah 2: Menghitung Zero Mean

 i  xi  x
Feature Selection Using PCA
• Langkah 3: Membangun matriks Covarians
dengan mengalikan matriks Zero Mean dengan
transposenya
– Populasi
M
1
C
N
 i i
 T

i 1

– Sampel

1 M T
C 
N  1 i 1
i i
Feature Selection Using PCA
• Langkah 4 : Menghitung eigenvalue dari C
CU U det( I  C )  0
I CU  I U  1 0 .... 0   c1,1 c1,2 .... c1,n 
   
CU  I U 0
....
2
....
....
....
0 
.... 

c 2,1
 ....
c 2,2
....
....
....
c 2,n 
.... 
   
( I  C ) U  0 0 0 .... N   c m,1 c m,2 .... c m,n 

1  c1,1  c1,2 ....  c1,n 


 
  c 2,1 2  c 2,2 ....  c 2,n 
 .... .... .... .... 
 
  c m,1
  c m,2 .... N  c m,n 

• Hasil : 1 , 2 , 3 , ... , N
Feature Selection Using PCA
• Langkah 5 : Menghitung eigenvektor
– Dari eigenvalue yang dihitung pada langkah 4,
disubstitusikan ke rumus :
( I  C ) U  0

– Selesaikan dengan menemukan nilai U

• Hasil : u1 , u2 , u3 , ... , u N
Feature Selection Using PCA
• Langkah 6 : Mengurangi dimensi sebesar K
dimensi
– Pilihlah fitur sebanyak K berdasarkan nilai eigenvalue
terbesar

K
xˆ  x  b u
i 1
i i where K  N

– x̂ merupakan hasil transformasi dari x


Feature Selection Using PCA
• PCA memproyeksikan data sepanjang suatu arah
dimana data tersebut memiliki varians yang tinggi
• Arah tersebut ditentukan oleh eigenvectors dari matriks
covariance yang memiliki nilai eigenvalues terbesar.
• Nilai besaran dari eigenvalues merupakan nilai varians
data sepanjang arah dari eigenvector (garis lurus merah
dan biru)
Feature Selection Using PCA
• Pemilihan nilai K menggunakan kriteria berikut :
K


i 1
i

N
 Threshold (e.g., 0.9 or 0.95 )

i 1
i

• Pada contoh kasus diatas, dapat dikatakan bahwa kita


“menyediakan” 90% atau 95% informasi dari data yang
tersedia
• Jika K=N, maka kita “menyediakan” 100% dari data yang
tersedia
Feature Selection Using PCA
• Vektor asal x dapat dibangun kembali menggunakan
komponen prinsipal-nya
K K
xˆ  x  b u
i 1
i i or xˆ  b u
i 1
i i x

• PCA meminimalkan error dari rekonstruksi prinsipal


tersebut:
e  x  xˆ

• Hal itu dapat ditunjukkan bahwa error sama dengan :


N
1
e  i
2 i K 1
PCA : Menghitung Eigen Value
• Misal diketahui dataset :
No Fitur 1 Fitur 2 Kelas  P11 P12 
D=
1 P11 P12 Mobil P P22 
2 P21 P22 Rumah  21

• Mean global 
x1 
P11  P21
Banyak _ Data
  x2 
P12  P22
• Zero Mean Banyak _ Data

 x1 x 2   P11  x1 P12  x 2  4 2
   D    , misal    
 x1 x 2   P21  x1 P22  x 2    1  5
• Kovarian T
1  4 2   4 2  1 17 13  17 13 
C    
N  1  1  5  1  5 2  1 13 29 13 29
     
PCA : Menghitung Eigen Value
• Eigen Value :
detI  C   0 1, 2 
b b 2  4ac
2a
 1 0 17 13  
det  *    13 29   0  ( 46)  46 2  4 *1* 324
  0 1    1, 2 
2 *1
  17  13  46  2116  1296
det 
 13   29 0 1, 2 
2
 
  17 (  29)   13 * 13  0 1, 2 
46  820
  17 (  29)  169  0 2
46  28.63564
   29   17(  29)  169  0 1   8.68218
2
2  29  17  493  169  0 2 
46  28.63564
 37.31782
2
2  46  324  0
8.68218 0 
Matrik Eigen Value  
 0 37.31782
PCA : Menghitung Eigen Vector
• Eigen Vector :
8.68218
Matrik Eigen Value  
0  (c11   )u1  c12u2  0
 0 37.31782
c21u1  (c22   )u2  0
CU  U
17 13 
 c11 c12   u1   u1  Matrik kovarian : C   
   13 29 
c   
 21 c22  u2  u2  Vektor eigen didapatkan dengan
1 0  c11 c12   u1  1 0  u1  persamaan :
0 1  c       
   21 c22  u2  0 1 u2  (17   )u1  13u2  0
 c11 c12   u1  1 0  u1  13u1  (29   )u2  0
c       
 21 c22  u2  0 1 u2  Untuk λ1 = 8.68218 maka :

c11   c12   u1  8.3178u1  13u 2  0


 c    0
 21 c22    u2  13u1  20.3178u 2  0
PCA : Menghitung Eigen Vector
• Eigen Vector :
Untuk λ1 = 8.68218 maka : Untuk λ2 = 37.31782 maka :
8.3178u1  13u 2  0 - 20.3178u1  13u 2  0
13u1  20.3178u 2  0 13u1 - 8.3178u 2  0
Solusi non trivial sistem persamaan Solusi non trivial sistem persamaan
ini adalah : ini adalah :
8.3178u1  13u2  20.3178u1  13u2
 13u2 13u2
u1  u1 
8.3178 20.3178
8.3178a 13b
Misalkan u1  a maka u 2   Misalkan u 2  b maka u1 
13 20.3178
Jadi vektor eigen untuk λ1 = 8.68218 Jadi vektor eigen untuk λ2 = 37.31782
adalah : adalah :  13b 
 a 
U   8.3178a  U   20.3178 
 13  
 b 

dimana a adalah bilangan sembarang dimana b adalah bilangan sembarang
yang tidak nol. yang tidak nol.
PCA : Menghitung Eigen Vector
• Eigen Vector :
Vektor eigen untuk λ1 = 8.68218 Jadi Vektor eigen globalnya adalah :
adalah :
 a 
U  8.3178a  - 0.8423 0.5389
  U 
13
0.5389 0 . 8423
misalkan a = -0.8423 maka  
- 0.8423 
U  
 0.5389 

Vektor eigen untuk λ2 = 37.31782


adalah :  13b 
U   20.3178 
 b 
 
misalkan b = 0.8423 maka .

0.5389
U  
0.8423
PCA : Transformasi x
• Tentukan nilai K dengan 75%
informasi data yang kita gunakan
• Dari nilai K yang ditentukan akan
diperoleh fitur yang dijadikan sebagai
proses pengenalan pola
• λ1 + λ2 = 8,68218+ 37,31782 = 46
• 75%*46 = 34,5
• Jumlahkan semua nilai lamda dimulai dari
yang paling besar, hingga lebih sedikit dari
34,5.
• Vektor eigen yang sesuai dengan nilai
eigen terpilih ini yang digunakan di proses
transformasi nilai fitur
• Dalam kasus ini, yang terpilih hanya λ2
Selesai

Anda mungkin juga menyukai