CHƯƠNG 1 MẠNG NƠ RON NHÂN TẠO 1.1 MÔ HÌNH MẠNG NƠ RON NHÂN TẠO 1.1 Cấu trúc một nơ ron nhân tạo Mạng nơ ron 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 quá 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 có đề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 điều khiển đã định hướng trướ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.
Một nơ ron chứa đựng các thành phần cơ bản: - Thân nơ ron được giới hạn trong một màng membran và trong cùng là nhân. Từ thân nơ ron còn có rất nhiều đường rẽ nhánh tạm gọi là rễ. - “Bus” liên kết nơ ron này với các nơ ron khác được gọi là axon, trên axon có các đường rẽ nhánh. Nơ ron còn có thể liên kết với các nơ ron khác qua các rễ.
Chính vì cách liên kết đa dạng như vậy nên mạng nơ ron có độ liên kết rất cao. Các rễ của nơ ron được chia thành hai loại: loại nhận thông tin từ nơ ron khác qua axon, gọi là rễ đầu vào và loại đưa thông tin qua axon tới các nơ ron khác, gọi là rễ đầu ra. Một nơ ron có thể có nhiều rễ đầu vào, nhưng chỉ có một rễ đầu ra. Bởi vậy nếu xem nơ ron như một khâu điều khiển thì nó chính là khâu có nhiều đầu vào, một đầu ra (MISO).
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 hoàn toà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ơ Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008 ĐỒ ÁN TỐT NGHIỆP CAO HỌC 2 ron khác, sự thay đổi trạng thái của một nơ ron cũng sẽ kéo theo sự thay đổi trạng thái của những nơ ron khác và do đó là sự thay đổi của 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 toá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.1: Mô hình một nơ ron nhân tạo không có trọng số Hình 1.2: Mô hình một nơ ron nhân tạo có trọng số Đại lượng đầu vào vô hướng p được truyền thông qua một đường dây có hệ số trọng w. Tích số wp là đối số của hàm truyền f, tạo nên đầu ra vô Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008 ĐỒ ÁN TỐT NGHIỆP CAO HỌC 3 hướng a. Nơ ron ở hình 2 có hệ số bias b, có vai trò giống như một trọng số nhưng đầu vào cố định bằng 1.
Cả w và b đều là các tham số vô hướng có thể thay đổi được của một nơ ron. Ý tưởng trung tâm của mạng nơ ron là có thể điều chỉnh các thông số này để thu được các hành vi theo yêu cầu. Vì thế chúng ta có thể huấn luyện mạng nơ ron để thực hiện một công việc cụ thể hoặc mạng nơ ron sẽ tự điều chỉnh thông số để đạt được kết quả như ý muốn. Ở đây, f là hàm truyền, trong đó có 3 loại thường dùng, như sau: a) Hàm truyền Hard-limit Hình 1.3: Hàm truyền Hard-lim Hàm truyền Hard-limit giới hạn đầu ra của một nơ ron hoặc bằng 0 nếu đối số đầu vào n nhỏ hơn 0; hoặc bằng 1 nếu n lớn hơn hoặc bằng 0.
Hàm truyền này được sử dụng trong mạng Perceptron. b) Hàm truyền tuyến tính Hình 1.4: Hàm truyền tuyến tính Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008 ĐỒ ÁN TỐT NGHIỆP CAO HỌC 4 Các mạng nơ ron của loại này thường được dùng như là các bộ xấp xỉ tuyến tính. c) Hàm truyền sigmoid Hình 1.5: Hàm truyền sigmoid Hàm truyền này thường được dùng trong các mạng nơ ron lan truyền ngược.2 Các cấu trúc cơ bản của mạng nơ ron nhân tạo Liên kết các đầu vào và ra của nhiều nơ ron với nhau ta được một mạng nơ ron. Việc ghép nối các nơ ron trong mạng với nhau có thể theo một nguyên tắc bất kỳ nào đó.
Ở một mạng, các nơ ron được phân biệt với nhau thông qua vị trí của nó trong mạng, cụ thể là: - Nhóm nơ ron đầu vào (input layer) là những nơ ron nhận thông tin từ môi trường bên ngoài vào trong mạng. Chúng có vị trí ngoài cùng “bên trái” và được nối với các nơ ron khác trong mạng từ (rễ) đầu ra. - Nhóm nơ ron được các nơ ron khác trong mạng kết nối tới thông qua (rễ) đầu vào được gọi là nơ ron đầu ra (output layer). Những nơ ron đầu ra có vị trí ngoài cùng “bên phải” và có nhiệm vụ đưa tín hiệu của mạng ra bên ngoài.
- Những nơ ron còn lại không thuộc hai nhóm trên được gọi là nơ ron bên trong (hidden layer). Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008 ĐỒ ÁN TỐT NGHIỆP CAO HỌC 5 Như vậy, một mạng nơ ron cũng có chức năng của một hệ truyền đạt và xử lý tín hiệu từ đầu vào đến đầu ra của mạng. Các nơ ron trong một mạng thường được chọn cùng một loại, chúng được phân biệt với nhau qua véc tơ hàm trọng số w. Một mạng nơ ron được chia thành các lớp, mỗi lớp bao gồm nhiều nơ ron có cùng một chức năng trong mạng.6: Mạng nơ ron ba lớp truyền thẳng Hình 1.6 là mô hình của một mạng nơ ron ba lớp.
Mạng có R đầu vào p1, p2,., p n và S đầu ra a31, a3 2,. Các tín hiệu đầu vào được đưa đến S nơ ron đầu vào, các nơ ron này làm thành lớp đầu vào của mạng (input layer). Đầu ra của các nơ ron này được đưa đến đầu vào của các nơ ron tiếp theo, các nơ ron này không trực tiếp tiếp xúc với môi trường xung quanh và làm thành lớp trung gian trong mạng (hidden layer). Đầu ra của các nơ ron này được đưa đến các nơ ron đưa tín hiệu ra môi trường bên ngoài, thuộc lớp các nơ ron đầu ra (output layer).
Mạng nơ ron mà ở đó không tồn tại bất kỳ một mạch hồi tiếp nào kể cả hồi tiếp nội lẫn hồi tiếp từ đầu ra trở về đầu vào, được gọi là mạng truyền Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008 ĐỒ ÁN TỐT NGHIỆP CAO HỌC 6 thẳng (feedforward network). Ngược lại, mạng có đường phản hồi từ đầu ra của một nơ ron tới đầu vào của nơ ron cùng lớp hoặc thuộc lớp phía trước có tên gọi là mạng hồi tiếp (feedback network). Mạng nơ ron bao gồm một hay nhiều lớp trong (lớp trung gian) được gọi là mạng MLP (multilayer perceptrons network). Còn mạng chỉ có một lớp, vừa là lớp vào vừa là lớp trung gian và cũng là lớp ra thì mạng đó có tên là mạng một lớp.
Mạng nơ ron luôn có cấu trúc ghép nối hoàn toàn, tức là bất cứ một nơ ron nào trong mạng cũng được nối với một hoặc vài nơ ron khác. Trong trường hợp các nơ ron trong mạng có khâu tạo chức năng đáp ứng là khâu tuyến tính, tính phi tuyến chỉ nằm ở khâu tạo chức năng ra thì việc mắc nối tiếp các nơ ron trong mạng không còn ý nghĩa nữa và lúc đó ta hoàn toàn có thể thay thế mạng nơ ron nhiều lớp thành mạng nơ ron một lớp.2 HUẤN LUYỆN MẠNG 1.1 Nguyên tắc huấn luyện mạng Huấn luyện mạng là công việc xác định các véc tơ trọng số w i có trong từng nơ ron của mạng sao cho mạng nơ ron có khả năng tạo ra các đáp ứng đầu ra mong muốn (giống như tín hiệu ra của một hệ thống) khi cùng được kích thích bằng một lượng thông tin đầu vào của hệ thống đó. Như vậy, có thể xem việc huấn luyện mạng là tạo ra cho mạng khả năng của một thiết bị xấp xỉ thông tin. Để huấn luyện, người ta cho tác động vào mạng hàng loạt kích thích x(k) , k = 1, 2,.
có khả năng lặp lại trong quá trình mạng làm việc. Những tác ~ (k ) động này được gọi là kích thích mẫu. Các giá trị y tương ứng tại đầu ra - Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008 ĐỒ ÁN TỐT NGHIỆP CAO HỌC 7 (k) của mạng được so sánh với đáp ứng mẫu y cho trước. Các phần tử của - những véc tơ trọng số w i I = 1, 2, …, n có trong tất cả n nơ ron của mạng được hiệu chỉnh theo từng bước huấn luyện sao cho tổng các sai lệch 2 2 ~ (k ) Ek = e ( k) = y - y ( k) là nhỏ nhất.
Như vậy, thực chất việc huấn luyện - - - mạng chính là quá trình giải bài toán tối ưu tham số và để thực hiện được bài toán tối ưu tham số này, phải xây dựng được phiến hàm mục đích mô tả rõ ràng sai lệch.7 mô tả nguyên lý huấn luyện một mạng nơ ron.7: Nguyên tắc huấn luyện mạng Có hai phương pháp huấn luyện mạng là phương pháp học có giám sát và học không có giám sát. Trong phương pháp học có giám sát, khi các đầu vào tác động vào mạng, đầu ra của mạng sẽ được so sánh với các mục tiêu. Khi đó, ta sẽ sử dụng luật huấn luyện để điều chỉnh trọng số và bias của mạng để đưa đầu ra của mạng về gần với mục tiêu. Nguyễn Thái Sơn - Cao học ĐKTĐ 2006 – 2008 ĐỒ ÁN TỐT NGHIỆP CAO HỌC 8 Trong phương pháp học không có giám sát, trọng số và bias của mạng được chỉnh định tương ứng với đầu vào của mạng mà thôi, không có các đầu ra mục tiêu.2 Cấu trúc và phương pháp huấn luyện trong các mạng Nơ ron tiêu biêu 1.1 Mạng truyền thẳng Mạng truyền thẳng là kiểu mạng nơ ron nhân tạo đầu tiên và đơn giản nhất.
Trong cấu trúc này, thông tin sẽ chỉ di chuyển theo một chiều, thẳng, từ các nút đầu vào, thông qua các nút ẩn (nếu có) đến nút đầu ra, không có các chu trình hay vòng nào trong mạng. Mạng Perceptron một lớp * Cấu trúc Hình 1.