Chương 1 GIỚI THIỆU SƠ LƯỢC VỀ MẠNG NƠ RON NHÂN TẠO 1. Giới thiệu về mạng nơ-ron nhân tạo. Lịch sử phát triển. Quá trình nghiên cứu và phát triển mạng nơ-ron nhân tạo có thể chia thành bốn giai đoạn như sau: + Giai đoạn một: Có thể tính từ nghiên cứu của William (1890) về tâm lý học với sự liên kết các nơ-ron thần kinh.
Năm 1940, MeCulloch và Pitts đã cho biết: nơ-ron có thể được mô hình hoá như thiết bị ngưỡng (giới hạn) để thực hiện các phép tính logic và mô hình mạng nơ-ron của Mc Culloch-Pitts cùng với giải thuật huấn luyện mạng của Hebb ra đời năm 1943. + Giai đoạn hai: Vào khoảng gần những năm 1960, một số mô hình nơ- ron hoàn thiện hơn đã được đưa ra như: mô hình Perceptron của Rosenblatt (1958), Adaline của Widrow (1962). Trong đó mô hình Perceptron rất được quan tâm vì nguyên lý đơn giản, nhưng nó cũng có hạn chế vì như Marvin Minsky và Seymour papert của MIT (Massachurehs Insritute of Technology) đã chứng minh nó không dùng được cho các hàm logic phức (1969). Còn Adaline là mô hình tuyến tính, tự chỉnh, được dùng rộng rãi trong điều khiển thích nghi, tách nhiễu và vẫn phát triển cho đến nay.
+ Giai đoạn ba: Có thể tính vào khoảng đầu thập niên 80. Những đóng góp lớn cho mạng nơ-ron trong giai đoạn này phải kể đến Grossberg, Kohonen, Rumelhart và Hopfield. Trong đó đóng góp lớn của Hopfield gồm hai mạng phản hồi: Mạng rời rạc năm 1982 và mạng liên tục năm 1984. Đặc biệt, ông đã dự kiến nhiều khả năng tính toán lớn của mạng mà một nơ-ron không có khả năng đó.
Cảm nhận của Hopfield đã được Rumelhart, Hinton và Williams đề xuất thuật toán sai số truyền ngược nổi tiếng để huấn luyện mạng -4- nơ-ron nhiều lớp nhằm giải bài toán mà mạng khác không thực hiện được. Nhiều ứng dụng mạnh mẽ của mạng nơ-ron ra đời cùng với các mạng theo kiểu máy Boltzmann và mạng Neocognition của Fukushima. + Giai đoạn bốn: Tính từ năm 1987 đến nay, hàng năm thế giới đều mở hội nghị toàn cầu chuyên ngành nơ-ron IJCNN (International Joint Conference on Neural Networks). Rất nhiều công trình được nghiên cứu để ứng dụng mạng nơ-ron vào các lĩnh vực, ví dụ như: Kỹ thuật tính, tối ưu, sinh học, y học, thống kê, giao thông, hoá học… Cho đến nay, mạng nơ-ron đã tìm được và khẳng định được vị trí của mình trong rất nhiều ứng dụng khác nhau.
Mô hình mạng nơ-ron nhân tạo. Nơ-ron sinh học. Hệ thần kinh ở người có khoảng 1010 tế bào thần kinh được gọi là các nơ- ron. Mỗi nơ-ron gồm có ba phần: Thân nơ-ron với nhân ở bên trong (soma), một đầu thần kinh ra (axon) và một hệ thống hình cây thần kinh (dendrite).
Có nhiều loại nơ-ron khác nhau và kích thước và khả năng thu phát tín hiệu. Tuy nhiên, chúng có cấu trúc và nguyên lý hoạt động chung.1) là một hình ảnh đơn giản hoá của một loại nơ-ron như vậy. Trong thực tế có rất nhiều dây thần kinh vào và chúng bao phủ một diện tích rất lớn (0.25 mm2) để nhận các tín hiệu từ các nơ-ron khác. Đầu thần kinh ra được rẽ nhánh nhằm chuyển giao tín hiệu từ thân nơ-ron tới nơ-ron khác.
Các nhánh của đầu thần kinh được nối với các khớp thần kinh (synapse). Các khớp thần kinh này được nối với thần kinh vào của các nơ-ron khác. Thêm vào đó, các nơ-ron có thể sửa đổi tín hiệu tại các khớp, trong các nơ-ron nhân tạo được gọi là trọng số. -5- Khớp nối dây thần kinh (Đầu vào) Trục Nhân Đầu ra Tế bào Hình 1.
Mô hình nơ-ron sinh học Hoạt động của nơ-ron sinh học có thể mô tả tóm tắt như sau: Mỗi nơ-ron nhân tín hiệu vào từ các tế bào thần kinh khác.Chúng tích hợp các tín hiệu vào, khi tổng tín hiệu vượt quá một ngưỡng nào đó chúng tạo tín hiệu ra và gửi tín hiệu này tới các nơ-ron khác thông qua dây thần kinh. Các nơ-ron liên kết với nhau thành mạng. Mức độ bền vững của các liên kết này xác định một hệ số gọi là trọng số liên kết. Nơ-ron nhân tạo.
Trọng số và tổng tín hiệu đầu vào: Mô phỏng nơ-ron sinh học để tạo ra nơ-ron nhân tạo. Mỗi nơ-ron có rất nhiều dây thần kinh vào, nghĩa là mỗi nơ-ron có thể tiếp nhận đồng thời nhiều tín hiệu. Giả sử tại nơ-ron i có N tín hiệu vào, mỗi tín hiệu vào S j được gán một trọng số Wij tương ứng. Ta ước lượng tổng tín hiệu đi vào nơ-ron neti theo một số dạng sau: (i) Dạng tuyến tính: N neti wij s j , (1.1) j 1 -6- (ii) Dạng toàn phương: N neti wij s 2j , (1.2) j 1 (iii) Dạng mặt cầu: 2 s w , N neti 2 j ij (1.3) j 1 trong đó và wij j 1, N lần lượt là bán kính và tâm cầu.
Hàm kích hoạt: Hàm biến đổi tín hiệu đầu vào net cho tín hiệu đầu ra out được gọi là hàm kích hoạt. Hàm này có đặc điểm là không âm và bị chặn. Có nhiều dạng hàm kích hoạt, người ta thường sử dụng một hàm kích hoạt chung cho toàn mạng. Một số hàm kích hoạt thường được sử dụng: (i) Hàm McCuloch-Pitts: 1 nÕu net out f net (1.4) 0 nÕu net ở đây là ngưỡng.
(ii) Hàm McCuloch-Pitts trễ: 1 nÕu net UTP out f net 0 nÕu net LTP (1.5) f net nÕu kh¸c ở đây UTP>LTP. Trong đó: -7- UTP là ngưỡng trên (Upper Trip Point). LTP là ngưỡng dưới (Lower Trip Point). (iii) Hàm Sigmoid: out f net 1 net , (1.6) 1 e trong đó 0 là hằng số xác định độ nghiêng của hàm.
Nút bias: Là một nút thêm vào nhằm tăng khả năng thích nghi của mạng nơ-ron trong quá trình học. Trong các mạng nơ-ron có sử dụng bias, mỗi nơ-ron có thể có một trọng số tương ứng với bias. Trong số nay luôn có giá trị là 1. Mô hình của một nút xử lý (nút thứ i): Vi Wi1 Vj Wij Vi Ui= Vi=fi(Ui) WiN VN Hình 1.
Mô hình một nơ-ron. N a Ui Wij Vj θ i , (1.8) Trong đó: -8- U i là tín hiệu vào tại nơ-ron i. Vi là tín hiệu ra tại nơ-ron i. Wij là trọng số liền kề nơ-ron j đến nơ-ron i.
i là ngưỡng (đầu vào ngoài) kích hoạt nơ-ron i. f i là hàm kích hoạt của nơ-ron i. Mạng nơ-ron nhân tạo (Artificial Neural Network ) là một cấu trúc mạng được hình thành nên bởi một số lượng các nơ ron nhân tạo liên kết với nhau. Mỗi nơ-ron có đặc tính đầu vào, đầu ra và thực hiện một chức năng tính toán cục bộ.
Với việc giả lập các hệ thống sinh học, các cấu trúc tính toán, mạng nơ- ron có thể giải quyết được các lớp bài toán nhất định, như: Bài toán người du lịch, bài toán tô màu bản đồ, bài toán xếp loại, bài toán lập lịch, bài toán tìm kiếm, bài toán nhận dạng mẫu. Các bài toán phức tạp cao, không xác định. Tuy nhiên, sự liên kết giữa một bài toán bất kỳ trong thực tế với một giải pháp mạng nơ-ron lại là một việc không dễ dàng. Xét một cách tổng quát, mạng nơ-ron là một cấu trúc xử lý song song thông tin phân tán mang các đặc tính nổi bật sau : Là mô hình toán học dựa trên bản chất của nơ-ron.
Bao gồm một số lượng rất lớn các nơ-ron liên kết với nhau. Mạng nơ-ron có khả năng học, khái quát hóa tập dữ liệu học thông qua việc gán và hiệu chỉnh các trọng số liên kết. Tổ chức theo kiểu tập hợp mang lại cho mạng nơ-ron khă năng tính toán rất lớn, trong đó không có nơ-ron nào mang thông tin riêng biệt.5 là một số mô hình mạng thông dụng. (i) Mạng truyền thẳng: Mạng truyền thẳng một lớp Mô hình mạng nơ-ron truyền thẳng một lớp là mô hình liên kết cơ bản và đơn giản nhất.
Các nơ-ron tổ chức lại với nhau tạo thành một lớp, đường truyền tín hiệu được truyền theo một hướng nhất định nào đó. Các đầu vào được nối với các nơ-ron theo các trọng số khác nhau, sau quá trình xử lý cho ra một chuỗi các tín hiệu ra. Nếu mạng nơ-ron là mô hình LTU thì nó được gọi là mạng Perception, còn mạng nơ-ron là mô hình LGU thì nó được gọi là mạng Adaline. x1 y1 x2 y2 Xm yn Hình 1.
Mạng truyền thẳng một lớp Với mỗi giá trị đầu vào x x1 , x 2 ,., x n T Qua quá trình xử lý của mạng ta sẽ thu được một bộ tương ứng các giá trị đầu ra là y y1 , y2 ,., yn T được xác định như sau : m yi fi ( wij x j i ), i 1, n (1.9) j 1 Trong đó : m : Số tín hiệu vào n : Số tín hiệu ra WiT wi1 , wi 2 ,., win là véc tơ trọng số của nơ-ron thứ i. T fi : Là hàm kích hoạt nơ-ron thứ i - 10 - i : Là ngưỡng của nơ-ron thứ i. Mạng truyền thẳng nhiều lớp. Với mạng nơ-ron truyền thẳng một lớp ở trên, khi phân tích một bài toán phức tạp sẽ gặp rất nhiều khó khăn, để khắc phục vấn đề này người ta đưa ra mô hình mạng nơ-ron truyền thẳng nhiều lớp bằng việc kết hợp một số lớp nơ-ron lại với nhau.
Lớp nhận tín hiệu vào gọi là lớp vào, lớp đưa tín hiệu ra của mạng được gọi là lớp ra. Các lớp ở giữa lớp vào và lớp ra được gọi là lớp ẩn.4) mô tả cấu trúc của mạng nơ-ron truyền thẳng nhiều lớp. x1 Lớp vào Lớp ẩn Lớp ra y1 x2 y2 yn xm Hình 1. Mạng truyền thẳng nhiều lớp.
(ii) Mạng hồi quy: Mạng hồi quy một lớp có nối ngược X1 Y1 X2 Y2. XN YM Hình 1. Mạng một lớp có nối ngược. - 11 - Mạng hồi quy nhiều lớp có nối ngược.
XN YM Hình 1. Mạng nhiều lớp có nối ngược. Mạng nơ-ron có một số ưu điểm so với máy tính truyền thống. Cấu trúc song song của mạng nơ-ron rất thích hợp cho những ứng dụng đòi hỏi tốc độ nhanh theo thời gian thực.
Khả năng huấn luyện của mạng nơ-ron có thể khai thác để phát triển hệ thống thích nghi. Mặt khác, với khả năng tổng quát hóa của mạng nơ-ron, nó có thể áp dụng để điều khiển nhiều tham số phức tạp đồng thời từ đó giải quyết dễ dàng một số bài toán thuộc lớp bài toán NP- đầy đủ (NP-Complete ).