1.2.1 Mạng Perceptron
a) Kiến trúc mạng
Cuối những năm 1950, Frank Rosenblatt vào 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ạng nơron với
kiến 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. Kiến trúc tổng quát của mạng Perceptron cho bởi hình 1.12.
Hình 1.12: Kiến trúc mạng Perceptron
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à:
ai =hardlimit (WTi P+ bi) = hardlimit (nnet) = (1.4)
Trong đó bi là hệ số bias của nơron thứ i và WiT là ma trận chuyển vị của Wi là ma trận trọng số riêng của nơron thứ Với vectơ mẫu vào có i. R thành phần ta có thÓ biÓu diÔn Wi nh sau:
. .
. . . . . . . . . .
a1
a2
aS
b1
b2
bS
W p1
p2
pS
Lớp vào Lớp ra
§Çu ra (A)
Đầu vào (mÉu P)
hardlimit
ai = 1 khi nnet ≥ 0 ai = 0 khi nnet < 0
wi,1
wi,2
wi,R
. . .
Wi =
b) Huấn luyện mạng
Đóng góp của Rosenblatt đối vớ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 (1.4) ta thấy một đầu ra ai
sẽ phân chia không gian mẫu đầu vào thành hai vùng. Ranh giới giữa hai vùng này đợc xác định bởi một biên quyết định. Đó là biên tuyến tính hay siêu phẳng (hyperlane). 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.
Hình 1.13: Biên quyết định trong không gian mẫu.
Biên quyết định đợc xác định bởi các vectơ đầu vào tơng ứng với nnet bằng không. Do đó biên quyết định đợc xác định bằng phơng trình sau:
nnet =WTi P+ bi = wi,1p1+ wi,2p2+…+ wi,RpR+ bi=0 (1.5)
Véctơ trọng số sẽ luôn trực giao với đờng biên quyết định.
1 1 P2
P1 vector trọng số
WP+b=0
c) 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 cho 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 pi đã xác định trớc tín hiệu ra yêu cầu ti (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 {(PK,TK)}.
Bớc 2: Đặt các giá trị ban đầu bất kỳ cho các trọng số và hệ số bias.
Bớc 3: Lần lợt cho các mẫu PK lan truyền qua mạng đợc vectơ tín hiệu ra AK
Bớc 4: Tính các sai số ei tại các đầu ra của mạng theo công thức sau: ei = ti … ai
với ti là kết quả ra đích tại nơron i của lớp ra còn ai 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ố Wi và các hệ số bias bi của S nơron lớp ra:
Wimíi = Wicò + eiPkT = Wicò + (ti - ai)PkT víi i = 1... S (1.6) bimíi = bicò + ei
Bớc 6: Mỗi lần hiệu chỉnh xong các ma trận Wi và các bi thì lặp lại bớc 3.
Quá trình lặp cho đến khi các sai số ei đều bằng 0, 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 {(PK,TK)}. Cách hiệu chỉnh tham số của mạng dựa vào 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).
d) Sù héi tô
Rosenblatt đã chứng minh đợc phép lặp của quá trình huấn luyệ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ả cách tuyến tính (linearly inseparable). Trong phạm vi luận văn không trình bày về chứng minh này, ở đây chỉ xin đa ra khái niệm không gian mẫu khả tách tuyến tÝnh.
Mạng Perceptron 1 lớp không giải quyết đợc các bài toán không có khả năng phân lớp mẫu một cách tuyến tính bằng các siêu phẳng, tức là các bài toán không có tính khả tách tuyến tính. Một ví dụ kinh điển do Minsky và Papert đa ra để chứng minh minh hạn chế của mạng Perceptron đó là tập mẫu học với quan hệ
đầu vào / đầu ra theo hàm XOR
Hạn chế của mạng Perceptron đợc giải quyết trong mạng Perceptron đa lớp sẽ trình bày ở mục 1.2.2
1.2.2 mạng perceptron đa lớp a) Kiến trúc mạng:
Mạng Perceptron 1 lớp chỉ có thể giải quyết đợc những bài toán khả tách tuyến tính. Trong thực tế, không gian mẫu lại thờng không thoả mãn điều kiện này. Nh trong ví dụ do Minsky và Papert đa ra về tập mẫu học với quan hệ đầu vào/đầu ra theo hàm XOR ta không thể phân lớp bằng một siêu phẳng đợc. , Nhng với mạng Perceptron đa lớp (MLP- Multilayer Perceptron) thì vấn đề này
0 t4 1 , 4 1 1 t3 0 , 3 1 1 t2 1 , 2 0 0 t1 0 , 1 0
=
=
=
=
=
=
=
= p p p
p
có thể đợc giải quyết. Kiến trúc mạng MLP là kiến trúc truyền thẳng đa lớp (có từ 1 đến 3 lớp ẩn), hàm hoạt hoá có thể nhiều dạng không phải chỉ là hàm Hardlimit. Nhng trong các nơron trong cùng một lớp thì cùng dạng hàm hoạt hoá.
Kiến trúc một mạng MLP có 2 lớp ẩn đợc cho bởi hình 1.14
Líp Èn 1 Líp ra
Hình 1.14: Mạng Perceptron đa lớp (MLP- Multilayer Perceptron).
Để chỉ ra khả năng của mạng MLP giải quyết bài toán phân lớp không gian mẫu không khả tách tuyến tính, ta xét một ví dụ cấu hình mạng MLP 1 lớp ẩn có thể giải quyết đợc bài toán quan hệ hàm XOR do Minsky và Papert đa ra.
Vai trò của các nơron lớp ẩn là độc lập phân tách không gian mẫu thành 2 vùng riêng biệt, còn nơron lớp ra thực hiện việc kết hợp các vùng đã đợc phân chia đó để tạo thành các phân lớp mong muốn.
Các mạng MLP ngoài khả năng phân lớp không gian mẫu bất kỳ, nó còn có thể đợc dùng để thực hiện việc xấp xỉ hàm liên tục (Function Approximation).
Đầu vào
§Çu ra
b) Huấn luyện mạng:
Rosenblatt đã không giải quyết đợc vấn đề hiệu chỉnh ma trận trọng số của các lớp ẩn của mạng Perceptron đa lớp MLP. Cho đến năm 1986, một thuật toán khá hiệu quả để huấn luyện cho mạng MLP mới đợc đa ra bởi Rumelhart và McClelland. Đó chính là luật học lan truyền ngợc dùng cho mạng MLP.
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 mạng và từ đó tìm ra cách hiệu chỉnh ma trận trọng số và các hệ số bias để tối thiểu hoá sai số trung bình bình phơng. Để tính toán cho việc lan truyền ngợc sai số ở đây phải sử dụng đến đạo hàm hàm hoạt hoá, và việc tính toán phải thực hiện lần lợt qua từng lớp từ đầu ra trở lại đầu vào. Trớc hết ta có các khái niệm.
c) Sai số trung bình bình phơng. (Mean squared error):
Cho tập mẫu vào huấn luyện mạng {(PK, TK)} gồm có các mẫu pi đã xác định trớc tín hiệu ra yêu cầu ti . Khi mẫu pi đợc lan truyền qua mạng và cho ra tín hiệu đầu ra là ai, ta có thể địng nghĩa sai số bình phơng trung bình nh sau:
∑ −
=
−
=
=
1
1
2 2
2 ( )
2 ] 1 ) [(
] [ ) (
s
i i i
i a t a
t E e E x F
(1.7)
Trong đó x là vector trọng số và hệ số bias của mạng đợc viết nh sau:
x= Wi (1.8)
b
Mục tiêu của huấn luyện mạng là nhằm điều chỉnh Wi và b sao cho F(x) đạt giá
trị nhỏ nhất. Đây chính là nguyên tắc huấn luyện mạng MLP. Nguyên tắc này
đợc thực hiện bằng cách lấy đạo hàm riêng của F(x) theo các trọng số w, hệ số bias và hiệu chỉnh trọng số và hệ số bias tại bớc lặp thứ k +1 theo công thức nh
sau:
m j i m
j i m
j
i w
k F w k
w
, ,
, ( 1) ( )
∂
− ∂
=
+ α
(1.9)
m i m
i m
i b
k F b k
b ∂
− ∂
=
+1) ( ) α (
(1.10)
Với m là chỉ số của lớp mạng, còn ∝ hệ số học (learning rate). Đây cũng chính là nguyên tắc hiệu chỉnh trọng số gần giống luật delta (delta rule), tức là chỉ số hiệu chỉnh tỷ lệ thuận với vi phân từng phần của hàm sai số trung bình bình phơng theo các trọng số để tối thiểu hoá hàm này.
d) LuËt d©y chuyÒn (chain rule):
Ta giả thiết hàm f là hàm hiện duy nhất của một biến , khi đó có thể tính đạo n hàm của f theo biến thứ ba là nh sau:w
dw = w n
df( ( )) X dn
n df )(
dw w df( )
(1.11)
Sử dụng 1.11 ta có thể tính đạo hàm riêng của trong các công thức 1.9 và 1.10. F Ta có tín hiệu nnet của nơron thứ i của lớp m đợc tính nh sau:
m i s
j
m j m
j i m
i w a b
n
m
+
=∑−
=
−
1
1
1
, (1.12)
Đây là một hàm hiện của các trọng số và hệ bias. Theo đó ta có:
1 ,
= −
∂
∂ m
m j j i m
i a
w n
và
=1
∂
∂
m i
m i
b n
e) Luật học lan truyền ngợc ( back-propagation):
Thuật toán lan truyền ngợc đợc thực hiện theo nguyên tắc hồi qui khi mà độ nhạy của lớp sẽ đợc tính toán từ độ nhạy lớp m m+1 đã đợc tính trớc đó. Nh
vậy trong mạng MLP, độ nhạy sẽ đợc lan truyền ngợc từ lớp ra trở ngợc lại các lớp ẩn rồi đến lớp vào. Chi tiết về thuật toán lan truyền ngợc sai số (backpropagation) đợc trình bày trong chơng 2.
f) Sù héi tô :
Thuật toán lan truyền ngợc hội tụ đến một giải pháp mà nó tối thiểu hoá đợc sai số trung bình bình phơng vì cách thức hiệu chỉnh trọng số và hệ số bias của thuật toán là ngợc hớng với vectơ gradient của hàm sai số trung bình bình phơng đối với trọng số. Tuy nhiên, đối với mạng MLP thì hàm sai số trung bình bình phơng thờng phức tạp và có nhiều cực trị cục bộ, vì thế các phép lặp huấn luyện mạng có thể chỉ đạt đến các cực trị cục bộ của hàm sai số trung bình bình phơng mà không đạt đợc đến cực trị tổng thể. Vấn đề quá trình huấn luyện sẽ hội tụ nh thế nào sẽ phụ thuộc vào các điều kiện ban đầu của quá trình huấn luỵên. Đặc biệt là việc chọn hệ số học nh thế nào để tăng khả năng hội tụ của ∝ mạng. Với mỗi bài toán ta lại có phơng án chọn hệ số học khác nhau.
Nh vậy khi một quá trình huấn luyện theo thuật toán lan truyền ngợc hội tụ, ta cha thể khẳng định đợc rằng nó đã hội tụ đến phơng án tối u. Ta cần phải thử với một số điều kiện ban đầu để đảm bảo thu đợc phơng án tối u.
1.2.3 Mạng KOHONEN (sofm) Kiến trúc mạng
Mạng SOFM (Sefl Organizing Feature Map) đợc xây dựng trên các -
đặc trng topo giống nh bộ não của con ngời. Teuvo Kohonen là một trong những ngời đầu tiên đề xuất ý tởng này vì thế mạng SOFM còn
đợc gọi với tên là mạng Kohonen. Mạng Kohonen là mạng một lớp. Lớp này đợc gọi là bản đồ topo (Topological map layer) và cũng còn gọi là lớp cạnh trạnh (Competivi layer), ta gọi với tên là lớp Kohonen. Do đề tài chỉ tập trung nghiên cứu với mạng nơron nhiều lớp Perceptron nên không nghiên cứu sâu về mạng Kohonen ở đây.
Còn có khá nhiều kiểu mạng nơron khác có thể dùng cho bài toán xử lí nhận dạng đối tợng. Trong phạm vi đề tài này chỉ xin đợc trình bày một số dạng mạng cơ bản nhất ở trên rất hữu dụng trong các bài toán nhận dạng.
Mạng MLP có các phơng trình hiệu chỉnh các trọng số rõ ràng, rành mạch. Các phơng trình này đợc áp dụng cho việc hiệu chỉnh các trọng số của từng lớp bắt đầu từ lớp ra ngợc tới các lớp ẩn rồi tới lớp vào nên còn gọi phơng pháp lan truyền ngợc sai số.
Hình 2.1 thể hiện sơ đồ hiệu chỉnh các trọng số. Giải thuật học lan truyền ngợc của sai số phù hợp với mạng nơ
ron nhân tạo đợc mô tả trong chơng một. Thực chất đó là thủ tục dịch
chuyển ngợc hớng gradient.
Chơng 2
Mạng nơron nhiều lớp perceptron và