GQ
ý 5%“ 8
Luận văn tốt nghiệp
Tìm hiêu về mạng noron Kohonen
Trang 2MUC LUC
8/906 025 1
CAC HINH VE, BANG BIEU TRONG LUAN VAN .ecsssssssscsssesseerseeneerssennseete 4
THUAT NGU TIENG ANH .ÔỎ 4 LOi CAM ON ivsssisvisensresmennavesi anes cenene nan 5 Chương 1 Giới thiệu về mạng nơron nhân tạo . 5-57 - s ss+e*sesvr+srseexrs 7 1.1 Cấu trúc và mô hình mạng nøT0n .- - ¿2:22 25+ v£v£++£v2£vz£+zE+zrzsez 9
1.1.1 Mô hình một nơron sinh học - - 5 - 5 5 +S< 3 S332 rez 9 1.1.2 Câu trúc và mô hình của một nơron nhân tạọ 2s 2s +s+<+z+s2 10
1.2 Cấu tạo và phương thức làm việc của mạng noron . - 2-2 13 1.2.1 Mạng noron m6t ÏỚp - + + + S1 E91 nh ng ng, 15
1.2.2 Mạng nơron truyền thẳng nhiều lớp - :- ¿©2222 +s+25+zS+zxzss+ 16 1.2.3 Mạng nơron phản hồị -.:- ¿+ 25t 2+‡Ev2Et2E£E£EEvcEvrterrrsrrrrrsee 17
1.2.4 Mạng nơron hồi quy .- ¿5+2 2E ‡E‡2Et£EEEEEEEZEvrterrrkrrsrrkee 17 1.2.5 Mang Hopfield
1.2.6 Mạng BAM
1¿3':Clác luật đỢGiiareaanasetndterdtrdiiditittiif0G3303TSSNG(DG.4590SXERDGISGRĐOSE4A338E08RG In coac in na nạ 21
1.3.2 Hoc CONG 1“ -đđ(:(:|ÃH ÔỎ 22
1.3.3 Học không có giám sắt - - - + HH HH HH ngư 22 1.4 Thuật toán lan truyền đgưỢC -2- 2 2 ©5¿+S£+++£E++x£2EEcxtzxersrrkererrxrrxee 24
1.5 Kết luận - <5 k te T33 S31 ST 3 1371 171123111111 51.11210111 1112 ceE 30
Chương 2 Tìm hiểu mạng nơron Kohonen - 5-5 +ss©s+s+£s+x+x+xezeezersez 32 EIUGHIGHI (HHTIE E255 xxExk+431 6151413 E416739% s415 x41 kkxkVkVceckks LVETSK khá v41 35% sekk ki cà 4x4 VE<9ShkiS 32 2s2:NHIB:Ti0fGH/KGHGHEHsisnnebnsoisosaoidintingisiDEĐGSLIARGSEISVISNEIISS10As5E04828134 n0 33
2.2.1 Mạng nơron Kohonen nhận đạng Ăn Sinh ngư, 35
2.2.2 Cấu trúc của mạng nơron Kohonen 2 s¿s255++sx2sxe+xxzzxeereee 35
2.2.3 Chuẩn hóa dữ liệu đầu vàọ - 2-52 S2 xxx SE2EEcExeErrkrkrrrrsex 36
Trang 32.2.5 Anh xa IGN g CUC oiẹ ececececsesecscsesessesvsvevcssavsvcacavsvsecaveveverserevenerenesrerenereae 37 2.2.6 Chọn nơron thắng -. 2.2.7 Quá trình học của mạng Kohonen 2.2.8 Tỉ lệ (tốc độ) học€ ¿S552 Sẻ SE SE x3 2323125 152E12111 150115111 xẹ 40 2.2.9 Điều chỉnh các trọng số (cập nhật trọng số) 2-s+5s+s+cscsecs2 41
E4TMIÍTWWNH/lof,sili ND sua tac s2en0SiieersđeleeekkuedorBErrditiecerkiorrbdiB.Edki 4I
2.3 Thực thi mạng nơron Kohonen - c c3 *+ +2 3+ + ÉE*EExsxrsrkkrereree 42
2.3.1 Thực thi mang noron truyền thẳng - ccscnct ST rnrgeeey 42
2.3.2 Thực thi lan truyền h0 2011 47 PIN na in geễếảâẳầẳỲỪỪỪỪ L 48 2.3.4 Báo cáo tiến trình - «server Ẹrkrrrkrrrrree 49 2:3.4.1 Lớp mạng CŨ Si: ci55606666064011136161430661413068540654814586385603538558936558E 49 2.3.4.2 Lớp KohonenNefWOTK ch nh HH noi 51 2.4 Kết luận - -cnn n1 T111 1111501111 HT T1 g0 Hy xxx 59
Chương 3 Nhận dạng ký tự quang sử dụng mạng nơron Kohonen 61 3:1 GIớI tHiệu GHUŨE mxssrsesooeenntrdrratisoaviDotisGESBBENS0SE85EISS1510155090448W0820010XEHStAXttiS 61
3.2 Hudin luyén mang on ceccccssessesssesscsscscscsseesesecsesussnescsscssssseseseesssesseaneaeesessenees 62
Trang 4CAC HINH VE, BANG BIEU TRONG LUẬN VAN
Hinh 1.1 MGt noon Sink ROC .cccccccecccsscsccessccecscscsesscessseccesseceesececsasesesaeteceaueceeeeeess 10
Hình: 1⁄2, tự liền ket ode norontsccccnssnsumescsenmcmamamnanansmnnnmnsneen 10
Hình 1.3 Mô hình một noron HhÂH FAỌ Ă cĂS cà nhi hen rry 11
Hình 1.4 Đồ thị các đang hầm RÍCh THQQcasooaonisiieos3st953051813185083361632850003383808X 13
Hình 1.5 Mạng noron Da ÍỚpD c5 << SH HH HH Hư 14
Hình 1.6 Một số GANG MAN NOTON tuisrnnioitisistiiD40 D0164143555VS8009ASSES719EX8S503935838535 16
Hình 1.7 Cầu trúc của mạng Hopjield -c:- 55552 tt SEceEzveckvckvsrvsrrrersee 18
Tinh, 1ã (ấu trúo của BẤM traessnassarsninsrnsttintnttrttudgtErnSngtpggt9ln1x4.00290060 1206 19
Hình 1.9: Cấu trúc huấn ÏuyỆn Hạng HƠTOH c5 St ScsccSvecxesresrerrerrecve 20 Hình 1.10: HOC CO giấm sắt SH HH HH HH key 22 Hình 1.12: Hoc khong CO gigi SắÍ SG Set Tnhh Hưng 22 Hình 1.13: Sơ đồ cấu trúc chung của quá trình học
Hình 1.14: Mạng 3 lớp lan truyỄỀn HgưỢc cecccccccccccec
Hình 2.1: Một dang mang noron Kohonen
Hình 2.2: Sơ đô khối biểu diễn huấn luyện mạng noron Kohonen - 40 Hình 3.1:Mô hình chung trong nhận dạng chữ "1 5 62 Hinh 3.2: Sor dé hudin Wyn MAN sccsecsecsessessssssssessessesseesessessssnessesucsssseessesssecsseeneane 62
Hình 3.4: Biểu diễn ký tự e theo ma trận X7 DIXUỔỈ thuangttaatsasoasresoasesisssesssnxOt Hình 3.5: Biểu diễn ký tự e theo ma trận 5x7 bởi các giá trị -cccccccces 64
Hình3.6: Biểu diễn ký tự e ở vector đẩu vàọ -ccccccccecccscsecrrrerrreercee 64
Hình 3-7 VỆ Vũ HH: KẾ THẾ chen HH He HH HH HHingDA 65 Hình 3.8 Kết quả mạng noron Kohonen nhận dạng kỹ tự e và KÝ tự € 65 Hình 3.9 Đưa chữ ký vào mạng và gắn (ÊN c- sck knkhh net rưy 65
Hình 3.10 Kết quả mạng noron Kohonen nhận dạng chữ Kỷ ó6
Trang 5
ANN Mang noron can huan luyén
BAM Mang BAM (Bidirectional Associative Memory) SOM Mang noron ty to chire (Self Organizing Maps) PE Phan tir xir ly (Processing Element)
OCR Nhan dang ky tu quang (optical character recognition)
Lời cảm ơn
Chúng ta đều biết rằng, bộ não con người là một sản phẩm hoàn hảo của tạo
hóa, nó có khả năng tư duy vả sáng tạọ Hiện nay, con người đang nghiên cứu
Trang 6phương thức hoạt động của bộ não, sau đó áp dụng cho những công nghệ hiện đạị
Để tiếp cận khả năng học, người ta đưa ra mô hình mạng nơron gồm các nơron liên
kết với nhau thành mạng phỏng theo cấu trúc mạng thần kinh của con ngườị
Mỗi nơron riêng lẻ có khả năng xử lý thông tin yếu, nhưng khi chúng được ghép với nhau thành mạng, thì khả năng xử lý thông tin sẽ mạnh hơn rất nhiềụ Mỗi cấu trúc mạng đều có một ưu điểm đặc thù, chúng cho ta một công cụ mạnh trong các lĩnh vực kỹ thuật điều khiển và kỹ thuật thông tin Một mạng nơron nhân tạo là
tập hợp một số lớn các phần tử xử lý (các nút hay các khối), thường được tô chức song song và được cấu hình theo kiến trúc đệ quỵ Cách ứng sử trên mạng nơron
nhân tạo giống như bộ não con người, nó chứng tỏ khả năng học, nhớ lại, và tổng
quát hóa từ dữ liệu huấn luyện
Mạng nơron nhân tạo là công cụ tốt trong việc giải quyết các bài toán như:
hợp và phân lớp đối tượng, xắp xi hàm, tối ưu hóa, định lượng vector, phân cụm đữ
liệu, Nó thay thé hiệu quả các cơng cụ tính tốn truyền thống để giải quyết các bài toán nàỵ
Nhận dạng là một lĩnh vực đóng vai trò quan trọng trong khoa học kỹ thuật
Trong hầu hết các vấn đề kỹ thuật ngày nay, ta đều phải xác định, nhận dạng được
các mô hình và đối tượng liên quan, để từ đó tìm ra giải pháp Nhận đạng mô hình là bài toán rat quan trong trong lý thuyết hệ thống Lý đo đơn giản là vì không thể phân tích, tổng hợp hệ thống khi khơng có mơ hình tốn học mô tả hệ thống Trong quá trình xây dựng mô hình hệ thông trên phương diện lý thuyết, người ta thường
không khảo sát được mọi ảnh hưởng của môi trường đến tính động học của hệ
thống, cũng như những tác động qua lại bên trong hệ thống một cách chính xác
tuyệt đốị Rất nhiều yếu tố đã bị bỏ qua, hoặc chỉ được xem xét đến như là một tác động ngẫu nhiên Bởi vậy, nếu nói một cách chặt chẽ thì những hiểu biết lý thuyết
ban đầu về hệ thống, mới chỉ có thê giúp ta khoanh được lớp các mô hình thích hợp Để có thể có được một mô hình cụ thể có chất lượng phù hợp với bài cu thé toán đặt
Trang 7trong thực tế, khi chúng ta nhìn thấy một vật gì đó, thì câu hỏi thường trực của mỗi
người là; vật đó có máy loại, và nó thuộc loại nào trong các loại có thể có
Đề giải quyết các bài toán nhận dạng, người ta đã đưa vào các cách tiếp cận
khác nhau, mỗi phương pháp tiếp cận trong những bài toán cụ thể đều có những ưu, nhược điểm riêng Phương pháp ứng dụng mạng nơron trong nhận dạng là một cách
tiếp cận mới và hiện đạị Nó có thể là công cụ rất mạnh để giải quyết các bài toán
trong lĩnh vực nàỵ
Nội dung của đề tài đi vào tìm hiểu và xây dựng các phần tử nơron cơ bản,
xem xét và nghiên cứu cầu trúc một mạng nơron, giới thiệu về mạng nơron nhiều
lớp với thuật toán lan truyền ngược Trọng tâm của đề tài đi vào tìm hiểu về mạng
nơron Kohonen (hay mạng nơron tự tổ chức — SOM)
Đề tài gồm ba chương
Chương 1, trình bày cấu trúc một phân tử noron cơ bản, các cầu trúc mạng
nơron nhân tạo thường gặp, thuật toán học, phân tích ưu nhược điểm của chúng, và
giới thiệu về thuật toán lan truyền ngược
Chương 2, tìm hiểu mạng nơron Kohonen
Chương 3, nhận dạng ký tự quang sử dụng mạng nơron Kohonen
Cuối cùng em xin cảm ơn các thày cô giáo, đặc biệt là PGS.TSKH Bùi Công
Cường đã tận tình chỉ dẫn cho em trong suốt thời gian làm đề tàị Xin cảm ơn các
bạn cùng lớp đã tạo điều kiện cho tôi được học tập và nghiên cứu trong môi trường
tốt
Hà nội, tháng 12 năm 20009
Chương 1 Giới thiệu về mạng nơron nhân tạo
Học máy là một ngành khoa học nghiên cứu các thudt toán cho phép máy
Trang 8Phân loại: Có hai loại phương pháp học máy chính
« Phương pháp quy nạp: Máy học/phân biệt các khái niệm dựa trên đữ liệu đã
thu thập được trước đó Phương pháp này cho phép tận dụng được nguồn dữ
liệu rất nhiều và sẵn có
« Phương pháp suy diễn: Máy học/phân biệt các khái niệm dựa vào các luật
Phương pháp này cho phép tận dụng được các kiến thức chuyên ngành để hỗ
trợ máy tính
Hiện nay, các thuật toán đều cố gang tận dụng được ưu điểm của hai phương pháp
nàỵ
Các ngành khoa học liên quan:
s« Lý thuyết thống kê: các kết quả trong xác suất thông kê là tiền đề cho rất
nhiều phương pháp học máỵ Đặc biệt, lý thuyết thống kê cho phép ước
lượng sai số của các phương pháp học máỵ
« Cac phương pháp tính: các thuật toán học máy thường sử dụng các tính toán
số thực/số nguyên trên dữ liệu rất lớn Trong đó, các bài tốn như: tối ưu
có/khơng ràng buộc, giải phương trình tuyến tính v.v được sử dụng rất phố biến
« Khoa học máy tính: là cơ sở đề thiết kế các thuật toán, đồng thời đánh giá
thời gian chạy, bộ nhớ của các thuật toán học máỵ
Ứng dụng: Học máy có ứng dụng rộng khắp trong các ngành khoa học/sản xuất,
đặc biệt những ngành cần phân tích khối lượng đữ liệu khổng lồ Một số ứng đụng thường thấy như:
« _ Xử lý ngôn ngữ tự nhiên: xử lý văn bản, giao tiếp người — máy,
« Nhận dạng: nhận dạng tiếng nói, chữ viết tay, vân tay, thị giác máy
Trang 9« Tìm kiếm
« Chẩn đoán trong y tế: phân tích ảnh X-quang, các hệ chuyên gia chân đoán
tự động
« Tin sinh học: phân loại chuỗi gene, quá trình hình thành gene/protein « _ Vật lý: phân tích ảnh thiên văn, tác động giữa các hạt
e - Phát hiện gian lận tài chính (financial fraud): gian lận thẻ tỉn dụng « - Phân tích thị trường chứng khoán (stock market analysis)
« - Chơi trò chơi: tự động chơi cờ, hành động của các nhân vật ảo
« _ Rơbốt: là tổng hợp của rất nhiều ngành khoa học, trong đó học zmáy tạo nên hệ thần kinh/bộ não của người máỵ
5 Các nhóm giải thuật học máy: Học có giám sát, học không giám sát, học nửa giám sát, học tăng cường
1.1 Câu trúc và mô hình mạng nơron l.T.TI Mô hình một noron sinh học
Phần tử xử lý cơ bản của một mạng nơron sinh học là một nơron, phần tử này có thể chia làm bốn thành phần cơ bản như sau: dendrites, soma, axon, và
synapses
- Dendrites: 1a phần nhận tín hiệu đầu vàọ
- Soma: 1a hat nhan
- Axon: 1a phan dan ra tín hiệu xử lý
- Synapses: 1a duong tin hiệu điện hóa giao tiếp giữa các nơron
Kiến trúc cơ sở này của bộ não con người có một vài đặc tính chung Một
cách tổng quát, thì một nơron sinh học nhận đầu vào từ các nguồn khác nhau, kết hợp chúng tại với nhau, thực thi tô hợp phi tuyến chúng để cho ra kết quả cuối cùng
Trang 10
Hình 1.1 M6t noron sinh học
Một nơron sinh học chỉ có một số chức năng cơ bản như vậy, ta nhận thấy khả năng xử lý thông tin của nó là rất yếụ Để có được khả năng xử lý thông tin hoàn hảo như bộ não con người, thì các noron phải kết hợp và trao đổi thông tin với nhaụ Ta hình dung sơ đồ liên kết, và trao đổi thông tin giữa hai noron như hình 1.2
Dendrites
Hình 1.2 Sự liên kết cúc nơ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 tốn học của mạng noron 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 xị, Xa, ., Xm, Va mot đầu ra y; như sau:
Trang 11
+ Ham téng
Xm ———X(Wim)
Đầu vào _ Trọng số liên kết Ngưỡng
Hình 1.3 Mô hình một noron nhân tạo
Giải thích các thành phần cơ bản:
- Tap cac đầu vào: Là các tín hiệu vào của nơron, các tín hiệu nay thường được đưa vào dưới dạng một vector m chiềụ
- - Tập các liên kết (các trọng SỐ): Mỗi liên kết được thể hiện bởi một trọng
số (thường được gọi là trọng số liên kết) Trọng số liên kết giữa tín hiệu vào thứ J cho nơron ¡ thường được ký hiệu là w¡ Thông thường các trọng
sỐ này được khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình học mạng
-_ Bộ tông (Hàm tông): Thường dùng để tinh tong 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 nay 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 đã chọ 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 [-I,I] 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 12
-11 _ Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi noron sẽ có tối đa một đầu rạ Về mặt toán học, cầu trúc của một nơron ¡ được mô tả bằng cặp biểu thức sau: y, = f (net, -6,) va net, = > wx, j=l
trong đó: xị, X;, .Xm là các tín hiệu đầu vào, cồn wi), Wi2,- Wim là các trọng số
kết nỗi của nơron thứ ¡, net; là hàm tổng, f là hàm truyền, 0, là một ngưỡng, y; là tín hiệu đầu ra của nơron
Như vậy, tương tự như nơron sinh học, nơron nhân tạo cũng nhận các tín
hiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các
Trang 13-12-e_ Đồ thị các dạng hàm truyền được biểu diễn như sau: ¥ ¥ Ya aL - 1 `" “NT S”x + * 0 1 (a) Hàm bước (b) Ham giéi han chat (c) Ham bac thang ¥ ~—————=—=Áá —— y a | i a ae ee sạ ca — x -1 -1 (d Ham ngutng đơn cực (2) Ham ngưỡng hai cực Hình 1.4 Đà thị các dạng hàm truyền 1.2 Câu tạo và phương thức làm việc của mạng noron
Dựa trên những phương pháp xây dựng nơron đã trình bày ở mục trên, ta có thể
hình dung mạng nơron như là một hệ truyền đạt và xử lý tín hiệụ Đặc tính truyền
đạt của nơron phần lớn là đặc tính truyền đạt tĩnh
Khi liên kết các đầu vào/ra của nhiều nơron với nhau, ta thu được một mạng nơron, việc ghép nối các nơron trong mạng với nhau có thê là theo một nguyên tắc
bất kỳ Vì mạng nơron là một hệ truyền đạt và xử lý tín hiệu, nên có thể phân biệt
các loại nơron khác nhau, các nơron có đầu vào nhận thông tin từ môi trường bên
ngoài khác với các nơron có đầu vào được nối với các nơron khác trong mạng, chúng được phân biệt với nhau qua vector hàm trọng số ở đầu vào w
Nguyên lý cấu tạo của mạng nơron bao gồm nhiều lớp, mỗi lớp bao gồm nhiều
noron có cùng chức năng trong mạng Hình 1.5 là mô hình hoạt động của một mạng noron 3 lớp với 8§ phần tử nơron Mạng có ba đầu vào là xạ, xa, xạ và hai đầu ra y;,
yạ Các tín hiệu đầu vào được đưa đến 3 nơron đầu vào, 3 nơron này làm thành lớp đầu vào của mạng Các nơron trong lớp này được gọi là nơron đầu vàọ Đầu ra của
Trang 14
-14:-các nơron này được đưa đến đầu vào của 3 nơron tiếp theo, 3 nơron này không trực
tiếp tiếp xúc với mơi trường bên ngồi mà làm thành lớp ẩn, hay còn gọi là lớp trung gian Các nơron trong lớp này có tên là nơron nội hay nơron an Dau ra của các noron này được đưa đến 2 nơron đưa tín hiệu ra môi trường bên ngoàị Các nơron trong lớp đầu ra này được gọi là nơron đầu rạ
Lop ta
Hình 1.5 Mạng noron ba lớp
Mạng nơron được xây đựng như trên là mạng gồm 3 lớp mắc nối tiếp nhau đi từ
đầu vào đến đầu rạ Trong mạng không tồn tại bất kỳ một mạch hồi tiếp nàọ Một
mạng noron có cầu trúc như vậy gọi là mạng một hướng hay mạng truyền thắng một hướng (Feed forward network), và có cấu trúc mạng ghép nối hoàn toàn (vì bất cứ một nơron nào trong mạng cũng được nối với một hoặc vài nơron khác) Mạng nơron bao gồm một hay nhiều lớp trung gian được gọi là mạng Multilayer
Perceptrons) (MLP-Network)
Mạng nơron khi mới được hình thành thì chưa có tri thức, tri thức của mạng sẽ
được hình thành dần dần sau một quá trình học Mạng nơron được học bằng cách
đưa vào những kích thích, và mạng hình thành những đáp ứng tương ứng, những đáp ứng tương ứng phù hợp với từng loại kích thích sẽ được lưu trữ Giai đoạn này
được gọi là giai đoạn học của mạng Khi đã hình thành tri 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
Trang 15
-14-nhau, được giải quyết chủ yếu đự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 rạ
se Nếu nhiệm vụ của một mạng 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ễụ Mạng nơron kiểu này được
ứng dụng trong lĩnh vực hoàn thiện mẫu, trong đó có một ứng dụng cụ thể là nhận dạng chữ viết
e Nhiệm vụ tổng quát của một mạng nơron là lưu giữ động các thông tin Dạng thông tin lưu giữ này chính là quan hệ giữa các thông tin đầu vào và các đáp
ứng đầu ra tương ứng, để khi có một kích thích bất kỳ tác động vào mạng,
mạng có khả năng suy diễn vả đưa ra một đáp ứng phù hợp Đây chính là chức năng nhận dạng theo mẫu của mạng nơron Đề thực hiện chức năng này, mạng nơron đóng vai trò như một bộ phận tố chức các nhóm thông tin
đầu vào, và tương ứng với mỗi nhóm là một đáp ứng đầu ra phù hợp Như
vậy, một nhóm bao gồm một loại thông tin đầu vào và một đáp ứng đầu rạ
Các nhóm có thể được hình thành trong quá trình học, và cũng có thể không
hình thành trong quá trình học
Hình 1.6 là một số liên kết đặc thù của mang noron Nơron được vẽ là các vòng tròn xem như một tế bào thần kinh, chúng có các mối liên hệ đến các nơron khác
nhờ các trọng số liên kết Tập hợp các trọng số liên kết này sẽ lập thành các ma
trận trọng số tương ứng
Mỗi một nơron có thể phối hợp với các noron khác tạo thành một lớp các
trọng số Mạng một lớp truyền thắng như hình 1.6ạ Một lớp nơron là một nhóm các
nơron mà chúng đều có cùng trọng số, nhận cùng một tín hiệu đầu vào đồng thờị
Trong ma trận trọng số, các hàng là thể hiện nơron, hàng thứ j có thê đặt nhãn như một vector w; của nơron thứ j gồm m trọng số wị¡ Các trọng số trong cùng
một cột thứ j (j=1,2, n) đồng thời cùng nhận một tín hiệu đầu vào xị
Wj = [Wiis W)25 — Wim]
Trang 16
Tại cùng một thời điểm, vector đầu vào x = [xị, X¿ , xạ] có thể là một nguồn
bên ngoài là cảm biến hoặc thiết bị đo lường đưa tới mạng ` te ` ‘<< x tủ 4 i ; vaỷ ow ` X; XI 2 NGA # + a Xm Sài G4 WwW XI ¥1 X2 3 Xm Ym w mm
(d) Mang noron hồi quy
Hinh 1.6 M6t sé dang mang noron 1.2.2 Mạng nơron truyền thắng nhiều lớp
Mạng nơron nhiều lớp (Hình 1.6.c) có các lớp được phân chia thành 3 loại sau đây:
Trang 17-e Lép vao 1a lớp nơron đầu tiên nhận tín hiệu vào x; (¡ = 1, 2, ., n) Mdi tin
hiệu x¡ được đưa đến tất cả các nơron của lớp đầu vàọ Thông thường, các
nơron đầu vào không làm biến đổi các tín hiệu vào x¿, tức là chúng không có
các trọng số hoặc không có các loại hàm chuyển đổi nào, chúng chỉ đóng vai trò phân phối các tín hiệụ
® Lớp ân là lớp nơron sau lớp vào, chúng không trực tiếp liên hệ với thế giới bên ngoài như các lớp nơron vào/rạ
e_ Lớp ra là lớp nơron tạo ra các tín hiệu ra cuối cùng 1.2.3 Mang noron phan héi
Mạng nơron phản hồi là mạng mà đầu ra của mỗi noron được quay trở lại
nối với đầu vào của các nơron cùng lớp được gọi là mạng Laeral như hình Ị6b
Mạng nơron phản hồi có thể thực hiện đóng vòng được gọi là mạng nơron
hồi quy như hình 1.6d Mạng nơron hồi quy có trọng số liên kết đối xứng như mạng
Hopfield, mạng luôn hội tụ về trạng thái ỗn định (Hình 1.6.b) Mạng BAM thuộc
nhóm mạng nơron hồi quy, gồm 2 lớp liên kết 2 chiều, không được gắn với tín hiệu
vào/rạ Nghiên cứu mạng nơron hồi quy mà có trọng số liên kết không đối xứng, thì sẽ gặp phải vấn đề phức tạp nhiều hơn so với mạng truyền thắng và mạng hồi quy
có trọng số liên kết đối xứng 1.2.5 Mang Hopfield
Mang Hopfield là mạng phản hồi một lớp, được chỉ ra trong hinh 1.6.b Cau
trúc chỉ tiết của nó được thể hiện trong hình 1.7 Khi hoạt động với tín hiệu rời rạc,
nó duge goi la mang Hopfield rdi rac, va cấu trúc của nó cũng được gọi là mạng hồi
quỹ
Trang 18
Hình 1.7 Cấu trúc của mạng Hopfield
Như mạng Hopfield đã vẽ ở trên, ta thấy nút có một đầu vào bên ngoài x; và một giá trị ngưỡng @,(j = 1,2, n) Một điều quan trọng cần nói ở đây là mỗi nút
không có đường phản hồi về chính nó Nút đầu ra thứ j được nối tới mỗi đầu vào
của nút khác qua trọng số Wij, với 1z j, (¡ = 1,2, ,n), hay nói cách khác w¡ = 0, (với
1= 1/2, nJ
Một điều quan trọng nữa là trọng số của mạng Hopfñeld là đối xứng, tức là
Wj = Wặ, (với 1,j = 1,2, ,n) Khi đó, luật cập nhật cho mỗi nút mạng là như sau:
y@ =sen] Sw,y +x,-0, i=l2,m 11)
jl jai
Luật cập nhật trên được tính toán trong cách thức không đồng bộ Điều này
có nghĩa là, với một thời gian cho trước, chỉ có một nút mạng cập nhật được đầu ra của nó Sự cập nhật tiếp theo trên một nút sẽ sử dụng chính những đầu ra đã được
cập nhật Nói cách khác, dưới hình thức hoạt động không đồng bộ của mạng, mỗi
đầu ra được cập nhật độc lập
Trang 19
-18-Có sự khác biệt giữa luật cập nhật đồng bộ và luật cập nhật không đồng bộ
Với luật cập nhật không đồng bộ thì sẽ chỉ có một trạng thái cân bằng của hệ (với
giá trị đầu đã được xác định trước) Trong khi đó, với luật cập nhật đồng bộ thì có
thể làm mạng hội tụ ở mỗi điểm cô định hoặc một vòng giới hạn 1.2.6 Mạng BAM
Mạng BAM bao gồm hai lớp và được xem như là trường hợp mở rộng của mạng Hopfield Ở đây ta chỉ xét mạng rời rạc, vì nó đơn giản và dé hiéụ
Hình Ị8 Cầu trúc của BAM
Khi mạng nơron được tích cực với giá trị đầu vào của vector tại đầu vào của một
lớp, mạng sẽ có hai mẫu trạng thái ổn định, với mỗi mẫu tại đầu ra của nó là một
lớp Tính động học của mạng thể hiện dưới đạng tác động qua lại giữa hai lớp Cụ
thê hơn, giả sử một vector đầu vào x được cung cấp cho đầu vào của lớp nơron ỵ Đầu vào được xử lý và truyền tới đầu ra của lớp y như sau:
y=ăWX) ; y, = Des >; voii=1,2, n (1.12)
Ở đó ặ) là hàm truyền, vector y’ bay giờ lại nuôi trở lại lớp nơron X và tạo nên
đầu ra như sau:
x’ =ăw'y’); +, =d| Š vụ với j = 1,2, m (1.13)
i=l
Trang 20
-19-Sau đó x° nuôi trở lại đầu vào của lớp y và tạo ra hàm ý` theo phương trình
(1.12) Quá trình này cứ tiếp tục, bao gồm các bước như sau:
y = ăwx) (truyền thang lần thứ nhất)
x? =ăw 3y) (truyền ngược lần thứ nhất) ỷ =ăwx?) (truyền thăng lần thứ hai)
x = aw y) (truyền ngược lần thứ hai) (1.14)
y*Đ=ăwx*”) (truyền thẳng lần thứ k/2) x = ăwPy*?) (truyền ngược lần thứ k/2)
Chú ý rằng trạng thái cập nhật trong phương trình (1.14) là đồng bộ theo phương
trình (1.12) và (1.13) Trạng thái cập nhật cũng có thể không đồng bộ theo phương
trình (1.12) và (1.13) với các nút ¡, j được chọn tự dọ Người ta đã chỉ ra rằng, hệ thống ổn định cho cả hai chế độ đồng bộ và không đồng bộ Tuy nhiên, chế độ đồng
bộ sẽ làm cho hệ thống hội tụ nhanh hơn nhiềụ
1.3 Các luật học
Thông thường, mạng nơron được điều chỉnh hoặc được huấn luyện để hướng các đầu vào riêng biệt đến đích ở đầu rạ Cấu trúc huấn luyện mạng được chỉ ra ở hình
dướị Ở đây, hàm trọng số của mạng được điêu chỉnh trên cơ sở so sánh đầu ra với
Trang 21-Để có được một số cặp vào/ra, ở đó mỗi giá trị vào được gửi đến mạng và giá
trị ra tương ứng được thực hiện bằng mạng là sự xem xét và so sánh với giá trị
mong muốn Bình thường, nó sẽ tồn tại một sai số vì giá trị mong muốn khơng hồn tồn phù hợp với giá trị thực Sau mỗi lần chạy, ta có tổng bình phương của tất cả các sai số Sai số này được sử dụng đề xác định các hàm trọng số mớị
Sau mỗi lần chạy, hàm trọng số của mạng được sửa đổi với đặc tính tốt hơn tương ứng với đặc tính mong muốn Từng cặp giá trị vào/ra phải được kiểm tra và
trọng số được điều chỉnh một vài lần Sự thay đổi các hàm trọng số của mạng sẽ
được dừng lại, nếu tông các bình phương sai số nhỏ hơn một giá trị đặt trước, hoặc đã chạy đủ một số lần chạy xác định (trong trường hợp này, mạng có thể không thoả mãn yêu cầu đặt ra do sai lệch còn cao) Có hai kiêu học:
¢ Học tham số: là các tham số về trọng số cập nhật kết nối giữa các noron ¢ Hoc cau tric: trọng tâm là sự biến đổi cấu trúc của các mạng nơron gồm số
lượng nút và các loại liên kết
Giả sử ma trận trọng số bao gồm tất cả các phần tử thích ứng của mạng nơron
Nhiệm vụ của việc học tham số là tìm ra được ma trận chính xác mong muốn từ ma trận gia thiết ban đầu (với cấu trúc của mạng nơron có sẵn) Để làm được điều này thì mạng nơron phải sử dụng các trọng số điều chỉnh, với nhiều phương pháp học
khác nhau để có thể tính toán gần đúng ma trận W cần tìm đặc trưng cho mạng Sau
đây là 3 phương pháp học: 1.3.] Học có giám sát
Học có giám sát: là quá trình học có tín hiệu chỉ đạo bên ngoài d (Hình 1.10)
Trong học có giám sát, thì tại mỗi thời điểm khi đầu vào được cung cấp tới mạng noron, phản ứng đầu ra mong muốn d tương ứng của hệ thống được đưa rạ Ở hình
(1.10), khi mỗi đầu vào xf° được đặt vào mạng, đầu ra mong muốn tương ứng a3
cũng được cung cấp tới mạng Hiệu giữa đầu ra thực yŸ° và đầu ra mong muốn d®9
được đo trong máy phát tín hiệu lỗị Máy này sẽ tạo ra tín hiệu lỗi cho mạng để hiệu
Trang 22
-21-chỉnh các trọng số của mạng, và với các hiệu -21-chỉnh này thì đầu ra thực sẽ tiến sát
với đầu ra mong muốn ANN y Đầu ra thực tế x +,» * Dữ liệu vào ` r Máy phát tín d Tín hiệu lỗi hiệu sai lệch Đầu ra mong muốn Hình 110: Học có giảm sát 1.3.2 Học củng cỗ
Tín hiệu chủ đạo d có thể lấy từ môi trường bên ngoài, nhưng tín hiệu này
không được đầy đủ, mà chỉ có một vai bit đại diện có tính chất kiểm tra quá trình tốt
hay xấụ Học củng cô cũng là một đạng của học có giám sát, bởi vì mạng vẫn nhận
một số tín hiệu từ bên ngoàị Nhưng tín hiệu phản hồi chỉ mang tính chất đánh giá
hơn là mạng tính chất chỉ dẫn Nó cho biết mức độ tốt hay xấu của một đầu ra đặc
biệt Tín hiệu củng cố bên ngoài thường được xử lý bằng máy phát tín hiệu đánh giá
dé tao ra nhiều hơn nữa các thông tin tín hiệu đánh giá, sau đó dùng đề điều chỉnh
các trọng số với mục đích đạt được tín hiệu đánh giá tốt hơn 1.3.3 Học không có giám sát ANN y Đầnra thực tế — Dữ liệu đầu vào Hình 1.11: Học không có giám sát
Trong phần học không có giám sát, sẽ không có thầy hướng dẫn, tức là không có tín hiệu đ cung cấp tới mạch phản hồị Điều này cho thấy, ta sẽ không biết
Trang 23
-22-đầu ra đạt giá trị gì Với loại này, thì các nơron tự xoay xở với các đữ liệu mẫu mà
nó có được, chứ không có “thầy” gợi ý cần luyện theo hướng nàọ Mạng phải tự
khám phá mẫu, đặc tính, sự tương quan hay loại đầu vàọ Trong khi khám phá
những đặc tính này, tham số của mạng sẽ bị thay đôị Quá trình này được gọi là tự
tổ chức Một ví dụ điển hình là quá trình phân loại đối tượng không có thầy, những
lớp thích hợp được hình thành bằng cách khám phá sự tương tự và không tương tự
trong số các đối tượng
Hình (1.12) mô tả câu trúc chung của quá trình học của ba phương pháp học
đã nêu ở trên Trong tín hiệu vào x; (j = 1,2, ,m), có thể được lấy từ đầu ra của các
nơron khác hoặc có thể được lẫy ra từ bên ngoàị Trọng số của nơron thứ ¡ được thay đổi tùy theo tín hiệu ở đầu vào mà nó thu nhận giá trị đầu ra của nó
Trang 24-23-Từ hình (1.12) ta thấy, vector trong sé w; = [W¡i, Wø, , Wịm|” có số gia tỷ lệ với tín hiệu vào x và tín hiệu học r Vector trọng số ở thời điểm (t+1) được tính như
sau:
w+l) = w(Ð + ,(w;(9,x(9,đ()).x( (1.17)
Phương trình liên quan đến sự biến đổi trọng số trong mạng nơron rời rạc, và tương
ứng với sự thay đổi trọng số trong mạng nơron liên tục theo biểu thức sau:
aM: _ ar x(t) dt (1.18)
Vấn đề quan trọng trong việc phân biệt luật học cập nhật trọng số có giám sát hay không có giám sát, hoặc học củng cổ là tín hiệu học r Như vậy, đối với tín hiệu
học r thì nó làm thế nào để thay đồi hoặc cập nhật trọng số trong mạng nơron
Mạng nơron nhân tạo có các tính chất sau:
e Là hệ phi tuyến
e Là hệ xử lý song song
e_ Là hệ học và thích nghỉ: Mạng được luyện từ số liệu quá khứ, có khả năng tự
chỉnh đầu vào khi số liệu đầu vào bị mắt
e La hé nhiéu biến, nhiều đầu vào, nhiều đầu ra (MISO), rất tiện dùng khi điều khiến đối tượng có nhiều biến số
1.4 Thuật toán lan truyền ngược
Thuật toán lan truyền ngược được ứng dụng để giải các bài toán điều khiển các
hệ phi tuyến phức tạp và bất ồn định Lan truyền ngược là một phương pháp cho
phép xác định tập trọng sô tốt nhất của mạng để giải một bài toán đã chọ Việc áp
dụng phương pháp lan truyền ngược là một quá trình lặp đi lặp lại nhiều lần hai tiến
trình chính: lan truyền tiến để thực hiện ánh xạ và lan truyền ngược sai số để cập
nhật các trọng số Các trọng số của mạng là các hệ số của mô hình Phương pháp giảm gradient được dùng để cập nhật những hệ số này sao cho giảm thiểu được sai
số của mô hình
Trang 25
Hình 1.14: Mạng 3 lớp lan truyền ngược
Thuật toán: Đầu tiên ta cho lan truyền thắng suốt trong mạng, qua các phần tử
nơron và được tiếp tục với các hàm kích hoạt của phần tử noron Các mạng được
nghiên cứu cùng với thuật toán học lan truyền ngược được gọi là mạng lan truyền
ngược
Huấn luyện các cặp vào/rạ
{a™, a®)), k = 1,2, p
Thuật toán cung cấp một thủ tục cho việc thay đổi cac vector trong s6 trong
mạng, đầu ra của mạng được lan truyền ngược trở lại lớp đầu vào cho đúng các
mẫụ Cơ sở cho việc cập nhật các trọng số là phương pháp độ đốc Gradient
® d), thuật toán lan truyền ngược thực hiện các bước như Với cặp vào ra (x
sau:
Đầu tiên, mẫu xf° được lan truyền từ lớp đầu vào qua các lớp ân đi đến lớp đầu
°_ Sau đó, sai số gitta y và d') được lan truyền ngược trở lại từ E y E
ra có kết quả là ý
lớp đầu ra tới lớp đầu vào đề cập nhật trọng só Hình (1.14) diễn giải thuật toán lan
truyền ngược Kết quả có thể mở rộng sang mạng nơron nhiều lớp
Trên hình (1.14) có m phần tử nơron đầu vào, 1 phần tử nơron ở lớp ẩn, và n phân tử nơron ở lớp đầu rạ Đường nét liền diễn tả lan truyền thắng của các tín hiệu,
Trang 26
-25-đường nét đứt diên tả lan truyền ngược của các sai số Đầu tiên huấn luyện vào cặp vào/ra ký hiệu (x,d) để cho đơn giản ta bỏ chỉ số k Khi một mẫu đầu vào x được
đưa vào thì các phần tử trong mạng sẽ được tính như sau: Đầu vào phần tử q của lớp ẩn sẽ được tính theo phương trình: nói, = vu x, (1.19) j=l Phương trình đầu ra của q sẽ la: z, = ănet,)= af Sv, 2) (1.20) jal Đầu vào phân tir thir i của lớp dau ra sé là: L I 1H net, => Mu, >> » Vụ) (1.21) g=I 41 j=l Phương trình đầu ra của phần tử nowron thứ ¡ sẽ là: I ] m y, = ănet,) = acy” WigZq) = ay” w,,.ă> v„x,)) (1.22) 4=l q=I jal
Các chỉ số trên được tính toán cho sự lan truyền tiến của các tín hiệu đầu vào
xuyên suốt qua các lớp mạng nơron Trước khi ta đề cập đến các tín hiệu sai số của
sự lan truyền ngược, ta sẽ định nghĩa một hàm mục tiêu như sau:
12 12 2 12 h :
E(w) = 24 —y)?= 22t: -ănet,)| = Sa m4 Sa Ì (1.23) Sau đó, theo phương pháp độ dốc Gradient, các trọng số nói giữa lớp ân và lớp đầu
ra được cập nhật bởi Auw;„, và nó được tính theo công thức sau: 1q > ôE Aw, = ¬.' ơm, (1.24) 1.24 Sit dung cdc céng thire (1.21-1.23) va thay d4i luat voi = , ta co: 1q
Aw, =" = [2a || =(d, -y,Já ner, Jz, |=5,,2, (1.25)
oy; || ônet, |] Onet, || Ow,,
Trong đó, ở,, là tín hiệu sai số, chỉ số dưới thứ hai là điểm thứ ¡ trong lớp đầu rạ
Sai số tín hiệu được định nghĩa bởi:
Trang 27
_ OF _ |G) & |_y _ yyy
ea Onet, =| Z| ld, - y, Ja’ (ner,)] (1.26) Trong d6, net; 14 dau vao cia phan tr noron thứ ¡ trong lớp đầu ra va
á(net,) = đang) ‘ Ônet,
Bây giờ ta phải tính đầu ra z¿ của lớp an:
Với trọng số nối giữa đầu vào và các lớp ân, ta sử dụng thay đổi luật cùng phương
pháp độ dốc Gradient, ta cập nhật trọng số đề kết nói giữa phần tử thứ j của lớp đầu
vào với phần tử thứ q của lớp ân Khi đó:
Onet o Onet
ve - | = | - ¬| Wa Cnet, m | ni vy | - aa ai Ơ, Ơnet, Wy | —_—
Từ cơng thức (1.23), thi mỗi sai số [d;-y;], với i=1,2, ,n 1a mot ham cia zỵ
Đánh giá thay đổi luật ta có:
Av, = DAC ~ y, á(net,).w, |á (net, )-x, (1.28)
Sử dụng công thức (1.26), ta có thé viết lai công thức (1.28) như sau:
Av, = ay [5,,.,, Já (net, ).x, =10,,%; (1.29)
Ở đây, ô,„ là sai số tín hiệu của phần tử thứ q của lớp ân và được định nghĩa như dưới đây:
6 n
ôy =—== q _ Onet, a4 | a, énet, |= acne 5,0, q = q (1.30)
Trong đó, net, là đầu vào phần tử thứ q của lớp ẩn
Tín hiệu sai số của một phần tử trong lớp ẩn khác so với tín hiệu sai số của một phần tử trong lớp đầu ra, như đã được chỉ ra trong công thức (1.30) và (1.26)
Do có sự khác nhau này, nên các thủ tục cập nhật các trọng số trên được gọi là luật
học delta tổng quát Chúng ta xem xét công thức (1.30), sai số tín hiệu ô,„ của phần
tử lớp ân q có thê được xác định trong các mẫu của các tín hiệu sai số ở, của các phan tử ở lớp ra thứ ¡ (y¡) cung ứng Các hệ số là các trọng số được sử dụng cho lan
Trang 28
-77-truyền thắng, nhưng ở đây chúng -77-truyền các tín hiệu sai số (ð,„) ngược trở lại, đó chính là các đường nét đứt trong hình (1.13) Điều này đã chứng tỏ được đặc điểm
quan trọng của thuật toán lan truyền ngược - luật cập nhật cục bộ, đây chính là tính toán trọng số thay đổi dựa vào sự kết nối, và chúng ta chỉ cần giá trị ở hai đầu của kết nối nàỵ
Sự đạo hàm ở trên có thể đễ dàng mở rộng cho mạng có nhiều hơn một lớp
ân, bằng cách sử dụng chuỗi luật liên tiếp Trong trường hợp chung, với số lớp tùy
ý, thì sự lan truyền ngược được cập nhật luật ở dạng sau:
Auy =nỗ,x; “lỗ, „„ x„„.¡— (L31)
Ở đây, (output-i) và (nput-j) quy vào hai đầu của sự kết nối từ phần tử thứ j
tới phần tử thir i, x; 1a dau vao cudi cùng kích hoạt từ một phần tử lớp ấn, hoặc từ
một đầu vào bên ngoàị Ngoài ra, ở, là tín hiệu học được định nghĩa bởi công thức
(1.26) với đầu ra hoặc lớp cuối cùng của các trọng số kết nối, và được định nghĩa
bởi công thức (1.30) cho tất cả các lớp khác Khi hàm sigmoid lưỡng cực được sử dụng làm hàm kích hoạt, đồng thời sử dụng (1.26) và (1.30) ta có hàm y được xác định như sau: ?=giuult=——~ 1+ —net é Khi dO tacd: atte = =![Ĩả(e0|=>d- y2) net 2 2 1 Bà =s-ỷj#, =>, (1.32) 5, = 50-299 5,,m, (1.33) i=l
Thuật toán lan truyền ngược
Xem xét một mạng với Q lớp lan truyền ngược, q=1,2, ,Q; với “net, và %y, lần lượt là đầu vào và đầu ra của khối trong lớp thứ q Mạng có m noron dau vao, |
noron ở lớp ẩn, vàn nơron đầu rạ Với ®w¿ là trọng số nối từ Tw; đến %y,
Trang 29
-28-Đầu vào: các cdp hudn luyén {x, d™ | k=1,2, ,.p}, 6 d6 gid tri dau vao cua
phần tử cuối cùng bằng -1, tite 1A x, = -1 Bước 0 (Đặt giá trị ban đầu)
-_ Lựa chọn bước tính (Hằng số học) 0<n<1 và E„ạ (sai số lớn nhất cho
phép)
- _ Chọn các trọng số ban đầu nói từ phần tử thứ j của lớp (q — 1) đến phần
tử thứ ¡ của lớp q law, có giá trị nhỏ và ngẫu nhiên
- Cho sai số E=0 và k= 1
Bước 1 (Vòng lặp huấn luyện)
Áp dụng mẫu vào thứ k, cho lớp đầu vào q=1 Khi đó ta có:
q yi= ‘y= x” cho tất cả các i= 1,2,3, m (k) (1.34) Bước 2 (Lan truyền thắng)
Lan truyền tín hiệu thắng xuyên suốt mạng sử dụng công thức (1.35) cho mỗi
¡ và q cho tới khi các đầu ra của lớp đầu ra °y; được thực hiện
ty, = ă‘net,) = a> ‘wiy,) (1.35)
J
Bước 3 (Đo lường sai số đầu ra)
Tính toán giá trị sai lệch và tín hiệu sai lệch °ở, cho lớp đầu ra như sau:
E= 3 9-92 +E; (1.36)
i=l
Sổ, = (d{—°y,).á(Pnet;) (1.37)
Trang 30-Bước 4 (lan truyền ngược sai số)
Các sai số lan truyền ngược với mục đích để cập nhật các trọng số và
tính toán các tín hiệu sai lệch “"'%,cho các lớp xử lý:
Aw, =n 16, Py, 3 2 wre =I wot +A4w,, (1.38)
5, =aŒ ne,)3,0w,"ổ,; — vớiq=Q,Q-1, 2 (139) J
Trong đó:
A‘w,
- ° là sai lệch tại thời điểm tính của giá trị trọng số liên kết cập nhật mới và cũ, liên kết từ phần tử thứ j của lớp q-1 dén phan tt i của lớp q
- — " là giá trị trọng số liên kết cập nhật mới từ phần tử thứ j của lớp
(q-1) đến phan tt i của lớp q
_ là giá trị trọng số liên kết cũ từ phần tử thứ j của lớp (q-1) đến phần
tử I của lớp q
- "Win hiệuzmzùs.phẫn thị cần lớpfiri,
Bước 5 (Sau mỗi vòng lặp)
Kiểm tra xem đã lặp hết các giá trị mẫu huấn luyện chưa, nếu chưa quay
vòng hết (tức là k<p) tang k=k+1, và nhảy tới bước 1, ngược lại (tức k=p) thi
chuyển sang bước 6
Bước 6 (Kiểm tra tổng sai số)
Kiểm tra sự khác nhau giữa tổng sai số và sai số cho phép:
-_ Nếu tổng sai số nhỏ hơn sai số cho phép (tức là E<E„;,) thì kết thúc quá
trình huấn luyện, và ghi lại các giá trị trọng số cuối cùng
- Trái lại, thì lại gán E=0, k=1 và bắt đầu một quá trình huấn luyện mới
bằng cách nhảy tới bước 1
1.5 Kết luận
Trong chương này, chúng ta tìm hiểu một mạng nơron và thuật toán lan truyền ngược Quá trình học của mạng truyền thắng chỉ ra một phương thức để
Trang 31
-mang noron nhan dang mét mau, né gidng nhu qua trình học của lan truyền ngược,
đó là mô tả một quá trình mạng noron sẽ được huấn luyện
Một mạng nơron truyền thẳng là một mạng mà ở đó các noron chỉ được kết
nỗi tới một lớp tiếp theọ Không có kết nối giữa các noron với các lớp trước hoặc với chính nơron đó Thêm vào đó, các nơron sẽ không kết nối tới cdc noron qua xa
ở lớp tiếp theọ Một mẫu được xử lý bởi sự truyền thắng, độ lệch và các trọng số kết nỗi sẽ được áp dụng
Các mạng nơron được huấn luyện bằng cách sử dụng thuật toán lan truyền
ngược Thuật toán lan truyền ngược là một dạng huấn luyện có giám sát Mạng nơron được đưa vào dữ liệu huấn luyện cho cho ra kết quả, các kết quả này được so sánh với các kết quả được mong đợị Sự khác nhau giữa các kết quả thực tế và các kết quả mong đợi sẽ có một mức sai số nào đó Để giảm thiểu sai số này, người ta tiến hành sử dụng thuật toán lan truyền ngược đề điều chỉnh các trọng số và độ lệch của mạng Đây là cách mà sai số được giảm đáng kê Trong chương tiếp theo, chúng ta sẽ tìm hiều về mạng nơron Kohonen Sự khác nhau quan trọng nhất giữa
mạng nơron Kohonen và mạng nơron lan truyền ngược là phương thức huấn luyện
Phương thức lan truyền ngược sử dụng phương thức huấn luyện có giám sát Còn mạng nơron Kohonen sử dụng phương thức huấn luyện không giám sát
Trang 32
-31-Chương 2 Tìm hiểu mang noron Kohonen
2.1 Giới thiêu
Trong các kiêu khác nhau của mạng nơron, mạng nơron Kohonen giống với
mạng nơron sinh học hơn cả về cấu tạo lẫn cơ chế học Mạng nơron nhân tạo này lần đầu tiên được giới thiệu bởi Kohonen vào năm 1982, nó được biết đến như là ánh xạ đặc trưng tự tố chức (SOM) Ánh xạ tự tổ chức của Kohonen còn được biết
đến là một trong những mô hình khá đơn giản của mạng nơron, và người ta thường gọi đó là mạng nơoron Kohonen
Mạng nơron Kohonen (hay nơron tự tô chức) mô hình hóa cách hoạt động bộ não của con người, mặc dù nó khá đơn giản Chúng ta có thể nhận được một số ý
tưởng cách bộ não lưu trữ hình ảnh và cách nó nhận dạng các hình ảnh
Cách xử lý thông tin các mạng nơron khác thường chỉ quan tâm đến giá trị và
dấu hiệu của thông tin đầu vào, chưa quan tâm khai thác các mối liên hệ có tính chất
cấu trúc trong lân cận của các vùng dữ liệu mẫu, hay toàn thê không gian Nhưng trong mạng nơron Kohonen đã quan tâm đến các yếu tố nàỵ
Tự tổ chức trong mạng nơron là một trong những chủ đề cuốn hút trong
mạng noron Một mạng nơron như vậy có thể được luyện để tìm ra các quy luật và
các tương quan, các giá trị nhập vào và dự đoán các kết quả tiếp theọ Các nơron của mạng thông qua quá trình luyện cạnh tranh để nhận ra một nhóm các đối tượng đầu vào tương đương nhaụ Mục đích chính của việc luyện trong mạng nơron
Kohonen là nhận dạng một nhóm các vector đầu vào cùng loạị
Trong phản tiếp theo, chúng ta có thê chỉ ra hình ảnh được lưu trữ và nhận
đạng với mạng noron Kohonen Việc thi hành mạng nơron Kohonen có thể được
thay thế bởi một thuật toán tương ứng mà dễ dàng thi hành, và luôn luôn được sử
dụng trong các ứng dụng của mạng nơron Kohonen Chúng ta gọi thuật toán đó là
thuật toán mạng nơron tự tổ chức (Kohonen, 1988) hay ánh xạ tự tổ chức SOM Ý
tưởng đáng chú ý của thuật toán này là ánh xạ các đặc trưng topo tự tổ chức nhằm
bảo toàn trật tự sắp xếp các mẫu trong không gian biểu diễn nhiều chiều sang một
Trang 33
32-không gian mới với các mảng nơron có số chiều nhỏ hơn, thường là hai chiềụ Đây
là một phép chiếu phi tuyến đem lại một “ánh xạ đặc trưng” hai chiều, nó có thể
được sử dụng trong việc phát hiện và phân tích những đặc trưng trong không gian đầu vàọ Ta hiểu điều này như là bảo toàn cấu trúc các đặc trưng Trong mạng nơron Kohonen, các vector tín hiệu đầu vào gần nhau sẽ được ánh xạ sang các nơron lân cận trong mạng
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, Có thể xem SOM là một lớp điển hình, nhưng rất đơn giản của các mạng nơron Kohonen
2.2 Mang noron Kohonen
Mạng luyện không không có thầy hướng dẫn, là một kiểu luyện mà ở đó các
nơron tự xoay xở với các dữ liệu mẫu mà nó có được chứ khơng có “Ơng thầy” gợi ý cần luyện theo hướng nàọ
Tự mình khám phá những quan hệ đang được quan tâm, ví dụ về các dạng
( pattems), các đặc trưng (features ) từ dữ liệu vào (nput data) sau đó chuyển thanh cai ra (outputs) Nhu vay thuc chất : đó là các mạng tự tổ chức (hay mạng
nơron Kohonen)
Định nghĩa: Mạng noron Kohonen là mạng có khả năng sử dụng những kinh
nghiệm của quá khứ đề thích ứng với những biến đổi của môi trường (không dự
báo trước) Loại mạng này thuộc nhóm hệ học, thích nghi không cần có tín hiệu chỉ đạo từ bên ngoàị
Trang 3433-Gọi s(x), s(y) là hàm chuyến tín hiệu, giả thiết đó là hàm đơn điệu không
giảm liên tục như dạng hàm Sigmoid
Phương thức biến đổi trọng số được gọi là luật luyện Hebb, quy tắc luyện
đơn giản theo dạng Hebb cho bởi phương trình :
._ đự()
=, =e +#;(y;).s,(,) 2.40) Bây giờ ta xét một số trường hợp riêng:
- Quy tắc luyện cạnh tranh (Competitive Learning Rule - Grossberg 1969,
Rumelhart 1986)
w, = 5,078; @))— wy) (2.41)
ở đâ 1
ở đây si)“ TC c>Ũ (2.42) - Nếu đùn 8 §,(x,) =x =x, tathu duge: Q
Quy tắc luyện cạnh tranh tuyến tính (the Linear competitive learning rule)
Wụ =#,(y,)ŒXj — Wu) (2.43)
Trường hợp riêng quan trọng là quy tắc “ thắng lấy tất cả - the winner-take-all
learning rule “ của Kohonen, giải thích để hiểu qua bài toán phân cụm tập
mau y = {x! x? xr} thành n cụm, với n đã chọ
Kí hiệu XER", W,=(Wn,Wj, ,W, )c g”, 0 là hệ số học
Tại mỗi vòng lặp k, quy tắc luyện gồm 2 bước :
1/ Bước tìm cái khớp nhất (matching) - tìm noron tạm gọi là nơron thắng (theo
nghĩa gần mẫu nhất), sử dụng công thức sau:
y=max(, y„)= —, _ (2.44) (Phương pháp tính tích vô hướng)
lx
2/ Tính toán sai số và điều chỉnh trọng số
Ký hiệu e; là sai số ở cột thứ j, w¿ là biểu điễn cho cột thứ j của ma trận trọng số w,
sai sô này được tính theo công thức sau:
e¡ = IIx-wiil (2.45)
Trang 35
-34-Nếu tổng sai số chưa nằm đưới mức cho phép, ta điều chỉnh trọng số theo công
thức:
w, =w, +ăx,—w,) với k=l, m (2.46)
Khi một mẫu được đưa tới một mạng Kohonen, những nơron được chọn là
nơron thắng (winner) (nơron thích hợp nhất theo nghĩa mà ta đặt ra) Nơron thắng
này là đữ liệu đầu ra từ mạng Kohonen Thông thường, các nơron thắng này tương ứng với các nhóm trong dữ liệu đưa vào mạng Kohonen
Mạng Kohonen được huấn luyện trong một chế độ không có giám sát Sử dụng
mạng Kohonen này, đữ liệu có thể được phân loại thành từng cụm Chúng ta sẽ xem xét mạng Kohonen qua quá trình huấn luyện
2.2.1 Mạng noron Kohonen nhận dạng
Ta sẽ xem việc huấn luyện mạng noron Kohonen như thế nào để nhận dạng đúng các mẫu mà ta mong muốn Chúng ta bắt đầu bằng cách xem xét cầu trúc của mạng nơron Kohonen
2.2.2 Cấu trúc của mạng nơron Kohonen
Mạng nơron Kohonen chỉ bao gồm một lớp dữ liệu đầu vào và một lớp dữ
liệu đầu ra của các nơron và nó không chứa lớp an
Lớp đữ liệu đầu vào đối với mạng nơron Kohonen là các nơron đầu vàọ Các nơron đầu vào này tạo thành mẫu đữ liệu đầu vào của mạng Đối với mạng noron Kohonen, ta nên chọn dữ liệu đầu vào chuẩn hóa trong khoảng giữa -1 và 1 Khi
thực thi mẫu dữ liệu đầu vào, mạng sẽ tạo ra các noron đầu rạ
Lớp đầu ra của mạng nơron Kohonen rất khác với lớp đầu ra của mạng nơron truyền thẳng Đối với mạng truyền thắng, nếu chúng ta có một mạng nơron với 5 nơron đầu ra, chúng sẽ có thể cho kết quả bao gồm 5 giá trị Còn trong mạng nơron Kohonen chỉ có một nơron đầu ra cho ra một giá trị Giá trị duy nhất này có thể là đúng hoặc saị Dữ liệu đầu ra từ mạng nơron Kohonen thường là các chỉ số của
noron (Vi du noron sé 5, ) Cau trac đặc trưng của mạng nơron Kohonen được chỉ
ra trong hình 2.1
Trang 36
35-Dữ liệu vàn từ mỗi nh " ngoai Lop vao ^ } —— oo era Nơron thẳng (winner)
Hinh 2.1: M6t dang mang noran Kohonen
Bây giờ, chúng ta xem xét mạng noron Kohonen xử lý thong tin như thế nàọ Để kiểm tra quá trình này, chúng ta xem xét một ví dụ sau:
Ví dụ
Chúng ta sẽ xém xét một mạng nơron Kohonen đơn giản Mạng này sẽ chỉ có
2 nơron đầu vào, và 2 noron đầu rạ Dữ liệu đầu vào được cho là 2 nơron được chỉ
ra trong bảng 2.1 và các trọng số kết nối giữa các nơron trong bảng 2.2 11->01 (0.1| ae 12->01 |0.2 Nơronvào 1 (I11)|0.5 | 11->02 |0.3| Ngron vo 2 (12) [0.75] 12->02 (0.4 Bang 2.1 Bang 2.2
Sử dụng các giá trị này, chúng ta xem xét nơron có thể thắng và cung cấp đữ liệu đầu rạ Chúng ta bắt đầu bằng cách chuẩn hóa dữ liệu đầu vàọ
2.2.3 Chuẩn hóa dữ liệu đầu vào
Mạng nơron Kohonen đòi hỏi dữ liệu đầu vào phải được chuẩn hóạ Yêu cầu
của mạng noron Kohonen là đữ liệu đầu vào của nó phải được phân hoạch trên miền xác định giữa -I và 1 Mỗi đữ liệu đầu vào nên sử dụng hoàn toàn miền xác định, vì
nếu các noron dau vào chỉ sử dụng các số giữa 0 và 1, thì thành quả của mạng nơron sẽ không cao (bi ton thất)
Trang 37
-Để chuẩn hóa đữ liệu đầu vào, chúng ta sẽ tính toán độ dài vector (vector
length) của các dữ liệu đầu vào, hoặc vector đầu vàọ Trong trường hợp này độ đài vector sé la: (0.5 * 0.5) + (0.75 * 0.75) = 0.8125
Vậy trường hợp trên sẽ có độ dài vector là 0.8125 Sử dụng độ dài này, chúng ta có thể xác định được hệ số chuẩn hóạ Hệ số chuẩn hóa là số nghịch đảo
của căn bậc hai độ dài vector đầu vàọ Trong trường hợp trên thì hệ số chuẩn hóa là:
1
2/0.8125
Tính toán giá trị trên cho kết quả hệ số chuẩn hóa là 1.1094 Hệ số chuẩn hóa này sẽ sử dụng cho bước tiếp theo, đó là tính toán đầu ra cho nơron
2.2.4 Tính toán dữ liệu đầu ra của noron
Để tính toán dữ liệu đầu ra, vector dữ liệu đầu vào và các trọng số kế nối
nơron đều phải được xem xét Thứ nhất, tính tích vô hướng của hai vector vector
đầu vào và vector các trọng số liên kết Để tính toán tích vô hướng giữa hai vector
này, ta thực hiện như saụ
Ta bat đầu tính toán cho noron thức nhất Thuật toán Kohonen cho việc lấy tích vô hướng hai vector của vector đầu vào và vector trọng số được tính như sau:
0.5 0.73e|0.1 0.2|= (0.5*0.75) +(0.1*0.2)
Phép tính toán trên "đot product" cho kết quả là 0.395 Tính toán này sẽ được
thực hiện cho nơron đầu ra đầu tiên, và nó sẽ được thực hiện như vậy đối với mỗi
nơron đầu ra tiếp theọ
Bây giờ, dữ liệu đầu ra này phải được chuẩn hóa bằng nhân kết quả của "dot
Trang 38-_37-Vi du, để biến đổi chuỗi 0101 về số lưỡng cực ta làm như sau:
0=-1
1=1 O=-1 1=1
Do dit ligu dau vao duge chuan héa trong khodng [-1,1] nên ta phải thực hiện
chuẩn hóa tương tự đối với noron đầu rạ Để lập được bản đồ, ta cộng thêm 1 vào
kết quả rồi lấy 1⁄2 kết quá đó Theo kết quả trên có kết quả đầu ra là 0.438213, và kết
quả trong đữ liệu đầu ra cuối cùng là :
(0.438213+1)/2 = 0.7191065
Giá trị 0.7191065 là dữ liệu đầu ra của nơron đầu tiên Giá trị này sẽ được so
sánh với các dữ liệu đầu ra của nơron khác Bằng cách so sánh các giá trị này,
chúng ta có thể xác định được nơron “ thắng”
2.2.6 Chon noren thang
Nếu chúng ta muốn xác định được một nơron đầu ra thắng, chúng ta phải tính toán giá trị cho nơron đầu ra thứ haị Bây giờ, chúng ta sẽ xem nhanh quá trình tính toán cho nơron đầu ra thứ haị
Nơron dữ liệu đầu ra thứ hai sẽ sử dụng hệ số chuẩn hóa giống như đã sử
dụng để tính toán cho nơron đầu ra đầu tiên Theo trên ta có hệ số chuẩn hóa là
1.1094 Chúng ta áp dụng phương pháp tính tích vô hướng cho trọng số của nơron đầu ra thứ hai và vector đữ liệu đầu vào, chúng ta sẽ nhận được một giá trị là :
10.5 0.751*10.3 0.41 = (0.5*0.75)+(0.3*0.4) = 0.45
Giá trị này được nhân với hệ số chuẩn hóa 1.1094, chúng ta nhận được kết
qua 1a 0.49923
Bây giờ chúng ta đã có gid trị đầu ra cho mỗi nơron Nơron đầu tiên có giá trị
đầu ra là 07191065 và nơron thứ hai có một giá trị đầu ra là 0.49923 Dé chon nơron thắng, chúng ta chọn giá tri của dữ liệu đầu ra là lớn nhất Trong trường hợp này thì nơron thắng là nơron đầu ra đầu tiên với giá trị đầu ra là 0.7191065
Như vậy ta đã xác định được giá trị đầu ra của mang noron Kohonen Ta
thấy các trọng số giữa nơron đầu vào và nơron đầu ra xác định đữ liệu đầu rạ Trong
Trang 39
-phan sau, chúng ta sẽ điều chỉnh các trọng số này để nó cung cấp dữ liệu đầu ra phù
hợp với cái mà ta mong muốn
2.2.7 Quá trình học của mạng Kohonen
Toàn bộ quá trình huấn luyện cho một mang nơron Kohonen cần phải lặp lại
qua vài công đoạn Nếu sai số đã tính toán của mạng nơron Kohonen ở mức thấp
hơn mức có thể chấp nhận được thì sẽ hoàn tất quá trình huấn luyện Để tính toán tỉ
lệ sai số cho mạng nơron Kohonen, ta sẽ điều chỉnh các trọng số cho mỗi công
đoạn
Quá trình huấn luyén cho mang noron Kohonen là luyện cạnh tranh nên mỗi
tập huấn luyện sẽ có một nơron thắng Nơron thắng này sẽ có trọng số được điều
chỉnh sao cho ngay lập tức nó sẽ tác động trở lại mạnh mẽ hơn trong dữ liệu đầu
vào ở lần tiếp theọ Sự khác nhau giữa các nơron thắng sẽ dẫn tới sự khác nhau giữa
các mẫu đầu vào tiếp theọ
Chúng ta xem xét toàn bộ quá trình liên quan đến việc huấn luyện mạng
nơron Kohonen, Các bước được tóm tắt trong hình 2.2
Từ hình 2.2 ta thấy, mạng noron Kohonen được huấn luyện bởi các cơng
đoạn tuần hồn cho đến khi một trong hai vấn đề sau xảy ra:
- _ Nếu tính toán các sai số ở mức thấp hơn mức có thể chấp nhận được thì nhiệm vụ của chu kỳ sẽ hoàn thành quá trình huấn luyện
- Néu tat ca các tỉ lệ sai số chỉ thay đổi bởi đa số cận biên, thì chu kỳ riêng
lẻ này sẽ bị loại bỏm và các trọng số lại được khởi tạo lại với các gia tri ngẫu nhiên, đông thời một chu kỳ huấn luyện mới lại bắt đầụ Chu kỳ
huấn luyện này sẽ tiếp tục chu kỳ huấn luyện trước và nó sẽ phân tích các
công đoạn đề đưa ra kết quả; hoặc là chu kỳ bị loại bỏ hoặc tạo ra một tập
các trọng sô đó mà có mức sai số có thê châp nhận được
Trang 40
( Bắt đầu ) Đã quá số chu kỳ xác định? No > Khởi tạo ngẫu nhiên ma trận trọng số r ( Tinh toán sai sô 4
Gan ma trận trọng số này thành Kiểm tra sai số
ma tran trong so tot nhat xem cố ở mức châp nhận được không? † Yes No = :
Thực hiện huân luyện, dieu Nếu có ma trận chỉnh trọng số dựa vào nơron
trọng số tốt hơn Hồng Yes
của ma trận trọng
số tơt nhât?
¥
Tinh tốn lại tỉ lệ sai số, ghi