`eu khiˆe’n ho.c, T.22, S.3 (2006), 267—274 Ta.p ch´ı Tin ho.c v` a Diˆ ’ RO ˆ T MO ˆ NG THUA ˆ T TOAN ´ PHAN ˆ CU MO M k -MEANS ˜ N HO.P ˜ LIE ˆ U HO ˆ CHO DU ˜ˆ N THI XUAN ` ˆ HUA ˆ´N1 , NGUYE ˆ HU.O.NG2 HOANG XUAN Khoa Cˆong nghˆe thˆong tin, Tru.`o.ng Da.i ho.c Cˆong nghˆe Tru.` o.ng Da.i ho.c Dˆan lˆa.p Ha’i Ph`ong Abstract Partitioning a large set of data objects into homogenous clusters is an important problem in data mining Among clustering algorithms, k -means is well known by its advantages and especially efficient for clustering very large data sets This algorithm and its prime variants are only to cluster numerical data sets There are some extensions to this algorithm for clustering data sets with mixed numeric and categorical values but they omit some its advantages In this paper, we present an improvement of k -means algorithm for clustering a data set with mixed numeric and categorical values This algorithm conserves advantages of k -means algorithm ´t Phˆan mˆo.t tˆa.p d˜ T´ om t˘ a u liˆe.u th`anh c´ac tˆa.p cho c´ac dˆo´i tu.o ng c` ung tˆa.p tu.o.ng tu nhau, c`on c´ac dˆo´i tu o ng thuˆo.c c´ac tˆa.p kh´ac th`ı kh´ac theo mˆo.t ngh˜ıa n`ao d´o l`a mˆo.t u d˜ u liˆe.u Trong sˆo´ c´ac thuˆa.t to´an phˆan cu.m, thuˆa.t b`ai to´an quan tro.ng kh´am ph´a tri th´ u.c t` `eu u u diˆe’m v`a du o c su’ du.ng rˆo.ng r˜ai, d˘a.c biˆe.t phˆan cu.m c´ac tˆa.p d˜ u liˆe.u l´o.n to´an k -mean c´o nhiˆ `au thuˆa.t to´an n`ay v`a c´ac biˆe´n thˆe’ cu’a n´o chı’ l`am viˆe.c v´o i d˜ Ban dˆ u liˆe.u sˆo´, sau d´o d˜a c´o mˆo.t sˆo´ mo’ u liˆe.u di.nh danh ho˘a.c d˜ u liˆe.u hˆo˜n ho p, nhu.ng c´ac thuˆa.t to´an n`ay l`am mˆa´t di rˆo.ng dˆe’ l`am viˆe.c v´o.i d˜ `e xuˆa´t mˆo.t thuˆa.t to´an mo’ mˆo.t sˆo´ u u diˆe’m cu’a thuˆa.t to´an nguyˆen thu’y Trong b`ai n`ay, ch´ ung tˆoi dˆ u liˆe.u hˆo˜n ho p go.i l`a thuˆa.t to´an k -tˆam Thuˆa.t to´an n`ay kˆe´ th` u.a rˆo.ng cu’a thuˆa.t to´an k -means cho d˜ c´ac u u diˆe’m cu’a thuˆa.t to´an k -means ˆ U ´.I THIE GIO `au tiˆen MacQueen dˆ `e xuˆa´t n˘am 1967 [10] v`a c´ac biˆe´n Thuˆa.t to´an phˆan cu.m k -means dˆ ’ ’ u liˆe.u gˆo`m thˆe cua n´o [1] nhu PAM; CLARA; CLARANS) l`a c´ac thuˆa.t to´an phˆan hoa.ch tˆa.p d˜ N dˆo´i tu o ng c´o n thuˆo.c t´ınh sˆo´ th`anh k (k < N ) tˆa.p C´ac thuˆa.t to´an loa.i n`ay do.n gia’n, dˆo ph´ u.c ta.p thˆa´p v`a dˆ˜e song song h´oa (xem [2]) nˆen du.o c su’ du.ng rˆo.ng r˜ai (xem [3, 4, 9]) Dˆe’ mo’ rˆo.ng pha.m vi su’ du.ng cho c´ac d˜ u liˆe.u c´o thuˆo.c t´ınh hˆo˜n ho p ho˘a.c di.nh danh, `e xuˆa´t c´ac thuˆa.t to´an k-prototypes v`a k -modes Trong c´ac thuˆa.t to´an n`ay, kh´ai [6, 7] Huang dˆ niˆe.m mode du.o c d` ung l`am tˆam cho c´ac tˆa.p gi´a tri cu’a thuˆo.c t´ınh di.nh danh v`a mˆetric r`o.i ra.c du o c d` ung dˆe’ x´ac di.nh dˆo tu.o.ng tu c´ac thuˆo.c t´ınh n`ay Nhu.o c diˆe’m cu’a c´ac thuˆa.t `an phˆan cu.m la.i, c´o mˆo.t dˆo´i tu.o ng thay dˆo’i cu.m th`ı pha’i t´ınh la.i mode to´an n`ay l`a o’ mˆo˜i lˆ (hay l`a tˆam) cu’a c´ac cu.m liˆen quan nˆen ph´ u.c ta.p ho.n k-means v`a khˆong song song h´oa du.o c Mˆo.t c´ach tiˆe´p cˆa.n kh´ac l`a m˜a ho´a c´ac thuˆo.c t´ınh di.nh danh b˘`a ng sˆo´ dˆe’ phˆan cu.m nhu l`a d˜ u liˆe.u sˆo´ nhu.ng kh´o gia’i th´ıch kˆe´t qua’ v`a kh´o ´ap du.ng v´o.i c´ac tˆa.p d˜ u liˆe.u l´o.n (xem [8]) v`ı sˆo´ gi´a tri sˆo´ dˆe’ m˜a h´oa s˜e l´o n ˜ ` ˆ HUA ˆ´N, NGUYE ˆ N THI XUAN ˆ HU.O.NG HOANG XUAN 268 Trong b`ai n`ay, ch´ ung tˆoi tr`ınh b`ay mˆo.t mo’ rˆo.ng thuˆa.t to´an k-means cho d˜ u liˆe.u hˆo˜n ho p ung dˆe’ x´ac di.nh tˆam cho tˆa.p d˜ u v`a go.i l`a thuˆa.t to´an k-tˆam, d´o kh´ai niˆe.m mode du o c d` liˆe.u c´o thuˆo.c t´ınh di.nh danh V´o.i mˆetric v`a h`am mu.c tiˆeu du.o c x´et, thuˆa.t to´an hˆo.i tu t´o.i diˆe’m cu c tiˆe’u di.a phu.o.ng cu’a h`am mu.c tiˆeu `an kˆe´t luˆa.n, b`ai b´ao du.o c tr`ınh b`ay nhu sau Mu.c 2, gi´o.i thiˆe.u t´om t˘a´t thuˆa.t Ngo`ai phˆ `e liˆen to´an k-means, kh´ai niˆe.m mode v`a c´ac thuˆa.t to´an k -modes, k-prototypes c` ung c´ac vˆa´n dˆ quan Mu.c tr`ınh b`ay thuˆa.t to´an k-tˆam ˆ T TOAN ´ k -MEANS VA ` CAC ´ VA ˆ´N D`E ˆ LIEN ˆ QUAN THUA `an n`ay ch´ Trong phˆ ung tˆoi gi´o.i thiˆe.u thuˆa.t to´an k -means (MacQueen, 1967), kh´ai niˆe.m `e liˆen quan mode v`a c´ach d` ung n´o c´ac thuˆa.t to´an k -modes, k -prototypes v`a nh˜ u.ng vˆa´n dˆ Kh´ai niˆe.m mode Mu.c 2.2.1 l`a mo’ rˆo.ng tru c tiˆe´p kh´ai niˆe.m n`ay cu’a Huang [6, 7] 2.1 Thuˆ a.t to´ an k -means Thuˆa.t to´an k-means d` ung dˆe’ chia tˆa.p d˜ u liˆe.u gˆo`m N dˆo´i tu.o ng khˆong gian sˆo´ ho.c n N `eu D = xi chiˆ th`anh k (k < N ) tˆa.p Trˆen Rn cho.n mˆo.t mˆetric d, ch˘a’ng ha.n mˆetric i=1 Euclide, thuˆa.t to´an thu c hiˆe.n nhu sau `an tu’ ban dˆ `au {z j }kj=1 cu’a D l`am tˆam c´ac cu.m Bu.´o.c Cho.n k phˆ Bu ´o c V´o i mˆo˜i i = 1, , N , xˆe´p xi v`ao cu.m Cj nˆe´u: d(xi , z j ) = min{d(xi , z q ) | q k} (1) ` ’ ’ Bu ´o c T´ınh trung b`ınh cˆo.ng cua c´ac phˆan cua c´ac cu.m Cj l`am tˆam m´o i: zj ← x, (2) |cj | x∈Cj `an tu’ cu’a cu.m Cj d´o |Cj | l`a sˆo´ phˆ Bu.´o.c Tro’ la.i Bu.´o.c dˆe’ xˆe´p la.i c´ac cu.m nh`o tˆam m´o.i cho t´o.i c´ac cu.m khˆong thay dˆo’i ung l`a mˆetric Euclide th`ı thuˆa.t to´an hˆo.i tu t´o.i cu c tiˆe’u di.a phu.o.ng cu’a Nˆe´u mˆetric du.o c d` k h`am: E= d2 (x, z j ) (3) j=1 x∈Cj 2.2 Mode cu’a tˆ a.p d˜ u liˆ e.u v` a c´ ac thuˆ a.t to´ an k -modes, k -prototypes u liˆe.u c´o ch´ u.a thuˆo.c t´ınh di.nh danh, Dˆe’ mo’ rˆo.ng thuˆa.t to´an cho c´ac dˆo´i tu.o ng d˜ i N i `an [6, 7] Huang x´et D l`a tˆa.p N dˆo´i tu o ng {x }i=1 d´o x = (xi1 , , xim , xim+1 , , xin ) l`a phˆ i ˜ ` ’ ’ tu cua quan hˆe r trˆen v´o i lu o c dˆo quan hˆe R = {A1 , , An } v`a xj ∈ Dom(Aj ) v´o i mˆoi j m l`a c´ac gi´a tri thu c c`on v´o.i m + j n l`a c´ac gi´a tri di.nh danh C´ac thuˆa.t to´an [6, 7] u liˆe.u c´o thuˆo.c t´ınh di.nh danh v`a d` du a trˆen kh´ai niˆe.m mode cu’a tˆa.p d˜ ung mode thay cho tro.ng tˆam cu’a mˆo˜i tˆa.p d˜ u liˆe.u 2.2.1 Mode cu’a tˆa.p d˜ u liˆe.u ung tˆoi du.a thˆem di.nh Dˆe’ tiˆe.n tr`ınh b`ay di.nh ngh˜ıa mode cu’a tˆa.p d˜ u liˆe.u hˆo˜n ho p, ch´ ngh˜ıa j -mode v´o.i j n Di.nh ngh˜ıa Gia’ su’ C l`a tˆa.p cu’a tˆa.p d˜ u liˆe.u hˆo˜n ho p D ˆ T TOAN ´ PHAN ˆ CU ˜ LIE ˆ U HO ˆ˜ N HO THUA M k-MEANS CHO DU P 269 `an suˆa´t nhiˆ `eu nhˆa´t i) V´o.i mo.i j n, j -mode cu’a C (k´y kiˆe.u l`a j -mode(C )) l`a gi´a tri c´o tˆ thuˆo.c t´ınh Aj cu’a C nˆe´u Aj l`a thuˆo.c t´ınh di.nh danh v`a l`a trung b`ınh cˆo.ng cu’a c´ac gi´a tri `eu thuˆo.c t´ınh Aj cu’a C Aj l`a thuˆo.c t´ınh sˆo´ Nˆe´u Aj l`a thuˆo.c t´ınh di.nh danh v`a c´o nhiˆ `an suˆa´t nhu C th`ı j -mode(C ) c´o thˆe’ khˆong nhˆa´t v`a ta cho.n gi´a tri gi´a tri c´o tˆ n`ao c˜ ung du.o c `an tu’ z = (z1 , , zn ) d´o ii) Mode cu’a tˆa.p ho p C k´ y hiˆe.u l`a mode(C ) l`a phˆ zj = j-mode(C), ∀j n (4) u liˆeu l`a thuˆo.c t´ınh di.nh danh th`ı mode cu’a tˆa.p C o’ dˆay tr` Ch´ u ´y Khi d˜ u liˆe.u tˆa.p d˜ ung v´o.i di.nh ngh˜ıa mode cu’a Huang [6, 7] 2.2.2 C´ac thuˆa.t to´an k-modes v`a k -prototypes Thuˆa.t to´an k-modes d` ung dˆe’ phˆan cu.m d˜ u liˆe.u di.nh danh c`on thuˆa.t to´an k-prototypes u liˆe.u hˆo˜n ho p gˆo`m thuˆo.c t´ınh sˆo´ v`a thuˆo.c t´ınh di.nh danh Trong l`a mo’ rˆo.ng cu’a n´o cho d˜ thuˆa.t to´an k -prototypes, Huang c˜ u.c (8) Mu.c 3.1 ung d` ung mˆetric x´ac di.nh bo’.i cˆong th´ `eu b˘`a ng c`on c´ac tro.ng sˆo´ ρi cu’a thuˆo.c t´ınh di.nh nhu.ng c´ac tro.ng sˆo´ ρi cu’a thuˆo.c t´ınh sˆo´ dˆ `eu b˘`a ng danh dˆ u liˆe.u hˆo˜n ho p, thuˆa.t to´an k-prototypes tu.o.ng tu Sau di.nh ngh˜ıa mˆetric cho c´ac d˜ `an t´ınh la.i tˆam (mode) cu’a k -means chı’ kh´ac mˆo.t diˆe’m l`a phˆan bˆo´ D v`ao c´ac cu.m th`ı cˆ c´ac cu.m liˆen quan c´o mˆo.t dˆo´i tu.o ng dˆo’i cu.m Thuˆa.t to´an thu c hiˆe.n nhu sau `an tu’ {z j }kj=1 cu’a D l`am mode cho c´ac cu.m {Cj }kj=1 tu.o.ng Bu.´o.c Cho.n ngˆa˜u nhiˆen k phˆ `an mode cu’a n´o nhˆa´t u ´ ng v`a phˆan mˆo˜i dˆo´i tu o ng x ∈ D v`ao cu.m Cj m`a x gˆ Bu ´o c T´ınh la.i mode cho mˆo˜i cu.m `an tu’ x chuyˆe’n t` u Bu.´o.c L˘a.p la.i viˆe.c t´ai phˆan bˆo´ D theo c´ac mode m´o.i nhu.ng c´o phˆ i j cu.m C sang cu.m C th`ı t´ınh la.i tˆam cu’a c´ac cu.m n`ay Thu’ tu.c l˘a.p du.o c thu c hiˆe.n dˆe´n c´ac cu.m khˆong dˆo’i Nhˆa.n x´et So v´o.i thuˆa.t to´an k-means, viˆe.c t´ınh la.i mode cu’a c´ac cu.m liˆen quan mˆo˜i c´o `an l˘a.p v`a thay dˆo’i cu.m cu’a mˆo.t dˆo´i tu.o ng Bu.´o.c l`am sˆo´ ph´ep t´ınh t˘ang mˆo˜i lˆ khˆong song song h´oa thuˆa.t to´an du o c M˘a.t kh´ac, thu c tˆe´ c´o nh˜ u ng thuˆo.c t´ınh nhˆa.n ’ gi´a tri di.nh danh c´o th´ ung mˆetric r`o i ra.c dˆe x´ac di.nh mˆetric khˆong pha’n ´anh du.o c u tu th`ı d` ba’n chˆa´t d˜ u liˆe.u ˆ ˆ T TOAN ´ k -TAM THUA Trong mu.c n`ay ta x´et tˆa.p d˜ u liˆe.u hˆo˜n ho p D nhu mu.c tru.´o.c nhu.ng phˆan biˆe.t c´ac thuˆo.c t´ınh l`am ba loa.i: di.nh danh, th´ u tu v`a sˆo´ Sau xˆay du ng mˆetric dˆe’ x´ac di.nh m´ u.c tu.o.ng dˆo`ng, ch´ ung tˆoi mˆo ta’ thuˆa.t to´an v`a ch´ u.ng minh t´ınh hˆo.i tu cu’a n´o ˜n ho p e.u hˆ o 3.1 Mˆ etric trˆ en d˜ u liˆ `en gi´a tri cu’a c´ac thuˆo.c t´ınh Aj c´o thˆe’ l`a tˆa.p sˆo´ thu c, di.nh Trong lu.o c dˆo` quan hˆe R, miˆ danh hay l`a tˆa.p c´o th´ u tu `en gi´a tri cu’a thuˆo.c t´ınh Aj Ta c´o c´ac kh´ai niˆe.m Di.nh ngh˜ıa 3.1.1 Gia’ su’ Dom(Aj ) l`a miˆ sau: i) Thuˆo.c t´ınh di.nh danh: Aj du.o c go.i l`a thuˆo.c t´ınh di.nh danh nˆe´u Dom(Aj ) l`a tˆa.p khˆong c´o u.c l`a ∀a, b ∈ Dom(Aj ), ho˘a.c a = b hay a = b th´ u tu , t´ 270 ˜ ` ˆ HUA ˆ´N, NGUYE ˆ N THI XUAN ˆ HU.O.NG HOANG XUAN ii) Thuˆo.c t´ınh sˆo´: Aj du.o c go.i l`a thuˆo.c t´ınh sˆo´ nˆe´u Dom(Aj ) l`a tˆa.p sˆo´ thu c iii) Thuˆo.c t´ınh th´ u tu : Nˆe´u Dom(Aj ) l`a tˆa.p h˜ u tu ho`an to`an th`ı Aj du.o c go.i u.u ha.n v`a c´o th´ l`a thuˆo.c t´ınh c´o th´ u tu (ch˘a’ng ha.n: Dom(Aj )={khˆong dau, ho.i dau, dau v`a rˆa´t dau} `en gi´a tri Dom(Aj ) cu’a mˆo.t thuˆo.c t´ınh Aj ta x´ac di.nh c´ac khoa’ng c´ach nhu sau Trˆen miˆ Di.nh ngh˜ıa 3.1.2 ∀x, y ∈ Dom(Aj ) ta c´o h`am dj (x, y) x´ac di.nh bo’.i: (5) i) Nˆe´u Aj l`a thuˆo.c t´ınh sˆo´ th`ı dj (x, y) = |x − y| k k u tu v`a DOM(Aj ) = {aj , , aj } v´o i aj < aj < < aj , ta lˆa´y ii) Nˆe´u Aj l`a thuˆo.c t´ınh th´ mˆo.t h`am n diˆe.u fj : DOM(Aj ) → [0, 1] cho fj (a1j ) = 0; fj (akj ) = (H`am n`ay c´o thˆe’ i−1 l`a: fj (aij ) = ) Khi d´o, k−1 (6) dj (x, y) = |fj (x) − fj (y)| iii) Nˆe´u Aj l`a thuˆo.c t´ınh di.nh danh th`ı dj (x, y) = x = y, x = y (7) Bˆay gi`o ta di.nh ngh˜ıa khoa’ng c´ach trˆen D u liˆe.u hˆo˜n Di.nh ngh˜ıa 3.1.3 Gia’ su’ x = (x1 , , xn ) v`a y = (y1 , , yn ) l`a hai dˆo´i tu.o.ng d˜ ho p trˆen D, khoa’ng c´ach d(x, y) du.o c t´ınh bo’.i cˆong th´ u.c: n ρ2j d2j (xj , yj ), d(x, y) = (8) j=1 d´o c´ac dj (xj , yj ) du.o c t´ınh theo c´ac cˆong th´ u.c (5) - (7) v`a ρj l`a c´ac tro.ng sˆo´ du.o.ng cho bo’ i c´ac chuyˆen gia t` uy y ´ theo m´ u c quan tro.ng cu’a thuˆo.c t´ınh `en gi´a tri l`a doa.n V´o i di.nh ngh˜ıa trˆen, ta luˆon c´o thˆe’ xem c´ac thuˆo.c t´ınh th´ u tu c´o miˆ [0, 1] dˆe’ t`ım mode (c´ac gi´a tri trˆen thuˆo.c t´ınh n`ay cu’a D l`a tˆa.p con) v`a n´o c˜ ung du.o c xem `am lˆa˜n Di.nh l´ l`a thuˆo.c t´ınh sˆo´ khˆong xa’y nhˆ y sau l`a mo’ rˆo.ng t´ınh chˆa´t cu’a mode [6, 7] `en gi´a tri cu’a c´ac thuˆo.c t´ınh c´o th´ Di.nh l´ y Nˆe´u xem miˆ u tu l`a doa.n [0, 1] v`a mode cu’ a tˆa.p ho p x´ac di.nh nhu d˜a n´oi o’ trˆen th`ı v´o i mo.i tˆa.p d˜ u liˆe.u hˆo˜n ho p C , mode(C ) cu c tiˆe’u h`am: d2 (y, x), E(x) = (9) y∈C `an tu’ cu’a quan hˆe r trˆen lu.o c dˆo` quan hˆe R = {A1 , , An } d´o x l`a phˆ Ch´ u.ng minh V´o.i mˆo˜i dˆo´i tu.o ng z ∈ r, ta c´o thˆe’ xem z = (z n , z c ) d´o z n l`a h`ınh chiˆe´u cu’a z lˆen quan hˆe c´o c´ac thuˆo.c t´ınh sˆo´, z c l`a h`ınh chiˆe´u cu’a z lˆen quan hˆe c´o thuˆo.c t´ınh di.nh danh v`a k´ y hiˆe.u t´ıch vˆo hu.´o.ng xn , yn = ρj xnj yjn (tˆo’ng lˆa´y trˆen c´ac thuˆo.c t´ınh cu’a j xn ); chuˆa’n xn v`a khoa’ng c´ach d(xn , y n ) l`a chuˆa’n Euclide v`a khoa’ng c´ach sinh bo’.i t´ıch vˆo hu.´o.ng n`ay; d(xc , y c ) x´ac di.nh bo’.i (8) v´o.i tˆo’ng lˆa´y trˆen c´ac thuˆo.c t´ınh (di.nh danh) cu’a ch´ ung Khi d´o E(x) c´o thˆe’ biˆe’u diˆ˜en nhu sau xn − y n E(x) = y∈C M˘a.t kh´ac, k´ y hiˆe.u M l`a mode(C) ta c´o: d2 (y c , xc ) + y∈C (10) ˆ T TOAN ´ PHAN ˆ CU ˜ LIE ˆ U HO ˆ˜ N HO THUA M k-MEANS CHO DU P y n − xn j∈C yn − M n = + M n − xn 271 + y n − M n , M n − xn y∈C yn − M n = + |C| M n − xn y∈C = y n − M n , M n − xn +2 y∈C yn − M n + |C| M n − xn , y∈C `an tu’ cu’a C Tˆo’ng n`ay da.t cu c tiˆe’u x l`a mode(C) T´ınh cu u tiˆe’u d´o |C| l`a sˆo´ phˆ cu’a tˆo’ng th´ u hai (10) suy t` u di.nh ngh˜ıa cu’a mode v`a Di.nh l´ uy ´ y [7] v´o.i ch´ r˘a` ng Aj l`a thuˆo.c t´ınh di.nh danh th`ı t` u (7) ta c´o (11) d2j (x, y) = dj (x, y) u.ng minh Di.nh l´ y du.o c ch´ Bˆay gi`o ta mˆo ta’ thuˆa.t to´an 3.2 Thuˆ a.t to´ an k -tˆ am `en gi´a tri cu’a thuˆo.c t´ınh c´o th´ u tu v`a x´ac di.nh khoa’ng c´ach Sau d˜a mo’ rˆo.ng c´ac miˆ gi˜ u a c´ac dˆo´i tu o ng nhu d˜a nˆeu, thuˆa.t to´an k-tˆam phˆan cu.m d˜ u liˆe.u hˆo˜n ho p thu c hiˆe.n nhu thuˆa.t to´an k-means o’ Mu.c Thuˆa.t to´an du.o c d˘a.c ta’ nhu sau Proceduce k -tˆ am Begin Cho.n c´ac tro.ng sˆo´ ρj , c´ac h`am fj , x´ac di.nh k `au z j kj=1 cu’a D l`am tˆam c´ac cu.m `an tu’ ban dˆ Cho.n k phˆ `an tˆam nhˆa´t; Xˆe´p mˆo˜i x ∈ D v`ao cu.m Cj m`a n´o gˆ For j = 1, , k zj ← mode(Cj ); Repeat Phˆan bˆo´ la.i cu.m theo tˆam m´o.i // nhu k-means; Cˆa.p nhˆa.t la.i tˆam cho c´ac cu.m // nh`o t´ınh mode Until c´ac cu.m khˆong dˆo’i; X´ac di.nh c´ac cu.m; End `e t´ınh hˆo.i tu cu’a thuˆa.t to´an Dˆ˜e d`ang nhˆa.n du.o c di.nh l´ y sau vˆ Di.nh l´ y Thuˆa.t to´an k-tˆam kˆe´t th´ uc sau mˆo.t sˆo´ h˜ u.u ha.n bu.´o.c l˘a.p Ch´ u.ng minh X´et h`am: k d2 (x, z j ) E= (12) j=1 x∈cj Ta s˜e ch´ u.ng minh h`am E do.n diˆe.u gia’m qu´a tr`ınh l˘a.p t´ai phˆan bˆo´ la.i v`a v`ı sˆo´ c´ach uc sau h˜ u.u ha.n bu.´o.c Thu c vˆa.y, qu´a tr`ınh phˆan cu.m l`a h˜ u.u ha.n nˆen thuˆa.t to´an kˆe´t th´ n`ay E chı’ thay dˆo’i hai tru `o ng ho p: u cu.m Ci sang cu.m Cj m`a chu.a t´ınh la.i tˆam 1) Khi c´o dˆo´i tu.o ng x dˆo’i t` `an l˘a.p 2) Sau cˆa.p nhˆa.t tˆam o’ mˆo˜i lˆ u nhˆa´t Ta dˆ˜e d`ang thˆa´y r˘`a ng mˆo˜i c´o dˆo´i tu.o ng x dˆo’i t` Tru `o ng ho p th´ u cu.m Ci sang i cu.m Cj m`a chu a t´ınh la.i tˆam th`ı E s˜e gia’m mˆo.t lu o ng l`a ∆E = d (x, z ) − d2 (x, z j ) ˜ ` ˆ HUA ˆ´N, NGUYE ˆ N THI XUAN ˆ HU.O.NG HOANG XUAN 272 `an l˘a.p, gia’ su’ tru.´o.c phˆan bˆo´ la.i, tˆa.p d˜ u hai Trong mˆo˜i lˆ u liˆe.u gˆo`m Tru.`o.ng ho p th´ k K cu.m C1 , , Ck v´o i tˆam z , , z tu o ng u ´ ng v`a sau t´ai phˆan bˆo´ la.i th`anh c´ac cu.m k ´ ng C , , C k v´o i tˆam z , , z tu o ng u Khi d´o dˆ˜e thˆa´y k k d2 (x, z j ) j=1 x∈cj k d2 (x, z j ) j=1 x∈cj d2 (x, z j ), j=1 x∈cj viˆe.c cˆa.p nhˆa.t la.i tˆam m´o.i s˜e l`am gia’m E theo Di.nh l´ ´.ng y ´ap du.ng cho c´ac cu.m C i tu.o.ng u c´ac sˆo´ ha.ng o’ vˆe´ pha’i `an l˘a.p nˆen u liˆe.u dˆo’i cu.m lˆ Nhu vˆa.y E gia’m thu c su c´o ´ıt nhˆa´t mˆo.t dˆo´i tu.o ng d˜ khˆong c´o c´ach phˆan cu.m n`ao bi l˘a.p la.i M˘a.t kh´ac sˆo´ c´ach phˆan cu.m l`a h˜ u u ha.n nˆen thuˆa.t ’ to´an phai d` u ng sau h˜ u u ha.n bu ´o c Nhˆ a.n x´ et 1) Khi thuˆa.t to´an kˆe´t th´ uc, c´ac dˆo´i tu.o ng tˆam c´o thˆe’ khˆong thuˆo.c tˆa.p D ta d˜a chuyˆe’n `an tu’ da.i diˆe.n cho mˆo˜i cu.m, ta lˆa´y phˆ `an tu’ dˆo’i gi´a tri cu’a thuˆo.c t´ınh c´o th´ u tu Dˆe’ t`ım phˆ `an v´o.i tˆam cu’a n´o nhˆa´t thuˆo.c cu.m gˆ y c˜ ung cho thˆa´y thuˆa.t to´an hˆo.i tu t´o.i diˆe’m cu c tiˆe’u di.a phu.o.ng 2) Ch´ u ng minh Di.nh l´ cu’a E m`a khˆong da’m ba’o l`a cu c tiˆe’u to`an cu.c Dˆe’ t˘ang hiˆe.u qua’ cu’a thuˆa.t to´an ta c´o thˆe’ `en (xem [11]) ho˘a.c kho’.i ta.o tˆam ban dˆ `au b˘a` ng phu.o.ng ph´ap kˆe´t ho p v´o.i thuˆa.t to´an di truyˆ chuyˆen gia u.ng u.u diˆe’m sau 3) So v´o.i c´ac thuˆa.t to´an k-prototypes thuˆa.t to´an n`ay c´o nh˜ • Nhu thuˆa.t to´an k-means, thuˆa.t to´an k-tˆam song song h´oa du.o c nhu [2] `an m`a khˆong `an l˘a.p dˆe’ phˆan bˆo´ la.i c´ac cu.m, ta chı’ pha’i cˆa.p nhˆa.t tˆam mˆo.t lˆ • Trong mˆo˜i lˆ u liˆe.u dˆo’i cu.m nhu k-prototypes pha’i cˆa.p nhˆa.t mˆo˜i c´o dˆo´i tu o ng d˜ u tu v`a thuˆo.c t´ınh di.nh danh, chˆa´t lu.o ng cu.m tˆo´t ho.n • Nh`o phˆan biˆe.t thuˆo.c t´ınh th´ • Trong thu c tˆe´, mˆo˜i thuˆo.c t´ınh sˆo´ c´o thˆe’ d` ung nh˜ u.ng do.n vi kh´ac nˆen viˆe.c cho.n `an thiˆe´t tro.ng sˆo´ ρi cho mˆo˜i thuˆo.c t´ınh th´ u i l`a cˆ ´.NG DU V´I DU U NG Ch´ ung tˆoi thu’ nghiˆe.m phˆan cu.m cho hˆo˜ tro chˆa’n tri y ho.c o’ bˆe.nh viˆe.n Viˆe.t- Tiˆe.p Ha’i ph`ong Du.´o.i dˆay l`a b`ai to´an tˆo’ng qu´at v`a kˆe´t qua’ u ´.ng du.ng Ph´at biˆe’u b`ai to´an tˆo’ng qu´at C´o mˆo.t tˆa.p hˆo` so bˆe.nh ´an cu’a mˆo.t loa.i bˆe.nh v´o.i c´ac triˆe.u ch´ u.ng (bao gˆo`m ca’ kˆe´t qua’ x´et nghiˆe.m sinh h´oa) d˜a biˆe´t Theo kinh nghiˆe.m chuyˆen gia c´o thˆe’ chia l`am k nh´om c´o d˘a.c `an dˆe’ theo d˜oi v`a diˆ `eu tri theo c´ac chˆe´ dˆo cu thˆe’ v`a cˆ `an t`ım bˆe.nh ´an diˆe’n h`ınh diˆe’m gˆ ’ ˜ ´ cho mˆoi nh´om C´ac triˆe.u ch´ u ng c´o thˆe l`a gi´a tri sˆo (nhiˆe.t dˆo., chı’ sˆo´ sinh h´oa ) ho˘a.c s˘a´p th´ u tu (khˆong dau, ho i dau, dau, rˆa´t dau ) hay l`a thuˆo.c t´ınh di.nh danh nhu cha’y m´au tiˆeu `eu th`ı phˆan nh´om cu’a thˆ `ay thuˆo´c h´oa, rˆo´i loa.n tiˆeu h´oa, v`ang da Khi sˆo´ triˆe.u ch´ u.ng nhiˆ `eu tru `o ng ho p khˆong thˆo´ng nhˆa´t Vˆ `e ba’n chˆa´t th`ı dˆay l`a b`ai to´an c´o g˘a.p kh´o kh˘an v`a nhiˆ gi´am s´at v´o.i kˆe´t luˆa.n m`o., vˆa.y n´o vˆa˜n c´o thˆe’ xem l`a b`ai to´an phˆan cu.m nu’.a gi´am s´at nh`o biˆe´t tru.´o.c mˆo.t sˆo´ tru.`o.ng ho p thuˆo.c loa.i bˆe.nh (cu.m n`ao) dˆe’ l`am tˆam kho’.i ta.o Sau phˆan cu.m, tˆam cu.m s˜e d` ung l`am tru.`o.ng ho p diˆe’n h`ınh dˆe’ x´ac di.nh c´ac tru.`o.ng ho p m´o.i ˆ T TOAN ´ PHAN ˆ CU ˜ LIE ˆ U HO ˆ˜ N HO THUA M k-MEANS CHO DU P 273 Tru.`o.ng ho p cu thˆe’ Ch´ ung tˆoi thu’ nghiˆe.m cho loa.i bˆe.nh xo gan theo 42 hˆo` so bˆe.nh ´an o’ bˆe.nh viˆe.n Mˆo˜i bˆe.nh nhˆan c´o thˆe’ c´o 34 triˆe.u ch´ u.ng d´o c´o 12 thuˆo.c t´ınh di.nh danh nhu.: pha’n u ´.ng Rivaltas, nhu mˆo gan, ph` u, cha’y m´au tiˆeu h´oa , c´o thuˆo.c t´ınh c´o th´ u tu : suy nhu o c co thˆe’ (m´ u.c dˆo.), dau su.`o.n pha’i (m´ u.c dˆo.), bu.ng chu.´o.ng (m´ u.c dˆo.), v`a 14 chı’ sˆo´ sinh h´oa `eu nˆen phˆan loa.i kh´ac: dˆo d˜an TMC, ty’ lˆe prothrombin, almubin V`ı sˆo´ thuˆo.c t´ınh kh´a nhiˆ ’ m´ u c dˆo bˆe.nh kh´o, d˘a.c biˆe.t dˆo´i v´o i c´ac bˆe.nh nhˆan tiˆe´n triˆen o’ m´ u c dˆo trung gian th`ı kˆe´t qua’ phˆan loa.i cu’a c´ac b´ac s˜ı khˆong giˆo´ng Hiˆe.n c´ac b´ac s˜ı c´o hai c´ach chia nh´om bˆe.nh `eu tri.: dˆe’ nghiˆen c´ u.u diˆ C´ach Chia th`anh nh´om bˆe.nh: Xo gan c`on b` u u Xo gan giai doa.n mˆa´t b` u dˆa˜n dˆe´n k - gan Xo gan mˆa´t b` C´ach Chia th`anh nh´om bˆe.nh: `em t`ang Xo gan tiˆ u (m´ u.c thˆa´p, kh´ac nh´om o’ trˆen) Xo gan giai doa.n mˆa´t b` u dˆa˜n dˆe´n hˆo.i ch´ Xo gan mˆa´t b` u.ng cha’y m´au tiˆeu h´oa t˘ang ´ap lu c t´ınh ma.ch cu’.a u dˆa˜n dˆe´n k - gan Xo gan mˆa´t b` Kˆe´t qua’ thu c nghiˆe.m Thu c nghiˆe.m cho thˆa´y viˆe.c cho.n c´ac tro.ng sˆo´ ρi cˆong th´ u.c rˆa´t quan tro.ng, a’nh hu.o’.ng dˆe´n chˆa´t lu.o ng phˆan cu.m Viˆe.c x´ac di.nh n`ay phu thuˆo.c v`ao kiˆe’u gi´a tri cu’a thuˆo.c t´ınh (sˆo´ thu c, nguyˆen v`a di.nh danh), do.n vi v`a m´ u.c quan tro.ng cu’a thuˆo.c t´ınh dˆe’ x´ac ung phu.o.ng ph´ap k-prototypes di.nh c´ac loa.i bˆe.nh (du.o c x´ac di.nh bo’.i c´ac chuyˆen gia) Nˆe´u d` th`ı kˆe´t qua’ khˆong chˆa´p nhˆa.n du o c `au tiˆen c˜ ung tˆoi ung a’nh hu.o’.ng dˆe´n chˆa´t lu.o ng phˆan cu.m nˆen ch´ Viˆe.c cho.n tˆam cu.m dˆ ’ ’ ’ kho i ta.o c´ac tˆam cu.m theo go i y ´ cua chuyˆen gia (phu o ng ph´ap nu a gi´am s´at) Kˆe´t qua’ phˆan cu.m thu c nghiˆe.m theo hai c´ach chia nh´om trˆen so v´o.i c´ach d´anh gi´a cu’a c´ac b´ac s˜ı o’ hˆo` so du.o c gi´o.i thiˆe.u o’ Ba’ng v`a Ba’ng ung loa.i Ba’ng Kˆe´t qua’ phˆan cu.m, c´o 34 hˆo` so phˆan tr` Cu.m Kˆe´t qua’ k - tˆam Phˆan cu.m cu’a hˆo` so Sˆo´ kˆe´t qua’ tr` ung Nh´om Nh´om 29 27 24 Nh´om Ba’ng Kˆe´t qua’ phˆan cu.m, c´o 30 hˆo` so phˆan tr` ung Cu.m Nh´om Nh´om Nh´om Nh´om Kˆe´t qua’ k-tˆam 14 13 Phˆan cu.m cu’a hˆo` so 18 11 Sˆo´ kˆe´t qua’ tr` ung 12 Theo d´anh gi´a cu’a B´ac s˜ı chuyˆen khoa th`ı kˆe´t qua’ nhu vˆa.y l`a chˆa´p nhˆa.n du.o c, c´ac tru.`o.ng ho p kh´ac l`a bˆe.nh o’ m´ u.c dˆo tiˆe´n triˆe’n chu.a r˜o r`ang nˆen c´ach phˆan loa.i cu’a chuyˆen gia c´ac tru `o ng ho p n`ay c˜ ung khˆong nhˆa´t qu´an 274 ˜ ` ˆ HUA ˆ´N, NGUYE ˆ N THI XUAN ˆ HU.O.NG HOANG XUAN ˆ´T LUA ˆN KE Trˆen dˆay ch´ ung tˆoi du.a mˆo.t ca’i tiˆe´n thuˆa.t to´an k-means cho d˜ u liˆe.u hˆo˜n ho p, thuˆa.t ´.ng du.ng cu’a to´an n`ay dˆ˜e song song h´oa v`a dˆ˜e ´ap du.ng cho tˆa.p d˜ u liˆe.u rˆa´t l´o.n Kˆe´t qua’ u ung nhu k-means, n´o u c thu’ nghiˆe.m cho nghiˆen c´ u u cu’a bˆe.nh viˆe.n C˜ thuˆa.t to´an m´o i o’ m´ `eu v`ao kho’.i ta.o ban dˆ `au Dˆe’ kh˘a´c phu.c c´o nhu.o c diˆe’m l`a kˆe´t qua’ phˆan cu.m phu thuˆo.c nhiˆ nhu o c diˆe’m n`ay, ta c´o thˆe’ cho.n kho’ i ta.o theo kiˆe’u nu’ a gi´am s´at nhu d˜a nˆeu trˆen ho˘a.c kˆe´t `en Dˆo´i v´o.i phˆan cu.m cho c´ac loa.i bˆe.nh, nˆen ph´at triˆe’n theo ho p v´o.i thuˆa.t to´an di truyˆ u.ng bˆe.nh tiˆe´n triˆe’n khˆong r˜o r`ang hu ´o ng phˆan cu.m m`o v`ı c´ac triˆe.u ch´ ’O ` LIE ˆ U THAM KHA TAI [1] P Andritsos, Data Clusting Techniques, Department of Computer Science, University Toronto, 2002 [2] S Kantabutra, A L Couch , Parallel k-meanss clustering algorithm on NOWs, Technical Journal (2000) 243—248 [3] C D Looney, Pattern recognition using neural network, Theory and Algorithm for Engineers and Scientist, New york, Oxford, 1997 [4] J Han, M Kamber, Data Mining: Concepts and Techniques, Morgan Kaufman Publishers, 2001 [5] Ho`ang Xuˆan Huˆa´n, Case-based reasoning with rough features, VNU, Journal of Science, Nat., Sci & Tech 21 (2005) 24—32 [6] Z HUANG, Clustering large data sets with mixed numeric and categorical values, Proc 1st Conference of PAKDD (1997) 21—34 [7] Z HUANG, Extensions to the k-means algorithm for clustering large data sets with categorical values, Data Mining and Knowledge Discovery (1998) 283—304 [8] C Li, G Biswas, Unsupervised learning with mixed numeric and nominal data, IEEE Trans Knowledge and Data Eng 14 (2002) 673—690 [9] P Lingras, Unsupervised rough set classification using gas, Journal of Intelligent Information System 16 (2001) 215—228 [10] J B MacQueen, Some methods for classification and analysis of multivariate observations, Proc of 5th Berkely Symposium on Mathematical Statistics and Probility (1967) 281—297 [11] Z Michalewics, Genetic algorithms + Data structures = Evolutionary Programs, Berlin, Springer-Verlag, 1996 `e c´ac phu.o.ng ph´ap phˆan cu.m d˜ u liˆe.u data ming”, Luˆa.n v˘an [12] Ho`ang Ha’i Xanh, “Vˆ tha.c s˜ y, DHQG H`a Nˆo.i, 2005 Nhˆa.n b`ai ng`ay 29 - - 2005 Nhˆa.n la.i sau su’.a ng`ay 30 - - 2006 ... to´an k -modes, k -prototypes v`a nh˜ u.ng vˆa´n dˆ Kh´ai niˆe.m mode Mu.c 2.2.1 l`a mo’ rˆo.ng tru c tiˆe´p kh´ai niˆe.m n`ay cu’a Huang [6, 7] 2.1 Thuˆ a.t to´ an k -means Thuˆa.t to´an k- means. .. ho p th´ k K cu.m C1 , , Ck v´o i tˆam z , , z tu o ng u ´ ng v`a sau t´ai phˆan bˆo´ la.i th`anh c´ac cu.m k ´ ng C , , C k v´o i tˆam z , , z tu o ng u Khi d´o dˆ˜e thˆa´y k k d2 (x,... b`ay thuˆa.t to´an k- tˆam ˆ T TOAN ´ k -MEANS VA ` CAC ´ VA ˆ´N D`E ˆ LIEN ˆ QUAN THUA `an n`ay ch´ Trong phˆ ung tˆoi gi´o.i thiˆe.u thuˆa.t to´an k -means (MacQueen, 1967), kh´ai niˆe.m `e liˆen