i
..
ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
PHAN ANH TÚ
PHƢƠNG PHÁP HUẤN LUYỆN MẠNG NƠ RON SỬ
DỤNG GIẢI THUẬT DI TRUYỀN
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01
LUẬN VĂN THẠC SĨKHOA HỌC MÁY TÍNH
NGƢỜI HƢỚNG DẪN KHOA HỌC
TS PHẠM THANH HÀ
.
Thái Nguyên 2015
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
ii
LỜI CAM ĐOAN
Tơi xin cam đoan đây là cơng trình nghiên cứu của tôi dƣới sự định
hƣớng của thầy hƣớng dẫn, các kiến thức trong luận văn đƣợc hệ thống từ các
tài liệu đã đƣợc cơng bố và đƣợc trích dẫn đầy đủ.
Các kết của nghiên cứu và chạy thử nghiệm đều là trung thực dựa trên
chƣơng trình cài đặt kèm theo nghiên cứu này.
Thái Nguyên, ngày 20 tháng 7 năm 2015
Học viên
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
iii
LỜI CẢM ƠN
Luận văn đƣợc thực hiện tại trƣờng Đại học Công nghệ thông tin &
Truyền thông – Đại học Thái Nguyên, dƣới sự hƣớng dẫn của thầy TS Phạm
Thanh Hà.
Tơi xin bày tỏ lịng biết ơn sâu sắc tới thầy TS Phạm Thanh Hà; ngƣời
đã có những định hƣớng giúp tơi lựa chọn đề tài và hồn thành đề tài nghiên
cứu của mình. Thầy đã ân cần chỉ bảo, giảng giải cho tôi và động viên tôi rất
nhiều trong q trình thực hiện đề tài.
Tơi cũng xin gửi lời chân thành cảm ơn tới q thầy cơ thuộc phịng
Đào tạo, khoa công nghệ thông tin trƣờng Đại học Công nghệ thông tin và
truyền thông đã giúp đỡ tôi, tạo mọi điều kiện thuận lợi để tơi hồn thành luận
văn này.
Cuối cùng, tôi xin gửi lời cảm ơn tới gia đình đã cho tơi những chỗ
dựa vững chắc để tơi hồn thành tốt q trình học tập của mình trong thời
gian qua.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
iv
MỤC LỤC
LỜI CAM ĐOAN .................................................................................................... i
LỜI CẢM ƠN........ ................................................................................................ iii
MỤC LỤC.......... .................................................................................................... iv
DANH MỤC CÁC KÝ HIỆU VÀ TỪ VIẾT TẮT ............................................... vi
DANH MỤC CÁC BẢNG.................................................................................... vii
DANH MỤC CÁC HÌNH VẼ.............................................................................. viii
MỞ ĐẦU............. .................................................................................................... 1
CHƢƠNG 1: MẠNG NƠ RON NHÂN TẠO ........................................................ 3
1.1. Các khái niệm về mạng nơ ron .................................................................... 3
1.1.1. Mạng nơ ron sinh học ............................................................................ 3
1.1.2. Khái niệm mạng nơ ron nhân tạo ........................................................... 4
1.2. Mạng nơ ron truyền thẳng nhiều lớp MLP ................................................ 11
1.3. Các luật học của mạng nơ ron .................................................................... 12
1.4. Thuật toán huấn luyện lan truyền ngƣợc sai số - Back Propagation ......... 18
Kết luận chƣơng 1 ............................................................................................. 26
CHƢƠNG 2: GIẢI THUẬT DI TRUYỀN ........................................................... 27
2.1. Các khái niệm cơ bản về giải thuật di truyền ............................................. 27
2.2. Giải thuật di truyền mã hóa nhị phân ......................................................... 29
2.3. Cơ chế hoạt động của giải thuật di truyền ................................................. 33
2.4. Giải thuật di truyền mã hóa số thực ........................................................... 37
2.4.1. Nhóm tốn tử đột biến .......................................................................... 39
2.4.2. Nhóm tốn tử lai tạo ............................................................................. 41
Kết luận chƣơng 2 ............................................................................................. 44
CHƢƠNG 3: ỨNG DỤNG GIẢI THUẬT DI TRUYỀN TRONG HUẤN
LUYỆN MẠNG NƠ RON ........................................................ 45
3.1. Xây dựng giải thuật di truyền huấn luyện mạng ........................................ 45
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
v
3.2. Một số kết quả huấn luyện mạng xấp xỉ hàm XOR ................................... 49
3.2.1. Sử dụng phƣơng pháp lan truyền ngƣợc sai số truyền thống ............... 50
3.2.2. Sử dụng phƣơng pháp huấn luyện nhờ giải thuật di truyền ................. 51
3.3. Một số kết quả huấn luyện mạng xấp xỉ hàm hình chng ....................... 53
3.3.1. Huấn luyện bằng lan truyền ngƣợc sai số ............................................. 55
3.3.2. Huấn luyện bằng giải thuật di truyền .................................................... 56
3.4. Xấp xỉ XOR – XOR ................................................................................... 66
3.4.1. Huấn luyện bằng mạng nơ ron .............................................................. 67
3.4.2 Huấn luyện bằng giải thuật di truyền ..................................................... 70
Kết luận chƣơng 3 ............................................................................................. 73
KẾT LUẬN........... ................................................................................................ 74
TÀI LIỆU THAM KHẢO ..................................................................................... 75
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
vi
DANH MỤC CÁC KÝ HIỆU VÀ TỪ VIẾT TẮT
ANN
Artificial Neural Network (mạng nơron nhân tạo)
BP
Back propagation (giải thuật lan truyền ngƣợc)
GA
Gennetic Algorithm (giải thuật di truyền)
MLP
Multi-Layer Perceptrons (Perceptron nhiều tầng)
RBF
Radial Basic Function (hàm cơ sở bán kính)
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
vii
DANH MỤC CÁC BẢNG
Bảng 2.1: Bảng quá trình chọn lọc các cá thể có độ thích nghi tốt................. 32
Bảng 2.2: Bảng q trình chọn lọc các cá thể có độ thích nghi tốt................. 33
Bảng 3.1. Kết quả xấp xỉ hàm XOR sử dụng phƣơng pháp lan truyền
ngƣợc sai số..................................................................................... 51
Bảng 3.2. Kết quả xấp xỉ hàm XOR sử dụng giải thuật di truyền lần 1 ......... 52
Bảng 3.3. Kết quả xấp xỉ hàm XOR sử dụng giải thuật di truyền lần 2 ......... 53
Bảng 3.4. Một số mẫu( theo dòng) sinh ra bởi chƣơng trình .......................... 54
Bảng 3.5. Kết quả xấp xỉ hàm hình chng sử dụng giải thuật di truyền
lần 1 ................................................................................................. 57
Bảng 3.6. Kết quả xấp xỉ hàm hình chng sử dụng giải thuật di truyền
lần 2 ................................................................................................. 60
Bảng 3.7. Kết quả xấp xỉ hàm hình chng sử dụng giải thuật di truyền
lần 3 ................................................................................................. 64
Bảng 3.8. Kết quả xấp xỉ hàm XOR-XOR sử dụng phƣơng pháp lan
truyền ngƣợc sai số lần 1 ................................................................ 68
Bảng 3.9. Kết quả xấp xỉ hàm XOR-XOR sử dụng phƣơng pháp lan
truyền ngƣợc sai số lần 2 ................................................................ 69
Bảng 3.10. Kết quả xấp xỉ hàm XOR-XOR sử dụng giải thuật di truyền
lần 1 ................................................................................................. 71
Bảng 3.11. Kết quả xấp xỉ hàm XOR-XOR sử dụng giải thuật di truyền
lần 2 ................................................................................................. 72
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
viii
DANH MỤC CÁC HÌNH VẼ
Hình 1.1: Cấu tạo của một nơ ron ..................................................................... 3
Hình 1.2: Mơ hình của một nơ ron .................................................................... 5
Hình 1.3: Cấu trúc của một nơ ron .................................................................... 6
Hình 1.4: Hàm kích hoạt bƣớc nhảy ................................................................. 8
Hình 1.5: Hàm kích hoạt hàm dấu .................................................................... 9
Hình 1.6: Hàm kích hoạt hàm dốc .................................................................... 9
Hình 1.7: Hàm kích hoạt sigmoid đơn cực ..................................................... 10
Hình 1.8: Hàm kích hoạt sigmoid đa cực........................................................ 10
Hình 1.9: Mạng nơ ron truyền thẳng MLP ..................................................... 11
Hình 1.10: Học có giám sát ............................................................................. 13
Hình 1.11: Học khơng có giám sát .................................................................. 15
Hình 1.12: Mạng MLP lan truyền ngƣợc sai số .............................................. 19
Hình 1.13: Thuật tốn lan truyền ngƣợc sai số ............................................... 23
Hình 2.1: Bánh xe rulet lựa chọn nhiễm sắc thể ............................................. 36
Hình 2.2: Biểu diễn giá trị của ..................................................................... 40
Hình 3.1: Mã hóa trọng số biểu diễn thập phân trong mạng nơ ron ............... 47
Hình 3.2: Sơ đồ giải thuật di truyền ................................................................ 48
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
1
MỞ ĐẦU
1. Đặt vấn đề
Nhƣ chúng ta đã biết mạng nơ ron nhân tạo là sự tái tạo bằng kỹ thuật
những chức năng của hệ thần kinh con ngƣời. Trong q trình tái tạo khơng
phải tất cả các chức năng của bộ não con ngƣời đều đƣợc tái tạo, mà chỉ có
những chức năng cần thiết. Bên cạnh đó cịn có những chức năng mới đƣợc
tạo ra nhằm giải quyết một bài toán định trƣớc.
Mạng nơ ron bao gồm các nơ ron đƣợc liên kết với nhau bằng các trọng
số theo một cấu trúc xác định. Mạng nơ ron có thể đƣợc huấn luyện để thực
hiện các nhiệm vụ khác nhau. Quá trình huấn luyện sẽ thiết lập bộ trọng số
cho các liên kết giữa các nơ ron trong mạng.
Thuật toán huấn luyện lan truyền ngƣợc là một thuật toán trong lịch sử
phát triển mạng nơ ron nhân tạo, thuật toán đƣợc ứng dụng cho mạng truyền
thẳng nhiều lớp. Thuật toán sử dụng phƣơng pháp giảm gradient (giảm dốc
nhất) để tối thiểu hàm sai số. Giá trị hàm sai số Ek đối với một mẫu đƣợc tính
tốn dựa trên giá trị các trọng số hiện tại. Các giá trị trọng số này sau đó đƣợc
hiệu chỉnh và trở thành các giá trị trọng số hiện tại để tính giá trị hàm sai số
tiếp theo Ek+1.
Hạn chế của giải thuật huấn luyện lan truyền ngƣợc sai số là tốc độ chậm
và nhiều khi gặp phải vấn đề nhƣ:
Mạng liệt: xảy ra khi những trọng số đƣợc điều chỉnh tới những giá trị
rất lớn. Tổng đầu vào của một đơn vị ẩn hoặc đơn vị đầu ra có thể bởi vậy mà
đạt giá trị rất cao (hoặc dƣơng hoặc âm), và qua hàm kích hoạt sigmoid, đơn
vị sẽ có một giá trị kích hoạt rất gần 0 hoặc rất gần 1. Giá trị hiệu chỉnh trọng
số gần 0, và quá trình huấn luyện có thể đi đến một trạng thái dừng ảo.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
2
Cực tiểu địa phƣơng: bề mặt sai số của mạng rất phức tạp đầy những
ngọn đồi và những thung lũng. Bởi vì sự hạ độ dốc, mạng có thể bị mắc bẫy
tại một cực tiểu địa phƣơng khi có nhiều cực tiểu thấp hơn gần bên cạnh.
Giải thuật di truyền là một trong những kỹ thuật tìm kiếm tối ƣu giúp ta
giải quyết đƣợc những vấn đề đã đặt ra ở trên, nó cho phép ta tìm kiếm lời
giải tối ƣu trên các không gian lớn, nguyên tắc cơ bản của giải thuật di truyền
là mơ phỏng q trình chọn lọc của tự nhiên. Cho đến nay lĩnh vực nghiên
cứu về giải thuật di truyền đã thu đƣợc nhiều thành tựu, giải thuật di truyền
đƣợc ứng dụng trong nhiều lĩnh vực phức tạp, các vấn đề khó có thể giải
quyết đƣợc bằng phƣơng pháp thông thƣờng [1-3].
Nhƣ đã đề cập ở trên q trình huấn luyện mạng nơ ron chính là quá
trình cực tiểu hàm sai số để xác định các trọng số của mạng và luận văn sẽ sử
dụng giải thuật di truyền để xác định các trọng số của mạng thay vì sử dụng
giải thuật huấn luyện.
2. Đối tƣợng và phạm vi nghiên cứu
- Mạng nơ ron nhân tạo trong đó đi sâu vào mạng truyền thẳng và kỹ
thuật huấn luyện lan truyền ngƣợc sai số
- Nghiên cứu ứng dụng giải thuật di truyền trong huấn luyện mạng nơ
ron truyền thẳng, thay thế kỹ thuật huấn luyện lan truyền ngƣợc sai số
3. Phƣơng pháp nghiên cứu
Nghiên cứu lý thuyết kết hợp với cài đặt thực nghiệm
4. Ý nghĩa khoa học của đề tài
Nghiên cứu về mạng nơ ron, giải thuật di truyền và sử dụng giải thuật di
truyền trong huấn luyện mạng nơ ron.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
3
1
CHƢƠNG 1: MẠNG NƠ RON NHÂN TẠO
1.1. Các khái niệm về mạng nơ ron
1.1.1. Mạng nơ ron sinh học
Mạng nơ ron bao gồm vô số các nơ ron đƣợc liên kết truyền thơng với
nhau trong mạng, hình 1.1 là một phần của mạng nơ ron bao gồm hai nơ ron.
Hình 1.1:Cấu tạo của một nơ ron
Nơ ron đƣợc cấu tạo gồm các phần chính sau:
Thân nơ ron: thƣờng gọi là soma có nhiệm vụ chính là tổng hợp và xử
lý cho tín hiệu điện nhận đƣợc từ các rễ đầu vào. Bản chất của q trình này
chính là việc lấy tổng cộng tất cả các tín hiệu mà nơ ron nhận đƣợc
Các xúc tu: đó là các tua dài gắn liền với soma có chức năng truyền tín
hiệu điện nhận từ môi trƣờng hoặc từ các nơ ron khác để soma xử lý
Trục cảm ứng: là thành phần kết nối các nơ ron lại với nhau. Nó có chức
năng phát các tín hiệu điện, truyền tín hiệu từ nơ ron này đi nơi khác. Thông
thƣờng axon ở trạng thái nghỉ, khi điện thế trong soma vƣợt quá ngƣỡng cho
phép thì axon sẽ phát ra một xung điện thế
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
4
Khớp nối:. Điểm liên kết giữa sợi trục cảm ứng-axon của nơron này với
các xúc tu-dendrites nhánh hình cây của nơron khác thông qua các mối nối rất
đặc biệt gọi là synapses. Liên kết giữa các nơron và độ nhạy của mỗi synapse
đƣợc xác định bởi q trình hóa học phức tạp. Khi điện thế của synapses tăng
lên do các xung điện phát ra từ axon thì synapses sẽ tiết ra một loại hóa chất
để xúc tu mở ra cho các ion đi qua nó. Các ion này làm thay đổi tín hiệu điện
thế trên các xúc tu tạo ra các xung dữ liệu lan truyền đến các nơ ron khác. Các
synapses đóng vai trị hết sức quan trọng trong quá trình học tập. Khi học tập
và làm việc nhiều thì các hoạt động của synapses đƣợc tăng lên nhiều tạo ra
nhiều liên kết mạnh mẽ giữa các nơ ron [5]
Một cách tổng quát hóa qua các thành phần cấu tạo và chứng năng của
chúng trong mạng nơ ron chúng ta thấy rằng các hoạt động chính của nơ ron
đƣợc thể hiện nhƣ sau: nơ ron lấy tổng tất cả các tín hiệu vào mà nó nhận
đƣợc sau đó phát ra một tín hiệu điện; nếu tổng tất cả các tín hiệu điện lớn
hơn một ngƣỡng cho phép nào đó rồi xử lý và cho ra một tín hiệu điện đầu ra.
Tín hiệu điện đầu ra này truyền qua axon và chính là tín hiệu điện đầu vào của
một nơ ron khác.
1.1.2. Khái niệm mạng nơ ron nhân tạo
Mạng nơron nhân tạo- Artificial Neural Network (ANN), gọi tắt là mạng
nơ ron hay Neural Network là một mơ hình xử lí thơng tin mơ phỏng theo
cách xử lí thơng tin của các hệ nơ ron sinh học. Nó đƣợc tạo lên từ một số
lƣợng lớn các phần tử (gọi là phần tử xử lý hay nơron) kết nối với nhau thông
qua các liên kết (gọi là trọng số liên kết) làm việc nhƣ một thể thống nhất để
giải quyết một vấn đề cụ thể nào đó.
Một mạng nơron nhân tạo đƣợc cấu hình cho một ứng dụng cụ thể (nhận
dạng mẫu, phân loại dữ liệu, ...) thơng qua một q trình học từ tập các mẫu
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
5
huấn luyện. Về bản chất học chính là q trình hiệu chỉnh trọng số liên kết
giữa các nơron.
Mạng nơ ron bao gồm vô số các nơ ron liên kết truyền thơng với nhau
trong mạng. Nơ ron có thể liên kết với các nơ ron khác thơng qua rễ. Chính vì
các liên kết đa dạng nhƣ vậy mà mạng nơ ron có độ liên kết rất cao.[1]
x1
x2
.
.
.
.
y
1
Nơ ron
xn
Hình 1.2:Mơ hình của một nơ ron
Một tính chất rất cơ bản của mạng nơ ron sinh học là các đáp ứng theo
kích thích có khả năng thay đổi theo thời gian. Các đáp ứng có thể tăng lên,
giảm đi hoặc hồn tồn biến mất. Qua các nhánh axon liên kết tế bào nơ ron
này với các nơ ron khác, sự thay đổi trạng thái của một nơ ron cũng kéo theo
sự thay đổi trạng thái của những nơ ron khác và do đó làm thay đổi toàn bộ
mạng nơ ron. Việc thay đổi trạng thái của mạng nơ ron có thể thực hiện qua
một quá trình “dạy” hoặc do khả năng “học” tự nhiên.
Sự thay thế những tính chất này bằng một mơ hình tốn học tƣơng
đƣơng đƣợc gọi là mạng nơ ron nhân tạo. Mạng nơ ron nhân tạo có thể đƣợc
chế tạo bằng nhiều cách khác nhau vì vậy trong thực tế tồn tại rất nhiều kiểu
mạng nơ ron nhân tạo.
Mô hình nơ ron có m đầu vào x1, x2, ...xm và một đầu ra y (hình 1.2), mơ
hình này gồm có ba thành phần cơ bản:
+Các kích thích đầu vào của tế bào nơ ron có thế năng tác động vào
màng membran khác nhau đƣợc biểu diễn qua trọng lƣợng wi, i = 1, .., m
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
6
tƣơng ứng với cƣờng độ kích thích của từng đầu vào. Các kích thích đầu vào
đƣợc thực hiện qua một bộ tổng, đó là giá trị đo kích thích đầu vào tác động
vào tế bào nơ ron.
+Đầu ra của bộ tổng đƣợc đƣa đến bộ đáp ứng a(.), bộ này khơng chỉ có
chức năng tạo ra đáp ứng tức thời mà cịn có khả năng lƣu giữ các đáp ứng
theo thời gian. Thành phần này hoạt động theo nguyên lý “nhớ” động.
+Nơ ron bị kích thích trong thời gian thế năng của màng membran vƣợt
quá ngƣỡng. Quan hệ này đƣợc thực hiện nhờ hàm a(.), nó có chức năng của
bộ tạo tín hiệu ngƣỡng, xác định phụ thuộc của tín hiệu ra y vào các kích
thích đầu vào.
Cách thành lập nơ ron nhân tạo nhƣ vậy tạo ra một độ tự do trong thiết
kế. Việc lựa chọn phép cộng tín hiệu đầu vào và đáp ứng a(.) sẽ cho ra các
kiểu mạng nơ ron nhân tạo khác nhau và tƣơng ứng là các mơ hình mạng khác
nhau.[1]
Hình 1.3: Cấu trúc của một nơ ron
là các tín hiệu đầu vào
là các trọng số tƣơng ứng (trọng số thứ j của nơ ron thứ i)
là ngƣỡng đặt vào phần tử nơ rơn thứ i
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
7
là giá trị đầu ra
là hàm kích hoạt
là hàm truyền
Theo hình 1.3 thì tín hiệu đầu ra
là:
(1.1)
Trong đó hàm kích hoạt a(f) ở dạng hàm bƣớc nhảy
(1.2)
Nhƣ vậy
chỉ có thể nhận 2 giá trị một là 0 hoặc là 1
Hàm truyền f(.) : Hàm này đƣợc 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 đã cho.
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 [-1, 1]. 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 nào là tuỳ thuộc vào từng bài toán và
kinh nghiệm của ngƣời thiết kế mạng. Một số hàm truyền thƣờng sử dụng
trong các mô hình mạng nơron:
(1.3)
Hàm bình phƣơng (quadratic funtion)
(1.4)
Hàm hình cầu (spherical funtion)
(1.5)
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
8
Trong đó
và
là bán kính và tâm của hình cầu
Hàm đa thức (Polynomial function):
(1.6)
Trong đó
là trọng số kết nối của phần tử j và k đến phần tử i;
là các hệ số thực không đổi.
và
là ngƣỡng đặt vào phần tử nơ rơn thứ i
Các hàm kích hoạt thƣờng sử dụng:
Hàm bƣớc nhảy (Step function):
(1.7)
Đồ thị của hàm đƣợc thể hiện nhƣ hình 1.4 sau:
Hình 1.4: Hàm kích hoạt bước nhảy
Hàm dấu (Hard limiter – threshold function):
(1.8)
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
9
Đồ thị của hàm đƣợc thể hiện nhƣ hình 1.5 sau:
Hình 1.5: Hàm kích hoạt hàm dấu
Hàm dốc (Ramp function):
(1.9)
Đồ thị của hàm đƣợc thể hiện nhƣ hình 1.6 sau:
Hình 1.6: Hàm kích hoạt hàm dốc
Hàm sigmoid đơn cực (Unipolar sigmoid function):
(1.10)
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
10
Đồ thị của hàm thể hiện nhƣ hình 1.7 sau:
Hình 1.7: Hàm kích hoạt sigmoid đơn cực
Hàm sigmoid lƣỡng cực (Bipolar sigmoid function):
(1.11)
với >0
Đồ thị của hàm đƣợc thể hiện nhƣ hình 1.8 sau:
Hình 1.8: Hàm kích hoạt sigmoid đa cực
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
11
1.2. Mạng nơ ron truyền thẳng nhiều lớp MLP
Có rất nhiều kiểu kiến trúc về mạng nơ ron nhân tạo. Các kiểu kiến trúc
mạng nơ ron nhân tạo này đƣợc tạo ra tùy thuộc vào yêu cầu của bài toán cần
giải quyết. Các tính năng của mạng nơ ron tùy thuộc vào cấu trúc, kiểu liên
kết, các trọng số liên kết và q trình tính tốn của các nơ ron đơn lẻ. Trong
phạm vi nghiên cứu của luận văn này chúng ta đi thẳng vào nghiên cứu mạng
nơ ron truyền thẳng nhiều lớp MLP (Multi-Layer Perceptrons) bởi tính phổ
biến của nó.
Cấu tạo của mạng MLP gồm có 3 lớp: lớp đầu vào, lớp ẩn và lớp đầu ra.
Hình 1.9 cho chúng ta một cái nhìn tổng quát về mạng MLP
Hình 1.9: Mạng nơ ron truyền thẳng MLP
Lớp đầu vào (Input layer): là các véc tơ x1, x2, ..,xm trong không gian
m chiều. Tất cả các nơ ron của lớp đầu vào có nhiệm vụ nhận tín hiệu đầu
vào. Thơng thƣờng các nơ ron đầu vào khơng làm biến đổi tín hiệu đầu vào
mà chỉ có chức năng nhận và phân phối tín hiệu đầu vào. Mỗi nơ ron của lớp
đầu vào liên kết với tất cả các nơ ron của tầng liền kế trƣớc nó (thƣờng là lớp
ẩn). Đầu ra của nơ ron lớp đầu vào chính là đầu vào của nơ ron liền sau nó.
Lớp ẩn (Hidden Layer): là lớp nơ ron dƣới lớp vào, chúng không liên
hệ trực tiếp với thế giới bên ngoài nhƣ các lớp nơ ron vào và ra.
Lớp ra (Output Layer): là lớp tạo tín hiệu ra sau cùng.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
12
Hoạt động của mạng MLP có thể mơ tả một cách cụ thể nhƣ sau: tại tầng
đầu vào các nơron nhận tín hiệu vào xử lý (tính tổng trọng số, gửi tới hàm
truyền) rồi cho ra kết quả (là kết quả của hàm truyền). Kết quả này sẽ đƣợc
truyền tới các nơron thuộc tầng ẩn thứ nhất; các nơron tại đây tiếp nhận nhƣ là
tín hiệu đầu vào, xử lý và gửi kết quả đến tầng ẩn thứ 2;…; quá trình tiếp tục
cho đến khi các nơron thuộc tầng ra cho kết quả.
Hàm tính tổng trong mạng MLP thƣờng có dạng tổng quát nhƣ sau:
, các hàm chuyểnf(.) thƣờng có nhiều dạng khác nhau tùy vào
mục đính của mạng.
1.3. Các luật học của mạng nơ ron
Học tham số (Parameter Learning): là các tham số về trọng số cập nhật
kết nối giữa các nơ ron.
Giả sử ta có một 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 thông số là bằng cách nào đó tìm
đƣợc ma trận chính xác mong muốn từ ma trận giả thiết ban đầu với cấu trúc
của mạng nơ ron đã xây dựng.
Để thực hiện việc này, mạng nơ ron 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 tốn gần đúng ma trận W
cần tìm đặc trƣng cho mạng.
Một cách chi tiết hóa q trình học của mạng nơ ron là huyấn luyện sao
cho với một tập các véctơ đầu vào X, mạng có khả năng tạo ra tập các véctơ
đầu ra mong muốn Y của nó. Tập X đƣợc sử dụng cho huấn luyện mạng đƣợc
gọi là tập huấn luyện (training set). Các phần tử x thuộc X đƣợc gọi là các
mẫu huấn luyện (training example). Quá trình huấn luyện bản chất là sự thay
đổi các trọng số liên kết của mạng. Trong quá trình này, các trọng số của
mạng sẽ hội tụ dần tới các giá trị sao cho với mỗi véctơ đầu vào x từ tập huấn
luyện, mạng sẽ cho ra véctơ đầu ra y nhƣ mong muốn.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
13
Có ba phƣơng pháp học:
Học có giám sát (Supervised Learning): là q trình học có tín hiệu
chỉ đạo bên ngồi. Hình 1.10 minh họa q trình học có giám sát
Hình 1.10: Học có giám sát
Với học có giám sát, tập mẫu huấn luyện đƣợc cho dƣới dạng D = {(x,t) |
N
K
(x,t) ∈ [IR x R ]}, trong đó: x = (x1, x2, ..., xN) là véctơ đặc trƣng N chiều
của mẫu huấn luyện và t = (t1, t2, ..., tK) là véctơ mục tiêu K chiều tƣơng ứng,
nhiệm vụ của thuật toán là phải thiết lập đƣợc một cách tính tốn trên mạng
nhƣ thế nào đó để sao cho với mỗi véctơ đặc trƣng đầu vào thì sai số giữa giá
trị đầu ra thực sự của mạng và giá trị mục tiêu tƣơng ứng là nhỏ nhất. Chẳng
hạn mạng có thể học để xấp xỉ một hàm t = f(x) biểu diễn mối quan hệ trên tập
các mẫu huấn luyện (x, t).
Nhƣ vậy với học có giám sát, số lớp cần phân loại đã đƣợc biết trƣớc.
Nhiệm vụ của thuật toán là phải xác định đƣợc một cách thức phân lớp sao
cho với mỗi véctơ đầu vào sẽ đƣợc phân loại chính xác vào lớp của nó.
Dựa vào các điều kiện nêu trên chúng ta có thể xây dựng một thuật tốn
thể hiện q trình học có giám sát nhƣ sau:
Giả sử ta cần xấp xỉ một ánh xạ: X→ Y, trong đó X là tập các vấn đề và
Y là tập các lời giải tƣơng ứng cho vấn đề đó. Các mẫu (x, y) với x = (x1, x2, .
. ., xn)
X, y = (yl, y2, . . ., ym) Y đƣợc cho trƣớc.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
14
+ Bước 1: Xây dựng cấu trúc cho mạng nơron theo u cầu tính tốn,
chẳng hạn mạng cần xây dựng có (n + 1) nơron đầu vào (trong đó có n nơron
cho biến vào và 1 nơron cho ngƣỡng x0), mạng có m nơron đầu ra, và khởi tạo
các trọng số liên kết của mạng.
+ Bước 2:Đƣa một véctơ x trong tập mẫu huấn luyện X vào mạng.
+ Bước 3: Tính véctơ đầu ra v của mạng.
+ Bước4: So sánh véctơ đầu ra mong muốn y đƣợc cho trong tập huấn
luyện với véctơ đầu ra v do mạng tạo ra; nếu có thể thì đánh giá lỗi.
+ Bước 5: Hiệu chỉnh các trọng số liên kết theo một cách nào đó sao cho
ở lần tiếp theo khi đƣa véctơ x vào mạng, véctơ đầu ra v sẽ giống với y hơn.
+ Bước 6: Nếu kết quả chƣa tốt, lặp lại các bƣớc từ bƣớc 2 đến bƣớc 5
cho tới khi mạng đạt tới trạng thái hội tụ. Việc đánh giá lỗi có thể thực hiện
theo nhiều cách là sử dụng lỗi tức thời: Err = (v- y), hoặc Err = |v- y| hoặc lỗi
trung bình bình phƣơng:
Có hai loại lỗi trong đánh giá một mạng nơron:
Trƣờng hợp lỗi thứ nhất gọi là lỗi rõ ràng (apparent error): đánh giá
khả năng xấp xỉ các mẫu huấn luyện của một mạng đã đƣợc huấn luyện.
Trƣờng hợp lỗi thứ hai gọi là lỗi kiểm tra (test error): đánh giá khả
năng tổng quá hóa của một mạng đã đƣợc huấn luyện, tức khả năng phản ứng
với các véctơ đầu vào mới. Để đánh giá lỗi kiểm tra chúng ta phải biết đầu ra
mong muốn cho các mẫu kiểm tra.
Thuật toán tổng quát ở trên cho học có giám sát trong các mạng nơron có
nhiều cài đặt khác nhau, sự khác nhau chủ yếu là cách các trọng số liên kết
đƣợc thay đổi trong suốt thời gian học. Trong đó tiêu biểu nhất là thuật tốn
lan truyền ngƣợc.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
15
Học khơng có giám sát (Unsupervised Learning): là q trình học
khơng có tín hiệu chỉ đạo bên ngồi. Hình 1.11 minh họa q trình học khơng
có giám sát
Hình 1.11: Học khơng có giám sát
Trong bài tốn học khơng giám sát, tập dữ liệu huấn luyện đƣợc cho
dƣới dạng: D = {(x1, x2, ..., xN)}, với (x1, x2, ..., xN) là véctơ đặc trƣng của
mẫu huấn luyện. Nhiệm vụ của thuật toán là phải phân chia tập dữ liệu D
thành các nhóm con, mỗi nhóm chứa các véctơ đầu vào có đặc trƣng giống
nhau.
Nhƣ vậy với học khơng giám sát, số lớp phân loại chƣa đƣợc biết trƣớc,
và tùy theo tiêu chuẩn đánh giá độ tƣơng tự giữa các mẫu mà ta có thể có các
lớp phân loại khác nhau.
Học tăng cƣờng: là quá trình học kết hợp cả học có giám sát và học
khơng giám sát.
Ngun lý chính của học tăng cƣờng là : với véctơ đầu vào, quan sát
véctơ đầu ra do mạng tính đƣợc. Nếu kết quả đƣợc xem là tốt thì mạng sẽ
đƣợc thƣởng theo nghĩa tăng các trọng số kết nối lên.Ngƣợc lại các trọng số
kết nối khơng thích hợp sẽ đƣợc giảm xuống. Xu hƣớng này chính là q trình
điều chỉnh để chất lƣợng của mạng ngày càng tốt dần lên. Tuy nhiên kiểu học
này không cho chúng ta biết trƣớc giá trị đích của mỗi mẫu tƣơng ứng.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
16
Dạng tổng quát của luật học trọng số của mạng nơ ron cho biết về gia số
của véctơ
Với
là
tỉ lệ với tín hiệu học và tín hiệu đầu vào
:
la một số dƣơng còn gọi là hằng số học dùng để xác định tốc độ
học, r là tín hiệu học, r phụ thuộc vào hàm
Từ cơng thức
ta thấy rằng véctơ trọng số
có số gia tỉ lệ với tín hiệu vào x và tín hiệu học r. véctơ
trọng số tại thời điểm (t+1) đƣợc tính nhƣ sau:
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:
Một số thuật tốn học có giám sát và không giám sát đƣợc phát triển dựa
vào luật cập nhật trọng số :
Sự khác biệt chính giữa các thuật tốn học có giám sát và khơng giám
sát này là tín hiệu học r sẽ đƣợc phát ra để cập nhật trọng số nhƣ thế nào.
Luật Hebb là một ví dụ điển hình, với tiếp cận trọng số đƣợc điều chỉnh
phù hợp với quan hệ trƣớc –sau. Cụ thể luật học Hebb định nghĩa:
Với a(.) là hàm kích hoạt
Định luật Hebb: Khi một tế bào A ở gần tế bào B, kích hoạt thƣờng
xuyên hoặc lặp lại việc làm cháy nó thì phát triển một q trình sinh hố ở các
tế bào làm tăng tác động này.
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>
17
đơn giản là đầu ra của nơ ron hiện thời.
Trong luật Hebb tín hiệu lỗi
từ đó các
Theo cơng thức
ta có
thành phần của véctơ trọng số
đƣợc cập nhật lại nhƣ sau :
Luật Hebb là luật học không giám sát cho mạng truyền thẳng, nó chỉ sử
dụng các đầu vào và các đầu ra hiện thời để cập nhật trọng số. Trong luật học
này các trọng số cần đƣợc khởi tạo ngẫu nhiên với giá trị xấp xỉ bằng khơng
trƣớc khi học.
Ví dụ: Xét mạng chỉ có một đơn vị xử lý nhƣ hình 1.3 với hàm kích
hoạt là hàm dấu
Sign(), Sign(x)=1 nếu x >=0 và Sign(x)=-1 nếu x <0
Có 4 đầu vào x1, x2, x3, x4. Véc tơ trọng số w = (w1, w2, w3, w4). Giả sử
ta huấn luyện cho mạng với 3 véc tơ mẫu sau:
;
;
Véctơ trọng số đƣợc khởi tạo
Hằng số học đƣợc cho =1
Theo luật Hebb ta có các bƣớc kết quả sau:
Bước1:Đƣavéctơmẫux(1)vàođểcậpnhậtvéctơtrọngsố
Số hóa bởi Trung tâm Học liệu - ĐHTN
/>