Tôi xin cam đoan luận văn "Mạng Nơron nhân tạo và ứng dụng trong gom cụm sản phẩm ’’ này là công trình nghiên cứu của riêng tôi.. Các nghiên cứ trong lĩnh vực này về học thuật cũng nhu
Trang 1Bộ GIÁO DỤC VÀ ĐÀO TẠO
LUẬN VĂN THẠC sĩ MÁY TÍNH
Trang 2TRƯỜNG ĐẠI HỌC sư PHẠM HÀ NỘI 2 • _• _•
•
NGUYỄN TRỌNG NGỌC
MẠNG NƠRON NHÂN TẠO
VÀ ỨNG DỤNG TRONG GOM CỤM SẢN PHẨM
Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01 01
LUẬN VĂN THẠC sĩ MÁY TÍNH
Ngưòi hướng dẫn khoa học
PGS TS LÊ BÁ DŨNG
Trang 3LỜI CẢM ƠN
năm 2015
Tôi xin bày tỏ lời cảm ơn chân thành tới tập thể các thầy cô giáo Viện công nghệ thông tin - Viện Hàn lâm Khoa học và Công nghệ Việt Nam, các thầy cô giáo Trường Đại học Sư Phạm Hà Nội II đã tận tình giảng dạy cũng như tạo mọi điều kiện để tôi học tập và nghiên cứu trong 2 năm học cao học
Tôi xin chân thành cảm ơn sâu sắc tới thầy giáo PGS.TS Lê Bá Dũng đã cho tôi nhiều sự chỉ bảo quý báu, đã tận tình hướng dẫn và tạo điều kiện cho tôi hoàn thành tốt luận văn tốt nghiệp này
Quá trình thực hiện đề tài không tránh khỏi các thiếu sót, rất mong tiếp tục nhận được sự đóng góp ý kiến của các thầy, các cô giáo, các bạn đồng nghiệp đối với đề tài nghiên cứu của tôi để đề tài được hoàn thiện hơn
Tôi xin trân trọng cảm ơn!
Hà Nội, ngày tháng
Trang 4LỜI CAM ĐOAN
Tên tôi là: Nguyễn Trọng Ngọc
Lớp: Cao học KI7
Khóa học: 2013 - 2015
Chuyên ngành: Khoa học máy tính
Mã số chuyên ngành: 60 48 01 01
Cơ sở đào tạo: Truờng Đại học Su Phạm Hà Nội II
Giáo viên huớng dẫn: PGS.TS Lê Bá Dũng
Cơ quan công tác: Viện công nghệ thông tin - Viện Hàn lâm Khoa học và Công nghệ Việt Nam
Tôi xin cam đoan luận văn "Mạng Nơron nhân tạo và ứng dụng trong gom cụm sản phẩm ’’ này là công trình
nghiên cứu của riêng tôi Các số liệu sử dụng trong luận văn là trung thực, các kết quả nghiên cứu đuợc trình bày trong luận văn chua từng đuợc công bố tại bất kỳ công trình nào khác Tôi cũng xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện luận văn này đã đuợc cảm ơn và các thông tin trích dẫn trong luận văn đã đuợc chỉ rõ nguồn gốc
Hà Nội, ngày Tháng năm 2015
Học viên
Trang 5MỤC LỤC
Nguyễn Trọng Ngọc
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục đích nghiên cứu 1
3
Nhiệm vụ nghiên cứu 2
4 Đối tuợng và phạm vi nghiên cứu 2
5 Phuơng pháp nghiên cứu 2
CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO, CẤU TRÚC VÀ MÔ HÌNH MẠNG NƠRON KOHONEN 3
1.1 Tổng quan về mạng Nơron 3
1.1.1 Mô hình một Nơron sinh học 3
1.1.2 Mạng Nơron nhân tạo 3
1.2 Các khái niệm chung về mạng Nơron 13
1.2.1 Truyền tin trong mạng Nơron 13
1.2.2 Transformation (Transfer) Function (Hàm chuyển đổi) 15
1.3 Mô hình toán học của mạng Nơron 16
1.3.1 Cấu trúc mạng Nơron 16
1.3.2 Mạng nơron truyền thẳng nhiều lớp 22
1.3.3 Mạng Hopííeld 22
1.4 ứng dụng của mạng Noron 24
1.5 Tổng quan về SOM 26
1.5.1 Mô hình SOM 28
1.5.2 Một số ứng dụng của SOM 29
CHƯƠNG 2 THUẬT TOÁN SƠM VỚI BÀI TOÁN PHÂN CỤM 30
2.1 Các phuong pháp phân cụm 30
Trang 62.2 Dùng mạng noron trong phân cụm 31
2.2.1 Học ganh đua 31
2.2.2 Thuật toán SOM 33
2.2.3 Sử dụng SOM trong khai phá dữ liệu 38
2.2.4 SOM với bài toán phân cụm 40
2.2.5 Các phuơng pháp phân cụm khác 45
CHƯƠNG 3: ỨNG DỤNG MẠNG KOHONEN (SOM) TRONG PHÂN LOẠI SẢN PHẨM 48
• 3.1 Phát biểu bài toán 48
3.2 Mạng Kohonen cho phân loại sản phẩm 50
3.2.1 Cấu trúc mạng 50
3.2.2 Chuẩn bị dữ liệu 51
3.2.3 Mô hình mạng Kohonen 57
3.2.4 Chuông trình thực thi quá trình phân loại sản phẩm 59
3.2.5 Kiểm tra quá trình tính toán 63
3.2.6 Đánh giá kết quả 63
3.3 Đề xuất phuơng án triển khai kỹ thuật cho phân loại sản phẩm hạt cà phê 65
KẾT LUẬN 66
TÀI LIỆU THAM KHẢO 67
Trang 8ANN Artificial Noron Network Mạng
nơron nhân tạoSOM (Self-Organizing Maps) Mạng nơron tự tổ chức
PE (Processing element) Phần tử xử lý
U-matrix (unified distance matrix) Ma trận thống nhất khoảng cách
EM (Expectation maximization) Thuật toán tối đa hóa
MST (Minimum spanning tree) Thuật toán tối thiểu cây mở rộngBMU (Best - Matching unit) Đơn vị phù họp nhất
Trang 91 Bảng 3.1: Bảng dữ liệu thống kê kết quả phân loại hoa theo
chiều dài, chiều rộng cánh hoa và đài hoa 53
Trang 105 Hình 1.5 Mạng hồi quy một lớp có nối ngược 9
6 Hình l.ó.Mạng hồi quy nhiều lớp có nối 9
7 Hình 1.7.Sơ đồ học có giám sát 11
8 Hình 1.8.Sơ đồ học tham số không có giám sát 12
9 Hình 1.9 Sơ đồ học tăng cường 12
10 Hình 1.10 Truyền tin trong mạng Nơron 13
18 Hình 1.18 Cấu trúc của mạng SOM 28
19 Hình 2.1 Đơn vị xử lý ganh đua 32
20 Hình 2.2 Không gian ban đầu cho SOM 33
21 Hình 2.3 Các lân cận 35
22 Hình 2.3 BMU 36
23 Hình 2.4 Hai hàm lân cận cơ bản 37
Trang 11TT Hình vẽ Trang
24 Hình 2.5 Vectơ chiến thắng liên tục đối với SOM có 30x40
nơron cho dữ liệu hỗn họp Gauxơ 43
25 Hình 2.6: Định nghĩa một U-Matrix 44
26 Hình 2.7: U-Matrix của SOM 44
27 Hình 3.la: Thực phẩm trước khi được phân loại 49
28 Hình 3.1b Phân loại thực phẩm theo các thuộc tính sử dụng
mạng Kohonen 49
29 Hình 3.2 Sơ đồ khối thuật toán quá trình phân loại sản phẩm 51
30 Hình 3.3 Thuật toán phân cụm sản phẩm 58
31 Hình 3.4a 50 bông loại hoa Hoa Lan được phân vào một cụm 59
32 Hình 3.4b 50 bông loại hoa Hoa Hong được phân vào một cụm 59
33 Hình 3.4c 50 bông loại hoa Hoa Loa Ken được phân vào một
34 Hình 3.5a Ba loại hoa được phân ra thành 3 cụm sản phẩm theo
chiều dài và rông của đài hoa và cánh hoa 61
35 Hình 3.5b Kết quả gom cụm sản phẩm ba lo hoa theo độ dài
rộng của đài hoa và cánh hoa 62
36 Hình 3.6 Mô hình phân loại sản phẩm 65
Trang 12MỞ ĐẦU
1 Lý do chọn đề tài
Mạng Nơron nhân tạo nói chung, mạng KOHONEN nói riêng đang là chu
dề quan tâm của nhiều tác giả trong và ngoài nuớc Các nghiên cứ trong lĩnh vực này về học thuật cũng nhu ứng dụng đã có nhiều kết quả
Với quá trình phân cụm dữ lieu hay phân loại sản phẩm đã và đang đuợc phát triển và áp dụng nhiều trong các lĩnh vực khác nhau, bao gồm: nhận dạng, phân tích dữ liệu, nghiên cứu thị truờng, phân loại Trong đó, việc áp dụng kỹ thuật phân cụm dữ liệu để phân loại sản phẩm đang là một huớng nghiên cứu quan trọng Bởi vì, Sản phẩm là kết quả thu đuợc trong một quá trình thực hiện vàđuợc áp dụng trong nhiều lĩnh vực khác nhau nhu: y học, vật lý, hóa học, tìm kiếm tội phạm Mục đích chung của việc phân loại sản phẩm là: xử lý các dữ liệu đầu vào để có đuợc từng sản phẩm theo một yêu cầu cụ thể; phân tích các thuộc tính để thu đuợc các thông tin đặc trung trên từng sản phẩm nhằm hỗ trợ cho việc phân loại và nhận biết sản phẩm; phân tích các thuộc tính để nhận diện đuợc các thành phần trong sản phẩm nhằm nhận biết đuợc thuộc tính cơ bản của sản phẩm
ở mức độ cao hơn đuợc sự gợi ý của thầy huớng dẫn và nhận thấy tính thiết thực
của vấn đề em chọn đề tài: “Mạng Nơron nhân tạo và ứng dụng trong gom
cụm sản phẩm “ làm khoá luận tốt nghiệp cho luận văn tốt nghiệp của mình.
2 Mục đích nghiên cứu
+ Giới thiệu tống quan về mạng Nơron
+ Trình bày một số phuơng pháp phân phân cụm dữ liệu
+ Xây dựng hệ thống phân loại sản phấm sử dụng các kỹ thuật phân cụm
và mạng nơron
+ Nâng cao hiệu quả và độ chính xác trong việc xử lý sản phấm dựa vào việc phân tích các thuộc tính trên sản phẩm dựa vào lý thuyết về phân cụm và mạng nơron
Trang 133 Nhiệm vụ nghiên cứu
+ Hiểu rõ các khái niệm, các thuật toán trong phân cụm dữ liệu
+ ứng dụng phân cụm dữ liệu, mạng Nơron vào thực tiễn, đua đến xử lý các vấn đề có sử dụng thành tựu của Công nghệ thông tin
+ Là một huớng xử lý ảnh thông qua sử dụng các phuơng pháp tính toán mềm và công nghệ thông tin
4 Đối tượng và phạm vi nghiên cứu
+ Tìm hiểu mạng Nơron cụ thể là mạng Nơron Kohonen +
Tìm hiểu một số phương pháp phân phân cụm dữ liệu +
Tìm hiểu mạng nơron và ứng dụng cho phân loại sản
phẩm
5 Phương pháp nghiên cứu
+ Thu nhập những nghiên cứu về khai phá tri thức, phân cụm dữ liệu, xây dựng mạng nơron, ứng dụng mạng nơron trong phân loại sản phẩm + Tham khảo các tài liệu liên quan ở Việt nam và trên Internet
+ Tham dự các buổi thuyết trình, báo cáo kết quả; trao đổi với thầy cô và đồng nghiệp, tổng họp những kiến thức liên quan để phục vụ đề tài
Trang 14CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO, CẤU TRÚC VÀ MÔ HÌNH MẠNG NƠRON KOHONEN
1.1 Tổng quan về mạng Nơron
1.1.1 Mô hình môt Nơron sinh hoc
• •
Phần tử xử lý cơ bản của một mạng nơron sinh học là một nowrron, phần
tử này có thể chia làm bốn thành phần cơ bản như sau: dendrites, soma, axon,
ra kết quả cuối cùng ở đầu ra
1.1.2 Mạng Nơron nhân tạo
a Mô hình mạng Nơron nhân tạo
Mô hình toán học của mạng Nơron sinh học được đề xuất bởi
McCulloch và Pitts, thường được gọi là Nơron M-P, ngoài ra nó còn được gọi
là phần tử xử lý và được ký hiệu là PE (Processing Element)
Mô hình Nơron có m đầu vào Xi, x2, , xm, và một đầu ra yi như sau:
Trang 15Hình 1.1 Mô hình môt Nơron nhần tao
• Bộ tổng (Hàm tổng): Thường dùng để tính tổng của tích các đầu vào với trọng sổ liên kết của nó
• Ngưỡng: Ngưỡng này thường được đưa vào như một thành phần của hàm truyền
• Hàm truyền: Hàm này dùng để giới hạn phạm vi đầu ra của mỗi Nơron Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho Thông thường, phạm vi đầu ra của mỗi Nơron được giới hạn trong đoạn [0,1] hoặc [-1,1] Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến Việc lựa chọn hàm truyền tùy thuộc vào từng bài toán và kinh nghiệm của người thiết kế
mạng
Trang 16Hàm ngưởng đơn cực y = 1 với /XI (1.4
)Hàm ngưởng liai cực y = 2
l + e‘s -1 với ÂX) (1.5
Trang 17b Cấu trúc của mạng Nơron nhân tạo
Mạng Nơron nhân tạo (Artiíĩcial Nơron Network) là một cấu trúc mạng được hình thành nên bởi số lượng các Nơron nhân tạo liên kết với nhau Mỗi Nơron có các đặc tính đầu vào, đầu ra và thực hỉện một số chức năng tính toán cục bộ
Vớỉ việc giả lập các hệ thống sinh học, các cấu trúc tỉnh toán, mạng Nơron cỏ thể giải quyết được các lợp bài toán nhất định như: Bài toán xếp loại, bài toán lập lịch, bài toán tìm kỉếm, bài toán nhận dạng mẫu Các bài toán phức tạp cao, không xác định Tuy nhiên, sự liên kết giữa một bài toán bất kỳ trong thực tế với một giải pháp mạng Nơron lại là một việc không dễ dàng
Xét một cách tổng quát, mạng Nơron là một cấu trúc xử lý song song thông tin phân tán mang các đặc tính nổi bật sau:
- Là một mô hình tính toán dựa trên bản chất của Nơron
- Bao gồm một số lượng rất lớn các Nơron liên kết với nhau
- Mạng Nơron có khả năng học, khái quát hỏa tập dữ liệu học thông qua việc gán và hiệu chỉnh các trọng số liên kết
Trang 18Perception, còn mạng Nơron là mô hình LGU thì nó được gọi là mạng Adaline.
Hỉnh 1.3 Mạng truyền thẳng một lóp
Với mỗi giá trị đầu vào X = [ Xi,X2, ,Xn]T Qua quá trình xử lý của
mạng ta sẽ thu được một bộ tương ứng các giá trị đầu ra là y = [yi,y2 > »yn]T được xác định như sau:
-(1.6)
Trang 19Lớp ra
Trong đó:
m: số tín hiệu vào
n : số tín hiệu ra
W t T = [ Wii, Wi2, ,win]T là véc tơ trọng sé của Nơron thứ
i fi: hàm kích hoạt của Nơron thứ i 0j: là ngưỡng của
Hình 1.4 Mô tả cấu trúc của mạng Nơron truyền thẳng nhỉều lớp.
Trang 20* Mạng hềỉ quy
- Mạng hồỉ quy một lớp cỗ nối ngược
Hình 1.5 Mạng hồí quy một lớp có nối ngược Mạng hồi quy nhỉều lớp có nếỉ ngược
Hình 1.6 Mạng hềỉ quy nhiều lớp cổ nốỉ ngược
e Các luật học
Mạng Nơron có một số ưu điểm so với máy tính truyền thống, cấu trúc song song của mạng Noron rất thích hợp cho những ứng dụng đòi hỏi tốc độ nhanh theo thờỉ gian thực Khả năng huấn luyện của mạng Nơron có thể khai thác để phát triển hệ học thích nghỉ Mặt khác, với khả năng tổng quát hóa của mạng Nơron, nó cỏ thể áp dụng để điều khiển nhiều tham số phức tạp đồng thời
từ đó giải quyết dễ dàng một số bài toán NP - đầy đủ (NP - Complete)
Trang 21Các luật học đóng vai trò quan trọng trong việc xác định một mạngNơron nhân tạo Một cách đơn giản về khái niệm học của mạng Nơron là cậpnhật trọng số trên cơ sở các mẫu Theo nghĩa rộng thì học có thể đuợc chiathành hai loại: Học tham số và học cấu trúc
* Hoc tham số:
*
Các thủ tục học này nhằm tìm kiếm ma trận trọng số sao cho mạng có khả năng đua ra dự báo sát với thực tế Dạng chung của luật học tham số có thể đuợc mô tả nhu sau:
( 1 7 )
trong đó:
‘i là sự thay đôi trọng sô liên kêt từ Nơron j đên Nơron i.
Xj là tín hiệu vào Nơron j
+ Học có giám sát: Là quá trình học dựa vào sai số giữa đầu ra thực và
đầu ra mong muốn để làm cơ sở cho việc hiệu chỉnh trọng số Sai số này chính
là hằng số học r Luật học điển hình của nhóm này là luật học Della của
Widrow (1962) nêu ra đầu tiên dùng xấp xỉ trọng số của Adaline dựa trên nguyên tắc gradient
Trong nhóm luật học này cũng cần kể đến luật học Perceptron của
Rosenblatt (1958) về cơ bản luật học này thay đối các giá trị trọng trong thời
gian học, còn Perceptron thì thêm hoặc bỏ trọng tùy theo giá trị sai số là duơng hay âm
Một loạt các luật học khác cũng được dựa trên tư tưởng này Luật oja là
Trang 22cải tiến và nâng cấp của luật Delta Luật truyền ngược là luật mở rộng của luật Delta cho mạng nhiều lớp Đối với mạng truyền thẳng thường sử dụng luật truyền ngược để chỉnh trọng số với tín hiệu chỉ đạo từ bên ngoài và người ta gọimạng này là mạng lan truyền ngược.
Hình 1.7 Sơ đồ học tham số có giám sát.
+ Học không có giám sát: Luật học này sử dụng đầu ra của mạng làm cơ
sở để hiệu chỉnh các trọng số liên kết Hay trong luật này chính là tín hiệu ra của mạng Điển hình là luật Hebb (1949) thường dùng cho các mạng tự liên kết,luật LVQ (Learning Vector Quantization) dùng cho mạng tự tổ chức một lớp thuộc lớp mạng ánh xạ đặc trưng của Kohonen
Luật học Hebb là luật sinh học xuất phát từ tiên đề của Hebb cho rằng: Giữa hai Nơron có quan hệ và có thay đổi thế năng mạng thì giữa chúng có sự thay đổi trọng số liên kết Nói cách khác, trọng số được điều chỉnh theo mối tương quan trước và sau, nghĩa là:
(18)Trong đó:
AỊV ’
ij: Là sự thay đôi trọng sô liên kêt từ Nơron j đên Nơron i
Xj: là tín hiệu vào Nơron j
yi: là tín hiệu ra của Nơron i
^ là tốc độ học, nằm trong khoảng (0,1)
Trang 23*
TínHệurto
Mạng nơron
Hình 1.9 Sơ đồ học tăng cường.
Luật Hebb giải thích việc chỉnh trọng số trong phạm vi cục bộ của mạng
mà không cần tín hiệu chỉ đạo từ bên ngoài Hopííeld cũng cải tiến luật Hebb cho các mạng tự liên kết thành 16 dạng khác nhau theo kiểu luật Hebb, luật đối Hebb, luật Hopííeld
Nhu vậy, ứng với mỗi nhóm mạng thuờng áp dụng một luật học nhất định Nếu tồn tại hàng chục loại mạng khác nhau thì các luật học dùng trong mạng Nơron có thể tăng lên rất nhiều lần
Đối với mạng phản hồi thuờng sử dụng luật Hebb và các luật cải tiến của
nó để chỉnh trọng số mà không cần tín hiệu chỉ đạo từ bên ngoài
Hình 1.8 Sơ đồ học tham
số không có giám sát + Học tăng cường: Trong một số truờng họp, thông tin
phản hồi chỉ là tín hiệu bao gồm hai trạng thái cho biết tín hiệu đầu ra của mạng
là đúng hay sai Quá trình học dựa trên các thông tin huớng dẫn nhu vậy đuợc gọi là học có củng cố (học tăng cuờng) và tín hiệu mang thông tin phản hồi đuợc gọi là tín hiệu củng cố cho quá trình học Ta có thể thấy rằng quá trình học
này là một dạng của quá trình học có tín hiệu chỉ đạo bởi vì mạng nhận đuợc một số thông tin phản hồi từ bên ngoài
Trang 24áp dụng trong việc học cấu trúc của mạng có kích thuớc tuơng đối nhỏ.
1.2 Các khái niệm chung về mạng Nơron
1.2.1 Truyền tin trong mạng Nơron
Hình 1.10 Truyền tin trong mạng Nơron Inputs: Mỗi
Input tuơng ứng với 1 thuộc tính (attribute) của dữ liệu (patterns) Ví dụ nhu trong ứng dụng của ngân hàng xem xét có chấp nhận cho khách hàng vay tiền hay không thì mỗi Input là một thuộc tính của khách hàng nhu thu nhập, nghề nghiệp, tuối, số con,
Output: Kết quả của một ANN là một giải pháp cho một vấn đề, ví dụ
nhu với bài toán xem xét chấp nhận cho khách hàng vay tiền hay không thì output là yes (cho vay) hoặc no (không cho vay)
Connection Weights (Trọng số liền kết) : Đây là thành phần rất quan
trọng của một ANN, nó thể hiện mức độ quan trọng (độ mạnh) của dữ liệu đầu vào đối với quá trình xử lý thông tin (quá trình chuyển đổi dữ liệu từ