• Tidak ada hasil yang ditemukan

Algoritma Update Multiplicative

Dalam dokumen FAKTORISASI MATRIK NON NEGATIF SKALA BESAR (Halaman 26-33)

BAB 2 TINJAUAN PUSTAKA

2.3 Algoritma Update Multiplicative

Algoritma update multiplicative dengan rata-rata kuadrat kesalahan fungsi objektif (dengan menggunakan notasi operator susunan MATLAB) diberikan

se-15

bagai algoritma update multiplicative.

Faktorisasi Matriks Non Negatif. (Lee dan Seung, 2001) W = rad(m, k); % awalnya W sebagai matrik acak padat H = rand(k, n); % awalnya H sebagai matrik acak padat Untuk i = 1: maxiter

(M U )H = H. ∗ (WTA)./(WTW H + 10−9); (M U )W = W. ∗ (AHT )./(W HHT+ 10−9);

10−9 dalam hukum update ditambahkan untuk mencegah pembagian dari

nol. Menggunakan gradient dan sifat-sifat kontinu untuk mengklaim bahwa algo-ritma convergen terhadap suatu minimum lokal yang kemudian memperlihatkan tidak benar. Pembuktian memperlihatkan sifat-sifat kontinu yang tidak sesuai penjelasannya terhadap titik pelana. Untuk memahami kenapa salah satu yang harus diperhatikan dua dasar observasi yang meliputi kondisi optimal Karush-Khun-Tucker.

Pertama : Matriks awal W dan H positif dan kemudian matrik ini posi-tif melalui iterasi. Pernyataan ini mudah diverivikasi dengan membandingkan terhadap bentuk hukum multiplicative update.

Kedua : Jika urutan iterasi (W, H) konvergen terhadap (W, H) dan W > 0 dan H > 0, (∂f /∂W )(W, H) = 0 dan (∂f /∂H)(W, H) = 0, point kedua ini dapat diverifikasi terhadap H dengan menggunakan bentuk bahan tambahan dari hukum update.

H = H + [H./WTW H]. ∗ [WT(A − W H)]

Hij > 0 kemudian cari Hij

Hij

[WTW H]ij

([WTA]ij− [WTW H]ij) = 0

Karena Hij > 0 mengimplikasikan [WTA]ij = (WTW Hij)ij yang mengim-plikasikan [∂f /∂H]ij = 0.

Bila mana dua point ini digabung untuk mencapai kondisi optimum. Hal ini hanya berlaku untuk titik limit (W, H) yang tidak mempunyai suatu elemen sama dengan nol. (Bertsekas, 1999).

W ≥ 0 H ≥ 0 (W H − A)HT ≥ 0 WT(W H − A) ≥ 0 (W H − A)HT.W = 0 dan WT(W H − A).H = 0

Disamping kenyataan ini sebagai contoh Hij > 0 untuk semua iterasi, elemen-elemen ini dapat konvergen (menyebar) terhadap nilai limit dari 0 dengan (∂f /∂H)ij ≥ 0 terhadap (W, H) bahkan Hij = 0. Jadi mungkin bahwa Hij = 0 dimana satu harus memberikan kondisi kelambanan dan mencari yang sebanding sehingga (∂f /∂H)(W, H) ≥ 0 dan ini tidak muncul bagaimana menggunakan hukum update multiplicative. Jadi didalam kesimpulan hanya dapat membuat pernyataan berikut mengenai konvergensi dari algoritma multiplicative. (Lee dan Seung, 2001). Bila algoritma konvergen terhadap titik limit di dalam interior dari daerah fisibel titik ini adalah suatu titik tetap. Titik stasionari ini dapat atau tidak dapat berupa suatu lokasi minimum. Bila titik limit berada pada batas dari

17

daerah fisibel maka titik tetapnya tidak dapat ditentukan.

Dalam kaitannya dengan statusnya sebagai algoritma Faktorisasi Matriks Nonnegatif pertama yang sudah dikenal, algoritma update multiplicative meru-pakan suatu basis terhadap algoritma yang lebih baru sebagai pembanding telah berulang bahwa algoritma ini konvergen. Hal ini memerlukan banyak iterasi dibandingkan dengan alternatif penurunan gradient dan algoritma Least Square yang dibicarakan dibawah ini. Kerja per iterasi adalah tinggi karena

masing-masing iterasi memerlukan kerja O(mnk). Untuk mencegah beberapa hal ini

periset telah mengusulkan modifikasi terhadap algoritma tersebut. Sebagai con-toh membentuk suatu modifikasi tetapi kejelekannya masih mempunyai problem konvergensi yang sama. (Gonzalez dan Zhang, 2005).

Algoritma yang dimodifikasi adalah menjamin terhadap konvergen suatu al-goritma titik stationer. Disamping itu, untuk menurunkan hukum update yang tidak sama terhadap kepentingan-kepentingan dari elemen-elemen di dalam pen-dekatannya. (Dhillon dan Sra, 2005).

2.3.1 Algoritma Descent Gradient

Algoritma Faktorisasi Matriks Nonnegatif dari kelas kedua didasarkan pada metode penurunan gradient. Algoritma dari kelas ini berulang-ulang menggu-nakan hukum update dari bentuk yang diperlihatkan dibawah ini. Algoritma penurunan gradient dasar untuk Faktorisasi Matriks Nonnegatif.

W = rand(m, k); % initialize W H = rand(k, n); % initialize H

Untuk i = 1: maxiter H = H − εH∂H∂f W = W − εW∂W∂f

Setiap langkah ukuran parameter εH dan εW berubah tergantung pada algoritma turunan parsialnya. Algoritma ini selalu mengambil suatu langkah di-dalam arah gradient negatif dari penurunan yang paling tajam. Usaha-usaha umumnya di dalam pemilihan nilai untuk ukuran εH, εW . Beberapa algoritma pada awalnya diatur nilai-nilai tahap ukurannya terhadap 1. Kemudian dika-likan dengan 12 pada masing-masing urutan iterasi. Ini adalah sederhana tetapi tidak ideal karena tidak ada hambatan yang menyebabkan elemen dari matrik update W dan H dari pendekatannya menjadi negatif. Penggunaan yang prak-tis kebanyakan algoritma penurunan gradien adalah suatu langkah proyeksi yang sederhana. (Shahnaz et al., 2006; Hoyer, 2004; Chu et al., 2004; Pauce et al., 2006). Jadi setelah tiap hukum update, matrik update diproyeksikan terhadap elemen-elemen negatif mendekati nilai-nilai non negatif 0.

Tanpa pemilihan yang hati-hati untuk εH dan εW hanya sedikit yang da-pat dikatakan mengenai konfergensi penurunan gradient. Selanjutnya, penamba-han proyeksi non negatif membuat analisa lebih sulit. Metode penurunan gradi-ent yang menggunakan suatu hukum geometri sederhana untuk ukuran langkah seperti kekuatan dari fraksi atau prosedur melalui suatu fraksi pada masing-masing iterasi sering menghasilkan suatu faktorisasi yang jarang digunakan. Dalam hal ini metode sangat sensitif terhadap W dan H. Dengan suatu inisialisasi acak metode ini konvergen terhadap suatu faktorisasi yang tidak berapa jauh dari matriks awal. Metode penurunan gradient seperti algoritma Seung dan Lee, penggunaan matriks yang baik untuk stepwise menghasilkan suatu faktorisasi

19

yang lebih baik, tetapi seperti disebutkan diatas, sangat lambat terhadap konver-gen. Seperti didiskusikan dalam matriks shepherd adalah suatu teknik penurunan gradient yang diusulkan merupakan konvergensi dengan menggunakan pemilihan pada stepwise. Keburukan teori konvergensi untuk mendukung pendekatan ini adalah kurang tepat. (Chu et al, 2004).

2.3.2 Algoritma Least Square

Kelas terakhir dari algoritma Faktorisasi Matriks Nonnegatif adalah kelas Algoritma Least Square. Di dalam algoritma ini langkah kuadrat terkecil diberi oleh langkah kuadrad terkecil yang lain di dalam suatu penampilan alternatif, jadi menaikkan terhadap nama Algoritma Least Square. Algoritma Least Square pertama sekali digunakan oleh Paatero, 1999. Algoritma Least Square mengeks-ploitasi kenyataan bahwa problem optimasi tidak konvek terhadap W dan H, maka hal ini konvek dalam W dan H, jadi akan memberikan suatu matriks dan matriks yang lain dapat ditemui dengan suatu perhitungan kuadrat terkecil yang sederhana.

Suatu elemen algoritma least square mengikuti:

Basik Algoritma Least Square untuk Faktorisasi Matriks Nonnegatif W = rand(m, k); % initialize W as random dense matrik

untuk i = 1: maxiter

(LS) Solver untuk H pada matrik equation WTW H = WTA

(NONNEG) Set all negative elements H to 0

(LS) Solve for W in matrix equation HHTWT = HAT

(NONNEG) Set all negative elements W to 0

me-mastikan non negativity, tahap proyeksi yang mengatur semua elemen negatif yang dihasilkan dari kuadrat terkecil hingga 0. Teknik sederhana ini yang

mem-punyai keuntungan tambahan. Sudah barang tentu bantuan matriks jarang.

Terlebih-lebih hal tersebut memberikan iterasi beberapa fleksibility tambahan tidak tersedia di dalam algoritma yang lain, terutama sekali terhadap kelas multi-plicative update. Selalu yang dapat ditemukan dari multimulti-plicative adalah bahwa salah satu elemen dalam W dan H menjadi nol dan harus berada pada 0. Hal ini menetapkan elemen 0 membatasi, berarti bahwa algoritma memulai menu-run tajam terhadap titik tertentu bahkan hal ini merupakan titik tertentu yang jarang dan harus kontinu dan vein. Algoritma Least Square adalah lebih fleksibel menuruti proses iterasi untuk keluar dari bagian yang jarang. Tergantung pada implementasi algoritma least square dapat lebih cepat. Implementasi memperli-hatkan pemahaman yang signifikan diatas kurang bekerja dibandingkan dengan algoritma Faktorisasi Matriks Nonnegatif. Perbaikan-perbaikan terhadap dasar algoritma least square muncul. (Paatero, 1999, Langville et al., 2006).

Dalam dokumen FAKTORISASI MATRIK NON NEGATIF SKALA BESAR (Halaman 26-33)

Dokumen terkait