LỜI CẢM ƠN Sau một thời gian học tập, nghiên cứu và triển khai đề tài: “Tính toán mờ trong mạng Kohonen và ứng dụng phân cụm dữ liệu”, đến nay tôi đã hoàn thành đề tài nghiên cứu của mình. Tôi xin bày tỏ tấm lòng biết ơn sâu sắc nhất tới thầy giáo Thạc sỹ Nguyễn Duy Hiếu người thầy đã trực tiếp hướng dẫn tôi trong suốt quá trình tôi thực hiện đề tài nghiên cứu khoa học này. Tôi cũng chân thành cảm ơn tới lãnh đạo Nhà trường, Ban chủ nhiệm Khoa cùng các thầy cô giáo đã giúp đỡ, tạo điều kiện để tôi có cơ hội nghiên cứu, học tập và hoàn thành đề tài nghiên cứu này. Do hạn chế về trình độ chuyên môn và thời gian thực hiện nên đề tài không tránh khỏi những thiếu sót, rất mong nhận được sự góp ý của thầy cô để tôi có thể hoàn thành tốt nhất đề tài nghiên cứu này. Tôi xin chân thành cảm ơn Sơn
1 LỜI CẢM ƠN Sau một thời gian học tập, nghiên cứu và triển khai đề tài: “Tính toán mờ trong mạng Kohonen và ứng dụng phân cụm dữ liệu”, đến nay tôi đã hoàn thành đề tài nghiên cứu của mình. Tôi xin bày tỏ tấm lòng biết ơn sâu sắc nhất tới thầy giáo - Thạc sỹ Nguyễn Duy Hiếu người thầy đã trực tiếp hướng dẫn tôi trong suốt quá trình tôi thực hiện đề tài nghiên cứu khoa học này. Tôi cũng chân thành cảm ơn tới lãnh đạo Nhà trường, Ban chủ nhiệm Khoa cùng các thầy cô giáo đã giúp đỡ, tạo điều kiện để tôi có cơ hội nghiên cứu, học tập và hoàn thành đề tài nghiên cứu này. Do hạn chế về trình độ chuyên môn và thời gian thực hiện nên đề tài không tránh khỏi những thiếu sót, rất mong nhận được sự góp ý của thầy cô để tôi có thể hoàn thành tốt nhất đề tài nghiên cứu này. Tôi xin chân thành cảm ơn! Sơn la, tháng 5 năm 2014 Sinh viên Hoàng Khánh Linh 2 MỤC LỤC PHN M U 7 1. Lý do ch tài 7 2. M nhim v nghiên cu 7 ng nghiên cu 7 4. Phm vi nghiên cu 7 u 7 6. Cu trúc c tài 7 TNG QUAN V MÔ HÌNH M-RON 8 1.1. M-ron nhân to 8 1.1.1. M-ron nhân to là gì? 8 1.1.2 Cu trúc và mô hình ca m-ron nhân to 8 1.1.3 Cu tc làm vic ca m-ron 10 1.1.4. Các kiu m-ron 12 c 16 1.2.1. Khái Nim 16 1.2.2. Hc có giám sát 16 1.2.3. Hc không giám sát 17 1.2.4. Hc na giám sát 18 1.2.5. Hng 18 LÝ THUYT TP M 19 2.1. Tp m 19 2.1.1. Khái nim tp rõ 19 2.1.2. Khái nim tp m 19 2.2. S m 21 2.2.1. nh m 21 2.2.2. S m 21 2.2.3. S m tam giác 21 2.2.4. S m hình thang 22 3 2.2.5. S m hình chuông(Gauss) 22 2.3. Bin ngôn ng 22 2.4. B gii m 24 2.4.1. y max 24 2.4.2. y trng tâm 24 2.4.3. y trung bình tâm 24 THUT SOM VÀ BÀI TOÁN PHÂN CM D LIU 25 c v SOM 25 3.2. 25 3.3. Thut toán phân cm s dng SOM 26 3.4. Ví d minh ha thut toán 27 NG DNG MINH HA 32 4.1. Mô t d liu 32 4.2. La chn ngôn ng lp trình và h qun tr d liu 32 4t thut toán 32 t thut toán 32 4.3.2. ng dng 36 KT LUN 37 1. Kt lun 37 ng nghiên cu phát tri tài 37 TÀI LIU THAM KHO 38 4 DANH SÁCH HÌNH VẼ -ron nhân to 8 th các dng hàm truyn 10 Hình 3: M-ron ba lp 11 Hình 4: Mt s dng m-ron 13 Hình 5 Cu trúc ca mng Hopfield 14 Hình 6: Cu trúc ca BAM 15 Hình 7: th hàm thuc µ A(x) 20 Hinh 8: S m tam giác 22 Hinh 9: S m hình thang 22 Hình 10: S m hình chuông 22 Hình 1 th biu din mi quan h gia nhi c thuc 23 Hình 12: Kin trúc ca SOM 26 Hình 13: Kin 26 mng Kohonen cho ví d trên 29 Hình 15: Giao din chính c 33 Hình 16: Sau khi phân cm hoàn tt 34 Hinh 17: D liu 34 Hinh 18: Kt qu phân cm - Cm 1 35 Hình 19: Kt qu phân cm - Cum 2 35 Hinh 20: Kt qu phân cm - Cum 3 36 5 DANH MỤC BẢN BIỂU Bng 1: S m ng buying 28 Bng 2: S m ng maint 28 Bng 3: S m ng lug_boot 28 Bng 4: S m ng safety 28 Bng 5: D liu vào ca ví d 28 Bng thông tin trong CSDL 32 6 DANH MỤC TỪ VIẾT TẮT SOM Self Organizing Maps ANN Artificial Neural Network PE Processing Element MDP Markov Decision Process PCDL Phân cm d liu CSDL d liu 7 PHẦN MỞ ĐẦU 1. Lý do chọn đề tài Ph (SOM: Self- -ron-ron vào và -ron -ron -ron -ron -ron , , . , (Control Engineering), (Kohonen, 1989), robotics (Ritter et al., 1989), (Oja, 1992), (Fort, 1988), (Kohonen, 1984), - (Biomedical Sciences and Chemistry), (Financial Analysis) (Natural Language Processing). 2. Mục đích, nhiệm vụ nghiên cứu - Tìm hiu m-ron và k thut SOM. - Trin khai ng dng s dng k thut SOM vào phân cm d liu. 3. Đối tƣợng nghiên cứu - Mng -ron và k thut Self Organizing Map (SOM). 4. Phạm vi nghiên cứu - Nghiên cu k thut SOM và s d phân cm d liu. - ng dng th nghim. 5. Phƣơng pháp nghiên cứu - Nghiên cu lý thuyt và xây dng mô hình ng dng cho bài toán thc t - Thu thp s liu thc t th nghim trên mô hình - Xây d nghim 6. Cấu trúc của đề tài tài gm ba phn: - Phn 1: Phn m u - Phn 2: Phn ni dung c tài gm 4 Tng quan v mô hình mng -ron t tp m 3: K thut SOM và bài toán phân cm d liu 4ha - Phn 3: Kt lung nghiên cu phát tri tài 8 CHƢƠNG 1 TỔNG QUAN VỀ MÔ HÌNH MẠNG NƠ-RON 1.1. Mạng nơ-ron nhân tạo 1.1.1. Mạng nơ-ron nhân tạo là gì? Định nghĩa: Mng -ron nhân to (Artificial Neural Network - ANN) gi tt là mng -ron là mt mô hình x lý thông tin phng theo cách thc x lý thông tin ca các h -ron sinh hc to lên t mt s ng ln các phn t (gi là phn t x lý hay -ron) kt ni vi nhau thông qua các liên kt (gi là trng s liên kt) làm vic nt th thng nh gii quyt mt v c th Mt mng -ron nhân tc cu hình cho mt ng dng c th (nhn dng mu, phân loi d liu ) thông qua mt quá trình hc t tp các mu hun luyn. V bn cht hc chính là quá trình hiu chnh trng s liên kt gia các -ron. 1.1.2 Cấu trúc và mô hình của một nơ-ron nhân tạo Mô hình toán hc ca mng -ron sinh h xut bi McCulloch và c gi là -ron M-c gi là phn t x lý và c ký hiu là PE (Processing Element). Mô hình -ron u vào x 1 , x 2 , , x m và mu ra y i Hình 1. Mô hình -ron nhân to Gii thích các thành phn: Tu vào: Là các tín hiu vào ca -ron, các tín hic i dng mt vector m chiu. Tp các liên kt (các trng s): Mi liên k c th hin bi mt trng s c gi là trng s liên kt). Trng s liên kt gia tín hiu vào th j cho n- ron i c ký hiu là w ij ng các trng s c khi to ngu nhiên thm khi to mc cp nht liên tc trong quá trình hc mng. 9 B tng (Hàm t tính tng cu vào vi trng s liên kt ca nó. t thành phn ca hàm truyn. Hàm truy gii hn phu ra ca mi -ron. Nó nhn u vào là kt qu ca hàm tng, phu ra ca mi -ron c gii hn [0,1] hoc [-1,1]. Các hàm truyn rng, có th là các hàm tuyn tính hoc phi tuyn. Vic la chn hàm truyn tùy thuc vào tng bài toán và kinh nghim ci thit k mng. u ra: Là tín hiu ra ca mt -ron, vi mi -ron s có tu ra. V mt toán hc, cu trúc ca mt -ron c mô t bng cp biu thc sau: )( iii netfy và j n j iji xwnet 1 T 1 , x 2 m là các tín hiu vào, còn w i1 , w i2 im là các trng s kt ni ca -ron th i, net i là hàm tng, f là hàm truyn, i là mng, y i là tín hiu ra ca -ron. -ron sinh hc, -ron nhân tn các tín hiu u vào, x lý (nhân các tín hiu này vi trng s liên kt, tính tc ri gi kt qu n hàm truyn), và cho mt tín hi u ra (là kt qu ca hàm truyn). * Hàm truyn có th có các dng sau: c 00 01 xkhi xkhi y (1.1) Hàm gii hn cht 01 01 )sgn( xkhi xkhi xy (1.2) Hàm bc thang 00 10 11 )sgn( xkhi xkhix xkhi xy (1.3) c x e y 1 1 v (1.4) ng hai cc 10 1 1 2 x e y v (1.5) * th các dng hàm truyn c biu di Hình 2: th các dng hàm truyn 1.1.3 Cấu tạo và phƣơng thức làm việc của mạng nơ-ron Da trên nhng -ron mc trên, ta có th hình dung mng -ron t h truyt và x lý tín hic tính truyt ca -ron phn lc tính truy Khi liên ku vào/ra ca nhiu -ron vc mt mng - ron, vic ghép ni các -ron trong mng vi nhau có th là theo mt nguyên tc bt k. Vì mng -ron là mt h truyt và x lý tín hiu, nên có th phân bit các loi -ron khác nhau, các -ron u vào nhn thông tin t ng bên ngoài khác vi các -ron c ni vi các -ron khác trong mc phân bit vi nhau qua vector hàm trng s u vào w. Nguyên lý cu to ca mng -ron bao gm nhiu lp, mi lp bao gm nhiu -ron có cùng chng. Hình 3 là mô hình hong ca mt mng - ron 3 lp vi 8 phn t -ron. Mu vào là x 1 , x 2 , x 3 u ra y 1 , y 2 . Các tín hin 3 -ron u vào, 3 -ron này làm thành lu vào ca mng. Các -ron trong lc gi là -ron u ra ca các [...]... Cho mẫu thứ 2 vào và việc tính toán tƣơng tự… cho đến hết các mẫu Sau đó các mẫu đƣợc đƣa vào lặp lại cho đến khi trọng số không đổi thì đừng 31 CHƢƠNG 4 ỨNG DỤNG MINH HỌA 4.1 Mô tả dữ liệu Đối với đề tài này, tôi đã xem xét áp dụng thuật toán PCDL (Phân cụm dữ liệu) sử dụng mạng Kohonen đối với dữ liệu mờ là dữ liệu về đánh giá ô tô đƣợc lấy trên kho dữ liệu chuẩn chuyên dùng cho học máy Trong phạm vi... ghi Nhìn chung ứng dụng đã đáp ứng đƣợc yêu cầu minh họa cho tính toán mờ trong mạng Kohonen và áp dụng vào bài toán phân cụm dữ liệu Kết quả phân cụm đƣợc minh họa nhƣ các hình trên Nói chung, kết quả phân cụm khá tốt, các sản phẩm có thông tin bán hàng tƣơng đồng nhau đƣợc xếp cùng một nhóm Tuy nhiên, việc phân cụm của chúng tôi còn một số hạn chế cần đƣợc hoàn thiện hơn: cần mở rộng dữ liệu có nhiều... bài toán Các hình ảnh minh họa cài đặt thuật toán, giả sử chọn số cụm k=3: Hình 15: Giao diện chính của chƣơng trình 33 Hình 16: Sau khi phân cụm hoàn tất Hinh 17: Dữ liệu ban đầu 34 Hinh 18: Kết quả phân cụm - Cụm 1 Hình 19: Kết quả phân cụm - Cum 2 35 Hinh 20: Kết quả phân cụm - Cum 3 4.3.2 Đánh giá ứng dụng Trong khuôn khổ đề tài chúng tôi đã tiến hành thử nghiệm thuật toán phân cụm sử dụng mạng Kohonen. .. tài, phần ứng dụng chỉ mang tính chất thử nghiệm và minh họa cho thuật toán để xem xét tính hiệu quả của thuật toán đối với dữ liệu mờ Tôi xin đề suất sử dụng dữ liệu gồn 1728 bản ghi với các thông tin: buying, maint, doors, persons, lug_boot, safety Trong đó, các thuộc tính khi sử dụng vào phân cụm đƣợc mờ hóa theo số mờ tam giác đã nêu trong ví dụ ở phấn 3.4 4.2 Lựa chọn ngôn ngữ lập trình và hệ quản... dữ liệu có nhiều bản ghi hơn và thử nghiệm phân cụm với CSDL khác (VD: cho ngƣời dùng chọn CSDL và trƣờng phân cụm) Ứng dụng đƣợc viết thành nhiều class với chức năng riêng biệt tạo cơ sở cho việc phát triển mô hình hóa tính toán sau này (phân cụm trên các CSDL khác nhau) Ứng dụng không biểu diễn đƣợc dữ liệu dƣới dạng trực quan bằng hình vẽ Do dữ liệu để phân cụm là dữ liệu 6 chiều, hiện tại chƣa có... học máy, sử dụng cả dữ liệu đã gán nhãn và chƣa gán nhãn để huấn luyện - điển hình là một lƣợng nhỏ dữ liệu có gán nhãn cùng với lƣợng lớn dữ liệu chƣa gán nhãn Học nửa giám sát ứng giữa học không giám sát (không có bất kì dữ liệu có nhãn nào) và có giám sát (toàn bộ dữ liệu đều đƣợc gán nhãn) Nhiều nhà nghiên cứu nhận thấy dữ liệu không gán nhãn, khi đƣợc sử dụng kết hợp với một chút dữ liệu có gán... mờ cho trƣờng maint * lug_boot Mức đánh giá Số mờ tƣơng ứng small (1,4,7) med (4,7,10) big (7,10,10) Bảng 3: Số mờ cho trƣờng lug_boot * safety Mức đánh giá Số mờ tƣơng ứng low (1,4,7) med (4,7,10) high (7,10,10) Bảng 4: Số mờ cho trƣờng safety Giả sử, yêu cầu phân các chiếc xe làm 3 cụm Mô hình: dùng mạng Kohonen có 6 nơ-ron đầu vào tƣơng ứng với 6 thuộc tính của dữ liệu và 3 nơ-ron đầu ra tƣơng ứng. .. thiệu bởi C von der Malsburg năm 1973 và đƣợc phát triển bởi T Kohonen (Phần Lan) năm 1982 nên còn đƣợc gọi là Kohonen Network Kỹ thuật SOM đã đƣ ợc áp dụng thành công trong một số lĩnh vực nhƣ nh ận dạng, phân cụm dữ liệu, dự đoán chuỗi và khai phá dữ liệu, Mẫu đƣợc nhận dạng có thể là ảnh, âm thanh hoặc văn bản, SOM sử dụng cạnh tranh mềm (soft) để gom cụm dữ liệu Có nghĩa là, ngoài việc cập nhật... input vector và các neurons 25 Hình 12: Kiến trúc của SOM Sau đây là kiến trúc đơn giản của SOM gồm 2 neurons ở lớp output layer Input vector gồm 4 chiều và weight matrix wij (i=1 4 và j=1 2) nhƣ sau (hình 1): Hình 13: Kiến trúc SOM đơn giản 3.3 Thuật toán phân cụm sử dụng SOM Trong mạng Kohonen, số nơ-ron vào bằng số chiều của không gian vào(số trƣờng cảu dữ liệu) , số nơ-ron ra bằng số cụm cần phân chia... thức mạng, mạng có thể giải quyết các vấn đề một cách đúng đắn Đó có thể là vấn đề ứng dụng rất khác nhau, đƣợc giải quyết chủ yếu dựa trên sự tổ chức hợp nhất giữa các thông tin đầu vào của mạng và các đáp ứng đầu ra Mạng nơ-ron có nhiệm vụ là hoàn chỉnh hoặc hiệu chỉnh các thông tin thu đƣợc không đầy đủ hoặc bị tác động của nhiễu, đƣợc ứng dụng trong lĩnh vực hoàn thiện mẫu, trong đó có một ứng dụng . (1.7). Quá trình này c tip tc, bao g y (1) = a(wx (0) ) x (2) = a(w (T) y (1) ) y (3) = a(wx (2) ) x (4) = a(w (T) y (3) ) y (k-1) = a(wx (k-2) )