Phần 1: khai báo biến và khởi tạo các giá trị cho các tham số.
Phần 2: modul xây dựng cấu trúc mạng nơron 3 tầng mạng.
- tín hiệu vào của một mẫu học đọc từ tệp : X[]=X[0], X[1], X[2], …X[15]
- tín hiệu ra tơng ứng: y[]=y[0]
Phần 3: modul học với giải thuật lan truyền ngợc lỗi backpropagation + lan truyền các tín hiệu vào qua mạng
+ lan truyền ngợc sai số từ lớp ra đến lớp ẩn. Kết thúc khi đạt điều kiện dừng học.
PhÇn 4: - bé W[] chuÈn
- đa ra các kết quả của các mẫu kiểm tra.
Phần 5: Nhận và phân loại các mẫu ảnh
+ Nếu nhận ra là mặt ngời : faceValue=1;
+ Nếu nhận ra không phải là mặt ngời : faceValue=0;
Hình 3.7: Sơ đồ khối bài toán:
Khởi tạo: η,Em,W[]-,k
, {Xk,dk} Begin
Outi= sigmoir
∑q
j
Netj Wij*
¦
E= (Outi yi) E
n
i
+
∑ −
=
2
2 1
1
) ( )
( i i i
i = Out −y a Net
δ
ij old
ij new ij
j i ji i
i þ i
W W
W
W Net a y
Wij
∆ +
=
=
=
∆ η.δ . ;δ ( )∑ δ ;
tăng mẫu học k++
Wij
E<Em
E=0; k=1 k=1
Outi: tín hiệu ra q: sè tÇng a: hàm sigmoir
Phần 6:Giải phóng biến, in kết quả ra.
Trong đó 2 modul: xây dựng mạng nơron và học với giải thuật lan truyền ngợc là quan trọng nhất và đợc thể hiện qua lu đồ sau:
modul : Lan truyền tín hiệu
Chức năng :
- Tính sai số cho một cấu trúc mạng m, n, A và bộ trọng số W với một tập luyện cho trớc.
+ Vào :
- Cấu trúc mạng m, n, A và bộ trọng số.
- Tập số liệu luyện gồm p đối tợng . + Ra :
- Sai số E sinh ra sau khi lan truyền toàn bộ các đối tợng qua mạng.
Giải thuật : - Gán E = 0 - Lặp i = 1 đến p
+ Lan truyền véc tơ vào Xi qua mạng .
+ Tích luỹ sai số vào E.
W, Outjl, εlast
l = 2
TÝnh : δlj
TÝnh :
−1
=
∆wlji ηδljOutli
Hiệu chỉnh :
l ji l
ji l
ji w w
w = +∆
§óng Sai
l > 1 l =l - 1
Hình 3.9 : Lu đồ thuật toán học.
i := 1; E := 0
Lan truyền véc tơ vào Xi qua mạng (2.3.2.1.2.2.1)
TÝch luü sai sè
∑=
− +
= n
j
last j i
j Out
y E
E
1
)2
2 ( 1 i := i+1
Hình 3.8 : Lu đồ thuật toán lan truyền tín hiệu
§óng Sai
i < P -r
m, n, A, W; Tập luyện
Modul : huấn luyện
Chức năng :
- Tập trọng số W
- Lan truyÒn sai sè tõ líp ra tíi líp Èn.
- Hiệu chỉnh các trọng số.
+ Vào :
- Các tín hiệu ra của các nơron có trong mạng.
- Sai số ở lớp ra.
+ Ra :
- Tập trọng số W sau khi hiệu chỉnh
Giải thuật :
- Bắt đầu từ lớp ra ( l = 2) cho tới lớp ẩn (l = 1) tính : + Hệ số hiệu chỉnh δlj
+ Lợng hiệu chỉnh ∆ = li−1 l j l
ji Out
w ηδ .
+ Hiệu chỉnh các trọng số wlji =wlji +∆wlji
Hàm tính chỉ số W – wInd() :
Chức năng :
- Tính địa chỉ của trọng số thứ i của nơron thứ j trên lớp thứ l trong bảng tuyến tính trọng số W()
+ Vào : Ba số nguyên i, j, l + Ra : Chỉ số k
Giải thuật
Function wInd(i As Integer, j As Integer, lCurrent As Integer) As Integer If lCurrent = 1 Then
wInd = m * j + i 1- Else
wInd = (m * A) + (j A) * A + i - - 1 End If
End Function
3.3.7 Thiết lập chơng trình
Chơng trình đợc viết bằng ngôn ngữ Visual Basic.
Giao diện chính của chơng trình gồm có các module sau:
Xử lí ảnh
Huấn luyện_Nhận dạng
Nhận dạng ngay
Hình 3.10 : Giao diện chính của chơng trình
Chơng chình chính có các chức năng sau:
- Tiền xử lí ảnh
- Tiến hành quá trình huấn luyện mạng (học), sau đó lu lại bộ trọng số tốt nhất vào file (*.wei).
- Chức năng có thể xem kết quả của các mẫu học.
- Nhận dạng: tiến hành nhận dạng sau khi mạng đã đợc huấn luyện.
Sau khi xử lí nhận dạng, một file ảnh đầu vào “đúng” sẽ đợc chơng trình tiến hành xử lí, tìm trong CSDL ảnh gốc đã đợc huấn luyện một giá trị đầu ra của mạng gần đúng nhất rồi hiển thị ảnh, kết quả nh sau:
Hình 3.11: Giao diện modul huấn luyện mạng và nhận dạng.
Sau khi xử lí nhận dạng, một file ảnh đầu vào “sai” sẽ đợc hiển thị và cho kết quả dạng phủ định nh sau:
Hình 3.12 : Giao diện modul nhận dạng ảnh sau huấn luyện nhận kết quả đúng.
Hình 3.13 : Giao diện modul nhận dạng ảnh sau huấn luyện nhận kết quả sai.
Nhận dạng qua tập trọng số có sẵn
Để nhận dạng ngay bằng những tập trọng số của các mẫu đã đợc huấn luyện, chức năng này đợc kích hoạt. Việc nhận dạng ảnh từ một mẫu bất kỳ sẽ đợc chơng trình tiến hành nhận dạng chính xác trong một cơ sở dữ liệu CSDL ảnh
đã học. Màn hình huấn luyện nhận dạng nh sau:
Sau khi xử lí nhận dạng, một file ảnh đầu vào “đúng” sẽ đợc hiển thị và cho kết quả nh sau:
Hình 3.14 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn
Sau khi xử lí nhận dạng, một file ảnh đầu vào “sai” sẽ đợc hiển thị và cho kết quả dạng phủ định nh sau:
Hình 3.16 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn nhận kết quả sai.
Hình 3.15 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn nhận kết quả đúng.