Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
ĐẠ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
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 http://www.lrc-tnu.edu.vn
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á
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 http://www.lrc-tnu.edu.vn
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
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 http://www.lrc-tnu.edu.vn
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
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 http://www.lrc-tnu.edu.vn
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.
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 http://www.lrc-tnu.edu.vn
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
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 http://www.lrc-tnu.edu.vn
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
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 http://www.lrc-tnu.edu.vn
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
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
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
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ỹ
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 http://www.lrc-tnu.edu.vn
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
, ,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ố
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 http://www.lrc-tnu.edu.vn
(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 http://www.lrc-tnu.edu.vn
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-
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
là
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:
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:
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 http://www.lrc-tnu.edu.vn
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
(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
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
cũ
+e
i
P
k
T
= w
i
cũ
+(t
i
-a
i
) P
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