Faktorisasi Matrik Non Negatif

Nasruddin MN

JURNAL PENELITIAN MIPA
Volume 2, Nomor 1 Juni 2008

FAKTORISASI MATRIK NON NEGATIF
Pasukat Sembiring
Departemen Matematika, FMIPA, USU Medan

Abstract
Non negative matrix factorization can be used for finding representations of non-negative data.
Therefore this factorization can be formulated as a minimization problem with bound constrain. The project
gradient method as one of the existing technique for bound-constrained optimization is used for the nonnegative factorization. The proposed methods exhibit strong optimization properties.
Keywords: Matrix factorization, Non negative matrix

PENDAHULUAN
1. Latar Belakang
Umumnya matriks dapat digunakan di
dalam kehidupan sehari-hari misalnya dalam bidang
industri, pertanian, teknik dan lain-lain. Matriks
yang digunakan dalam hal ini adalah matriks yang

berskala besar. Untuk memproses matriks berskala
besar memerlukan ketelitian yang sangat rumit dan
waktu yang lama. Untuk menghindari hal ini
diperlukan suatu cara menyederhanakan sehingga
lebih efisien.
Faktorisasi matriks non negatif (FMN)
berguna untuk memperoleh gambaran dari data
non-negatif. Dengan adanya n x m data matriks V
integer Vіј > 0 dan bilangan bulat positif r < min
(n,m), faktorisasi matriks non negatif memperoleh 2
(dua) matriks non negatif W Є Rr x n dan H Є Rr x m
seperti :
V≈WH
Jika setiap kolom V representatif pada suatu
objek,
faktorisasi
matriks
non
negatif
memperkirakannya dengan kombinasi linier dari r

basis dalam kolom W. Faktorisasi matriks non
negatif telah digunakan dalam banyak bidang.
Pendekatan konvensional untuk mendapatkan W dan
H dengan memperkecil perbedaan antara V dan W
H:

1 n m
2
f (W,H ) = ∑∑ (Vij − (WH ) ij )
2 i =1 j =1

Subject to Wia ≥ 0,Wbj ≥ 0, ∀i, a, b, j

Ketidaksamaan seperti variabel atas dan
bawah adalah mengacu kepada batas kendala. Dapat
dicatat bahwa:

∑∑ (V
n


m

ij

− (WH ) ij ) 2 = V −W H

i =1 j =1

2

F

Dimana ⋅ adalah norm Frobenius
Pendekatan yang paling populer adalah
algoritma multiplikatif. (Lee dan Seung, 2001). Hal
tersebut mudah untuk dilakukan dan sering
memberikan hasil yang baik. Setiap iterasi metode
ini, elemen W dan H dikalikan dengan faktor –
faktor tertentu. Sebagaimana elemen nol tidak
update, semua komponen dari W dan H adalah

positif untuk semua iterasi. Tipe strategi ini
berlawanan dengan metode tradisional optimisasi
batas kendala, yang biasanya membolehkan iterasi
untuk mendapatkan elemen tertentu. (Contohnya
dalam hal ini elemen nol).
Faktorisasi matriks non negatif dapat
digunakan pada pengendalian tingkat dimana
gambaran (representative) data menggunakan
matriks jarang. Dalam banyak penerapan dibutuhkan
pengendalian terhadap sifat-sifat dari data yang
representatif tersebut. Dalam hal ini harus
diminimumkan kesalahan sehingga data yang
diperoleh lebih representatif.
2. Tinjauan Pustaka
1. Metode yang ada dan sifat-sifat baru
Banyak metode untuk faktorisasi matriks
non negatif. Beberapa diskusi dalam membahas
batas kendala tidak dilakukan dengan tepat.
(Paatero, 1999). Dibutuhkan sifat-sifat tertentu


37

Pasukat Sembiring

JURNAL PENELITIAN MIPA
Volume 2, Nomor 1 Juni 2008

dalam masalah faktorisasi matriks non negatif.
Gradien fungsi (W, H ) terdiri dari dua bagian :

∇W f (W , H ) = (WH −V ) HT dan
∇H f (W , H ) =WT (WH −V )
Yang berturut-turut diturunkan secara
parsial kepada elemen dalam W dan H. Dari KarushKuhn-Tucker (KKT) kondisi optimal (W,H) adalah
satu titik tetap jika dan hanya jika :

Wia ≥ 0, H bj ≥ 0
∇W f (W , H ) ia ≥ 0, ∇H f (W , H ) bj ≥ 0
Wia .∇W f (W , H ) ia = 0, dan


H bj .∇H f (W , H ) bj ≥ 0, ∀i, a, b, j
Metode optimisasi untuk faktorisasi matriks
negatif
menghasilkan
satu
barisan

non

{W

k

,H k

}

k =1 dari

iterasi.


2. Metode Multiplikatif Update
Algoritma 1 Multiplikatif Update:
k +1

1. Permulaan Wia > 0, ∀i, a, b, j
2. Untuk k = 1,2, . . .

yang sesuai dengan kondisi KKT, mengindikasikan
bahwa pernyataan ini adalah salah karena tidak
menunjukkan konvergensi. Oleh karena itu, metode
multiplikatif update ini masih tidak memiliki sifat
optimisasi. (Gonzales dan Zhang, 2005).
Tujuan tulisan ini adalah mendeskripsikan
ide dasar dari faktorisasi matriks non negatif,
menunjukan bagaimana kaitannya dalam matriks
jarang dan mencari galat yang lebih kecil dalam
perkalian matriks V ≈ W H.
Faktorisasi Matriks Non Negatif
Pendekatan Faktorisasi Matriks Non Negatif

dapat diformulasikan sebagai berikut: Suatu cover
image C tertentu dengan ukuran m x m, dapat
memfaktorisasi C ke dalam dua matriks non
negative B dan H dengan ukuran masing – masing m
x r dan r x m dimana C = B x H dimana r ≤ m.
Matrik non negatif B mengandung vektor basis, F M
N dan matrik H berbobot non negatif, mempunyai
koefisien assosiasi (bobot non negatif). Untuk
mengukur kualitas dari faktorisasi pendekatan C = B
H, fungsi biaya antara C dan B H perlu untuk
mengoptimalisasikan subjek terhadap konstrains
non-negatif pada B dan H.
Hal ini dikerjakan dengan meminimumkan Z
informasi divergen yang diberikan oleh :

Z (C BH )= ∑(Cij Log
ij

Wiak +1 = Wiak
k +1

bj

(W k +1 )T V ) bj

yang akan
update.

H kj ← H kj

Algoritma ini adalah metode tipe titik
(Wk H k ( H k )T ) ia ≠ 0
tertentu
jika
dan

B jk ← B jk

(W

k +1 T


) W

k +1

k

H ) bj

Wiak +1 =Wiak > 0 ,
lalu (V ( H k )T ) ia = (Wk H k ( H k )T ) ia
menunjukkan bahwa ∇W f (Wk , H k ) ia = 0, yang
merupakan bagian dari kondisi KKT telah
menunjukan bahwa nilai fungsi tidak bertambah
setelah diperbaharui. (Lee dan Seung, 2001).

f (Wk +1 , H k ) ≤ f (Wk , H k ) dan
f (Wk +1 , H k +1 ) ≤ f (Wk +1 , H k )
Diklaim
k


k

bahwa

limit

dari

barisan

(W , H ) k =1 adalah titik yang tidak berubah. Titik
38

( BH ) ij

menghasilkan

, ∀b , j

H

=H

k
bj

(V ( H k ) T ) ia
, ∀i, a
(W k H k ( H k ) T ) ia

Cij

− Cij + ( BH ) ij )

hukum

multiplikatif

∑ i Bik Cik / ( BH ) ij

∑ i Bik
∑ j H kj Cij /( BH ) ij

∑ j Bkj

Dimana matriks B dan H adalah awal dari
matrik random non negatif dan update dikerjakan
secara alternatif sehingga setelah diupdate satu baris
H, perlu mengupdate kolom yang sesuai dengan B.
Dengan perkataan lain tidak harus mengupdate
matriks H pertama disertai oleh update dari matriks
B. Algoritma Faktorisasi Matriks Nonnegatif adalah
suatu algoritma optimisasi iterasi. Dimana
modifikasi pada tiap-tiap iterasi fungsi basis non
negatif dan pengkodean (Hkј) sampai konvergen.

Pasukat Sembiring

JURNAL PENELITIAN MIPA
Volume 2, Nomor 1 Juni 2008

dekomposisi
melalui
implementasi
multiplikatif sebagai berikut :
Cm x m

=

Bm x r

Hr x m

Poin-poin yang keluar yang berkaitan
dengan bayangan digital watermaking, syarat
tertutup terhadap kompresi bayangan.
Prinsip Componen Analisa (PCA) secara
tradisi adalah salah satu metode yang digunakan
secara umum untuk mereduksi analisa data
fisinalisasi dan analisa Chester. Hasil sebelumnya
memperlihatkan bahwa PCA tampaknya tidak sesuai
untuk mereduksi demensi dalam pernyataan gen
cluster selanjutnya.
Dewasa ini Faktorisasi Matriks Nonnegatif
telah diusulkan untuk analisa data non negatif.
Contoh : Non negativity membuat hasil dari
bayangan muka awal secara fisial dan kemampuan
menginterprestasikan secara rasional. Sekarang
Faktorisasi Matriks Nonnegatif mulai banyak
digunakan dalam analisa data. Dalam bidang bio
informatika, Faktorisasi Matriks Nonnegatif juga
telah merupakan suatu metode yang kuat untuk
analisa data microarray dan analisa urutan protein.
Bahkan Faktorisasi Matriks Nonnegatif digunakan
untuk gen cluster dan dalam algoritma yang
dimodifikasi yang didasarkan pada Faktorisasi
Matriks Nonnegatif, yang digunakan untuk
keperluan yang sama. Faktorisasi Matriks
Nonnegatif digunakan untuk menganalisa urutan
protein. Faktorisasi Matriks Nonnegatif hanya
digunakan secara langsung untuk mengcluster
sampel yang dinyatakan gen dengan dibandingkan
terhadap cluster secara hirarki dan pemetaan
organisasi sendiri, Faktorisasi Matriks Nonnegatif
digunakan untuk bioclustering dari data yang
dinyatakan gen. Disini memperkenalkan lebih tajam
ide dasar dari Faktorisasi Matriks Nonnegatif,
dengan memberikan suatu set data dalam bentuk
mxn
matrik χ ∈ R+ terdiri dari m sanpel dalam ruang n
dimensi , dimana masing-masing entri adalah non
negatif (contoh χіј ≥ 0 untuk semua і, ј), Faktorisasi
Matriks Nonnegatif adalah untuk menentukan suatu
pendekatan X BH, dimana B adalah suatu matrik n
x d dan H suatu matrik d x m dan keduanya B, H
adalah juga non negatif. Masing-masing kolom B
dapat dipandang secara basis vektor dan masingmasing kolom H dapat dipandang merupakan suatu
gambaran vektor baru yang sebanding dengan data
sesungguhnya. Lebih jelasnya pada dasarnya ada
terdapat 2 algoritma untuk menyempurnakan

bik ← bik

( XH T ) ik
( BHH T ) ik

( XH T ) ik
hik T
( B BH ) ik

bik ←

∑ j hkj

hkj ← hkj

update

dan
χ ij

∑ j hkj

( BH )ij

∑ j hik

∑ i bik

χ ij

( BH )ij

Hukum update multiplikatif dapat mengikuti
non negatif dengan initialization non negatif.
Dalam banyak jenis sistem linier yang
muncul dalam penerapan, elemen-elemen dari
matrik koefisien menunjukkan besaran tak negatif.
Ini berkaitan dengan pengetahuan tentang matriksmatriks yang demikian serta sifat-sifatnya.
Definisi suatu matriks A berorde n x n
dengan entri bilangan real disebut tak negatif jika αij
≥ 0 untuk setiap і dan ј, dan disebut positif jika αij
0 untuk setiap і dan ј.
Hal yang serupa , suatu vektor x = (x1,…,
T
xn ) disebut tak negatif jika setiap xі ≥ 0 dan
dikatakan positif jika xі > 0.
Aplikasi 1 : Model Terbuka
Misalnya ada sejumlah n industri yang
memproduksi sejumlah n produk yang berbeda.
Masing-masing industri memerlukan masukan
(input) produk dari industri lain dan kemungkinan
bahkan dari produk sendiri. Pada model terbuka,
diasumsikan bahwa ada kebutuhan (demand)
tambahan untuk masing-masing produk yang berasal
dari sektor luar. Masalahnya adalah menentukan
keluaran (output) dari masing-masing indutri yang
diperlukan sesuai dengan kebutuhan total (total
demand).
Dapat dilihat bahwa masalah ini dapat
dijelaskan dengan suatu sistem parsamaan linier dan
bahawa sistem tersebut mempunyai suatu
penyelesaian tak negative tunggal. Misalkan αij
melambangkan jumlah masukan dari industri ke-і
yang diperlukan untuk memproduksi satu unit
keluaran di industri ke-ј. satu unit masukan atau
keluaran produk tersebut dihargai sbesar satu dolar
n
akan dihabiskan sebanyak ∑ i =1 α ij dolar. Jelasnya,
memproduksi
produk
ke-ј
tidak
akan
n
menguntungkan kecuali ∑ i =1 α ij < 1 . Misalkan dі
melambangkan kebutuhan dari sektor terbuka untuk
39

Pasukat Sembiring

JURNAL PENELITIAN MIPA
Volume 2, Nomor 1 Juni 2008

produk ke-і. selanjutnya, misalkan xі adalah jumlah
keluaran dari produk ke-і yang diperlukan untuk
mencukupi kebutuhan total. Jika ke-ј ingin
mempunyai keluaran sebanyak xј, maka akan
diperlukan suatu masukan sebanyak αіјxј unit dari
industri ke-і. jadi kebutuhan total untuk produk ke-і
akan terjadi
αі1x1 + αі2x2 + · · · + αіnxn + dі
Dan karena dibutuhkan syarat
xi = αі1x1 + αі2x2 + · · · + αіnxn + dі
Untuk і = 1…n. hal ini menjadikan sistem
(1 – α11)x1 +( - α12)x2 + · · · + ( - α1n)xn + dі
·
·
·
(1 – α21)x1 +( - α22)x2 + · · · + ( - α2n)xn + dі
Yang dapat dituliskan dalam bentuk
(I – A)x = d
Elemen elemen dari A memiliki dua sifat penting:
(i) xіј ≥ 0 untuk masing masing і dan ј

∑α
n

(ii)

ij