Tải bản đầy đủ (.pdf) (72 trang)

nhận dạng ảnh mặt người sử dụng mạng nơron nhân tạo và giải thuật di truyền

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.1 MB, 72 trang )


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐH CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG







PHẠM THỊ MAI HƯƠNG







NHẬN DẠNG ẢNH MẶT NGƯỜI DÙNG MẠNG
NƠRON NHÂN TẠO VÀ GIẢI THUẬT DI TRUYỀN




LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH







Thái Nguyên, 2011

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐH CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG





PHẠM THỊ MAI HƯƠNG







NHẬN DẠNG ẢNH MẶT NGƯỜI DÙNG MẠNG
NƠRON NHÂN TẠO VÀ GIẢI THUẬT DI TRUYỀN

Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01



LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH



NGƯỜI HƯỚNG DẪN KH: PGS.TS. LÊ BÁ DŨNG





Thái Nguyên, 2011

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

1
MỞ ĐẦU
Khuôn mặt đóng vai trò quan trọng trong quá trình giao tiếp giữa ngƣời với
ngƣời, và cũng mang một lƣợng thông tin phong phú, chẳng hạn có thể xác định
giới tính, tuổi tác, trạng thái cảm xúc của ngƣời đó, hơn nữa khảo sát chuyển
động của các đƣờng nét trên khuôn mặt có thể biết đƣợc ngƣời đó muốn nói gì. Do
đó, nhận dạng mặt ngƣời là một lĩnh vực nghiên cứu hấp dẫn đƣợc nhiều ngƣời
quan tâm trong vài năm gần đây.
Nhận dạng mặt ngƣời là một lĩnh vực nghiên cứu hấp dẫn đƣợc nhiều ngƣời
quan tâm trong vài năm gần đây. Có rất nhiều hƣớng tiếp cận trƣớc đây đã thực hiện
liên quan đến vấn đề nhận dạng mặt ngƣời. Theo Ming-Hsuan Yang [22], có thể
phân loại thành bốn hƣớng tiếp cận chính: dựa trên tri thức (knowledge-based), đặc
trƣng bất biến (feature invariant), đối sánh mẫu (template matching), và dựa vào diện
mạo (appearance-based) phƣơng pháp này thƣờng dùng một mô hình học máy nên
còn đƣợc gọi là phƣơng pháp dựa trên học máy (machine learning-based).
Các kết quả nghiên cứu về nhận dạng mặt ngƣời cho đến nay đã cho thấy
phƣơng pháp dựa trên học máy là cách tiếp cận tối ƣu và hiệu quả nhất. Về cơ bản,
phƣơng pháp dựa trên học máy sử dụng những mẫu đƣợc rút trích qua một quá

trình học. Nói cách khác, các thuật toán dựa trên học máy dùng các kỹ thuật phân
tích thống kê và học máy để xấp xĩ một hàm phân lớp tuyến tính. Có nhiều mô hình
học máy đƣợc áp dụng trong hƣớng tiếp cận này: Eigenface (M. Turk và A. Pentland
1991 [23]), Mạng Nơ-ron (H. Rowley 1998 [28]), Support Vector Machine (E.
Osuna et al 1997 [24]), Phân lớp Bayes (H. Schneiderman và T. Kanade 1998 [22]),
Mô hình Markov ẩn (A. Rajagopalan et al 1998 [23]), và các mô hình tăng cƣờng
(AdaBoost của P. Viola và M. Jones 2001 [25][26]; FloatBoost do Stan Z. Li và Zhen
Qiu Zhang 2004 [23][24]).
Phƣơng pháp nhận dạng mặt ngƣời dùng mạng nơron là một phƣơng pháp
không mới, có thể coi là phƣơng pháp phổ biến nhất trong các phƣơng pháp dựa trên
học máy. Các kết quả nghiên cứu đã có cho thấy phƣơng pháp này vẫn là phƣơng

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

2
pháp hiệu quả, ổn định và có nhiều khả năng ứng dụng. Một trong những nghiên cứu
đầu tiên dùng NN trong nhận dạng ảnh mặt ngƣời trong [72] đã sử dụng mạng
Kohonen nhận dạng ảnh trong một tập mẫu nhỏ các ảnh mặt ngƣời và cho kết quả tốt
ngay cả khi ảnh bị nhiễu hay mất một phần ảnh. Tỷ lệ nhận dạng đúng đƣợc công bố
là 92.5% với ảnh test đã đƣợc huấn luyện và 87.5% với ảnh test chƣa đƣợc huấn
luyện. Trong nhiều nghiên cứu nhận dạng ảnh mặt ngƣời dùng mạng NN sau đó, loại
mạng NN đƣợc cho là hiệu quả nhất là mạng NN perception đa lớp lan truyền ngƣợc
(backpropagation MLP). Trong [N. Jamil and Iqbal [34] ] hệ thống nhận dạng ảnh
mặt ngƣời dùng mạng MLP lan truyền ngƣợc sử dụng cơ sở dữ liệu gồm 100 ảnh của
10 ngƣời khác nhau tự thu thập, tỷ lệ nhận dạng đúng đƣợc công bố là 95.6%.
Các nghiên cứu nhận dạng ảnh mặt ngƣời dùng mạng NN cho tới hiện nay chỉ
ra rằng việc dùng mạng MLP đã cho các kết quả rất tốt cả về độ chính xác. Tuy nhiên
vấn đề chi phí tính toán trong thao tác huấn luyện và nhận dạng dẫn tới chi phí huấn
luyện và nhận dạng khá lớn là vấn đề then chốt cần xử lý của các hệ thống dùng
mạng NN. Do đó, các nghiên cứu nhận dạng mặt ngƣời dùng mạng NN vẫn cần đƣợc

cải tiến phát triển để giảm khối lƣợng tính toán, giảm thời gian, chi phí huấn luyện.
Một giải pháp đã đƣợc đề xuất là áp dụng phƣơng pháp trích đặc trƣng vector
thành phần PCA để giảm số chiều vector đặc trƣng, do đó giảm chi phí tính toán cho
mạng NN [19, 20]. Một giải pháp khác gần đây đƣợc một số nhà nghiên cứu gần đây
quan tâm là áp dụng giải thuật di truyền GA tính toán trọng số tối ƣu đầu vào cho
mạng NN để có để tối ƣu hệ thống. Luận văn này đi theo cách kết hợp hai hƣớng tiếp
cận này, đó là phát triển một hệ thống nhận dạng mặt ngƣời sử dụng kết hợp các
phƣơng pháp MLP-PCA-GA. Các kết quả đánh giá về hiệu quả nhận dạng bao gồm
tỷ lệ nhận dạng đúng, chi phí huấn luyện, thời gian nhận dạng đều cho thấy phƣơng
pháp sử dụng trong đề tài cho các kết quả tƣơng đƣơng và tốt hơn trong một số điều
kiện so với các phƣơng pháp truyền thống khác. Các kết quả thực nghiệm cho thấy
phƣơng pháp sử dụng là một phƣơng pháp tốt cần đầu tƣ nghiên cứu, phát triển thêm.
Để minh họa cho tính ứng dụng của luận văn, tôi cũng trình bày một hệ thống
ứng dụng minh họa việc tìm kiếm thông tin hành khách tại sân bay bằng nhận dạng

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

3
mặt ngƣời. Chƣơng trình cho tính năng minh họa cho một hệ thống thực và có thể
phát triển thành một ứng dụng thực tế nếu đƣợc tích hợp với hệ thống camera bắt
hình trực tiếp và cơ sở dữ liệu hành khách thực.
Nội dung đề tài gồm những vấn đề sau:
MỞ ĐẦU
Chƣơng 1 : Đặt vấn đề
Chƣơng 2 : Các cơ sở lý thuyết liên quan:
- Mạng nơron
- Giải thuật di truyền
- Vector đặc trƣng thành phần PCA
Chƣơng 3 : Phƣơng pháp nhận dạng mặt ngƣời MLP-PCA-GA
Chƣơng 4 : Hệ thống ứng dụng minh họa

KẾT LUẬN VÀ KIẾN NGHỊ
Do hạn chế về khả năng, thời gian cũng nhƣ tài liệu, đề tài không tránh khỏi
những sai sót nhất định. Rất mong đƣợc sự chỉ bảo của các thầy cô và các ý kiến
góp ý quan tâm của các đồng nghiệp.













Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

4
Chƣơng 1
TỔNG QUAN
1.1 BÀI TOÁN NHẬN DẠNG MẶT NGƢỜI VÀ NHỮNG KHÓ KHĂN
1.1.1 Bài toán nhận dạng mặt ngƣời
Hệ thống nhận dạng mặt ngƣời là một hệ thống nhận vào là một ảnh hoặc một
đoạn video (một chuỗi các ảnh). Qua xử lý tính toán hệ thống xác định đƣợc vị trí
mặt ngƣời trong ảnh (nếu có) và xác định là ngƣời nào trong số những ngƣời hệ
thống đã đƣợc biết (qua quá trình học) hoặc là ngƣời lạ.

Hình 1.1 Ví dụ về hệ thống nhận dạng mặt ngƣời

1.1.2 Những khó khăn của nhận dạng khuôn mặt
Bài toán nhận dạng mặt ngƣời là bài toán đã đƣợc nghiên cứu từ những năm
70. Tuy nhiên, đây là một bài toán khó nên những nghiên cứu hiện tại vẫn chƣa đạt
đƣợc kết quả mong muốn. Chính vì thế vấn đề này vẫn đang đƣợc nhiều nhóm trên
thế giới quan tâm nghiên cứu. Khó khăn của bài toán nhận dạng mặt ngƣời có thể kể
nhƣ sau:
a. Tƣ thế, góc chụp: Ảnh chụp khuôn mặt có thể thay đổi rất nhiều bởi vì góc
chụp giữa camera và khuôn mặt. Chẳng hạn nhƣ: chụp thẳng, chụp xéo bên trái 45
0

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

5
hay xéo bên phải 45
0
, chụp từ trên xuống, chụp từ dƣới lên, v.v ). Với các tƣ thế
khác nhau, các thành phần trên khuôn mặt nhƣ mắt, mũi, miệng có thể bị khuất một
phần hoặc thậm chí khuất hết.
b. Sự xuất hiện hoặc thiếu một số thành phần của khuôn mặt: Các đặc
trƣng nhƣ: râu mép, râu hàm, mắt kính, v.v có thể xuất hiện hoặc không. Vấn đề
này làm cho bài toán càng trở nên khó hơn rất nhiều.
c. Sự biểu cảm của khuôn mặt: Biểu cảm của khuôn mặt ngƣời có thể làm
ảnh hƣởng đáng kể lên các thông số của khuôn mặt. Chẳng hạn, cùng một khuôn mặt
một ngƣời, nhƣng có thể sẽ rất khác khi họ cƣời hoặc sợ hãi,v.v
d. Sự che khuất: Khuôn mặt có thể bị che khuất bởi các đối tƣợng khác hoặc
các khuôn mặt khác.
e. Hƣớng của ảnh: Các ảnh của khuôn mặt có thể biến đổi rất nhiều với các
góc quay khác nhau của trục camera. Chẳng hạn chụp với trục máy ảnh nghiêng làm
cho khuôn mặt bị nghiêng so với trục của ảnh.
f. Điều kiện của ảnh: Ảnh đƣợc chụp trong các điều kiện khác nhau về: chiếu

sáng, về tính chất camera (máy kỹ thuật số, máy hồng ngoại,v.v ) ảnh hƣởng rất
nhiều đến chất lƣợng ảnh khuôn mặt.
1.2 CÁC ỨNG DỤNG LIÊN QUAN ĐẾN NHẬN DẠNG MẶT NGƢỜI
Bài toán nhận dạng mặt ngƣời có thể áp dụng rộng rãi trong nhiều ứng
dụng thực tế khác nhau. Đó chính là lý do mà bài toán này hấp dẫn rất nhiều
nhóm nghiên cứu trong thời gian dài. Các ứng dụng liên quan đến nhận dạng
mặt ngƣời có thể kể nhƣ:
- Hệ thống phát hiện tội phạm: camera đƣợc đặt tại một số điểm công cộng
nhƣ: siêu thị, nhà sách, trạm xe buýt, sân bay,v.v Khi phát hiện đƣợc sự xuất hiện
của các đối tƣợng là tội phạm, hệ thống sẽ gởi thông điệp về cho trung tâm xử lý.
- Hệ thống theo dõi nhân sự trong một đơn vị: giám sát giờ ra vào của từng
nhân viên và chấm công.
- Hệ thống giao tiếp ngƣời máy: thay thế việc tƣơng tác giữa ngƣời và máy theo
những cách truyền thống nhƣ: bàn phím, chuột,v.v Thay vào đó là sử dung các giao

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

6
tiếp trực quan: biểu cảm khuôn mặt, dấu hiệu, cử chỉ bằng tay (visual input, visual
interaction).
- Hệ thống tìm kiếm thông tin trên ảnh, video dựa trên nội dung (chỉ mục theo
ngƣời). Chẳng hạn nhƣ: đài truyền hình Việt Nam (VTV) có một kho dữ liệu video
tin tức khá lớn cần tìm kiếm nhanh những đoạn video nào có G. Bush hoặc Bin
Laden.
- Các thệ thống bảo mật dựa trên thông tin trắc sinh học: mặt ngƣời, vân
tay,v.v thay vì xác nhận mật khẩu, khóa,v.v
1.3 TỔNG QUAN KIẾN TRÚC CỦA MỘT HỆ THỐNG NHẬN DẠNG
MẶT NGƢỜI
Một hệ thống nhận dạng mặt ngƣời thông thƣờng bao gồm bốn bƣớc xử lý
sau: phát hiện khuôn mặt (face detection), phân đoạn khuôn mặt (face alignment hay

segmentation), rút trích đặc trưng (feature extraction), và phân lớp khuôn mặt (face
classification).

Hình 1.2 Các bƣớc chính trong một hệ thống nhận dạng mặt ngƣời
Phát hiện khuôn mặt dò tìm và định vị những vị trí khuông mặt xuất hiện
trong ảnh hoặc trên các frame video. Phân đoạn khuôn mặt sẽ xác định vị trí mắt mũi,
miệng, và các thành phần khác của khuôn mặt và chuyển kết quả này cho bƣớc rút
trích đặc trưng. Từ những thông tin về các thành phần trên khuôn mặt, chúng ta có
thể dễ dàng tính đƣợc véc-tơ đặc trƣng trong bƣớc rút trích đặc trƣng. Những véc-tơ
đặc trƣng này sẽ là dữ liệu đầu vào cho một mô hình đã đƣợc huấn luyện trƣớc để
phân loại khuôn mặt. Bên cạnh những bƣớc chính nêu trên, chúng ta còn có thể áp
dụng thêm một số bƣớc khác nhƣ tiền xử lý, hậu xử lý nhằm làm tăng độ chính xác

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

7
cho hệ thống. Trong luận văn này, tôi tập trung chủ yếu vào bƣớc phân loại khuôn
mặt.
1.4. GIỚI HẠN PHẠM VI ĐỀ TÀI
Trong đề tài này, tôi tập trung vào một thuật toán hiệu quả cho việc nhận dạng
(phân loại) ảnh mặt ngƣời. Do các điều kiện khó khăn của bài toán và để tập trung
sâu vào một phần của hệ thống nhận dạng là khối phân lớp, nhận dạng, tôi đƣa ra
những giả định và ràng buộc sau nhằm giảm độ phức tạp của bài toán nhận dạng mặt
ngƣời:
- Thuật toán giải quyết cho ảnh đơn; ảnh khuôn mặt đƣợc chụp thẳng hay góc
nghiêng không đáng kể; ảnh đƣợc chụp trong điều kiện ánh sáng bình thƣờng; ảnh
đƣợc tiền xử lý trƣớc để cắy lại chỉ còn phần khuôn mặt trong ảnh, do vậy có thể bỏ
qua bƣớc phát hiện khuôn mặt (face detection). Với cơ sở dữ liệu thử nghiệm đƣợc
lọc một phần từ CSDL của Yale dùng trong luận văn này thì các điều kiện trên đƣợc
thỏa mãn.

- Luận văn thừa kế các kết quả nghiên cứu nhận dạng mặt ngƣời dùng mạng NN
perception đa lớp MLP với thủ tục huấn luyện lan truyền ngƣợc, sử dụng vector đặc
trƣng PCA đầu vào, thực nghiệm một thuật toán kết hợp mạng NN và giải thuật di
truyền GA để tối ƣu trọng số mạng NN trong bài toán nhận dạng ảnh mặt ngƣời. Việc
kết hợp GA và NN nhằm mục đích giảm chi phí huấn luyện và tối ƣu hệ thống.
- Luận văn xây dựng một ứng dụng demo cho việc phát hiện thông tin hành
khách tại sân bay bằng nhận dạng ảnh tự động. Hệ thống chỉ có tính chất demo, minh
họa chứ chƣa có khả năng áp dụng ngay trong thực tiễn.
1.5 CÁC HƢỚNG TIẾP CẬN LIÊN QUAN ĐẾN PHÁT HIỆN VÀ NHẬN
DẠNG KHUÂN MẶT
Có rất nhiều hƣớng tiếp cận trƣớc đây đã thực hiện liên quan đến vấn đề phát
hiện mặt ngƣời. Theo Ming-Hsuan Yang [22], có thể phân loại thành bốn hƣớng tiếp
cận chính: dựa trên tri thức (knowledge-based), đặc trƣng bất biến (feature invariant),
đối sánh mẫu (template matching), và dựa vào diện mạo (appearance-based) phƣơng
pháp này thƣờng dùng một mô hình máy học nên còn đƣợc gọi là phƣơng pháp dựa

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

8
trên máy học (machine learning-based).
Các phƣơng pháp dựa trên tri thức: Hƣớng tiếp cân này chủ yếu dựa trên
những luật đƣợc định nghĩa trƣớc về khuôn mặt ngƣời. Những luật này thƣờng là các
mối quan hệ giữa các thành phần trên khuôn mặt. Có một số nghiên cứu từ rất sớm đã
áp dụng phƣơng pháp này nhƣ của Kanade 1973 [23], và Kotropoulos 1997 [24].
Hƣớng tiếp cận dựa trên các đặc trƣng bất biến: Hƣớng tiếp cận này cố
gắng tìm kiếm những đặc trƣng độc lập – những đặc trƣng không phụ thuộc vào tƣ
thế khuôn mặt, điều kiện chiếu sáng, và các khó khăn khác. Các đặc trƣng nhƣ thế
đƣợc gọi là bất biến và đƣợc sử dụng để phát hiện khuôn mặt. Những công trình sử
dụng hƣớng tiếp cận này có thể kể nhƣ: K. C. Yow và R. Cipolla 1997 [25], T. K.
Leung 1995 [26].

Phƣơng pháp đối sánh mẫu: Trong hƣớng tiếp cận này, một mẫu khuôn mặt
chuẩn đƣợc định nghĩa bằng tay trƣớc hoặc đƣợc tham số hóa bằng một hàm số. Mẫu
này đƣợc sử dụng để phát hiện khuôn mặt bằng cách quét nó qua ảnh và tính toán giá
trị tƣơng đồng cho mỗi vị trí. Việc xuất hiện một khuôn mặt tại một vị trí nào đó
trong ảnh phụ thuộc vào giá trị tƣơng đồng của điểm đó so với mẫu chuẩn. I. Craw
1992 [27] đã áp dụng một mẫu cứng trong khi A. Lanitis 1995 [28] sử dụng một mẫu
có thể biến dạng trong bƣớc phát hiện khuôn mặt.
Phƣơng pháp dựa trên máy học: Ngƣợc với phƣơng pháp đối sánh mẫu sử
dụng các mẫu đƣợc các chuyên gia định nghĩa trƣớc, phƣơng pháp này sử dụng
những mẫu đƣợc rút trích qua một quá trình học. Nói cách khác, các thuật toán dựa
trên máy học dùng các kỹ thuật phân tích thống kê và máy học để xấp xĩ một hàm
phân lớp tuyến tính. Có nhiều mô hình máy học đƣợc áp dụng trong hƣớng tiếp cận
này: Eigenface (M. Turk và A. Pentland 1991 [22]), Mô hình dựa trên phân phối (K.
K. Sung and T. Poggio 1998 [23]), Mạng Nơ-ron (H. Rowley 1998 [24]), Support
Vector Machine (E. Osuna et al 1997 [25]), Phân lớp Bayes (H. Schneiderman và T.
Kanade 1998 [26]), Mô hình Markov ẩn (A. Rajagopalan et al 1998 [27]), và các mô
hình tăng cƣờng (AdaBoost của P. Viola và M. Jones 2001 [28]; FloatBoost do Stan
Z. Li và Zhen Qiu Zhang 2004 [22]).

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

9
1.6 CÁC TIẾP CẬN DÙNG MẠNG NƠRON
Mạng nơ ron (NN) đã và đang đƣợc sử dụng trong nhận dạng ảnh mặt ngƣời.
Một trong những nghiên cứu đầu tiên dùng NN trong nhận dạng ảnh mặt ngƣời trong
[25] đã sử dụng mạng Kohonen nhận dạng ảnh trong một tập mẫu nhỏ các ảnh mặt
ngƣời và cho kết quả tốt ngay cả khi ảnh bị nhiễu hay mất một phần ảnh. Mạng NN
cũng đƣợc hiện thực dùng phần cứng để nhận dạng ảnh mặt ngƣời trong [23]. Trong
[24], mạng NN đƣợc sử dụng để phân loại giới tính dùng vector có 16 thuộc tính nhƣ
độ dày của lông mày, độ rộng của mũi và miệng, … Đầu ra của 2 mạng NN đƣợc so

sánh, giới tính của ngƣời trong ảnh nhận dạng thử đƣợc xác định bởi mạng có đầu ra
lớn hơn. Tỷ lệ nhận dạng đúng đƣợc công bố là 92.5% với ảnh test đã đƣợc huấn
luyện và 87.5% với ảnh test chƣa đƣợc huấn luyện.
Trong nhiều nghiên cứu nhận dạng ảnh mặt ngƣời dùng mạng NN, loại mạng
NN đƣợc cho là hiệu quả nhất là mạng NN perception đa lớp lan truyền ngƣợc
(backpropagation MLP) (hình 1.3). Trong [26] hệ thống nhận dạng ảnh mặt ngƣời
dùng mạng MLP lan truyền ngƣợc sử dụng cơ sở dữ liệu gồm 100 ảnh của 10 ngƣời
khác nhau tự thu thập, tỷ lệ nhận dạng đúng đƣợc công bố là 95.6%.
Để giảm số chiều của vector ảnh đầu vào làm giảm khối lƣợng tính toán của
mạng NN. Nhiều nghiên cứu gần đây đề xuất dùng đầu vào của mạng NN là vector
PCA (vector phân tích các thành phân cơ bản – Principal Component Analysis).
Trong [27] hệ thống nhận dạng ảnh mặt ngƣời đƣợc xây dựng dùng vector PCA và
mạng NN lan truyền ngƣợc. Cơ sở dữ liệu gồm 200 ảnh đƣợc trích từ cơ sở dữ liệu
ảnh công cộng của Yale, hệ thống không chỉ cho kết quả nhận dạng tốt hơn mà còn
giảm thời gian huấn luyện, nhận dạng so với các nghiên cứu trƣớc đó.
Mặc dù các nghiên cứu nhận dạng ảnh mặt ngƣời dùng mạng NN cho tới hiện
nay về cơ bản đã cho các kết quả rất tốt cả về độ chính xác và thời gian, chi phí huấn
luyện, các nghiên cứu này vẫn cần đƣợc cải tiến phát triển để tăng tỷ lệ nhận dạng,
đặc biệt là giảm khối lƣợng tính toán và giảm thời gian, chi phí huấn luyện. Ngoài
giải pháp kết hợp dùng PCA và NN, một giải pháp khác đƣợc một số nhà nghiên cứu
gần đây quan tâm là áp dụng giải thuật di truyền GA kết hợp với hệ thống nhận dạng

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

10
dùng mạng NN đã có để tối ƣu hệ thống. Luận văn này đi theo hƣớng tiếp cận này.
Thuật toán và phƣơng pháp kết hợp MLP-PCA-GA trong hệ thống nhận dạng sẽ
đƣợc trình bày chi tiết trong các chƣơng tiếp theo.









Hình 1.3. Sơ đồ khối mạng MLP lan truyền ngƣợc


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

11
Chƣơng 2
CƠ SỞ LÝ THUYẾT
2.1. CƠ SỞ LÝ THUYẾT MẠNG NƠRON NHÂN TẠO
2.1.1. Khái niệm mạng nơron nhân tạo
2.1.1.1.Nơron nhân tạo
Nơron nhân tạo (Artificial Neural ) là sự rút gọn hết sức đơn giản của nơron
sinh học. Nó có thể thực hiện nhờ chƣơng trình máy tính hoặc bằng mạch phần
cứng.Mỗi nơron thực hiện hai chức năng là chức năng đầu vào và chức năng kích
hoạt đầu ra. Do đó ta có thể coi mỗi nơron nhƣ là một đơn vị xử lý (PE: processing
element). Nó đƣợc xây dựng mô phỏng theo cấu trúc của các nơron sinh học. Mỗi
nơron có một số đầu vào giống nhƣ các dây thần kinh tiếp nhận. Các đầu vào này
làm nhiệm vụ tiếp nhận thông tin từ các nơron khác hoặc từ tập số liệu gốc vào.
Tƣơng tự nhƣ nơron sinh học, mỗi đầu vào của nơron nhân tạo có ảnh hƣởng khác
nhau đối với tín hiệu ra của nơron (còn gọi là kết xuất của nơron ). Điều này đƣợc
thực hiện nhờ các hệ số đƣợc gán cho từng đầu vào-w
i
: trọng số của đầu vào thứ i.
Giá trị của w

i
có thể dƣơng hay âm tƣơng tự nhƣ việc có hai loại khớp nối trong
mạng nơron sinh học. Nếu w
i
có giá trị dƣơng thì tƣơng đƣơng với khớp nối kích
thích còn nếu w
i
âm thì tƣơng đƣơng với khớp nối ức chế. Thân nơron sẽ làm nhiệm
vụ tổng hợp các tín hiệu đầu vào xử lý để đƣa một tín hiệu ra đầu ra của nơron. Quá
trình xử lý, tính toán này sẽ đƣợc đề cập cụ thể ở phần sau. Đầu ra của nơron nhân
tạo tƣơng tự nhƣ sợi trục axon của nơron sinh học. Tín hiệu ra cũng có thể tách ra
thành nhiều nhánh theo cấu trúc hình cây để đƣa đến đầu vào của các nơron khác.







Hình 2.1. Nơron nhân tạo

bias

w
m

x
1
x
2

x
m
w
1
w
2
  

Out


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

12
2.1.1.2. Mạng nơron nhân tạo
Các nơron nhân tạo đƣợc tổ chức thành mạng nơron nhân tạo (Artificial
Neural Network). Các nơron thƣờng đƣợc sắp xếp trong mạng thành từng lớp. Đầu
ra của mỗi nơron sẽ đƣợc nối đến đầu vào của một số nơron khác theo một cấu trúc
phù hợp. Tuy nhiên cấu trúc mạng nơron nhân tạo chƣa thể đạt đƣợc độ phức tạp
nhƣ mạng nơron sinh học. Mạng nơron nhân tạo hiện chỉ mới là sự mô phỏng hết
sức đơn giản cấu trúc của mạng nơron sinh học.
Giữa mạng nơron nhân tạo và mạng nơron sinh học có 3 điểm chung là
- Mạng đƣợc xây dựng bằng các phần tử tính toán đơn giản liên kết lại với
nhau một cách phức tạp và hoạt động theo nguyên tắc song song.
- Chức năng của mạng đƣợc xác định qua cấu trúc mạng, quá trình xử lý bên
trong các phần tử và mức độ liên kết giữa các phần tử.
- Mức độ liên kết giữa các phần tử đƣợc xác định thông qua quá trình học
của mạng ( hay còn gọi là quá trình huấn luyện mạng: training).
Điểm khác nhau về căn bản giữa Mạng nơron nhân tạo và mạng nơron sinh
học là ở tốc độ tính toán, độ phức tạp và tính song song.Tuy xét về tốc độ xử lý của

các máy tính hiện đại là cao hơn rất nhiều so với tốc độ xử lý của não bộ con ngƣời
nhƣng bộ não lại có thể đồng thời kích hoạt toàn bộ các nơron để làm nhiều công
việc khác nhau. Điều này mạng nơron nhân tạo không thể thực hiện đƣợc. Với sự
phát triển nhanh chóng của khoa học nhƣ hiện nay thì ta có thể hi vọng sẽ có những
bƣớc đột phá mới trong lĩnh vực mô phỏng mạng nơron sinh học.
2.1.1.3.Các ứng dụng của mạng nơron
Mạng nơron thích hợp với các ứng dụng so sánh và phân loại mẫu (patern
matching and classification), dự báo (prediction) và điều khiển (control).
2.1.2.Mô hình toán học và kiến trúc mạng nơron nhân tạo
2.1.2.1.Mô hình toán học của mạng nơron
a. Mô hình toán học của một nơron nhân tạo
Dựa trên những kiến thức cơ bản về nơron nhân tạo nhƣ đã trình bày ở phần
trên, ta có thể xây dựng một mô hình toán học của nơron nhân tạo nhƣ hình vẽ 2.2
dƣới đây

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

13








Các tín hiệu vào (còn gọi là mẫu vào) p
i
(i=1 R) đƣợc đƣa tới đầu vào của
nơron S tạo thành ma trận tín hiệu vào P. Mỗi đầu vào của nơron S sẽ có một trọng

số kí hiệu là w
s,i
(i=1 R) và các trọng số này tạo thành một ma trận trọng số đầu vào
W của nơron. Mức ngƣỡng

của nơron có thể đƣợc biễu diễn trong mô hình toán
học bằng hệ số bias b ( gọi là thế hiệu dịch). Ta có b=-

. Hàm PSP (Post Synaptic
Potential function ) khi các đại lƣợng là vô hƣớng là tổng của các tín hiệu vào có
trọng số và hệ số bias (khi ở dạng vectơ thì là hàm radial). Nhƣ vậy tín hiệu vào là
n
net
sẽ đƣợc tính theo công thức sau:

bpwpwpwn
RRsssnet

,22,11,

(2.1)
Viết dƣới dạng ma trận sẽ là:
bWPn
net

(2.2)
Xem các biểu thức trên thì ta có thể coi hệ số bias nhƣ trọng số của một đầu
vào với tín hiệu bằng 1. Có một số loại nơron có thể bỏ qua hệ số bias này.
Hàm hoạt hoá activation function (hay còn gọi là hàm truyền đạt transfer
function) đƣợc kí hiệu là f sẽ biến đổi tín hiệu đầu vào net thành tín hiệu đầu ra

nơron a.Ta có biểu thức:
a=f(n
net
)=f(WP+b) (2.3)

Thông thƣờng thì hàm đầu ra sẽ đƣợc chọn bởi ngƣời thiết kế tuỳ theo mục
đích của mạng. Các trọng số và hệ số bias là các thông số điều chỉnh đƣợc của
mạng nơron. Chúng đƣợc điều chỉnh bởi một số luật học( learning rule). Nhƣ vậy
w
S,2
w
S,R
b (bias)

n
net
a

p
3
p
2
p
1

f
w
S,1
Hình 2.2: Mô hình toán học mạng nơron nhân tạo


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

14
quan hệ giữa đầu ra và các đầu vào của nơron sẽ tuỳ thuộc vào việc nơron đó đƣợc
dùng cho các mụch đích cụ thể nào.
b. Cấu trúc mạng nhân tạo
Mạng nơron thƣờng đƣợc cấu tạo thành các lớp gồm lớp vào (input layer) ,lớp
ra (output layer) và các lớp ẩn (hidden layer). Các nơron trong một lớp chỉ nối với
các nơron lớp tiếp theo, không cho phép có các liên kết giữa các nơron trong cùng
một lớp
Lớp vào là lớp nhận thông tin từ số liệu gốc. Thông tin này đƣợc đƣa đến đầu
vào của một số hay toàn bộ các nơron của lớp tiếp theo (lớp ẩn). Nhƣ vậy mỗi nút
của lớp ẩn sẽ nhận đƣợc tín hiệu của một số các nút lớp vào. Các giá trị này sẽ đƣợc
nhân với hệ số nhân (trọng số) của các nút ẩn và đƣa vào hàm thế sau khớp nối-PSP
(Post Synaptic Potential function) thực hiện chức năng đầu vào để tạo tín hiệu duy
nhất net. Chức năng kích hoạt đầu ra đƣợc thực hiện bằng hàm hoạt hoá a(.)
(activation function) hay còn gọi là hàm truyền f(.) (transfer function). Hàm này sẽ
nhận tín hiệu đầu vào net để tạo ra tín hiệu đầu ra của nơron (kết xuất của nơron lớp
ẩn). Tín hiệu ra của các nút ẩn lại đƣợc đƣa đến các nút của lớp tiếp theo. Quá trình
xử lý tƣơng tự cho đến khi tín hiệu đƣợc đƣa ra tại các nút lớp ra. Đây chính là tín
hiệu đầu ra của mạng. Nó chính là giá trị của các biến cần tìm.
Mạng nơron có thể tổ chức theo kiểu liên kết đầy đủ (fully connected) tức là
đầu ra của các nơron lớp trƣớc sẽ có liên kết với tất cả các nơron ở lớp tiếp theo
hoặc ngƣợc lại theo kiểu không đầy đủ-mỗi đầu ra chỉ liên kết với một số nơron của
lớp tiếp theo tuỳ theo chức năng của mạng.
c. Hàm truyền (Hàm hoạt hoá)
Hàm hoạt hoá (activation function) có thể là một hầm tuyến tính hoặc phi
tuyến của tín hiệu đầu vào net-n
net
,nó đƣợc chọn để thoả mãn một số đặc điểm kỹ

thuật của bài toán mà mạng nơron cần giải quyết.
2.1.2.2. Kiến trúc mạng
Mạng nơron nhân tạo nhƣ đã giới thiệu ở trên là sự liên kết của các nơron nhân
tạo. Sự xắp xếp bố trí các nơron và cách thức liên hệ giữa chúng tạo nên kiến trúc

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

15
mạng nơron .Theo cách sắp xếp nơron thì có kiểu kiến trúc một lớp (single layer) và
kiến trúc đa lớp (Multiple layer), còn theo cách liên hệ giữa các nơron thì ta có kiến
trúc mạng truyền thẳng (feedforward) và kiến trúc mạng hồi qui (recurrent). Ngoài ra
còn một loại liên kết theo sự phân bố của các nơron trong không gian hai chiều trong
một lớp, gọi là liên kết bên (lateral connection). Với loại liên kết bên này, Kohonel đã
tạo ra loại mạng tự tổ chức (Self-Organizing Neural Network).
- Theo số lớp: Nếu xét về số lớp thì mạng có cấu trúc là mạng nơron một lớp
và mạng nơron nhiều lớp
- Mạng nơron một lớp là mạng chỉ có các lớp vào và lớp ra. Đầu vào đƣợc
đƣa trực tiếp đến lớp ra. Mạng này có cấu trúc tƣơng đối đơn giản, nó chủ yếu dùng
cho các mạng làm chức năng phân loại và thực hiện các hàm đơn giản.
- Mạng nơron nhiều lớp là các mạng nơron có thêm một hoặc vài lớp ẩn. Do
đó cấu trúc mạng vì vậy mà phức tạp hơn rất nhiều. Tuy nhiên các mạng nơron này
lại có khả năng thực hiện các công việc phức tạp hơn. Nó có thể thực hiện đƣợc các
hàm phân bố ngẫu nhiên với điều kiện thu thập đƣợc một tập mẫu tin cậy và đủ lớn.
- Theo kiểu liên kết của các nơron: Xét theo kiểu liên kết của các nơron thì
có cấu trúc mạng nơron truyền thẳng và mạng nơron quy hồi
- Mạng nơron truyền thẳng (feedforward Neural Network) là mạng có cấu
trúc mà ở đó các liên kết nơron đi theo một hƣớng nhất định, không tạo thành đồ thị
có chu trình (Directed Acrylic Graph) với các đỉnh là các nơron và các cung là các
liên kết giữa chúng.
- Mạng quy hồi (Recurent Neural Network) cho phép các liên kết nơron tạo

thành chu trình tức là tồn tại những liên kết từ các nơron lớp sau quay trở lai các
nơron lớp trƣớc. Trong chu trình này, các tín hiệu ra của nơron lại đƣợc truyền
ngƣợc lại cho các nơron đã kích hoạt chúng do đó mà mạng hồ quy có khả năng lƣu
giữ trạng thái trong dƣới dạng các ngƣỡng kích hoạt ngoài các trọng số liên kết
nơron. Mạng hồi quy có thể là hồi quy một lớp hoặc hồi quy nhiều lớp.
- Kiến trúc mạng tự tổ chức: Loại liên kết bên (lateral connection) thực hiện
trên một lớp đƣợc gọi là lớp cạnh tranh (competitive layer). Lớp cạnh tranh thƣờng

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

16
đƣợc tổ chức nhƣ một lƣới nơron hai chiều, và một tập tín hiệu vào sẽ đồng thời
đƣợc đƣa đến tất cả các nơron của lớp. Mỗi nơron của lớp cạnh tranh có một liên
kết kích thích (excitatory và có trọng số là dƣơng) với chính nó và có các liên kết ức
chế (inhibitory và có trọng số là âm) với các nơron lân cận cùng lớp.
Chúng ta có thể tƣởng tƣợng kiểu liên kết này nhƣ một cụm các nơron “cạnh
tranh nhau” (competition), mỗi nơron sẽ kích hoạt chính nó đồng thời lại ức chế các
nơron khác kế cận. Sau một chu kỳ số trao đổi tín hiệu trong mạng sẽ có các nơron
với giá trị đầu vào net lớn hơn so với các nơron khác. Chúng sẽ đƣợc coi là các
“nơron chiến thắng” (winning neural) và đƣợc kích hoạt lên giá trị đầu ra lớn nhất,
trong khi những nơron khác bị ức chế (giá trị đầu ra giảm xuống 0). Chính vì vậy
đôi khi mạng này còn đƣợc gọi là “winner-takes-all”. Quá trình kích hoạt cạnh
tranh này gọi là sự tiến hoá (evolution).
Thuật toán sắp xếp tự tổ chức (Self Organizing Map Algorthm) còn gọi là sự
sắp xếp đặc trƣng tôpô tự tổ chức (Self Organizing Topographic Feature Map) do
Kohonel phát triển vào những năm 80, nó đƣợc thực hiện trên mạng nơron với một
lớp vào là một mảng một chiều và một lớp cạnh tranh( mảng hai chiều). Kohonel đã
tạo ra một kiến trúc mạng khá nổi tiếng trong số các mạng nơron cạnh tranh, đó là
mạng SOM (Self Organizing Neural Network) hay còn đƣợc gọi theo tên tác giả là
mạng Kohonel. Mạng SOM đƣợc tạo ra xuất phát từ cách thức mà theo đó cảm giác

của các giác quan khác nhau của con ngƣời đƣợc sắp xếp theo tổ chức lôgic của các
nơron trong bộ não.



Hình 2.3: Kiến trúc mạng Kohonen

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

17
2.1.3. Huấn luyện mạng
2.1.3.1.Hoạt động của mạng
Hoạt động của mạng nơron có thể đƣợc xem nhƣ hoạt động của một hệ thống
xử lý thông tin đƣợc cấu thành từ nhiều phần tử hoạt động song song. Nhƣ đã giới
thiệu ở mục trƣớc, chức năng của mạng đƣợc xác định bởi cấu trúc ,các liên kết có
trọng số và hàm hoạt hoá của các nơron trong mạng.
Khi mạng nơron hoạt động, các thành phần của vec tơ tín hiệu vào P=(p
1
,
p
2
, p
R
) đƣợc đƣa vào R nơron của lớp vào, tiếp theo đó các nơron của lớp ẩn và
lớp ra sẽ đƣợc kích hoạt dẫn dần. Sau một quá trình tính toán tại các nơron( tổng
trọng số đàu vào kết hợp hệ số bias, hàm hoạt hoá), mạng sẽ đƣợc kích hoạt hoàn
toàn và cho ra vectơ tín hiệu đầu ra A=(a
1
,a
2

, ,a
S
) tại S nơron ở lớp ra. Với cách mô
tả hoạt động nhƣ vậy, ta có thể coi nhƣ mạng nơron nhƣ là một bảng tra cứu giữa P
và A, mà không cần biết hàm quan hệ tƣờng minh của A theo P.
Nhƣng sự khác biệt với các hệ thống xử lý thông thƣờng là khả năng thích
nghi với dữ liệu vào. Điều này là do việc các trọng số và các hệ số bias của mạng có
thể hiệu chỉnh đƣợc để thích nghi với bài toán đặt ra. Quá trình hiệu chỉnh các trọng
số và hệ số bias của mạng đƣợc gọi là quá trình huấn luyện mạng (training), và
mạng sẽ đƣợc huấn luyện theo các thuật toán học (learning algorithm) thích hợp.
2.1.3.2. Huấn luyện mạng
a. Học có giám sát
Với học có giám sát, mạng đƣợc cung cấp một tập K mẫu học { (P
K
,T
K
)} với
P
K
là vectơ tín hiệu vào sẽ đƣợc đƣa vào mạng và theo yêu cầu thì vectơ tín hiệu ra
tƣơng ứng sẽ phải là T
K
(P-Patern input và T-Target output). Thực tế thì vectơ đầu
ra lại là Z
K
và sẽ có một sai số (error) so với T
K
. Sai số này đƣợc giám sát và truyền
trở lại hệ thống để hiệu chỉnh các trọng số liên kết và các hệ số bias của mạng. Quá
trình đƣa các mẫu học vào mạng đƣợc lặp đi lặp lại và mỗi lần nhƣ vậy các trọng số

và hệ số bias luôn đƣợc hiệu chỉnh , cho đến khi mạng đạt một tiêu chuẩn nào đó thì
dừng lại.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

18







b. Học không có giám sát:
Khác với kiểu huấn luyện có giám sát, ở đây tập huấn luyện chỉ bao gồm các
vectơ tín hiệu đầu vào { P
K
}. Huấn luyện là quá trình hệ thống tự tìm ra các nhóm
họp ( cluster) của số liệu vào. Điều này thƣờng đƣợc gọi là sự tự tổ chức (self-
organizing) hay sự thích ứng (adaption)

Huấn luyện không đƣợc giám sát khá phức tạp. Việc huấn luyện cho mạng
Kohonel là một ví dụ. Các tín hiệu đầu ra không đƣợc biết chính xác và việc hiệu
chỉnh trọng số ứng với một mẫu tín hiệu vào để đầu ra của nơron “chiến thắng” lớn
hơn hoặc gần giá trị mong muốn, còn tín hiệu đầu ra của các nơron lân cận sẽ đƣợc
giảm đi.
c. Học tăng cường






Hình 2.4 : Học có giám sát
tín hiệu lỗi
Đầu ra
mong
muốn
Đầu ra
thực tế
Mạng
ANN
Tạo tín
hiệu lỗi
Hình 2.6: Học tăng cƣờng
tín hiệu
phê bình
tín hiệu
tăng cƣờng
Đầu ra
thực tế
Mạng
ANN
Tạo tín hiệu
phê bình
Hình 2.5: Học không có giám sát
đầu vào
Đầu ra thực tế
Mạng ANN

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên


19
Học tăng cƣờng là một biến thể của học có giám sát. nó là quá trình học dựa
trên việc cập nhật trọng số dựa vào một tín hiệu phê bình nào đó gọi là tín hiệu tăng
cƣờng (reinforcement signal). Tín hiệu này đƣợc đƣa đến từ môi trƣờng bên ngoài
và đƣợc sử dụng nhƣ là một đại lƣợng ƣớc lƣợng từ đó đƣa đến cho mạng những
chỉ dẫn yêu cầu để mạng cập nhật điều chỉnh tập trọng số cho thích hợp nhất.
2.1.3.3. Một số luật học
Luật học (Learing rules) là thủ tục dùng để hiệu chỉnh các trọng số và hệ số bias
của mạng( cũng có thể gọi luật học là thuật toán huấn luyện mạng). Với mỗi một loại
mạng lại có một luật học riêng. Dƣới đây liệt kê một số luật học phổ biến nhất.
- Luật học Hebbian
+ Xuất xứ: Đây là một trong những luật học đầu tiên do Fonald Hebb đƣa ra
(1949). ông là ngƣời đã đƣa ra cách giải thích cơ chế học của bộ não ở mức tế bào.
Các phƣơng pháp hiệu chỉnh trọng số thƣờng dựa trên luật Hebb.
+ Đặc điểm: Dựa trên nguyên lý “trọng số liên kết giữa hai nơron sẽ thay đổi
khi cả 2 nơron đều đồng thời bị kích hoạt”. Là luật học đƣợc giám sát, dùng đƣợc
trong nhiều mạng khác nhau. Hạn chế là việc có thể tạo ra trọng số rất lớn.
+ Ứng dụng: Dùng cho nhận dạng mẫu (bộ nhớ tự động kết hợp). Có một số
luật học đƣợc xuất phát từ luật học này nhƣ luật giả nghịch đảo, luật delta, luật
Hopfield.
- Luật học Perceptron
+ Xuất xứ: Do Rosenblatt là ngƣời đầu tiên đề xuất (1960). Dùng cho mạng
Perceptron
+ Đặc điểm: Huấn luyện cho mạng truyền thẳng một lớp, là loại học có giám
sát, trọng số và hệ số bias đƣợc hiệu chỉnh thông qua sai số giữa tín hiệu ra thực tế
và tín hiệu ra mẫu. Xác định đƣợc đƣờng biên quyết định (decision boundary) hay
siêu phẳng (hyperplane) phân chia không gian mẫu vào. Quá trình học hội tụ khi
không gian mẫu có tính khả tách tuyến tính (linearly inseparable)
+ Ứng dụng: Dùng cho mạng phân loại các mẫu có khả tách tuyến tính

(pattern classification) , mạng của các hàm lôgic cơ bản.
- Luật học lan truyền ngƣợc

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

20
+ Xuất xứ: Luật học lan truyền ngƣợc đƣợc thực sự đánh giá có hiệu quả là do
Rumehart và McClelland đƣa ra năm 1986, giải quyêt đƣợc vấn đề trọng số lớp ẩn.
+ Đặc điểm: Là luật học đƣợc giám sát. Huấn luyện cho mạng Perceptron đa
lớp MLP (Multilayer Perceptron) hay còn gọi là mạng BackProp
(Backpropagation). Nguyên lý của luật học này là việc lan truyền ngƣợc sai số( còn
gọi là lan truyền ngƣợc độ nhạy-Backpropagating the sensitivities) từ lớp ra trở lại
các lớp ẩn và đến đầu vào của mạng, từ đó tìm đƣợc cách hiệu chỉnh ma trận trọng
số và hệ số bias để tối thiểu hoá lỗi trung bình bình phƣơng (mean squared error).
Tính toán lan truyền ngƣợc sai số ở đây phải tính đạo hàm hàm hoạt hoá, sử dụng
luật dây chuyền (chain rule) để tính.
+ Ứng dụng: Dùng cho mạng phân loại mẫu, mạng dùng để xấp xỉ các hàm
liên tục (function approximation) .
- Luật học cạnh tranh (Competitive rule)
+ Xuất xứ: Luật học này lần đầu tiên đƣợc giới thiệu bởi Stephen Grossberg
từ những năm 60 và sau đó đƣợc phát triển bởi Teuvo Kohonel trong mạng tự tổ
chức (SOFM-Self Organizing Feature Map) của ông.
+ Đặc điểm: Là luật học không giám sát. Huấn luyện cho các lƣới mạng nhƣ
Kohonel, mạng lan truyền đối chiếu (counter-propagation). Nguyên lý dựa trên sự
kích hoạt cạnh tranh của các nơron cùng lớp. Sự hiệu chỉnh trọng số nhằm định
hƣớng vectơ trọng số của các nơron phân bố theo dạng tôpô của không gian mẫu
vào, vấn đề chính ở luật học này là tìm ra nơron chiến thắng và mối quan hệ lân cận
giữa các nơron. Luật học thƣờng đòi hỏi nhiều mẫu học và số lần lặp lớn.
+ Ứng dụng : Mạng trích chọn đặc trƣng, mạng phân loại mẫu. Điển hình phải
kể đến mạng Kohonel, mạng lan truyền đối chiếu, mạng lƣợng tử hoá vectơ (LVQ-

Learning Vecto Quantization).
2.1.4. Mạng Perceptron
2.1.4.1.Kiến trúc mạng
Cuối những năm 1950, Frank Rosenblatt và một số nhà nghiên cứu đã phát
triển một mạng nơron có tên là mạng Perceptron. Đây là một mạng nơron với kiến

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

21
trúc truyền thẳng một lớp, với lớp ra là các nơron có hàm hoạt hoá là hàm hard-
limit.
Khi cho một vectơ mẫu vào P, tín hiệu đầu ra của nơron thứ i của lớp ra sẽ là:
a
i
=hardlimit(W
i
T
+b
i
)=hardlimit(n
net
)=





0n khi 0
0n khi 1
net

net
i
i
a
a
(2.4)
Trong đó b
i
là hệ số bias của nơron thứ i và W
i
T
là ma trận chuyển vị của W
i

ma trận trọng số riêng của nơron thứ i. Với vectơ mẫu vào có R thành phần ta có thể
biểu diễn W
i
nhƣ sau:
















Ri
i
i
i
w
w
w
W
,
2,
1,

(2.5)
Mạng đƣợc cấu trúc với S nơron lớp ra, do đó ma trận trọng số của toàn mạng
W sẽ đƣợc biểu diễn nhƣ công thức sau:

















RSSSS
R
R
i
wwww
wwww
wwww
W
,3,2,1,
,23,22,21,2
,13,12,11,1








(2.6)
Ta có thể viết gọn lại công thức 2.6 trên theo các ma trận trọng số riêng nhƣ sau:

















T
S
T
T
W
W
W
W

2
1
(2.7)
2.1.4.2. Huấn luyện mạng
Đóng góp của Rosenblatt đối với loại mạng này chính là luật học Perceptron
để huấn luyện mạng sử dụng trong bài toán nhận dạng mẫu. Việc huấn luyện mạng
khá đơn giản.
- Biên quyết định (decision Boundary):
Theo thiết kế mạng Perceptron nhƣ trên, từ công thức… ta nhận thấy một đầu
ra a

i
sẽ phân chia không gian mẫu đầu vào ra thành 2 vùng. Ranh giới giữa hai vùng

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

22
này đƣợc xác định bởi một biên quyết định. Đó là một biên tuyến tính hay siêu
phẳng (hyperplane). Hình 2.12 dƣới đây thể hiện một ví dụ về mạng Perceptron một
nơron lớp ra với hai đầu vào p
1
,p
2
(tƣơng đƣơng với hai nơron lớp vào). Với những
giá trị trọng số và hệ số bias đã cho ta có thể thấy trên đồ thị biên quyết định phân
chia 2 miền không gian mẫu vào.










Biên quyết định đƣợc xác định bởi các vectơ đầu vào ứng với n
net
=0 do đó
biên quyết định đƣợc xác định bằng phƣơng trình sau:
n

net
=W
i
T
P +b
i
=w
i,1
p
1
+ w
i,2
p
2
+… w
i,R
p
R
+b
i
=0 (2.8)
Vectơ trọng số sẽ luôn trực giao với đƣờng biên quyết định.
- Luật học Perceptron
Vai trò của luật học Perceptron là để thiết lập các trọng số và các hệ số bias
của mạng sao cho mạng xác lập biên quyết định phân loại tập mẫu vào. Tập mẫu
vào huấn luyện mạng gồm có các mẫu p
i
đã đƣợc xác định trƣớc tín hiệu ra yêu cầu
t
i

(kết quả đích). Nhƣ vậy luật học này thuộc loại đƣợc giám sát.
Luật học Perceptron đƣợc mô tả nhƣ sau:
+ Bƣớc 1: Cung cấp tập huấn luyện gồm K cặp mẫu vào và kết quả ra đích
{(P
K
,T
K
)}
+ Bƣớc2: Đặt các gía trị ban đầu cho bất kỳ các trọng số và hệ số bias
Lớp ra có 1 nơron
n
net
w
1,1
=1
b=-1

a

p
2

f
a=hardlimit(WP+b)
Hình 2.7: Biên quyết định trong không gian mẫu
w
1,2
=1
p
1

a=0
p
1

1
p
2
1
WP+b=0
véc tơ trọng số
a=1

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

23
+ Bƣớc 3: Lần lƣợt cho các mẫu P
K
lan truyền qua mạng ta đƣợc vectơ tín
hiệu A
K

+ Bƣớc 4: Tính các sai số e
i
tại các đầu ra của mạng theo công thức sau: e
i
=t
i
-a
i


với t
i
là kết quả ra đích tại nơron i của lớp ra còn a
i
là tín hiệu ra thực tế của nó.
+ Bƣớc 5: Hiệu chỉnh các ma trận trọng số W
i
và hệ số bias b
i
của S nơron
lớp ra:
w
i
mới
=w
i

+e
i
P
k
T
= w
i

+(t
i
-a
i
) P

k
T
với i=1 S (2.9)
b
i
mới
=b
i

+e
i
(2.10)
+ Bƣớc 6: Mỗi lần hiệu chỉnh xong các ma trận w
i
và các b
i
thì lặp lại bƣớc 3
Quá trình lặp lại cho đến khi các sai số e
i
đều bằng không, tức là khi đó ta sẽ
có đƣợc ma trận trọng số và các hệ số bias thích ứng với k mẫu học
{ (P
K
,T
K
)}. Cách hiệu chỉnh tham số dựa trên sai số e nhƣ trên đƣợc gọi là
phƣơng pháp tối thiểu hoá lỗi dự đoán (prediction error).
- Sự hội tụ:
Rosenblatt đã chứng minh đƣợc phép lặp của quá trình huấn luyện luôn luôn
hội tụ về ma trận trọng số và các hệ số bias mà với chúng mạng hoàn toàn đạt đƣợc

một sự phân lớp các mẫu nhƣ mong muốn. Tất nhiên điều kiện ở đây là không gian
mẫu phải tồn tại biên quyết định hay còn gọi là không gian mẫu khả tách tuyến tính
(linearly separable). Trong phạm vi luận văn này không trình bày về vấn đề chứng
minh này mà chỉ đƣa ra một ví dụ về không gian mẫu khả tách tuyến tính.









Hình2.8: Không gian mẫu khả tách tuyến tính
p
1

p
2

×