Phần 1 cuốn sách Mạng nơ-rôn và ứng dụng trong xử lý tín hiệu cung cấp cho người học các kiến thức: Một số các khái niệm cơ bản, mô hình nơ-ron, mô hình mạng perceptron MLP và các thuật toán hoạt động, mạng có phản hồi. Mời các bạn cùng tham khảo nội dung chi tiết.
Trang 3Bán quyền thuộc về trường Đại học Bách Khoa Hà Nội.
Mọi hình thức xuất bản, sao chép mà không có sự cho phép bằng văn bàn của trường là vi phạm pháp luật
Trang 4LỜI NÓI ĐÀU
Cuốn giáo trình Mạng nơ—rôn và ứng dụng trong x ử lý tín hiệu được sử dụng
để giảng dạy môn học cùng tên cho sinh viên ngành Điện của trường Đại học Bách Khoa Hà Nội
Cuốn sách bao gồm 8 chưcmg, trinh bày một số kiến thức cơ bản về một chuyên ngành tương đối mới của ngành Trí tuệ nhân tạo là các mạng nơ-rôn nhân tạo và một
sổ khả năng ứng dụng thực tế của các công cụ mạng nơ-rôn nhân tạo trong các bài toán
Chương 8 giới thiệu một số giải pháp mạch tích hợp mô phòng nơ-rôn và mạng nơ-rôn
Thông qua giáo trinh, hy vọng người đọc có thể tìm hiểu và nắm được các ý tường chính về mạng nơ-rôn nhân tạo, từ đó cỏ thể triển khai ứng dụng các công
cụ này trong các bài toán xử lý tín hiệu phức tạp khi mà các công cụ kinh điển tỏ ra
không hiệu quả.
Trong lần xuất bản đầu tiên, giáo trình không thể tránh khỏi các sai sót Tác già rất mong nhận được các ý kiến đóng góp cùa bạn đọc Các ý kiến xin gừi về Bộ môn
Kỹ thuật đo và Tin học công nghiệp, Viện Điện, trường Đại học Bách Khoa Hà Nội.Xin chân thành cảm ơn
Tác giá
Kính tặng ồ n g Bà nội - ngoại cùa các cháu, Tặng Em và các Con thương yêu!
Trang 5MỤC LỤC
LỜI NỎIĐẰU 3
CHƯƠNG 1 MỘT SỐ CÁC KHÁI NIỆM c ơ B Ả N 7
1.1 Vị trí của chuyên ngành mạng nơ-rỏn và ứng dụng trong xử lý tín hiệu 7
1.2 Theo dòng lịch sử 12
1.3 Các quá trinh CO’ bản cùa mạng no>-rôn 18
1.3.1 Quá trinh học 18
1.3.2 Quá trinh kiểm tra 19
1.4 Các ứng dụng của mạng no>-rỏn 19
CHƯƠNG 2 MÔ HÌNH NƠ-RỎN 22
2.1 No>-rôn sinh học và mô hình toán học của no>-rôn nhản tạo 22
2.1.1 Bộ não con người 22
2.1.2 Mô hình nơ-rôn nhân tạo cùa McCulloch - Pitts 24
2.1.3 Các dạng hàm truyền đạt chính khác 27
2.1.4 Ví dụ tinh toán đáp ứng đầu ra của nơ-rỏn với các hàm truyền đạt khác nhau 29
2.2 Các quá trình học và kiểm tra cùa no>-rôn 30
2.2.1 Quá trình học cùa nơ-rôn 30
2.2.2 Thuật toản học có hướng dẫn của nơ-rôn 33
2.2.3 Một số phương pháp nâng cao chất lượng cùa quá trình học sử dụng gradient 41
2.2.4 Quá trình kiểm tra mạng nơ-rôn và khổ năng tổng quát hóa 46
CHƯƠNG 3 MÓ HỈNH MẠNG PERCEPTRON MLP VÀ CÁC THUẠT TOÁN HOẠT ĐỌ NG 49
3.1 No>-rôn và mạng no>-rôn nhân tạ o 49
3.2 Các cấu trúc mạng no>-rôn 50
3.3 Cấu trúc mạng MLP 52
3.4 Quá trinh học cùa mạng MLP 55
3.5 Thuật toán học theo bước giảm cực đại cho mạng M LP 58
3.6 Thuật toán Levenberg - Marquardt 59
3.7 Thuật toán học cùa Hebb 59
Trang 63.8 Vần đề mạng học quá khớp (overtitting) và mạng học không đủ
(undertitting) 61
3.9 Ví dụ minh họa ứng dụng 68
CHƯƠNG 4 MẠNG CÓ PHÁN HỒI 71
4.1 Mạng RM LP 71
4.1.1 Cấu trúc cùa mạng RMLP 71
4.1.2 Thuật toán học cùa mạng RMLP 73
4.1.3 Ví dụ ứng dụng mạng RMLP 74
4.2 Mạng ELMAN 77
4.2.1 Cấu trúc của mạng Elman 77
4.2.2 Thuật toán học cùa mạng Elman 79
4.2.3 Ví dụ ứng dụng mạng Elman 81
4.3 Mạng R T R N 84
4.3.1 Cấu trúc mạng RTRN 84
4.3.2 Thuật toán học của mạng RTRN 85
4.3.3 Ví dụ ứng dụng mạng RTRN 86
4.4 Mạng HOPFIELD 89
4.4.1 Cấu trúc cùa mạng Hopíield 89
4.4.2 Thuật toán học của mạng Hoptield 91
4.4.3 Ví dụ áp dụng 93
4.5 Mạng HAMMING 95
4.5.1 Cấu trúc mạng Hamming 95
4.5.2 Ví dụ minh họa 97
4.6 Mạng B A M 100
4.6.1 cáu trúc của mạng BAM 100
4.6.2 Thuật toán học của mạng BAM 101
4.6.3 Ví dụ minh họa 102
CHƯƠNG 5 CÁC MẠNG HOẠT ĐỌNG THEO NGUYÊN TÁC Tự TỐ CHỨC.105 5.1 Mạng KOHONEN 105
5.2 Quá trình học của mạng KOHONEN 111
5.2.1 Các thuật toán phân nhóm trực tuyến 111
5.2.2 Thuật toán phân nhóm ngoại tuyến 114
5.3 Ví dụ ứng dụng mạng KOHONEN 121
5.3.1 Xác định mẫu cho số liệu hai chiều 121
5.3.2 Xác định mẫu cho số liệu đa chiều 123
Trang 7CHƯƠNG 6 LÔ-GIC MỜ VÀ MẠNG NƠ-RÒN LÔ-GIC M Ờ 125
6.1 Khái niệm lô-gic m ờ 125
6.2 Biều thức lô-gic mờ 127
6.2.1 Một số toán tử mờ cơ bản 127
6.2.2 Các toán tử cơ bản trong lô—gic m ờ 130
6.3 Quy tắc suy luận mờ và giá trị cùa quy tắc suy luận m ờ 135
6.4 Tinh đáp ứng trong trường hợp hệ nhiễu quy tắc suy luận m ờ 137
6.5 Một số mạng nơ-rôn lò-gic mờ 139
6.5.1 Mô hình mạng Mamdani/RBF 140
6.5.2 Mô hình mạng T S K 147
CHƯƠNG 7 MỘT SỐ ỨNG DỤNG THỰC TẾ CÙA MẠNG NƠ -RÓ N 165
7.1 Bài toán nhận dạng ảnh 165
7.2 Bài toán dự báo đình và đáy đồ thị phụ tải điện 24h 167
7.3 Bài toán ước lượng trữ lượng gió 170
7.4 Nhận dạng tín hiệu điện tâm d ồ 174
7.5 Bài toán phân loại các thành phần ừong hỗn họp khi 178
CHƯƠNG 8 CÁC GIẢI PHÁP MẠCH MÔ PHỎNG NƠ-RÔN VÀ MẠNG NƠ-RỐN .181
8.1 Giới thiệu chung 181
8.2 Một số mõ hình mạch mô phòng các khối no>-rôn cơ bản 182
8.2.1 Các khối nơ-rôn của mạng truyền thẳng 182
8.2.2 Mạch analog mô phỏng hoạt động cùa nơ-rôn Kohonen (mạng SOM) 187
8.3 Một số mạch tích hợp mỏ phỏng nơ-rôn và mạng no^-rôn 189
8.3.1 Micro Devices MD1220 191
8.3.2 NLX-420 Neural Processor Slice 191
8.3.3 MT19003 NISP Neural Instruction Set Processor 191
8.3.4 80170NW ETANN 191
8.3.5 NeuroClassifier 192
8.3.6 Các card PC Accelerator và Neurocomputers 192
TÀI LIỆU THAM KHẢO 198
Trang 8Chương 1 MỘT SỐ CÁC KHÁI NIỆM c ơ BẢN
Trong chương này sẽ giới thiệu cho người đọc về vai trò, vị trí và các khả năng ứng dụng thực tế của chuyên ngành mạng nơ-rôn nhân tạo Đồng thời một số mốc lịch
sử trong quá trình của các mạng nơ-rôn cũng sẽ được điềm qua
1.1 VỊ TRÍ CÙA CHUYẾN NGÀNH MẠNG NƠ-RÔN VÀ ỨNG DỤNG TRONG Xử LÝ TÍN HIỆU
Xử lý thông tin (Information Processing) là một trong những nhiệm vụ cơ bản
của gần như mọi lĩnh vực, xuất hiện gần như trong mọi vấn đề, bài toán Nhìn chung để
mô tả và xử lý các vấn đề, ta đều cần có thông tin đầu vào, yêu cầu về thông tin đầu ra
và cách thúc chuyến đổi từ thông tin đầu vào thành thông tin đầu ra Đặc biệt là từ khi bắt đầu xuất hiện các máy tính điện tử, với tốc độ tính toán càng ngày càng được nâng cao cũng như mật độ phần tử tích hợp thì sự tham gia của máy tính trong các quá trình
hỗ trợ phân tích thông tin, đánh giá và lựa chọn giải pháp cho con người ngày càng phổ biến Các máy tính và các hệ thống máy tính hiện nay có những khả năng tính toán cực lớn, thực hiện được những khối lượng công việc mà con người không thể nào đảm nhiệm trong thời gian ngắn Đồng thời mức độ tích hợp của các máy tính số được tăng cao nên các thiết bị tính toán ngày càng nhỏ gọn, thích hợp cho việc xây dựng các hệ thống xử lý thông tin linh hoạt và di động Mặc dù vậy, cho đến thời điểm này, rất nhiều khả năng của con người (và của cả nhiều sinh vật khác) vẫn chưa được thể hiện
mô phòng hoặc tái tạo một cách hiệu quà trên các máy móc hoặc thiết bị Có thể lấy ví
dụ như khả năng nhận biết người qua ảnh, khả năng phân tích tiếng nói đổ hiểu được nội dung, đặc biệt là khà năng xử lý được các tình huống mới dựa trên các kinh nghiệm đúc kết từ quá khứ, Vì vậy song song với những phát triển của thông tin và các hệ thống xử lý thông tin, ta thấy xuất hiện một ngành mới là ngành nghiên cứu về
Trí tuệ nhàn tạo (Artificial Intelligence).
Một trong những mục đích chính của ngành Trí tuệ nhân tạo là nghiên cứu
và phát triển các mô hình mô phỏng những khả năng về tư duy, phân tích và xừ lý
Trang 9thông tin của con người, cần nhấn mạnh rằng một trong những khó khăn cơ bản hiệm nay vẫn chưa được giải quyết đó là khi nghiên cứu về “Trí tuệ nhân tạo”, ta vẫn chưa
có định nghĩa chính thức “Trí tuệ là gì” Khái niệm này vẫn đang được các nhà khoa học của nhiều lĩnh vực (kể cả Triết học) nghiên cứu và hoàn thiện Vì thế cũng sẽ dễ hiểu nếu như khi theo dõi các tài liệu khác nhau, ta có thể thấy được nhiều định nghĩa
khác nhau về Trí tuệ (Intelligence) và Trí tuệ nhân tạo (.Artificial Intelligence).
Hình 1.1 Vị trí của chuyên ngành trong tĩnh vực xừ lý tín hiệu
Từ việc chưa có được các định nghĩa chuẩn về Trí tuệ dẫn tới thực tế rất khó có được chuẩn để đánh giá một giải pháp (hay một thiết bị, ) có “thông minh” hay không Ngay cả việc so sánh trực tiếp về mức độ “thông minh” của hai giải pháp hoặc hai đối tượng khác nhau cũng đã rất khó khăn
Trong giáo trinh này, ta có thể sừ dụng quan điểm hệ thống thông minh là hệ thống mô phỏng một khả năng nào đó cùa con người hoặc của một đối tượng thông minh khác Quá trình nghiên cứu về một khả năng trước tiên nhằm trả lời các câu hỏi
“Một khả năng của con người do đâu mà có? Khả năng đó được thực hiện nhu thế nào” Sau đó ta có thể chuyển sang quá trình tái tạo lại khả năng đó trên các máy móc, thiết bị để tạo ra các giải pháp “thông minh”
Lấy ví dụ một hệ thống cơ khí mô phỏng cơ chế dịch chuyển cùa con người Trước tiên ta cần làm rõ để chuyển động thì con người cần các cơ cấu chấp hành gì (chân, tay, ), phối hợp các cơ cấu đó như thế nào, đặc biệt là trong những trường hợp đặc biệt thì xử lý làm sao (ví dụ giải pháp lấy thăng bằng, ước lượng các khoảng cách, xác định tuyến đường dịch chuyển, ) Sau đó ta mới tiến hành chế tạo các cơ cấu và hệ thống đó Ta lấy một ví dụ nữa về hệ thống tự động xác định đường đi cho các rô-bốt,
Trang 10trong đó các rô-bốt cần tự phân tích các môi trường xung quanh và từ đó xác định được đường đi tối ưu cho mình.
Trong các lĩnh vực của ngành Trí tuệ nhân tạo, các nghiên cứu về cơ chế hoạt
động và các khả năng của bộ não con người tạo thành một chuyên ngành được gọi
là Mạng nơ-rôn nhân tạo Các kết quả cho thấy bộ não con người tính toán, tư duy theo những cơ chế khác với máy tính số Bộ não được biết đến như là một máy tính
phức hợp, phi tuyến và tinh toán song song Hệ thống thần kinh cùa con người bao
gồm khoáng 1012 nơ-rôn và khoảng 1014 các ghép nối thần kinh giữa chúng Chính hệ thống ghép nối phức tạp này đưa lại cho chúng ta các khả năng phân tích và xử lý thông tin, các càm xúc, Bộ não có khả năng tồ chức, điều khiển các phần tử cơ bàn cùa mình (các nơ-rôn đơn lè) để thực hiện các nhiệm vụ mà ta mong muốn như nhận dạng, điều khiển, phân tích hiệu quà hơn rất nhiều so với các máy tính hiện nay Ta có
thổ xct lại ví dụ khả năng nhìn của con người Đây là bài toán phân tích và nhận dạng
ảnh (tín hiệu hai chiều, ba chiều, ) và là một trong những nhiệm vụ cơ bản của con người, giúp cho con người giao tiếp với môi trường xung quanh Bộ não của con người
có khả năng phân tích một hình ảnh theo nhiều nhiệm vụ khác nhau (ví dụ như khi ta tìm một khuôn mặt quen trong một đám đông, ước lượng khoáng cách, ước lượng vận tốc chuyển động của các đối tượng đang quan sát, ) trong khoảng thời gian từ 100 đến
200 ms, một tốc độ mà các máy tính và phần mềm tính toán hiện nay vẫn chưa thê nào đạt tới gần được
Một ví dụ tiếp theo là khả năng nghe và phân tích âm thanh Chì xét khả năng
nghe hiểu ngoại ngừ hoặc tiếng địa phương của con người đã là một nhiệm vụ hết sức khó khăn khi xây dựng các chương trinh mô phỏng Đen nay các chương trình này mới chi đạt được những kết quả nhất định ban đầu Tiếp theo đó là những khả năng về chọn lọc nguồn âm thanh (ta có thể phân biệt được âm thanh cùa từng nhạc cụ trong dàn hoà tấu, tập trung nghe được những lời nói trong một môi trường nhiều tiếng ồn, phân biệt được những âm thanh bất thường xung quanh, )
Như đà đề cập ở trên, việc tìm hiểu những khả năng của bộ não con người và tìm cách tái tạo lại các khả năng đó trên các máy móc, thiết bị hay phần mềm tính toán
là nhiệm vụ nghiên cứu chính của chuyên ngành “Mạng nơ-rôn nhân tạo” Trong khuôn khổ giáo trình này, ta sẽ tập trung riêng cho lĩnh vực các khả năng xử lý tín hiệu của các hệ thống thần kinh và các phương pháp mô phỏng để tái tạo
v ề mặt cấu trúc thì từ khi sinh ra, bộ não của chúng ta đã có cấu trúc rất phức
tạp Sau đó bộ não còn tiếp tục phát triển về số lượng nơ-rôn cũng như các ghép nối trong một thời gian ngắn (đến năm 4 - 5 tuổi) Sau thời gian đó, số lượng nơ-rôn nói
Trang 11chung không phát triển thêm nữa (thậm chí còn bị giàm đi) mà chi tự điều chinh V à thay đổi thông số của các ghép nối đang có Quá trinh tự xây dựng và tổ chức này được thực hiện trong suốt cuộc đời của chúng ta Mạng nơ-rôn nhờ vào số lượng rất lớn các nơ-rôn và các ghép nối thần kinh của mình để tạo nên khả năng tính toán và xử lý
thông tin Bên cạnh đó mạng nơ-rôn còn có khả năng học và tải tạo thông tin Khả
năng học là khả năng mạng nơ-ron tự động điều chinh, thay đổi để xử lý được các trường hợp mẫu cho trước, còn khả năng tái tạo là khả năng mạng nơ-rôn có thể đưa
ra được kết quà xử lý thông tin cho những trường hợp lạ - chưa xuất hiện trong quá
trinh học Một nơ-rôn đang “phát triển” hay đang “tiến hóa” sẽ song hành với một bộ não “mềm dẻo” - một bộ não có khả năng thích nghi với các điều kiện môi trường xung quanh
Phối hợp cả hai khả năng này cho phcp ta tạo được những mô hình đe giải quyết các vấn đề khó và lớn mà hiện nay chưa được giải quyết triệt để (ví dụ nhir lượng tập mẫu tổng cộng quá lớn, số liệu bị nhiễu lớn, ) Ta cũng cần nhớ rằng, với các công cụ toán học cũng như thiết bị hiện nay, việc có thể mô phỏng gần đúng một não bộ vẫn là một điều chưa khả thi
Neu ta nhìn mạng nơ-rôn dưới góc độ là một máy tính với khả năng thích nghi thì: Mạng nơ-rôn là một hệ thống bao gồm rắt nhiều các nơ-rôn đơn lẻ được nối với nhau, phối hợp hoạt động với nhau để lưu trữ những kiến thức, kinh nghiệm nhàm tái
sừ dụng:
- Kiến thức, kinh nghiệm được thu thập từ môi trường thông qua quá trình học
- Các hệ số khuếch đại tín hiệu giữa các nơ-rôn (hay còn gọi là các trọng số ghép nối) sẽ được sử dụng để lưu trữ các kinh nghiệm và kiến thức nêu trên
Một hệ trí tuệ nhân tạo hay còn gọi là hệ thông minh cần có ba khả năng chính
là: 1- ghi nhớ các kiến thức; 2 - vận dụng những kiến thức đã biết dề giải quyct các vấn
đề gặp phài; 3 - thông qua các kinh nghiệm, các vấn đề đà được giãi quyết cần thu thập hoặc tạo ra được các kiến thức mới Ta cỏ thể coi hệ trí tuệ nhân tạo cũng gồm ba thành phần chính:
- Thể hiện (Representation): Khả năng đặc trưng của hệ trí tuệ nhân tạo là có
thể dùng một ngôn ngữ hình thức thống nhất để mô tả các vấn đề cũng như các kiến thức liên quan tới vấn đề đó Các ngôn ngữ này trước tiên được con người sử dụng để
mô tả, sau đó được chuyển đổi thành các dạng thích hợp cho việc thể hiện trong các
máy tính điện từ Kiến thức (knowledge) cũng là một dạng của thông tin Kiến thức có
thể được thổ hiện ờ nhiều dạng như các giá trị, các công thức, các thuật toán,
Trang 12- Suy luận (Reasoning): là khả năng giãi quyết các vấn đề Theo [Fischlerl987],
một hệ thống được coi là có khả năng suy luận khi:
+ Hệ thống có khả năng thể hiện và giải quyết một dải rộng các vấn đề và dạngvấn đề
+ Hệ thống phải có khả năng nội suy (implicit) và ngoại suy (explicit) đề tạo ra
các thông tin mà hệ thống quản lý
+ Hệ thống phải có một cơ chế điều khiển (control) để xác định cần phải thực
hiện các thao tác gì trong quá trình giải quyết một vấn đề hoặc khi cẩn kết thúc quá trình này
- Học tập (Learning): Đặc trưng cho khả năng mở rộng, cập nhật, thay đổi các
kiến thức của một hệ thống Mô hình đơn giàn cho quá trình học của một hệ thống được thể hiện trên hình 1.2 Môi truờng bên ngoài sẽ cung cấp cho hệ thống các thông
tin thông qua khối phân tích và học tập (Learning Element) để phục vụ cho việc điều
chinh các phần tử tham gia vào quá trình học Các kết quà từ khối này được chuẩn
hóa và lưu trừ vào cơ sờ dữ liệu về kiến thức của hệ thống (Knowledge Base) Sau
khi tổng hợp các kiến thức từ cơ sở dữ liệu này, hệ thống sẽ đưa ra quyết định về các thao tác cần dược thực hiện và truyền các thông tin này xuống cơ cấu chấp hành
(Performance Element).
Hình 1.2 Mô hình đon giản cho quá trình học của một hệ thống
Mạng nơ-rôn nhân tạo (hay còn gọi ngan gọn là mạng nơ-rôn) là một trong những chuyên ngành của Trí tuệ nhân tạo và là ngành được phát triển mạnh hiện nay với các ứng dụng rộng rãi trong nhiều vấn đề kỹ thuật Mạng nơ-rôn có nhiều tính chất cần thiết để có thể trở thành một công cụ tốt trong xừ lý tín hiệu:
- Có khả năng tạo hàm truyền phi tuyến đa biến với độ chính xác cho trước;
- Có các cấu trúc truyền thẳng và cấu trúc có phản hồi để thuận tiện lựa chọn cho các đối tượng có đặc tính có nhớ hoặc không có nhớ;
- Khả năng điều chinh thích nghi các thông số để thích nghi với các bộ số liệu tĩnh cũng như các bộ sổ liệu động;
- Có khả năng tổng quát hóa để có thể hoạt động hiệu quả với các tín hiệu đầu vào mới, chưa xuất hiện trong quá trình xây dựng mô hình
Trang 13Các mạng nơ-rôn có một đặc trưng khác so với các hệ thống tính toán tuyến tính
và phi tuyến trước đây là mồi mạng nơ-rôn được trang bị một hoặc nhiều thuật toán học cho mạng Các thuật toán này cho phép chúng ta xây dựng, lựa chọn cấu trúc cho mạng cũng như điều chinh thích nghi các thông số của mạng để phù hợp với yêu cầu của các bài toán được ra cho mạng
kỳ Đây là một bước tiến rất lern trong lịch sử nghiên cứu và đa số các nhà khoa học đều nhất trí rằng nó là mốc rất quan trọng trong lịch sừ các ngành nghiên cứu về mạng nơ-rôn nói riêng và trí tuệ nhân tạo nói chung Cũng trong năm này đã xuất hiện khái niệm “cybernetics” do Arturo Rosenblueth, Norbert Wiener và Julian Bigelow đề xuất
Sau đó vào năm 1948, Wiener đã xuất bản cuốn sách nổi tiếng với tiêu đề Cybernetics
viết về các vấn đề quan trọng trong điều khiển, truyền thông và xử lý tín hiệu Trong chương 2, Wiener đã cố nắm bắt ý nghĩa vật lý quan trọng của chủ đề cơ chế thống kê Tuy nhiên phải hơn 30 năm sau, Hopficld mới xây dựng được mối liên kết giữa cơ chế thống kê và các hệ thống có khả năng học
Công trình của McCulloch và Pitts không chì tác động tới chuyên ngành mạng nơ-rôn Von Neumann đã sử dụng ý tưởng hoạt động “chuyển đổi - nghi” hay còn gọi
là che độ hoạt động có trễ cùa nơ-rôn trong việc xây dựng EDVAC (Electronic Discrete Variable Automatic Computer), tiền thân của máy ENIAC (Electronic Numerical Integrator and Computer) [Aspray86] - máy tính đa năng đầu tiên được chế
tạo tại Moore School of Electrical Engineering, Đại học Pennsylvania Năm 1944, Von
Neumann và nhà kinh tế học Oskar Morgenstern đã đưa ra giới thiệu Lý thuyết trò chơi, một phần rất quan trọng của lĩnh vực trí tuệ nhân tạo ngày nay trong bài báo Theory o f Games and Economic Behavior Cũng van là Von Neumann đã đưa ra câu trả lời nổi tiếng khi có ý kiến cho rằng "Máy tính không có khả năng suy nghĩ' là “ You insist that there is something a machine cannot do I f you will tell me precisely what it
is that a machine cannot do, then I can always make a machine which will do ju st that'
(Các ngài đang khẳng định rằng máy tính không làm được một việc gì đó Nhưng nếu
Trang 14như các ngài có thể mô tả chính xác cho tôi rằng máy tính không làm được việc gì thì
tôi sẽ luôn có thể xây dựng một máy mới để làm được chính việc đó) Sau đó ông đã
phát triển tiếp ý tưởng này để đề xuất phương pháp nổi tiếng Turing Test vào năm 1950
nham kiểm tra độ thông minh của một máy tính
Bước tiến tiếp theo của các mạng nơ-rôn được nhắc tới vào năm 1949 với cuốn
sách cùa Hebb có tiêu đề The Organization o f Behavior, trong đó cơ chế sinh - hóa của
quá trinh học thông qua việc điều chinh trọng số ghcp nối lần đầu tiên được đề cập một cách rõ ràng và chi tiết Cụ thể, Hebb đã trình bày về quá trình thay đổi không ngừng cùa các hệ số ghép nối giữa các nơ-rôn khi một cá thể đang học về những nhiệm vụ khác nhau và ông đã cụ thể hơn già thiết cùa Ramon y Cajal rằng kênh ghép nổi giữa hai nơ-rôn sẽ có mức độ khuếch đại tăng lên nếu như nơ-rôn nguồn luôn luôn được kích thích
Cuốn sách của Hebb đã trờ thành một nguồn cảm hứng cho các mô hình tính
toán với chức năng học và thích nghi Công trình nghiên cứu [Rochester56] vào năm
1956 là một trong những công trình đầu tiên đề cập tới việc sử dụng máy tính điện tử
để mô phỏng lý thuyết nơ-rôn và quá trình học của nơ-rôn cùa Hcbb Các kết quà tính toán cho thấy rằng để hoàn thiện hơn thì mạng nơ-rôn cần phải có cà các ghép nối với
độ khuếch đại nhò hơn 1 (giảm mức tín hiệu đầu vào) và cả độ khuếch đại âm (còn gọi là các đầu vào tín hiệu hãm) Cùng năm đỏ (1956), Uttley đă công bố một mạng nơ-rôn với các trọng số ghép nối có thể thay đồi thích nghi đế thực hiện được bài toán nhận dạng
các mẫu nhị phân Đồng thời cụm từ Artificial Intelligence được sử dụng như một
chủ đề tháo luận chính thức của Hội nghị Dartmounth lần thứ hai do John McCarthy
tố chức
Năm 1958, trong một công trình về bài toán nhận dạng mẫu, Rosenblatt đã đưa
ra khái niệm mô hình perceptron với thuật toán học có hướng dẫn (supervised learning) Công trình này dã dưa ra lý thuyết hội tụ của quá trình học cũa perceptron.
Cũng trong thập ký 1950 - 1960 đã bắt đẩu xuất hiện các phần mềm trò chơi như phần mềm đánh cờ cùa Dietrich Prinz, phần mềm checkers của Christopher Strachey Năm 1955, Arthur Samuel đã viết được một phần mềm chơi checkers với chúc năng tự học thêm trong quá trình hoạt động
Năm 1967, cuốn sách Computation: Finite and Infinite Machines của Minsky đã
tồng hợp các kết quả nghicn cứu cùa Minsky và mờ rộng các đề xuất của McCulloch
và Pitts, đồng thời kết hợp lý thuyết mạng nơ-rôn với lý thuyết tính toán và lý thuyết máy trạng thái
Trang 15Thời gian này, với rất nhiều những kết quả thu được, đã từng có ý kiến cho rằng mạng nơ-rôn đơn giản có thể giải quyết được rất nhiều lớp bài toán Nhưng trong [Minsky69], Minsky và Papert đã chứng minh bằng toán học ràng mạng nơ-rôn truyền thẳng một lớp chi có thể giải được một số dạng bài toán nhất định do không đù độ phi tuyến Đồng thời việc sừ dụng nhiều lớp ẩn cũng không thể giải quyết hết được những tồn tại.
Trong thập kỳ này, Ray Solomnoff đã bắt đầu xây dựng các nền tàng lý thuyết toán học cho AI, trong đó cần kể tới việc ứng dụng các mô hình Bayes trong quy nạp
và dự báo
Những năm 70 là những năm tương đối yên tĩnh của các nghiên cứu về mạng nơ-rôn Có một số lý do chính để các nghiên cứu này bị ảnh hưởng: 1- vì lý do kỹ thuật mà chù yếu là do các công cụ tính toán như máy tính điện từ vẫn chưa phổ biển nên các tính toán mô phỏng rất khó được thực hiện để kiểm chứng các ỷ tường của các nhà nghiên cứu; 2 - vì lý do phi kỹ thuật, trong đó có thể xét tới hai yếu tổ ảnh hường lớn là công trình [Minsky69] đã khiến nhiều nhà nghiên cứu chần chừ và các đề tài nghiên cứu cũng khó xin được tài trợ Công trình đáng kể tới nhất trong những năm
này là công trình [Malsburg73] của von der Malsburg vào năm 1973 về mạng tự to chức (.self-organising maps).
Thập kỷ 80 chứng kiến sự quay trở lại của mạng nơ-rôn trên rất nhiều lĩnh \ục cùng một lúc Năm 1980, Grossberg [Grossberg80] đã đề ra quy tắc học tự tổ chức mới
mang tên ART (adaptive resonance theory) Năm 1982, Hopfield đã sử dụng ý tường
hàm năng lượng để giải thích quá trình tính toán dược các mạng hồi quy sử dụng với các trọng sổ đối xứng và các mạng nơ-rôn này sau này được mang tên của ông là
mạng Hopfield Mặc dù các mạng nơ-rôn hồi quy do Hopfield đề xuất không có mô
hình nơ rôn thực tế tương xứng, nhưng ý tưởng các thông tin có thể được hm trữ trrng các trạng thái động cân bằng của hệ thống mang ý nghĩa đột phá cần lưu ý ràng ý tường này đã từng xuất hiện trước đó (có thể lấy ví dụ về trạng thái spin trong vật lý lượng tử) nhưng lần đầu tiên được ứng dụng hết sức cụ thể trong mạng nơ-rôn là trcng công trình của Hopficld Cùng trong năm này, Kohonen đã đưa ra mô hình mạig
Kohonen-SOM {Kohonen self-organising maps) cho các lưới trong không gian nột
chiều và không gian hai chiều Mạng Kohonen đã nhanh chóng trờ thành một trcng những mạng tự tổ chức được ứng dụng rộng rãi nhất và hiện nay vẫn là một trcng những ví dụ kinh điển của những mạng thuộc dạng này
Song song với các nghiên cứu về cấu trúc của nơ-rôn và tố chức của nựng nơ-rôn, cùng với sự phát triển của máy tính điện từ, hàng loạt các thuật toán mô phcng
Trang 16quá trình học và tối ưu hóa các thông số của mạng nơ-rôn đã được nghiên cứu và đề
xuất Có thề kể tới các thuật toán như Stimulated Annealing [Kirkpatrick83], Boltzmann Machines [Ackley85], Reinforcement Learning [Barto83],
Năm 1986, các tác giả Rumelhart, Hinton và Williams [Rumelbart86] đã phát
triển thuật toán lan truyền ngược (back-propagation algorithm) mà ý tưởng đã được
Werbos đề cập tới trong luận án nghiên cứu sinh của mình [Werbos74] vào năm 1974 Thuật toán này sẽ được trình bày cụ thể trong các phần sau của cuốn sách này
Tiếp theo sau đó là việc phát minh ra hai mô hình nổi tiếng về mạng nơ-rôn là
mạng RBF (Radial Basis Function) và mạng SVM (Support Vector Machines) Mạng
RBF được Broomhead và Lowe giới thiệu năm 1988 [Broomhead88] Mạng SVM [Boser92] do Vapnik đề xuất vào đầu những nãm 90 cùa thế kỷ XX để ứng dụng trong các bài toán phân loại, nhận dạng, ước lượng cũng nhưng đánh giá mật độ phân bố của sô liệu Cơ sở của mạng SVM dựa trên lý thuyết ve xây dựng mô hình với bộ mẫu hữu hạn
Tổng kết lại ta có thổ liệt kê một số mạng nơ-rôn nhân tạo đã được đề xuất và nghiên cứu như trong bảng 1.1
Bảng 1.1 Một số mạng no>-rôn nhản tạo dã đưực nghiên cứu
1991
Trang 17Mạng phân nhóm
(Classification Only)
LVQ (Learning Vector Quantization)
PNN (Probabilistic Neural Networks)
Mạng ước lượng
(Regression Only)
GNN (General Regression Neural Network)
Watson và Nadaraya 1964
Mạng có phản hồi
(Recurrent Network)
BAM (Bidirectional Associative Memory)
BTT (Back-propagation Through Time)
Williams và Zipser 1989
RB (Recurrent Back- propagation)
TDNN (Time-Delay Neural Network)
Lang, Waibel và Hinton
Trang 18Mạng giám chiều không
gian ('Dimension Reduction)
v ề mặt ứng dụng, ta cũng có thể nhắc tới một số công trình đă được ghi nhận
trong thời gian gần đây cùa ngành Trí tuệ nhân tạo nói chung và chuyên ngành Mạng nơ-rôn nhân tạo nói riêng Trong số đó, năm 1994, hai chiếc ô tô tự động dòng VaMP
do Emst Dickmanns và Daimler-Benz thiết kế đã chở hành khách thực đi hơn 1000 km
trên đường cao tốc ba làn ở khu vực Paris vào thời điểm tương đối đông xe với tốc độ
có lúc đạt tới 130 km/h
Năm 1997, máy tính Deep Blue đã đánh bại Đại kiện tướng Garry Kasparov
trong một cuộc thi đấu cờ chính thức cấp quốc tế.
Năm 1999, Công ty SONY đã phát triển một rô-bốt nhỏ tên là AIBO thành đồ chơi tự động trong nhà Năm 2005, rô-bốt ASIMO đă có thể đi lại tương đối giống người thật và có thề thực hiện một số thao tác phục vụ bàn trong quán ăn
Cũng trong năm 2005, dự án Blue Brain đã được bắt đầu với mục đích mô phỏng cơ chế hoạt động của bộ não con người ờ cấp độ phân tử
Các công trình nêu trên đây chi là một phần rất nhỏ những kết quả đã đạt được trong lĩnh vực nghiên cứu về mạng nơ-rôn Từ ngày công bố công trình của McCulloch và Pitts đến nay, mạng nơ-rôn đã liên tục phát triển và trở thành một lĩnh vực liên ngành, phối hợp các kết quả nghiên cứu về toán học, vật lý, sinh học, kỹ thuật, Trong tương lai gần, mạng nơ-rôn sẽ tiếp tục được phát triển trong cả lý thuyết, thực hành và ứng dụng
Trang 191.3 CÁC QUÁ TRÌNH c ơ BẢN CỦA MẠNG NƠ-RÔN
Khi nghicn cứu và phát triển các mạng nơ-rôn cho các bài toán cụ thể, ta sẽ gặp
hai quá trình cơ bản sau: quá trình học (learningprocess) và quá trình kiểm tra (testing process).
1.3.1 Quá trinh học
Quá trình học được hiểu là quá trình tạo ra kiến thức từ các “mẫu” thông tin đã
có (trong quá khứ) Quá trình này được thực hiện cho một bộ số liệu mẫu ban đầu còn
được gọi là bộ số liệu học (learning data set) Riêng đối với mạng nơ-rôn, quá trình
học còn được hiểu là quá trình xác định các tham số của mạng để có thế thu được các kết quả đầu ra theo như mong muốn cho một bộ số liệu học Để thể hiện chất lượng cùa quá trinh học, người ta sẽ định nghĩa một hàm mục tiêu, hay còn gọi là hàm sai số Ehpc Quá trình học sẽ có xu hướng làm giảm giá trị cùa hàm sai số này, hay còn được gọi là quá trình tối ưu hóa hàm sai số Quá trình học thường được thực hiện dựa trên các thuật
toán học (learning algorithm) để tối ưu hóa các hàm mục tiêu.
Bên cạnh các thuật toán điều chinh thông số, mạng nơ-rôn còn có khả năng điều
chinh cả cấu trúc cùa mình để mô phỏng thực tế của bộ não là các nơ-rôn đơn lẻ có thể
chết đi, hoặc các ghép nối giữa các nơ-rôn có thế được sinh ra thêm để có thế tạo ra tín hiệu đầu ra như mong muốn
Neu phân chia theo cách xừ lý bộ số liệu học thì quá trình học có thể được thực hiện theo một số cách như sau:
- Quá trình học ngoại tuyến (offline)', là quá trình học với toàn bộ các số liệu
mẫu đã có sẵn và các tham sổ của mô hình được cập nhật sau khi đã xem xét xong tất
cà các mẫu số liệu Phương pháp này có số lần cập nhật ít, tuy nhiên các kết quả trung gian khi đang xử lý các mẫu số liệu học cần phải được lưu giữ nên khá tốn bộ nhớ và công thức cồng kềnh hơn
- Quá trình học trực tuyến (online): là quá trình học trong đó các tham số của
mô hình được cập nhật sau mồi lần xem xét, xử lý một mẫu số liệu Phưưng pháp này
có số lần cập nhật lớn nhưng lượng thông tin cần lưu trữ ít và công thức gọn nhẹ hom
-Q u á trình học phối hợp (offline + online update): là quá trình học trong đó một
phần đầu của bộ số liệu mẫu được học ngoại tuyến, sau đó các số liệu còn lại (hoặc các
số liệu mới) được học trực tuyến Phương pháp này phối họp các đặc điểm của hai cách học đã nói ở trên
Neu phân chia theo dạng thông tin có trong mẫu số liệu học thì ta có những dạng học như sau:
- Học có hướng dẫn (supervised learning): là quá trình học với các mẫu sổ liệu
bao gồm một cặp tín hiệu đầu vào và tín hiệu đầu ra Khi đó ta cần xây dựng một mô hình (mạng nơ-rôn) với hàm truyền đạt tái tạo lại được ánh xạ từ tín hiệu đầu vào tới tín hiệu đầu ra
Trang 20- Học tự tồ chức (self-organized learning)', là quá trình học với các mẫu số liệu chi bao gồm tín hiệu đầu vào Thực chất đây là bài toán phân nhóm các mẫu (data clustering), theo đó các mẫu tương tự nhau cần được quy về chung một nhóm, mỗi
nhóm sẽ có một mẫu đặc trưng (còn được gọi là trọng tâm của nhóm)
- Học theo định hướng (reinforcement learning): là quá trình học dựa trên một
tín hiệu điều khiển mang tính định hướng (ví dụ như quá trình học đang đúng hướng hay không) từ một đối tượng “chuyên gia” bên ngoài để điều chinh thích nghi các tham
số của mô hình
1.3.2 Quá trình kiềm tra
Để đánh giá mức độ hiệu quả của quá trình học, ngoài việc sử dụng hàm sai số học, trong thực tể chúng ta còn sử dụng quá trình kiềm tra Theo đó một mạng đã được
huấn luyện sẽ được kiểm tra với một bộ số liệu mới, còn được gọi là bộ sổ liệu kiểm tra (testing data set) Sai số kiểm tra sẽ cho ta thấy khả năng hoạt động của mạng nơ-rôn
với các số liệu mới, chưa xuất hiện trong quá trình học Sai số kiểm tra thấp tương ứng với khả năng xử lý các trường hợp mới tốt Khi đánh giá về mức độ “thông minh” của một mô hình, ta sẽ ưu tiên sử dụng sai số kiểm tra trước, sai số học được sử dụng sau
Mô hình có sai số kiểm tra thấp hơn sẽ được đánh giá là “thông minh” hơn mô hình có sai số kiềm tra cao hơn
1.4 CÁC ỨNG DỤNG CỦA MẠNG NƠ-RÔN
Với khả năng xây dựng các ánh xạ, các hàm truyền đạt phi tuyến, mạng nơ-rôn
đã được ứng dụng rất rộng rãi trong nhiều lĩnh vực, nhiều bài toán khác nhau Ta có the
kể tới các khả năng chính như sau:
1 Nhận dạng (Pattern Recognition): Nhận dạng có thổ được định nghĩa là quá
trình phân tích tín hiệu dầu vào từ một doi tượng dẻ xác dịnh dối tượng dó thuộc vào
nhóm nào trong số các nhóm đã được định nghĩa trước hoặc đưa ra đưực những đánh
giá phân loại hay xếp hạng đối tượng đó
2 Liên kết mẫu (Pattern Association): Đây là một trường hợp đặc biệt cùa bài
toán nhận dạng Bộ nhớ hoạt động theo kiểu liên kết là một trong những chức năng đặc trung của con người Chức năng này được xác định từ thời kỳ của Aristotle và có rất nhiều các mô hình nhận dạng dã sứ dụng phương pháp hoạt động này [Anderson95]
Bộ nhớ liên kết được chia làm hai dạng chính: liên kết hai chiều (heteroassociation) và
tự liên kết (autoassociation) Trong mô hình liên kết hai chiều, mạng nơ-rôn đặt yêu cầu ghi nhớ thông qua quá trình học một tập hợp các mẫu ( x ^ ^ d '0 ) với /' = 1 ,
d0) được gọi là đầu ra liên kết với đầu vào x(l) Kết thúc quá trình học hay còn gọi là
quá trình ghi nhớ (storage phase), khi đầu vào mạng nơ-rôn được cấp tín hiệu X thì
Trang 21mạng cần tìm ra mẫu x 0) gần giống X nhất trong số các mẫu đã được ghi nhớ và cung cấp d(1) ở đầu ra của mạng Chể độ làm việc này còn được gọi là chế độ sử dụng mạng
nơ-rôn để tái tạo thông tin (recall phase) Nấu ta có trường hợp đặc biệt d(,) = x(,) thì
đây sẽ là mô hình tự liên kết
Số lượng mẫu p lớn nhất mà mạng có khả năng nhớ được một cách hiệu quà được gọi dung lượng của mạng.
3 Tái tạo hàm (function approximation): Giả thiết rằng ta có một hàm phi tuyến f(), nhưng ta chi biết được giá trị cùa hàm đó tại một số điểm x (,) là d(,) = f { x ( n) với
/ = 1,2, /? Đc có thổ tái tạo lại hàm70, ta cần tìm một mạng nơ-rôn có hàm truyền
đạt F() trên cơ sở các dữ liệu mẫu sao cho điều kiện về tái tạo sau đây được thỏa mãn:
V x ,||F( x ) - / ( x )||<£
với £ là độ chính xác cho trước Ta đã chứng minh được rằng với tập số liệu mẫu p đù
lớn, với số lượng nơ-rôn trong mạng đù lớn, ta có thể tìm được mạng nơ-rôn cỏ hàm
truyền F() thỏa mãn điều kiện trên với mọi giá trị £ > 0 bất kỳ Bài toán tái tạo hàm còn được gọi là bài toán nhận dạng hệ thống (system identification).
Một trong những ứng dụng mờ rộng của bài toán tái tạo hàm là bài toán tìm hàm
ngược Có nghĩa là ta cần tìm hàm g(9 sao cho g = / -l hay X = g (d) = / - ' ( d )
Chú ỷ: Không nhầm lẫn ký hiệu toán học / ~ ' với nghịch đảo giá trị hàm số
điều khiển vừa song song, vừa phân tán, với khả năng xừ lý nhiều đối tượng cùng một
lúc Bộ não của chúng ta còn là bộ điều khiển phi tuyến, có khả năng chống nhiễu cao
và khả năng đ'ều chinh thích nghi rất tốt
Một ví dụ của điều khiển có phản hồi được mô tả trên hình 1.3 Hộ thống sử dụng tín hiệu phản hồi trờ về từ đối tượng và góp phần tạo thành đầu vào mới cho đối
tượng Đầu ra y của đối tượng được so sánh với giá trị đích cần có d để tạo thành tín hiệu sai số e = y - d Tín hiệu sai số này sẽ được sứ dụng để điều chỉnh các thông số
của bộ điều khiển Nhiệm vụ của bộ điều khiển là tạo ra tín hiệu đầu vào cần thiết cho
đối tượng để tạo thành ờ đầu ra đối tượng giá trị y bám theo một giá trị dích d dã định
Trên hình 1.3, tín hiệu sai số e được đưa vào bộ điều khiển (trong trường hợp nà} là mạng nơ-rôn) trước, sau đó mới ảnh hướng tới đầu vào của đối tượng
Trang 22Hình 1.3 Sơ đồ khối của hệ điểu khiển có phản hồi
Lọc: Lọc là một quá trình (hoặc một thuật toán) dùng đổ trích chọn thông tin
được quan tàm từ một tập hợp số liệu có nhiễu Nhiều có xuất xứ từ nhiều nguồn khác nhau và có thể có nhiều dạng khác nhau, ví dụ như sai số của thiết bị đo, nhiễu do kênh truyền thông không lý tướng hoặc các nhiễu xuất phát từ môi trường bên ngoài Một ví
dụ điển hình về khả năng của con người là bài toán cocktail party problem Trong mỗi buổi tiệc ồn ào, có rất nhiều nguồn âm thanh pha tạp lẫn nhau, nhưng chúng ta có một khả năng rất tốt về việc chọn lọc chỉ nghe và hiểu từ một nguồn nào đó như người, đạo
cụ hoặc nguồn phát các âm nhạc
Trong các chương sau của tài liệu này chúng ta sẽ lần lượt làm quen với một số đối tượng cơ bản trong các nghiên cứu về mạng nơ-rôn nhân tạo cũng như các ứng dụng cùa các mạng này trong các bài toán phân tích và xừ lý tín hiệu Đối với từng mạng nơ-rôn, ta sẽ xem xét về cấu trúc cùa mạng và các thuật toán học cho những cấu trúc này Trong chương 2 ta sẽ có các trình bày về mô hình nơ-rôn sinh học và mô hình nơ-rôn nhân tạo của McCulloch - Pitts Chương 3 giới thiệu về mạng nơ-rôn truyền
thẳng nhiều lớp MLP (Muỉti-Layer Perceptron) Trong chương 4 là tập hợp một số
mạng nơ-rôn có kênh phản hồi tín hiệu để tạo thành các cấu trúc hồi quy Mạng Kohonen với cơ chế tự tổ chức để phân nhóm trên cơ sờ các mẫu tín hiệu đầu vào được trinh bày trong chương 5 Chương 6 giới thiệu về một trong những hướng nghiên cứu được đầu tư mạnh nhất trong các mạng nơ-rôn hiện nay, đó là lý thuyết lô-gic mờ và các mạng nơ-rôn lô-gic mờ Trong hai chương cuối ta sẽ điểm qua về một số ví dụ minh họa ứng dụng mạng nơ-rôn trong các bài toán xử lý tín hiệu thực tế cũng như về
các giải pháp phần cứng đc mô phỏng các mạng nơ rôn trên các thiết bị.
Trang 23Chương 2
MÔ HÌNH N Ơ -RÔ N
Não bộ của con người bao gồm một hệ thống vô cùng phức tạp các phần từ được gọi là nơ-rôn thần kinh ghép nối với nhau Tồng cộng trong một hệ thần kinh của con người có khoáng 10i: - 10M nơ-rôn Từ nhiều thế kỳ qua, các nhà khoa học đã và đang nghiên cứu về cấu trúc và các nguyên lý hoạt động của não bộ con người Các công trình nghicn cứu cũng đã chi rõ nhờ có bộ não phát triển mà loài người mới có được
“trí thông minh” cao hon các loài động vật khác Phần tử cơ bản của não bộ là nơ-rôn thần kinh Trong chương này chúng ta sẽ xem xét về mô hình của một nơ-rôn đơn lẻ, các nguyên tẳc hoạt động chính và một số vấn đề cơ bản như quá trình và thuật toán học, bộ số liệu học và bộ số liệu kiếm tra, khả năng đáp ứng của nơ—rôn đối với các trường hợp mới,
2.1 NƠ-RÓN SINH HỌC VÀ MÔ HÌNH TOÁN HỌC CỦA NƠ-RÔN NHÂN TẠO
2.1.1 Bộ não con người
Hệ thần kinh của con người có thể được mô tả là một hệ thống gồm ba phần tứ
chính: các đầu thần kinh cám ứng (receptors), hệ thống thần kinh trung tâm (brain, neural nets) và hệ thống chấp hành (effectors) Các thần kinh cảm ứng thu thập các tác
động từ môi trường bên ngoài, chuyển thành tín hiệu điện và truyền về hệ thần kinh
trung ương Tại đây các tín hiệu này được não bộ phân tích, xử lý và đưa ra những quyết định điều khiển Các tín hiệu điều khiến này sẽ được chuvển tới các cơ cấu chấp hành đề thực hiện
Cấu trúc của não bộ được phân tích rõ ràng hơn bắt đầu từ các công trình cùa Ramon y Cajal [Cajall l] Ông là người đã đề xuất ý tường nơ-rôn là phần tử cơ sở cấu thành nên hệ mạng thần kinh Các nơ-rôn này hoạt động với tần số tương đối thấp Nếu như các IC hiện nay có tần số làm việc đạt tới GHz (109Hz) thì các nơ-rôn của con người chi hoạt động với tần số cỡ kHz (lO?Hz) Với tần số làm việc thấp như vậy nhưng bộ não đã tăng tốc độ xử lý bằng việc sử dụng song song một số lượng nơ-rôn rất lớn cũng như số lượng ghép nối khổng lồ giữa những nơ-rôn này Các công trình [Haykin94] đã ước lượng trong bộ não cùa chúng ta có khoảng 10l2 nơ-rôn và khoảng
Trang 241014 ghép nối giữa các nơ-rôn Có cấu trúc khổng lồ như vậy nhưng bộ não lại là hệ thống rất tiết kiệm năng lượng Theo [Haykin94], ta có năng lượng tiêu thụ trung binh của bộ não là 10 16 J cho mỗi hoạt động trong một giây, trong khi các máy tính thông thường sử dụng tới 1 o^6 J — 10 9 J cho mỗi lệnh trong một giây.
Nơ-rôn là phần từ cơ bàn của hệ thần kinh V iệcjighiên cứu và làm sáng tỏ các cơ ché hoạt động của các nơ-rôn đóng vai trò quan trọng trong việc nghicn cứu các quá trình thu thập, xứ lý, truyền đi xa cũng như tái sừ dụng các thông tin trong mạng nơ-rôn
Hình 2.1 Cấu trúc của ntr-rôn [Glencoe2001]
Các tín hiệu từ bên ngoài được truyền tới nơ-rôn thông qua các khớp thần kinh
(synapse) Quá trình thu thập và phản ứng với các tín hiệu đầu vào của nơ-rôn là một
quá trình điện hóa hết sức tinh vi và phức tạp Có thế mô tả một cách tóm tắt như sau: dưới tác dụng cùa các xung tín hiệu đến từ các khớp thần kinh, bên trong nơ-rôn sẽ sinh ra các chất đặc biệt được gọi là các chất dẫn xuất Các chất này sẽ tác động lên màng của hạt nhân nơ-rôn làm thay đổi điện thế của màng này Mức độ thay đổi điện thc sẽ tỷ lệ thuận với lượng dẫn xuất được sinh ra Các khớp thần kinh ứng với các đầu vào tín hiệu có kích thước khác nhau cũng như có khả năng tích chứa các chất dẫn xuất khác nhau, từ đó dẫn tới mức độ ảnh hường của mỗi đầu vào tín hiệu sẽ khác nhau Có đầu vào sẽ có tác dụng tăng kích thích của màng, có đầu vào sẽ làm giảm kích thích của màng của hạt nhân Nếu như tổng lượng kích thích lên màng cùa nơ-rôn đủ lớn thi bên trong nhân nơ-rôn sẽ xảy ra các phản ứng điện - hóa và tạo ra ở đầu ra của nơ-rôn một xung điện áp có hình dáng như trên hình 2.2
Xung này được truyền theo các ghép nối cùa nơ-rôn để cỏ thể lan truyền đến các nơ-rôn khác Neu tổng lượng kích thích đầu vào lên màng nơ-rôn chưa đù lớn thì nơ-rôn sẽ tự quay trở về trạng thái trước đó và không có bất cử thay đổi gì ờ đầu
Trang 25ra tín hiệu cùa nơ-rôn Sau khi đã hoàn thành nhiệm vụ cùa mình, các chất dẫn xuất sẽ được trung hòa thông qua quá trình hấp thụ của hạt nhân hoặc tự bị phân rã hay được dẫn chuyển tới các vùng bên ngoài tác động của màng và bên ngoài tác động của khớp thần kinh, đồng thời nơ-rôn sẽ chuyển sang trạng thái nghi thông qua việc màng của hạt nhân bị trơ trong một thời gian ngắn (còn gọi là thời gian trơ tuyệt đối), sẽ không phản ứng và tạo xung đầu ra ngay cả khi tồng các kích thích đầu vào rất lớn Sau thời gian trơ tuyệt đối, màng hạt nhân sõ dần quay trờ lại trạng thái như trước Thời gian cùa quá trình trờ lại trạng thái cũ này được gọi là thời gian trơ tương đối.
Hình 2.2 Ví dụ hình dạng một xung điện áp đầu ra của một nơ-rôn khi bị kích thích
Ta cũng có thể nhận thấy từ hình 2.2 là do có các thời gian "trơ" nên các chu kỳ hoạt động của nơ-rôn dài cỡ ms, hay nói cách khác tần số hoạt động của nơ-rôn chi vào khoảng kHz Tuy nhiên có khả năng phân tích và xử lý thông tin của não bộ còn vượt xa rất nhiều so với các máy tính có tốc độ xừ lý tín hiệu tới GHz hoặc THz như hiện nay
2.1.2 Mô hình noM-ỏn nhân tạo của McCulloch - Pitts
Một trong những nghiên cứu đầu tiên đưa ra được mô hình toán học cho nơ-rôn
là của McCulloch vả Pitts vào năm 1943 [McCulloch4?] Theo đó ta có thể mô tả các nơ-rôn thần kinh cùa con người có cấu trúc đặc trưng chung như sau:
- Có nhiều tín hiệu đầu vào;
- Mức độ phụ thuộc vào các tín hiệu đầu vào khác nhau;
- Khi tông các kích thích đầu vào vượt quá một ngưỡng, nơ-rôn sẽ tạo ra nột xung tín hiệu đầu ra
Từ đó ta có mô hình của nơ-rôn bao gồm ba thành phần cơ bản:
- Hệ thống các ghép noi thần kinh (synapses, connection links): được đặc trung
bời hệ số khuếch đại tín hiệu của mỗi ghép nối Cụ thế khi có một tín hiệu X (là đầu ra
của nơ-rôn thứ j ) được đưa vào điểm đầu của kênh ghép nối nơ-rôn thứ j đến nơ-!Ôn
Trang 26thứ k thì khi đi qua ghép nối, tại điềm cuối của kênh (tức là đầu vào của nơ-rôn thứ k)
ta sẽ có tín hiệu đã được khuếch đại với hệ số w kj để trở thành w kj ■ X như trên hình2.3a Đe đơn giản hóa các hình vẽ, ta thường sử dụng dạng biểu diễn như trên hình 2.3b, theo đó khối khuếch đại được cho là ngầm định và ta chi biểu diễn giá trị của hệ
số khuếch đại là Wkj.
y=wk).x0
a) ở dạng kinh điển; b) ở dạng rút gọn.
- Bộ cộng: dùng để cộng tông các tín hiệu đầu vào đã được khuếch đại bời các trọng số ghép nối Bộ cộng này còn được gọi là bộ tổng hợp tuyến tính.
- Hàm kích hoạt (activation function): là hàm thể hiện biến đồi tuyến tính giữa
các kích thích đầu vào của một nơ-rôn và tín hiệu đầu ra tương ứng Thực tế hàm kích hoạt này thường hoạt động theo ngưỡng: khi tổng các kích thích đầu vào vượt quá một ngưỡng nhất định thì nơ-rôn sẽ tạo thành một xung điện áp tại đầu ra Ngưỡng
kích hoạt này được thể hiện với giá trị phân cực (bias) Bôn cạnh đó, hàm kích hoạt của nơ-rôn còn thực hiện nhiệm vụ hạn chế mức tín hiệu trong mạng (limiting function) khi có trường hợp tín hiệu đầu vào nào đó vượt quá lớn.
Mô hình nơ-rôn được thể hiện trên hình 2.4a (dạng chi tiết) và 2.4b (dạng rút
gọn), trong đó hàm kích hoạt được sử dụng là hàm ngưỡng với giá trị ngưỡng là 6
Hình 2.4 Mô hình nơ-rôn chi tiết (a) và biểu diễn đom giản hóa (b)
Theo hình trên, ta có tín hiệu đầu ra của nơ-rôn được xác định theo tuần tự:
1 Tổng đáp ứng đầu vào:
N
i=l
Trang 272 Đáp ứng đầu ra:
1 khi u > 9
y = l ( u - 0 ) =
với hàm truyền đạt là hàm bước nhảy Heaviside.
Các nơ-rôn sử dụng hàm ngưỡng còn được gọi là các nơ-rôn McCulloch - Pitts
do được các tác già này đưa ra lần đầu vào năm 1943 [McCulloch43] Mô hình hàm ngưỡng này đon giản nhưng có yểu điểm là đạo hàm tại điểm u = 0 không tồn tại nên trong những thuật toán học sử dụng gradient được trình bày ở các phần sau, ta thường không sừ dụng hàm ngưỡng này
Bên cạnh đó, ta còn có cách thứ hai để thể hiện công thức trên của một nơ-rôn
trong đó giá trị ngưỡng phân cực 9 được thể hiện bàng hệ số khuếch đại cho một đầu vào cố định “ 1” với hệ số khuếch đại là Wữ - - 9 Mô hình cùa nơ-rôn với cách mô tả
này được thể hiện trên hình 2.5, theo đó đầu ra của nơ-rôn được tính theo công thức hàm bước nhảy đơn vị:
Hình 2.5 Mó hình nơ-rôn vói phản cực bias là đầu vào x0: chi tiết (a) và rút gọn (b)
Chú ý: Trong một sô tài liệu và phân mèm (ví dụ như Matlab), ta có thê gặp các dạng biểu diễn dưới dạng véc-tơ Với X = \xx,x 2, ,x NỴ và w = [lV],W2, ,W w]1 ta có:
Trang 282.1.3 Các dạng hàm truyền đạt chính khác
Như đã nhắc tới ở các phần trên, hàm truyền đạt ngưỡng khá giống với mô tả hàm truyền đạt của nơ-rôn sinh học Tuy nhiên việc sừ dụng hàm truyền đạt này có nhược điểm lớn là đạo hàm của hàm ngưỡng là hàm không liên tục (thực chất là hàm xung Dirac), cụ thể:
u ± 0
Khi đó việc sử dụng các thuật toán tối ưu hóa với hàm ngưỡng sẽ khó khăn hơn nhiều do trong đa số những thuật toán này sứ dụng tới đạo hàm của các hàm truyền đạt Sau đây là một số hàm có đạo hàm liên tục thường được sử dụng để thay thể hàm ngưỡng trong các tài liệu về mạng nơ-rôn
a) Hàm logsig hoặc sigmoid
Hàm có dạng đồng biến và có thể coi là hàm trung gian giữa hàm tuyến tính và
hàm ngưỡng Hàm logsig với tham số a có thề được tính theo công thức:
1 + e
với a là hệ số dốc Biểu diễn hàm logsig cho các giá trị a = 1,2 và 5 được thể hiện trên hình 2.6 Khi a —»00 ta có hàm f(u) tiến tới hàm ngưỡng Hàm logsig có ưu điểm hơn
so với hàm ngưỡng là tồn tại đạo hàm tại mọi điểm
Hình 2.6 Hàm truyền đạt logsig với các hệ số dốc a khác nhau
Trang 29Hàm logsig có đạo hàm được tính theo công thức sau:
d , , -e~ au(-a ) a-e~au logsiga (u) = - = - =— - J
= a ■ logsiga ( u ) • ( 1 - logsiga ( u ) ) (việc biểu diễn d f I du theo giá trị hàm f(u) sẽ giúp cho việc tính toán nhanh hơn như
sẽ thấy ờ các mục sau)
b) Hàm tansig
Các hàm ngưỡng và hàm ỉogsig đều có giá trị đầu ra thuộc khoảng từ 0 đến 1
Trong những trường hợp cần có những đầu ra tín hiệu âm, ta thường sử dụng hàm
tansig với khoảng giá trị từ -1 đến 1.
Trang 30c) Các hàm tuyên tính hoặc tuvên tinh từng đoạn
Mặc dù bàn chất các hàm truyền của nơ-rôn thần kinh là các hàm phi tuyến, tuy nhiên khi ứng dụng mô phỏng trong các bài toán thực tế, ta vẫn thường gặp các liên hệ tuyến tính Vì vậy nhiều ứng dụng mạng nơ-rôn đã sử dụng hàm truyền tuyến tính Ngoài mục đích này ra, hàm truyền tuyến tính còn có nhiều ưu điểm như quá trình tính toán nhanh, giá trị đầu ra nơ-rôn không bị hạn chế (có thể tạo ra các giá trị từ -00 đến +00) Hàm tuyến tính (purelin — Pure Linear Function) có dạng:
f ( u ) = p u r e l i n ( u ) - a u + b (2.9a)
Hàm tuyến tính bão hòa (satlin - Saturated Linear Function): Trong một số
dạng mạng nơ-rôn như mạng Hamming, Hopfields, BAM, , các nơ-rôn có hàm truyền đạt là hàm tuyến tính bão hòa, được cho theo một trong công thức sau:
Hàm tuyến tính bão hòa dương:
Ta có thể lấy ví dụ một nơ-rôn với hai đầu vào; ba trọng số
fV0 = -0,2; W\ = 0,7; ÌV-, = 0,5; hàm truyền ngưỡng Khi đó ta có kết quả đầu ra của
no-rôn khi có các đầu vào nhị phân như trong bàng sau:
Trang 31X/ X ị d u = W0X0 + IVịXị + fV 2 x 2 y = ỉogsig(u) y = tansig(u) y = satlin(u)
2.2 CÁC QUÁ TRÌNH HỌC VÀ KIẾM TRA CÙA NƠ-RÔN
Với cấu trúc và nguyên tắc hoạt động như đã trình bày ở trên, ta thấy rằng nơ-rôn thực chất là một khối tính toán có hàm truyền đạt phi tuyến Điều khiến cho nơ-rôn trở nên khác biệt so với các mô hình phi tuyến khác của toán học là đi kèm với nơ-rôn, ta được trang bị các thuật toán học và quá trình đánh giá chất lượng của nơ-rỏn thông qua việc kiểm tra trên các mẫu số liệu mới c ỏ thể nói mỗi mô hình thông minh nói chung và mô hình nơ-rôn nói riêng đều có hai quá trình đặc trưng là quá trình học
(Ịearning process) và quả trình kiểm tra (testing process) Sau đây chúng ta sẽ tìm hiểu
về hai quá trình này đối với mô hình nơ-rôn của McCulloch - Pitts
2.2.1 Quá trình học của nơ-rôn
Đặc trưng quan trọng nhất của mạng nơ-rôn là khả năng mạng học từ môi
trường xung quanh nhằm mục đích giảm sai số và nâng cao chất lượng hoạt động của mạng Quá trình học của nơ-rôn thường là một quá trình lặp trong đó các trọng số ghép nối cũng như giá trị ngưỡng phân cực của nơ-rôn được điều chỉnh thích nghi Ta nói rằng sau mỗi một lần lặp, nơ-rôn học được nhiều hom từ môi trường
Hiện rất nhiều định nghĩa về quá trình học trong nhiều ngành nghiên cứu khác nhau như triết học, tâm lý học, ngay cả trong các nghiên cứu về mạng nơ-rôn Ta có
thổ sử dụng định nghĩa của Mcndel và McClaren [Mendel70]: Học là một quá trình, trong đó các tham số tự do của một (mạng) nơ-rôn được điểu chinh thích nghi khi được kích thích bởi môi trường bên ngoài Dạng của quá trình học được xác định bời phương pháp điều chinh các thông số.
Định nghĩa trên cùa quá trình học bao gồm ba bước:
1 Nơ-rôn được kích thích bời môi trường bẽn ngoài
2 Nơ-rôn điều chinh các thông số của mình khi bị kích thích
3 Đáp ứng đẩu ra cùa mạng nơ-rôn sau khi điều chỉnh cũng sẽ thay đôi so với
^ trước khi điều chinh
Quá trình học sẽ được thực hiện theo những quy trình chặt chẽ còn được gọi là
các thuật toán học Với mỗi mạng nơ-rôn, ta có rất nhiều các thuật toán học khác nhau
đã được nghiên cứu và đề xuất Các thuật toán này đều có những ưu, nhược điểm riêng của mình và cũng như các giải pháp cho các vấn đề kỹ thuật khác, đối với mỗi một bài
Trang 32toán cụ thể, ta cần xem xét và đánh giá các thuật toán để lựa chọn được một thuật toán
“tốt” để sử dụng
Nơ-rôn McCulloch - Pitts là một mô hình có hàm truyền đạt phi tuyến từ đầu vào tới đầu ra nên tập các mẫu số liệu bao gồm cả đẩu vào và đầu ra tương ứng Thuật toán học cho nơ-rôn thuộc về nhóm các thuật toán học có hướng dẫn Quá trình học được định nghĩa là quá trình tìm kiếm các thông sổ của nơ-rôn sao cho đối với một tập
hợp p mẫu số liệu đầu vào cho trước, nơ-rôn sẽ xử lý và đưa ra được
những đáp ứng [ y \,y i,- - ,y p} tương ứng “tốt nhất", có nghĩa là các đáp ứng sao cho
giá trị một hàm mục tiêu cho trước đạt được cực trị mong muốn
Hình 2.8 Hệ xây dựng mô hình xấp xi một đối tượng cho trước
(phối họp sừ dụng sai số đầu ra e = y - d ) Với tập sổ liệu học gồm p mẫu với i = \ , , p , véc-tơ đầu vào
X, e R ' \ giá trị đích (destination) cần đạt dị e R (do ta đang xét nơ-rôn đơn lè nên
chi có một tín hiệu đầu ra), ta cần xác định nơ-rôn có N đầu vào và một đầu ra với hàm
truyền đạt f() sao cho:
dựng dưới dạng các cặp mẫu vào - r a ( \ , d ) (input-output samples), trong đó X là véc-tơ
đầu vào mẫu còn d là đầu ra mẫu tương ứng (còn gọi là đáp án tương ứng với đầu vào x)
Khi cho nơ-rôn học theo một mẫu, đầu tiên chúng ta cho X vào đầu vào của nơ-rôn, nơ-rôn sẽ tổ chức tính toán với đầu vào mới và đưa ra đáp ứng y Ta sẽ có đáp ứngy
Trang 33thường sai lệch so với giá trị đích cần đạt là d, khi đó tín hiệu sai số e = y - d sẽ được
sử dụng để điều chinh các thông sổ của hệ thống học nhằm mục đích giảm giá trị e về nhỏ nhất có thề Khi sai số e = 0 thì nơ-rôn sẽ dừng quá trình học và các tham số của
nơ-rôn được giữ nguyên
Do mô hình nơ-rôn thường là mô hình có hàm truyền phi tuyến nên thực chất đây là bài toán tối ưu hóa phi tuyến hay còn gọi là bài toán tìm cực trị của hàm phi tuyến đa biến trong không gian đa chiều Các bài toán này khó có lời giải trực tiếp đưa
ra nghiệm tồng quát mà các thuật toán thường là thuật toán lặp đề tìm nghiệm cận tối
ưu Khi quá trình lặp được kết thúc, ta nói rằng mô hình học đã thu nhận được các thông tin của tập mẫu, qua đó đã phần nào học được về vấn đề từ môi trường xung quanh Neu chất lượng học đã có thể chấp nhận được, ta sẽ tách phần hướng dẫn và đề
mô hình học hoạt động độc lập Tuy nhiên do tập mẫu thường có kích thước hạn chế, không thể chứa hết tất cả các trường hợp có thể Vì vậy ngoài việc học xong tập mẫu,
ta còn cần đánh giá khả năng hoạt động của mô hình đối với các trường hợp còn lại
Ta có thể lấy ví dụ một nơ-rôn mô phỏng hàm lô-gíc OR, tức là đầu ra cùa
nơ-rôn (như đã trình bày trong phần 2.1 ở trên) y = Xị OR x2 Sử dụng các kết quà đã
có ờ trên (ba trọng số IV0 = -0 ,2 ; W\ =0,7; (V-, = 0 ,5 ; hàm truyền ngưỡng) Khi đó ta
Ta Cố thể nhận thấy với hàm truyền đạt ngưỡng, nơ rôn đã tái tạo chính xác cả
bốn trường hợp mẫu của hàm lô-gic OR hai biển
Xét hàm truyền đạt của nơ-rôn là hàm logsig, khi đó đầu ra của nơ-rôn được
cho theo bàng sau:
Trang 34Trong trường hợp này, tín hiệu đầu ra của nơ-rôn khá “lệch” so với giá trị đích cần đạt Khi đó nơ-rôn cần phải “học” để có thể giảm được các sai số đó (tương đương với các đầu ra của nơ-rôn tiến gần về các giá trị đích hơn) Với một bộ số liệu mẫu cho trước, với hàm truyền cho trước, nhiệm vụ còn lại là tìm các giá trị trọng số ghép nối [W] để sai số đầu ra nhỏ nhất.
Chú ỷ: Đối với mô hình nơ-rôn McCulloch - Pitts thì số lượng đầu vào cùa nơ-rôn N phụ thuộc vào bộ mẫu số liệu, dạng của hàm truyền đạt của nơ-rôn cần
chọn trước Hàm truyền của nơ-rôn thường được xác định dựa trên mức tín hiệu đầu
ra cần có Ncu các giá trị đầu ra chi nằm trong đoạn (0,1) thì ta có thể dùng hàm
logsig Neu chỉ nằm trong đoạn (-1,1) thì ta có thể dùng hàm tansig Neu có thê nằm ngoài đoạn (-1,1) thì ta có thể dùng hàm purelin Tuy nhiên trong thực tế, ta có thể
chuẩn hóa đau ra của số liệu sao cho chi nằm trong đoạn ( -1,1) đề có thể sử dụng hàm
tansig.
2.2.2 Thuật toán học có hướng dẫn của no*-rôn
Có rất nhiều thuật toán học đã được nghiên cứu và phát triển Trong phần này ta
sẽ trình bày về một thuật toán cơ bản nhất là học có hướng dan (supervised learning, learning with a teacher) trên cơ sờ lan truyền ngược sai số (error backpropagation) Thuật toán này được phát triển dựa trên thuật toán bước giảm cực đại (steepest descent)
dc xác dịnh giá trị cực tiểu cùa một hàm số
a) Thuật toán bước giảm cực đại
Nội dung của thuật toán bước giảm cực đại có thể được trình bày tóm tắt như
sau: “Cho một hàm f(x) bất kỳ, tìm điểm cực tiểu xmjn của hàm số đã cho trong trường hựp việc giải phương trinh f \ x ) = 0 không khả thi”
Như ta đã biết, đối với những hàm đơn giản, ta có thể sử dụng phương pháp tìm
các điềm cực tiểu bàng cách giải phương trình f \ x ) - 0, nhưng trong nhiều trường hợp việc giải phương trinh này cũng không dỗ dàng, khi đó ta có thể sử dụng phương pháp bước giảm cực đại Nội dung chính cùa thuật toán như sau:
Xuất phát từ một giá trị khởi đầux(0\ ta cần tìm điểm r(l) sao c h o / Ị x {l) j < / Ịx(0>) Sau đó tim điểm Jt<2) sao cho / ị x (2) j< /Ị V (11Ị • Nếu tiếp tục quá trình tìm kiếm nhưvậy, ta sẽ thu dược kết quả là một chuỗi mà giá trị hàm sổ / ị x (nJ giảm dần và
sè đạt tới một trong các cực tiểu của hàm f(x) Khi đó:
X ( I ) - > Y_
Trang 35Theo thuật toán bước giảm cực đại, ta sẽ có công thức xác định bước tiếp theo là:
dx trong đó: r/ - hệ số bước học Công thức này là hệ quả của phép khai triển Tay-lor
của hàm s ố /lâ n cận điểm Jt , theo đó:
hình 2.9 Từ điểm A ứng với hoành độ x (l, ta xác định tiếp tuyến với đồ thị hàm số tại
A và trên phương tiếp tuyến đó xác định điểm B (độ dài AB được xác định bời hệ số bước học) Hoành độ của B tương ứng với điểm lặp JC(<+U của bước tính toán hiện thời
Hình 2.9 Nguyên tẳc tìm điểm tiếp theo trong thuật toán bước giảm cục đại
Trên hình 2.10 là minh họa trường hợp bước học r/ quá lớn ncn điểm x(,+1) chuyển sang vùng khác có giá trị lớn hơn giá trị hàm số tại điểm x (,).
Trang 36Hình 2.10 Minh họa trường hợp hệ số bước học quá lớn dẫn tới điểm B vượt quá xa và
giá trị hàm số ứng với x<k*1> lớn hơn giá trị tại điểm A
h) Sử dụng thuật toán bước giảm cực đại cho một nơ-rôn
Trong quá trình học của mạng nơ-rôn, ta cần tối ưu hóa giá trị hàm sai số hay nói cách khác là cần xác định điểm cực tiểu của hàm sai số Với mô hình nơ-rôn như
tren hình 2.5 và bộ số liệu p mẫu {x¡,d¡),i = ta có tín hiệu đầu ra ứng với mẫuđầu vàox, là:
Trang 37[ w ](0) = |^^F0(0, Wị0> ivịữ) J = [-0,2 0,7 0,5]; nơ-rôn có hàm truyền logsig.
Khi đó y (0) = / ( 0 OO)*O + WI(O)*I +^2(0)jc 2) = /( 1 ,0 ) = 0,731.
Trang 38(Đây là trường hợp khá đặc biệt khi cả ba tín hiệu đầu vào đều bằng nhau
xữ - Xị = x2 = 1, đẫn tới các giá trị gradient cũng bằng nhau cho cả ba trọng số).
dE
[w H w f11
= -0 ,2 + 1 0,0529 = -0,147
dWị ÕE
Hình 2.11 Đồ thị giá trị hàm sai số giảm trong quá trình học
Trang 39Giá trị sai số sau 100 bước đạt £'(l00) =0,00947 Trên đồ thị hình 2.12 là sự thay đổi của ba trọng số ghép nối của nơ-rôn trong quá trình học trên.
Hình 2.12 Kết quả 100 bước điều chinh thích nghi giá trị của ba trọng số ghép nối
Trang 40Sử dụng các công thức học (2.18) với p = 3 và với các giá tri khởi tạo ban đầu tương tự như trên, ta thu được kết quà học ba mẫu có đường sai sổ tổng cộng được thể hiện trên hình 2.13.
<
0
0 0
Các thuật toán sử dụng gradient (đạo hàm bậc nhất) có tổc độ hội tụ chậm Khi
đó, nhóm thuật toán thông dụng thứ hai để điều chinh thích nghi các tham số của mạng nơ-rôn là thuật toán Levenberg-Marquardt (L-M) Thuật toán này dựa trên khai triển bậc hai của khai triển Taylor Xét sai số theo công thức (2.17) là hàm phụ thuộc các
trọng số ghcp nối của nơ-rôn, khi đó ta khai triển hàm E lân cận điểm vv - các giá trị
trọng số hiện tại sẽ được:
E ạ v + />) = E(W ) + [ s( * ') ] 7 p + X - p t H ( W ) p + o ự ) (2.20)
với p - khoảng lân cận khai triển, g(W) = VE = ÔE ÕE
dWị ÔW2
ÔE 'd w là vẻc-tơgradient cùa hàm E theo các trọng số ghép nối (được nhóm lại trong ma trận W), còn H
là ma trận vuông đối xứng của các đạo hàm bậc hai (còn gọi là ma trận Hessian) cùa E