Transcript
Page 1: Bai Giang No-ron-All - Trần Hoài Linh

- 1 -

Chương I

NHẬP MÔN – 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ủa các máy tính này 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ể ñảm nhiệm trong thời gian ngắn. 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ả của 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 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 nghiên cứu về Các hệ thống thông minh. Một trong những lĩnh vực nhỏ của ngành này là các nghiên cứu về Trí tuệ nhân tạo (Artificial Intelligence).

Hình 1: V trí c�a chuyên ngành trong lĩnh v�c x� lý tín hi�u

Page 2: Bai Giang No-ron-All - Trần Hoài Linh

- 2 -

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ý thô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ện 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 ta 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).

Trong giáo trình này, ta có thể sử dụng quan ñiểm 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 như 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, tuyến ñường dịch chuyển,...). Sau ñó ta mới tiến hành chế tạo các cơ cấu ñó.

Ta lấy một ví dụ nữa về hệ thống nhận dạng qua hình ảnh (mắt nhìn) của con người. Các hệ thống thu thập như camera ñã mô phỏng ñược mắt người và ñã ñược chế tạo rất tốt, rất hiện ñại với các chỉ số kỹ thuật cao hơn mắt người rất nhiều. Tuy nhiên các thuật toán phân tích và xử lý thông tin ñể nhận dạng các hình ảnh thu thập ñược thì còn hết sức hạn chế.

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à tính 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ể xét 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 (ví dụ như khi ta tìm một khuôn mặt quen trong một ñám ñông) trong thời gian khoảng từ 100 ñến 200ms, 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 trình mô phỏng. ðến nay các chương trình này mới chỉ ñạt ñược những kết quả nhất ñịnh ban ñầu. Tiếp theo ñó là những khả năng về chọn

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 3: Bai Giang No-ron-All - Trần Hoài Linh

- 3 -

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,...).

Việc tìm hiểu những khả năng của não bộ con người và tìm cách tái tạo lại ñược 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 khoảng 4-5 tuổi). Sau thời gian ñó, số lượng nơ-rôn nói chung không phát triển thêm nữa mà chỉ tự ñiều chỉnh và thay ñổi thông số của các ghép nối ñang có. Quá trình 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 ñã ñược ñề cập ở mục trên, 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á trình học. Một nơ-rôn ñang “phát triển” hay ñang “tiến hoá” 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 phép ta tạo ñược những mô hình ñể 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ụ như 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 ta có thể mô phỏng gần ñúng một não bộ vẫn là một ñiều chưa khả thi.

Nếu 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:

1. Kiến thức, kinh nghiệm ñược thu thập từ môi trường thông qua quá trình học

2. 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ó 3 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 ñể giải quyết 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 3 thành phần chính:

1. 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

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 4: Bai Giang No-ron-All - Trần Hoài Linh

- 4 -

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, ...

0. Suy luận (Reasoning): là khả năng giải quyết các vấn ñề. Theo [Fischler1987], 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ạng vấ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.

0. 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.25 tr. 35). Môi trườ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 chỉnh 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 ñượ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.1: Mô hình ñ#n 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 ngắn 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 chỉnh 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.

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 5: Bai Giang No-ron-All - Trần Hoài Linh

- 5 -

Mỗi 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 của mạng cũng như ñiều chỉnh 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.

1.2 Theo dòng lịch sử Các nghiên cứu cận ñại về nơ-rôn ñược coi là bắt nguồn từ công trình

[McCulloch1943] của McCulloch và Pitts vào năm 1943. McCulloch ñã nghiên cứu hơn 20 năm về cơ chế thể hiện một sự kiện trong hệ thần kinh. Trong công trình kinh ñiển của mình, McCulloch và Pitts ñã mô tả quá trình tính toán lôgíc của mạng nơ-rôn trên cơ sở tổng hợp các kết quả nghiên cứu cả về tâm - sinh học cũng như toán học. Các tác giả ñã xây dựng nên mô hình hoạt ñộng theo hàm ngưỡng và dựa trên việc ñiều chỉnh các trọng số ghép nối, các mô hình mạng có khả năng mô phỏng những hàm truyền ñạt bất kỳ. ðây là một bước tiến rất lớn trong lịch sử nghiên cứu và ña số các nhà khoa học ñều nhất trí rằng ñây là mốc rất quan trọng trong lịch sử của 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 ñó 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ê. Nhưng phải hơn 30 năm sau, Hopfield 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 – nghỉ” hay còn gọi là chế ñộ 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) [Aspray1986] – 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 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 of Games and Economic Behavior. Cũng vẫn là Von Neumann ñã ñưa ra câu trả lời nổi tiếng về 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. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just 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 như ông 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 ñể 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 với tiêu ñề The Organization of Behavior, trong ñó cơ chế sinh – hóa

Page 6: Bai Giang No-ron-All - Trần Hoài Linh

- 6 -

của quá trình học thông qua việc ñiều chỉnh trọng số ghép 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 [Rochester1956] 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 Hebb. 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 ñể có thể 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 là một chủ ñề thảo luận chính thức của Hội nghị Dartmounth lần thứ 2 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 ñã ñưa là 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 học ñộ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ả nghiên 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.

Thờ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 [Minsky1969], 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 chỉ 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à

Page 7: Bai Giang No-ron-All - Trần Hoài Linh

- 7 -

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 [Minsky1969] ñã 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 [Malsburg1973] của von der Malsburg vào năm 1973 về mạng tự tổ 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 vực cùng một lúc. Năm 1980, Grossberg [Grossberg1980] ñã ñề 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 ñượ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 lưu trữ trong các trạng thái ñộng cân bằng của hệ thống mang ý nghĩa ñột phá. Cần chú ý 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à trong công trình của Hopfield. Cùng trong năm này, Kohonen ñã ñưa ra mô hình mạng Kohonen-SOM (Kohonen self-organising maps) cho các lưới trong không gian một chiều và không gian hai chiều. Mạng Kohonen ñã nhanh chóng trở thành một trong 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 trong 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 mạ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ô phỏng quá 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 [Kirkpatrick1983], Boltzmann Machines [Ackley1985], Reinforcement Learning [Barto1983],

Năm 1986 các tác giả Rumelhart, Hinton và Williams [Rumelbart1986] ñã 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 [Werbos1974] 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 [Broomhead1988]. Còn mạng SVM [Boser1992] 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 về 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 NN thông dụng như sau

Cơ chế học Cấu trúc Tên mạng Tác giả ñề xuất

Năm ñề xuất

Comment [THL1]: Format bảng

Page 8: Bai Giang No-ron-All - Trần Hoài Linh

- 8 -

Mạng học có hướng dẫn

Tuyến tính Hebbian Hebb 1949

Adaline Widrow và Hoff

1960

Higher Order Bishop 1995

Functional Link Pao 1989

Truyền thẳng ña lớp

MLP Bishop 1995

Backprop Rumelhart, Hinton và Williams

1986

Cascade Correlation

Fahlman và Lebiere

1990

Quickprop Fahlman 1989

RPROP Riedmiller và Braun

1993

RBF RBF Fausett 1994

OLS (Orthogonal Least Squares)

Chen, Cowan và Grant

1991

Classification Only

LVQ (Learning Vector Quantization)

Kohonen 1988

PNN (Probabilistic Neural Networks)

Specht 1990

Regression GNN (General Watson và 1964

Page 9: Bai Giang No-ron-All - Trần Hoài Linh

- 9 -

Only Regression Neural Network

Nadaraya

Mạng có phản hồi

BAM (Bidirectional Asociative

Memory)

Kosko 1992

Boltzman Machine

Ackley 1985

BTT (Backpropagation through Time)

Werbos 1990

Elman Elman 1990

FiR (Finite Impulse Response)

Wan 1990

RTRN (Real-time Recurrent Network)

Williams và Zipser

1989

RB (Recurrent Backpropagation

Pineda 1989

TDNN (Time-Delay Neural

Network)

Lang, Waibel và Hinton

1990

Mạng tự tổ chức

Competitive Vector Quantization

Grossberg Grossberg 1976

Kohonen Kohonen 1984

Conscience Desieno 1988

Page 10: Bai Giang No-ron-All - Trần Hoài Linh

- 10 -

Self-organizing Map

Kohonen Kohonen 1995

GTM Bishop, Svenson và Williams

1997

Local Linear Mulier và Cherkassky

1995

Adaptive Resonance Theory

ART1 Carpenter và Grossberg

1987

ART2 Carpenter và

Grossberg

1987

ART3 Carpenter và Grossberg

1990

Fuzzy ART Carpenter, Grossberg và Rosen

1991

DCL (Diferential Competitive

Learning)

Kosko 1992

Dimesion Reduction

Oja Oja 1989

Sanger Sanger 1989

Differential Hebbian

Kosko 1992

Autoassociation Hopfield Hopfield 1982

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à của chuyên ngành

Page 11: Bai Giang No-ron-All - Trần Hoài Linh

- 11 -

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 Ernst Dickmanns và Daimler-Benz thiết kế ñã chở hành khách thực ñi hơn 1000km 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 130km/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 trong nhà tự ñộng. 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 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 chỉ 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.

1.3 Các quá trình cơ bản của các mạng nơ-rôn Khi nghiên 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 (learning process) và quá trình kiểm tra (testing process).

Quá trình 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á trình 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ố Ehocj. 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 chỉnh thông số, mạng nơ-rôn còn có khả năng ñiều chỉnh 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.

Nếu 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

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 12: Bai Giang No-ron-All - Trần Hoài Linh

- 12 -

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ẹ hơn.

– Quá 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.

Nếu 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ạ của từ tín hiệu ñầu vào tới tín hiệu ñầu ra.

– Học tự tổ chức (self-organized learning): là quá trình học với các mẫu số liệu chỉ bao gồm một 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 dựa trên một tín hiệu ñiều khiển từ một ñối tượng “chuyên gia” bên ngoài ñể ñiều chỉnh thích nghi các tham số của mô hình.

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ó thể kể tới các khả năng chính như sau:

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 13: Bai Giang No-ron-All - Trần Hoài Linh

- 13 -

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 ñầu vào từ một ñối tượng ñể xác ñịnh ñối tượng ñó 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 ñó.

0. 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 trưng 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 ñã sử dụng phương pháp hoạt ñộng này [Anderson, 1995]. 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 ( )( ) ( ),i ix d với

1, ,i p= … , d(i) ñược gọi là ñầu ra liên kết với ñầu vào x(i). 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ì mạng cần tìm ra mẫu x(i) gần giống x

nhất trong số các mẫu ñã ñược ghi nhớ và cung cấp d(i) ở ñầ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 ( ) ( )i i=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.

0. 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 chỉ biết ñược giá trị của hàm ñó tại một số ñiểm ( )ix là

( )( ) ( )i if=d x với 1,2,i p= … . ðể có thể tái tạo lại hàm f() 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

, ( ) ( )F f ε∀ − <x x x

với ε - ñộ 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() sao cho 1g f −= hay

( ) ( )1g f −= =x d d

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 14: Bai Giang No-ron-All - Trần Hoài Linh

- 14 -

Chú ý: không nhầm lẫn ký hiệu toán học 1f − với nghịch ñảo giá trị hàm số

1 ( )f x )

Trong bài toán ngược này, vị trí của d và x trong một cặp mẫu ñược ñảo ngược, ñầu vào của mạng sẽ là d còn ñầu ra ñích tương ứng sẽ là x.

0. ðiều khiển: Bài toán ñiều khiển một ñối tượng là một ứng dụng khác của mạng nơ-rôn. Bộ não của chúng ta là một minh chứng sống cho việc tồn tại một bộ ñ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 ñiều chỉnh 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.2. 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ị ñích d ñã ñịnh. Trên hình 1.2 tín hiệu sai số e ñược ñưa vào bộ ñiều khiển (trong trường hợp này là mạng nơ-rôn) trước, sau ñó mới ảnh hưởng tới ñầu vào của ñối tượng.

Hình 1.2: S# ñ- kh*i c�a h� ñi/u khi0n có ph$n h-i

0. 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 là 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 hoặc ñạ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

BLUEMOON
Highlight
Page 15: Bai Giang No-ron-All - Trần Hoài Linh

- 15 -

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 (Multi-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 trình 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 ñể mô phỏng các mạng nơ-rôn trên các thiết bị.

Page 16: Bai Giang No-ron-All - Trần Hoài Linh

- 16 -

Chươ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 ta có khoảng 100 tỷ 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ộ. Các công trình nghiên cứu cũng ñã chỉ rõ nhờ có bộ não phát triển mà loài người mới có ñược “trí thông minh” cao hơn 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 3 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 và 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 chuyể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 [Cajal11]. Ô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 hoạt ñộng với tần số cỡ kHz (103Hz). 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 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 1012 nơ-rôn và khoảng 1014 ghép nối giữa các nơ-rôn. Với 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 bình 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 10-6J 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. Việc nghiê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 nghiên 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.

BLUEMOON
Highlight
Page 17: Bai Giang No-ron-All - Trần Hoài Linh

- 17 -

Hình 2.1: C4u trúc c�a n#-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 thế 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 thì bên trong nhân của 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 sẽ xuất hiện một xung ñiện áp có hình dáng như trên hình 2.2.

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

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Callout
Tom tat hoat dong củua Noron than kinh
Page 18: Bai Giang No-ron-All - Trần Hoài Linh

- 18 -

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ác nơ-rôn khác. Nếu 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 ra tín hiệu của nơ-rôn. Sau khi ñã hòan 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 bị tự phân rã hoặc ñượ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 nghỉ 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) và 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.

2.1.2 Mô hình nơ-rô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 [McCulloch43]. 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 một xung tín hiệu ñầu ra

Từ ñó ta có mô hình của nơ-rôn bao gồm 3 thành phần cơ bản:

1. Hệ thống các ghép nối thần kinh (synapses, connection links): ñược ñặc trưng 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 xi (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ơ-rôn thứ 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ố Wkj ñể trở thành kj iW x⋅ như trên hình 2.3a. ðể ñơ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 chỉ biểu diễn giá trị của hệ số khuếch ñại là Wkj.

(a) (b)

Hình 2.3: Bi0u diEn tính ch4t khuFch ñ>i (tuyFn tính) c�a các ghép n*i n#-rôn: a) H d>ng kinh ñi0n, b) H d>ng rút g'n

BLUEMOON
Highlight
BLUEMOON
Highlight
Page 19: Bai Giang No-ron-All - Trần Hoài Linh

- 19 -

2. 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.

3. 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 lớn quá.

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à θ .

a) b)

Hình 2.4: Mô hình n#-rôn chi tiFt (trái) và bi0u diEn ñ#n gi$n hóa (ph$i)

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ự:

0. Tổng ñáp ứng ñầu vào:

1

N

i ii

u x W=

= ⋅∑ (2.1)

0. ðáp ứng ñầu ra:

( )1

0

khi uy u

khi u

θθ

θ≥

= − = <

1 (2.2)

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 ñơn 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.

BLUEMOON
Highlight
Page 20: Bai Giang No-ron-All - Trần Hoài Linh

- 20 -

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 θ ñượ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à 0W θ= − . 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ị

( )1 0

0 0

khi uy u

khi u

≥= =

<1 (2.3)

với 0

N

i ii

u x W=

= ⋅∑ , trong ñó 0 01; .x W θ≡ = −

Hình 2.5: Mô hình n#-rôn vLi phân c�c bias là ñ?u vào x0: chi tiFt (trái) và rút g'n (ph$i)

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 [ ]1 2, , , Nx x x=x … và [ ]1 2, , , NW W W=W … ta có

0 01

'N

i ii

u W x W W=

= + ⋅ = + ⋅∑ x W

Nếu sử dụng dạng biểu diễn mở rộng [ ]1 21, , , , Nx x x=x … và

[ ]0 1 2, , , , NW W W W=W … thì

01

'N

i ii

u W x W=

= + ⋅ = ⋅∑ x W

2.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ả

của 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ể:

Page 21: Bai Giang No-ron-All - Trần Hoài Linh

- 21 -

( ) ( )1 0 0 0

( )0 0 0

khi u khi udu u u

khi u khi uduδ

≥ ≠ = → = =

< ∞ = 1 1 (2.4)

Và 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 trong các tài liệu về mạng nơ rôn.

a) Hàm logsig hoặc sigmoid:

ðây là một trong những dạng hàm truyền ñạt ñược sử dụng nhiều nhất. 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

1 ea au

logsig u−

=+

(2.5)

với a – hệ số dốc. Khi a→∞ 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 vLi các h� s* d*c a khác nhau

Biểu diễn hàm logsig cho các giá trị 1,2a = và 5 ñược thể hiện trên hình 2.6.

Hàm logsig có ñạo hàm ñược tính theo công thức sau:

Page 22: Bai Giang No-ron-All - Trần Hoài Linh

- 22 -

( ) ( )( ) ( )( )

2 2

( )( )

1 1

1

au au

au au

d e a a elogsig u

du e e

a logsig u logsig u

− −

− −

− − ⋅= =

+ +

= ⋅ ⋅ −

(2.6)

(việc biểu diễn /df 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 logsig ñề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.

( ) ( )

2

tanh

2 ( ) 1

au au

a au au

a

e ef u u

e elogsig u

−= =

+= ⋅ −

(2.7)

ðạo hàm của hàm tansig cũng có thể dễ dàng biểu diễn qua giá trị hàm số:

( )

( )( )22

4( ) 1a a

au au

d atansig u a tansig u

du e e−= = ⋅ −

+ (2.8)

Hình 2.7: Hàm truy/n ñ>t tansig vLi các h� s* d*c a khác nhau

Page 23: Bai Giang No-ron-All - Trần Hoài Linh

- 23 -

c. Hàm tuyến tính (purelin – Pure Linear Function): 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ừ −∞ ñến +∞ ). Hàm tuyến tính có dạng

( ) ( )f u purelin u a u b= = ⋅ + (2.9a)

d. 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 công thức sau:

( )1 1

( ) 0 1

0 0

khi u

f u satlin u u khi u

khi u

≥= = ≤ ≤ ≤

(2.9b)

hoặc

( )1 1

( ) 1 1

1 1

khi u

f u satlin u u khi u

khi u

≥= = − ≤ ≤− ≤ −

(2.9c)

2.1.4 Ví dụ tính toán ñáp ứng ñầu ra của nơ-rôn với các hàm truyền ñạt khác nhau

Ta có thể lấy ví dụ một nơ-rôn với hai ñầu vào, ba trọng số

0 1 20,2; 0,7; 0,5W W W= − = = , hàm truyền ngưỡng. Khi ñó ta có kết quả ñầu ra của nơ-

rôn khi có các ñầu vào nhị phân như trong bảng sau:

x1 x2 d 0 0 1 1 2 2u W x W x W x= + + ( )y u= 1

0 0 0 -0,2 0

0 1 1 0,3 1

1 0 1 0,5 1

1 1 1 1,0 1

Page 24: Bai Giang No-ron-All - Trần Hoài Linh

- 24 -

Với hàm truyền ñạt là các hàm cơ bản khác như logsig, tansig hay tuyến tính bão hòa (satlin) thì các ñáp ứng ñầu ra sẽ là:

x1 x2 d 0 0 1 1 2 2u W x W x W x= + + ( )y logsig u= ( )y tansig u= ( )y satlin u=

0 0 0 -0,2 0,450 -0,197 0

0 1 1 0,3 0,574 0,291 0,3

1 0 1 0,5 0,623 0,462 0,5

1 1 1 1,0 0,731 0,762 1,0

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 (learning 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 hơn từ môi trường.

Ta có 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 Mendel 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 chỉnh thích nghi khi ñược kích thích bởi môi trường bên ngòai. Dạng của quá trình học ñược xác ñịnh bởi phương pháp ñiều chỉnh các thông số.

ðịnh nghĩa trên của quá trình học bao gồm ba bước:

– Nơ-rôn ñược kích thích bởi môi trường bên ngoài.

– Nơ-rôn ñiều chỉnh các thông số của mình khi bị kích thích.

– ðá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 chỉnh.

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 25: Bai Giang No-ron-All - Trần Hoài Linh

- 25 -

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 toá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 số liệu ñầu vào x cho trước ta có nơ-rôn sẽ xử lý và ñưa ra ñược những ñáp ứng y “tốt nhất”.

Hình 2.8: H� xây d�ng mô hình x4p xR m)t ñ*i tSTng cho trSLc (ph*i hTp s� d=ng sai s*

ñ?u ra e y d= − )

Với tập số liệu học gồm p mẫu { },i idx với 1, ,i p= … , véc-tơ ñầu vào

Ni ∈x ℝ , giá trị ñích (destination) cần ñạt id ∈ℝ ta cần xác ñịnh nơ-rôn có N ñầu vào

và 1 ñầu ra với hàm truyền ñạt f() sao cho

( ), i ii f d∀ ≈x (2.10)

hay ta có thể sử dụng hàm mục tiêu là tổng các bình phương sai số:

( )( )1

1min

2

p

i ii

E f d=

= − →∑ x (2.11)

Trên hình 2.8 là sơ ñồ khối chức năng mô tả quá trình học này. “Hướng dẫn”

ñược hiểu là tập hợp các kiến thức ñược trích ra từ môi trường. Các kiến thức ñược xây

dựng dưới dạng các cặp mẫu vào – ra ( ),dx (input-output samples), trong ñó x – véc-

tơ ñầu vào mẫu còn d – ñầ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ơ-

BLUEMOON
Highlight
Page 26: Bai Giang No-ron-All - Trần Hoài Linh

- 26 -

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 ứng

y thường sẽ 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 chỉnh 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ố 0e = thì nơron 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 tóan 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. Nếu 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ích OR, tức là ñầu ra của nơ-rôn (như ñã trình bày trong phần 2.1 ở trên) 1 2 OR y x x= . Sử dụng các kết quả ñã có ở

trên (ba trọng số 0 0,2;W = − 1 0,7;W = 2 0,5W = ; hàm truyền ngưỡng). Khi ñó ta có

bảng sau

x1 x2 d 0 0 1 1 2 2u W x W x W x= + + ( )y u= 1 e y d= −

0 0 0 -0,2 0 0

0 1 1 0,3 1 0

1 0 1 0,5 1 0

1 1 1 1,0 1 0

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ả 4 trường hợp mẫu của hàm lô-gic OR 2 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:

x1 x2 d 0 0 1 1 2 2u W x W x W x= + + ( )y logsig u= e y d= −

0 0 0 -0,2 0,450 0,450

0 1 1 0,3 0,574 -0,426

BLUEMOON
Highlight
Page 27: Bai Giang No-ron-All - Trần Hoài Linh

- 27 -

1 0 1 0,5 0,623 -0,377

1 1 1 1,0 0,731 -0,269

Trong 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.

ðố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ó. Nếu các giá trị ñầu ra chỉ nằm trong ñoạn (0,1) thì ta có thể dùng hàm logsig.

Chú ý: Nếu chỉ nằm trong ñoạn (-1,1) thì ta có thể dùng hàm tansig. Nếu có thể nằm ngòai ñ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 ñầu ra của số liệu sao cho chỉ 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 nơ-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 dẫn (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 (steppest descent) ñể xác ñị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 minx của hàm số ñã cho trong trường

hợp việc giải phương trình ( ) 0f x′ = 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 ( ) 0f x′ = , nhưng trong nhiều trường

hợp việc giải phương trình 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 ñầu x(0). Ta cần tìm ñiểm x(1) sao cho ( ) ( )(1) (0)f x f x< . Sau ñó tìm ñiểm x(2)

sao cho ( ) ( )(2) (1)f x f x< . Nếu tiếp tục quá trình tìm kiếm như vậy, ta sẽ thu ñược kết

quả là một chuỗi { }( )tx mà giá trị hàm số ( )( )tf x 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 ñó

BLUEMOON
Highlight
Page 28: Bai Giang No-ron-All - Trần Hoài Linh

- 28 -

( )min

tt

x x→∞

→ (2.12)

Theo 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à

( )

( 1) ( )

t

t t

x x

fx x

xη+

=

∂= −

∂ (2.13)

trong ñó η - 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ố f lân cận ñiểm x(t), theo ñó

( ) ( ) ( ) ( )( ) ( ) ( ) 2t t tf x f x f x′+ ∆ ≈ + ∆ ⋅ + Ο ∆ (2.14)

Nếu chọn ( )( )tf xη ′∆ = − ⋅ với η ñủ nhỏ thì

( ) ( ) ( )( ) ( ) ( )2

( ) ( ) ( ) 2 ( )t t t tf x f x f x f xη ′+ ∆ ≈ − ⋅ + Ο ∆ < (2.15)

Từ ñó ta có nếu chọn ( )

( 1) ( ) ( )

t

t t t

x x

fx x x

xη+

=

∂= + ∆ = −

∂ thì giá trị hàm số tại

ñiểm ( 1)tx + sẽ giảm (với η ñủ nhỏ). Minh họa của thuật toán này ñược thể hiện trên

hình 2.9. Trên hình 2.10 là minh họa trường hợp bước học quá lớn nên ñiểm ( 1)tx +

Hình 2.9: Nguyên tWc tìm ñi0m tiFp theo trong quá trình lXp bYng thuZt toán bSLc gi$m c�c ñ>i: T\ ñi0m A ^ng vLi hoành ñ) x(t)ta xác ñnh tiFp tuyFn vLi ñ- th hàm s* t>i A và trên

Page 29: Bai Giang No-ron-All - Trần Hoài Linh

- 29 -

phS#ng tiFp tuyFn ñó xác ñnh ñi0m B (ñ) dài AB ñSTc xác ñnh b_i h� s* bSLc h'c). Hoành ñ) c�a B tS#ng ^ng vLi ñi0m lXp x(t+1)

Hình 2.10: Minh h'a trSang hTp h� s* bSLc h'c quá lLn dbn tLi ñi0m B vSTt quá xa và giá tr hàm s* ^ng vLi x(k+1) lLn h#n giá tr t>i ñi0m A

b. 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 ta 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ư

trên hình 2.5 và bộ số liệu p mẫu { }, , 1, ,i id i p=x … ta có tín hiệu ñầu ra ứng với mẫu

ñầu vào ix là:

0

N

i j ijj

y f W x=

=

∑ (2.16)

Sai số trên bộ số liệu học là:

( )21

1

2

p

i ii

E y d=

= −∑ (2.17)

Page 30: Bai Giang No-ron-All - Trần Hoài Linh

- 30 -

Ta cần tìm các trọng số jW ( 0,1,...,j N= ) hay còn gọi là véc-tơ trọng số [ ]W

ñể giảm sai số cho theo (2.17). Bắt ñầu từ một bộ giá trị ban ñầu nào ñó

[ ](0) (0) (0)(0)

0 1, , , NW W W = W … , theo công thức …, các trọng số ñược ñiều chỉnh thích

nghi theo công thức lặp như (2.13):

[ ] [ ]

( 1) ( )

( )

t t

tj j

j

EW W

+

=

∂= −

∂W W

(2.18)

với 0,1,t = …

Trong ñó gradient của sai số theo các trọng số ñược xác ñịnh từ các công thức (2.16) và (2.17):

( )

( )

( )

1

0

1 0

1 0

pi

i ii

N

j ijp Nj

i i j iji j

p N

i i j ij ii j

yEy d

W W

W x

y d f W xW

y d f W x x

α α

α

α

=

=

= =

= =

∂∂= −

∂ ∂

∂ ′= − ∂

′= −

∑∑ ∑

∑ ∑

(2.19)

Chú ý là phương pháp này sử dụng công thức ñạo hàm của hàm truyền ñạt nên việc sử dụng hàm truyền ñạt ngưỡng không thuận tiện cho phương pháp này.

Ta lấy ví dụ minh họa ứng dụng công thức trên với trường hợp hàm OR với một mẫu (p=1) 1 2 1 21 OR 1x x d x x= = → = = ; các trọng số ban ñầu

[ ] [ ](0) (0) (0) (0)0 1 2 0,2 0,7 0,5W W W = = − W ; nơ-rôn có hàm truyền logsig.

Khi ñó ( ) ( )(0) (0) (0) (0)0 0 1 1 2 2 1,0 0,731y f W x W x W x f= + + = = .

Sai số ban ñầu ( ) ( )2 2(0) (0)1 1

0,731 1 0,03622 2

E y d= − = − =

Các giá trị gradient:

Page 31: Bai Giang No-ron-All - Trần Hoài Linh

- 31 -

[ ] [ ]( ) ( ) ( )

( ) ( )

[ ] [ ]( ) ( ) ( )

[ ] [ ]( )

(0)

(0)

(0)

(0) (0) (0)(0) (0) (0) (0)1 2 0 00 1 2

0

(0) (0) (0)(0) (0) (0) (0)1 2 1 10 1 2

1

(0) (0)(0)0 1

2

(1 )

0,731 1 0,731 1 0,731 1 0,0529

(1 )

0,0529

Ey d f W W x W x x y d y y x

W

Ey d f W W x W x x y d y y x

W

Ey d f W W x

W

=

=

=

∂′= − + + = − −

= − ⋅ ⋅ − ⋅ = −

∂′= − + + = − −

= −

∂ ′= − +∂

W W

W W

W W

( ) ( )(0) (0) (0) (0)1 2 2 22 (1 )

0,0529

W x x y d y y x+ = − −

= −

(ðây là trường hợp khá ñặc biệt khi cả ba tín hiệu ñầu vào ñều bằng nhau

0 1 2 1x x x= = = , dẫn tới các giá trị gradient cũng bằng nhau cho cả 3 trọng số)

Chọn hệ số học 1η = ta có các trọng số kết nối mới

[ ] [ ](0)

(1) (0)0 0

0

0,2 1 0,0529 0,147E

W WW

η=

∂= − = − + ⋅ = −

∂W W

[ ] [ ](0)

(1) (0)1 1

1

0,7 1 0,0529 0,753E

W WW

η=

∂= − = + ⋅ =

∂W W

[ ] [ ](0)

(1) (0)2 2

2

0,5 1 0,0529 0,553E

W WW

η=

∂= − = + ⋅ =

∂W W

Bộ trọng số mới sau bước học thứ nhất:

[ ] [ ](1) (1) (1) (1)0 1 2 0,147 0,753 0,553W W W = = − W

Giá trị ñầu ra mới

( ) ( )(1) (1) (1) (1)0 0 1 1 2 2 1,159 0,761y f W x W x W x f= + + = = .

Sai số ở bước thứ nhất:

( ) ( )2 2(1) (1) (0)1 1

0,761 1 0,0286 0,03622 2

E y d E= − = − = < =

Như vậy ta thấy sau 1 bước ñiều chỉnh giá trị của hàm sai số ñã giảm xuống.

Tiếp tục thực hiện như vậy liên tiếp nhiều bước, ta sẽ có giá trị của sai số ñược ñiều chỉnh giảm dần như trên hình 2.11 là biểu diễn quá trình này cho 100 bước ñầu tiên.

Page 32: Bai Giang No-ron-All - Trần Hoài Linh

- 32 -

Hình 2.11: ð- th giá tr hàm sai s* gi$m trong quá trình h'c

Giá trị sai số sau 100 bước ñạt (100) 0,00947E = . Trên ñồ thị 2.12 là sự thay ñổi của 3 trọng số ghép nối của nơ-rôn trong quá trình học trên.

Hình 2.12: KFt qu$ 100 bSLc ñi/u chRnh thích nghi giá tr c�a ba tr'ng s* ghép n*i trong quá trình h'c

Page 33: Bai Giang No-ron-All - Trần Hoài Linh

- 33 -

Trên ñây là một số kết quả cho trường hợp học 1 mẫu. Tuy nhiên ña số các trường hợp chúng ta gặp trong thực tế lại có số mẫu nhiều hơn. Tiếp theo ta xét trường hợp học với 3 mẫu ñồng thời:

x1 x2 d

0 0 0

0 1 1

1 1 1

Sử dụng các công thức học (2.18) với p=3 và với các giá trị khởi tạo bạn ñầu tương tự như trên, ta thu ñược kết quả học 3 mẫu như sau. ðường sai số tổng cộng ñược thể hiện trên hình 2.13.

.

Hình 2.13: KFt qu$ h'c 100 bSLc vLi ba mbu h'c c�a n#-rôn

Các ñầu ra của nơ-rôn cho 3 mẫu trước khi học là:

1 2 30,45; 0,574; 0,731y y y= = = ứng với sai số theo công thức (2.17) là

( ) ( ) ( ) ( )3

2 2 2 2

1

1 10,45 0 0,574 1 0,731 1 0,228

2 2i ii

E y d=

= − = − + − + − = ∑

Page 34: Bai Giang No-ron-All - Trần Hoài Linh

- 34 -

Các ñầu ra của nơ-rôn sau khi học 100 bước là:

1 2 30,456; 0,604; 0,76y y y= = = ứng với sai số theo công thức (2.17) là

( ) ( ) ( ) ( )3

2 2 2 2

1

1 10,456 0 0,604 1 0,76 1 0,211

2 2i ii

E y d=

= − = − + − + − = ∑

c. Thuật toán L -M

Thuật toán thông dụng thứ hai ñể ñiều chỉnh 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ố ghép nối của nơ-rôn, khi ñó ta khai triển hàm E lân cận ñiểm −W các giá trị trọng số hiện tại sẽ ñược:

[ ] ( )31( ) ( ) ( ) ( )

2T TE E O+ = + + +W p W g W p p H W p p (2.20)

với p – khoảng lân cận khai triển, 1 2

( ) , , ,T

n

E E E

W W W

∂ ∂ ∂= ∇ = ∂ ∂ ∂

g W E … 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 theo W với

2 2

1 1 1

2 2

1

( )n

ij

n n n

E E

W W W W

H

E E

W W W W

∂ ∂ ∂ ∂ ∂ ∂ = =

∂ ∂ ∂ ∂ ∂ ∂

H W

⋮ ⋮

(2.21)

Tại ñiểm cực tiểu (ñang cần tìm) của hàm số ta sẽ có ( ) 0=g W và ( )H W xác

ñịnh dương. Xét bước lặp thứ t giá trị các trọng số là ( )tW . Giả thiết cần tìm ñiểm xấp

xỉ tiếp theo ( 1) ( )t t+ = +W W p tiến gần ñiểm cực tiểu của hàm số, khi ñó ta có:

( ) ( )( 1) ( )

0t tE E+∂ ∂ +

= ≈∂ ∂

W W p

p p (2.22)

hay

( ) ( )( ) ( ) ( ) 0t t t+ =g W H W p (2.23)

Từ ñó suy ra công thức xác ñịnh phương biến thiên của véc-tơ trọng số về phía cực tiểu ñịa phương của hàm sai số là:

Page 35: Bai Giang No-ron-All - Trần Hoài Linh

- 35 -

( ) ( )1

( ) ( ) ( )t t t−

= − p H W g W (2.24)

Bổ sung thêm hệ số bước ñể tránh các trường hợp bước dịch chuyển quá lớn, ta có công thức lặp theo phương pháp Levenberg – Marquardt như sau:

( ) ( )1

( 1) ( ) ( ) ( )t t t tη−

+ = − W W H W g W (2.25)

Ghi chú: Về mặt lý thuyết, nếu ta sử dụng các khai triển Taylor bậc cao hơn thì sẽ có ñược tốc ñộ hội tụ nhanh hơn, tuy nhiên các công thức khi ñó sẽ rất phức tạp và cồng kềnh. Vì vậy nói chung ta thường chỉ gặp ñến các công thức khai triển ñạo hàm bậc hai trong các thuật toán học của các mạng nơ-rôn nói chung.

Hình 2.14: KFt qu$ 100 bSLc h'c n#-rôn theo thuZt toán Levenberg – Marquadrt

Trường hợp học với nhiều mẫu, ta xét ví dụ với 3 mẫu như trường hợp trên, Sử dụng các công thức học (2.25) với p=3 và với các giá trị khởi tạo bạn ñầu tương tự như trên, ta thu ñược ñường sai số tổng cộng cho quá trình học 3 mẫu ñược thể hiện trên hình 2.14.

Các ñầu ra của nơ-rôn sau khi học 100 bước là: 1 2 30,15; 0,887; 0,965y y y= = =

ứng với sai số theo công thức (2.17) là

( ) ( ) ( ) ( )3

2 2 2 2

1

1 10,15 0 0,887 1 0,965 1 0,0182

2 2i ii

E y d=

= − = − + − + − = ∑

Page 36: Bai Giang No-ron-All - Trần Hoài Linh

- 36 -

tốt hơn rất nhiều so với kết quả thu ñược từ phương pháp sử dụng ñạo hàm bậc nhất là 0,211.E =

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:

a. Học với hệ số học thích nghi

Như ta có thể thấy trên hình 2.10, hệ số học η có ảnh hưởng lớn tới hiệu quả

của quá trình học. Cách ñơn giản nhất là chọn hệ số học η cố ñịnh. Nhưng ñây lại là

phương pháp kém hiệu quả do quá trình học thường rơi vào cực tiểu ñịa phương hoặc cần số bước lặp lớn ñể ñạt ñược ñộ chính xác cho trước. Nếu hệ số học η quá nhỏ sẽ

dẫn tới số bước lặp lớn, trong khi hệ số học η quá lớn sẽ dẫn tới hiện tượng giao ñộng

xung quanh ñiểm cực tiểu.

ðể khắc phục nhược ñiểm này, ta có thể sử dụng phương pháp hệ số học thích nghi. Phương pháp hệ số học thích nghi thay ñổi hệ số học tuỳ thuộc kết quả hàm sai số

thu ñược. Nếu như tại bước lặp thứ k, sai số ( ) ( 1)k kE E −< có nghĩa là xu hướng học ñang tốt và ta có thể tăng hệ số bước học với mong muốn tăng tốc ñộ hội tụ của quá trình học. Khi ñó hệ số bước học sẽ ñược tăng lên

( 1) ( )k kincη η ε+ = ⋅ (2.26)

với incε là hệ số tăng bước học. Còn nếu như sai số tăng lên ( ( ) ( 1)k kE E −> ) có nghĩa là

hệ số bước học ñang quá lớn, khi ñó thì hệ số bước học sẽ ñược giảm ñi theo liên hệ

( 1) ( )k kdecη η ε+ = ⋅ (2.27)

với decε là hệ số giảm bước học.Trong các chương trình mô phỏng, ta thường sử dụng

các giá trị sau 1,02incε = hoặc 1,05 hay 1,10 và 0,7decε = hoặc 0,6 hay 0.5.

Thử nghiệm lại với nơ-rôn với 1 mẫu học:

Page 37: Bai Giang No-ron-All - Trần Hoài Linh

- 37 -

Hình 2.15: KFt qu$ h'c 100 bSLc bYng thuZt toán h'c vLi h� s* h'c thích nghi

Sau 100 bước học ta có ñáp ứng ñầu ra 0,994y = xấp xỉ giá trị ñích 1d = với

sai số 51,8 10E −= ⋅ nhỏ hơn rất nhiều so với sai số 0,00947E = như trên hình 2.11.

Hình 2.16 biểu diễn sự thay ñổi của hệ số bước học trong quá trình học 100 bước trên.

Page 38: Bai Giang No-ron-All - Trần Hoài Linh

- 38 -

Hình 2.16: S� thay ñgi c�a h� s* h'c trong quá trình h'c vLi h� s* h'c thích nghi

Ta có thể quan sát thấy ñây là trường hợp học ñơn giản nên sai số liên tục giảm, dẫn tới việc hệ số liên tục ñược tăng lên, tốc ñộ học ñẩy nhanh và sai số sau 100 bước rất nhỏ.

ðối với trường hợp học 3 mẫu, hoàn toàn tương tự ta có kết quả học như trên hình 2.17.

Page 39: Bai Giang No-ron-All - Trần Hoài Linh

- 39 -

Hình 2.17: KFt qu$ h'c 100 bSLc vLi b) s* li�u 3 mbu và thuZt toán h'c có h� s* h'c thích nghi

Các ñầu ra của nơ-rôn sau khi học 100 bước là:

1 2 30,0306; 0,976; 0,995y y y= = = ứng với sai số theo công thức (2.17) là 47,678 10E −= ⋅ rất nhỏ so với sai số 0,211E = ñạt ñược bằng thuật toán học gradient

thông thường. Sai số 47,678 10E −= ⋅ còn tốt hơn cả trường hợp sử dụng thuật toán L-

M ( 0,0181E = )

Chú ý: Ta có thể sử dụng phối hợp công thức (2.25) với hệ số học thích nghi ñể thu ñược kết quả tốt hơn nữa, tuy nhiên cần chú ý là các phần mềm tính toán sẽ phức tạp hơn thêm một chút nữa.

b. Phương pháp học với quán tính

Trong phương pháp học với quán tính các trọng số của mạng ñược cập nhật theo công thức sau:

( ) ( ) ( ) ( 1)t t t tW E Wη α −∆ = − ∇ + ∆ (2.28)

với ( ) ( 1) ( )t t t+∆ = −W W W , ( )tα ñược gọi là hệ số quán tính và có giá trị nằm trong khoảng (0,1).

Thành phần ñầu tiên của vế phải chính là gradient tính theo phương pháp bước giảm cực ñại, thành phần thứ hai phụ thuộc vào ñộ cập nhật của bước trước và không

Page 40: Bai Giang No-ron-All - Trần Hoài Linh

- 40 -

phụ thuộc vào gradient của bước hiện tại. Hệ số ( )tα càng lớn thì thành phần quán tính càng ảnh hưởng tới quá trình học.

ðặc biệt ta có thể thấy mức ñộ ảnh hưởng lớn tại các khoảng hàm số có dạng bằng phẳng hoặc tại gần các ñiểm cực tiểu. Tại các khoảng bằng phẳng của của hàm

số, gradient của các bước liên tiếp sẽ có giá trị gần bằng nhau. Với ( ) ( 1)t tW W −∆ ≈ ∆ ta

có ( ) ( )( )1

t tt

W Eηα

∆ ≈ − ∇−

. Với ( )0 1tα< < ta có ( )

11

1 tα>

−, hay nói cách khác việc

sử dụng hệ số quán tính tương ñương với việc sử dụng hệ số học lớn hơn và ñiều này

sẽ giúp cho quá trình học diễn ra nhanh hơn (ví dụ với ( ) 0,9tα = ta có tốc ñộ học ñược

tăng lên 10 lần).

Việc lựa chọn giá trị hệ số quán tính cho một bài toán cụ thể không phải là một nhiệm vụ dễ dàng và thông thường ñược thực hiện bằng việc thử nghiệm với các giá trị khác nhau và chọn trường hợp có kết quả tốt nhất.

Quay lại ví dụ học ba mẫu bằng thuật toán bước giảm cực ñại, khi sử dụng thuật

toán học có quán tính với các hệ số quán tính ( )tα khác nhau, ta có ñược kết quả tổng hợp như trong bảng sau:

Hệ số quán tính Các giá trị ñầu ra Các giá trị ñích Sai số

( ) 0tα = (thuật toán bước giảm cực ñại)

1

2

3

0,456

0,604

0,76

y

y

y

=

=

=

1

2

3

0

1

1

d

d

d

=

=

=

0,211E =

( ) 0,5tα = 1

2

3

0,185

0,863

0,956

y

y

y

=

=

=

1

2

3

0

1

1

d

d

d

=

=

=

0,0275E =

( ) 0,9tα = 1

2

3

0,17

0,873

0,863

y

y

y

=

=

=

1

2

3

0

1

1

d

d

d

=

=

=

0,0319E =

c. Xấp xỉ thuật toán L-M

Nhưng việc tính toán sẽ khá phức tạp do ta phải sử dụng công thức nghịch ñảo ma trận H. ðể khắc phục nhược ñiểm này, thuật toán L-M ñã thay thế H(W) [Hagan94] bằng giá trị gần ñúng G (W) ñược xác ñịnh như sau. Với

( )2

1

1( )

2

M

ii

E e=

= ∑W W (2.29)

Page 41: Bai Giang No-ron-All - Trần Hoài Linh

- 41 -

trong ñó

( ) ( )i i ie y d= −W W (2.30)

và các ký hiệu

( )

( )( )

( )

1

2

M

e

e

e

=

W

We W

W

…, ( )

1 1 1

1 2

2 2 2

1 2

1 2

n

n

n n n

n

e e e

W W W

e e e

W W W

e e e

W W W

∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂

∂ ∂ ∂= ∂ ∂ ∂ ∂ ∂ ∂

J W

⋯ ⋯ ⋯ ⋯

(2.31)

Khi ñó véc-tơ gradient g và ma trận G xấp xỉ ma trận Hessian H ñược xác ñịnh bởi

( ) [ ] ( )( )T=g W J W e W (2.32)

( ) ( ) ( ) ( )T= + G W J W J W R W (2.33)

với R(W) là thành phần khai triển bậc cao của H theo W. Tuy nhiên việc xác ñịnh giá trị chính xác của R khá khó khăn nên thuật toán L -M ñã thay thành phần này bởi thành phần v1 với v thay ñổi trong quá trình học. Cụ thể, tại bước thứ k ta có

( ) ( ) ( )( ) ( ) ( ) ( )T

k k k kv ≈ + G W J W J W 1 (2.34)

Tại các bước học ñầu tiên (k nhỏ), ta có W(k) sai khác lớn so với vị trí cực tiểu do ñó cần chọn v(k) rất lớn (so với giá trị riêng lớn nhất của ma trận

( ) ( )( ) ( )T

k k J W J W ñể có

( )( ) ( )k kv≈G W 1 (2.35)

và phương biến thiên sẽ ñược tính theo phương bước giảm cực ñại

( )( )( )

( )

kk

kv= −

g Wp (2.36)

Khi sai số ñã giảm xuống và W(k) ñã tiến gần tới ñiểm cực tiểu thì hệ số v(k) sẽ

ñược giảm xuống và thành phần ( ) ( )( ) ( )T

k k J W J W sẽ chiếm tỷ trọng ngày càng

lớn trong công thức (2.34). Tính hiệu quả của thuật toán L -M sẽ do việc ñiều chỉnh v(k)

Page 42: Bai Giang No-ron-All - Trần Hoài Linh

- 42 -

quyết ñịnh. Như trên ta có v(k) sẽ bắt ñầu từ một giá trị lớn và giảm dần về 0 khi ñạt gần tới ñiểm cực trị. Có rất nhiều phương án lựa chọn nhưng phương án gốc do L -M ñưa

ra như sau. Ký hiệu ( )kE là giá trị hàm sai số ở bước thứ k, r – hệ số giảm của v. Khi ñó:

– Nếu ( )1kk

vE E v

r− ≤

thì 1k

kv

vr−=

– Nếu ( )1kk

vE E v

r− >

và ( ) ( )1k kE v E v− < thì 1k kv v −=

– Nếu ( )1kk

vE E v

r− >

và ( ) ( )1k kE v E v− > thì ta xác ñịnh n nguyên dương

bé nhất sao cho ( ) ( )1n

k kE v r E v− ≤ và ñặt 1n

k kv v r−= .

Quá trình thay ñổi hệ số v sẽ ñược thực hiện cho ñến khi ta có hệ số chính xác của nghiệm q ñạt giá trị gần bằng 1 với

( ) ( 1)

( ) ( ) ( ) ( ) ( )0,5

k k

T Tk k k k k

E Eq

−−= ∆ + ∆ ∆ W g W G W

(2.37)

Khi 1q ≈ ta có giá trị hàm sai số xấp xỉ bằng khai triển Taylor bậc hai, ñiều ñó

có nghĩa là ta ñã gần ñạt tới ñiểm cực trị và giá trị v có thể ñược bỏ qua ( 0v ≈ ).

2.2.4 Quá trình kiểm tra mạng nơ-rôn và khả năng tổng quát hóa Một trong những nguyên nhân phát triển mạnh về ứng dụng của mạng nơ-rôn là

khả năng tổng quát hóa của mạng nơ-rôn trong những trường hợp mới cần phải xử lý. Sau khi ñã học với một bộ mẫu hữu hạn nào ñó, mạng nơ-rôn ñã ñược tiếp thu một lượng kiến thức nhất ñịnh thông qua việc phát hiện các mối liên hệ nội suy và ngoại suy giữa các mẫu ñã có. Tuy nhiên chất lượng thực sự của một mạng ñược thể hiện thông qua khả năng giải quyết các vấn ñề mới chưa xuất hiện trong quá trình học. Nếu như mạng nơ-rôn có thể ñưa ra ñược ñáp ứng với ñộ chính xác chấp nhận ñược cho các ñầu vào mới thì ta nói rằng mạng có khả năng tổng quát hóa cao. Ta có thể lấy ví dụ

một hàm lô-gíc f() của N biến lô-gíc { }0,1ix ∈ với 1,2, ,i N= … . Tổng cộng có 2N bộ

giá trị ( )1 2, , , Nx x x=x … và 2N ñáp ứng ñầu ra ( )f=d x tương ứng. Nếu ta chỉ sử

dụng 2NK < cặp ( ),x d ñể xây dựng mô hình và khi sử dụng 2N K− cặp còn lại ñể

kiểm tra ñạt kết quả tốt thì ta nói rằng mạng ñã học tốt bài toán hàm lô-gíc N biến này.

Ta lấy lại ví dụ tái tạo hàm lô-gic OR hai ñầu vào. Với hai ñầu vào lô-gic ta có tổng cộng 4 mẫu số liệu:

Page 43: Bai Giang No-ron-All - Trần Hoài Linh

- 43 -

[ ] [ ][ ] [ ][ ] [ ][ ] [ ]

1 11 12 1

2 21 22 2

3 31 32 3

4 41 42 4

, 0,0 0

, 0,1 1

, 1,1 1

, 1,0 1

x x d

x x d

x x d

x x d

= = → =

= = → =

= = → =

= = → =

x

x

x

x

Xét hai trường hợp:

– Nơ-rôn chỉ học với 1 mẫu, sau ñó kiểm tra trên 3 mẫu còn lại

– Nơ-rôn học với 3 mẫu, sau ñó kiểm tra trên 1 mẫu còn lại.

Khi nơ-rôn học trên một mẫu ( )3 3,dx với thuật toán L-M (xem bảng kết quả ở

phần 2.2.2) ta có kết quả ba trọng số ghép nối là:

0 1 23,627 4,527 4,327.W W W= = =

ðối với mẫu số liệu ñã sử dụng ñể học (ñầu vào [ ] [ ]1 2, 1,1x x= =x ) ta có ñầu ra

1y d= = (sai số xấp xỉ 0).

Tuy nhiên khi thử nghiệm với 3 trường hợp mẫu còn lại ta có kết quả như trên bảng sau:

x1 x2 d 0 1 1 2 2u W W x W x= + + ( )y logsig u= e y d= −

0 0 0 3,627 0,974 0,974

0 1 1 7,954 1,000 0

1 0 1 8,154 1,000 0

Có thể nhận thấy do ta chỉ có duy nhất 1 mẫu học với ñầu ra bằng 1 nên trong quá trình học, nơ-rôn ñã ñiều chỉnh các trọng số của mình sao cho tạo ra ñược ñầu ra bằng 1 với mọi ñầu vào. Do ñó trong 3 trường hợp kiểm tra thì trường hợp ñầu tiên

( [ ]0,0=x ) nơ-rôn ñã tác ñộng nhầm.

Khi nơ-rôn ñược học trên ba mẫu: ( ) [ ]( )1 1, 0,0 ,0 ;d =x ( ) [ ]( )2 2, 0,1 ,1 ;d =x

( ) [ ]( )3 3, 1,1 ,1d =x bằng thuật toán L-M và 100 bước lặp, ta có (theo bảng kết quả ở

phần 2.2.2) các trọng số của nơ-rôn như sau:

0 1 212,071 0,39 24,2W W W= − = =

Các trọng số này cho phép nơ-rôn tạo ra các ñầu ra chính xác cho cả ba mẫu ñã

học. Kiểm tra trên mẫu thứ 4 ( [ ] [ ]4 41 42, 1,0x x= = =x x ) là mẫu chưa xuất hiện trong

quá trình học (mẫu mới) ta có ñầu ra tương ứng sẽ là 64 8,452 10 0y −= ⋅ ≈ . Như vậy

mặc dù kết quả học rất tốt nhưng khi ta kiểm tra với dữ liệu mới thì nơ-rôn ñã tác ñộng nhầm. Những trường hợp như vậy sẽ ñược gọi là những trường hợp học nhầm, hay nói

Page 44: Bai Giang No-ron-All - Trần Hoài Linh

- 44 -

cách khác nơ-rôn chưa có ñược khả năng tổng quát hóa toàn bộ các trường hợp từ các mẫu học ñể có thể giải quyết ñược tất cả những mẫu mới.

ðây cũng sẽ là vấn ñề lớn cần phải giải quyết với nơ-rôn và mạng nơ-rôn nói riêng và các hệ thống thông minh nói chung. ðó là ngoài việc tác ñộng chính xác ñối với các trường hợp ñã biết trước thì hệ thống sẽ tác ñộng như thế nào ñối với các trường hợp mới.

Một trong những phương pháp xử lý vấn ñề này sẽ ñược trình bày ở phần cuối của chương 3.

Page 45: Bai Giang No-ron-All - Trần Hoài Linh

- 45 -

Chương 3: Mạng Perceptron MLP và thuật toán học

3.1 Nơ-rôn và mạng nơ-rôn nhân tạo

Chương 2 ñã giới thiệu về một mô hình nơ-rôn ñơn của McCulloch và Pitts. Tuy nhiên nếu chỉ có 1 nơ-rôn ñơn thì khả năng tái tạo các hàm truyền ñạt phi tuyến sẽ rất hạn chế. Ta có thể lấy ví dụ một hàm khá ñơn giản là hàm XOR. Nơ-rôn hai ñầu vào (ba trọng số như trên hình…) không thể “học” ñược trường hợp này, hay nói cách khác ta không thể chọn ñược 3 trọng số 0 1 2, ,W W W sao cho thỏa mãn cả 4 trường hợp mẫu.

Trong trường hợp các hàm quan hệ vào – ra phức tạp, ta cần sử dụng phối hợp nhiều nơ-rôn ñể nâng cao khả năng tái tạo hàm phi tuyến cả hệ thống. Khi có nhiều nơ-rôn ghép nối với nhau, ta sẽ có một mạng nơ-rôn.

Nguyên mẫu thực tế là hệ thần kinh của con người có tới 1011 nơ-rôn và số lượng ghép nối giữa chúng còn lớn hơn gấp nhiều lần (có thể lên tới 1014 ghép nối). Các ghép nối này ñược thực hiện bởi các dây thần kinh mềm với mật ñộ dày ñặc. Cho ñến hiện nay con người cũng chưa thể tái tạo lại ñược một hệ thống tương tự về mặt vật lý, ña số các mạng nơ-rôn ñược nghiên cứu và phát triển trong các ứng dụng ñều có cấu trúc nhỏ hơn rất nhiều về số lượng nơ-rôn cũng như các ghép nối. Hơn nữa cấu trúc nơ-rôn thực tế còn là một hệ thống ñộng với các ghép nối có thể thay ñổi từ nơ-rôn này nối sang nơ-rôn khác. Khả năng này của nơ-rôn cũng rất khó tái tạo lại bằng các thiết bị phần cứng.

Nhờ vào số lượng nơ-rôn khổng lồ và các ghép nối cực kỳ phức tạp nên mặc dù mỗi nơ-rôn cá thể có tần số hoạt ñộng khá thấp (cỡ kHz) so với các máy tính số hiện nay (với tần số GHz hoặc thậm chí THz) nhưng vẫn có những khả năng xử lý thông tin của não bộ con người mà các máy tính số vẫn chưa ñạt ñược. Tuy nhiên ta cần nhấn mạnh lại rằng cho tới ngày hôm nay chúng ta vẫn chưa phát hiện ra ñược nguồn gốc của khả năng tư duy của con người cũng như các nguyên lý hoạt ñộng của não bộ khi thực hiện các khả năng ñó.

Trong các tài liệu tham khảo cũng như trong thực tế ta có thể gặp nhiều ñịnh nghĩa khác nhau về mạng nơ-rôn hay mạng nơ-rôn nhân tạo. Tuy nhiên ñến nay vẫn chưa có một ñịnh nghĩa chính tắc chung cho khái niệm này. Mỗi một nhà nghiên cứu, một tác giả lại có một các hiểu riêng của mình về mạng nơ-rôn nhân tạo. Người ta thường quan niệm, mạng NN chứa nhiều khối (“unit”) tính toán. Mỗi khối có một cấu trúc và nhiệm vụ khác nhau. Chúng ñược nối với nhau bởi các kênh (“connection”) có chứa các giá trị số (thường gọi là trọng số của kênh ñó – connection weight). Các khối hoạt ñộng riêng rẽ trên cơ sở các tín hiệu ñầu vào của mình và tạo ra những tín hiệu ñầu ra tương ứng. Nhiều NN là mô hình toán học mô tả hoạt ñộng của các nơ-rôn sinh học tự nhiên nhưng cũng có nhiều NN lại không phải như vậy. Tuy nhiên do những mô hình nơ-rôn ñầu tiên ñược bắt nguồn từ mục ñích mô tả hoạt ñộng của các nơ-rôn sinh học cũng như ñể mô tả những phương pháp suy nghĩ và xử lý thông tin của con người, hiện nay chúng ta vẫn gọi những mô hình tương tự là các mạng nơ-rôn nhân tạo và các

Page 46: Bai Giang No-ron-All - Trần Hoài Linh

- 46 -

phương pháp trí tuệ nhân tạo trong xử lý tín hiệu. Trong tài liệu này ta sẽ sử dụng một ñịnh nghĩa ñơn giản là mạng nơ-rôn là một tổ chức nhiều nơ-rôn ñược ghép nối với nhau ñể tạo ra ñược các hàm truyền ñạt phức tạp hơn so với từng nơ-rôn ñơn lẻ.

Thông thường các mạng NN có khả năng xử lý tín hiệu song song cao do các khối tính toán hoạt ñộng ñộc lập. Chính vì vậy, nhiều người thường quan niệm rằng mạng NN là một hệ thống có tính song song cao. Tuy nhiên ñịnh nghĩa này không phù hợp với những mạng NN ñơn giản (với 2 - 3 khối xử lý) thường ñược sử dụng. Sau ñây là một số ñịnh nghĩa mạng NN trong các tài liệu:

1. Theo DARPA Neural Network Study: mạng NN là một hệ thống bao gồm nhiều khối xử lý ñơn hoạt ñộng song song. Hoạt ñộng của mạng ñược xác ñịnh bởi cấu trúc của mạng, các trọng số kết nối và các hàm truyền của các khối xử lý ñơn.

2. Theo tác giả Haykin [Haykin94]: Mạng NN là một bộ vi xử lý song song, phân bố có khả năng lưu trữ thông tin và tái sử dụng các thông tin ñược lưu trữ ñó. Mạng mô phỏng hoạt ñộng của bộ não trong hai lĩnh vực:

– Kiến thức ñược mạng thu thập trong một quá trình học.

– Các kết nối giữa những nơ-rôn chứa các trọng số và các trọng số này ñược sử dụng ñể lưu trữ kiến thức thu thập ñược trong quá trình học.

3. Theo tác giả Nigrin [Nigrin93]: Mạng nơ-rôn là một hệ thống bao gồm nhiều phần tử ñơn có cấu trúc nơ-rôn. Mỗi nơ-rôn phần tử hoạt ñộng với các thông tin cục bộ, các nơ-rôn hoạt ñộng ñộc lập với nhau. Vì vậy mạng nơ-rôn không cần ñồng hồ hệ thống.

4. Theo tác giả Zurada [Zurada92]: Mạng nơ-rôn nhân tạo là những hệ thống vật lý dạng mạng có thể thu thập, lưu trữ và sử dụng các kiến thức thực nghiệm.

3.2 Các cấu trúc mạng nơ-rôn

Cấu trúc ghép nối giữa các nơ-rôn thành mạng lưới sẽ ảnh hưởng trực tiếp tới hiệu quả hoạt ñộng cũng như tới các quá trình xác ñịnh và ñiều chỉnh thích nghi các trọng số ghép nối. ðể thuận tiện cho việc mô tả, quản lý cũng như lập trình ta thường chia các nơ-rôn trong một mạng thành các lớp (layer). Một mạng lưới nói riêng và một hệ thống nói chung thường có một lớp các kênh tín hiệu ñầu vào (input layer) và một lớp các kênh tín hiệu ñầu ra (output layer). Tùy theo số lượng các lớp trong một mạng và phương pháp ghép nối giữa các lớp, ta có thể chia các mạng nơ-rôn thành 3 nhóm chính như sau:

3. Mạng truyền thẳng 1 lớp: Mô hình mạng này ñược thể hiện trên hình 3.1. Mạng chỉ bao gồm 2 lớp cơ bản là lớp vào và lớp ra và chỉ có các ghép nối từ các nơ-rôn lớp vào ñến nơ-rôn lớp ra. Do ñó mạng còn ñược gọi là mạng truyền thẳng (truyền xuôi theo chiều từ ñầu vào ñến ñầu ra).

Page 47: Bai Giang No-ron-All - Trần Hoài Linh

- 47 -

Hình 3.1: M>ng truy/n thhng m)t lLp

3. Mạng truyền thẳng nhiều lớp: Trong trường hợp cần có các hàm truyền ñạt với mức ñộ phi tuyến cao ta cần có mạng với cấu trúc phức tạp hơn. Một cách ñơn giản nhất là tăng số lớp xử lý tín hiệu giữa ñầu vào và ñầu ra cũng như tăng số lượng khối tính toán (nơ-rôn) trên các lớp này. Các lớp tính toán nằm giữa lớp vào và lớp ra ñược gọi tên chung là lớp ẩn (hidden layers). Trên hình 3.2 là mạng có nhiều khối tính toán ẩn (giữa các khối ñầu vào và ñầu ra), nhưng trong mạng này tất cả các ghép nối vẫn ñều có chiều thuận theo chiều từ lớp vào cho tới lớp ra nên ta vẫn có ñây là mạng truyền thẳng.

Hình 3.2: Ví d= m>ng truy/n thhng nhi/u lLp

3. Mạng nơ-rôn có phản hồi: mạng có phản hồi sẽ khác so với các mạng truyền thẳng ở ñặc ñiểm là mạng có ít nhất một lớp phản hồi – lớp có kênh ghép nối không thuận theo chiều từ lớp vào cho tới lớp ra. Trên hình 3.3 ta có ví dụ một mạng có phản hồi. Trong các mạch ñồng bộ, ví dụ như trên hình 3.4 ta cũng có thể dùng các khối trễ (ký hiệu là z-1) ñể ñánh dấu kênh phản hồi các tín hiệu sẽ ñược trễ một nhịp ñể cho phép tín hiệu ñầu ra của nơ-rôn ở thời ñiểm trước sẽ ñược truyền ngược về ñể trở thành tín hiệu ñầu vào của nơ-rôn ở thời ñiểm sau. Trên mạng ở hình 3.5 ta thấy có kênh tự phản hồi, có nghĩa là ñầu ra của một nơ-rôn ñược truyền quay về ñầu vào của tất cả các nơ-rôn khác trừ chính nơ-rôn ñó. Với cấu trúc này, mạng nơ-rôn có phản hồi có khả năng mô phỏng các quá trình có nhớ, có trễ tốt hơn các mạng truyền thẳng.

Page 48: Bai Giang No-ron-All - Trần Hoài Linh

- 48 -

Hình 3.3: M>ng có tín hi�u ph$n hôi

Hình 3.4: M>ng có ph$n h-i có trE

Hình 3.5: M>ng có kênh t� ph$n h-i

3.3 Cấu trúc mạng MLP

Với các phần tử nơ-rôn cơ bản như mô hình của McCulloch – Pitts, ta có thể xây dựng mô hình cấu trúc mạng bao gồm nhiều nơ-rôn. Về mặt lý thuyết ta có thể xây dựng một mạng với cách ghép nối tuỳ ý, tuy nhiên trong chương 3 này, ta sẽ trình bày về một trong những mạng nơ-rôn kinh ñiển nhất, với số lượng ứng dụng phổ biến trong các nghiên cứu trong nhiều lĩnh vực. ðó là mạng MLP (MultiLayer Perceptron). Mạng

Page 49: Bai Giang No-ron-All - Trần Hoài Linh

- 49 -

MLP là một mạng truyền thẳng với các khối cơ bản là các nơ-rôn McCulloch – Pitts. Ngoài ra mạng MLP còn có một số yêu cầu sau về cấu trúc của mạng:

• Các nơ-rôn ñược sắp xếp thành các lớp (layer), mạng gồm một lớp gồm các kênh tín hiệu ñầu vào (input layer), một lớp gồm các kênh tín hiệu ñầu ra (output layer), và có thể gồm một số lớp trung gian gọi chung là các lớp ẩn (hidden layers)

• Không có các ghép nối giữa các nơ-rôn trên cùng 1 lớp mà chỉ có các ghép nối giữa các nơ-rôn của hai lớp liên tiếp. Các ghép nối ñều có chiều hướng từ ñầu vào ñến ñầu ra (mạng truyền thẳng)

• Các nơ-rôn trên cùng một lớp sẽ có cùng hàm truyền ñạt.

Trên hình 3.6 là hai mô hình của mạng MLP: mạng có 1 lớp ẩn (3.6a) và mạng có hai lớp ẩn (3.6b).

(a)

Page 50: Bai Giang No-ron-All - Trần Hoài Linh

- 50 -

(b)

Hình 3.6: Mô hình m>ng MLP vLi 1 lLp jn (a) và hai lLp ân (b)

Về mặt lý thuyết ta có thể xây dựng mạng MLP với số lượng lớp ẩn tùy ý, tuy nhiên các nghiên cứu ñã chứng minh ñược rằng ta chỉ cần sử dụng tối ña 2 lớp ẩn là có thể mô hình hóa một hàm phi tuyến với ñộ chính xác tùy chọn [Kolmogorov57]. Vì vậy thực tế ta thường chi găp các mạng có 0, 1 hoặc 2 lớp ẩn. Trong số ñó phần lớn chỉ dùng mạng có một lớp ẩn do mạng không có lớp ẩn thì quá ñơn giản, còn mạng có hai lớp ẩn trở lên thì lại quá phức tap. Vì vậy các vấn ñề ñươợc trình bày tiếp theo dưới ñây sẽ sử dụng mạng có một lớp ẩn, các công thức cho mạng với cấu trúc khác có thể dễ dàng phát triển một cách tương tự.

ðể thuận tiện cho việc theo dõi, trong các công thức của mạng MLP, ta có quy ước về ñánh chỉ số các trọng số ghép nối giữa các phần tử của mạng như trên hình 3.7: nếu phần tử ngọn có chỉ số là i và phần tử gốc có chỉ số là j thì trọng số ghép nối giữa hai phần tử ñó sẽ có chỉ số là ij.

Hình 3.7: Quy SLc ñánh chR s* các tr'ng s* ghép n*i gila các n#-rôn

Cấu trúc một mạng MLP với 1 lớp ẩn và các ký hiệu tín hiệu ñược thể hiện trên hình 3.8, trong ñó mạng có N ñầu vào, M nơ-rôn trên lớp ẩn và K ñầu ra. Như trên hình 3.8, nếu ký hiệu chung các trọng số ghép nối giữa lớp ñầu vào và lớp ẩn là ijW thì ta có

Page 51: Bai Giang No-ron-All - Trần Hoài Linh

- 51 -

1,2, , ; 0,1,2,i M j N= =… … . Nếu ký hiệu các trọng số ghép nối giữa lớp ẩn và lớp ñầu

ra là ijV thì ta có 1,2, , ; 0,1,2,i K j M= =… … . Tổng hợp lại có thể coi các giá trị ijW

tạo thành ( 1)M N× +∈W ℝ là ma trận các trọng số kết nối giữa lớp ñầu vào và lớp ẩn, các

giá trị ijV tạo thành ( 1)K M× +∈V ℝ là ma trận các trọng số kết nối giữa lớp ẩn và lớp

ñầu ra.

Hình 3.8: C4u trúc m>ng MLP vLi m)t lLp vào, môt lLp jn và m)t lLp ra

Mạng MLP với một lớp ẩn có thể ñược ñặc trưng bởi các thông số sau:

– Bộ ba (N, M, K), trong ñó N – số ñầu vào, M – số nơ-rôn thuộc lớp ẩn, K – số nơ-rôn ở lớp ñầu ra

– Các hàm truyền ñạt: f1 của lớp ẩn và f2 của lớp ñầu ra.

– Ma trận trọng số W kết nối giữa lớp ñầu vào và lớp ẩn, ma trận trọng số kết nối V giữa lớp ẩn và lớp ñầu ra.

Khi ñó, với véc-tơ ñầu vào [ ]1 2, , , NNx x x= ∈x … ℝ (ñầu vào phân cực cố ñịnh

0 1x = ) ta có ñầu ra ñược xác ñịnh tuần tự theo chiều lan truyền thuận (forward

propagation) như sau:

0. Tính tổng các kích thích ñầu vào của nơ-rôn ẩn thứ i bằng:

0

M

i j ijj

u x W=

=∑ (3.1)

cho 1,2, ,i M= … .

0. Tính ñầu ra của nơ-rôn ẩn thứ i:

Page 52: Bai Giang No-ron-All - Trần Hoài Linh

- 52 -

( )1i iv f u= (3.2)

cho 1,2, ,i M= … (ñể thuận tiện cho việc biểu diễn các công thức, ta coi ñầu vào phân

cực cho các nơ-rôn lớp ra là 0 1v = cố ñịnh).

0. Tính tổng các kích thích ñầu vào của nơ-rôn ñầu ra thứ i:

0

M

i j ijj

g v V=

=∑ (3.3)

cho 1,2, , .i K= …

0. Và cuối cùng ta có ñầu ra thứ i của mạng sẽ bằng

( )2i iy f g= (3.4)

cho 1,2, , .i K= …

Tổng hợp lại ta có hàm truyền ñạt của mạng MLP là một hàm phi tuyến cho theo công thức phụ thuộc sau:

( ) ( )2 2 2 1 2 10 0 0 0

M M N N

i i j ij j ij k jk ijj j j k

y f g f v V f f u V f f x W V= = = =

= = = =

∑ ∑ ∑ ∑

(3.5)

3.4 Quá trình học của mạng MLP Mạng MLP với cấu trúc như trên hình 3.8 ñược sử dụng rộng rãi trong việc tái

tạo các ánh xạ vào-ra ñược xác ñịnh từ các bộ số liệu mẫu. ðối với mạng MLP, bộ số liệu mẫu là một tập hợp gồm p các cặp mẫu ñược cho ở dạng véc-tơ ñầu vào – véc-tơ

ñầu ra tương ứng { },i ix d với 1,...,i p= , ;N Ki i∈ ∈x dℝ ℝ . Ta cần xác ñịnh một mạng

MLP (bao gồm việc xác ñịnh ñược các thông số cấu trúc và các trọng số ghép nối tương ứng với cấu trúc ñã lựa chọn) sao cho mạng MLP có thể “tái tạo” lại ñược ánh xạ từ ñầu vào tới ñầu ra của các mẫu sô liệu, hay nói cách khác khi cho véc-tơ ix vào

mạng MLP, thì ñáp ứng ñầu ra của mạng sẽ xấp xỉ giá trị ñích ñã có (ở phần tiếp theo ta sẽ xem xét vấn ñề tại sao ta thường chỉ ñặt mục tiêu có ñược giá trị xấp xỉ thay vì ñặt mục tiêu sai số bằng 0):

Page 53: Bai Giang No-ron-All - Trần Hoài Linh

- 53 -

Hình 3.9: M=c tiêu tìm m>ng MLP ñ0 x4p xR ñ*i tSTng

( ): i ii MLP∀ ≈x d (3.6)

hoặc sai số tổng cộng trên các mẫu tiến tới một giá trị cực tiểu nào ñó

( ) 2

1

1min

2

p

i ii

E MLP=

= − →∑ x d (3.7)

với . − là chuẩn khoảng cách. Chuẩn khoảng cách giữa các véc-tơ chủ yếu là sử dụng

công thức Ơ-clít:

2

1

, : ( , ) ( )N

Ni i

i

d x c=

∈ = − = −∑x c x c x cℝ (3.8)

tuy nhiên trong các công trình về mạng nơ-rôn ta cũng có thể gặp các công thức tính khoảng cách khác như:

1. Khoảng cách tích vô hướng:

( , ) 1 1 cos( , )d = − ⋅ = − ⋅ ⋅x c x c x c x c (3.9)

2. Khoảng cách Manhattan:

1

( , )N

i ii

d x c=

= −∑x c (3.10)

3. Khoảng cách Chebyshev:

1

( , ) max i ii N

d x c= →

= −x c (3.11)

0. Khoảng cách Minkowski:

1

( , )N

mm i i

i

d x c=

= −∑x c (3.12)

Khi ñược cho trước một bộ số liệu mẫu, việc xác ñịnh một mạng MLP ñể tái tạo lại bộ số liệu bao gồm xác ñịnh các thông số về cấu trúc (số ñầu vào, ñầu ra, số lớp ẩn,

Page 54: Bai Giang No-ron-All - Trần Hoài Linh

- 54 -

số nơ-rôn trên mỗi lớp ẩn, các hàm truyền ñạt) và các thông số về trọng số ghép nối. Ta có thể xác ñịnh các thông số này theo các bước sau:

– Số kênh ñầu vào N và kênh ñầu ra K ñược xác ñịnh dựa trên bộ số liệu mẫu: N = kích thước của các véc-tơ ix , K = kích thước của các véc-tơ id .

– Số lớp ẩn: Theo ñịnh lý Komogorov ta chỉ cần tối ña là 2 hai lớp ẩn, cụ thể ta sẽ lựa chọn giữa 3 khả năng là 0, 1 và 2. Mạng không có lớp ẩn nào phù hợp với các bài toán ñơn giản, bậc phi tuyến thấp. Trong thực tế ña số các trường hợp sử dụng 1 lớp ẩn. Trường hợp ta không thể tìm ñược các mạng có 1 lớp ẩn ñể ñáp ứng ñược yêu cầu của quá trình học thì ta sẽ sử dụng mạng có 2 lớp ẩn với ñộ phức tạp lớn và bậc phi tuyến cao hơn.

– Các hàm truyền ñạt: Hàm truyền ñạt của lớp ra phụ thuộc chủ yếu vào dải tín hiệu của các giá trị ñích. Tương tự như ñối với một nơ-rôn, nếu ñầu ra ñược giới hạn trong ñoạn [0,1] thì ta nên dùng hàm logsig, nếu ñầu ra giới hạn trong ñoạn [-1,1] thì ta nên dùng hàm tansig, nếu ñầu ra có giá trị vượt ra ngoài ñoạn [-1,1] thì ta có thể sử dụng hàm tuyến tính. ðối với hàm truyền ñạt của lớp vào và các lớp ẩn thì việc lựa chọn hàm tansig là khá phù hợp vì có thể tạo ra các tín hiệu dương và âm trong ñoạn [-1,1] tùy thuộc vào yêu cầu của từng bài toán.

– Các thông số có thể tham gia vào quá trình ñiều chỉnh thích nghi (quá trình học) của mạng MLP ñó là các trọng số ghép nối giữa các lớp của mạng MLP. Trong trường hợp mạng chỉ có một lớp ẩn như trên hình 3.8 ta có hai ma trận trọng số W (giữa lớp vào và lớp ẩn) và V (giữa lớp ẩn và lớp ñầu ra). Tương tự như ñối với một nơ-rôn, ñể ñiều chỉnh thích nghi các trọng số ghép nối ta có thể sử dụng các thuật toán học ñã trình bày, ví dụ như sử dụng thuật toán bước giảm cực ñại.

Các công trình nghiên cứu [Haykin94] ñã chứng minh ñược rằng, với một tập số liệu bất kỳ và một mức sai số bất kỳ cho trước ta có thể xây dựng ñược một mạng nơ-rôn sao cho có thể ñạt ñược sai số cho trước này.

3.5 Thuật toán học bước giảm cực ñại

Quá trình ñiều chỉnh các thông số của mạng ñể thích nghi với bộ số liệu ñược gọi là quá trình học của mạng MLP hay còn ñược gọi là quá trình ta huấn luyện (train) mạng MLP theo một bộ mẫu cho trước.

Trong số các thông số ñã nêu ở trên, nếu các thông số cấu trúc (số ñầu vào, số ñầu ra, số lớp ẩn, các hàm truyền ñạt của mỗi lớp ẩn, số nơ-rôn trên mỗi lớp ẩn) thường ñược chọn bằng thực nhiệm hoặc bằng phương pháp thử với các giá trị rời rạc nhất ñịnh thì các thông số trọng số ghép nối giữa các nơ-rôn có thể ñược ñiều chỉnh thích nghi bằng các thuật toán tối ưu hóa (còn gọi là thuật toán “học”). Các thuật toán “học” của mạng nơ-rôn có các ý tưởng cũng hoàn toàn tương tự như các thuật toán học của nơ-rôn, tuy nhiên cần chú ý rằng mức ñộ phức tạp của công thức là cao hơn do cấu trúc mạng nơ-rôn phức tạp hơn so với từng nơ-rôn ñơn lẻ.

Page 55: Bai Giang No-ron-All - Trần Hoài Linh

- 55 -

Tương tự như ñối với nơ-rôn ñơn lẻ, các thuật toán thông dụng nhất ñể ñiều chỉnh thích nghi các trọng số của một mạng nơ-rôn là các thuật toán sử dụng gradient như thuật toán bước giảm cực ñại, thuật toán Levenberg – Marquardt,…

Khi sử dụng thuật toán bước giảm cực ñại, ta cũng khởi tạo các giá trị trọng số

bằng các giá trị ngẫu nhiên nào ñó: [ ] [ ] [ ] [ ](0) (0); .= =W W V V Sau ñó ta sẽ xây dựng

công thức lặp ñể ñiều chỉnh liên tiếp các giá trị này ñể hàm sai số tiến tới cực trị. Ta có các công thức thay ñổi các trọng số trong hai ma trận W và V ñể xác ñịnh ñiểm cực trị của hàm mục tiêu E như sau

( 1) ( )

( 1) ( )

t t

t t

EW W

W

EV V

V

αβ αβαβ

αβ αβαβ

η

η

+

+

∂ = − ∂

∂ = − ∂

(3.13)

với hàm mục tiêu 2

1

1

2

p

i ii

E=

= −∑ y d (cần chú ý rằng ñối với mạng MLP ta có thể có

ñầu ra là 1 véc-tơ K thành phần chứ không chỉ giới hạn là 1 giá trị như ñối với nơ-rôn ñơn lẻ, do ñó ñộ lệch giữa véc-tơ ñầu ra iy của mạng MLP và véc-tơ giá trị ñích id

ñược tính theo các công thức tính khoảng cách như các công thức từ (3.8) ñến (3.12).

Từ các công thức (3.1) ñến (3.5) và (3.7) ñã nêu trên ta có:

( )1 1

p Kij

ij iji j

yEy d

V Vαβ αβ= =

∂∂= −

∂ ∂∑∑ (3.14)

trong ñó

( ) ( )2 20

Nij ij jk

ij ij ikk

y g Vf g f g v

V V Vαβ αβ αβ=

∂ ∂ ∂′ ′= =

∂ ∂ ∂∑ (3.15)

nhưng 1jkV

Vαβ

∂=

∂ khi j α= và k β= , 0jkV

Vαβ

∂=

∂ trong các trường hợp còn lại. Từ ñó ta

( ) ( )21

p

i i i ii

Ey d f g v

V α α α βαβ =

∂′= −

∂ ∑ (3.16)

Một cách hoàn toàn tương tự ta có

( ) ( ) ( )2 11 1

p K

ij ij ij j i ii j

Ey d f g V f u x

W α α βαβ = =

∂ ′ ′= −∂ ∑∑ (3.17)

Page 56: Bai Giang No-ron-All - Trần Hoài Linh

- 56 -

Với các công thức gradient này, ta có thể tiến hành ñiều chỉnh thích nghi các giá trị của hai ma trận W và V ñể tìm cực tiểu của hàm sai số.

3.6 Thuật toán Levenberg – Marquardt

Ta cũng có thể xây dựng các công thức cho phương pháp Levenberg – Marquardt cho mạng MLP. Tương tự như các công thức ñã xây dựng cho nơ-rôn (từ (2.20) ñến (2.25)) ta có các công thức ñể ñiều chỉnh thích nghi các trọng số của mạng MLP theo thuật toán Levenberg – Marquardt

( ) ( )1

( 1) ( ) ( ) ( )t t t tη−

+ = − W W H W g W (3.18)

( ) ( )1

( 1) ( ) ( ) ( )t t t tη−

+ = − V V H V g V (3.19)

trong ñó:

– ( ) ( ),t t −W V các ma trận chứa các trọng số ghép nối ijW và ijV tại bước lặp

thứ (t) trong quá trình ñiều chỉnh thích nghi,

– ( )g W và ( )g V - véc-tơ gradient của hàm sai số theo từng trọng số trong

các ma trận,

– ( )H W và ( )H V - ma trận gradient bậc hai của hàm sai số theo từng cặp

trọng số từ các ma trận W và V tương ứng.

3.7 Thuật toán học của Hebb Ngoài các thuật toán sử dụng gradient như ñã trình bày ở trên, nhiều các thuật

toán học khác cho mạng MLP cũng ñã ñược ñề xuất và nghiên cứu. Có thể kể tới quy tắc học của Hebb là quy tắc học khá kinh ñiển và nổi tiếng. Quy tắc này ñược Hebb ñề xuất năm 1949 [Hebb49] trong cuốn sách The Organization of Behavior. Quy tắc trên ñược ñưa ra bằng ngôn ngữ của thần kinh - sinh vật học. “Khi một ñầu ra của nơ-rôn A ở ñủ gần ñể kích thích ñầu vào của nơ-rôn B và nơ-rôn A liên tục tạo ra các kích thích ở ñầu ra của mình thì sẽ xuất hiện một quá trình phát triển hoặc metabolism trong nơ-rôn A và thậm chí cả nơ-rôn B ñể tăng mức ñộ ảnh hưởng của A lên B”.

Ta có thể chuyển ñổi nó sang ngôn ngữ kỹ thuật như sau:

0. Nếu như hai nơ-rôn của hai ñầu của một ghép nối ñược kích thích ñồng thời thì hệ số khuếch ñại của ghép nối ñó sẽ ñược tăng lên.

0. Nếu như hai nơ-rôn của hai ñầu của một ghép nối ñược không ñược kích thích ñồng thời thì hệ số khuếch ñại của ghép nối ñó sẽ không ñược tăng lên.

Một ghép nối ñược ñiều chỉnh theo quy tắc trên ñược gọi là ghép nối kiểu Hebb. Một cách chính xác hơn, ta gọi một ghép nối kiểu Hebb là ghép nối biến thiên theo thời

Page 57: Bai Giang No-ron-All - Trần Hoài Linh

- 57 -

gian, mang tính cục bộ cao và có một cơ chế tương tác mạnh ñể tăng cường hiệu quả của ghép nối (ñược tính bằng mức ñộ tương quan giữa hai ñầu của ghép nối [Brown90]). Cụ thể các tính chất trên ñược thể hiện thông qua:

0. Cơ chế biến thiên theo thời gian: cơ chế này ñược thể hiện qua thực tế là quá trình ñiều chỉnh trọng số ghép nối phụ thuộc vào thời gian xuất hiện chính xác của các tín hiệu ở hai ñầu của ghép nối.

0. Cơ chế cục bộ: việc ñiều chỉnh các ghép nối chỉ phụ thuộc vào tín hiệu của hai ñầu ghép nối ñó, không phụ thuộc vào các thông số khác trong mạng.

0. Cơ chế tương tác: ðể có thể ñưa ra quyết ñịnh ñiều chỉnh trọng số ghép nối ta phải có thông tin của cả hai ñầu của ghép nối.

Quy tắc gốc của Hebb không ñề cập tới trường hợp giảm hệ số khuếch ñại của ghép nối. Ta có thể tổng quát hoá quy tắc này bằng cách thêm vào trường hợp giảm hệ số khuếch ñại. Theo ñó, ghép nối có hai ñầu tín hiệu tương tác mạnh sẽ ñược tăng hệ số khuếch ñại, nhưng nếu hai ñầu tín hiệu không phụ thuộc (hoặc phụ thuộc yếu) thì hệ số khuếch ñại sẽ bị suy giảm. (Một số công trình nghiên cứu có ñề cập tới mô hình phản – Hebb, theo ñó khi hai ñầu tương tác mạnh thì hệ số khuếch ñại của ghép nối sẽ bị giảm, còn khi hai ñầu tương tác yếu thì hệ số khuếch ñại lại ñược tăng lên).

Ta xét mô hình ghép nối với hệ số khuếch ñại (trọng số) là Wkj của nơ-rôn k với tín hiệu ñầu vào là xj và ñầu ra là yk. Lượng ñiều chỉnh trọng số Wkj tại thời ñiểm (t) ñược cho dưới dạng

( )( ) ( ), ( )kj k jW t F y t x t∆ = (3.20)

trong ñó: F() – hàm số phụ thuộc vào cả hai tín hiệu ở hai ñầu của trọng số. Ta có thể sử dụng nhiều dạng hàm F() khác nhau, trong ñó có hai dạng hay gặp nhất là:

• Dạng theo giả thuyết của Hebb:

( ) ( ) ( )kj k jW t y t x tη∆ = ⋅ ⋅ (3.21)

trong ñó η - hệ số (dương) xác ñịnh tốc ñộ học. Công thức này thể hiện rất rõ quy tắc

của Hebb. Ta cũng có thể nhận thấy rằng nếu ta liên tục tác ñộng vào ( )jx t thì hệ số

khuếch ñại sẽ ñược cập nhật tăng liên tục và nhanh chóng dẫn tới trạng thái bão hòa.

• Dạng theo giả thuyết về covariance: ðể hạn chế hiện tượng bão hòa do công thức (3.21) gây nên, Sejnowski ñã ñưa ra công thức [Sejnowski77a,b] sử dụng giả thuyết về covariance. Gọi x và y là các giá trị trung bình (lấy theo thời

gian) của các tín hiệu ( )jx t và ( )ky t . Theo công thức của covariance ta có

lượng ñiều chỉnh trọng số sẽ ñược xác ñịnh bởi liên hệ:

( ) ( )kj j kw x x y yη∆ = − − (3.22)

Page 58: Bai Giang No-ron-All - Trần Hoài Linh

- 58 -

trong ñó η - hệ số tốc ñộ học. Công thức trên cho phép trọng số hội tụ về giá trị không

kỳ dị ( ) ( ), ,j kx y x y→ . Cũng từ (3.22) ta có:

• Trọng số ghép nối tăng khi có kích thích ñủ lớn ở cả hai ñầu (có nghĩa là

jx x> và ky y> ) hoặc ñều quá nhỏ (có nghĩa là jx x< và ky y< )

• Trọng số ghép nối giảm khi có tín hiệu kích thích ñủ mạnh ( jx x> ) nhưng

ñáp ứng quá yếu ( ky y< ) hoặc ngược lại: kích thích yếu ( jx x< ) nhưng ñáp

ứng mạnh ( ky y> ).

3.8. Vấn ñề mạng học quá khớp (overfitting) và mạng học

không ñủ (underfitting)

Các công trình nghiên cứu [Haykin94] ñã chứng minh ñược rằng, với một tập số liệu bất kỳ và một mức sai số bất kỳ cho trước ta có thể xây dựng ñược một mạng nơ-rôn sao cho có thể ñạt ñược sai số cho trước này. Tuy nhiên trong những trường hợp như vậy các mạng nơ-rôn tìm ñược thường có cấu trúc rất ñồ sộ và nếu như ta ñưa vào mạng một tín hiệu ñầu vào mới (chưa xuất hiện trong tập số liệu học) thì xác suất ñể có ñáp ứng ñầu ra tốt của mạng là rất thấp. Những mạng nơ-rôn hoạt ñộng tốt trên các mẫu ñã ñược sử dụng ñể xây dựng mô hình nhưng hoạt ñộng không hiệu quả trên các mẫu mới ñược gọi là các mạng nơ-rôn có khả năng tổng quát hóa kiến thức thấp. Hiện tượng này cũng tương tự như các trường hợp ta có một học sinh có ñiểm quá trình học rất tốt (xử lý ñược các vấn ñề ñặt ra khi học) nhưng có ñiểm thi thấp (không làm ñược tốt các dạng bài tập khác với những mẫu bài ñã cho).

Từ ñây ta ñặt ra vấn ñề là bằng cách nào ta có thể tìm ñược một mạng nơ-rôn vừa ñáp ứng ñược các yêu cầu ñã ñược biết và ñặt ra trước ñồng thời có xác suất thành công cao khi xử lý những yêu cầu ñầu vào mới. Ta có thể kiểm nghiệm việc ñạt ñược kết quả này bằng cách sử dụng hai tập số liệu thay vì chỉ sử dụng một tập số liệu. Một tập ñể sử dụng trong quá trình xây dựng mô hình, tập số liệu này sẽ ñược gọi là tập số

liệu học (learning data set), ký hiệu là { },i ix d với 1,2, ,i p= … . Tập số liệu còn lại sẽ

ñược sử dụng trong quá trình kiểm tra (testing data set), ký hiệu là { },kt kti ix d với

1,2, ,i q= … với q – số lượng mẫu kiểm tra. Mạng nơ-rôn sau khi ñã ñược xây dựng

trên tập số liệu học sẽ ñược kiểm tra với tập số liệu thứ hai và sẽ có sai số kiểm tra

( )2

1

1

2

qkt kt

kt i ii

E=

= −∑ y x d (3.23)

Mạng sẽ ñược chấp nhận là tốt nếu như sai số trên tập kiểm tra ñủ nhỏ. Một trong những ñiều kiện quan trọng ñể ñảm bảo tính khách quan là tập số liệu kiểm tra

Page 59: Bai Giang No-ron-All - Trần Hoài Linh

- 59 -

(testing set) không ñược chứa các số liệu ñã xuất hiện trong tập số liệu học, hay

1, , ; 1, , : kti ji p j q∀ = = ≠x x… … .

Trong một số thuật toán khác, phương pháp sử dụng thêm một tập hợp số liệu nữa ñược gọi là tập kiểm chứng (validation test) ñã ñược ñề xuất. Ta cần chú ý rằng các phương pháp học của mạng nơ-rôn chỉ cho phép chúng ta có thể tăng ñược xác suất thành công khi gặp các tín hiệu mới chứ không ñảm bảo thành công. ðiều này cũng ñã từng là một trong những lý do tranh cãi lớn nhất trong lịch sử phát triển của các giải pháp sử dụng mạng nơ-rôn. Ngày nay với số lượng rất lớn các giải pháp thực tế hiệu quả mạng nơ-rôn ñã có ñược chỗ ñứng vững chắc của mình chỉ với “xác suất hoạt ñộng tốt” ñủ lớn. Quá trình xây dựng một mạng nơ-rôn cho một bộ số liệu có thể ñược tóm tắt theo những bước như sau:

1. Chia các mẫu số liệu ñang có thành hai tập hợp: tập số liệu học và tập số liệu kiểm tra.

2. Sử dụng các thuật toán học ñể xây dựng mạng tốt cho tập số liệu học.

3. Kiểm tra mạng kết quả bước 2 với tập số liệu kiểm tra. Nếu ñạt chất lượng thì kết thúc, nếu không thì thực hiện bước 4.

4. Nếu có thể xây dựng ñược một mạng mới thì quay lại bước 2 ñể huấn luyện mạng mới với hai tập số liệu như trước, nếu không thì cần quay lại bước 1 ñể chia lại hai tập số liệu này.

ðể chia mẫu số liệu thành các bộ số liệu học và kiểm tra, ta có thể dùng một trong những phương pháp thông dụng nhất là phương pháp chia ngẫu nhiên và số lượng mẫu trong mỗi tập là xấp xỉ nhau. Tuy nhiên trong nhiều trường hợp việc chia ngẫu nhiên không ñưa ra ñược kết quả tốt. Khi ñó ta có thể sử dụng những phương pháp phức tạp hơn như phương pháp cross-validation [Larson31], phương pháp bootstrapping, [Breiman96],…

Trong quá trình lựa chọn cấu trúc “tốt” cho mạng nơ-rôn, ta cần giải quyết hai vấn ñề chính:

1. Khi ta xây dựng hàm ánh xạ phi tuyến giữa không gian ñầu vào và không gian ñầu ra, ñể có thể ñạt kết quả tốt thì hàm ánh xạ phải “bao trùm tốt” tất cả các “khu vực” của không gian ñầu vào ñể có thể biết ñược cần phải ánh xạ từng “khu vực” như thế nào. Việc xử lý như vậy ñòi hỏi cấu trúc của mạng cần phải ñủ lớn, ít nhất bậc phi tuyến của mạng cũng phải tương ñương với bậc phi tuyến của ánh xạ cần tìm. Tuy nhiên ñây là những ý tưởng chỉ có tính chất ñịnh hướng vì khi ta ñang xác ñịnh hàm ánh xạ thì chưa thể biết rõ ñộ phức tạp và bậc phi tuyến của ánh xạ này. Nếu như ta sử dụng mạng quá ñơn giản thì mạng sẽ không có khả năng mô tả ñược quan hệ phi tuyến bậc cao hơn, còn nếu như ta sử dụng mạng quá phức tạp thì dễ dẫn tới trường hợp học quá khớp và khả năng tổng quát kém.

2. Vấn ñề hết sức quan trọng là khả năng tổng quát hóa: mạng nơ-rôn sẽ hoạt ñộng như thế nào khi gặp các trường hợp số liệu mới, chưa xuất hiện trong

BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
BLUEMOON
Highlight
Page 60: Bai Giang No-ron-All - Trần Hoài Linh

- 60 -

quá trình học? Mạng nơ-rôn nói riêng và các mô hình phi tuyến nói chung ñều phải ñối mặt với hai hiện tượng: học quá khớp (overfitting) và học quá ít (underfitting). Một mạng quá ñơn giản không có khả năng xử lý hết ñộ phức tạp của số liệu từ ñó sẽ dẫn tới trường hợp học quá ít. Một mạng quá phức tạp có thể học rất chính xác các mẫu ñã có ñến mức không thể giải quyết ñược các mẫu mới (hiện tượng tương tự như học tủ, học lệch) sẽ dẫn tới trường hợp học quá khớp. Học quá khớp là hiện tượng khá nguy hiểm do có thể dễ dàng dẫn tới những trường hợp ñưa ra ñáp ứng khác lệch rất nhiều so với giá trị chính xác. ðể có thể tránh ñược học quá khớp ta có thể sử dụng rất nhiều số liệu mẫu. Một số nghiên cứu ñã ước lượng rằng nếu số mẫu ta có lớn hơn khoảng 30 lần số tham số chúng ta cần ñiều chỉnh nếu như số liệu có chứa nhiễu, nếu số liệu không chứa nhiễu thì ta cũng cần khoảng 5 lần. Tuy nhiên nếu như ta ñã có sẵn trước một bộ số liệu mẫu thì ta không thể giảm số lượng tham số cần ñiều chỉnh ñi ñược.

Một trong những yếu tố ảnh hưởng mạnh nhất tới mức ñộ phi tuyến của mạng nơ-rôn là số nơ-rôn ẩn. Số nơ-rôn ẩn tối ưu phụ thuộc vào rất nhiều yếu tố như:

• Số ñầu vào và ñầu ra của mạng nơ-rôn

• Số cặp mẫu trong tập số liệu học

• Lượng nhiễu có trong tín hiệu ñầu vào

• ðộ phức tạp của hàm ánh xạ ñang cần tìm

• Cấu trúc của mạng nơ-rôn ñang xây dựng

• Dạng của hàm truyền ñạt của các nơ-rôn trong mạng

• Thuật toán học

• Các phương pháp hỗ trợ quá trình học trong việc “làm trơn” hàm ánh xạ.

Ta vẫn chưa có một quy tắc thống nhất trong việc xác ñịnh cấu trúc tối ưu. Cách phổ biến nhất ñó là thử nghiệm quá trình học với nhiều mạng khác nhau và thông qua việc khảo sát các sai số thu ñược ta có thể lựa chọn ñược mạng có sai số bé nhất.

Một số nghiên cứu ñã ñề xuất việc lựa chọn số nơ-rôn ẩn như:

• Số nơ-rôn ẩn giới hạn trong khoảng số ñầu vào và số ñầu ra của mạng [Blum92].

• Mạng nơ-rôn với một lớp ẩn chỉ cần sử dụng không quá 2N số nơ-rôn ẩn, trong ñó N – số ñầu vào của mạng nơ-rôn [Swingler96].

• Số nơ-rôn lớp ẩn sẽ tương ñương với số thành phần chính (PCA) ñược sử dụng ñể tái tạo lại từ 70 ñến 90% mức ñộ biến thiên của tập số liệu ñầu vào [Boger97].

Những quy tắc trên ñây hoàn toàn chỉ mang tính ñịnh hướng và tham khảo do chúng chưa xét tới các yếu tố quan trọng khác như: số cặp mẫu trong tập số liệu học, lượng nhiễu có trong tín hiệu ñầu vào, ñộ phức tạp của hàm ánh xạ ñang cần tìm,... Ta cũng có thể chỉ ra một loạt phản ví dụ trong ñó các quy tắc này không hiệu quả:

BLUEMOON
Highlight
Page 61: Bai Giang No-ron-All - Trần Hoài Linh

- 61 -

Ví dụ 1: Ta tìm ánh xạ ( ) ( )1 2 1 2: , , , , , ,N Kf x x x d d d= → =x d… … với các ñầu

vào ix là các biến lô-gíc (0,1) và ñầu ra id là các hàm lô-gíc của các biến ñầu vào. Khi

ñó mỗi một ñầu ra có thể ñược tạo ra từ một nơ-rôn với hàm truyền lô-gíc tương ứng. ðiều ñó có nghĩa rằng ta không cần bất cứ nơ-rôn ẩn nào cả.

Ví dụ 2: Bài toán kinh ñiển về hai vòng xoáy, còn ñược gọi là bài toán two-spiral với phân bố hai tập số liệu lồng xoắn vào nhau như trên hình 3.9. Các số liệu ñược tạo ra theo công thức sau:

96 số liệu của nhóm thứ nhất (mã là nhóm ( ) 1id = ): với 1,2, ,96i = … :

( )

( ) ( )1 26,5 104

; ; cos ; sin16 104i i i i i i i i

ii r x r x r

πϕ ϕ ϕ

−= = = ⋅ = ⋅ (3.24)

96 số liệu của nhóm thứ hai (mã là nhóm ( ) 0id = ): với 1,2, ,96i = … :

( )

( ) ( )1 26,5 104

; ; cos ; sin16 104i i i i i i i i

ii r x r x r

πϕ ϕ ϕ

−= = = − ⋅ = − ⋅ (3.25)

Hình 3.9: Các mbu s* li�u trong bài toán hai vòng xoáy

Page 62: Bai Giang No-ron-All - Trần Hoài Linh

- 62 -

Mạng nơ-rôn mô phỏng ánh xạ ( ) ( ): i if →x d có hai ñầu vào và một ñầu ra

nhưng cần khoảng 50 nơ-rôn ẩn với hàm truyền tanh(), nếu sử dụng hàm truyền khác thì có thể cần tới gần 100 nơ-rôn ẩn khác ñể có thể ñạt ñược sai số tốt.

Ví dụ 3: Mạng nơ-rôn mô phỏng ánh xạ : sin( )f x d x→ = có một ñầu vào và

một ñầu ra. Với [ ]0,100x∈ thì ta cần sử dụng khoảng 25 nơ-rôn ẩn với hàm truyền

tanh() ñể tái tạo lại hàm ánh xạ. Tuy nhiên nếu ta sử dụng nơ-rôn có hàm truyền sin() thì chỉ cần duy nhất 1 nơ-rôn mà thôi.

Từ các ví dụ trên ñây ta thấy rằng việc lựa chọn hàm truyền ñạt có ảnh hưởng lớn tới chất lượng hoạt ñộng của mạng MLP. Tuy nhiên, với một mạng nơ-rôn có dạng hàm truyền ñạt ñã chọn, ta có thể sử dụng phương pháp trình bày dưới ñây ñể hỗ trợ ước lượng số nơ-rôn ẩn trong mạng.

Hình 3.10. ðXc tính miêu t$ s� ph= thu)c trung bình c�a Elearn và Etest vào ñ) ph^c t>p c�a

mô hình

ðể có thể ước lượng số nơ-rôn ẩn trong mạng nơ-rôn, ta thường sử dụng các ñồ thị mang tính ñịnh hướng như trên hình 3.10. ðồ thị này biểu diễn sự phụ thuộc của hai sai số vào số nơ-rôn ẩn. ðồ thị có tính chất ñịnh hướng do ñối với mỗi bộ số liệu khác nhau ta có thể có tốc ñộ biến thiên, vị trí tương ñối giữa hai ñường sai số sẽ khác nhau. Tuy nhiên dạng biến thiên của sai số học sẽ có xu hướng giảm dần, còn dạng biến thiên của sai số kiểm tra sẽ có xu hướng giảm trước – tăng sau. ðồ thị 3.10 cho thấy trong quá trình tìm kiếm mô hình cho một ñối tượng, khi ta tăng số lượng nơ-rôn ẩn ñược sử dụng trong mạng MLP thì sai số trên tập số liệu mẫu học (những mẫu ñã biết trước) có thể ñược giảm xuống và có thể giảm về tới 0 (nếu các mẫu học không mâu thuẫn). Tuy nhiên khi kiểm tra mô hình với các số liệu mới (chưa xuất hiện trong quá trình học) thì sai số kiểm tra sẽ giảm trong quá trình ñầu nhưng lại tăng ở quá trình sau. Do ñó có thể chia ñồ thị thành 3 ñoạn như trên hình 3.10.

Page 63: Bai Giang No-ron-All - Trần Hoài Linh

- 63 -

Hình 3.11. Ba vùng vLi ch4t lSTng h'c và ki0m tra khác nhau

1. ðoạn Under Learning: Ta sử dụng mạng quá ñơn giản (quá ít nơ-rôn) nên không thể tái tạo ñược quan hệ phức tạp của ñối tượng, khi ñó cả sai số học và sai số kiểm tra sẽ ñều có giá trị lớn.

2. ðoạn Optimal Learning: Ta sử dụng mạng vừa ñủ, sai số học và sai số kiểm tra ở mức trung bình, ñặc biệt là sai số kiểm tra sẽ có giá trị tương ñối ổn ñịnh.

3. ðoạn Over Learning: Ta sử dụng mạng quá phức tạp, sai số học rất nhỏ nhưng sai số kiểm tra lại lớn hơn sai số ñã ñạt ñược trong ñoạn 2.

Trên hình 3.11 là minh họa của việc sử dụng các mô hình khác nhau ñể tái tạo lại một hàm phi tuyến cho trước bằng bộ số liệu học thể hiện bằng các ñiểm ‘+’. Bộ số liệu kiểm tra là toàn bộ các ñiểm còn lại trong toàn miền [-1,1].

Hình 3.11a là kết quả của việc sử dụng mô hình thuộc ñoạn 1. Do khả năng tái tạo hàm phi tuyến có hạn nên hàm truyền ñạt của mô hình “trơn” hơn nhiều so với các ñiểm mẫu, do ñó các sai số ñều lớn.

ðối với hình 3.11b, mô hình có ñộ phức tạp phù hợp với các ñiểm số liệu nên hàm truyền ñạt ñã ñược tái tạo tương ñối chính xác, ñặc biệt là về dáng ñiệu của hàm.

Trên hình 3.11c là kết quả của việc sử dụng một mô hình quá phức tạp cho ñối tượng. ðường ñặc tính ñi qua các ñiểm ñã cho trước với ñộ chính xác rất cao, tuy nhiên dáng ñiệu của hàm truyền hoàn toàn không phản ánh phân bố ñặc trưng của các ñiểm ñầu vào. Khi ñó sai số học rất nhỏ, nhưng sai số kiểm tra lại lớn.

Page 64: Bai Giang No-ron-All - Trần Hoài Linh

- 64 -

(a)

(b)

Page 65: Bai Giang No-ron-All - Trần Hoài Linh

- 65 -

(c)

Hình 3.12: Ví d= minh h'a ch4t lSTng tái t>o hàm s* d�a trên m)t s* ñi0m mbu cho trSLc

3.9 Ví dụ minh họa ứng dụng ðể minh họa khả năng tái tạo các ánh xạ (hàm truyền ñạt), ta sẽ kiểm nghiệm

trên một ví dụ ñơn giản. Ta có tập học là 10 ñiểm ño của một tín hiệu hình tam giác (ñường ñậm nét) với biên ñộ giảm dần. Trên hình 3.13 ñó là các ñiểm hình sao (*). Tập trên sẽ ñược ñưa vào một mạng MLP với một lớp ẩn gồm có 4 nơ-rôn ẩn. Do tập ñầu vào và tập ñầu ra ñều chỉ có một thành phần, nên mạng MLP sẽ có 1 ñầu vào và một ñầu ra. Phối hợp với 4 nơ-rôn ẩn ta có mạng với cấu trúc 1-4-1. Trước quá trình học, mạng MLP có các trọng số ghép nối với giá trị ngẫu nhiên, do ñó, với tập ñầu vào như trên, tập ñầu ra tương ứng sai lệch rất lớn so với ñích ban ñầu như ta thấy trên hình 3.13 (ñầu ra của mạng là các ñiểm hình tròn tại các hoành ñộ lựa chọn nói trên, và ñường nét nhạt là hàm truyền của mạng).

Page 66: Bai Giang No-ron-All - Trần Hoài Linh

- 66 -

Hình 3.13. Các giá tr mbu (*) và các giá tr ñ?u ra c�a m>ng trSLc khi hu4n luy�n (o)

Mạng MLP ñã ñược huấn luyện với thuật toán bước giảm cực ñại với 200 chu kỳ. ðồ thị 3.14 cho thấy quá trình giảm của hàm mục tiêu E trong quá trình học này. Kết thúc quá trình học, E ñạt giá trị bằng 0,018 nhỏ hơn rất nhiều so với ban ñầu là 5,49.

Hình 3.14: Quá trình gi$m sai s* trong 200 chu kỳ h'c ñ?u tiên

Page 67: Bai Giang No-ron-All - Trần Hoài Linh

- 67 -

Tương ứng với kết quả học này trên ñồ thị 3.15 ta thấy các ñầu ra của mạng MLP ñã gần trùng khít với các giá trị ñích ban ñầu. Không chỉ tại những ñiểm này mà hàm truyền của mạng cũng gần với hàm tín hiệu hình tam giác ban ñầu. Ta có thể kết luận là thuật toán học ñược sử dụng ñã hoạt ñộng hiệu quả và mạng MLP ñã có khả năng tái tạo hàm truyền ñạt mong muốn với ñộ chính xác cao (tuy chưa ñạt ñược ñộ chính xác 100%).

Hình 3.15: Các giá tr mbu (*) và các giá tr ñ?u ra c�a m>ng sau khi hu4n luy�n (o)

Page 68: Bai Giang No-ron-All - Trần Hoài Linh

- 68 -

Chương 4: Mạng có phản hồi Trong nhiều bài toán kỹ thuật, ñặc biệt là các bài toán ñiều khiển, ta có hệ thống

sử dụng tín hiệu phản hồi. Khi ñó cấu trúc mạng MLP kinh ñiển tỏ ra không thích hợp vì ñó là một cấu trúc truyền thẳng, các tín hiệu và ñáp ứng ñầu ra chỉ phủ thuộc vào tín hiệu ñầu vào hiện tại chứ không phụ thuộc vào các tín hiệu ñã xuất hiện trong những thời ñiểm trước ñó. Trong những trường hợp như vậy, ta cần sử dụng các mạng có hỗ trợ các kênh phản hồi hay còn gọi là các mạng có nhớ. Khi ñó các tín hiệu ñã xuất hiện ở các chu kỳ xử lý mẫu trước ñó có thể xuất hiện ở các chu kỳ xử lý mẫu tiếp theo.

Chương này sẽ giới thiệu về một số mạng có phản hồi cơ bản là mạng RMLP (Recurrent Multi Layer Perceptron), Elman, RTRN (RealTime Recurrent Network), mạng Hopfield, mạng Hamming và mạng BAM (Bidirectional Associated Memory). ðối với mỗi loại mạng ta sẽ xem xét về cấu trúc của mạng, các thuật toán học cho mạng ñó và một số ví dụ minh họa kèm theo.

4.1. Mạng RMLP

4.1.1 Cấu trúc của mạng RMLP

Hình 4.1: C4u trúc m>ng RMLP (ví d= cho 1 ñ?u vào và 1 ñ?u ra)

Page 69: Bai Giang No-ron-All - Trần Hoài Linh

- 69 -

ðể có ñược cấu trúc ñáp ứng tốt hơn cho các bài toán và ñối tượng có trễ hoặc có phản hồi, ta thêm vào mạng MLP một số kênh trễ tín hiệu cho các tín hiệu ñầu vào và tín hiệu ñầu ra. Khi ñó ta có mạng RMLP (Recurrent Multi Layer Perceptron) với cấu trúc ñược thể hiện trên hình 4.1. ðể ñơn giản hoá các công thức, dưới ñây mạng RMLP sẽ ñược trình bày với một ñầu vào và một ñầu ra tín hiệu. Ta có thể thấy sự xuất hiện của các khối trễ z-1 cho tín hiệu ñầu vào cũng như tín hiệu ñầu ra ñể làm kênh phản hồi. Mạng RMLP khi ñó sẽ có hàm truyền là

( )( 1) ( ), ( 1), , ( ( 1)), ( 1), ( 2), ( )y t f x t x t x t N y t y t y t P+ = − − − − − −… …

(4.1)

với N-1 là số bước trễ của tín hiệu ñầu vào, P – số bước trễ của tín hiệu ñầu ra. Gọi M là số nơ rôn của lớp ẩn, khi ñó mạng RMLP có bộ số ñặc trưng (N, P, M). Véc -tơ ñầu vào mạng có dạng

[ ] [ ]0 1, , , 1, ( ), ( 1), , ( ( 1)), ( ), ( 1), ( 1)N Px x x x t x t x t N y t P y t P y t+= = − − − − − + −x … … …

Ký hiệu W – ma trận các trọng số ghép nối giữa lớp ñầu vào và lớp ẩn, V – ma trận các trọng số ghép nối giữa lớp ẩn và lớp ñầu ra, ui – tổng tín hiệu ñầu vào của nơ-rôn ẩn thứ i, g – tổng ñầu vào của nơ-rôn ñầu ra. Khi ñó ta có tín hiệu ñầu ra của mạng ñược tuần tự xác ñịnh như sau:

0. Tổng các kích thích của nơ-rôn ẩn:

0

N P

i ij jj

u W x+

=

= ∑ (4.2)

0. Tính tín hiệu ñầu ra của các nơ-rôn ẩn:

1( )i iv f u= (4.3)

0. Tổng các kích thích của nơ-rôn ñầu ra:

( )10

M

j jj

g V f u=

=∑ (4.4)

0. Tín hiệu ñầu ra của mạng:

( )2y f g= (4.5)

4.1.2. Thuật toán học của mạng RMLP Tương tự như ñối với mạng MLP, ñể ứng dụng mạng RMLP cho các bài toán cụ

thể ta cần xây dựng thuật toán ñiều chỉnh thích nghi các trọng số ghép nối cho mạng

Page 70: Bai Giang No-ron-All - Trần Hoài Linh

- 70 -

này. Trong phần này ta sẽ ñưa ra các công thức tính gradient cơ bản ñể phục vụ cho thuật toán học của mạng RMLP. Ta tiếp tục sử dụng hàm sai số cho thời ñiểm t (chú ý các công thức ñược xây dựng cho mạng có 1 ñầu ra)

( ) [ ]21( ) ( )

2E t y t d t= − (4.6)

Sử dụng các công thức từ (4.2) ñến (4.5) ta có gradient của hàm sai số theo trọng số ghép nối giữa lớp ẩn và lớp ñầu ra là

( ) ( )

( ) ( )

( ) ( ) ( )

2

20

( ) ( ) ( ) ( )( ) ( ) ( ) ( )

( )

( )( ) ( ) ( )

( )( ) ( ) ( )

Mi i

i

E t y t y t g ty t d t y t d t

V V g t V

g ty t d t f g t

V

V v ty t d t f g t

V

α α α

α

α=

∂ ∂ ∂ ∂= − ⋅ = − ⋅ ⋅

∂ ∂ ∂ ∂

∂′= − ⋅ ⋅∂

∂ ⋅′= − ⋅ ⋅

∂∑

(4.7)

Với ( )iVVα

∂ bằng 1 khi i α= hoặc bằng 0 trong các trường hợp còn lại ta có

( ) ( ) ( )2

0

( )( )( ) ( ) ( ) ( )

Mi

ii

v tE ty t d t f g t v t V

V Vαα α=

∂∂′= − ⋅ ⋅ + ∂ ∂

∑ (4.8)

Từ công thức (4.3) ta có

( )

( ) ( )

( ) ( )

1

0

11

1 ,1

( ) ( ( ))

( )

1 ( )( )

1( )

N Pji i

iji j

N P

i ijj N

P

i i j Nj

Xv t f u tW

V u t V

y t P j Nf u t W

V

y t P jf u t W

V

α α

α

α

+

=

+

= +

+=

∂∂ ∂=

∂ ∂ ∂

∂ − − + −′= ⋅

∂ − − +′= ⋅

(4.9)

Tổng hợp kết quả ta có

( ) ( ) ( )2 1

0 1

1 ( )( )( ) ( ) ( )

M N P

i i iji j N

y t P j Ny tf g t v t V f u t W

V Vαα α

+

= = +

∂ − − + −∂′ ′= ⋅ + ⋅ ⋅

∂ ∂ ∑ ∑

(4.10)

Page 71: Bai Giang No-ron-All - Trần Hoài Linh

- 71 -

Công thức lặp trên cho phép ta tính ñạo hàm ( )y t

∂∂

tại thời ñiểm t dựa trên giá

trị của ñạo hàm này tại P thời ñiểm trước ñó ( 1, 2,t t t P− − −… ).

ðối với các thời ñiểm ban ñầu (t<P) ta khởi tạo với giá trị bằng 0 (là các giá trị

thường dùng cho hệ nhân quả), có nghĩa là (0) (1) ( 1)

0y y y P

V V Vα α α

∂ ∂ ∂ −= = = =

∂ ∂ ∂⋯ .

Chú ý: Một số tài liệu ñề xuất sử dụng ( 1) ( 2) ( 1)

0y P y P y

V V Vα α α

∂ − + ∂ − + ∂ −= = = =

∂ ∂ ∂⋯ và bắt ñầu tính từ giá trị

(0)y

∂∂

.

Các trọng số ghép nối của lớp ẩn sẽ ñược ñiều chỉnh theo công thức

[ ] ( )( ) ( )

y tV y t d t

Vαα

η∂

∆ = − −∂

(4.11)

Công thức ñiều chỉnh trọng số ghép nối của lớp ñầu vào và lớp ẩn ñược xác ñịnh bằng phương pháp tương tự với

( )2 1 ,1 1

( ) ( 1 )( ) ( ( ))

M P

i i i j N ii j

y t y t P jf g t V f u t W x

W V α βαβ α

δ+= =

∂ ∂ − − +′ ′= ⋅ ⋅ ⋅ +

∂ ∂ ∑ ∑

(4.12)

[ ] ( )( ) ( )

y tW y t d t

Wααβ

η∂

∆ = − −∂

(4.13)

4.1.3. Ví dụ ứng dụng mạng RMLP

Hình 4.2: Quá trình ñi/u chRnh thích nghi các thông s* c�a m>ng h-i qui s� d=ng tín hi�u sai l�ch gila giá tr ñích và ñ?u ra c�a mô hình ñ0 làm tín hi�u ñi/u khi0n

Page 72: Bai Giang No-ron-All - Trần Hoài Linh

- 72 -

Mạng RMLP là mạng có khả năng mạnh trong mô hình hoá thời gian thực các ñối tượng ñộng. ðây là một ưu ñiểm ñặc trưng của mạng này và do ñó mạng RMLP ñược sử dụng như một trong những mô hình kinh ñiển của hệ ñiều khiển phi tuyến. Ta sẽ lấy một vài ví dụ hoạt ñộng của mạng RMLP trong nhiệm vụ mô hình hoá các hệ phi tuyến ñộng kinh ñiển. Nguyên tắc hoạt ñộng chung của giải pháp ñược trình bày trên hình 4.2. Theo ñó, do ta có ñối tượng ñộng và có nhớ (ñáp ứng thời ñiểm sau phụ thuộc cả vào các kich thích và trạng thái của các thời ñiểm trước) nên các mạng nơ-rôn sẽ ñược huấn luyện theo nguyên tắc online, có nghĩa là sau khi có các tín hiệu tức thời mới của một mẫu thì các thông số của mạng sẽ ñược ñiều chỉnh luôn theo sai số trên mẫu ñó. Như vậy mạng sẽ có khả năng “bám” theo các mẫu số liệu mới nhất có ñược từ ñối tượng.

Trước tiên ta sẽ mô phỏng ñối tượng có phương trình ñặc trưng là

( ) ( ) ( )1 10,3 0,6 0,6sin 0,3sin 3 0,1sin 5k k k k k ky y y u u uπ π π+ −= + + + +

(4.14)

Tín hiệu ñầu vào hệ thống là hàm sin: ( )sin 2 / 250ku kπ=

Hình 4.3: Tín hi�u ñ?u vào ( )sin 2 / 250ku kπ=

Dạng tín hiệu ngõ ra của ñối tượng ñược thể hiện trên hình 4.4.

Page 73: Bai Giang No-ron-All - Trần Hoài Linh

- 73 -

Hình 4.4: ðáp ^ng ñ?u ra c�a ñ*i tSTng có mô t$ trong công th^c (4.14)

Ta sử dụng thuật toán bước giảm cực ñại như ñã mô tả ở trên với hệ số học 0,085η =

ñược xác ñịnh bằng thực nghiệm. Kết quả thu ñược ñược thể hiện trên hình 4.5. Ta có

thể nhận thấy ñáp ứng ñầu ra từ mạng RMLP chỉ sai lệch ñáng kể ở một số bước ñầu tiên, sau ñó sai số nhanh chóng giảm xuống mức rất thấp so với mức tín hiệu ñầu ra của ñối tượng.

Hình 4.5: KFt qu$ h'c c�a m>ng RMLP tái t>o l>i ñ*i tSTng cho theo công th^c (4.14)

Ví dụ thứ hai ta xét ñối tượng có hàm truyền ñạt

Page 74: Bai Giang No-ron-All - Trần Hoài Linh

- 74 -

( )1

1 2 21

2,5

1k k k

k kk k

y y yy u

y y−

+−

+= +

+ + (4.15)

với tín hiệu ñầu vào cũng là ( )sin 2 / 250ku kπ= như trên hình 4.3.

Khi ñó tín hiệu ñầu ra từ ñối tượng sẽ ñược thể hiện trên hình 4.6.

Hình 4.6: Tín hi�u ñ?u ra c�a ñ*i tSTng ñSTc mô t$ trong (4.15)

Quá trình học theo các công thức từ (4.11) và (4.13) ñể ñiều chỉnh thích nghi các trọng số W và V sẽ cho kết quả như trên hình 4.7. Ta có thể thấy các sai số có giá trị lớn chỉ xuất hiện trong vài chu kỳ tín hiệu ñầu tiên, sau ñó sai số giảm rất nhanh và giữ ở mức thấp cho các tín hiệu tiếp theo. Ta có thể kết luận rằng mạng RMLP ñã học thành công ñể mô phỏng ñối tượng cho theo công thức (4.15).

Page 75: Bai Giang No-ron-All - Trần Hoài Linh

- 75 -

Hình 4.7: Tín hi�u ñ?u ra c�a ñ*i tSTng (trên), c�a m>ng RMLP (gila) và ñ) sai l�ch gila chúng (dSLi)

4.2 Mạng Elman

4.2.1 Cấu trúc của mạng Elman

Mạng hồi quy Elman ñược ñặc trưng bởi các tín hiệu phản hồi từ lớp ẩn trở về lớp ñầu vào, ñược thực hiện thông qua các khối trễ tín hiệu z-1. Cấu trúc của mạng Elman ñược mô tả trên hình 4.8

Page 76: Bai Giang No-ron-All - Trần Hoài Linh

- 76 -

Hình 4.8: C4u trúc m>ng Elman

Ta có thể thấy mỗi nơ-rôn ẩn sẽ tương ứng với một kênh trong véc-tơ ñầu vào. Lớp ñầu vào của mạng bao gồm hai thành phần. Thứ nhất là các tín hiệu bên ngoài, thứ hai là các tín hiệu phản hồi từ lớp ẩn

[ ]0 1 1 2( ) ( ), ( ), ( ), ( 1), ( 1), , ( 1)N Mt x t x t x t v t v t v t= − − −x … … (4.16)

Ta ký hiệu: ( )iu t - tổng ñầu vào tín hiệu của nơ-rôn ẩn thứ i tại thời ñiểm t, ( )tiv

- ñầu ra của nơ-rôn ẩn thứ i tại thời ñiểm t

Khi ñó:

0

( ) ( )N M

i j ijj

u t x t W+

=

= ⋅∑ (4.17)

( )( )1 ( )t

i iv f u t= (4.18)

trong ñó W là ma trận trọng số ghép nối giữa lớp ñầu vào và lớp ẩn, còn hàm 1()f là

hàm truyền ñạt của các nơ-rôn thuộc lớp ẩn. Tương tự như vậy, nếu ta ký hiệu ( )ig t -

tổng tín hiệu ñầu vào nơ-rôn ñầu ra thứ i, ( )iy t - tín hiệu ñầu ra nơ-rôn ñầu ra thứ i thì

Page 77: Bai Giang No-ron-All - Trần Hoài Linh

- 77 -

( )

0

( )M

ti j ij

j

g t v V=

= ⋅∑ (4.19)

( )2( ) ( )i iy t f g t= (4.20)

với W là ma trận trọng số ghép nối giữa lớp ẩn và lớp ñầu ra, còn 2 ()f là hàm truyền

ñạt của nơ-rôn ñầu ra.

4.2.2. Thuật toán học của mạng Elman Các thông số của mạng Elman có thể ñược ñiều chỉnh sử dụng thuật toán

gradient và bước giảm cực ñại. Các công thức gradient của hàm sai số phụ thuộc vào các trọng số kết nối có thể ñược xác ñịnh như sau.

( ) [ ]2 2

1 1

1 1( ) ( ) ( )

2 2

K K

i i ii i

E t y t d t e t= =

= − =∑ ∑ (4.21)

ðạo hàm của hàm sai số theo trọng số V giữa lớp ẩn và lớp ñầu ra ta có

( )2

1

( ) ( )( )( )

( )

Ki i

iii

f g t g tE te t

V g t Vαβ αβ=

∂ ∂∂=

∂ ∂ ∂∑ (4.22)

Với công thức (4.19) tính hàm gi(t) ta có

( ) ( )

( )

( )2

1 0

( )( )

21 0

( )( )( )

( )

( ) ( )

tK Pj iji

iii j

tK Pj ij t

i i ij ji j

v Vf g tE te t

V g t V

v dVe t f g t V v

V dV

αβ αβ

αβ αβ

= =

= =

∂ ⋅∂∂ = ⋅ ⋅∂ ∂ ∂

∂ ′= ⋅ ⋅ + ∂

∑ ∑

∑ ∑

(4.23)

Từ trên hình 4.8 ta có các trọng số ghép nối giữa lớp ẩn và lớp ñầu ra không phụ

thuộc vào ñầu ra của lớp ẩn, do ñó 0jv

Vαβ

∂=

∂, do ñó

Page 78: Bai Giang No-ron-All - Trần Hoài Linh

- 78 -

( )

( )

( )

( )2

1 0

( )2

1

( )2

( )( ) ( )

( ) ( )

( ) ( )

K Mij t

i i ji j

Ki t

i ii

t

dVE te t f g t v

V dV

dVe t f g t v

dV

dVe t f g t v

dV

αβ αβ

ββ

αβ

αβα α β

αβ

= =

=

∂ ′= ⋅ ⋅ ⋅ ∂

′= ⋅ ⋅ ⋅

′= ⋅ ⋅ ⋅

∑ ∑

∑ (4.24)

Các công thức tính gradient theo các trọng số ghép nối giữa lớp ñầu vào và lớp ẩn phức tạp hơn do có các tín hiệu phản hồi giữa hai lớp này. Tính ñạo hàm của hàm sai số (4.21) theo trọng số W của lớp này ta có

( ) ( )

( )

( )2

1 0

( )

21 1

( )( )( )

( )

( ) ( )

tK Mj iji

iii j

tK Mj

i i iji j

v Vf g tE te t

W g t W

ve t f g t V

W

αβ αβ

αβ

= =

= =

∂ ⋅∂∂ = ⋅ ⋅

∂ ∂ ∂

∂ ′= ⋅ ⋅ ∂

∑ ∑

∑ ∑

(4.25)

Từ công thức (4.18) ta có

( ) ( ) ( ) ( )( )1

10 0

( ) ( ) ( )( )

t N M N Mj k jkj k

j j jkj k k

f u t x t Wv x tf u t x W

W u W Wα βαβ αβ αβ

δ+ +

= =

∂ ∂ ∂ ∂′= = ⋅ +

∂ ∂ ∂ ∂ ∑ ∑

(4.26)

Mặt khác, từ cấu trúc của lớp ñầu vào (công thức (4.16)) ta có

( )

( )

( 1)

11

( 1)

1 ,1

( )( )

( )

tN Mj k N

j j jkk N

tMk

j j j k Nk

v t vf u t x W

W W

vf u t x W

W

α βαβ αβ

α βαβ

δ

δ

−+−

= +

+=

∂ ∂′= ⋅ +

∂ ∂

∂′= ⋅ +

∑ (4.27)

Tương tự như trong trường hợp mạng RMLP, công thức lặp này cho phép chúng ta tính ñược gradient tại thời ñiểm t sử dụng giá trị của gradient của thời ñiểm t-1 trước ñó. Ta có thể sử dụng các giá trị khởi ñộng ban ñầu tại thời ñiểm t =0 của gradient

Page 79: Bai Giang No-ron-All - Trần Hoài Linh

- 79 -

(0)

0jv

Wαβ

∂=

∂sẽ bằng 0. Tổng kết lại thuật toán học bước giảm cực ñại của mạng Elman

ñược thực hiện theo những bước sau:

0. Khởi tạo các giá trị gradient ban ñầu bằng 0.

0. Tại mỗi thời ñiểm t ( 0,1,2,t = … ) ta xác ñịnh trạng thái t (giá trị) của tất

cả các tín hiệu trong mạng gồm: x, ui, gi,... ðối với 0t = ta có

[ ]1(0) (0), , (0),0, 0T

Nx x x= … … . Các trọng số ghép nối ñược khởi tạo

các giá trị ngẫu nhiên.

0. Xác ñịnh véc-tơ sai số ( )tE gồm các sai số trên từng kênh ñầu ra của

mạng Elman.

0. Tính gradient của hàm sai số theo các trọng số của mạng dựa vào các công thức (4.24) và (4.27)

0. Cập nhật các trọng số của mạng theo công thức sau:

( )( 1) ( ) ( )2 ( ) ( )t t tV V f g t v e tα ααβ αβ βη+ ′= − ⋅ ⋅ ⋅ (4.28)

( ) ( )( 1)

( 1) ( )2 1 ,

1 1 1

( ) ( ) ( )tK M M

t t ki i ij j j j k N

i j k

vW W e t f g t V f u t x W

Wα βαβ αβαβ

η δ−

++

= = =

∂ ′ ′= − + ∂ ∑ ∑ ∑

(4.29)

0. Nếu mạng sau khi cập nhật ñã thoả mãn ñiều kiện dừng của quá trình học thì kết thúc chương trình, nếu không thì quay lại bước 2 cho thời ñiểm tiếp theo.

4.2.3 Ví dụ ứng dụng mạng Elman Ta sẽ lấy ví dụ ứng dụng mạng Elman trong việc phát hiện biên ñộ của một tín

hiệu hình sin ñã ñược lấy mẫu (rời rạc hóa). Việc xác ñịnh biên ñộ tín hiệu sin ñược dựa trên cơ sở phân tích giá trị tín hiệu ñưa vào và so sánh với tín hiệu trước ñó. Trong ví dụ này ta xét chuỗi tín hiệu hình sin với hai biên ñộ khác nhau là 1 và 2. Tập số liệu học là 80 mẫu ñược xác ñịnh như sau:

sin( ) 0 20

2sin( 20) 20 40

sin( 40) 40 60

2sin( 60) 60 80

k

k khi k

k khi kx

k khi k

k khi k

< ≤ − < ≤=

− < ≤ − < ≤

(4.30)

Giá trị tín hiệu này cho 1,2, ,80k = … ñược biểu diễn trên hình 4.9.

Page 80: Bai Giang No-ron-All - Trần Hoài Linh

- 80 -

Hình 4.9: Tín hi�u c?n xác ñnh biên ñ)

Mạng Elman ñược sử dụng có cấu trúc 11-10-1 (1 ñầu vào hệ thống, 10 nơ-rôn ẩn và 10 nơ-rôn phản hồi ở lớp ñầu vào, 1 ñầu ra). Tín hiệu ñầu vào sẽ là các giá trị lần lượt của kx , các nơ-rôn ẩn có hàm truyền ñạt là hàm tansig, nơ-rôn ñầu ra có hàm

truyền ñạt tuyến tính. Mạng Elman ñược huấn luyện bằng thuật toán bước giảm cực ñại với 1000 bước học. Trên hình 4.10 ta biểu diễn sự biến thiên của hàm sai số trong quá trình học. Trong ñó hình 4.10a là hàm sai số biểu diễn trên trục tuyến tính, còn trên hình 4.10b là cùng hàm sai số nhưng biểu diễn trên trục lô-ga ñể ta có thể quan sát rõ hơn quá trình ñiều chỉnh thích nghi các thông số của mạng nhằm giảm sai số học.

Hình 4.10: Quá trình gi$m sai s* h'c qua các bSLc hu4n luy�n m>ng

Trên hình 4.11 ta có kết quả hoạt ñộng của mạng sau quá trình học với giá trị ñặt (ñường liền nét), giá trị ñầu ra của mạng (ñường ñứt nét) sau 1000 chu trình học.

Page 81: Bai Giang No-ron-All - Trần Hoài Linh

- 81 -

Hình 4.11: Biên ñ) g*c c�a tín hi�u (giá tr ñích) và biên ñ) SLc lSTng bYng m>ng Elman

ðồ thị sai số ñược thể hiện trên hình 4.12.

Hình 4.13: Sai s* c�a quá trình phát hi�n tr�c tuyFn biên ñ) tín hi�u sin

Ta thấy rằng ñộ chính xác của ñầu ra rất tốt, tất cả 80 trường hợp ñều có sai số không vượt quá 0, 5 – là mức trung bình giữa hai mức trông ñợi là 1 và 2. Nếu ta chấp nhận ñầu ra có thể có nhiễu thì ngưỡng ñể nhận dạng chính xác biên ñộ là 1 hoặc 2 sẽ là 0, 5 và với quan niệm như vậy thì mạng Elman không ñã không tạo ra sai số trong 80 trường hợp trên.

ðể kiểm tra chất lượng xây dựng mô hình, ta sẽ ñưa vào mạng sau huấn luyện một số trường hợp tín hiệu khác. Trường hợp thứ nhất là tín hiệu có cộng thêm nhiễu trắng với biên ñộ nhỏ. Với chuỗi k kx x s′ = + với s là nhiễu cộng thêm với hai trường

Page 82: Bai Giang No-ron-All - Trần Hoài Linh

- 82 -

hợp: a) nhiễu trắng tạo ngẫu nhiên trong khoảng ( )0,1;0,1− và b) nhiễu trắng ngẫu

nhiên trong khoảng ( )0,5;0,5− ta có kết quả như hình 4.13.

Hình 4.13: KFt qu$ SLc lSTng biên ñ) tín hi�u khi có nhiEu 10% (trên) và 50% (dSLi)

Ta có thể thấy chất lượng hoạt ñộng của mô hình tuy bị suy giảm nhưng vẫn có thể quan sát ñược khả năng bám biên ñộ cho cả hai trường hợp có nhiễu (ñồng thời ta cũng nhận thấy trường hợp nhiễu 50% chất lượng bám biên ñộ cũng khá tương ñương với trường hợp nhiễu 10%). Trường hợp thứ 2, ta sẽ thử nghiệm hoạt ñộng với tín hiệu có tần số khác với tần số ñã sử dụng khi học. Cụ thể ta có

sin( ) 0 20

2sin( ( 20)) 20 40

sin( ( 40)) 40 60

2sin( ( 60)) 60 80

k

Nk khi k

N k khi kx

N k khi k

N k khi k

< ≤ − < ≤′ =

− < ≤ − < ≤

(4.31)

với hai trường hợp 1,2N = và 0,8N = . Trên hình 4.14 ta có thể thấy ngay cả khi tần

số của tín hiệu ñầu vào thay ñổi tới 20%, chất lượng hoạt ñộng của mạng vẫn rất tốt,

mạng vẫn có khả năng ñưa ra ñược kết luận chính xác về biên ñộ của tín hiệu ñầu vào.

Page 83: Bai Giang No-ron-All - Trần Hoài Linh

- 83 -

Hình 4.14: KFt qu$ SLc lSTng biên ñ) khi t?n s* c�a tín hi�u thay ñgi tăng 20% (trên) và gi$m 20% (dSLi)

4.3 Mạng RTRN

4.3.1 Cấu trúc mạng RTRN Trong số các mạng hồi quy ta cũng cần nhắc tới mạng RTRN (Real-Time

Recurrent Network) do Williams và Zipser ñề xuất [Williams89] dùng ñể xử lý các tín hiệu trực tuyến. Cấu trúc của mạng ñược mô tả trên hình 4.15.

Page 84: Bai Giang No-ron-All - Trần Hoài Linh

- 84 -

Hình 4.15: Mô hình m>ng RTRN

Mạng có N nút vào, M nơ-rôn lớp ẩn (và ứng với chúng là M nơ-rôn lớp phản hồi). Trong số M nơ-rôn ẩn này có K nơ-rôn tạo thành ñầu ra của mạng (như vậy K M≤ ). ðầu vào của mạng bao gồm hai thành phần: ñầu vào hệ thống là các nút

1 2, , , ( )Nx x x t… , các tín hiệu phản hồi từ lớp ẩn 1( 1), , ( 1)My t y t− −… . Khi ñã biết các

trọng số của mạng và tín hiệu ñầu vào tại thời ñiểm t ta có thể xác ñịnh ñầu vào tín hiệu của các nơ-rôn lớn ẩn là

0

( ) ( )N M

i ij ji

u t V x t+

=

= ∑ (4.32)

ðầu ra của các nơ-rôn là

( )( ) ( )i iy t f u t= (4.33)

với ()f là hàm truyền ñạt của nơ-rôn. Ta cũng có thể dễ dàng nhận thấy mạng RTRN

là một trường hợp ñặc biệt của mạng Elman trong ñó ma trận ghép nối giữa lớp ẩn và

lớp ñầu ra là ma trận ñường chéo ñơn vị mở rộng, có nghĩa là 1

0ij ij

i jW

i jδ

== =

≠.

4.3.2 Thuật toán học của mạng RTRN Biến ñổi các công thức gradient của mạng Elman cho trường hợp ñặc biệt này ta

có thuật toán sau (còn gọi là thuật toán Williams -Zipser):

Bước 1: Mạng RTRN ñược khởi ñộng với ñầu vào tín hiệu bằng 0, các trọng số V ñược khởi tạo ngẫu nhiên.

Bước 2: Tại thời ñiểm t ( 0,1,2,t = … ) khi biết tín hiệu ñầu vào 1 2, , , ( )Nx x x t…

cùng với các tín hiệu phản hồi 1( 1), , ( 1)My t y t− −… ta tính các tín hiệu trong mạng

theo các công thức (4.32) và (4.33).

Bước 3: Tính các gradient theo các công thức sau:

( ) ( )1

,1

( 1)( ) Mjii

i i j Ni j

y tf uy tx V

V u Vα βαβ αβ

δ +=

∂ −∂∂ = +

∂ ∂ ∂ ∑ (4.34)

Bước 4: Cập nhật các trọng số ghép nối theo công thức

( )( 1) ( )

1

( )( ) ( )

Kt t i

j jj

y tV V y t d t

Vαβ αβαβ

η+

=

∂= − −

∂ ∑ (4.35)

Page 85: Bai Giang No-ron-All - Trần Hoài Linh

- 85 -

Bước 5: Nếu mạng sau khi cập nhật ñã thoả mãn các ñiều kiện dừng thì kết thúc tính toán, ngược lại thì quay lại bước 2.

4.3.3 Ví dụ ứng dụng mạng RTRN Mạng RTRN ngoài khả năng ñược sử dụng như một mô hình xấp xỉ ánh xạ phi

tuyến tương tự như các trường hợp ñã trình bày ở trên còn có thể ñược sử dụng cho một số bài toán khác. Các ví dụ dưới ñây trình bày về khả năng sử dụng mạng RTRN ñể xác ñịnh các thông số của hệ ñộng tuyến tính ñược mô tả bởi hệ phương trình ñặc trưng:

( 1) ( ) ( )

( ) ( )

t t t

t t

+ = ⋅ + ⋅

= ⋅

x A x B u

y C x (4.36)

trong ñó [ ]1 2, , ,T

Mx x x=x … - véc-tơ trạng thái của ñối tượng,

[ ]1 2, , , Nu u u= −u … véc-tơ N ñầu vào của ñối tượng, [ ]1 2, , , Ky y y= −y … véc-tơ K ñầu

ra của ñối tượng.

Ma trận A là ma trận vuông với kích thước M M× , ma trận B là ma trận có kích thước M N× còn ma trận C có kích thước .K N× So sánh các công thức mô tả hệ thống (4.36) với các công thức của mạng RTRN ta có ma trận A chính là các trọng số ijW với 1,2, ,i M= … và 1, ,j N N M= + +… , ma trận B chính là các trọng số ijW

với 1,2, ,i M= … và 1, , ,j N= … còn ma trận C là ma trận ñơn vị của lớp ñầu ra của

mạng RTRN.

Trong thử nghiệm ñầu tiên, ta xét một ví dụ ñối tượng bậc 3 với một ñầu vào và một ñầu ra, ñược mô tả bởi các ma trận

0,3 0,1 0,1 0,5

0, 0,4 0,3 ; 0,2

0,5 0,1 0,5 0,1

= =

A B

Với 500 tín hiệu ñầu vào ( )u t ( 1,2, ,500t = … ) ñược chọn là các giá trị ngẫu

nhiên trong khoảng [ ]0,1;0,1− ta có ñầu ra của ñối tượng ñược biểu diễn trên hình

4.16.

Page 86: Bai Giang No-ron-All - Trần Hoài Linh

- 86 -

Hình 4.16: ðáp ^ng ñ?u ra c�a ñ*i tSTng cho theo công th^c (4.36) khi có 500 tín hi�u vào ngbu nhiên

Mạng RTRN ñược lựa chọn có cấu trúc 4 3 1− − và ñược thực hiện quá trình học với 500 mẫu số liệu ñã ñược tao ra ở trên. Trên hình 4.17 là kết quả ñiều chỉnh thích nghi các trọng số (tương ứng với các giá trị của ma trận A và B). Kết quả cuối cùng ta có các ma trận thông số thu ñược là:

0,305 0,0671 0,132 0,5

0,00597 0,313 0,394 ; 0,2

0,381 0,207 0,518 0,111kq kq

= =

A B

Có thể nhận thấy các hệ số này không trùng khớp với các hệ số mẫu ban ñầu. Tuy nhiên ta cần chú ý rằng các hệ tuyến tính cho theo (4.36) có thể tồn tại trường hợp nhiều hệ có thông số khác nhau nhưng lại có các ñáp ứng tín hiệu giống nhau.

Hình 4.17: KFt qu$ ñi/u chRnh thích nghi các tr'ng s* ghép n*i A(1,:) và A(2,:) c�a m>ng RTRN trong quá trình h'c cho ví d= bZc 3

Page 87: Bai Giang No-ron-All - Trần Hoài Linh

- 87 -

Hình 4.18: S� biFn thiên c�a các tr'ng s* ghép n*i trong quá trình h'c cho ví d= theo công th^c (4.35)

ðể thử nghiệm, ta sẽ tính toán hai ñáp ứng cơ bản của ñối tượng và của mô hình là ñáp ứng xung và ñáp ứng bước nhảy. Kết quả ñược thể hiện trên hình 4.19 cho thấy ñối tượng và mô hình có các ñáp ứng khá tương tự, sai số nhỏ so với mức tín hiệu của ñối tượng và của mô hình.

(a) (b)

Hình 4.19: Các ñáp ^ng c# b$n c�a h� ñ?u vào và h� xác ñnh ñSTc b_i m>ng RTRN: a) ðáp ^ng xung, b) ðáp ^ng bSLc nh$y

Ở ví dụ thứ hai, ta sẽ xét ví dụ ñối tượng bậc 2 có hai ma trận ñặc trưng như sau:

0,344 0,213 0,5;

0,142 0,15 0,368

= =

A B

Page 88: Bai Giang No-ron-All - Trần Hoài Linh

- 88 -

Hình 4.20: S� biFn thiên c�a các tr'ng s* ghép n*i trong quá trình h'c cho ví d= 4.36

Hoàn toàn tương tự như trường hợp hệ bậc 3 ở trên, ta tiến hành tạo bộ số liệu mẫu với tín hiệu ñầu vào ngẫu nhiêu và trên cơ sở ñó ñiều chỉnh các hệ số của mạng RTRN. Kết quả của quá trình học này ñược thể hiện trên hình 4.20 cho cả ma trận A và ma trận B. Sau 800 bước học, ta thu ñược các ma trận ñặc trưng như sau:

0,466 0,0904 0,5;

0,152 0,228 0,201kq kq

= = − A B

Ta cũng nhận thấy các ma trận kết quả sai khác với các ma trận ñầu vào, do ñó ta tính toán các ñáp ứng cơ bản của ñối tượng và mô hình ñể kiểm tra sự trùng hợp về ñáp ứng của ñối tượng và mô hình. Kết quả tính toán ñáp ứng xung và ñáp ứng bước nhảy cho ñối tượng và cho mô hình ñược thể hiện trên hình 4.21.

(a) (b)

Page 89: Bai Giang No-ron-All - Trần Hoài Linh

- 89 -

Hình 4.21: Các ñáp ^ng c# b$n c�a h� ñ?u vào và h� xác ñnh ñSTc b_i m>ng RTRN: a) ðáp ^ng xung, b) ðáp ^ng bSLc nh$y

4.4 Mạng Hopfield

4.4.1 Cấu trúc của mạng Hopfield Một trong những ñại diện ñặc trưng của mạng hồi quy là mạng Hopfield. Mạng

này còn ñược gọi là bộ nhớ tự liên kết (autoassociative memory) do nguyên lý hoạt ñộng của mình. Nhiệm vụ của bộ nhớ tự liên kết là khi ở chế ñộ học hệ thống sẽ nhớ một số véc-tơ mẫu cho trước theo một cách nào ñó sao cho khi ở chế ñộ kiểm tra khi cho một mẫu mới vào, hệ thống sẽ ñưa ra ñáp ứng tương ứng với mẫu gần giống nhất

với véc-tơ ñầu vào. ðể so sánh mức ñộ sai lệch giữa hai mẫu [ ]1 2, , ,T

nx x x=x … và

[ ]1 2, , ,T

ny y y=y … với { }, 1,1i ix y ∈ − ta thường sử dụng khoảng cách Hamming:

( )Hd − =x y số vị trí mà hai véc-tơ này có giá trị khác nhau

Khoảng cách Hamming giữa hai mẫu x và y sẽ bằng 0 khi =x y .

Cấu trúc mạng Hopfield ñược trình bày trên hình 4.22.

Hình 4.22: Mô hình c4u trúc m>ng Hopfiled

Page 90: Bai Giang No-ron-All - Trần Hoài Linh

- 90 -

ðầu ra tín hiệu của nơ-rôn thứ i ở thời ñiểm t là

( ) ( )

0

Nt ti ij j i

j

y f W x b=

= +

∑ (4.37)

trong ñó: tín hiệu ñầu vào của mạng chính là tín hiệu ñầu ra ở chu kỳ trước ( ) ( 1)t ti ix y −= , và hàm truyền ñạt là hàm truyền ñạt ngưỡng:

1 0

( ) sgn( )1 0

khi xf x x

khi x

≥= =

− <

ðể ñảm bảo tính hội tụ của tín hiệu ta có ma trận W thường thoả mãn các ñiều kiện: 0iiW = và ij jiW W= . Trong chế ñộ học ta cần tìm các giá trị của ma trận truyền

W sao cho mạng hoạt ñộng tốt nhất với một tập số liệu cho trước. Ta có nhiều phương pháp học cho mạng Hopfield, trong ñó có thể kể tới phương pháp học Hebb và phương pháp LMP.

4.4.2 Thuật toán học của mạng Hopfield

a. Phương pháp Hebb

Trong phương pháp này, với một tập p véc tơ mẫu cho trước ix ( 1,2, ,i p= … )

các trọng số ijW ñược xác ñịnh theo công thức

1

1 p

ij i ji

W x xN =

= ∑ (4.38)

hay dưới dạng ma trận

1 T

N=W X X (4.39)

trong ñó X là ma trận ñược ghép từ các véc -tơ mẫu ñầu vào.

Theo công thức này thì các trọng số sẽ ñược tính là trung bình các thành phần từ từng mẫu. Khi tập số liệu có nhiều mẫu, một vấn ñề quan trọng cần ñược xem xét ñó là khái niệm tính hội tụ của bộ nhớ liên hệ. Bộ nhớ hoạt ñộng ổn ñịnh (hội tụ) nếu như khi cho véc-tơ mẫu kx vào mạng Hopfield thì ñầu ra ổn ñịnh của mạng sẽ là k k=y x .

Theo công thức (4.37) ta có ñầu ra thứ i sẽ bằng

Page 91: Bai Giang No-ron-All - Trần Hoài Linh

- 91 -

0

0 1

0 1

sgn

1sgn

1sgn

N

ki ij kjj

pN

li lj kjj l

pN

ki li lj kjj l

l k

y W x

x x xN

x x x xN

=

= =

= =≠

=

=

= +

∑∑

∑∑

(4.40)

Thành phần 0 1

1 pN

li lj kjj l

l k

x x xN = =

∑∑ ñược gọi là thành phần nhiễu của ñầu ra thứ i. Có

thể dễ dàng nhận thấy nếu như thành phần nhiễu ñủ nhỏ so với kjx và khi cộng hai

thành phần với nhau ta sẽ có kết quả cùng dấu với kjx hay nói cách khác khi ñó sẽ có

ki kiy x= . Nếu như ta cho phép mỗi véc -tơ mẫu ñược lưu giữ với một mức sai số là

maxε thì dung lượng của bộ nhớ sẽ là số mẫu lớn nhất mà mạng có thể lưu nhớ với sai

số lớn nhất không vượt quá maxε .

b. Thuật toán LMP (Li – Michel – Porod)

Thuật toán LMP ñược ba tác giả J. Li, A. Michel và W. Porod ñề xuất trong công trình [Li89] của mình. Với nơ-rôn ñược cập nhật theo công thức

( )( 1) ( )t tf+ = ⋅ +y Φ y Γ (4.41)

trong ñó f() – là hàm tuyến tính bão hòa với

1 1

( ) 1 1

1 1

khi x

f x x khi x

khi x

≥= − ≤ ≤− ≤ −

(4.42)

Thuật toán có thể ñược phát biểu như sau. Cho trước một tập p véc-tơ

, 1,2, , .Ni i p∈ =x ℝ … Ta thực hiện tuần tự các bước sau:

2. Tính ma trận

( 1)1 2 1, , , N p

p p p p× −

− = − − − ∈ Y x x x x x x… ℝ (4.43)

2. Phân tích ma trận Y theo các thành phần kỳ dị (Singular Values Decompositions)

Page 92: Bai Giang No-ron-All - Trần Hoài Linh

- 92 -

T= ⋅ ⋅Y U S V (4.44)

trong ñó: U và V là các ma trận trực giao ñơn vị (thỏa mãn tính chất 1 1;T T− −= =U U V V ), S là ma trận ñường chéo với các giá trị trên ñường chéo chính là

các giá trị kỳ dị của ma trận Y. ðặt k – hạng của ma trận Y. Ta có .k N≤

2. Tính hai ma trận

1

kT

ij i ii

u u+ +

=

= = ⋅ ∑T T (4.45)

1

nT

ij i ii k

u u− −

= +

= = ⋅ ∑T T (4.46)

4. Chọn một hệ số τ ñủ lớn (ví dụ 10τ = ) và tính

τ τ+ −= −T T T và p pτ τ= − ⋅I x T x (4.47)

5. Chọn hệ số h dương (thường (0,1)h∈ ), tính các hệ số

1 21

1;h

h eC e C

τ

τ

−−= − = (4.48)

6. Tính các ma trận trọng số theo các công thức sau

1

2 ( ) ( )

;h

k k T

N k N k

e

C

C

τ

τ

×

− × −

=

⋅ = ⋅ ⋅ ⋅ ⋅

I 0Γ U U I

0 I

(4.49)

4.4.3 Ví dụ áp dụng Ta mô tả quá trình hoạt ñộng của mạng Hopfield với ví dụ ñơn giản như sau.

Xét một tập gồm 2 mẫu [ ]1 1 1 1T= − −x và [ ]2 1 1 1

T= −x . Mạng Hopfield ñược

xây dựng trên công thức (4.41) cho phép mạng hoạt ñộng ổn ñịnh với 2 mẫu này.

Tuần tự theo các bước ta có:

3. Tính ma trận

Page 93: Bai Giang No-ron-All - Trần Hoài Linh

- 93 -

[ ]1 2

2

0

0

− = − =

Y x x

3. Phân tích ma trận Y theo các thành phần kỳ dị

[ ]1 0 0 2

0 1 0 0 1

0 0 1 0

T = ⋅ ⋅ = ⋅ ⋅ −

Y U S V

Hạng của ma trận Y: 1.k =

3. Tính hai ma trận

1

1 0 0

0 0 0

0 0 0

kT

ij i ii

u u+ +

=

= = ⋅ =

∑T T

1

0 0 0

0 1 0

0 0 1

nT

ij i ii k

u u− −

= +

= = ⋅ =

∑T T

3. Chọn 10τ = , khi ñó

1 0 0

0 10 0

0 0 10τ τ+ −

= − = − −

T T T

0

11

11p pτ τ

= − ⋅ = − −

I x T x

3. Chọn 0,15h = ta có các hệ số 1 21

1 0,162; 0,0777h

h eC e C

τ

τ

−−= − = = =

3. Tính các ma trận trọng số theo các công thức (4.49):

1,162 0 0

0 0,223 0

0 0 0,223

he τ⋅ = =

1

2 ( ) ( )

0

0,855

0,855

k k T

N k N k

C

C τ×

− × −

⋅ = ⋅ ⋅ ⋅ = − ⋅

I 0Γ U U I

0 I

Page 94: Bai Giang No-ron-All - Trần Hoài Linh

- 94 -

Ta có

( )(0) (1) (0) (0)1

1,162 1

1,078 1

1,078 1

f f

− − = → = ⋅ + = − = − =

y x y Φ y Γ y

( )(0) (1) (0) (0)2

1,162 1

1,078 1

1,078 1

f f

= → = ⋅ + = − = − =

y x y Φ y Γ y

nên mạng hoạt ñộng ổn ñịnh (hội tụ ngay sau bước lặp ñầu tiên) với cả hai mẫu học.

Thử nghiệm với mẫu mới có chứa nhiễu: 1

0,9

0,8

0,7

kt

− = −

x , ta có mẫu này gần với

mẫu 1x hơn. Cụ thể quá trình học ta có chỉ sau 1 bước học ( )1 1

1

( ) 1

1

kt

− = − =

y x x

Thử nghiệm với mẫu mới có chứa nhiễu: 2

0,2

0,7

0,3

kt

− = −

x , một cách trực quan ta

khó có thể kết luận mẫu này gần với mẫu 1x hơn hay là gần với mẫu 2x hơn. Và quá

trình hội tụ cũng diễn ra lâu hơn. Sau 12 bước lặp ta mới có ( )2 1

1

( ) 1

1

kt

− = − =

y x x - kết

quả hội tụ về giá trị mẫu 1x .

Quá trình 3 thành phần của véc-tơ hội tụ trong khi huấn luyện ñược thể hiện trên hình 4.23

Page 95: Bai Giang No-ron-All - Trần Hoài Linh

- 95 -

Hình 4.23: Quá trình cZp nhZt các giá tr ñ?u ra c�a n#-rôn trong m>ng Hopfield

4.5 Mạng Hamming

4.5.1 Cấu trúc mạng Hamming Mạng Hamming cũng có mô hình hoạt ñộng gần giống với ý tưởng của mạng

Hopfield nhưng có cấu trúc hơi khác biệt. Mạng Hamming gồm 2 lớp chính như trên hình 4.24. Lớp thứ nhất ñược gọi là lớp tiền xử lý PRENET . Lớp này có số nơ-rôn bằng số mẫu cần nhớ từ tập số liệu ñầu vào Mỗi nơ-rôn trên lớp tiền xử lý lưu giữ một

mẫu số liệu Ni ∈c ℝ . ðầu ra của các nơ-rôn này là ñộ tương tự (mức ñộ giống nhau)

giữa mẫu do nơ-rôn ñó ñặc trưng với véc-tơ ñầu vào ñang xét. Lớp thứ 2 ñược gọi là lớp MAXNET, lớp này có số nơ-rôn ñúng bằng số nơ-rôn của lớp tiền xử lý, mỗi nơ-rôn trong lớp MAXNET có ñầu vào gồm 1 ñầu ra của nơ-rôn tương ứng từ lớp tiền xử lý và các ñầu ra (trễ từ chu kỳ trước) của tất cả các nơ-rôn MAXNET. Mục ñích của lớp MAXNET là ñể lựa chọn ñược ñầu ra có giá trị lớn nhất từ lớp tiền xử lý. Việc lựa chọn này sẽ ñược thực hiện thông qua quá trình lặp: các giá trị từ lớp tiền xử lý ñược ñưa vào các nơ-rôn lớp MAXNET, các nơ-rôn này sẽ ñiều chỉnh theo hướng giảm dần các giá trị từ lớp tiền xử lý nhưng giá trị lớn sẽ bị giảm ít, giá trị nhỏ bị giảm nhiều cho ñến khi bằng 0. Quá trình lặp như vậy sẽ dẫn tới chỉ còn 1 nơ-rôn duy nhất có giá trị ñầu ra khác 0 và nơ-rôn ñó cũng tương ứng với ñầu ra lớn nhất ban ñầu từ lớp tiền xử lý.

Page 96: Bai Giang No-ron-All - Trần Hoài Linh

- 96 -

Hình 4.23: Mô hình m>ng Hamming

Ta có thể sử dụng nhiều công thức khác nhau ñể tính hàm truyền ñạt cho các nơ-rôn lớp tiền xử lý. Mục ñích chung là ñể có ñược ñầu ra thể hiện mức ñộ giống nhau

giữa véc-tơ ñầu vào ñang xét N∈x ℝ với các véc-tơ mẫu Ni ∈c ℝ ( 1,2, ,i M= … ). Ta

có thể sử dụng quan niệm ñộ giống nhau tỷ lệ nghịch với khoảng cách (hai véc-tơ có khoảng cách càng nhỏ thì mức ñộ giống nhau càng lớn) hoặc tỷ lệ nghịch với góc hợp thành giữa hai véc-tơ (nếu góc hợp thành càng nhỏ thì mức ñộ giống nhau càng lớn). ðể có ñược hàm tỷ lệ thuận giữa ñộ giống nhau, ta sẽ dùng hàm cos() của góc hợp thành giữa hai véc-tơ ñược sử dụng ñể ño mức ñộ giống nhau giữa hai véc-tơ. ðồng thời ñể cho thuận tiện, các véc-tơ ñầu vào và véc-tơ mẫu ñược chuẩn hóa về có chiều dài bằng 1. Khi ñó ta có ñầu ra của nơ-rôn lớp tiền xử lý ñược tính theo công thức:

( )(0) cos , ii i i

i

y⋅

= = = ⋅⋅

x cx c x c

x c∡ (4.50)

Các giá trị (0)iy sẽ tạo thành giá trị ban ñầu cho các nơ-rôn lớp MAXNET, sau

ñó các giá trị này ñược cập nhật theo công thức lặp sau:

( 1) ( )

1

Mt ti ij j

j

y f W y+

=

=

(4.51)

cho 1,2,...,i M= , hoặc ở dạng véc-tơ

Page 97: Bai Giang No-ron-All - Trần Hoài Linh

- 97 -

( )( 1) ( )t tf+ = ⋅y W y (4.52)

với các trọng số ghép nối có thể ñược chọn theo quy tắc: 1;ii ijW W ε= = − , trong ñó

10

Mε< < và hàm truyền ñạt f() là hàm tuyến tính bão hòa:

1 1

( ) 0 1

0 0

khi x

f x x khi x

khi x

≥= ≤ ≤ ≤

(4.53)

4.5.2 Ví dụ minh họa: Xét bộ mẫu số liệu có 4 mẫu ( 3; 4N M= = ):

1 2 3 4

0,2 0 0,9 0,5

0 ; 1 ; 0,8 ; 0,5 ;

1 1 0,1 0,5

= = = =

c c c c

c) Xây dựng mạng Hamming lưu trữ các giá trị này.

c) Tính ñáp ứng ñầu ra của mạng khi ta kiểm nghiệm với một số mẫu mới sau

1 2

0,4 0,8

0,2 ; 0,1 ;

0,8 0,7

= =

x x

Trước tiên ta thực hiện chuẩn hóa các véc-tơ ñã cho về các véc-tơ có ñộ dài bằng 1 theo công thức

norm→ =x

x xx

Khi ñó:

1 1 2 2

3 3 4 4

0,2 0,196 0 0

0 0 ; 1 0,707 ;

1 0,981 1 0,707

0,9 0,745 0,5 0,577

0,8 0,662 ; 0,5 0,577

0,1 0,0828 0,5 0,577

norm norm

norm norm

= → = = → =

= → = = → =

c c c c

c c c c ;

Page 98: Bai Giang No-ron-All - Trần Hoài Linh

- 98 -

1 1 2 2

0,4 0,436 0,8 0,749

0,2 0,218 ; 0,1 0,0937 ;

0,8 0,873 0,7 0,656norm norm

= → = = → =

x x x x

Các trọng số ghép nối của lớp MAXNET ñược chọn 1; 0,2.ii ijW W= = − Khi cho

mẫu 1x vào mạng Hamming, ta có 4 ñầu ra của các nơ-rôn lớp tiền xử lý sẽ ñược tính

tuần tự là:

( )( )( )( )

(0)1 1 1 1 1

(0)2 1 2 1 2

(0)3 1 3 1 3

(0)4 1 4 1 4

cos , 0,942

cos , 0,772

cos , 0,542

cos , 0,882

norm norm norm norm

norm norm norm norm

norm norm norm norm

norm norm norm norm

y

y

y

y

= = ⋅ =

= = ⋅ =

= = ⋅ =

= = ⋅ =

x c x c

x c x c

x c x c

x c x c

Quá trình cập nhật các ñáp ứng của lớp MAXNET:

( )(1) (0)

0,503 0,503

0,299 0,299

0,0228 0,0228

0,431 0,431

f f

= ⋅ = =

y W y

( )(2) (1)

0,352 0,352

0,108 0,108

0,224 0

0,266 0,266

f f

= ⋅ = = −

y W y

( )(3) (2)

0,278 0,278

0,0161 0

0,145 0

0,174 0,174

f f

− = ⋅ = = −

y W y

( )(4) (3)

0,243 0,243

0,0903 0

0,0903 0

0,118 0,118

f f

− = ⋅ = = −

y W y

( )(5) (4)

0,219 0,219

0,0723 0

0,0723 0

0,0699 0,0699

f f

− = ⋅ = = −

y W y

Page 99: Bai Giang No-ron-All - Trần Hoài Linh

- 99 -

( )(6) (5)

0,205 0,205

0,0578 0

0,0578 0

0,026 0,026

f f

− = ⋅ = = −

y W y

( )(7) (6)

0,2 0,2

0,0462 0

0,0462 0

0,015 0

f f

− = ⋅ = = − −

y W y

Quá trình hội tụ sau 7 bước lặp và giá trị còn lại khác 0 ứng với ñầu ra số 1 và ta kết luận véc-tơ ñầu vào 1x gần giống mẫu 1c nhất.

Chú ý: ta cũng có thể thay lớp MAXNET bằng một khối tính max trong các giá

trị (0)iy . Tuy nhiên có hai lý do ñể ta vẫn sử dụng lớp MAXNET:

1. Các ñề xuất ban ñầu mang tính chất lịch sử

2. Nếu ta sử dụng mạch số ñể mô phỏng mạch MAXNET thì chỉ cần 7 vòng lặp tương ứng với 7 chu kỳ máy (nếu coi việc nơ-rôn cập nhật các giá trị ñầu ra mất 1 chu kỳ). Kết quả này sẽ nhanh hơn nhiều so với các khối tìm kiếm giá trị max trong 1 bảng cho trường hợp ta có nhiều nơ-rôn ứng với nhiều ñầu ra cần kiểm tra.

Hoàn toàn tương tự, ta tính cho véc-tơ mẫu thứ 2

( )

( )

( )

( )

(0)2 1 2 1 1 1

(0)2 2 2 1 2

(0)3 2 3 1 3

(0)4 2 4 1 4

0,749

0,0937 cos , 0,790

0,656

cos , 0,530

cos , 0,674

cos ,

norm norm norm norm norm

norm norm norm norm

norm norm norm norm

norm norm norm norm

y

y

y

y

= → = = ⋅ =

= = ⋅ =

= = ⋅ =

= = ⋅

x x c x c

x c x c

x c x c

x c x c

∡ 0,865=

(0) (1) (2) (3)

(4) (5)

0,79 0,376 0,223 0,145

0,53 0,0642 0 0

0,674 0,237 0,0557 0

0,865 0,466 0,331 0,275

0,0904 0,0412

0 0

0 0

0,246 0,228

= → = → = → =

→ = → =

y y y y

y y (6)

0

0

0

0,22

→ =

y

Page 100: Bai Giang No-ron-All - Trần Hoài Linh

- 100 -

Quá trình hội tụ sau 6 bước lặp và giá trị còn lại khác 0 ứng với ñầu ra số 4 và ta kết

luận véc-tơ ñầu vào 2x gần giống mẫu 4c nhất.

4.6 Mạng BAM (Bidirectional associative memory)

4.6.1 Cấu trúc của mạng BAM Mạng BAM (Bidirectional associative memory – Bộ nhớ liên kết hai chiều) do

Bart Kosko ñề xuất năm 1987 [Kosko88]. Mạng ñược sử dụng ñể nhớ theo dạng liện kết các mẫu tín hiệu từ một tập hợp (gọi là tập A) với các mẫu tín hiệu của một tập hợp khác (gọi là tập B) và ngược lại. Cũng tương tự như mạng Hopfield, sau khi ñã ñược xây dựng thành công trên các tập mẫu, mạng BAM có khả năng tổng quát hóa và có thể tái tạo lại ñược các ñầu ra tín hiệu chính xác từ các tín hiệu ñầu vào bị nhiễu. Cấu trúc của mạng BAM ñược trình bày trên hình 4.24. Mạng bao gồm 2 lớp với các nơ-rôn ñược nối ñầy ñủ với nhau. Một lớp (thường mô tả là lớp bên trái) ñược gọi là lớp ñầu vào, lớp còn lại (thường là lớp bên phải) ñược gọi là lớp ñầu ra.

Hình 4.24: C4u trúc 2 lLp vLi các ghép n*i hai chi/u c�a m>ng BAM

Véc tơ ñầu vào x ñược coi là (0)x và ñược ñưa vào mạng như trên hình 4.24a.

Khi ñó các tín hiệu này sẽ ñược khuếch ñại bởi ma trận trọng số TW và lan truyền tới

lớp ñầu ra ñể tạo thành tín hiệu ñầu ra ở chu kỳ ñầu tiên (0)y . Sau ñó các tín hiệu từ

ñầu ra lại lan truyền ngược trở lại và ñược khuếch ñại bởi ma trận trọng số W và lan

truyền tới lớp ñầu vào ñể tạo thành tín hiệu ñầu vào ở chu kỳ thứ hai là (1)x . Cứ tiếp tục như vậy, ta sẽ có chu trình

Page 101: Bai Giang No-ron-All - Trần Hoài Linh

- 101 -

( ) ( )

( )

( ) ( ) ( ) ( 1) ( )

( 1) ( 1) ( 1)

T

T

t t T t t t

t t T t

f f

f

+

+ + +

→ = ⋅ → = ⋅

→ = ⋅ →

W W

W W

x y W x x W y

x y W x …

(4.54)

Chu trình này sẽ ñược thực hiện cho ñến lúc ta có các tín hiệu hội tụ, nghĩa là

cho ñến khi ( 1) ( )t t+ =x x và ( 1) ( )t t+ =y y . Ý tưởng cơ bản của mạng BAM về bộ nhớ

liên kết là khi ta có ñầu vào A∈x thì khi mạng hội tụ, ta sẽ thu ñược B∈y tương ứng

và ngược lại khi cho B∈y vào ở phía cổng ra, ta sẽ thu ñược A∈x ở phía cổng vào.

Hay nói cách khác ta có từng cặp véc-tơ ñược lưu trữ trong mạng BAM nhờ việc lựa

chọn ñược các trọng số ghép nối ijW = W phù hợp.

(a) (b)

Hình 4.25: C4u trúc m>ng BAM và giai ño>n ho>t ñ)ng truy/n thhng (a) và truy/n ngSTc (b)

4.6.2 Thuật toán học của mạng BAM ðể xây dựng mạng BAM cho một bộ p mẫu { },i ix y ( 1,2, ,i p= … ) (gồm hai tập

véc-tơ { }iA = x và { }iB = y cho trước), ta cần xây dựng ma trận tương quan cho từng

cặp mẫu tương ứng mà ta muốn ghi nhớ. Ma trận tương quan ñược tính theo công thức

1

pT

i ii=

=∑W X Y (4.55)

trong ñó p – số cặp mẫu cần ghi nhớ.

Cũng giống như mạng Hopfield, các nơ-rôn trong mạng BAM cũng sử dụng hàm truyền ñạt ngưỡng với các tín hiệu ñầu vào và ñầu ra ñược quy về hai giá trị +1 và -1. Thuật toán hoạt ñộng của mạng BAM ñược mô tả theo các khâu chính sau:

Page 102: Bai Giang No-ron-All - Trần Hoài Linh

- 102 -

a) Khâu thứ nhất - Ghi nhớ: Ma trận trọng số W ñược tính chính là ma trận tương quan như cho trong công thức (4.55).

b) Khâu thứ hai – Kiểm tra chất lượng ghi nhớ: Sử dụng ma trận trọng số W vừa tìm ñược, ta cần thử nghiệm lại với tất cả các cặp mẫu từ hai tập A và B ñể kiểm tra xem mạng BAM với ma trận W có tái tạo lại ñược tất cả các cặp mẫu ñã cho hay không. Nếu tất cả các cặp mẫu ñều ñược tái tạo lại thành công thì ta có trường hợp học lý tưởng (không có sai số), nếu có một số cặp mẫu không tái tạo lại thành công thì ta có trường hợp học không lý tưởng.

b) Khâu thứ 3 – Sử dụng cho mẫu mới: Mạng BAM với ma trận trọng số W ñã xác ñịnh ở trên có thể ñược sử dụng cho những mẫu mới (không có trong tập A và B ban ñầu, ñược coi như là những mẫu số liệu bị nhiễu từ số liệu gốc). Khi cho véc-tơ x vào mạng BAM, sau khi mạng thực hiện các lan truyền tín hiệu như (4.54), ta thu ñược kết quả hội tụ về một cặp mẫu ñã biết

( ),BAMk k→x x y

Khi ñó ta sẽ coi kx là tín hiệu gốc ứng với tín hiệu nhiễu x. Các thao tác

hoàn toàn có thể ñược thực hiện tương tự cho véc-tơ nhiễu y ñược ñưa vào từ phía cổng ra của BAM.

4.6.3 Ví dụ minh họa:

Xét tập số liệu 4 cặp mẫu như sau: { } 61 2 3 4, , ,A = ∈x x x x ℝ và

{ } 31 2 3 4, , ,B = ∈y y y y ℝ . Các giá trị của các véc-tơ là:

1

1

1

1;

1

1

1

=

x 2

1

1

1;

1

1

1

− − −

= − − −

x 3

1

1

1;

1

1

1

= −

x 4

1

1

1

1

1

1

− −

= − −

x ;

1

1

1 ;

1

=

y 2

1

1 ;

1

− = − −

y 3

1

1 ;

1

= −

y 4

1

1 ;

1

− = −

y

Khâu thứ nhất: Mạng BAM sẽ có 6 ñầu vào và 3 ñầu ra.

Page 103: Bai Giang No-ron-All - Trần Hoài Linh

- 103 -

Ma trận các trọng số là 4

6 3

1

4 0 4

4 0 4

0 4 0

0 4 0

4 0 4

4 0 4

Ti i

i

×

=

= = ∈

∑W X Y ℝ

Khâu thứ hai: Ta có thể thử nghiệm mạng BAM với từng cặp mẫu ñã có. Xét ví dụ cặp mẫu thứ nhất. Nếu cho 1x vào mạng BAM, ta thu ñược ñáp ứng ñầu ra ở chu

kỳ thứ nhất là:

( )

( )

( )

(0) (0) (0)1

1

(1) (0)

1 1

1 14 4 0 0 4 4

1 1sgn sgn 0 0 4 4 0 0

1 14 4 0 0 4 4

1 1

1 1

16 1

sgn 8 1

16 1

4 0 4

4 0 4

0 4 0sgn sgn

0 4

T

= = → = ⋅ = ⋅

= = =

= ⋅ =

x x y W x

y

x W y ( )(0)1

8 1

8 11

4 11 sgn

0 4 11

4 0 4 8 1

4 0 4 8 1

⋅ = = = =

x x

Như vậy ta có thấy cặp mẫu thứ nhất ( )1 1,x y hoạt ñộng hội tụ với mạng BAM

có các ma trận trọng số ñã xây dựng như trên. Hoàn toàn tương tự ta có thể kiểm nghiệm cả 3 cặp mẫu còn lại cũng hội tụ. Do ñó trường hợp này ta có mạng BAM ñã học lý tưởng với bộ 4 mẫu ñã cho.

Page 104: Bai Giang No-ron-All - Trần Hoài Linh

- 104 -

Khâu thứ ba: Ta sẽ ñưa vào mạng BAM một véc-tơ mới, chưa xuất hiện trong

các tập số liệu học. Ví dụ xét véc-tơ ñầu vào 5

1

1

1

1

1

1

=

x . Véc-tơ này so với véc-tơ 1x

thì chỉ sai lệch 1 vị trí ñầu tiên. Khi ñưa vào mạng BAM ta có các chu trình ñược thực hiện tuần tự như sau:

( )

( )

( )

(0) (0) (0)5

1

(1) (0)

1 1

1 14 4 0 0 4 4

1 1sgn sgn 0 0 4 4 0 0

1 14 4 0 0 4 4

1 1

1 1

12 1

sgn 8 1

12 1

4 0 4

4 0 4

0 4 0sgn sgn

T

− − = = → = ⋅ = ⋅

= = =

= ⋅ =

x x y W x

y

x W y ( )1

(1) (2)1 1

8 1

8 11

4 11 sgn

0 4 0 4 11

4 0 4 8 1

4 0 4 8 1

⋅ = = =

→ → = → =

x

y y x x…

Kết quả mạng BAM ñã hội tụ về cặp mẫu ( )1 1,x y và ta có thể kết luận véc-tơ

ñầu vào 5x giống véc-tơ 1x nhất.

Lấy thêm ví dụ 6

1

1

1.

1

1

1

− −

= − −

x ðưa 6x vào mạng ta có:

Page 105: Bai Giang No-ron-All - Trần Hoài Linh

- 105 -

( )

( )

( )

(0) (0) (0)6

4

(1) (0)

1 1

1 14 4 0 0 4 4

1 1sgn sgn 0 0 4 4 0 0

1 14 4 0 0 4 4

1 1

1 1

8 1

sgn 0 1

8 1

4

sgn sgn

T

− − − − = = → = ⋅ = ⋅ − − − −

− − = = = − −

= ⋅ =

x x y W x

y

x W y ( )4

(1) (2)4 4

0 4 8 1

4 0 4 8 11

0 4 0 4 11 sgn

0 4 0 4 11

4 0 4 8 1

4 0 4 8 1

1

1 .

1

− − − − − ⋅ = = = − − − − −

− → = = → = −

x

y y x x

Kết quả mạng BAM ñã hội tụ về cặp mẫu ( )4 4,x y và ta có thể kết luận véc-tơ

ñầu vào 6x giống véc-tơ 4x nhất.

Ta cũng có thể nhận thấy mạng Hopfield là một trường hợp ñặc biệt của mạng BAM khi số ñầu vào bằng số ñầu ra (ma trận W là ma trận vuông). Và cũng giống như ñối với mạng Hopfield, mạng BAM cũng có giới hạn về số lượng mẫu có thể ghi nhớ. Nếu số lượng mẫu quá lớn, mạng BAM sẽ không thể hội tụ về tất cả các mẫu ñược ñưa ra ban ñầu.

Page 106: Bai Giang No-ron-All - Trần Hoài Linh

- 106 -

Chương 5: Mạng học tự tổ chức kohonen, C-mean

5.1 Mạng Kohonen Mạng Kohonen là mô hình do Teuvo Kohonen ñề xuất vào năm 1989. Mạng còn

có tên gọi là mạng tự tổ chức (self-organising feature maps) và là một mô hình ñặc trưng cho một nhóm các mô hình hoạt ñộng theo nguyên tắc phân nhóm các tín hiệu ñầu vào dựa trên cạnh tranh về ñộ tương thích.

Ý tưởng của việc phân nhóm và tự tổ chức xuất phát từ thực tế não bộ của chúng ta là một hệ thống rất phức tạp. Cấu trúc của não bộ không thống nhất, bao gồm nhiều vùng khác nhau. Các nghiên cứu về y sinh hiện nay ñã tạm chỉ ra rằng mỗi một vùng của não bộ có cấu trúc khác nhau, số lượng nơ-rôn và cách kết nối giữa chúng khác nhau, ñồng thời mỗi vùng lại chịu trách nhiệm khác nhau phục vụ cho con người. Ví dụ như có những vùng chịu trách nhiệm về các xử lý hình ảnh, xử lý chuyển ñộng, xử lý âm thanh,… và những vùng này nhận tín hiệu truyền về từ các “cảm biến” khác nhau của con người. Ta nói rằng mỗi một dạng tín hiệu ñặc trưng của con người sẽ ñược chuyển vào một vùng ñặc trưng tương ứng bên trong não bộ. Do ñó khi xây dựng mô hình toán học của mạng Kohonen, ta có tín hiệu ñầu vào thuộc về một không gian (mẫu số liệu) cho trước. Khác với trường hợp mạng MLP, mạng Kohonen hoạt ñộng theo nguyên tắc “tự tổ chức”, có nghĩa là mạng chỉ hoạt ñộng với véc-tơ ñầu vào ix mà

không có các mẫu ñầu ra id tương ứng. Trong bài toán tự tổ chức, khi cho trước một

tập hợp các mẫu số liệu và số lượng trọng tâm M, ta cần tìm vị trí của M trọng tâm ic .

Các mẫu và các trọng tâm ñược biểu diễn dưới dạng véc-tơ có cùng số chiều. ðầu vào ta có một bộ số liệu gồm p véc-tơ ña chiều:

[ ]1 2, , , ; 1Ni i i iNx x x i p= ∈ = →x … ℝ .

Comment [THL2]: Bổ sung khái niệm tự tổ chức Các mạng noron cạnh tranh ñược sử dụng một cách rộng rãi ñể sắp xếp và phân loại dữ liệu trên cơ sở của các vecto ñầu vào x ñưa vào mạng noron.

Page 107: Bai Giang No-ron-All - Trần Hoài Linh

- 107 -

Hình 5.1: Phân b* s* li�u ví d= trên không gian hai chi/u

Ví dụ trên hình 5.1 là một bộ các ñiểm trên mặt phẳng hai chiều có xu hướng tập trung thành 3 nhóm.

Nhiệm vụ phân nhóm các số liệu này thành M nhóm, mỗi nhóm ñược ñặc trưng bởi một

trọng tâm (centre) 1 2, , , ; 1Nj j j jNc c c j p= ∈ = → c … ℝ . Ví dụ phân chia và nhóm các số

liệu từ hình 5.1 thành 3 nhóm ta có kết quả như hình 5.2.

Page 108: Bai Giang No-ron-All - Trần Hoài Linh

- 108 -

Hình 5.2: Các s* li�u ñSTc chia thành 3 nhóm vùng (ñXc trSng b_i các ñSang biên và các tr'ng tâm ‘*’)

Với bài toán thuộc dạng “tự tổ chức” (self-organizing) thì ta chỉ có thông tin về x, chứ không có các thông tin khác. Khi ta có các mẫu số liệu ñược biểu diễn dưới dạng các véc-tơ thì mức ñộ “giống nhau” giữa các mẫu thường ñược xác ñịnh thông qua khoảng cách giữa các véc-tơ. Hai véc-tơ có khoảng cách nhỏ sẽ ñược ñánh giá là giống nhau hơn là trường hợp khoảng cách giữa chúng lớn. Các trọng tâm của các nhóm ñược chủ yếu xác ñịnh trên nguyên tắc: “các véc-tơ có khoảng cách gần nhau sẽ ñược ưu tiên ghép vào cùng một nhóm”. Thước ño khoảng cách giữa các véc-tơ chủ yếu là sử dụng công thức Ơ-clít:

2

1

, : ( , ) ( )N

Ni i

i

d x c=

∈ = − = −∑x c x c x cℝ (5.1)

Tuy nhiên trong các công trình về mạng tự tổ chức ta cũng có thể gặp các công thức tính khoảng cách khác như [Deza09]:

1. Khoảng cách tích vô hướng:

( , ) 1 1 cos( , )d = − ⋅ = − ⋅ ⋅x c x c x c x c (5.2)

2. Khoảng cách Manhattan:

1

( , )N

i ii

d x c=

= −∑x c (5.3)

3. Khoảng cách Chebyshev:

1

( , ) max i ii N

d x c= →

= −x c (5.4)

4. Khoảng cách Minkowski:

1

( , )N

mm i i

i

d x c=

= −∑x c (5.5)

Trong trường hợp ta có M trọng tâm , 1i i M= →c và một véc-tơ x thì trong

quá trình hoạt ñộng cạnh tranh, trọng tâm chiến thắng là trọng tâm có khoảng cách ngắn nhất tới véc-tơ x ñang xét.

win1min i

i M= →− = −x c x c (5.5)

ðể có dạng biểu diễn tương tự như các mạng nơ-rôn khác, ta thường sử dụng mô hình như trên hình 5.3 trong ñó các giá trị thành phần ijc ( 1, , ; 1, ,i M j N= =… … ) của

Page 109: Bai Giang No-ron-All - Trần Hoài Linh

- 109 -

M trọng tâm ic ñược lưu dưới dạng giá trị của các trọng số ghép nối giữa ñầu vào xj và

trọng tâm ic . Mạng trên hình 5.3 sẽ có ñầu ra của trọng tâm chiến thắng sẽ bằng 1, các

trọng tâm còn lại sẽ bằng 0.

Hình 5.3: C4u trúc m>ng Kohonen kinh ñi0n

ðây là cấu trúc mạng truyền thẳng một lớp. Tất cả N ñầu vào ñược nối với tất cả M ñầu ra thông qua trọng số ijc . Số lượng ñầu vào bằng với số chiều của véc-tơ x,

trong khi số lượng ñầu ra bằng với số lượng của nhóm mà dữ liệu ñược chia thành. Tọa ñộ thứ j của trọng tâm thứ i ijc ñược coi là hệ số ñặc trưng của kênh nối ñầu vào thứ j

(là jx ) tới trọng tâm. Hệ số ñặc trưng này trong các nghiên cứu về mạng nơ-rôn

thường ñược gọi là trọng số ghép nối (connection weight) hay ñơn giản là trọng số

(weight). Véc-tơ ñầu vào [ ]1 2, , , Nx x x=x … và [ ]1 2, , , Nc c c=c … thường ñược chuẩn

hóa về ñộ dài 1 (tuy nhiên ñây là yêu cầu không bắt buộc).

ðể dễ dàng mô tả quá trình hoạt ñộng của mạng, ngoài khái niệm khoảng cách và khái niệm chiến thắng ta còn dùng khái niệm “mức ñộ kích hoạt” của trọng tâm thứ j. Mức ñộ kích hoạt ñược xác ñịnh trên cơ sở một hàm nghịch biến với khoảng cách giữa trọng tâm ñang xét và véc-tơ ñầu vào ñang xét. Khoảng cách càng nhỏ thì mức ñộ kích hoạt càng lớn. Như vậy trọng tâm chiến thắng là trọng tâm có mức ñộ kích hoạt lớn nhất. Một số hàm kích hoạt thường ñược sử dụng là [25,26]:

1. Hàm chuông:

2

2

( , )( ) exp

dactivation

σ

= −

c

x cx (5.6)

2. Hàm Gauss mở rộng:

2

1( )

1b

activation

σ

=−

+c x

x c

(5.7)

3. Hàm tam giác:

Page 110: Bai Giang No-ron-All - Trần Hoài Linh

- 110 -

0

( ) 11

khi aactivation

khi aa

− >

= − − − ≤

c

x cx

x c x c (5.8)

Mỗi một trọng tâm sẽ xác ñịnh một vùng hoạt ñộng của mình, ñó là vùng tập hợp các ñiểm trong không gian mà khoảng cách tới trọng tâm ñó là bé nhất so với khoảng cách tới các trọng tâm khác.

Ví dụ trên hình 5.4a với 3 trọng tâm, ta thấy không gian ñược chia thành 3 vùng như trên hình 5.4b. Các phân chia này (còn ñược gọi là phân chia Voronoi do tác giả Voronoi ñề xuất lần ñầu) có các ñường biên giới là các ñường trung trực giữa các cặp ñiểm trọng tâm (nếu ta sử dụng công thức khoảng cách Ơ-clít).

(a) (b)

Hình 5.4: Không gian vLi 3 tr'ng tâm ñSTc xác ñnh (a) và các vùng “chiFn thWng” c�a mzi tr'ng tâm xác ñnh theo công th^c {-clít và ñ- th Voronoi (b)

Một phân chia trọng tâm tốt là trường hợp ta có các trọng tâm ñược ñặt giữa các vùng có mật ñộ véc-tơ các ñiểm ñầu vào cao. Trên hai hình 5.5 là ví dụ các phân bố như vậy. Hình 5.5a có các ñiểm ñầu vào (dấu ‘.’) phân bố theo các cạnh của hình vuông, các trọng tâm (dấu ‘o’) cũng nằm dọc theo các cạnh ñó. Hình 5.5b có các ñiểm ñầu vào (dấu ‘.’) phân bố theo các hình dạng 2-D và ta cũng dễ dàng nhận thấy các trọng tâm (dấu ‘ i ’) cũng ñược phân bố như vậy.

Page 111: Bai Giang No-ron-All - Trần Hoài Linh

- 111 -

Hình 5.5: Ví d= phân b* các tr'ng tâm phân tán theo các vùng s* li�u

Ngoài việc ñịnh nghĩa các véc-tơ trọng tâm, Kohonen còn ñưa ra ñề xuất về mạng lưới liên kết ảo giữa các trọng tâm này ñể hình thành “lưới trọng tâm”. Theo ñó, mỗi mạng Kohonen sẽ có một hàm ñịnh nghĩa liên kết giữa các trọng tâm. Hai trọng tâm có liên kết với nhau ñược gọi là “hàng xóm trực tiếp”, hay còn gọi là hàng xóm bậc 1. Hai trọng tâm ci và cj không có liên kết trực tiếp nhưng nếu tồn tại một chuỗi các trọng tâm trung gian kjc sao cho 0 1, , ,i k k kn j= =c c c c c… ñồng thời kjc và , 1k j+c là

hàng xóm bậc 1 với mọi 0, , 1j n= −… thì ci và cj ñược gọi là hàng xóm gián tiếp bậc n

(với n-1 là số lượng trọng tâm trung gian nhỏ nhất nối giữa ci và cj). Ta ký hiệu hàm

ñịnh nghĩa bậc liên kết hàng xóm giữa hai trọng tâm là ( ),i jG c c .

ðể thuận tiện cho việc lập trình mô phỏng, ta thường sử dụng các mạng phân bố theo lưới hai chiều với các cấu trúc hình chữ nhật, hình tam giác, hình lục giác,… như trên hình sau:

Page 112: Bai Giang No-ron-All - Trần Hoài Linh

- 112 -

(a) (b)

(c)

Hình 5.6: M)t s* c4u trúc liên kFt lSLi gila các tr'ng tâm trong m>ng Kohonen: a) LSLi vuông, b) LSLi tam giác, c) LSLi l=c giác

Khi các trọng tâm ñược liên kết với nhau theo lưới và nếu một trọng tâm dịch chuyển thì sẽ kéo theo các trọng tâm khác cũng dịch chuyển, nhưng mức ñộ dịch chuyển sẽ tỷ lệ nghịch với bậc hàng xóm giữa mỗi trọng tâm với trọng tâm dịch chuyển chính. Các hàng xóm bậc 1 sẽ dịch chuyển nhiều nhất, các hàng xóm bậc cao hơn sẽ dịch chuyển ít hơn.

Hình 5.7: Ví d= biFn d>ng lSLi các tr'ng tâm khi có 1 tr'ng tâm ñSTc dch chuy0n chính

Page 113: Bai Giang No-ron-All - Trần Hoài Linh

- 113 -

5.2 Quá trình học của mạng Kohonen Với mô hình hoạt ñộng như trên, mạng Kohonen ñược xây dựng từ một bộ số

liệu ban ñầu thông qua quá trình học ñể xác ñịnh các trọng tâm của các vùng số liệu. Cũng tương tự như các quá trình học của các mạng nơ-rôn khác, hàm mục tiêu của quá trình học mạng Kohonen thường là một hàm phi tuyến và việc tối ưu hóa hàm mục tiêu này sẽ ñược thực hiện bởi các thuật toán lặp. Trong mạng Kohonen, ta cần xác ñịnh vị

trí của M trọng tâm Nj ∈x ℝ ( 1,2, ,j M= … ) khi ñược cho trước một tập hợp p ñiểm

số liệu mẫu Ni ∈x ℝ ( 1,2, ,i p= … ) và số trọng tâm M. Các thuật toán xác ñịnh vị trí

này ñược gọi là các thuật toán học của mạng Kohonen và ñược chia thành hai nhóm chính: các thuật toán học trực tuyến (online) và các thuật toán học ngoại tuyến (offline). ðồng thời các trọng tâm còn ñược gọi là các nơ-rôn do việc tham gia vào quá trình học ñể ñiều chỉnh các thông số của mình.

5.2.1 Các thuật toán phân nhóm trực tuyến Các giải pháp noron cổ ñiển cho vấn ñề phân nhóm, ñã ñược bắt ñầu trong các

công trình của Kohonen [10], thường áp dụng cách tiếp cận trực tuyến, trong ñó quá trình cập nhật của các trọng số ñược thực hiện sau mỗi quá trình biểu diễn của mỗi véc-tơ dữ liệu ñầu vào x. Với mục ñich tìm ra các nhóm số liệu tập trung và xác ñịnh trọng tâm của các vùng số liệu ñó, trong quá trình học, các noron sẽ „tự” sắp xếp (ñược hiểu theo nghĩa là chỉ sử dụng các giá trị x chứ không cần các giá trị ñích d như trong trường hợp học có hướng dẫn).

ðầu vào của các thuật toán học cho mạng Kohonen bao gồm 1 tập hợp p mẫu số

liệu Ni ∈x ℝ với 1,2, ,i p= … , và số lượng các véc-tơ trọng tâm cần xác ñịnh M. Kết

quả của quá trình học là vị trí của M trọng tâm Ni ∈c ℝ với 1,2, ,i M= … .

a. Thuật toán WTA

Thuật toán trực tiếp ñầu tiên là thuật toán WTA (Winner Takes All) ñược thực hiện theo trình tự các bước như sau:

Bước 1: Khởi ñộng với chỉ số mẫu số liệu i =1.

Bước 2: Tuần tự với các giá trị 1,2, ,i p= … ta xử lý véc-tơ ix : xác ñịnh các

khoảng cách từ véc-tơ ix tới các nơ-rôn trọng tâm jc từ ñó xác ñịnh nơ-rôn chiến

thắng WN là nơ-rôn có khoảng cách ngắn nhất tới véc-tơ ix .

Bước 3: Cập nhật các trọng số (tọa ñộ) của nơ-rôn chiến thắng theo hướng

dịch chuyển về gần phía véc-tơ ñầu vào ix .

Bước 4: Tăng i lên 1 vào quay lại bước 2.

Page 114: Bai Giang No-ron-All - Trần Hoài Linh

- 114 -

Hình 5.8: V trí 4 véc-t# ñ?u vào x1, x2, x3, x4 và hai tr'ng tâm c1, c2. Khi xét véc-t# x1 thì kho$ng cách d11<d12 nên tr'ng tâm c1 chiFn thWng.

Hình 5.9: Và tr'ng tâm c1 ñSTc dch chuy0n v/ phía véc-t# x1 còn tr'ng tâm c2 ñ^ng yên

Lặp lại trình tự này nhiều lần ñưa mạng tới một trạng thái ñược sắp xếp, trong ñó

mỗi noron biểu diễn một nhóm dữ liệu riêng biệt. Mô tả minh hoạ một bước học cho

trường hợp 4 véc-tơ mẫu và hai trọng tâm ñược thể hiện trên hình 2.6 và hình 2.7.

Thuật toán này ñược gọi là WTA do khi xử lý 1 mẫu số liệu, chỉ duy nhất có nơ-

rôn chiến thắng là ñược dịch chuyển về phía gần với số liệu ñang xét còn toàn bộ các

nơ-rôn còn lại ñứng yên.

Trong thuật toán trực tuyến chuẩn, chúng ta cập nhật trọng số của nơ-rôn chiến

thắng WN theo luật sau:

Page 115: Bai Giang No-ron-All - Trần Hoài Linh

- 115 -

( 1) ( ) ( )( )W W W

t t tiN N Ntη+ = + − c c x c (5.9)

trong ñó: t – chỉ số thời gian rời rạc, ( )W

tNc – véc-tơ trọng số của nơ-rôn chiến thắng

NW, ( )tη – giá trị của bước học tại thời ñiểm t.

Hệ số bước học ( )tη ñược chọn trong khoảng giá trị ( )0,1 (0 tương ứng với

không dịch chuyển ( 1) ( )W W

t tN N+ =c c , 1 – dịch chuyển hoàn toàn

WNc về phía ix ”

( )W

tiN =c x ). ðể quá trình học ổn ñịnh, ta sẽ sử dụng các hệ số học giảm dần theo thời

gian. Khi hệ số học bằng 0 thì quá trình học cũng dừng lại.

b. Thuật toán WTM (Winner Takes Most):

Thuật toán WTA có ưu ñiểm nổi bật là ñơn giản, chỉ cần xử lý tuần tự từng số liệu và từng trọng tâm. Nhược ñiểm chính của WTA là có thể xảy ra hiện tượng một số nơ-rôn không bao giờ chiến thắng và sẽ không phải giờ ñược dịch chuyển vị trí trong quá trình học. ðể khắc phục nhược ñiểm, ta có thể sử dụng thuật toán WTM, trong ñó ngoài nơ-rôn chiến thắng, các nơ-rôn lân cận với nơ-rôn chiến thắng cũng sẽ ñược dịch chuyển về hướng các số liệu, nhưng với mức ñộ ít hơn. Giải pháp này sẽ làm giảm ñáng kể khả năng một nơ-rôn không ñược dịch chuyển trong toàn bộ quá trình học.

Trọng số của các nơ-rôn trong thuật toán WTM

( 1) ( ) ( ) ( , )[ ( ) ( )]Wj j j j N jt t t G t tη+ = + −c c c c x c (5.10)

Các công thức khác nhau trong việc lựa chọn hàm lân cận ( , ( ))jG tc x dẫn tới

nhiều thuật toán học khác nhau. Một thuật học cơ bản là thuật toán Kohonen với hàm Gaussian, trong ñó:

2

2

( , )( , ) exp j Nw

j

dG

σ

= −

c cc x (5.11)

trong ñó 2 ( , )jd c x là khoảng cách Euclidean giữa véc-tơ trọng số của noron thứ j và

noron thắng WN và σ − hệ số vùng lân cận và sẽ giảm theo quá trình học.

c. Thuật toán Neural Gas

Một thuật toán mạnh khác ñược gọi là thuật toán khí nơ-rôn, trong ñó hàm lân cận ñược ñịnh nghĩa theo khoảng cách giữa vecto ñầu vào x và vecto trọng số của noron. Trong cách tiếp cận này, chúng ta sắp xếp các noron theo những khoảng cách này, tức là

Page 116: Bai Giang No-ron-All - Trần Hoài Linh

- 116 -

1 2 1... M Md d d d−< < < (5.12)

trong ñó ( )i m id = −x c với 1 .i M= →

Khi ñó, giá trị của hàm lân cận ñược xác ñịnh như sau:

( )

( , )m j

jG e λ−

=c x (5.13)

với m(i) là vị trí của noron thứ i sau khi phân loại và λ là tham số giảm theo thời gian

max/

minmax

max

( )k k

λ λλ

=

(5.14)

Hệ số học η trong tất cả các cách tiếp cận thường giảm theo thời gian hoặc theo hàm

mũ hoặc tuyến tính. Thuật toán khí nơ-ron ñược ñánh giá là một trong những phương

pháp hiệu quả nhất ñào tạo mạng Kohonen, cho phép thu ñược sự sắp xếp tốt mạng.

5.2.2 Thuật toán phân nhóm ngoại tuyến

a. Thuật toán K-mean

Chế ñộ học ngoại tuyến (offline) còn ñược gọi là chế ñộ học toàn bộ (batch-mode)

của thuật toán tự tổ chức, cũng thường ñược gọi là thuật toán K-trung bình, ñưa ra một cơ

chế ñơn giản ñể xác ñịnh vị trí các trọng tâm của các vùng số liệu. Thuật toán K-trung

bình chia một tập hợp các véc-tơ x thành các K nhóm và tìm trọng tâm trong mỗi nhóm

theo tiêu chí tối thiểu hóa hàm chi phí ño ñộ không ñồng dạng hay ño khoảng cách. Giả

ñịnh khoảng cách Ơc-lít ñược sử dụng, ta có hàm chi phí toàn phần có thể ñược xác

ñịnh như sau

2

1 k i

K

k ii

E= ∈

= −

∑ ∑x C

x c (5.15)

Thuật toán này có thể ñược tóm tắt như sau:

3. Chọn một tập các nhóm khởi ñầu c1, c2,…cM, tùy ý.

3. ðối với từng mẫu số liệu ix , ta xác ñịnh trọng tâm jc gần nhất ñể xếp ix

vào nhóm thứ j ñó.

i j∈x c nếu 1

mini j i kk M= →

− = −x c x c .

3. ðối với từng nhóm thứ 1,2, ,j M= … , tính toán các nguyên mẫu nhóm mới

là trung bình cộng của tất cả các véc-tơ trong nhóm j

Page 117: Bai Giang No-ron-All - Trần Hoài Linh

- 117 -

1

i j

newj i

jn ∈

= ∑x C

c x (5.16)

trong ñó nj chỉ số lượng véc-tơ xi ñược gán với nhóm thứ j (1

M

ii

n p=

=∑ )

3. Nếu còn có ít nhất một trong số M trọng tâm có tọa ñộ ñược thay ñổi ñáng

kể trong quá trình cập nhật trên (tương ñương với ñiều kiện

1, ,max new

j jj M

ε=

− >c c…

với ngưỡng ε chọn trước) thì quay trở lại bước 2 ñể

tiếp tục ñiều chỉnh các trọng tâm. Ngược lại thì dừng quá trình học.

Hình 5.10: Trong bSLc tính toán trên, các véc t# x1 và x2 thu)c v/ nhóm c1, các véc-t# x3 và x4 thu)c v/ nhóm c2, do ñó trong quá trình cZp nhZt, c1 s} dch chuy0n v/ phía trung ñi0m

c�a x1 và x2 còn c2 s} dch chuy0n v/ phía trung ñi0m c�a x3 và x4.

b) Thuật toán C-mean

Trong thuật toán C-mean, các trọng tâm ñược xác ñịnh với sự hỗ trợ của một ñại lượng iju mới ñược gọi là giá trị phụ thuộc của véc-tơ jx vào trọng tâm ic . Theo thuật

toán Kohonen kinh ñiển thì mỗi một véc-tơ mẫu số liệu jx ñược phân chia thuộc về 1

nhóm duy nhất mà có trọng tâm ic gần nhất tới véc-tơ ñó, khi ñó thì giá trị phụ thuộc

của một véc-tơ jx tới mỗi trọng tâm ic chỉ có thể nhận một trong hai giá trị là 0 hoặc

1. Cụ thể:

Page 118: Bai Giang No-ron-All - Trần Hoài Linh

- 118 -

( )2 2

1 n :,

0 n

j i j kij j i

k xu f

∀ − ≤ −= =

x c cx c

Õu

Õu ng−îc l¹i (5.17)

Trong thuật toán C-mean các tác giả ñã làm “mềm” hóa yêu cầu trên trở thành giá trị phụ thuộc của một véc-tơ jx tới mỗi trọng tâm ic có thể nhận các giá trị thực

trong ñoạn [0,1] và tỷ lệ nghịch với khoảng cách giữa mẫu số liệu tới trọng tâm. ðiều này có nghĩa là một mẫu số liệu jx có thể thuộc về nhiều trọng tâm nhưng hệ số phụ

thuộc vẫn phải thỏa mãn hai ñiều kiện sau:

0. Tổng hệ số phụ thuộc của một mẫu tới tất cả các trọng tâm bằng 1:

1

1M

iji

u=

=∑ (5.18)

với tất cả các ñiểm dữ liệu 1,2, , .j p= …

0. Hệ số phụ thuộc tỷ lệ nghịch với khoảng cách: trọng tâm gần nhất sẽ tương

ứng với hệ số phụ thuộc cao nhất.

Từ tính chất 1 (công thức (5.18)) ta dễ dàng có

1 1 1 1

p pM M

ij iji j j i

u u p= = = =

= =∑∑ ∑∑ (5.19)

Thuật toán học C-mean có hàm mục tiêu của quá trình học ñược ñịnh nghĩa như sau [Dunn73,Bezdek81]:

2

1

K nmij i j

i j

E u=

= −∑∑ c x (5.20)

với [ ]1,m∈ ∞ . ðể tìm giá trị cực tiểu của hàm mục tiêu cho theo (5.20), ta sử dụng

phương pháp tối ưu hóa dựa trên hàm Lagrange LE, ñược xác ñịnh như sau

2

1 1 1 1

1p pM M

mE ij i j j ij

i j j i

L u uλ= = = =

= − + −

∑∑ ∑ ∑c x (5.21)

trong ñó jλ là các nhân tử Lagrange cho các ràng buộc của phương trình trên. Các

ñiều kiện cần thiết ñể tối thiểu hàm Lagrange như sau [Dunn73,Bezdek81]

1

1

p mij jj

i p mijj

u

u

=

=

=∑∑

xc (5.22)

Page 119: Bai Giang No-ron-All - Trần Hoài Linh

- 119 -

1/( 1)

1

1ij m

M ijk

kj

ud

d

=

=

(5.23)

trong ñó 2

ij i jd = −c x - khoảng cách giữa trọng tâm ci và véc-tơ dữ liệu xj. Từ ñó ta có, thuật

toán phân nhóm C-trung bình mờ có thể ñược phát biểu như sau:

0. Khởi tạo ngẫu nhiên các vị trí của các trọng tâm ic trong miền xác ñịnh của

các mẫu số liệu.

0. Xác ñịnh ma trận U từ công thức (5.23).

0. Tìm M trọng tâm ic sử dụng phương trình (5.22).

0. Tính toán hàm mục tiêu theo (5.20). Nếu giá trị của E nhỏ hơn một ngưỡng cho trước hoặc các giá trị trọng tâm mới thay ñổi nhỏ hơn mức ngưỡng cho trước sau 1 vòng lặp thì sẽ dừng thuật toán, ngược lại ta sẽ quay lại bước 2 với các vị trị mới của trọng tâm vừa xác ñịnh ñược.

Quá trình này ñược lặp lại nhiều lần sẽ dẫn tới một cực tiểu nào ñó của E, tuy nhiên, nó không nhất thiết là ñạt tới giá trị cực tiểu toàn cục. Với các giá trị khởi tạo ngẫu nhiên ban ñầu khác nhau ta có thể thu ñược các kết quả cuối cùng hoàn toàn khác nhau. Vì vậy trong các công trình nghiên cứu ta có thể gặp nhiều ñề xuất về ñiều kiện dừng hoặc một số tiêu chí bổ sung khác ñể ñánh giá chất lượng của việc phân nhóm ñể từ ñó có thể chọn ñược kết quả phù hợp.

(a) (b)

Page 120: Bai Giang No-ron-All - Trần Hoài Linh

- 120 -

(c) (d)

Hình 5.11: KFt qu$ h'c m>ng Kohonen vLi 30 tr'ng tâm theo thuZt toán C-means: (a) Sau 1 bSLc h'c (b) Sau 3 bSLc h'c; (c) Sau 5 bSLc h'c; (d) Sau 10 bSLc h'c

Ví dụ hoạt ñộng của thuật toán trên ñược trình bày trên hình 7 với 3 trọng tâm ñược khởi tạo trùng tại một ñiểm. Ta thấy sau khoảng 20 vòng lặp, các trọng tâm ñã dịch chuyển về các trung ñiểm của vùng tập trung dữ liệu và hội tụ tại ñó.

(a) (b)

Comment [THL3]:

Page 121: Bai Giang No-ron-All - Trần Hoài Linh

- 121 -

(c) (d)

Hình 5.12: KFt qu$ h'c m>ng Kohonen vLi 30 tr'ng tâm có liên kFt m>ng lSLi chl nhZt theo thuZt toán K-means: (a) Sau 1 bSLc h'c (b) Sau 3 bSLc h'c; (c) Sau 10 bSLc h'c; (d)

Sau 100 bSLc h'c

(a) (b)

Page 122: Bai Giang No-ron-All - Trần Hoài Linh

- 122 -

(c) (d)

Hình 5.13: KFt qu$ h'c m>ng Kohonen vLi 30 tr'ng tâm có liên kFt m>ng lSLi tam giác theo thuZt toán K-means: (a) Sau 1 bSLc h'c (b) Sau 3 bSLc h'c; (c) Sau 10 bSLc h'c; (d)

Sau 100 bSLc h'c

5.3 Ví dụ ứng dụng mạng Kohonen

(a) (b)

Hình 5.14: Mbu phân b* s* li�u và ba tr'ng tâm tS#ng ^ng (a) cùng vLi ba vùng phân lo>i và kFt qu$ phân lo>i t\ng vùng (b)

Một trong những ứng dụng ñiển hình của mạng Kohonen là sử dụng trong nhận dạng và phân loại ñối tượng ñầu vào. Mỗi một trọng tâm jc ñặc trưng cho một nhóm

hay một tính chất nào ñó. Ví dụ như trọng tâm 1c ñặc trưng cho vùng các véc-tơ của

Page 123: Bai Giang No-ron-All - Trần Hoài Linh

- 123 -

nhóm ‘o’ thì khi véc-tơ ñầu vào x gần với trọng tâm 1c nhất, ta sẽ kết luận x có tính

chất ‘o’ và thuộc về nhóm này.

a. Xác ñịnh mẫu cho số liệu 2 chiều

Ta bắt ñầu với một ví dụ ñơn giản là các ñiểm phân bố trên không gian hai chiều

theo một hàm nào ñó. Trên hình 5.15 ta có 101 ñiểm ñầu vào ñược phân bố dọc theo

hình sin với giá trị bước ñều 0,1.x∆ =

Hình 5.15: Mbu 101 ñi0m s* li�u 2-D phân b* theo hàm sin

Sau khi có tập hợp ñiểm, ta tiến hành phân thành 30 nhóm. Kết quả của quá trình

học bằng thuật toán ngoại tuyến C-mean ñược trình bày trên hình 5.16, theo ñó ta thấy

các trọng tâm (ñược biểu diễn bằng ‘⊕ ’) cũng ñược phân bố ñều dọc theo các khu vực

chứa các véc-tơ ñầu vào.

Comment [THL4]: Vieets thêm

Page 124: Bai Giang No-ron-All - Trần Hoài Linh

- 124 -

Hình 5.16: KFt qu$ phân nhóm và các tr'ng tâm (‘*’) cho s* li�u t\ hình 2.10

Ta lấy ví dụ thứ hai với các số liệu của bài toán xoáy kinh ñiển (Spiral Problem) trong ñó các ñiểm số liệu ñầu vào ñược phân bố dọc theo các ñường xoáy trôn ốc.

Hình 5.17: Mbu s* li�u chujn spiral

Page 125: Bai Giang No-ron-All - Trần Hoài Linh

- 125 -

Với tập hợp ñiểm như trên hình 5.17, ta tiến hành phân thành 40 nhóm. Kết quả

của quá trình học bằng thuật toán ngoại tuyến C-mean ñược trình bày trên hình 5.18,

theo ñó ta thấy các trọng tâm (ñược biểu diễn bằng ‘⊕ ’) cũng ñược phân bố ñều dọc

theo các khu vực chứa các véc-tơ ñầu vào.

Hình 5.18. KFt qu$ phân nhóm và các tr'ng tâm (‘*’) cho s* li�u t\ hình 5.17

b) Xác ñịnh mẫu cho số liệu ña chiều

Mở rộng cho trường hợp các mẫu số liệu ña chiều, ta sẽ lấy ví dụ với trường hợp ứng

dụng mạng Kohonen trong xử lý ảnh. Với một ảnh ñầu vào cho trước, ta sẽ có một ma trận

ñiểm ảnh ijA = mã màu tại pixel (ñiểm ảnh) có tọa ñộ ( ),i j . ðể tìm các vùng màu ảnh

ñặc trưng, ta chia nhỏ ảnh ñầu vào thành các ảnh con có cùng kích thước sR sC× , khi ñó

từ ảnh ñầu vào kích thước R C× ta sẽ thu ñược tR tC

psR sC

= ⋅ ảnh con. Chia tập hợp này

thành M nhóm và xác ñịnh trọng tâm của các nhóm ta sẽ tìm ñược các vùng ảnh con ñặc

trưng của ảnh ñầu vào. Trên hình 5.19 là một ví dụ của ảnh ñầu vào với kích thước

600 800× . Ảnh này ñược cắt thành các ảnh con kích thước 20 20× . Ta có tập ñầu vào

30 40 1200⋅ = ảnh con. Coi mỗi ảnh con này là một véc-tơ có 20 20 400⋅ = thành

phần, ta triển khai thuật toán học mạng Kohonen ñể tìm 40 trọng tâm của mạng. Kết quả

của quá trình học ñược thể hiện trên hình 5.20.

Page 126: Bai Giang No-ron-All - Trần Hoài Linh

- 126 -

Hình 5.19: �nh ñ?u vào ñSTc s� d=ng ñ0 ki0m tra m>ng Kohonen

Hình 5.20: 40 $nh con ñXc trSng cho tZp 1200 $nh con c�a $nh ñ?u vào

Page 127: Bai Giang No-ron-All - Trần Hoài Linh

- 127 -

Chương 6: Lô-gíc mờ và mạng nơ-rôn lô-gích mờ

Lô-gic mờ (Fuzzy Logic) là một lĩnh vực nghiên cứu ñược bắt ñầu phát triển khá muộn so với chuyên ngành trí tuệ nhân tạo. Lô-gic mờ bắt ñầu ñược các nhà nghiên cứu chú ý tới nhiều hơn sau các công trình của Lofti A. Zadeh từ năm 1965 (Sau ñó ông hoàn thiện công trình của mình và ñưa ra lý thuyết về lô-gic mờ vào năm 1973). Vào giữa thập kỷ 70 của thế kỷ trước Ebrahim Mamdani ñã ñưa ra thiết kế một bộ ñiều khiển ñộng cơ hơi nước sử dụng lô-gic mờ. Tuy nhiên lĩnh vực này chỉ thực sự bùng nổ sau khi tại Nhật Bản hàng loạt các giải pháp sử dụng lô-gic mờ ñược ñưa vào ứng dụng thực tế vào thập kỷ 80 của thế kỷ trước, ví dụ như trong hệ thống ñiều khiển tàu ñiện ngầm, trong các bộ ñiều khiển quạt, ñiều hòa, máy giặt,… Ban ñầu các hệ thống sử dụng lô-gic mờ ñược xây dựng chủ yếu dựa trên các kinh nghiệm của các chuyên gia, trong ñó các thông số của hệ thống ñược lựa chọn theo kinh nghiệm và ñược cài ñặt cố ñịnh. Tuy nhiên những giải pháp như vậy thường là giải pháp “cứng” và không thích nghi ñược linh hoạt cho nhiều trường hợp ứng dụng khác nhau. Vì vậy người ta ñã sử dụng ý tưởng xây dựng các thuật toán học cho các hệ mờ ñể cho phép các thông số của hệ mờ có thể ñược ñiều chỉnh thích nghi theo các mẫu tín hiệu cho trước. Từ ñó ta có khái niệm các hệ thống sử dụng lô-gic mờ có ñi kèm theo thuật toán học. Các hệ thống như vậy còn ñược gọi là các mạng nơ-rôn lô-gic mờ. Chương 6 sẽ trình bày một cách tóm tắt một số khái niệm cơ bản về lô-gic mờ và một số mạng nơ-rôn lô-gic mờ cơ bản. Do khuôn khổ nội dung không thể trình bày quá dài nên ta sẽ chỉ tạm tập trung cho các phần kiến thức của lô-gic mờ có liên quan trực tiếp tới các mô hình mạng nơ-rôn lô-gic mờ ñược giới thiệu ở phần tiếp theo. Các bạn ñọc có thể tìm hiểu thêm về lô-gic mờ nói riêng và các hệ thống sử dụng lô-gic mờ nói chung trong các tài liệu tham khảo hoặc trong các tài liệu phổ biến khác.

6.1 Khái niệm “lôgic mờ” Khái niệm “logic mờ” dùng ñể xử lý các thông tin mà giá trị logic không thể

ñược xác ñịnh chính xác ñối với chúng ta hoặc có thể thay ñổi tùy thuộc theo ñiều kiện bên ngoài.

Ví dụ với các mệnh ñề “Nhiệt ñộ nhỏ hơn 20 ñộ là lạnh” hay “Tốc ñộ ô tô khoảng 60 km/h là nhanh” thì ta rất khó xác ñịnh ñược giá trị lô-gích do việc không phải toàn bộ mọi người ñều cho rằng các mệnh ñề này là chính xác. Trong trường hợp này, ñể tăng ñộ chặt chẽ của mệnh ñề ta thường hay gặp dạng phát biểu như sau: “Có 70% số người ñồng ý rằng nhiệt ñộ nhỏ hơn 20 ñộ là lạnh” hay “ða số người ñược hỏi sẽ ñồng ý rằng vận tốc khoảng 60 km/h là nhanh”.

Trong lô-gích kinh ñiển, khi chúng ta ñưa ra một mệnh ñề và các biến lô-gíc trong mệnh ñề ñó có giá trị xác ñịnh ta cũng có giá trị lô-gíc xác ñịnh của mệnh ñề ñó và giá trị ñó chỉ có thể nhận một trong hai giá trị: ñúng (0) hoặc sai (1). Ví dụ như ta có mệnh ñề “x AND y AND (y OR z)” và giá trị các biến x=1, y=1 và z=0 thì mệnh

Page 128: Bai Giang No-ron-All - Trần Hoài Linh

- 128 -

ñề có bằng 1. Với giá trị các biến x=0, y=1 và z=1 thì giá trị mệnh ñề bằng 0... Dựa trên cơ sở lôgíc kinh ñiển ta có ñịnh nghĩa một tập hợp với mệnh ñề lôgíc xác ñịnh việc một phần tử có thuộc vào tập hợp ñó hay không. Ví dụ nếu B là một tập hợp gồm các số thực lớn hơn 6

{ }6B x x= ∈ >ℝ (6.1)

thì chúng ta coi ñây là là một ñịnh nghĩa chặt. Theo cách ñịnh nghĩa như vậy thì với một giá trị x bất kì chúng ta có thể biết ñược x có thuộc tập B hay không thuộc tập B. Hay nói cách khác, với mọi số x, thì mệnh ñề x B∈ chỉ có thể nhận một trong hai giá trị: sai (hay bằng 0) hoặc ñúng (hay bằng 1). Tập hợp B sẽ có tập hợp bù

{ }6B x x= ∈ ≤ℝ và một tính chất cơ bản của lô-gíc kinh ñiển là B B∩ =∅ - một tập

hợp sẽ không có phần tử chung với tập hợp bù của chính nó.

Lô-gíc kinh ñiển ñã và ñang ñược ứng dụng vô cùng rộng rãi và có vị trí không thể phủ nhận của mình. Tuy nhiên, trong thực tế ta ñã bắt ñầu thấy những nhược ñiểm của việc giá trị một mệnh ñề chỉ có thể bằng 0 hoặc 1. Ví dụ ta hay gặp các ñịnh nghĩa có dạng: “C là một tập hợp gồm các số thực có giá trị xấp xỉ (bằng hoặc gần bằng) 3”

{ }3C x x= ∈ ≈ℝ (6.2)

Rõ ràng ñây là một ñịnh nghĩa không chặt (hay còn gọi là mờ - fuzzy) vì thực tế không tồn tại một ñịnh nghĩa rõ ràng cho khái niệm “xấp xỉ” .

Với một ñịnh nghĩa “mờ” như vậy chúng ta không thể khẳng ñịnh giá trị x =2 hay x= 2,9 có thuộc tập C hay không? Cũng do ñó, ta cũng không khẳng ñịnh ñược mệnh ñề ngược lại là x=2 hay x=2,9 có nằm ngoài tập C (không xấp xỉ 3) hay không. Như vậy, với logic mờ thì một giá trị x nào ñó sẽ có thể thuộc về tập C với một mức ñộ nhất ñịnh, có thể không phải là hoàn toàn. Mức ñộ này có thể ñược thể hiện thông qua giá trị chân lý của biểu thức lô-gic mờ tại ñiểm x ñó sẽ bằng bao nhiêu. Chẳng hạn ta có thể nói như sau “giá trị x =2,9 thuộc về tập C chín mươi phần trăm” hay “giá trị x=2 thuộc về tập C bốn mươi phần trăm” và giá trị bao nhiêu phần trăm ñó sẽ tuỳ thuộc vào cách chúng ta xây dựng mô hình hàm liên thuộc như thế nào? Tất nhiên ñối với ví dụ trên thì ta cần có ñộ tin cậy của mệnh ñề “ 2,9x C= ∈ ” phải cao hơn ñộ tin

cậy của mệnh ñề “ 2x C= ∈ ”. Giá trị của biểu thức lô-gíc mờ có thể nhận các giá trị trong khoảng [0,1].

6.2 Biểu thức lô-gic mờ

6.2.1 Một số toán tử mờ cơ bản Một ñặc trưng của các biểu thức lô-gic mờ ñó là việc sử dụng các toán tử ñặc

trưng khác với các toán tử lô-gic kinh ñiển như AND, OR, IMPLY,… hay các toán tử so sánh ñiều kiện như >, <, = ,…

Page 129: Bai Giang No-ron-All - Trần Hoài Linh

- 129 -

Nếu như trong lôgíc kinh ñiển, ta có các phép toán so sánh cơ bản là x A< , x A= hay x A> thì trong lôgíc mờ ta thường có tương ứng 3 dạng biểu thức mờ cơ bản sau:

– x nhỏ hơn nhiều so với A: x A≪

– x xấp xỉ bằng A : x A≈

– x lớn hơn nhiều so với A : x A≫

ðối với biểu thức mờ x A≪ , ta sẽ có hàm liên thuộc (hay còn gọi là hàm phụ

thuộc) ( )A xµ≪ có dạng như hình vẽ 6.1 với ( )0 1A xµ≤ ≤≪ , ñược ñịnh nghĩa như

sau:

1

( ) 0

0A

khi x

x khi x A

khi x A

µ −

→ →−∞

= → → ≥

≪ (6.3)

Hình 6.1: Hàm liên thu)c c�a bi0u th^c ma “ 4x≪ ”

ðối với biểu thức mờ x A≈ , ta sẽ có hàm liên thuộc ( )A xµ≈ có dạng hình

chuông (hình vẽ 6.2) với ( )0 1A xµ≈≤ ≤ , ñược ñịnh nghĩa như sau:

1

( )0A

khi x Ax

khi x Aµ≈

== → − →∞

(6.4)

Page 130: Bai Giang No-ron-All - Trần Hoài Linh

- 130 -

Hình 6.2: Hàm liên thu)c hình chuông c�a bi0u th^c ma “ 4x ≈ ”

ðối với biểu thức mờ x A≫ , ta sẽ có hàm liên thuộc ( )A xµ≫ có dạng như

hình vẽ 6.3 với ( )0 1A xµ≤ ≤≫ , ñược ñịnh nghĩa như sau:

1

( ) 0

0A

khi x

x khi x A

khi x A

µ +

→ →∞

= → → ≤

≫ (6.5)

Hình 6.3: Hàm liên thu)c c�a bi0u th^c ma “ 4x≫ ”

Các hàm liên thuộc ñều có thể ñược mô tả dưới dạng rời rạc gồm một tập các giá trị liên thuộc hoặc dưới dạng một hàm liên tục ứng với các khoảng liên tục của biến x.

Page 131: Bai Giang No-ron-All - Trần Hoài Linh

- 131 -

ðối với các hàm liên thuộc hình chuông, ta thường sử dụng hàm Gauss mở rộng ñược mô tả bằng phương trình sau:

( ), , 2

1

1

c b bx

x cσµ

σ

=−

+

(6.6)

với ,b σ ∈ℝ và x, c là các véctơ. ðây là hàm có 3 thông số c, b và σ nên có thể ñiều

chỉnh linh hoạt. Hình dạng của hàm liên thuộc sẽ ñược thay ñổi bởi ba tham số là ñiểm trung tâm c, ñộ mở σ và hệ số mũ b. Ví dụ ở giá trị b = 0, 6 thì hàm có hình dạng tam giác, b =1 thì hàm có dạng hình chuông còn với b >3 thì hàm có hình dạng hình thang. ðể tìm hiểu rõ hơn về ảnh hưởng của các tham số ñến hình dạng của hàm liên thuộc chúng ta có thể trở lại ví dụ về tập mờ như ñã trình bày ở trên:

Xét một tập C gồm các số thực gần bằng 4

{ }4C x x= ∈ ≈ℝ (6.7)

Hàm phụ thuộc ( )4 xµ≈ tại ñiểm X nào ñó phải có giá trị trong khoảng [0,1], tức

là:

( )40 1xµ≈≤ ≤

trong ñó ( )4 1xµ≈ = khi 4 0x − = và ( )4 0xµ≈ → khi 4x − →∞ .

Giả sử chọn giá trị 4c = , ñộ mở σ =3, 1b = thì hàm liên thuộc của tập C sẽ là như sau:

( )4 2

1

41

3

xx

µ≈ =− +

(6.8)

Hình vẽ 6.4a mô tả hình dạng của hàm liên thuộc ( )4 xµ≈ với hệ số mũ ñược

chọn cố ñịnh 1b = (có dạng hình chuông) và giá trị ñộ mở σ lần lượt thay ñổi bằng 0,5 ; 1 và 1,5. Trong hình vẽ 6.4b ta chọn giá trị ñộ mở σ cố ñịnh bằng 1 và giá trị b thay ñổi lần lượt bằng 1 (có dạng hình chuông) và 4 (có dạng hình thang).

Page 132: Bai Giang No-ron-All - Trần Hoài Linh

- 132 -

(a)

(b)

Hình 6.4: Hàm liên thu)c ( )4 xµ≈ : a) vLi giá tr h� s* mũ b thay ñgi và b) vLi giá tr ñ) m_

σ l?n lSTt thay ñgi

Từ cách xây dựng hàm ( )4 xµ≈ chúng ta thấy các ñiểm có giá trị càng gần giá

trị ñiểm trung tâm thì sẽ có giá trị liên thuộc càng lớn và ñối với các ñiểm có giá trị càng xa giá trị ñiểm trung tâm thì sẽ có giá trị liên thuộc càng nhỏ.

6.2.2 Các toán tử cơ bản trong lô-gic mờ Trong lô-gic mờ ta cũng có thể sử dụng các toán tử cơ bản như AND, OR,

IMPLY,… nhưng cần phải ñịnh nghĩa lại về các giá trị hàm chân lý ñể phù hợp hơn với các ý tưởng của lô-gic mờ. Trong khuôn khổ của phần này, chúng ta sẽ xem xét ba toán tử cơ bản là toán tử VÀ (AND), HOẶC (OR) và SUY RA (IMPLY) trong lô-gic mờ.

Page 133: Bai Giang No-ron-All - Trần Hoài Linh

- 133 -

Ba toán tử này ñược ñịnh nghĩa trong lô-gic kinh ñiển thông qua các bản chân lý như trên hình 6.5 sau.

Tín hiệu ñầu vào AND OR IMPLY

p q p AND q p OR q p q⇒

0 0 0 0 1

0 1 0 1 1

1 0 0 1 0

1 1 1 1 1

Hình 6.5: B$ng chân lý c�a 3 toán t� lô-gic kinh ñi0n

ðể có thể phù hợp hơn ñối với các toán tử lô-gic mờ, trong ñó các biến lô-gic p và q có thể nhận các giá trị thực nằm trong khoảng [0,1], ta có thể sử dụng các công thức tính giá trị chân lý khác (mà khi sử dụng trong lô-gic kinh ñiển ta vẫn thu ñược các kết quả tương ñương). ðối với toán tử AND, ta có thể thay thế bởi một trong hai hàm sau:

( )min ,p AND q p q p q≡ ≡ ⋅ (6.9)

Ta có thể dễ dàng chứng mình ñược sự tương ñương của các công thức trong (6.9) ñối với lô-gic kinh ñiển. ðể minh họa cho sự hoạt ñộng trong lô-gic mờ, ta sẽ lấy

ví dụ ñơn giản sau: xét " 3"p x= ≈ theo hàm chuông có ñộ mở 2σ = là

23

2

x

p e− −

= ,

còn " 2"q y= ≈ theo hàm chuông có ñộ mở 4σ = là

22

4

y

q e− −

= . Khi ñó ta có hai

hàm liên thuộc của hai biến x và y với các giá trị biến thiên như trên hình 6.6:

Hình 6.6: Hàm liên thu)c c�a hai biFn " 3"p x= ≈ (trái) và " 2"q y= ≈ (ph$i)

Page 134: Bai Giang No-ron-All - Trần Hoài Linh

- 134 -

Khi ñó ta có phép AND hai biến mờ này theo công thức min và công thức tích cho kết quả là một biến mờ như trên hình 6.7. Ta có thể nhận thấy rằng nếu như trong lô-gic kinh ñiển hai công thức cho cùng một kết quả thì ñối với lô-gic mờ ta sẽ thu ñược hai kết quả khác nhau (nhưng có chung hình dạng “chuông” là hàm ñạt cực ñại

tại ñiểm ( )3, 2x y= = và giảm dần khi hướng ra bên ngoài). ðồng thời ta thấy rằng

hàm tích sẽ có giá trị nhỏ hơn so với hàm min ( ( )min ,p q p q≥ ⋅ ).

(a)

(b)

Hình 6.7: Hàm liên thu)c c�a phép AND hai biFn " 3"p x= ≈ và " 2"q y= ≈ tính theo

toán t� tích (a) và tính theo toán t� min (b)

Page 135: Bai Giang No-ron-All - Trần Hoài Linh

- 135 -

Hoàn toàn tương tự ta cũng có những công thức tương ñương ñể tính các toán tử OR và IMPLY như sau

( )max ,p OR q p q p q p q≡ ≡ + − ⋅ (6.10)

( )max 1 , 1p q p q p p q⇒ ≡ − ≡ − + ⋅ (6.11)

Tương ứng với các công thức ñó, ta có trên hình 6.8 ta có kết quả của hàm liên thuộc phép OR và trên hình 6.9 là kết quả của hàm liên thuộc phép IMPLY.

(a)

(b)

Page 136: Bai Giang No-ron-All - Trần Hoài Linh

- 136 -

Hình 6.8: Hàm liên thu)c c�a phép OR hai biFn " 3"p x= ≈ và " 2"q y= ≈ tính theo công

th^c p+q-pq (a) và tính theo toán t� max (b)

(a)

(b)

Hình 6.9: Hàm liên thu)c c�a phép IMPLY hai biFn " 3"p x= ≈ và " 2"q y= ≈ tính theo

công th^c 1-p+pq (a) và tính theo toán t� max (b)

6.3 Quy tắc suy luận mờ và giá trị của quy tắc suy luận mờ

Page 137: Bai Giang No-ron-All - Trần Hoài Linh

- 137 -

ðể nghiên cứu về quy tắc suy luận mờ, trước hết chúng ta làm quen trước với các quy tắc ñiều khiển trong lý thuyết ñiều khiển. Trong lý thuyết ñiều khiển, các quy tắc ñiều khiển sẽ ñược mô tả dưới dạng mệnh ñề ñiều kiện if … then như sau:

if ñầu vào là A then ñầu ra là B (6.12)

ðối với khái niệm ñiều khiển chính xác thì sẽ phải chỉ rõ ra nếu giá trị ñại lượng ñầu vào bằng cụ thể bao nhiêu thì giá trị ñại lượng ñầu ra sẽ phải bằng một giá trị cụ thể nào ñó.

Cũng tương tự như vậy một quy tắc suy luận chính xác sẽ có cấu trúc như sau:

x A y B= =if then (6.13)

tức là khi giá trị x bằng A thì giá trị y sẽ bằng B.

Tuy nhiên một vấn ñề ñặt ra là với giá trị x bằng A thì chúng ta biết ñược giá trị y sẽ bằng B nhưng nếu khi giá trị x “xấp xỉ” bằng A thì liệu chúng ta có biết ñược giá trị y sẽ bằng bao nhiêu không? Và với các giá trị x lân cận quanh giá trị A với ñộ “xấp xỉ” khác nhau thì liệu chúng ta có thể tính ñược giá trị của y hay không? Với sự xuất hiện của của khái niệm “logic mờ” chúng ta hoàn toàn có thể trả lời ñược những câu hỏi trên thông qua khái niệm quy tắc suy luận mờ .

Một quy tắc suy luận mờ sẽ có cấu trúc như sau:

x A y B≈ ≈if then (6.14)

tức là nếu x xấp xỉ bằng A thì y sẽ xấp xỉ bằng B, cụ thể khi x ñúng bằng A thì chúng ta sẽ có y ñúng bằng B. Ở ñây khái niệm “xấp xỉ” sẽ ñược biểu diễn thông qua hàm liên thuộc ( )A xµ≈ và thông qua giá trị của hàm liên thuộc, thì với một giá trị ñầu vào x bất

kì chúng ta cũng có thể tính ñược giá trị ñầu ra y của quy tắc suy luận mờ như sau:

( )Ay B xµ≈= ⋅ (6.15)

Quy tắc này thỏa mãn ñược hai yêu cầu chính:

– khi x ñúng bằng A thì ( ) 1A xµ≈ = và ta có y ñúng bằng B.

– Khi x có giá trị rất khác A thì ( ) 0A xµ≈ → và ta cũng có 0y→ .

ðiểm khác biệt cơ bản giữa quy tắc suy luận mờ và quy tắc suy luận kinh ñiển ñó là giá trị biểu thức ñiều kiện của quy tắc suy luận mờ không chỉ nhận giá trị 0 và 1 mà có thể nhận cả các giá trị thực nằm giữa ñoạn (0,1).

Hoàn toàn tương tự ta cũng có thể gặp các trường hợp sử dụng các phép so sánh “mờ” khác trong phần ñiều kiện của biểu thức lô-gic mờ, ví dụ như

x A y B≈if then≫ (6.16)

x A y B≈if then≪ (6.17)

Page 138: Bai Giang No-ron-All - Trần Hoài Linh

- 138 -

ðường biểu diễn quan hệ vào – ra cho các biến theo các công thức (6.15), (6.16) và (6.17) ñược thể hiện trên hình 6.10.

a)

b)

c)

Hình 6.10: Giá tr ñ?u ra c�a ba d>ng suy luZn ma c# b$n: a) 4 3x y ≈if then≪ , b)

4 4,5x y≈ ≈if then , c) 6 7x y ≈if then≫

6.4 Tính ñáp ứng trong trường hợp nhiều quy tắc suy luận mờ

Trên thực tế, một hệ thống ñiều khiển hay nhận dạng v.v… không chỉ có duy nhất một quy tắc suy luận mà bao gồm một tập hợp nhiều các quy tắc suy luận. Trong

Page 139: Bai Giang No-ron-All - Trần Hoài Linh

- 139 -

hệ kinh ñiển, khi ta có một tín hiệu ñầu vào, hệ thống sẽ tìm kiếm quy tắc thỏa mãn tín hiệu ñó và tính toán ñáp ứng ñầu ra tuân theo quy tắc ñó. Ta sẽ có 3 trường hợp xảy ra:

- Hệ thống không tìm thấy quy tắc tương ứng cho ñầu vào ñang xét, khi ñó hệ thống sẽ không ñưa ra ñáp ứng (hoặc chỉ ñưa ra thông báo lỗi)

- Hệ thống tìm thấy duy nhất một quy tắc tương ứng với ñầu vào ñang xét, khi ñó hệ thống sẽ tính toán ñáp ứng ñầu ra tuân theo quy tắc tìm ñược.

- Hệ thống tìm thấy nhiều quy tắc ñáp ứng ñầu vào ñang xét, khi ñó hệ thống có thể xử lý theo một trong hai cách:

o lựa chọn một quy tắc trong số những quy tắc tìm thấy theo một thứ tự ưu tiên nào ñó (ví dụ lấy quy tắc ñầu tiên hoặc quy tắc cuối cùng,…)

o tính toán ñáp ứng ñầu ra là trung bình có trọng số tất cả các ñáp ứng từ các quy tắc ñược thỏa mãn.

Ví dụ ta có hệ 3 quy tắc tính y theo x cho theo lô-gic kinh ñiển như sau:

R1: 3 3if x then y< =

R2: 4 6 4,5if x then y≤ ≤ =

R3: 5 7if x then y≥ =

Khi ñó ta có thể gặp một số trường hợp như sau:

- Khi 2x = - chỉ có quy tắc R1 thỏa mãn, ñáp ứng ñầu ra sẽ là 3.y =

- Khi 3,5x = - không có quy tắc nào thỏa mãn, ñáp ứng ñầu ra không có (hoặc có thông báo lỗi).

- Khi 5x = - cả hai quy tắc R2 và R3 ñều thỏa mãn. Nếu ta xử lý tiếp theo theo cách:

o Chọn quy tắc ñầu tiên (là R2) khi ñó ñáp ứng ñầu ra sẽ là 4,5.y =

o Chọn quy tắc cuối cùng (là R3) khi ñó ñáp ứng ñầu ra sẽ là 7y =

o Trung bình trọng số các quy tắc với trọng số ñều là 0,5 thì ñáp ứng ñầu ra sẽ là 0,5 4,5 0,5 7 5,75.y = ⋅ + ⋅ =

Tuy nhiên ñối với trường hợp lô-gic mờ và các quy tắc suy luận mờ, ta có rằng các quy tắc mờ có tác ñộng ñồng thời với các giá trị của các biểu thức ñiều kiện nằm trong ñoạn [0,1]. Như vậy ñáp ứng ñầu vào của hệ thống trong cùng lúc sẽ chịu tác ñộng của nhiều quy tắc suy luận mờ. Ở phần trên chúng ta ñã tìm hiểu ñược giá trị (ñáp ứng) ñầu ra ( y) trong trường hợp hệ thống chỉ có một quy tắc mờ. Trong phần này chúng ta sẽ tìm hiểu cách tính ñáp ứng trong trường hợp nhiều quy tắc suy luận mờ.

ðể ñơn giản ta thử xem xét ñến một ví dụ về hệ thống bao gồm có 3 quy tắc mờ R1, R2, R3 với ñầu vào là biến một chiều như sau:

R1: 4 3if x then y ≈≪

Page 140: Bai Giang No-ron-All - Trần Hoài Linh

- 140 -

R2: 4 4,5if x then y≈ ≈

R3: 4 7if x then y ≈≫

(a) (b)

Hình 6.11: Ví d= v/ h� th*ng g-m 3 quy tWc R1, R2, R3: a) các giá tr hàm ñi/u ki�n ma

4x≪ , 4x ≈ và 4x≫ , b) giá tr ñ?u ra theo t\ng luZt ñ#n l� và giá tr ñ?u ra tgng hTp

Trong ñó việc xác ñịnh xem liệu giá trị x nào ñó có xấp xỉ, lớn hơn nhiều hoặc nhỏ hơn nhiều so với giá trị 4 hay không sẽ thông qua các giá trị liên thuộc

( ) ( )1 4x xµ µ= ≪ , ( ) ( )2 4x xµ µ≈= , ( ) ( )3 4x xµ µ= ≫ . Vấn ñề sẽ xem xét ở ñây là với

một giá trị x bất kỳ nào ñó thì mức ñộ ảnh hưởng (hay ñộ mạnh) của các quy tắc ñến x như thế nào?

Giả sử với giá trị 1 4,5x = ta lần lượt có ( )1 1 0,05xµ = ; ( )2 1 0,75xµ = và

( )3 1 0,2xµ = . Khi ñó có thể nhận thấy ñối với giá trị 1 4,5x = thì quy tắc R2 là có tác

ñộng mạnh nhất và quy tắc R1 dường như không có ảnh hưởng gì ñến giá trị 1 4,5x = .

Trong trường hợp này ñộ mạnh của luật ñược chọn sẽ chính bằng giá trị liên thuộc của

x trong từng quy tắc: ( )i xµ và giá trị ñầu ra của toàn hệ thống mờ ñối với một giá trị x

nào ñó sẽ ñược tính dựa trên ñộ ảnh hưởng (ñộ mạnh) của các quy tắc ñối với giá trị x ñó như sau:

( ).i ii

y yµ=∑ x (6.18)

hoặc có thể dựa theo công thức với các hệ số ñược chuẩn hóa theo:

Page 141: Bai Giang No-ron-All - Trần Hoài Linh

- 141 -

( ).

( )

i ii

ii

y

y

µ

µ=∑

x

x (6.19)

Như vậy, với các giá trị như trên ta có ñáp ứng cuối cùng của hệ sẽ là trung bình trọng số của các ñáp ứng và bằng

0,05 3 0,75 4,5 0,2 7 4,925y = ⋅ + ⋅ + ⋅ = (6.20)

(trường hợp này tổng ba hệ số 0,05 0,75 0,2 1+ + = nên hai cách tính theo (6.18) và

(6.19) cho cùng một kết quả!)

Trên hình 6.11a là ví dụ minh họa ba hàm liên thuộc của ba biểu thức ñiều kiện của các quy tắc lô-gic, còn trên hình 6.11b là ba ñường giá trị ( ).i iyµ x và ñồ thị tổng

của chúng tương ứng với hàm phụ thuộc của ñáp ứng ñầu ra vào ñáp ứng ñầu vào.

6.5 MỘT SỐ MẠNG NƠ-RÔN LÔ-GIC MỜ Dựa trên mô hình hệ thống suy luận mờ, ñã có nhiều mô hình mạng lô-gic mờ

ñược ñề xuất và xây dựng. Trong số ñó, có một số mạng ñược thiết kế cùng với các thuật toán học ñể ñiều chỉnh thích nghi các thông số của mạng theo các bộ số liệu mẫu cho trước. Những mạng này ñược gọi là mạng nơ-rôn lô-gic mờ. Trong chương này chúng ta sẽ làm quen với hai mạng nơ-rô lô-gic mờ phổ biến nhất là mạng RBF và mạng TSK. ðặc ñiểm chung của các mạng này là các mạng xử lý song song nhiều quy tắc suy luận.

Hình 6.12: Mô hình h� suy luZn vLi nhi/u quy tWc ho>t ñ)ng song song

Page 142: Bai Giang No-ron-All - Trần Hoài Linh

- 142 -

Mô hình chung của một hệ nhiều quy tắc suy luận ñược biểu diễn trên hình 6.12. Với cùng một ñầu vào x, ta có nhiều quy tắc ñể suy luận, tính toán và ñưa ra ñáp ứng kết quả. Tuy nhiên các quy tắc khác nhau thường sẽ ñưa ra các kết quả khác nhau. Vì vậy ñể có ñược 1 kết quả duy nhất là ñáp ứng ñầu ra chung của hệ thống, ta cần có một khối “Tổng hợp kết quả” ñể thu nhận tất cả các kết quả ñơn lẻ từ các quy tắc suy luận thành phần ñể tính toán và tổng hợp thành một kết quả chung duy nhất.

6.5.1. MÔ HÌNH MẠNG MAMDANI/RBF

a. Cấu trúc

Mạng RBF xử lý các quy tắc lô-gic mờ cho dưới dạng

x A y B≈ ≈if then (6.21)

với B là các hằng số. Trong trường hợp tổng quát ta có mạng có nhiều ñầu vào và nhiều ñầu ra (x, y là các véc-tơ). Ký hiệu N – số ñầu vào, K – số ñầu ra ta có dạng biểu diễn chi tiết của 1 quy tắc mờ là

≈ ≈if x A then y B (6.22)

hay ở dạng khai triển

( ) ( ) ( )

( ) ( ) ( )1 1 2 2

1 1 2 2

N N

K K

x A AND x A AND AND x A

y B AND y B AND AND y B

≈ ≈ ≈

≈ ≈ ≈

if

then

… (6.23)

với [ ] [ ]1 1, , ; , , ;N Nx x A A= =x A… … [ ] [ ]1, , ; , , ;K K Ky y B B= =y B… …

Với một hệ M quy tắc, ta biểu diễn dưới dạng

i i≈ ≈if x A then y B (6.24)

với 1,2, , .i M= …

ðặt hàm giá trị biểu thức ñiều kiện của quy tắc thứ i là ( )i iW ≈x A , ta có thể

thay phần kết luận của quy tắc thứ i bởi

( )i i i iW≈ = ≈ ⋅if x A then y x A B (6.25)

Khi ñó ñáp ứng cuối cùng của hệ sẽ là trung bình có trọng số các ñáp ứng của mỗi luật

( )1

M

i i ii

W=

= ≈ ⋅∑y x A B (6.26)

Page 143: Bai Giang No-ron-All - Trần Hoài Linh

- 143 -

ðể xây dựng ñược một mô hình mạng tương ứng với công thức 6.26 và sử dụng các quy tắc ký hiệu tương tự như với mạng MLP ta sẽ thay ký hiệu ()iW f→ − hàm

truyền ñạt của nơ-rôn, i iV→ −B các trọng số ghép nối. Khi ñó ta có ñược mô hình

mạng RBF như trên hình 6.13.

Hình 6.13: Mô hinh m>ng RBF

b. Nguyên tắc hoạt ñộng

Theo ñề xuất của các tác giả mạng RBF, với cấu trúc như trên hình 6.13 khi có

một véc-tơ ñầu vào mới là [ ]1 2, , , Nx x x=x … , tuần tự các lớp của mạng sẽ hoạt ñộng

ñể tạo ra tín hiệu ñầu ra như sau. Trước tiên ở lớp ẩn, nơ-rôn thứ i sẽ tính toán hàm mờ

( )i iW ≈x A sử dụng hàm chuông

( )

2i

ii iW e σ

− − ≈ =

x A

x A (6.27)

trong ñó thông số i −A trọng tâm của quy tắc, còn iσ − ñộ rộng của quy tắc. Sau ñó,

các tín hiệu ñầu ra từ lớp ñầu ra ñược tính với hàm truyền ñạt là hàm tổng ñơn giản:

( )1

M

i ij j jj

y V W=

= ⋅ ≈∑ x A (6.28)

Ta có thể nhận thấy mạng RBF có cấu trúc ñơn giản hơn mạng MLP do:

- Chỉ tối ña có 1 lớp ẩn

- Nơ-rôn ở lớp ñầu ra có hàm truyền ñạt là hàm hằng số (ñầu ra bằng tổng các kích thích ñầu vào)

Tuy nhiên sự khác biệt nổi bật giữa hai loại mạng là hàm truyền ñạt của nơ-rôn lớp ẩn, trong ñó ta thường sử dụng khái niệm “khoảng hoạt ñộng” – là miền xác ñịnh của giá trị ñầu vào ñể ñáp ứng tín hiệu ñầu ra của nơ-rôn lớn hơn một giá trị ngưỡng ε cho trước. Các nơ-rôn RBF có hàm truyền ñạt dạng “chuông” do ñó có khoảng hoạt

Page 144: Bai Giang No-ron-All - Trần Hoài Linh

- 144 -

ñộng giới hạn cả hai ñầu (khoảng hữu hạn), còn nơ-rôn MLP có hàm truyền ñạt mở một phía (khoảng vô hạn) như trên hình 6.14.

a)

b)

Hình 6.14: Kho$ng ho>t ñ)ng c�a n#-rôn MLP (a) và c�a n#-rôn RBF (b)

c. Thuật toán học

Cũng tương tự như trong trường hợp của mạng MLP, khi ta có một bộ số liệu

mẫu { },i ix d với 1,2, ,i p= … , ta có thể xây dựng một mạng RBF ñể xấp xỉ bộ số liệu

này. Với một số lượng nơ-rôn (quy tắc suy luận) M chọn trước, ta sẽ sử dụng các thuật toán học ñể ñiều chỉnh thích nghi các thông số của mạng với mục tiêu giảm sai lệch giữa các giá trị ñầu ra iy và các giá trị ñích id cho trước. Khác với mạng MLP, mạng

RBF ngoài các trọng số ghép nối ijV còn có các thông số của các nơ-rôn là các trọng

tâm [ ]1 2, , ,i i i iNA A A=A … và các hệ số ñộ mở iσ cho 1,2, ,i M= … cũng tham gia vao

quá trình học. Hàm mục tiêu của quá trình hoc là tổng các sai số giữa tín hiệu ñầu ra của mạng và giá trị ñích cho trong bộ số liêu mâu, cụ thể:

Page 145: Bai Giang No-ron-All - Trần Hoài Linh

- 145 -

( )22

1 1 1

1 1

2 2

p p K

i i ij iji i j

E y d= = =

= − = −∑ ∑∑y d (6.29)

với các tín hiệu ñầu ra ñược tính theo các công thức (6.27) và (6.28).

Ta có thể sử dụng thuật toán bước giảm cực ñại ñể xây dựng các công thức lặp cho quá trình ñiều chỉnh thích nghi các thông số của mạng RBF. Theo ñó ta thực hiện theo các bước sau:

0. Khởi tạo các giá trị ban ñầu của các thông số tham gia quá trình học (0) (0) (0) (0) (0)

1 2, , , ;NA A Aα α α α ασ = A … cho 1,2, ,Mα = … và (0)Vαβ cho

1,2, , ;Kα = … 1,2, , .Mβ = …

0. Thực hiện quá trình lặp theo thuật toán bước giảm cực ñại với bộ các công thức sau:

( 1) ( )

( 1) ( )

t t

t t

EA A

A

E

αβ αβαβ

α αα

η

σ σ ησ

+

+

∂= −

∂= −

(6.30)

với 1,2, , ; 1,2, ,M Nα β= =… … , và

( 1) ( )t t E

V VVαβ αβαβ

η+ ∂= −

∂ (6.31)

với 1,2, , ; 1,2, , .K Mα β= =… …

Quá trình lặp sẽ kết thúc khi ta ñạt ñược giá trị sai số mong ñợi hoặc số lần lặp tối ña ñược thực hiện.

Từ các công thức (6.27) và (6.28) ta xác ñịnh các công thức gradient cho thuật toán học như sau:

( ) ( )2

1 1 1 1

1

2

p pK Kij

ij ij ij iji j i j

yEE y d y d

V Vαβ αβ= = = =

∂∂= − → = −

∂ ∂∑∑ ∑∑ (6.32)

Khi cho mẫu học thứ i ta có ñầu ra thứ j là

Page 146: Bai Giang No-ron-All - Trần Hoài Linh

- 146 -

( ) ( )

( )

( )

1 1

M Mij jk

ij jk k i k k i kk k

ji

j i

y Vy V W W

V V

VW

V

W

αβ αβ

ββ β

αβ

α β βδ

= =

∂ ∂= ⋅ ≈ → = ⋅ ≈

∂ ∂

∂= ⋅ ≈∂

= ⋅ ≈

∑ ∑x A x A

x A

x A

(6.33)

với 0

1j

khi j

khi jαα

δα

≠=

=

Thế vào (6.32) ta có

( ) ( )

( ) ( )

1 1

1

p K

ij ij j ii j

p

i i ii

Ey d W

V

y d W

α β βαβ

α α β β

δ= =

=

∂= − ⋅ ⋅ ≈

= − ⋅ ≈

∑∑

x A

x A

(6.34)

Tiếp tục xác ñịnh gradient của hàm sai số E theo các tọa ñộ của trọng tâm ta có:

( )

( ) ( )1 1

1 1 1

p Kij

ij iji j

p K Mk i k

ij ij jki j k

yEy d

A A

Wy d V

V

αβ αβ

αβ

= =

= = =

∂∂= −

∂ ∂

∂ ≈= −

∑∑

∑∑ ∑x A

(6.35)

Từ công thức (6.27) suy ra

Page 147: Bai Giang No-ron-All - Trần Hoài Linh

- 147 -

( )

( )

( )( ) ( )

( )

( )

22

12

2

12

2

2

2

12

2

2

2

2

2

N

il kli k l

k k

N

il kll

k

i k

k

i k

k

i k

k

x A

k i k

Nx Ail kl

k i k l

k

i kk

i k k

k

W e e

x AW

eA A

ex A

A

e x A A

A

e

σ σ

σ

αβ αβ

σ

β βαβ

σβ β β

αβ

σ

σ

σ

σ

=

=

−−

−−

−=

− −

− −

−−

≈ = = →

∑ − ∂ ≈ ∂ = − ∂ ∂

∂= − −

− ∂=

=

x A

x A

x A

x A

x A

x A

( )2

2

i kk

k

x Aβ βαδ

σ

(6.36)

Thay vào công thức (6.30) và chú ý rằng kαδ chỉ khác 0 (bằng 1) khi k α= ta

có:

( ) ( )2

21 1

2i

p Ki

ij ij ji j

e x AEy d V

A

α

ασβ αβ

ααβ ασ

− −

= =

−∂= − ⋅ ⋅

∂ ∑∑

x A

(6.37)

Hoàn toàn tương tự, ta có các biến ñổi ñể ñưa ra công thức tính gradient của hàm sai số theo ñộ mở các hàm RBF:

( )

( ) ( )1 1

1 1 1

p Kij

ij iji j

p K Mk i k

ij ij jki j k

yEy d

Wy d V

α α

α

σ σ

σ

= =

= = =

∂∂= −

∂ ∂

∂ ≈= −

∑∑

∑∑ ∑x A

(6.38)

với

Page 148: Bai Giang No-ron-All - Trần Hoài Linh

- 148 -

( )2

2

2

2

2

2

3

2

i k

k

i

k i k i k

k

ik

We

α

σ

α α

σα

αα

σ σ σ

δσ

−−

− −

∂ ≈ −∂= −

∂ ∂

⋅ −= ⋅

x A

x A

x A x A

x A

(6.39)

Do ñó:

( )

2

2

31 1

2i

p Ki

ij ij ji j

eEy d V

α

ασα

αα ασ σ

− −

= =

⋅ −∂= −

∂ ∑∑

x A

x A

(6.40)

d. Ví dụ áp dụng

ðể minh họa khả năng xấp xỉ các hàm truyền ñạt phi tuyến ta xét một ví dụ xấp xỉ hàm phi tuyến (lấy ví dụ là sin tắt dần). ðối tượng cần xấp xỉ là hàm

0,5sin(3 ) xy x e−= ⋅

ñược lấy mẫu trong ñoạn từ 0 ñến 5 với bước lấy mẫu 0,1. Như vậy tổng cộng ta có 51 mẫu: 1 2 510; 0,1; , 5.x x x= = =…

Tín hiệu mẫu ñược biểu diễn trên hình 6.15.

Page 149: Bai Giang No-ron-All - Trần Hoài Linh

- 149 -

Hình 6.15: Các ñi0m mbu s* li�u ñSTc s� d=ng ñ0 xây d�ng m>ng RBF

Thực hiện xây dựng mạng RBF với 1 ñầu vào, 1 ñầu ra và 8 nơ-rôn ta thu ñược kết quả như trên hình 6.16. Ta nhận thấy 8 nơ-rôn có trọng tâm khác nhau cũng như các hệ số khuếch ñại iV cũng khác nhau và tổng trọng số các ñáp ứng của các nơ-ron ñược

thể hiện trên hình (dưới cùng bên phải) ñã tái tạo khá chính xác hàm cho ban ñầu.

Page 150: Bai Giang No-ron-All - Trần Hoài Linh

- 150 -

Hình 6.16: Các ñáp ^ng c�a các n#-rôn RBF thành ph?n (t\ n#-rôn 1 ñFn n#-rôn 8) và xFp ch-ng c�a các n#-rôn ñ0 t>o thành tín hi�u ñ?u ra (hình dSLi cùng bên ph$i)

Kết quả cuối cùng của mạng RBF và sai số ñược biểu diễn chi tiết hơn trên hình 6.17, theo ñó ta có thể thấy mạng RBF với 8 nơ-rôn ẩn ñã tái tạo lại ñược khá chính xác hàm phi tuyến ñã cho ban ñầu.

Page 151: Bai Giang No-ron-All - Trần Hoài Linh

- 151 -

Hình 6.17: So sánh gila tín hi�u mbu và ñáp ^ng ñ?u ra c�a m>ng RBF

6.5.2 Mô hình mạng TSK

a. Quy tắc suy luận TSK

Mô hình TSK xử lý các quy tắc lô-gic mờ cho dưới dạng

x opt A y B≈if then (6.41)

với opt – toán tử quan hệ giữa hai giá trị x và A như ' , , , , , , , , , '= ≠ < > ≤ ≥ ≈≪ ≫ … , B là

hàm tuyến tính bậc nhất của x, hay nói cách khác ta có một quy tắc suy luận TSK có dạng

x opt A y a x b≈ ⋅ +if then (6.42)

cho trường hợp x là biến một chiều. ðối với trường hợp véc-tơ ñầu vào N chiều

[ ]1 2, , , NNx x x= ∈x … ℝ ta có luật TSK cho dưới dạng

01

( )N

i ii

opt y f q q x=

≈ = +∑if x A then x (6.43)

trong ñó iq là các hằng số.

Page 152: Bai Giang No-ron-All - Trần Hoài Linh

- 152 -

Trong các trình bày dưới ñây ta tạm giới hạn các công thức và ví dụ cho trường hợp biểu thức ñiều kiện của quy tắc suy luận sử dụng toán tử ' '≈ , tức là ta có dạng ñiều kiện “ if ≈x A ”. Khi ñó cũng có thể nhận thấy mạng RBF là một trường hợp ñặc

biệt của mạng TSK khi ta có 0 1.iq i= ∀ ≥

Trong mô hình TSK, phần ñầu của quy tắc “ if ≈x A ” là khái niệm mờ ñược

thể hiện chi tiết qua các thành phần của véc-tơ ñầu vào x và véc-tơ trọng tâm của quy tắc A:

1 1 2 2 N Nx A AND x A AND AND x A≈ ≡ ≈ ≈ ≈if x A if …

(6.44)

và giá trị của ñiều kiện mờ sẽ bằng tích của các giá trị ñiều kiện mờ cho từng thành phần:

( ) ( ) ( ) ( )1 1 1 2 2 2 N N NW W x A W x A W x A≈ = ≈ ⋅ ≈ ⋅ ⋅ ≈x A … (6.45)

Trong ñó các giá trị ñiều kiện thành phần ñều ñược tính bằng hàm Gauss mở rộng (thay vì tính bằng hàm Gauss (6.27) như trong hàm RBF) theo công thức sau:

( ) 2

1

1i

i i i b

i i

i

W x Ax A

σ

≈ = −

+

(6.46)

Từ ñó ta có giá trị của ñiều kiện mờ “ ≈if x A ” là:

( ) ( ) ( ) ( )1 1 1 2 2 2

21

1

1i

N N N

N

bi i i

i

W W x A W x A W x A

x A

σ=

≈ = ≈ ⋅ ≈ ⋅ ⋅ ≈

= −

+

x A …

(6.47)

Trong trường hợp mạng có 1M ≥ quy tắc suy luận ta có mỗi quy tắc sẽ có dạng như sau:

01

( )N

i i i ij jj

y f q q x=

≈ ≈ = +∑if x A then x (6.48)

và công thức tính giá trị của ñiều kiện mờ:

Page 153: Bai Giang No-ron-All - Trần Hoài Linh

- 153 -

( ) ( ) ( ) ( )1 1 1 2 2 2

21

1

1ij

i i i i i i iN N iN

N

bj j ij

ij

W W x A W x A W x A

x A

σ

=

≈ = ≈ ⋅ ≈ ⋅ ⋅ ≈

= −

+

x A …

(6.49)

với 1,2, , .i M= …

Phối hợp giá trị của ñiều kiện này với hàm ñáp ứng, ta có mỗi quy tắc sẽ ñưa ra một kết quả là:

( )

01

021 1

( )

1( )

1j

N

i i ij jj

N N

i i i i i ij jbj jj ij

j

y f b b x

y W f q q xx A

σ

=

= =

≈ = + →

= ≈ ⋅ = ⋅ + −

+

∏ ∑

x

x A x

(6.50)

Do có M quy tắc, và mỗi quy tắc ñưa ra một ñáp ứng khác nhau (tính theo công thức (6.45) với các thông số khác nhau) nên ñáp ứng cuối cùng của mạng TSK sẽ là tổng trung bình trọng số của các ñầu ra các quy tắc với các trọng số chính là giá trị của các ñiều kiện của mỗi quy tắc, cụ thể:

( )

( )

1

1

M

i i ii

M

i ii

W y

y

W

=

=

≈ ⋅

=

x A

x A

(6.51)

hoặc ta cũng có thể biểu diễn dưới dạng sử dụng các hệ số ( )

( )1

1

Mi i

i Mi

i jj

WW

W=

=

≈=

≈∑∑

x A

x A

ɶ ñã

ñược chuẩn hóa (có tổng các hệ số bằng 1):

( )

( )1 1

1

M Mi i

i i iMi i

i jj

Wy W y y

W= =

=

≈= ⋅ = ⋅

≈∑ ∑

x A

x A

ɶ (6.52)

Hình 6.18 là một ví dụ về mô hình mờ TSK gồm 4 quy tắc:

Quy tắc 1: “IF x1 is small and x2 is small THEN y=3x1 + 2x2 - 4”

Page 154: Bai Giang No-ron-All - Trần Hoài Linh

- 154 -

Quy tắc 2: “IF x1 is small and x2 is big THEN y=2x1 - 3x2 + 5”

Quy tắc 3: “IF x1 is big and x2 is big THEN y=-x1 - 4x2 + 3”

Quy tắc 4: “IF x1 is big and x2 is small THEN y=-2x1 + 5x2 - 3”

Xét ví dụ véctơ ñầu vào: ( )1 2, (10;0,5)x x= =x . Khi ñó các giá trị liên thuộc sẽ

ñược lần lượt tính toán như sau. Trong quy tắc 1, ñối với véctơ ñầu vào x sẽ có giá trị liên thuộc lần lượt là 0,8 và 0,3. lúc này ñộ mạnh của quy tắc 1 sẽ là 0,8 0,3 0,24⋅ = .

Tương tự chúng ta chúng ta tính ñược ñộ mạnh của các quy tắc 2, 3 và 4 lần lượt là 0,8; 1,0 và 0,3. Giá trị ñầu ra của các quy tắc khi véctơ ñầu vào (10;0,5)=x lần lượt là: 27;

23,5; -9 và -20,5 (như trên hình 6.18)

Hình 6.18: Ví d= v/ tính theo theo mô hình ma TSK có 4 luZt

Do ñó giá trị ñầu ra của cả hệ thống mờ y sẽ ñược tính như sau:

( ) ( )( ) 0,24 27 0,8 23,5 1,0 9 0,3 20,5

4,33( ) 0,24 0,8 0,1 0,3

i i

i

yy

µ

µ

⋅ ⋅ + ⋅ + ⋅ − + ⋅ −= = =

+ + +∑∑

x

x

b. Mô hình mạng nơron mờ TSK

ðể tái tạo lại các phương pháp tính toán của mô hình TSK, các tác giả Takaga, Sugeno và Kang ñã xây dựng một mô hình tính toán dưới dạng tương tự như một mạng truyền thẳng với cấu trúc như trên hình 6.19. ðể ñơn giản hóa mô hình và các công thức ta tạm xét mạng có 1 ñầu ra. Theo ñó, về mặt cấu trúc, mạng TSK ñược xác ñịnh

bởi ba thông số ( ), ,N M K với N − số ñầu vào (số thành phần của véc-tơ x), M − số

quy tắc suy luận, K − số ñầu ra (ñang tạm xét là 1), và mạng TSK là một mô hình gồm 5 lớp.

Page 155: Bai Giang No-ron-All - Trần Hoài Linh

- 155 -

Hình 6.19: M>ng n#ron ma TSK

Lớp ñầu tiên ñược gọi là lớp mờ hoá, sử dụng ñể tính toán các giá trị ñiều kiện mờ thành phần

( ) 2

1

1ij

i j ij b

j ij

ij

W x Ax A

σ

≈ = −

+

(6.53)

Khi sử dụng hàm truyền ñạt là hàm Gauss mở rộng, mỗi một khối ( )i j ijW x A≈

sẽ có ba véc-tơ thông số là [ ]1 2, , ,i i i iNA A A=A … - véc-tơ trọng tâm của quy tắc,

[ ]1 2, , ,i i i iNσ σ σ= −σ … véc-tơ thông số ñộ rộng của quy tắc, [ ]1 2, , ,i i i iNb b b= −b …

véc-tơ thông số hình dạng của quy tắc.

Lớp thứ hai là lớp tính giá trị ñiều kiện lô-gic mờ tổng hợp cho toàn bộ véc-tơ ñầu vào ( )W ≈x A . Theo (6.45) ta có

( ) ( ) ( ) ( )1 1 1 2 2 2

21

1

1i

N N N

N

bi i i

i

W W x A W x A W x A

x A

σ=

≈ = ≈ ⋅ ≈ ⋅ ⋅ ≈

= −

+

x A …

(6.54)

nên lớp thứ hai này chỉ ñơn giản là các khối nhân các tín hiệu ñầu vào ( )i i iW x A≈ ñể

tạo ra tín hiệu ñầu ra ( )W ≈x A tương ứng.

Page 156: Bai Giang No-ron-All - Trần Hoài Linh

- 156 -

Lớp thứ 3 ñược sử dụng ñể tính toán giá trị các hàm TSK ( )if x (là các hàm

tuyến tính 01

N

i ij jj

q q x=

+∑ ) và nhân với giá trị mờ của ñiều kiện lô-gic ( )iW ≈x A . Lớp

này có chứa các thông số cần xác ñịnh là các hệ số ijq (với 1,2, ,i M= … - số luật của

mạng và 0,1, ,j N= … - số ñầu vào của mạng) của các hàm tuyến tính TSK.

Lớp thứ 4 dùng ñể tính toán tổng các giá trị của lớp 3 ( F1 ) và lớp 2 (F2) trong mạng ñể có ñược các thành phần tử số và mẫu số trong công thức (6.51).

Lớp cuối cùng chỉ có duy nhất một khối chia ñể tính toán giá trị ñầu ra của toàn mạng theo công thức

( )

( )

11

2

1

M

i ii

M

ii

W yF

yF

W

=

=

≈ ⋅

= =

x A

x A

(6.55)

c. Thuật toán học của mạng nơron mờ TSK

Cũng tương tự như ñối với mạng MLP và mạng RBF, mạng TSK hoạt ñộng theo nguyên tắc “có hướng dẫn”, có nghĩa là ứng với mỗi ñầu vào ta sẽ có một giá trị ñầu ra

tương ứng từ mạng. Vì vậy, khi ta có một bộ số liệu gồm p mẫu { },i ix d với

1,2, , ;i p= … ;N Ki i∈ ∈x dℝ ℝ , ta cần xây dựng một mạng TSK xấp xỉ bộ số liệu mẫu

này sao cho

( ): i i ii TSK∀ = ≈y x d (6.56)

hoặc ta tìm cực tiểu của hàm sai số

2

1

1min

2

p

i ii

E=

= − →∑ y d (6.57)

Từ mô tả cấu trúc 5 lớp của mạng TSK ở trên ta thấy rằng mạng chỉ có 2 lớp có chứa các thông số có thể ñiều chỉnh thích nghi theo bộ số liệu ñượ, ñó là lớp thứ nhất với các khối mờ hóa và lớp thứ 3 với các hàm TSK tuyến tính. Các lớp thứ 2, thứ 4 và thứ 5 ñều có cấu hình cố ñịnh, không phụ thuộc vào bộ số liệu.

Với mạng có N ñầu vào, M quy tắc suy luận và K ñầu ra, ta có số lượng thông số của các khối mờ hóa là 3 M N⋅ ⋅ (và ñây là các thông số phi tuyến), số lượng các thông số của các hàm tuyến tính TSK là: ( 1)M N K⋅ + ⋅ . Do ñó ta có thể nhận thấy số lượng

các tham số của mạng TSK là khá lớn. Việc tối ưu hóa hàm sai số (6.57) với số lượng lớn các tham số như vậy sẽ rất phức tạp, thời gian tính toán lâu và xác suất ñể quá trình hội tụ về một ñiểm cực tiểu tốt là thấp. Vì vậy một thuật toán hỗn hợp ñã ñược ñề xuất

Page 157: Bai Giang No-ron-All - Trần Hoài Linh

- 157 -

trong [Linh06], theo ñó ta tách quá trình ñiều chỉnh thích nghi thành hai quá trình con: ñiều chỉnh các hệ số tuyến tính và ñiều chỉnh các hệ số phi tuyến. Thuật toán ñiều chỉnh chung ñược mô tả như sau:

0. Khởi tạo các giá trị ban ñầu của các thông số phi tuyến và tuyến tính 0. Giữ nguyên giá trị các hệ số tuyến tính, sử dụng thuật toán (lặp) ñiều chỉnh các

hệ số phi tuyến (số bước lặp ñược lựa chọn trước, thường khoảng 5 tới 10 bước).

0. Giữ nguyên các giá trị của các hệ số phi tuyến, sử dụng thuật toán ñiều chỉnh các hệ số tuyến tính. Kiểm tra hàm sai số mục tiêu, nếu kết quả ñã ñạt yêu cầu thì dừng quá trình học, ngược lại thì quay lại bước 2.

ðể ñiều chỉnh các hệ số phi tuyến ta có thể sử dụng nhiều thuật toán tối ưu hóa khác nhau cũng như ñối với các mạng MLP và RBF. Thuật toán cơ bản nhất là thuật toán bước giảm cực ñại sử dụng gradient bậc 1. Phần tiếp theo ñây ta sẽ trình bày về thuật toán bước giảm cực ñại ñể ñiều chỉnh các thông số phi tuyến.

Với bộ số liệu gồm p mẫu { },i idx với 1,2, , ; ;Ni ii p d= ∈ ∈x… ℝ ℝ (tạm xét với

mạng có 1 ñầu ra), khi cho véc-tơ ñầu vào [ ]1 2, , ,i i i iNx x x=x … ta có ñầu ra từ mạng

TSK ñược tuần tự tính theo các công thức (6.42) ñến (6.46) như sau:

0. Tính các giá trị mờ thành phần: ( ) 2

1

1kj

kj ij kj b

ij kj

kj

W x Ax A

σ

≈ = −

+

cho

1,2, , ;k M= … và 1,2, , .j N= …

0. Tính giá trị ñiều kiện toàn phần cho 1,2, , .k M= …

( ) ( ) ( ) ( )1 1 1 2 2 2

21

1

1kj

k i k k i k k i k kN iN kN

N

bj ij kj

kj

W W x A W x A W x A

x A

σ

=

≈ = ≈ ⋅ ≈ ⋅ ⋅ ≈

= −

+

x A …

0. Tính ñáp ứng ñầu ra theo các công thức

( )

( )

1

1

( )M

k i k k ik

i M

k i kk

W f

y

W

=

=

≈ ⋅

=

x A x

x A

Sau khi có ñược p giá trị ñầu ra, ta tính ñược giá trị hàm sai số mục tiêu là:

Page 158: Bai Giang No-ron-All - Trần Hoài Linh

- 158 -

( )21

1

2

p

i ii

E y d=

= −∑ (6.58)

Khi ñó thuật toán bước giảm cực ñại áp dụng vào ñể thực hiện tối thiểu hoá hàm sai số E sẽ ñiều chỉnh các thông số phi tuyến như sau:

( 1) ( )t t EA A

Aαβ αβαβ

η+ ∂= −

( 1) ( )t t Eαβ αβ

αβσ σ η

σ+ ∂

= −∂

( 1) ( )t t Eb b

bαβ αβαβ

η+ ∂= −

(6.59)

cho 1,2, , ; 1,2, , .M Nα β= =… …

Ta có từ hàm sai số ( )21

1

2

p

i ii

E y d=

= −∑ có thể xác ñịnh các gradient tuần tự như

sau. Với các hệ số trọng tâm ta có:

( )

( )

( )( ) ( )

( )

( )

1

1 1

1 1

21

1

( )

( )

pi

i ii

M M

k i k k i k i kM Mk k

k i k k i k k ik k

p

i iMi

k i kk

yEy d

A A

W f W

W W fA A

y d

W

αβ αβ

αβ αβ

=

= =

= =

=

=

∂∂= − =

∂ ∂

∂ ≈ ⋅ ∂ ≈

≈ − ≈ ⋅ ⋅ ∂ ∂ = −

∑ ∑∑ ∑

∑∑

x A x x A

x A x A x

x A

(6.60)

Ta có

Page 159: Bai Giang No-ron-All - Trần Hoài Linh

- 159 -

( ) ( )

( )

1

( )( )

( )

M

k i k k ii ik

ii

W fW f

A A

Wf

A

α α α

αβ αβ

α αα

αβ

=

∂ ≈ ⋅ ∂ ≈ ⋅ =

∂ ∂

∂ ≈= ⋅

∑ x A xx A x

x Ax

(6.61)

( )

( )1

M

k i kik

WW

A Aα α

αβ αβ

=

∂ ≈

∂ ≈ =∂ ∂

∑ x Ax A

(6.62)

do hệ số Aαβ chỉ xuất hiện trong công thức tính ( )iWα α≈x A .

Rút gọn công thức(6.60) ta có:

( )

( )( ) ( )

( )

( )

( )( ) ( )

( )

( )

1 12

1

1

1 12

1

( ) ( )

( ) ( )

M Mi i

i k i k k i k k ipk k

i iMi

k i kk

M M

i k i k k i k k iik k

i iM

k i kk

W Wf W W f

A AEy d

AW

f W W fW

y dA

W

α α α αα

αβ αβ

αβ

αα α

αβ

= =

=

=

= =

=

∂ ≈ ∂ ≈ ⋅ ⋅ ≈ − ≈ ⋅ ⋅

∂ ∂ ∂= − ∂

⋅ ≈ − ≈ ⋅

∂ ≈= − ⋅ ∂

∑ ∑∑

∑ ∑

x A x Ax x A x A x

x A

x x A x A xx A

x A

( )( ) [ ]

( )

( )

1

12

1

1

( ) ( )

p

i

M

k i k i k ipik

i iMi

k i kk

W f fW

y dA

W

αα α

αβ

=

=

=

=

≈ ⋅ −

∂ ≈ = − ⋅ ∂

∑∑

x A x xx A

x A

(6.63)

Theo công thức (6.49) ta có

Page 160: Bai Giang No-ron-All - Trần Hoài Linh

- 160 -

( ) ( ) ( ) ( )

( ) ( ) ( )

1 1 1 2 2 2

1

i i i N iN N

Nia i

j ij jjj

W W x A W x A W x A

W x AWW x A

A A

α α α α α α α α

αβ β αβαα α

αβ αββ

=≠

≈ = ≈ ⋅ ≈ ⋅ ⋅ ≈

∂ ≈∂ ≈→ = ⋅ ≈

∂ ∂ ∏

x A

x A

(6.64)

Với hàm truyền ñạt Gauss mở rộng, ta có ñạo hàm của hàm truyền ñạt theo các thông số thành phần như sau:

( )

( )

( )

( )

2

1

1

21

0

2ln 1

0

21

i b

i

ii

i

ii

i

W x Ax A

bW W khi x AW

x AA

khi x A

x AW W khi x AW

bkhi x A

W bW W

αβαβ β αβ

β αβ

αβ

αβαβ αβ β αβαβ

β αβαβ

β αβ

β αβαβ αβ β αβαβ

αβαβ

β αβ

αβ αβαβ αβ

αβ αβ

σ

σ

σ σ

≈ = −

+

− ≠∂ −= ∂ =

− − − ≠∂→ =

∂ =∂ = −∂

(6.65)

Từ ñó ta có

Page 161: Bai Giang No-ron-All - Trần Hoài Linh

- 161 -

( ) ( ) ( )

( ) ( )

( ) ( )

1

1

21

0

21

0

Nii

j ij jjj

N

j ij j ii j

j

i

i ii

i

W x AWW x A

A A

bW W W x A khi x A

x A

khi x A

bW W khi x A

x A

khi x A

αβ β αβα αα α

αβ αββ

αβαβ αβ α α β αβ

β αββ

β αβ

αβαβ α α β αβ

β αβ

β αβ

=≠

=≠

∂ ≈∂ ≈= ⋅ ≈

∂ ∂

− ⋅ ≈ ≠ −=

=

− ⋅ ≈ ≠ −=

=

x A

x A

(6.66)

Sử dụng các công thức (6.63) và (6.66) ta có công thức tính gradient của hàm sai số E theo các trọng tâm của các hàm mờ hóa.

Tương tự như vậy chúng ta sẽ có các công thức cho gradient của hàm sai số E theo các thông số ñộ mở αβσ và các thông số hình dạng bαβ .

c.2 Thuật toán ñiều chỉnh thích nghi các thông số tuyến tính ðể xác ñịnh các thông số tuyến tính, trước tiên ta biểu diễn hàm sai số E dưới

dạng một hàm tuyến tính của các thông số này. Mạng TSK có các thông số tuyến tính

là các hệ số qαβ ñược sử dụng trong các hàm ( )ifα x , cụ thể 01

( )N

i j ijj

f q q xα α α=

= +∑x .

Với 1,2, ,Mα = … , 0,1, ,Nβ = … và K ñầu ra ta có số lượng thông số tuyến tính là

( )1M N K⋅ + ⋅ ). Các công thức sau ñây ñược trình bày cho trường hợp mạng có 1 ñầu

ra ( 1K = ).

Nếu ñặt ñầu vào phân cực 0 1 1,2, ,ix i p≡ ∀ = … ta có 0

( )N

i j ijj

f q xα α=

=∑x

Biểu diễn tín hiệu ñầu ra theo các thông số tuyến tính này ta có:

Page 162: Bai Giang No-ron-All - Trần Hoài Linh

- 162 -

( )

( )

( )

( )

( )( )

( )( )

1 01

1 1

0 1

1

0 1

1

( )

1

1

M NM

k i k kj ijk i k k ik jk

i M M

k i k k i kk k

N M

k i k kj ijMj k

k i kk

N M

kj k i k ijMj k

k i kk

W q xW f

y

W W

W q x

W

q W x

W

= ==

= =

= =

=

= =

=

≈ ⋅≈ ⋅

= =

≈ ≈

= ≈ ⋅ ⋅

= ⋅ ≈ ⋅

∑ ∑∑

∑ ∑

∑∑∑

∑∑∑

x Ax A x

x A x A

x A

x A

x A

x A

(6.62)

Từ ñó ta có trong biểu diễn tín hiệu ñầu ra ứng với tín hiệu ñầu vào ix thông số

qαβ sẽ có hệ số tương ứng là

( )

( )1

i ii i M

k i kk

W xy q

W

α α βαβ

α β

=

≈ ⋅→ = ⋅

≈∑∑

x Ax

x A

(6.63)

Như vậy ứng với mỗi một mẫu tín hiệu ñầu vào, ta có 1 phương trình i iy d≈

cho ( 1)M N⋅ + ẩn số tuyến tính qαβ .

Với bộ số liệu p mẫu, ta sẽ có hệ p phương trình tuyến tính cho ( 1)M N⋅ + ẩn.

Bài toán xác ñịnh các ẩn qαβ ñể tối ưu hóa hàm sai số ( )21

1

2

p

i ii

E y d=

= −∑ có thể ñược

giải bằng nhiều phương pháp. Ví dụ ta có thể sử dụng phương pháp phân tích theo các hệ số kỳ dị (SVD – Singular Value Decomposition) [Golub96].

Sau khi ñã tìm ñược các thông số tuyến tính mới ta lại quay lại ñiều chỉnh các thông số phi tuyến theo thuật toán học ñã lựa chọn (ví dụ như thuật toán bước giảm cực ñại như ñã trình bày ở trên). Quá trình ñiều chỉnh này ñược thực hiện nhiều lần cho tới khi sai số giảm xuống dưới một mức ε ñã chọn trước hoặc ta ñạt ñược số lần lặp tối ña cho trước.

d. Khởi tạo mạng nơron cho quá trình học

Các thuật toán học cho mạng TSK nói riêng và cho các mạng nơ-rôn nói chung ñều là các thuật toán lặp và ñiểm xuất phát ban ñầu (các giá trị khởi tạo ban ñầu của các thông số cần ñiều chỉnh thích nghi) có ảnh hưởng rất lớn tới kết quả cuối cùng. Một quá trình lặp ñược xuất phát từ một ñiểm gần với ñiểm cực tiểu sẽ hội tụ nhanh hơn, một quá trình lặp ñược xuất phát từ một ñiểm xa sẽ phải thực hiện nhiều bước lặp hơn và khó hội tụ hơn. Do ñó ta luôn cần một phương pháp ñể khởi tạo các giá trị ban ñầu

Page 163: Bai Giang No-ron-All - Trần Hoài Linh

- 163 -

tốt cho các tham số nói chung và của các tham số phi tuyến nói riêng ñể quá trình học có thể hội tụ nhanh hơn ñến ñược các ñiểm cực tiểu tốt hơn.

ðối với mạng TSK các thông số phi tuyến bao gồm các giá trị trọng tâm của các quy tắc suy luận ( ñược thể hiện trong các giá trị ijA ), các ñộ mở của các quy tắc (ñược

thể hiện trong các giá trị ijσ ) và các hệ số hình dạng ijb .

Trước tiên ta sẽ xem xét về các trọng tâm. Mỗi một quy tắc thường ñặc trưng cho một vùng số liệu. Vì vậy ta có thể sử dụng phối hợp các công cụ của mạng Kohonen ñể khởi tạo các giá trị ban ñầu cho các trọng tâm của các quy tắc. Một quy tắc

của mạng TSK có dạng: 01

( )N

i ii

if then y f q q x=

≈ ≈ = +∑x A x hay có thể biểu diễn

dưới dạng ( ) ( )y W f= ≈ ⋅x A x với A là trọng tâm của quy tắc. Một quy tắc sẽ hoạt

ñộng hiệu quả khi nó ñặc trưng ñược cho nhiều mẫu số liệu. Vị vậy khi ta ñã xác ñịnh trước số quy tắc M ta cần xác ñịnh M trọng tâm iA ñăc trưng cho các quy tắc cần xác

ñịnh trên cơ sở p ñiểm mẫu ix . Ta có thể thấy yêu cầu này hoàn toàn tương tự với bài

toán xác ñịnh các trọng tâm của mạng Kohonen. Do ñó ta cũng có thể dùng một trong các thuật toán học của mạng Kohonen như WTA, WTM hoặc C-mean ñể khởi tạo các giá trị trọng tâm các quy tắc mờ của mạng TSK.

Khi ñã có các vị trí trọng tâm iA ñược xác ñịnh từ các thuật toán học của mạng

Kohonen, các giá trị ñộ mở có thể ñược xác ñịnh dựa trên vị trí tương ñối của các trọng tâm iA . Dựa trên ý nghĩa của ñộ mở của một quy tắc tương ứng với khoảng hoạt ñộng

của quy tắc ñó, ta có thể xác ñịnh ñộ mở của một quy tắc theo khoảng cách từ trọng tâm của quy tắc ñó tới các trọng tâm khác gần nhất. Theo ñó ñộ mở của mỗi quy tắc sẽ tỷ lệ thuận với khoảng cách từ trọng tâm của quy tắc ñó tới trọng tâm gần nhất của các quy tắc khác.

( )mini i jj i

σ α≠

= ⋅ −c c

Hệ số tỷ lệ α thường ñược lựa chọn trong dải giá trị [ ]0,3 0,8÷ . Trên hình 6.20

là việc xác ñịnh các ñộ mở với hệ số tỷ lệ 0,5α = , tương ñương với ñộ mở của mỗi

quy tắc sẽ bằng một nửa khoảng cách từ trọng tâm ñang xét tới trọng tâm gần nhất.

Page 164: Bai Giang No-ron-All - Trần Hoài Linh

- 164 -

Hình 6.20: V trí tS#ng ñ*i c�a ba tr'ng tâm và các vùng tác ñ)ng tS#ng ^ng ñ0 xác ñnh ñ) m_ c�a các quy tWc

Cuối cùng là các hệ số hình dạng ijb có thể ñược khởi tạo từ giá trị cơ bản là 1

tương ứng với dạng chuông ñặc trưng của hàm Gauss.

e. Ví dụ minh họa mô phỏng hàm phi tuyến

Trong phần này ta sẽ giới thiệu về khả năng ứng dụng mạng TSK ñể xấp xỉ các hàm phi tuyến phức tạp. Xét hàm phi tuyến theo công thức 6.69.

2 2

sin( ) sin( ) 1 1( , )

1 1

x yz x y

x y x y

⋅= + +

⋅ + + (6.69)

với giá trị x và y biến thiên trong khoảng [-10,10]. Hàm z(x,y) cho theo (6.69) ñược biểu diễn như hình 6.21.

Page 165: Bai Giang No-ron-All - Trần Hoài Linh

- 165 -

Hình 6.21: ð- th 3-D c�a hàm phi tuyFn cho theo công th^c (6.64)

Một bộ số liệu mẫu gồm 400 ñiểm ñã ñược tạo ngẫu nhiên trong miền xác ñịnh ñã cho. Và một số liệu khác cũng gồm 400 mẫu số liệu ñược tạo ngẫu nhiên ñể kiểm tra chất lượng của mạng ñược xây dựng từ bộ số liệu học ban ñầu. Mô hình xấp xỉ tốt là mô hình có sai số kiểm tra nhỏ nhất. Với bộ số liệu ñã cho, mạng TSK sẽ có hai ñầu vào (ứng với các giá trị x và y) và một ñầu ra (ứng với các giá trị z). Trước khi áp dụng các thuật toán học ta cần ước lượng số quy tắc suy luận. Một phương pháp phổ biến ñược sử dụng là phương pháp thử nghiệm với nhiều số quy tắc khác nhau và lựa chọn cấu trúc ứng với sai số kiểm tra bé nhất. Các kết quả sai số của mạng TSK với một số nhóm khác nhau ñược tổng kết theo bảng 6.1

Bảng 6.1: Kết quả kiểm tra mạng TSK với một số nhóm khác nhau

Số quy tắc suy luận Sai số học Sai số kiểm tra

6 10,987 17,514

7 7,413 10,310

9 6,231 11,215

14 6,318 10,388

Page 166: Bai Giang No-ron-All - Trần Hoài Linh

- 166 -

Bảng 6.1 cho thấy sai số kiểm tra của mạng với số luật M=7 là nhỏ nhất, ñáp ứng ñầu ra của mạng TSK sẽ là hàm phi tuyến ñược thể hiện như hình 6.22.

-10-5

05

10

-10

-5

0

5

10-1

0

1

2

3

xy

z

Hình 6.22: KFt qu$ tái t>o ánh x> phi tuyFn hàm g*c

Nhìn vào hình 6.22 ta nhận thấy rắng hình dạng của hàm phi tuyến ñược tái tạo khá

chính xác theo ảnh của hàm gốc. Sai số trung bình của một mẫu là

tbhoc7,413

E = =0,1400

và tbkt10,31

E = =0,161400

Page 167: Bai Giang No-ron-All - Trần Hoài Linh

- 167 -

-10-5

05

10

-10

-5

0

5

10-1

0

1

2

3

xy

z

Hình 6.23: Sai s* gila ñ?u ra c�a m>ng và giá tr g*c

Các hình 6.24, 6.25 và 6.26 biểu diễn quá trình ñiều khiển các thông số thích nghi của mạng TSK khi học với bộ số liệu trên theo thuật toán bước giảm cực ñại. Trục hoành của các ñồ thị là bước học t, còn trục tung là các giá trị của các tham số của luật suy luận mờ trong mạng TSK. Cụ thể, hình 6.24 biểu diễn sự thay ñổi thích nghi của các vị trí trọng tâm của các luật mờ

Page 168: Bai Giang No-ron-All - Trần Hoài Linh

- 168 -

Hình 6.24: ði/u chRnh thích nghi v trí (theo tr=c x) c�a 7 tr'ng tâm ci

Hình 6.25 là sự thay ñổi thích nghi của ñộ mở σ của các luật mờ

Page 169: Bai Giang No-ron-All - Trần Hoài Linh

- 169 -

Hình 6.25: ði/u chRnh thích nghi ñ) m_ c�a iσ c�a 7 quy tWc

Hình 6.26 là sự thay ñổi thích nghi của các hệ số hình dạng b.

Page 170: Bai Giang No-ron-All - Trần Hoài Linh

- 170 -

Hình 6.26: ði/u chRnh thích nghi h� s* hình d>ng bi c�a 7 quy tWc

Ta xét thêm 1 ví dụ với hàm phi tuyến khác. Xét hàm phi tuyến theo công thức (6.70)

2 2

( , ) sin 1 sin 115 15

x yz x y

= − + − +

(6.70)

với x và y biến thiên trong khoảng [-10, 10], ðồ thị của hàm số này có dạng như hình vẽ 6.27.

Page 171: Bai Giang No-ron-All - Trần Hoài Linh

- 171 -

-10-5

05

10

-10

-5

0

5

10-3

-2

-1

0

1

2

xy

z

Hình 6.27: Mbu hàm phi tuyFn g*c ban ñ?u

Từ công thức hàm gốc, tạo tập số liệu học gồm 400 ñiểm (x,y) ngẫu nhiên trong

miền xác ñịnh [ ] [ ]-10,10 × -10,10 . ðồng thời ñể phục vụ cho mục ñích kiểm tra, thêm

một tập số liệu kiểm tra gồm 400 ñiểm (x,y) ngẫu nhiên ñược tạo ra khác với tập số liệu

học cũng trong ñoạn [ ] [ ]-10,10 × -10,10 .

Bằng phương pháp thử nghiệm và lựa chọn, ta sẽ sử dụng 8 luật cho mạng TSK ñể

thực hiện ánh xạ phi tuyến này. Kết quả của quá trình học ñược thể hiện trên hình 6.28

và 6.29. Trong ñó hình 6.28 là hình dạng của ñáp ứng ñầu ra của mạng TSK. Ta có thể

nhận thấy hình dạng khá tương tự giữa hình 6.28 và hình 6.27. Sai số giữa hai ñáp ứng

này ñược thể hiện trên hình 6.29. Sai số tổng tính theo công thức 2( )i ii

E y d= −∑ cho

bộ số liệu học là 7,148 và cho bộ số liệu kiểm tra là 13,645 ứng với sai số trung bình là

h7,148

E = =0,134400

và kt13,645

E = =0,185400

.

Page 172: Bai Giang No-ron-All - Trần Hoài Linh

- 172 -

-10-5

05

10

-10

-5

0

5

10-3

-2

-1

0

1

2

xy

z

Hình 6.28: Hàm kFt qu$ sau khi h'c

-10-5

05

10

-10

-5

0

5

10-3

-2

-1

0

1

2

xy

z

Hình 6.29: Sai s* trên b) s* li�u ki0m tra

Page 173: Bai Giang No-ron-All - Trần Hoài Linh

- 173 -

Các kết quả thực nghiệm trên ñã góp phần chứng minh mạng TSK có khả năng thích

nghi tốt khi học các mô hình phi tuyến.

Page 174: Bai Giang No-ron-All - Trần Hoài Linh

- 174 -

Chương 7: Các ứng dụng của mạng nơ-rôn 1. Các bài toán nhận dạng: ñối tượng phi tuyến, ñối tượng phi tuyến ñộng

(có phản hồi)

7.1. Bài toán nhận dạng ảnh Trong phần này, ta sẽ xem xét một ví dụ ứng dụng mạng nơ-rôn trong việc phân

tích và nhận dạng các ký tự cho dưới dạng ảnh. Mạng nơ-rôn ñược sử dụng trong ví dụ này là mạng Hopfield. Các mẫu tín hiệu ñược cho dưới dạng ảnh bitmap 7 5× pixel, sau ñó ñược số hóa dưới dạng nhị phân: ñiểm ñen trở thành giá trị 1, ñiểm trắng trở thành giá trị 0. Với các ký tự chữ in hoa, ta có ñược 26 mẫu ký tự tổng cộng. Một số ví dụ về ảnh ñầu vào và ma trận ñã số hóa tương ứng của ảnh ñược thể hiện trên hình 7.1.

(a) (b) (c) (d)

0 0 1 0 0

0 1 0 1 0

0 1 0 1 0

1 0 0 0 1

1 1 1 1 1

1 0 0 0 1

1 0 0 0 1

1 1 1 1 0

1 0 0 0 1

1 0 0 0 1

1 1 1 1 0

1 0 0 0 1

1 0 0 0 1

1 1 1 1 0

1 0 0 0 1

1 0 0 0 1

0 1 0 1 0

0 0 1 0 0

0 0 1 0 0

0 0 1 0 0

0 0 1 0 0

1 1 1 1 1

0 0 0 0 1

0 0 0 1 0

0 0 1 0 0

0 1 0 0 0

1 0 0 0 0

1 1 1 1 1

(e) (f) (g) (h)

Hình 7.1: Các $nh mbu ký t� vLi kích thSLc 7 5× ñi0m (hàng trên) và các ma trZn s* hóa tS#ng ^ng (hàng dSLi)

Từ ma trận ñầu vào 7 5× ta cần chuyển ñổi về dạng phù hợp với nguyên tắc hoạt ñộng của mạng Hopfield là: ñầu vào véc-tơ và gồm các giá trị +1 và -1. Khi ñó các giá trị 0 ñược chuyển thành các giá trị -1, ta xếp ma trận 7 5× thành véc-tơ 35

Comment [THL5]: Còn thiếu

Page 175: Bai Giang No-ron-All - Trần Hoài Linh

- 175 -

thành phần bằng cách lần lượt nối các hàng của ma trận thành 1 véc-tơ. Khi ñó tổng cộng có 26 véc-tơ mẫu ñầu vào. Xây dựng mạng Hopfield theo thuật toán LMP [Li89] ta có ñược kết quả mạng ổn ñịnh (toàn bộ 26 mẫu ñều hội tụ về chính mẫu ñó). ðể kiểm tra chất lượng hoạt ñộng của mạng, ta thử nghiệm mạng với một số mẫu số liệu có nhiễu. Trên hình 7.2 là kết quả kiểm tra với hai mẫu ký tự N và K ñã ñược làm nhiễu. Từ ñầu vào 7.2a cho ký tự N nhiễu ñã ñược làm nhiễu tại 5 vị trí, ta có mạng Hopfield hội tụ về kết quả 7.2b, gần với ký tự N hơn. ðồng thời ảnh này chỉ còn lệch 2 pixel so với ảnh gốc N (hình 7.2c), ñây cũng là khoảng chênh lệch nhỏ nhất tới toàn bộ 26 mẫu ảnh ban ñầu.

ðối với mẫu K ñã ñược làm nhiễu tại 4 vị trí (như trên hình 7.2d) ta có kết quả hội tụ của mạng Hopfield như trên hình 7.2e. So sánh mẫu ảnh này với 26 mẫu ban ñầu ta có mẫu gần nhất chính là mẫu K (như hình 7.2f), nhưng ñộ sai lệch là 7 pixel. Có thể kết luận rằng, mặc dù ảnh hội tụ tới vị trí xa hơn so với trường hợp của mẫu N nói trên (sai lệch 2 pixel tới mẫu gần nhất), tuy nhiên ta vẫn có mẫu ảnh gần nhất tương ứng với ký tự ban ñầu (là ký tự K).

Qua một số ví dụ trên ñây, ta có thể thấy rằng mạng Hopfield có khả năng xử lý các bài toán nhận dạng hình ảnh ñã ñược số hóa và có khả năng xử lý ñược các ñối tượng ñã bị làm nhiễu bằng cách tính ra ñiểm hội tụ và ñưa về mẫu ảnh gần nhất trong số các mẫu ñược lưu ban ñầu.

(a) (b) (c)

(d) (e) (f)

Hình 7.2: Các $nh ki0m tra ký t� b nhiEu và kFt qu$ ñ?u ra c�a m>ng Hopfield: ký t� N nhiEu (a), kFt qu$ h)i t= c�a N (b) và mbu N không nhiEu ban ñ?u (c); ký t� K nhiEu (d), kFt

qu$ h)i t= c�a K (e) và mbu K không nhiEu ban ñ?u (f)

Page 176: Bai Giang No-ron-All - Trần Hoài Linh

- 176 -

7.2. Bài toán dự báo phụ tải ñiện Bài toán dự báo ñặt nhiệm vụ xác ñịnh giá trị một ñại lượng nào ñó dựa trên cơ

sở các số liệu quá khứ (của ñại lượng ñó và các ñại lượng khác). Trong phần này sẽ trình bày về bài toán dự báo phụ tải ñỉnh và ñáy của ñồ thị phụ tải ngày cho một khu vực trong lưới phân phối. Việc xây dựng các công cụ dự báo nhu cầu nói chung và dự báo nhu cầu về phụ tải ñiện nói riêng là vấn ñề cần thiết, làm cơ sở cho việc vận hành và khai thác hiệu quả nguồn và lưới ñiện ñạt hiệu quả cao, tiến tới hỗ trợ quy hoạch phát triển nguồn. Nếu dự báo phụ tải quá thừa so với nhu cầu sử dụng thì dẫn ñến hậu quả làm tăng chi phí huy ñộng công suất của các nhà máy ñiện. Ngược lại, nếu dự báo phụ tải quá thấp so với nhu cầu thì sẽ không ñủ ñiện năng cung cấp, gây ảnh hưởng ñến chất lượng ñiện năng của lưới ñiện. Dự báo nhu cầu ñiện năng ngắn hạn ngoài việc hỗ trợ vận hành và ñiều ñộ lưới ñiện còn hỗ trợ xác ñịnh quy luật và ñặc ñiểm của sự nhu cầu ñiện năng và phụ tải ñiện tiến tới phát hiện và giải quyết các vấn ñề tiềm ẩn bên trong hệ thống phụ tải (ổn ñịnh ñiện áp, ổn ñịnh tần số, cân bằng giữa ñiện năng sản xuất và ñiện năng tiêu thụ, san bằng ñồ thị phụ tải…). ðối tượng ñược lựa chọn ở ñây là khu vực Thái Nguyên. Ta biết rằng lượng ñiện năng tiêu thụ tại một khu vực thường phụ thuộc vào các lượng ñiện năng tiêu thụ trước ñó, ñồng thời cũng phụ thuộc vào cả các thông số thời tiết. Trong ví dụ này ngoài các thông số phụ tải ño trung bình trong từng giờ cho cả giai ñoạn, thông số thời tiết ñược sử dụng là nhiệt ñộ trung bình trong mỗi giờ của từng ngày. Các số liệu ñược lấy trong giai ñoạn từ 18/9/2000 ñến tháng 31/12/2008 (khoảng 420 tuần) bao gồm phụ tải tiêu thụ tại Thái Nguyên, nhiệt ñộ trung bình của khu vực. Các số liệu này sẽ ñược sử dụng ñể tạo các mẫu tín hiệu như sau:

0. ðỉnh phụ tải của từng ngày: max1 24

( ) max ( )ii

P d P d= →

=

0. ðáy phụ tải của từng ngày: min1 24

( ) min ( )ii

P d P d= →

=

0. Hình dạng (chuẩn hóa) của biểu ñồ phụ tải:

min

max min

( ) ( )( )

( ) ( )i

iP d P d

Pprofile dP d P d

−=

Với 2967 ngày ta sẽ sử dụng 2500 ngày ñầu tiên ñể làm bộ số liệu học, dùng ñể xây dựng và ñiều chỉnh thích nghi các tham số của các mô hình ước lượng. Số lượng 467 ngày còn lại sẽ ñược dùng ñể kiểm tra chất lượng chất lượng của mô hình.

Việc ước lượng hình dạng của biểu ñồ phụ tải ñược dựa trên ý tưởng tái tạo mối liên hệ của biểu ñồ phụ tải ngày d với các ngày liền kề hoặc cùng “kiểu ngày” (ngày trong tuần, theo yếu tố mùa, yếu tố thời tiết). Theo các khảo sát trên số liệu của khu vực Thái Nguyên (cũng sẽ ñược trình bày chi tiết hơn ở phần dự báo ñỉnh và ñáy của phụ tải) thì các ñại lượng phụ tải của ngày d phụ thuộc mạnh vào các ngày liền kề và ngày (cùng thứ) của các tuần liền trước. Mô hình sẽ sử dụng 4 ngày trong quá khứ là các ngày d-1, d-2, d-3 và d-7 ñể làm cơ sở dự báo cho hình dạng biểu ñồ phụ tải của ngày d.

Page 177: Bai Giang No-ron-All - Trần Hoài Linh

- 177 -

Bài toán dự báo các phụ tải ñỉnh và phụ tải ñáy dựa trên các số liệu quá khứ ñể ñưa ra ước lượng cho giá trị của các ngày sắp tới. Giả thiết rằng phụ tải ñỉnh ñược ước lượng theo dạng (phụ tải ñáy có dạng tương tự):

( )max 1,2, , max min( ) ( ), ( ), ( )i K tbP d f P d i P d i T d i=≈ − − −… (4.1)

trong ñó f() là một hàm phi tuyến. Các khảo sát số liệu cho thấy [] ñỉnh phụ tải của 5 ngày có ảnh hưởng lớn nhất tới ñỉnh phụ tải ngày d là các ngày d-1, d-2, d-3, d-4, d-7. Giá trị Pmin của 4 ngày có ảnh hưởng lớn nhất tới Pmax của ngày d là d-1, d-2, d-3 và d-7. Giá trị Ttb của 2 ngày có ảnh hưởng lớn nhất tới Pmax của ngày d là d-1 và d-5. Tổng hợp lại ta có mô hình ñược lựa chọn ñể dự báo giá trị Pmax của ngày thứ d sẽ gồm 11 số liệu từ quá khứ:

max max max max maxmax

min min min min

( 1), ( 2), ( 3), ( 4), ( 7),( )

( 1), ( 2), ( 3), ( 7), ( 1), ( 5)tb tb

P d P d P d P d P dP d f

P d P d P d P d T d T d

− − − − −=

− − − − − −

Hoàn toàn tương tự quy trình trên ñể có ñược mô hình dự báo cho giá trị dự báo Pmin ta có các kết quả sau:

– Giá trị Pmin của 4 ngày có ảnh hưởng lớn nhất tới Pmin của ngày d là d-1, d-2, d-3 và d-4.

– Giá trị Pmax của 5 ngày có ảnh hưởng lớn nhất tới Pmin của ngày d là d-1, d-2, d-3, d-4 và d-5.

– Giá trị Ttb của 2 ngày có ảnh hưởng lớn nhất tới Pmax của ngày d là d-1 và d-6.

Tổng hợp lại ta có mô hình ñược lựa chọn ñể dự báo giá trị Pmin của ngày thứ d sẽ gồm 11 số liệu từ quá khứ là

max max max max maxmin

min min min min

( 1), ( 2), ( 3), ( 4), ( 5),( )

( 1), ( 2), ( 3), ( 7), ( 1), ( 6)tb tb

P d P d P d P d P dP d f

P d P d P d P d T d T d

− − − − −=

− − − − − −

Mạng MLP ñược sử dụng ñể thực hiện tái tạo lại các mối quan hệ phi tuyến này. Mạng ñược xây dựng có cấu trúc 11 ñầu vào ứng với 11 ñại lượng quá khứ, 1 lớp ẩn với 150 nơ-rôn và 1 ñầu ra ứng với giá trị cần dự báo cho ngày tiếp theo. Các kết quả thu ñược tổng hợp trong các bảng sau. Bảng 7.1 là kết quả học của các mô hình cho bài toán dự báo phụ tải ñỉnh. Còn trong bảng 7.2 là kết quả kiểm tra cho các số liệu không tham gia vào quá trình học.

Bảng 7.1. Một số kết quả trên bộ số liệu học của bài toán ước lượng Pmax

Sai số Sai số của mạng MLP

1100%

y dMRE

N y

−= ⋅ 3,50%

1MAE y d

N= − 2,93

Comment [THL6]:

Page 178: Bai Giang No-ron-All - Trần Hoài Linh

- 178 -

maxMaxAE y d= − 35,62

Bảng 7.2. Một số kết quả trên bộ số liệu kiểm tra của bài toán ước lượng Pmax

Sai số Sai số của mạng MLP

1100%

y dMRE

N y

−= ⋅ 7,18%

1MAE y d

N= − 6,47

maxMaxAE y d= − 63,38

Thực hiện hoàn toàn tương tự cho mô hình ước lượng ñáy phụ tải Pmin ta thu ñược các kết quả như trong các bảng sau, trong ñó bảng 7.3 là kết quả sai số trên bộ số liệu học, còn trong bảng 7.4 là kết quả sai số trên bộ số liệu kiểm tra.

Bảng 7.3. Một số kết quả trên bộ số liệu học của bài toán ước lượng Pmin

Sai số Sai số của mạng MLP

1100%

y dMRE

N y

−= ⋅ 4,96%

1MAE y d

N= − 2,93

maxMaxAE y d= − 35,62

Bảng 7.4. Một số kết quả trên bộ số liệu kiểm tra của bài toán ước lượng Pmin

Sai số Sai số của mạng MLP

1100%

y dMRE

N y

−= ⋅

7,18%

1MAE y d

N= −

6,47

maxMaxAE y d= − 63,38

7.3. Bài toán ước lượng trữ lượng gió Nhờ vào tính “sạch” của mình mà năng lượng gió là một nguồn năng lượng

ñang ñược quan tâm hiện nay. Tuy nhiên việc xác ñịnh vị trí xây dựng một trong những vấn ñề ñầu tiên cần ñược giải quyết khi quy hoạch nhà máy ñiện gió. Tuổi thọ của một

Comment [THL7]: Kết luận

Page 179: Bai Giang No-ron-All - Trần Hoài Linh

- 179 -

nhà máy ñiện gió thường không quá dài, do ñó việc tính toán trữ lượng gió của ñiểm ñặt yêu cầu ñộ chính xác cao. Do ñó một trong những giải pháp hiện nay là tiến hành ño quan trắc trong thời gian dài ñể thống kê trữ lượng ñược chính xác. Trong phần này ta sẽ trình bày về giải pháp ứng dụng mạng nơ-rôn trong tính toán trữ lượng gió tại một vị trí dựa vào các kết quả quan trắc từ những vị trí xung quanh. Mô hình tính toán này có ñộ chính xác cao và thời gian cần ño thực tế tại ñiểm ñặt nhà máy ngắn hơn so với các phương pháp thông thường.

Việc xác ñịnh ñiểm ñặt nhà máy ñiện gió là một trong những nhiệm vụ quan trọng phải xác ñịnh trước tiên khi bắt ñầu quy hoạch nhà máy ñiện. ðể tính toán ñược trữ lượng gió của một ñiểm ñặt ta cần phải có số liệu về tốc ñộ gió tại vị trí này trong một khoảng thời gian ñủ dài ñể có thể ñưa ra các kết quả ước lượng có ñộ tin cậy cao vì thông thường tuổi thọ của một nhà máy ñiện gió không quá cao. Tuy nhiên việc ño ñạc dài hạn tại một vị trí sẽ kéo dài thời gian tính toán cũng như làm chậm tiến ñộ của việc xây dựng. Trong phần này ta sẽ xem xét về phương pháp sử dụng các kết quả ño khí tượng tại các ñiểm lân cận và xây dựng mô hình tính xấp xỉ mối liên hệ giữa tốc ñộ gió tại vị trí khảo sát với các ñiểm lân cận. Việc sử dụng mô hình này ñưa lại kết quả có ñộ chính xác cao và có thể giảm thời gian ño ñạc.

Hình 7.3: Bi0u ñ- công su4t c�a m)t turbin gió ph= thu)c vào t*c ñ) gió

ðể xác ñịnh ñược khả năng sản xuất năng lượng gió tại một vị trí A ta cần có ñược biểu ñồ vận tốc gió WA(t) tại ñiểm ñặt này theo thời gian. Với cấu tạo của các tuốc bin khí hiện nay thì các luồng gió với tốc ñộ dao ñộng trong khoảng nhất ñịnh mới có thể sử dụng ñược như có thể thấy trên hình 7.3. Trên hình này là ñặc tính của một

Page 180: Bai Giang No-ron-All - Trần Hoài Linh

- 180 -

tua binh chỉ hoạt ñộng cho các tốc ñộ gió từ 3 ñến 25m/s do tốc ñộ gió chậm sẽ không ñủ ñể vận hành máy phát, còn tốc ñộ gió quá cao sẽ gây mất an toàn cơ học cho máy phát. Từ vận tốc gió WA(t) ta có thể dễ dàng xác ñịnh công suất phát của nhà máy P(t) theo thời gian. ðể có ñược biểu ñồ vận tốc gió này thông thường ta phải tiến hành ño ñạc trong một thời gian dài (thường là vài năm) ñể có thể ñưa ra ñược một mô hình thống kế xấp xỉ. ðể khắc phục ñược nhược ñiểm này ta sẽ sử dụng giải pháp rút ngắn ñược thời gian ño ñạc dựa trên các số liệu ño ñạc quan trắc tại các ñiểm lân cận gần với vị trí lựa chọn. Trong thực tế trong mỗi vùng ta thường có các ñiểm thu thập số liệu quan trắc khí tượng liên tục trong một thời gian dài (có thể tới hàng chục năm). Khi cần xác ñịnh trữ lượng và biểu ñồ tốc ñộ gió WA(t) tại một ñiểm A, trước tiên ta tìm ñiểm lân cận gần ñó (ví dụ gọi là B) mà tại ñó ta có các số liệu quan trắc dài hạn WB(t). Nếu như ta có ñược mối quan hệ phụ thuộc giữa tốc ñộ gió của hai ñiển thì ta có thể dễ dàng tính ñược vận tốc gió tại ñiểm A trong toàn bộ khoảng thời gian ta ñã ño ở B. ðể xác ñịnh ñược mối quan hệ phụ thuộc này ta sẽ tiến hành ño ñạc tại ñiểm A trong một khoảng thời gian ngắn (thường là từ 6 tháng cho tới 1 năm). Trong thời gian này, ta vẫn có các số liệu ño ñạc tại B. Từ những số liệu này ta sẽ xây dựng một hàm phụ thuộc giữa lưu lượng gió tại A vào lưu lượng gió tại B. Sử dụng hàm phụ thuộc này cho tòan bộ thời gian ñã ño ñạc tại B ta sẽ có ñược kết quả gần ñúng cho lưu lượng gió tại A trong thời gian dài này. Tuy nhiên các thí nghiệm thực tế cho thấy các hàm phụ thuộc này là các hàm phi tuyến bậc cao, hơn nữa các số liệu ño ñạc lại chứa nhiều nhiễu, vì vậy ñể khắc phục các yếu ñiểm trên việc lựa chọn mô hình xấp xỉ bằng các mạng nơ-rôn trở nên hiệu quả. Ta sẽ chọn mô hình mạng kinh ñiển MLP ñể tính toán cho bài toán này.

Mạng MLP sẽ ñược sử dụng ñể xây dựng mô hình phụ thuộc y=F(x) với y là véc-tơ tốc ñộ gió trong một giờ tại ñiểm A ño với khoảng cách 60 phút một lần, x là véc-tơ tốc ñộ gió trong cùng thời ñiểm và 5 thời ñiểm trước ñó tại ñiểm B cũng ñược ño với khoảng cách 60 phút một lần (việc lựa chọn 6 giá trị cuối cùng của tốc ñộ gió dựa trên các kết quả thực nghiệm nhằm tăng cường ñộ chống nhiễu cho mô hình). Với 6 ñầu vào và 1 ñầu ra, ta lựa chọn 16 nơ-rôn trong lớp ẩn. Ta có 18 tháng số liệu ño tại vị trí cần ñặt. Với tập hợp này, ta sẽ chia thành hai phần. Một phần dùng ñể xây dựng mô hình, phần còn lại ñể kiểm tra ñộ chính xác của mô hình. Hình 7.4 biểu diễn sự biến thiên của tốc ñộ gió cho 1000 giờ ño ñầu tiên trong tập hợp xây dựng mô hình (số liệu tại ñiểm cần tính toán và tại ñiểm quan trắc cố ñịnh).

Page 181: Bai Giang No-ron-All - Trần Hoài Linh

- 181 -

(a)

(b)

Hình 7.4: T*c ñ) gió ño ñSTc t>i ñi0m quan trWc c* ñnh (a) và ñi0m nghiên c^u ñXt nhà máy ñi�n (b)

Quá trình tối ưu hóa sai số bằng cách ñiều chỉnh thích nghi các trọng số ghép nối trong mạng MLP bằng thuật toán Levenberg – Marquadrt. Hình 7.5 cho thấy quá trình tối ưu hóa này ñã có thể kết thúc sau 100 chu kỳ học. Sai số E ñã giảm từ giá trị 65,64 tại thời ñiểm bắt ñầu xuống tới 5,17 khi kết thúc học. Sai số trung bình của vận tốc trên tập số liệu học là 1,2m/s.

Page 182: Bai Giang No-ron-All - Trần Hoài Linh

- 182 -

Hình 7.5: Sai s* h'c gi$m d?n theo khi tăng s* chu kỳ h'c

Hình 7.6:Ví d= kFt qu$ tính toán so vLi s* ño th�c tF và sai s* c�a mô hình.

Mạng MLP thu ñược ñã ñược kiểm tra trên tập số liệu còn lại. Sai số kiểm tra ñạt 1,98m/s. Ví dụ tính toán bằng mô hình ñược mô tả trên hình 7.6: ðường giá trị thực tế và giá trị xấp xỉ cùng với ñường sai số dao ñộng chủ yếu trong khoảng [-2,2]. Ta thấy sai số trên tập số liệu mới (không xuất hiện trong quá trình xây dựng mô hình) có thể chấp nhận ñược, sai số trung bình nhỏ hơn 2m/s. Các giá trị này cũng chứng minh sự hoạt ñộng hiệu quả của mô hình mạng MLP ñối với các trường hợp “lạ” chưa có

Page 183: Bai Giang No-ron-All - Trần Hoài Linh

- 183 -

trong quá trình xây dựng mô hình. Tóm lại, ta có thể kết luận mạng MLP ñã cho phép ta xác ñịnh hàm phụ thuộc giữa tốc ñộ gió của hai ñịa ñiểm, trên cơ sở ñó ta có thể xác ñịnh ñược tốc ñộ gió tại một vị trí với ñộ chính xác cao mà không cần phải tiến hành ño ñạc quan trắc trong một thời gian dài. Bên cạnh ñó với các thuật toán học tự ñộng cho phép ta giải bài toán tối ưu hóa một cách dễ dàng với công cụ máy tính. Việc áp dụng các giải pháp nơ-rôn là một hướng nghiên cứu ñúng ñắn cho phép chúng ta sử dụng công nghệ mới, ñưa lại những kết quả chính xác.

7.4. Nhận dạng tín hiệu ñiện tâm ñồ Nhận dạng tín hiệu ñiện tâm ñồ (ECG signal – electrocardiograph signal) là

một trong những vấn ñề kỹ thuật ñang rất ñược quan tâm, ñầu tư nghiên cứu hiện nay. ðây là một vấn ñề khó do tín hiệu thường chứa nhiều nhiễu mạnh từ nhiều nguồn khác nhau như: ñiện áp nguồn, từ trường xung quanh thiết bị, tiếp xúc giữa các ñiện cực và da bệnh nhân,... ñặc biệt là còn phụ thuộc mạnh vào các chuyển ñộng của bệnh nhân cũng như tình trạng tâm lý của bệnh nhân. Bên cạnh ñó các phương pháp nhận dạng tín hiệu này cần có ñộ tin cậy rất cao vì có liên quan trực tiếp tới sức khỏe của bệnh nhân. Chính vì vậy việc nghiên cứu ứng dụng mạng nơ-ron ñể ñạt ñược những kết quả chính xác và tin cậy là một hướng ñi ñúng ñắn. Trong phần này ta sẽ trình bày về việc ứng dụng mạng nơ-ron MLP trong nhận dạng. Bên cạnh ñó, ñể phục vụ cho việc nhận dạng ñược hiệu quả, các ñặc tính của tín hiệu ECG sẽ ñược xác ñịnh dựa trên khai triển tín hiệu ECG theo các hàm Hermite [].

Tín hiệu ñiện tâm ñồ là một trong những nguồn thông tin quý giá ñể xác ñịnh ñược các bệnh lý về tim mạch của bệnh nhân. Dạng cơ bản của tín hiệu này cùng với các thành phần chính ñược thể hiện trên hình 7.7. Nhiều công trình nghiên cứu về các phương pháp nhận dạng tự ñộng tín hiệu ñiện tâm ñồ ECG ñã và ñang ñược tiến hành [3,4,5,6,7,8]. Một trong những khó khăn lớn của các máy nhận dạng ñiện tâm ñồ là ñộ biến thiên lớn của các tín hiệu này và cũng như ñộ nhiễu lớn từ các yếu tố khác. Tín hiệu ECG có thể thay ñổi mạnh không chỉ khi ốm mà còn ngay cả khi người bệnh tăng cường vận ñộng, căng thẳng thần kinh hoặc ngay cả khi các ñầu ño tín hiệu bị bẩn hoặc ẩm ướt... như có thể thấy trên hình 7.8. Vì vậy một trong những vấn ñề ñang ñược tích cực nghiên cứu hiện nay là xây dựng mô hình có khả năng chống nhiễu tốt cho dạng tín hiệu ñiện tâm ñồ.

Hình 7.7: Mbu tín hi�u ñi�n tim và ño>n QRS

Comment [THL8]:

Comment [THL9]:

Page 184: Bai Giang No-ron-All - Trần Hoài Linh

- 184 -

Hình 7.8: M)t tín hi�u ECG th�c tF vLi ño>n QRS biFn thiên (vLi hai d>ng nhp tim ki0u N và V)

Hình 7.9: S# ñ- chung c�a h� th*ng nhZn d>ng tín hi�u ECG

Hình 7.9 giới thiệu sơ ñồ chung của hệ thống nhận dạng tín hiệu ECG. Khối ñầu tiên của hệ thống là máy ño - ghi tín hiệu ECG. Vì ñể nhận dạng chúng ta chỉ dùng các thông số từ ñoạn QRS nên tín hiệu ño ñược chuyển qua khối thứ hai ñể tách ñoạn tín hiệu QRS cho gia công tiếp theo. Sau ñó các thông số của QRS ñược tính toán tại khối thứ 3 và sau ñó chúng ñược ñưa vào mạng nơ-rôn mờ ñể tính kết quả cuối cùng. Trong các tính toán mô phỏng, các số liệu ñầu vào ñược lấy từ nguồn cơ sở dữ liệu chuẩn MIT - BIH Arrhythmia Database [11].

Trên hình 7.8 và 7.10 chúng ta có thể nhận thấy trong tình trạng bình thường, ñoạn QRS của bệnh nhân có hình dáng khá ổn ñịnh, nhưng mức trung bình của tín hiệu cũng có xuất hiện nhiều biến thiên như có thể thấy trên hình 7.10a. Tuy nhiên trong trường hợp bệnh lý (hình 7.10b), các tín hiệu ECG biến thiên mạnh hơn và không có hình dáng cố ñịnh. Trong các tính toán tiếp theo, ta sử dụng các ñiện tâm ñồ có chứa tín hiệu ở trạng thái bình thường (ký hiệu chuẩn là N) và 6 trạng thái bệnh lý (có các ký hiệu chuẩn trong cơ sở dữ liệu là L, R, A, V, I, E) [].

Comment [THL10]:

Comment [THL11]:

Page 185: Bai Giang No-ron-All - Trần Hoài Linh

- 185 -

(a)

(b)

Hình 7.10: Ví d= các ño>n QRS c�a b�nh nhân trong tình tr>ng bình thSang (a) và trong tình tr>ng b�nh lý (b)

Việc sử dụng phương pháp phân tích tín hiệu trên cơ sở các hàm chuẩn Hermite do các ñặc trưng tín hiệu tương ñối giống về hình dạng giữa tín hiệu ECG và hàm Hermite. Khi có tín hiệu x(t), ta có các hệ số khai triển tín hiệu này theo các hàm cơ sở

Hermite ),( σφ tn là:

∑−

==

1

0),()(

N

nnn tctx σφ (7.1)

trong ñó

)/(!2

1),(

22/2σ

πσσφ σ tHe

nt n

t

nn

−= (7.2)

Page 186: Bai Giang No-ron-All - Trần Hoài Linh

- 186 -

và )/( σtH n là ña thức Hermite bậc n [].

Các trọng số cn trong khai triển trên cơ sở hàm chuẩn Hermite với ñiều kiện ràng buộc là sai số xấp xỉ trong công thức (1) ñạt cực tiểu sẽ là các thông số ñặc trưng của tín hiệu ñể ñưa vào mạng nơ-rôn mờ ñể nhận dạng.

Mạng TSK ñã ñược sử dụng ñể nhận dạng các tín hiệu ECG lấy từ cơ sở dữ liệu MIT-BIH AD [9]. Bố số liệu học có tổng cộng 3611 tín hiệu, bộ số liệu kiểm tra có 3068 tín hiệu (khác với các tín hiệu trong bộ số liệu học ñã ñược sử dụng). Mạng TSK ñược chọn với 21 quy tắc suy luận [10].

Các kết quả ñã ñược trình bày trong bảng 7.5. Ta có thể nhận thấy trong quá trình học, sai số của nhận dạng là 2,5%, còn trong quá trình kiểm tra là 4,4%. Việc chênh lệch nhỏ trong kết quả học và kiểm tra chứng tỏ chất lượng tốt của quá trình học cũng như của việc chuẩn bị số liệu ban ñầu. Các kết quả này cũng cho thấy hiệu quả của các phương pháp ñược ñề xuất ở trên.

Bảng 7.5: Các kết quả nhận dạng 7 loại tín hiệu ECG trong cơ sở dữ liệu MIT BIH ADB

Số lượng tín hiệu Số sai số Tỷ lệ sai số Loại tín hiệu Học Kiểm tra Học Kiểm tra Học Kiểm tra

N 1000 1000 13 16 1,3% 1,6%

L 700 500 25 55 3,57% 11%

R 600 400 2 4 0,33% 1%

A 484 418 28 38 5,79% 9,09%

V 500 500 12 18 2,4% 3,6%

I 272 200 3 3 1,1% 1,5%

E 55 50 3 2 5,45% 4,%

Tổng cộng 3611 3068 86 136 2,38% 4,43%

7.5. Bài toán phân loại các thành phần trong hỗn hợp khí Bài toán phân tích và nhận dạng các khí thành phần trong một hỗn hợp khí có

nhu cầu sử dụng cao trong thực tế [2,3]. Có thể kể tới các ứng dụng quan trọng như nhiệm vụ phát hiện rò rỉ khí cháy nổ, khí ñộc trong nhà máy, trong dân dụng, phân tích ñánh giá chất lượng thực phẩm, ñánh giá các ñiều kiện môi trường,...

Cụ thể trong phần này cần xây dựng là thiết bị “mũi nhân tạo” ñể xác ñịnh nồng ñộ các thành phần khí cháy nổ trong hỗn hợp khí ban ñầu. Mô hình tổng thể của mũi nhân tạo ño với một hệ cảm biến ñược trình bày trên hình 7.11.

Comment [THL12]:

Comment [THL13]: Ref only

Comment [THL14]:

Page 187: Bai Giang No-ron-All - Trần Hoài Linh

- 187 -

Hình 7.11: Mô hình “mũi nhân t>o” phân tích tín hi�u t\ h� c$m biFn

Trong các thiết bị ño và phân tích nồng ñộ khí, các cảm biến ñóng vai trò rất quan trọng. Các thiết bị ño sử dụng phân tích phổ có ñộ chính xác rất cao nhưng lại cồng kềnh, phức tạp, thường chỉ phù hợp cho việc sử dụng trong phòng thí nghiệm. ðể có ñược các thiết bị gọn nhẹ, ñơn giản cho các ứng dụng ngoài hiện trường hoặc xách tay ta thường sử dụng một trong ba loại cảm biến sau:

- Cảm biến sợi ñốt: có phủ một lớp ô-xít kim loại, ñược một sợi ñốt nhỏ nung lên nhiệt ñộ cần thiết (thường là lớn hơn 250oC) ñể tạo ñiều kiện phản ứng, khi cho hỗ hợp khí chạy qua thì các phần tử khí nhất ñịnh sẽ tác ñộng với lớp ô-xít kim loại ñể tạo ra tín hiệu ñiện trở, ñiện áp hoặc dòng ñiện ñể ñưa tới ñầu ra của cảm biến

- Cảm biến polymer: có phủ một lớp màng polymer có khả năng hấp thụ một lượng phân tử khí, khi ñó ñiện trở bề mặt của polymer sẽ thay ñổi. ðo ñiện trở này ta sẽ ước lượng ñược nồng ñộ của thành phần khí vừa ño.

- Cảm biến tinh thể: Có chứa một tinh thể ñã ñược lựa chọn sẵn cho mỗi loại khí có thể ño. Khi hỗn hợp khí ñược ñưa qua cảm biến, một số phân tử khí ñược hấp thụ bởi tinh thể này khiến cho tần số dao ñộng riêng của tinh thể thay ñổi. ðo tần số dao ñộng của tinh thể ta có thể ước lượng ñược nồng ñộ của thành phần khí trong hỗn hợp.

Các loại cảm biến vừa nêu có ưu ñiểm là gọn nhẹ, dễ thao tác, tuy nhiên nhược ñiểm chung lớn nhất của chúng là có ñặc tính phi tuyến, ñồng thời tính chọn lọc của cảm biến thấp, có nghĩa là cảm biến tác ñộng với nhiều loại khí khác nhau, do ñó nếu trong hỗn hợp xuất hiện ñồng thời các khí ñó thì ta không thể xác ñịnh ñược nồng ñộ của từng thành phần. Một ví dụ dạng ñặc tính của các cảm biến này ñược cho trên hình 7.12. Trong ñó trục hoành là nồng ñộ của thành phần khí (Tính theo %LEL - Lower Level of Explosion), trục tung là ñiện áp ñầu ra của cảm biến.

Page 188: Bai Giang No-ron-All - Trần Hoài Linh

- 188 -

Hình 7.12: M)t ñXc tính ví d= c�a c$m biFn khí cháy ng c�a Figaro

ðể khắc phục ñược nhược ñiểm này ta có thể xây dựng một thiết bị ño sử dụng một ma trận cảm biến. Khi sử dụng số chỉ của nhiều cảm biến ñồng thời ta có thể ước lượng ñược chính xác hơn các thành phần của hỗn hợp khí. Tuy nhiên có một vấn ñề lớn cần phải khắc phục khi ñó là thuật toán xử lý tín hiệu từ các cảm biến như thế nào ñể loại trừ hiệu ứng trùng phổ (tính không chọn lọc) của cảm biến?

ðể tạo các mẫu số liệu, 420 hỗn hợp khí ñã ñược chuẩn bị với các thành phần khí có nồng ñộ khác nhau. 4 thành phần khí cháy nổ ñược quan tâm cần xác ñịnh nồng ñộ là metan, propan, metanol và CO2

. 420 mẫu ñược chia thành 2 tập hợp: 340 mẫu ñể học, 80 mẫu ñể kiểm tra mô hình.

Mạng nơ-rôn ñược sử dụng ñể học theo các mẫu số liệu là mạng TSK với 5 ñầu vào (ứng với tín hiệu từ 5 cảm biến), 4 ñầu ra (ứng với 4 giá trị nồng ñộ của các thành phần khí ñược quan tâm) và có số luật mờ là 5 cho mỗi ñầu ra (tổng cộng có 20 luật).

Sau quá trình học với 340 mẫu, ta thu ñược sai số trên toàn bộ bộ số liệu học là 39,5 10E −= ⋅ tương ứng với sai số trung bình trên 1 mẫu là

5 32,79 10 5,3 10340tbE

e − −= = ⋅ = ⋅ (ppm). ðây là mức sai số rất nhỏ ứng với khả

năng học rất tốt của mạng TSK. Ví dụ với một ñầu ra khí CO2 (ñầu ra y1) ta có ñược 5 luật mờ như sau:

Luật 1:

1 2 3 4 5

1 1 2 3 4 5

0,48 0,082 0,065 0,129 0,0235

110,69 5,76 3,11 4,97 159,22 380,7

x AND x AND x AND x AND x

y x x x x x

≈ ≈ ≈ ≈ ≈

≈ ⋅ + ⋅ − ⋅ − ⋅ − ⋅ −

if

thenLuật 2:

Page 189: Bai Giang No-ron-All - Trần Hoài Linh

- 189 -

1 2 3 4 5

1 1 2 3 4 5

0,062 0,106 0,37 0,087 0,022

24,3 39,16 17,63 0,596 232,6 67,886

x AND x AND x AND x AND x

y x x x x x

≈ ≈ ≈ ≈ ≈

≈ − ⋅ + ⋅ − ⋅ + ⋅ + ⋅ +

if

thenLuật 3:

1 2 3 4 5

1 1 2 3 4 5

0,104 0,518 0,17 0,122 0,025

16,84 14,91 2,65 8,82 219,05 293,2

x AND x AND x AND x AND x

y x x x x x

≈ ≈ ≈ ≈ ≈

≈ − ⋅ − ⋅ + ⋅ + ⋅ − ⋅ +

if

then

Luật 4:

1 2 3 4 5

1 1 2 3 4 5

0,126 0,117 0,146 0,6 0,024

6,84 38,75 20,16 5,48 359,47 348,4

x AND x AND x AND x AND x

y x x x x x

≈ ≈ ≈ ≈ ≈

≈ − ⋅ + ⋅ − ⋅ − ⋅ − ⋅ +

if

thenLuật 5:

1 2 3 4 5

1 1 2 3 4 5

0,387 0,458 0,24 0,6 0,0316

50,45 2,21 29,48 2,37 22,26 129,01

x AND x AND x AND x AND x

y x x x x x

≈ ≈ ≈ ≈ ≈

≈ ⋅ + ⋅ + ⋅ − ⋅ − ⋅ +

if

then

Ta có thể nhận thấy rằng các giá trị ñiều kiện và các giá trị hệ số của hàm TSK ñều rất khó có thể tự xác ñịnh thủ công ñược từ bộ số liệu. ðây chính là ưu ñiểm nổi bật của các thuật toán học tự ñộng trên mẫu số liệu khi mà ta có thể có ñược các thông số của mô hình ñược ñiều chỉnh tự ñộng nên có ñược ñộ chính xác cao.

Trong bảng 7.6 là kết quả sai số kiểm tra mô hình vừa huấn luyện ñược trên bộ 80 số liệu còn lại.

Bảng 7.6: Một số kết quả sai số của mô hình trên bộ số liệu 80 mẫu kiểm tra

Thành phần khí Sai số tuyệt ñối

lớn nhất (ppm)

Sai số tuyệt ñối

trung bình (ppm)

Sai số tương ñối

trung bình (%)

CO2 12,71 3,04 1,21

Metan 3,86 1,09 0,32

Propan 26,50 6,15 5,86

Metanol 2,35 0,69 0,77

Trung bình 11,36 2,74 2,04

Ta có thể thấy ñược ñộ chính xác rất tốt của mô hình TSK trong các kết quả trên.

Page 190: Bai Giang No-ron-All - Trần Hoài Linh

- 190 -

8.1 Giới thiệu chung Trong chương này ta sẽ trình bày về các khả năng triển khai các mạng nơ-rôn

trên các thiết bị phần cứng. Trong các nghiên cứu về mạng nơ-rôn nói riêng và xử lý tín hiệu nói chung phần lớn các kết quả ñược thực hiện bằng các mô phỏng trên máy tính. Nếu như việc sử dụng máy tính ñể mô phỏng là khá thuận tiện trong các quá trình thử nghiệm thì việc này lại gây nhiều khó khăn trong các ứng dụng thực tế do kích thước hệ thống khá cồng kềnh, ñồng thời tốc ñộ tính toán cũng bị giảm chậm ñáng kể so với các giải pháp phần cứng tương ñương. Ví dụ như ta có thể so sánh tốc ñộ tính toán số học của một chương trình mô phỏng với một DSP (Digital Signal Processor) chuyên dụng, mức ñộ chênh lệch có thể lên tới hàng nghìn lần. ðối với mạng nơ-rôn cũng như vậy. Nếu ta có thể triển khai ñược các thiết bị chuyên dụng ñể mô phỏng ñược các cơ chế hoạt ñộng của các mạng nơ-rôn thì ta có thể dễ dàng sử dụng các thiết bị ñó trong các ứng dụng thực tế và thông qua ñó phát triển ñược số lượng cũng như chất lượng của các ứng dụng. Tuy nhiên khi triển khai các thiết bị phần cứng cho các mạng nơ-rôn, ta gặp một số khó khăn ñặc thù như:

- Cấu trúc mạng nơ-rôn là cấu trúc mạng, số lượng ghép nối giữa các khối tính toán rất lớn và ñó là các ghép nối ñó có dạng nối ñiểm – ñiểm (peer – to – peer) chứ không không phải ở dạng bus ñặc thù như các hệ vi xử lý hiện nay. Ví dụ như hai lớp nơ-rôn với 10 và 50 nơ-rôn thì ta có tới 500 ghép nối giữa các nơ-rôn này chưa tính tới các ñầu vào phân cực cho mỗi nơ-rôn.

- Các khối nơ-rôn là các khối tính toán ñộc lập song song và ña số các mạng hoạt ñộng theo nguyên tắc ñồng bộ (các nơ-rôn ở lớp phía sau cần có ñầy ñủ các tín hiệu ñầu vào từ các nơ-rôn ở lớp phía trước ñể có thể bắt ñầu tính toán và tạo ra tín hiệu ñầu ra cho các lớp phía sau) vì vậy thiết bị phần cứng cần có khả năng tạo ra các khối tính toán song song (và có cơ chế ñồng bộ giữa các khối ñó).

- Trong nhiều trường hợp, hàm truyền ñạt của mạch cứng không hoàn toàn giống với hàm truyền ñạt toán học của mô hình.

- Vấn ñề ñặc biệt khó khăn là việc triển khai các thuật toán ñiều chỉnh thích nghi cho các thông số của hệ thống do: mức ñộ phức tạp của các thuật toán tính toán cũng như các giải pháp ñể có ñược một hệ thống với các thông số có thể ñiều chỉnh ñược trong quá trình hoạt ñộng.

Mặc dù có những khó khăn cơ bản như vậy tuy nhiên cũng ñã có rất nhiều các giải pháp phần cứng mô phỏng các mạng nơ-rôn ñã ñược nghiên cứu và phát triển. Tuy nhiên nếu so sánh với các mạng nơ-rôn thực tế thì cấu trúc của các giải pháp phần cứng này còn hết sức ñơn giản. Nếu như bộ não của chúng ta có khoảng 1012 nơ-rôn thì các mạch phần cứng hiện nay mới chỉ có từ vài chục cho tới vài trăm khối nơ-rôn nhân tạo. ðể có thể có ñược các mạng lớn hơn ta cần ghép nối nhiều mạch cùng một lúc.

Trong chương này ta sẽ tìm hiểu về một số giải pháp từ ñơn giản ñến phức tạp, từ mạch mô phỏng khối nơ-rôn ñơn lẻ cho tới các mạch tích hợp cho nhiều nơ-rôn và nhiều cấu trúc mạng. Khi thiết kế các mạch phần cứng ta có một số tiêu chí cần chú ý như sau:

Page 191: Bai Giang No-ron-All - Trần Hoài Linh

- 191 -

- Các thông số của nơ-rôn có thể ñược thay ñổi ñược hay không? Các mạch có thông số có thể thay ñổi ñược sẽ cho phép triển khai ñược các thuật toán học cho nơ-rôn nói riêng và cho toàn mạng nơ-rôn nói chung. Khi ñó giải pháp sẽ mềm dẻo và có khả năng ñáp ứng các nhu cầu thực tế cao hơn.

- Thiết kế mạch có khả năng áp dụng cho các công nghệ chế tạo mạch VLSI (Very Large Scale of Integrity) hay không? ðể có ñược các mạch mô phỏng mang nơ-rôn cho các bài toán phức tạp ta cần có số lượng nơ-rôn tương ñối lớn và ñặc biệt là cần mô phỏng ñược các ghép nối có trọng số (hệ số khuếch ñại tín hiệu ñầu vào mỗi ghép nối) với số lượng rất lớn giữa các nơ-rôn với nhau. Vì vậy nếu triển khai mạch ñược theo công nghệ VLSI thì ta sẽ có các mạch nhỏ gọn, tiết kiệm năng lượng và khả năng áp dụng rộng rãi hơn.

8.2. Một số mô hình mạch mô phỏng các khối nơ-rôn cơ bản

8.2.1 Các khối nơ-rôn của mạng truyền thẳng Thành phần cơ bản của các mạng nơ-rôn là các nơ-rôn, hay còn gọi là các khối

tính toán. Ta có thể kể tới các dạng nơ-rôn với hàm truyền ñạt sigmoid (mạng MLP), tuyến tính bão hòa Satlin (mạng Hopfield), hàm Gauss (mạng RBF, TSK) hoặc hàm truyền ñạt tam giác (là dạng xấp xỉ tuyến tính khá phổ biến trong các ứng dụng thực tế của hàm Gauss). Ta ñã có rất nhiều các giải pháp khác nhau do các tác giả khác nhau ñề xuất. Trong phần này chúng ta sẽ lựa chọn một giải pháp tương ñối phổ thông ñược trình bày trong [Abuelma’ati06] cho phép tạo ra ñược nhiều dạng ñặc tính khác nhau ñể trình bày. Các bạn ñọc có thể tham khảo các tài liệu tham khảo khác ñể tìm hiểu thêm về các giải pháp khác ứng dụng trong mô phỏng mạch nơ-rôn.

Trên hình 8.1 là mô hình mạch tạo hàm truyền ñạt tam giác. Tín hiệu ñầu vào là tín hiệu dòng ñiện IIN, tín hiệu ñầu ra là dòng ñiện Iout.

Page 192: Bai Giang No-ron-All - Trần Hoài Linh

- 192 -

Hình 8.1: M>ch có hàm truy/n ñ>t dòng có d>ng tam giác

ðặc tính hàm truyền ñạt ñược biểu diễn trên hình 8.2 [Abuelma’ati06]. Ta có thể thay

ñổi vị trí của ñỉnh tam giác thông qua các cặp giá trị dòng ñiều khiển ñược là DFTI và

REFI . ðộ dốc của ñặc tính phụ thuộc vào hệ số khuếch ñại dòng của các mạch lặp

[Abuelma’ati06].

Hình 8.2: ðXc tính truy/n ñ>t dòng hình tam giác c�a m>ch 8.1

Page 193: Bai Giang No-ron-All - Trần Hoài Linh

- 193 -

Hình 8.3: ð) sai l�ch gila ñXc tính truy/n ñ>t tam giác vLi hàm d>ng chuông

ðể xây dựng nơ-rôn với hàm truyền ñạt hình chuông, các tác giả [Abuelma’ati06] ñã tiếp tục phát triển mạch từ hình 8.1. Ý tưởng của các tác giả là sử dụng mạch cộng ñặc tính. Vì thế ñể có ñược tín hiệu hình chuông của RBF ta cần cộng thêm vào ñặc tính tam giác một ñường ñặc tính phi tuyến như trên hình 8.3. ðặc tính phi tuyến này ñối xứng qua trục tung, mỗi nửa của ñặc tính có hai ñiểm cực trị (Peak-1 và Peak-2 như trên hình vẽ). ðể tạo ñược ñặc tính này, ta sẽ sử dụng mạch có cấu trúc như trên hình 8.4a với ñặc tính truyền ñạt dòng /OUT INI I như trên hình 8.4b.

Hình 8.4: M>ch t>o ñXc tính phi tuyFn vLi m)t c�c tr: a) c4u trúc m>ch, b) hàm truy/n ñ>t

Page 194: Bai Giang No-ron-All - Trần Hoài Linh

- 194 -

ðặc tính này có 1 ñiểm cực trị ñiều chỉnh ñược nên ñể tạo ra ñường ñặc tính có 2 ñiểm cực trị, ta sẽ sử dụng hai mạch 8.4a và cộng các ñáp ứng ñầu ra. Mạch cuối cùng có cấu trúc như trên hình 8.5 và ñặc tính của mạch có dạng hàm chuông với ñộ chính xác hơn 99% (sai số nhỏ hơn 1% [Abuelma’ati06]).

Hình 8.5: C4u trúc m>ch t>o hàm truy/n ñ>t hình chuông

Từ các mạch tạo tín hiệu tam giác và tín hiệu RBF, ta cũng có thể phát triển ñược các mạch tạo tín hiệu tuyến tính có bão hòa và mạch tín hiệu sigmoid. Ta xuất phát từ nhận xét rằng nếu từ mạch tam giác, ta chỉ lấy nửa trước của ñáp ứng (ñến ñiểm cực trị) và nửa phía sau ta cho tín hiệu ñầu ra bão hòa thì ta sẽ có mạch tuyến tính có bão hòa. Tương tự như vậy, nếu ta cho nửa trước của hàm RBF bão hòa thì ta có thể nhận ñược tính hiệu khá giống với hàm logsig. ðặc tính truyền ñạt tương tự như hàm logsig ñược thể hiện trên hình 8.6. Bên cạnh ñó ta cũng có thể thay ñổi các hệ số khuếch ñại trong mạch ñể có ñược các hàm logsig với hệ số dốc khác nhau.

Page 195: Bai Giang No-ron-All - Trần Hoài Linh

- 195 -

Hình 8.6: Dùng m)t n�a ñ?u c�a hàm chuông ñ0 mô ph�ng hàm logsig (vLi các h� s* d*c khác nhau)

Trong cả hai mạch tín hiệu tam giác và mạch tín hiệu RBF, ñiểm cực trị ñạt ñược khi IN DFTI I= . Ta sẽ bổ sung phần mạch phát hiện sự kiện này (có thể bằng cách

sử dụng mạch so sánh ñiện áp). ðầu ra của mạch so sánh này sẽ bằng “1” khi tín hiệu

IN DFTI I> và tín hiệu này sẽ ñược sử dụng ñể ñóng/cắt các cổng transistor (như M8,

M10, M12, M14, M16, M18) trong các mạch lặp dòng tùy thuộc theo chức năng của từng transistor. Mạch tín hiệu ñược bổ sung thêm phần ñiều khiển bão hòa (và lựa chọn dạng của tín hiệu giữa tam giác, RBF, tuyến tính bão hòa hay sigmoid) ñược thể hiện trên hình 8.7.

Page 196: Bai Giang No-ron-All - Trần Hoài Linh

- 196 -

Hình 8.7: M>ch tích hTp th�c hi�n c$ 4 d>ng hàm truy/n ñ>t là tam giác, chuông, tuyFn tính bão hòa và logsig

8.2.2 Mạch analog mô phỏng hoạt ñộng của nơ-rôn Kohonen (mạng SOM)

Ta nhắc lại nơ-rôn Kohonen là các trọng tâm của các vùng số liệu tương ứng với bộ số liệu mẫu ñầu vào. Nhiệm vụ của quá trình học của mạng nơ-rôn là xuất phát từ

một vị trí ban ñầu nào ñó của các trọng tậm (0)ic , cần dịch chuyển các trọng tâm này

sao cho mỗi trọng tâm ñược ñặt ở giữa một vùng số liệu thuộc vào bộ mẫu ban ñầu. Trong thuật toán học online, khi ta có 1 mẫu số liệu mới x ñược ñưa vào mạng

Page 197: Bai Giang No-ron-All - Trần Hoài Linh

- 197 -

Kohonen, các trọng tâm của mạng cần ñược ñiều chỉnh chuyển dịch dần về phía mẫu số liệu này (tuy nhiên lượng dịch chuyển của mỗi trọng tâm còn tùy thuộc vào khoảng cách từ trọng tâm tới mẫu số liệu và phụ thuộc vào nguyên tắc hoạt ñộng và thuật toán học của mạng)

Khi dịch chuyển trọng tâm ic về phía mẫu số liệu x ta có công thức theo (5.9):

( 1) ( ) ( )( )[ ]t t ti i itη+ = + −c c x c (8.1)

trong ñó ( )tη là giá trị của bước học tại thời ñiểm t . Với trường hợp số liệu nhiều

chiều, công thức trên có thể ñược thực hiện cho từng thành phần tọa ñộ của các véc-tơ

ic và x:

( 1) ( ) ( )( )[ ]t t tij ij j ijc c t x cη+ = + − (8.2)

ðể có thể ñưa thêm ảnh hưởng của vị trí tương ñối của các nơ-rôn tới hệ số học, ta có thể sử dụng công thức (5.10):

( )( 1) ( ) ( )( ) , [ ]W

t t ti i i N it Gη+ = + ⋅ ⋅ −c c c c x c (8.3)

trong ñó hệ số hàm lân cận ( ),Wi NG c c ñược xác ñịnh dựa trên khoảng cách từ trọng

tâm ñạng xét ic tới trọng tâm chiến thắng (winning neural) WN

c (gần nhất với x).

Ta có thể sử dụng mạch [Heim04] như trên hình 8.8 ñể mô phỏng các công thức trên.

Page 198: Bai Giang No-ron-All - Trần Hoài Linh

- 198 -

Hình 8.8: S# ñ- gi$i pháp m>ch mô ph�ng quá trình cZp nhZt 1 tr'ng s* theo thuZt toán h'c c�a m>ng Kohonen

Trên mạch này (ta sử dụng ký hiệu m thay cho cij ñể tránh nhầm lân với các ký hiệu tụ ñiện trên hình vẽ) với sự phối hợp của các khóa 1 và 2, ta có thể mô phỏng hai chế ñộ chính, ñó là lưu trữ các giá trị trọng số (trước quá trình học, ñể sử dụng trong quá trình học) và cập nhật trọng số (chuyển các trọng số mới về lưu nhớ cho các lần học sau).

Mạch gồm hai khối chuyển ñổi áp/dòng OTA (Operational Transconductance Amplifier), khối khuếch ñại tuyến tính A, khối ñảo dòng Current Inverter, 2 tụ ñiện và bốn khóa chuyển mạch.

ðể thực hiện lưu trữ các trọng số, ta mở khóa 1 (trong khi khóa 2 cũng ñang mở) thì ñiện áp trên tụ ñiện C sẽ ñược sao chép trên tụ C’ (do C Cv v ′= ).

Khi ñóng khóa 2, dòng ñầu ra của OTA 1mg sẽ nạp ñiện cho C và tạo ra chênh

lệch ñiện áp C Cv v′ − tại ñầu vào của OTA 2mg . Từ ñó ta có ñầu ra của OTA 2mg có

dòng ñiện 2 ( )m C Cg v v′− − . Dòng này ñược chuyển qua bộ ñảo dòng và khi chảy tới

cực – của bộ khuếch ñại, một phần dòng ñiện chảy vào nạp cho C (bỏ qua dòng chảy vào cực – của bộ khuếch ñại), phần còn lại cân bằng với chính dòng ñầu ra của OTA

2mg . Từ ñó ta có quan hệ:

2 1( ) ( )m C C m Cg v v g x v′ ′− = − (8.4)

Page 199: Bai Giang No-ron-All - Trần Hoài Linh

- 199 -

Biến ñổi tương ñương và rút gọn ta thu ñược

( )

2 1 1 2 2 1 1

1

2 1

( ) ( ) ( )m m C m m C m m C m C

mC C C

m m

g g v g x g v g g v g x v

gv v x v

g g

+ = ⋅ + ⋅ = + + −

= + ⋅ −+

(8.5)

So sánh với công thức 8.2 ta có, nếu ñiện áp trên tụ C là một thành phần tọa ñộ

của trọng tâm thì giá trị này sẽ ñược ñiều chỉnh với hệ số học là 1

1 2

m

m m

g

g gη =

+.

8.3 Một số mạch tích hợp mô phỏng nơ-rôn và mạng nơ-rôn

Từ các mạch mô phỏng nơ-rôn ñơn lẻ, ta có thể tích hợp lại ñể tạo thành các mạch mô phỏng ñược mạng nơ-rôn với các ñộ phức tạp cũng như ñộ chính xác khác nhau. Một trong những nghiên cứu ñầu tiên về các thiết bị phần cứng ñể mô phỏng mạng nơ-rôn ñược bắt ñầu từ những năm 50 của thế kỷ trước bởi Marvin Minsky. Ông ñã xây dựng một hệ thống trong ñó các hệ số khuếch ñại ñược thay ñổi thông qua việc thay ñổi giá trị của các biến trở trong mạch ñiện. Sau ñó Rosenblatt ñã sử dụng các mô hình này ñể xây dựng các mạng perceptron vào các năm 1957 – 1958. Các mạch perceptron của Rosenblatt có khả năng thực hiện các bài toán nhận dạng ñơn giản.

ðến năm 1960 Bernard Widrow và Marcian Hoff ñã sử dụng các ñèn ñiện tử memistor ñể xây dựng các hệ thống xử lý tín hiệu ñầu tiên có khả năng thích nghi theo số liệu mẫu. Cũng cùng khoảng thời gian này, Karl Steinbuch cũng xây dựng mạch mô phỏng bộ nhớ liên kết sử dụng các mạng ñiện trở.

Bắt ñầu từ thập kỷ 80 của thế kỷ trước, cùng với sự phát triển mạnh mẽ của các mạch ñiện tử số và mạch vi xử lý, các thiết bị mô phỏng cho mạng nơ-rôn cũng ñược nghiên cứu nhiều hơn và ta cũng có nhiều giải pháp ñã ñược ñưa ra. Có thể kể tới các dòng máy Mark ñược Hecht – Nielsen phát triển dựa trên các mạch vi xử lý. Song song với các giải pháp số, ta cũng có các công trình của Carver Mead về mạch tương tự.

Trong số các mạch tích hợp mô phỏng nơ-rôn và mạng nơ-rôn ta có thể tạm chia các giải pháp theo các nhóm với các tiêu chí khác nhau. Nếu phân chia theo dạng tín hiệu ta có thể có các mạch xử lý tín hiệu tương tự (analog), các mạch xử lý tín hiệu số (digital) và một số mạch ñược gọi là mạng lai (hybrid) do xử lý cả các tín hiệu tương tự và cả các tín hiệu số.

Nếu chia theo khả năng mô phỏng các chế ñộ cơ bản của mạng ta có:

1. Các mạch vi xử lý chỉ mô phỏng chế ñộ “kiểm tra” của một mạng nơ-rôn nào ñó. Khi ñó cấu trúc mạng nơ-rôn và các thông số của mạng ñó ñược xây dựng và huấn luyện theo các bộ số liệu trên các hệ tính toán ngoài (ví dụ như trên máy tính), sau ñó các thông số này ñược nạp xuống mạch vi xử lý và mạng chỉ hoạt ñộng ở chế ñộ kiểm tra (tiếp nhận các tín hiệu ñầu vào và tính toán tín hiệu ñầu ra theo cấu trúc ñã xây dựng). Nếu mạng nơ-rôn cần

Page 200: Bai Giang No-ron-All - Trần Hoài Linh

- 200 -

ñiều chỉnh thì các thông số này ñược ñiều chỉnh từ bên ngoài và nạp lại xuống mạch vi xử lý ñể cập nhật.

3. Các mạch vi xử lý có thể mô phỏng cả chế ñộ “học” của mạng. Khi ñó mạch vi xử lý cũng ñược nạp các thuật toán ñiều chỉnh thích nghi và mạch có thể sử dụng các thuật toán này ñể ñiều chỉnh các thông số của mình trong quá trình hoạt ñộng.

Nếu ta phân chia theo khả năng tính toán song song:

3. Mạch chỉ mô phỏng quá trình tính toán của mạng một cách tuần tự.

3. Mạch thực hiện các tính toán của mạng nơ-rôn một cách song song ñúng theo cấu trúc của mạng. Khi ñó tốc ñộ tín toán xử lý và ñưa ra ñáp ứng ñầu ra sẽ ñược tăng lên nhiều lần.

Nếu ta phân chia theo khả năng mô phỏng các thông số:

4. Mạch chỉ mô phỏng các thông số như hệ số khuếch ñại, hệ số trọng tâm, ñộ mở,… Các thông số này ñược lưu trữ trong bộ nhớ của mạch và ñược truy nhập ñể phục vụ tính toán khi cần.

4. Mạch có các thông số ñược mã “cứng” thông qua các giá trị thực của các phần tử mạch. Các thông số khi ñó sẽ ñược thể hiện qua giá trị ñiện trở, hoặc giá trị ñiện dung của tụ ñiện, tần số của mạch tạo xung,… Khi ñó việc sử dụng các thông số này trong tính toán cũng sẽ nhanh chóng và thuận tiện hơn so với trường hợp các thông số ñược lưu trong bộ nhớ.

ðồng thời do một trong những phần tử quan trọng nhất của mạng nơ-rôn là các hệ số ghép nối nên trong nhiều trường hợp các mạch mô phỏng mạng nơ-rôn ñược xếp hạng và ñánh giá thông qua số lượng ghép nối ñược xử lý trong một ñơn vị thời gian (cps – connections per second). Và ta cũng có hai trường hợp của cps nên chúng ta cần chú ý phân biệt là: 1. Số cps trong quá trình học (ta còn gọi là cups – connection updates per second) và 2. Số cps trong quá trình kiểm tra. Trên hình 8.9 là một số thông số về các hệ thống hoặc mạch mô phỏng và tốc ñộ hoạt ñộng của các mạch này ño theo cps [Rojas1996].

Page 201: Bai Giang No-ron-All - Trần Hoài Linh

- 201 -

Hình 8.9: S* lSTng tr'ng s* ghép n*i và t*c ñ) cZp nhZt c�a m)t s* gi$i pháp m>ch

Từ trên hình 8.9 ta có thể thấy máy tính cá nhân (PC/AT) có khả năng cập nhật khoảng 103 cps, trong khi ñó máy tính CM-2 có thể thực hiện tới 106 cps. ðể thuận tiện, ta cũng có thể gặp các bội số của cps như 1kcps = 1000 cps, 1 Mpcs = 1.000.000 cps,…

Trong phần tiếp sau, ta sẽ giới thiệu một số IC ñã ñược chế tạo ñể mô phỏng mạng nơ-rôn cơ bản.

8.3.1 Micro Devices MD1220 IC Micro Devices MD1220 ñược coi là IC mô phỏng mạng nơ-rôn ñầu tiên. Mỗi

IC có 8 ñầu vào hoạt ñộng theo hàm ngưỡng, mỗi ñầu vào có 8 kênh ñầu ra với hệ số khuếch ñại ñược mã hóa 16-bit. Tốc ñộ của IC ñạt khoảng 9.106 MCPS. Ta cũng có thể sử dụng nhiều IC ñể tạo thành các mạng lớn hơn.

8.3.2 NLX-420 Neural Processor Slice Dòng IC tương tự với MD1220 là IC NLX-420 Neural Processor Slice của

Neeuralogix. Mỗi IC có 16 khối ghép nối cho tín hiệu ñầu vào. 16 bít tín hiệu ñầu vào sẽ ñược nhân với trọng số của từng khối ghép nối (các trọng số này ñược lưu trữ bên trong khối ghép nối và ñược nạp vào từ bên ngoài). ðể thuận tiện cho việc xây dựng mạng, 16 kênh 1-bit ñầu vào có thể ñược cấu hình thành 16 ñầu vào 1 bít hoặc 4 ñầu vào 4 bít hoặc 2 ñầu vào 8 bít hoặc 1 ñầu vào 16 bít. Các tín hiệu ñầu ra từ 16 khối ghép nối sẽ ñược tổng lại và ñưa qua 1 khối hàm truyền ñạt tuyến tính từng ñoạn (ở dạng LUT – Look Up Table) ñể tạo thành tín hiệu ñầu ra 16 bít. IC còn cho phép tạo ra các kênh phản hồi ñể tạo thành cấu trúc mạng hồi quy, Nhiều IC có thể ghép nối phối hợp ñể tạo thành một mạng có cấu trúc phức tạp hơn.

Page 202: Bai Giang No-ron-All - Trần Hoài Linh

- 202 -

8.3.3 MT19003 NISP Neural Instruction Set Processor Công ty Micro Circuit Engineering ñã sản xuất IC MT19003 NISP Neural

Instruction Set Processor [MCE1994] và HWSI (Hitachi Wafer Scale Integration) [Yasunga1990]. IC NISP có lõi là vi xử lý dòng RISC chỉ với 7 lệnh chuyên dùng cho mạng truyền thẳng. Tốc ñộ tính toán của NISP có thể ñạt tới 40MCPS. Còn các IC HWSI có thể ñược sử dụng ñể mô phỏng mạng Hopfield với 18 khối tính toán và tốc ñộ ñạt tới khoảng 300 MCUPS [Glesner94].

8.3.4 80170NW ETANN Mạch tương tự mô phỏng mạng nơ-rôn ñầu tiên ñược sản xuất hàng loạt là dòng

sản phẩm 80170NW ETANN (Electrically Trainable Analog Neural Network) của Intel với 64 nơ-rôn và 10280 ghép nối trong mỗi khối [Intel91]. Mạch có cấu trúc mềm dẻo, cho phép ta cấu hình mạng 2 lớp hoặc 3 lớp với số nơ-rôn thay ñổi trên mỗi lớp. Tuy nhiên các giá trị trọng số ghép nối cần ñược nạp từ bên ngoài vì mạch không ñược trang bị chức năng học cho các trọng số ghép nối.

8.3.5 NeuroClassifier Viện MESA Research Institute tại ðại học Twente ñã chế tạo NeuroClassifier

với 70 ñầu vào tương tự, 6 nơ-rôn ẩn và 1 ñầu ra tương tự. Các trọng số ghép nối ñược mã hóa 5 bít, tốc ñộ xử lý thông tin ñạt 20 GCPS.

Công ty Ricoh Company ñã sử dụng giải pháp thay ñổi ñộ rộng xung ñể mô phỏng sự thay ñổi các trọng số ghép nối giữa các nơ-rôn. Công ty này ñã chế tạo dòng RN-100 mô phỏng một nơ-rôn với tối ña 8 ñầu vào và 8 ñầu ra, dòng RN-200 mô phỏng 16 nơ-rôn, mỗi nơ-rôn có tối ña 16 ghép nối vào/ra [Eguci90].

8.3.6. Các card PC Accelerator và Neurocomputers Ngoài các giải pháp IC và mạch hoạt ñộng ñộc lập, ta còn có thể gặp các giải

pháp mạch chuyên dụng cắm trên PC.

Bảng 8.1 liệt kê một số mạch chuyên dụng có thể sử dụng. Các mạch thường ñược trang bị các thư viện hàm xử lý tín hiệu cho một hoặc nhiều dạng mạng khác nhau. Một số mạch ñược tích hợp các DSP ñể tăng tốc ñộ tính toán trong quá trình xử lý tín hiệu (ñặc biệt là trong quá trình học). Ví dụ như mạch CNAPS của công ty Adaptive Solutions sử dụng từ 1 ñến 4 IC, Inova N64000 có thể chạy với máy tính có hệ ñiều hành UNIX,…

Bảng 8.1: Một số card chuyên dụng dùng trong mô phỏng mạng nơ-rôn

Tên card Tên vi xử lý trung tâm

AND Hnet Transputer 1.0 Transputer T400

BrainMaker Accel. TI TMS320C25 DSP

Page 203: Bai Giang No-ron-All - Trần Hoài Linh

- 203 -

Current Tech. MM32k Prop. 2048 PE/chip

HNC Balbo 860 Intel i860

IBM ZISC ISA IBM ZISC036

Neural Tech NT6000 TI TMS320C20 DSP

NeurodynamX XR50 Intel i860

Nestor Ni1000 Nestor Bi1000

Rapid Imageing 0491E1-ISA Intel ETANN

Vision Harvest NeuroSim. Intel i860

Ward Sys. NeuralBoard Inova N64000

HNC SNAP HNC 100 NAP

Siemens SYNAPSE-1 Siemens MA-16

a. Card HNC SNAP

Tương tự như vậy, mạch HNC SNAP gồm 2 mạch con VME, mỗi mạch con có 4 IC NAP 100. Mạch này ñược PC ñiều khiển thông qua card ñiều khiển HNC Balboa ñi kèm.

b. CNAPS của hãng Adaptive Solutions

ðây là hệ thống ñược xây dựng dựa trên DSP CNAPS-1064 có 64 khối tính toán song song ñược ghép nối theo chuẩn SIMD. Mỗi khối tính toán có 4kB bộ nhớ và có thể thực hiện các phép tính số nguyên với toán hạng 1 bít, 8 bít và 16 bít với tốc ñộ 1,28 triệu phép tính nhân hoặc cộng trong một mili giây. Ta có thể sử dụng mỗi khối tính toán này ñể mô phỏng 1 nơ-rôn. Các thư viện ñi kèm cho phép thực hiện thuật toán học theo lan truyền ngược sai số với tốc ñộ 1,16 triệu phép tính nhân hoặc cộng trong một mili giây (tương ñương với 293 nghìn trọng số ghép nối ñược cập nhật).

Page 204: Bai Giang No-ron-All - Trần Hoài Linh

- 204 -

(a) (b)

Hình 8.10: CNAPS – 1064: a) mXt trên, b)mXt dSLi

c. IBM ZISC036:

Dòng ZISC036 (Zero Instruction Set Computer) là một IC số 144 chân với 64 ñầu vào 8 bít và 36 nơ-rôn (khối tính toán) với hàm truyền ñạt xuyên tâm (mạng RBF). Mỗi khối tính toán có thể lưu trữ 1 véc-tơ mẫu 8 bít ñể có thể tính khoảng cách tới véc-

tơ ñầu vào theo một trong hai công thức: khoảng cách Manhattan 1

( , )N

i ii

d x c=

= −∑x c

hoặc khoảng cách Chebyshev 1

( , ) max i ii N

d x c= ÷

= −x c . Giá trị khoảng cách này ñược rời

rạc hóa 14 bít và ñưa ra ñầu ra của mỗi nơ-rôn. IC cho phép ñiều chỉnh thích nghi ñược vị trí của các nơ-rôn mẫu và các trọng số ñể phù hợp với bộ số liệu cho trước. Thời gian học 1 mẫu số liệu xấp xỉ 2 sµ . Thế hệ tiếp theo của dòng sản phẩm này là

ZISC78 (gồm 78 nơ-rôn, ñóng gói IC 100 chân) và CogniMem 1K (1024 nơ-rôn, ñóng gói IC 100 chân).

d. IC SAND của DataFactory

SAND/1 (Simple Applicable Neural Device) là một mạch có khả năng mô phỏng nhiều mạng nơ-rôn như mạng MLP, RBF và Kohonen. SAND/1 có tốc ñộ xử lý 200 MCPS do sử dụng song song 4 bộ nhân 16 bít và 8 bộ cộng 40 bít với ñồng hồ 50MHz. SAND có thể mô phỏng mạng truyền thẳng với 3 lớp ẩn và 512 nơ-rôn ñầu vào.

Trên cơ sở SAND/1 ta còn có mạch Neuroboard ghép nối với PC theo chuẩn PCI. Mạch này có thể tích hợp tới 4 khối SAND/1 và ñược ñiều khiển bởi thư viện NeuroLution ñi kèm theo.

(a) (b)

Hình 8.11: SAND IC và SAND Board vLi 4 SAND IC

Page 205: Bai Giang No-ron-All - Trần Hoài Linh

- 205 -

e. ETANN 80170NX

Mạch ETANN 80170NX của Intel (Electrically Trainable Analog Neural Network): mạch tương tự có tới 64 ñầu vào (từ 0 ñến 3V), 64 nơ-rôn với hàm truyền ñạt sigmoid (có thể chia làm 2 lớp ẩn) và 64 nơ-rôn ñầu ra. Các trọng số ghép nối ñược số hóa với ñộ phân giải thấp là 5 bít.

Hình 8.12: Board ETANN c�a Intel

IC không tích hợp các thuật toán học nên các trọng số ghép nối và cấu trúc cần ñược thiết kế bên ngoài (có các phần mềm tích hợp ñi kèm ñể hỗ trợ) rồi nạp xuống mạch. Intel cũng cung cấp bo mạch có thể tích hợp 8 IC ETANN ñể tăng khả năng ghép nối và mở rộng cấu trúc của mạng mô phỏng.

f. 3DANN của Irvine Sensors

Công ty Irvine Sensors ñã thiết kế một giải pháp xếp chồng nhiều tầng IC ñể nâng cao ñộ tích hợp của mạch. Cũng vì vậy mà dòng sản phẩm này có tên gọi là 3D (ba chiều). Năm 1998, công ty ñã thắng thầu cung cấp giải pháp tích hợp này cho Quân ñội Mỹ. Cũng vì lý do này mà các ứng dụng cũng như các phát triển tiếp theo ñều không ñược công bố rộng rãi.

Page 206: Bai Giang No-ron-All - Trần Hoài Linh

- 206 -

Hình 8.13: Hình d>ng bên ngoài c�a IC 3DANN

g. NeuFuz/COP8 của National Semiconductor

ðây là một trong số ít các giải pháp dùng ñể mô phỏng các hệ thống nơ-rôn lô-gic mờ. IC cho phép xử lý hệ nhiều luật suy luận mờ ở dạng “if … then …”, ñồng thời các thông số của hệ mờ có thể ñược ñiều chỉnh thích nghi (bằng các phần mềm tích hợp trên PC) cho phù hợp với các bộ mẫu số liệu. Mạch có thể có tối ña 4 ñầu vào, mỗi ñầu vào có 3 hàm phụ thuộc mờ hóa và 1 ñầu ra.

h. NI1000 của Nestor:

Có khả năng mô phỏng các nơ-rôn RBF. Mạch có thể có 256 ñầu vào, có thể lưu trữ tới 1024 mẫu tín hiệu. Các tín hiệu ñược rời rạc hóa với ñộ phân giải 5 bít. Mạng có tốc ñộ xử lý 25 /sµ mẫu.

Page 207: Bai Giang No-ron-All - Trần Hoài Linh

- 207 -

Hình 8.14: C4u trúc bên trong c�a NI-1000

i. NeuriCam NC3001 (TOTEM):

ðược phát triển bởi công ty IRST phối hợp với trường ðH Trento. IC có các ñầu vào 16 bít, các trọng số ghép nối 8 bít và ñầu ra 32 bít, 32 khối nhân/cộng xử lý song song. IC có thể mô phỏng ñược mạng có tới 16 ñầu vào, 16 nơ-rôn lớp ẩn và 1 ñầu ra. IC ñược trang bị tích hợp thuật toán học trên mạng và có thể hoạt ñộng với tốc ñộ 1GCPS khi ñồng hồ hệ thống là 32MHz.

Page 208: Bai Giang No-ron-All - Trần Hoài Linh

- 208 -

Hình 8.15: Hình d>ng bên ngoài c�a board m>ch ch^a IC NeuriCam

j. pRAM-256 của UCLi Ltd.

IC pRAM-256 mô phỏng ñược hệ có 256 nơ-rôn, có tích hợp cả thuật toán học trên bo mạch. Khi hoạt ñộng với ñồng hồ hệ thống 33 MHz, IC có thể thực hiện ñược 1 bước lặp của thuật toán học trong vào không quá 0,25ms. Công ty UCLi Ltd. còn cung cấp mạch tích hợp 5 khối pRAM-256 có thể ghép nối với PC ñể thực hiện mô phỏng các mạng nơ-rôn có tới 1280 nơ-rôn.

Hình 8.16: IC ñ#n pRAM-256 và m>ch tích hTp ch^a 5 IC ñ#n

k. BrainMaker Accelerators

BrainMaker Accelerators là giải pháp bo mạch tích hợp với PC qua chuẩn ghép nối ISA, có tốc ñộ xử lý lên tới 3 GCPS, bộ nhớ trong 5MB cho phép lưu trữ ñược 600.000 trọng số ghép nối và 250kB dữ liệu số. Bộ nhớ trong có thể mở rộng tới 32MB.

Page 209: Bai Giang No-ron-All - Trần Hoài Linh

- 209 -

Hình 8.17: Bo m>ch BrainMaker tích hTp trên card chujn ISA

Page 210: Bai Giang No-ron-All - Trần Hoài Linh

- 210 -

1. Abuelma’ati M.T., Shwehneh A., A Reconfigurable Satlin/Sigmoid/Gaussian/Triangular Basis Functions Computation Circuit, IEEE Asia Pacific Conference on Circuits and Systems, p. 1172 – 1175, 12/2006.

2. Ackley D.H., Hinton G.E., Sejnowski T.J., A Learning Algorithm for Boltzmann Machines, Cognitive Science, vol. 9, p 147 – 169, 1985.

3. Aspray W., Burks A., Papers on John von Neumann on Computing and Computer Theory, Charles Babbage Institute Reprint Series for the History of Computing, vol. 12, Cambridge, MA: MIT Press, 1986.

4. Barto A.G., Sutton R.S., Anderson C.W., Neuronlike adaptive elements that can solve difficult learning control problems, IEEE Transactions on Systems, Man and Cybernetics, vol. SMC-13, p. 834 – 846, 1983.

5. Bezdek J. C., Pattern Recognition with Fuzzy Objective Function Algoritms, Plenum Press, New York, 1981.

6. Blum, 1992, Blum, A. (1992), Learning boolean functions in an infinite attribute space, Machine Learning, 9(4):373-386.

7. Boger, Z., and Guterman, H. (1997), Knowledge extraction from artificial neural network models, IEEE Systems, Man, and Cybernetics Conference, 1997.

8. Boser B., Guyon I., Vapnik V.N., A Training Algorithm for Optimal Margin Classifier. Fifth Annual Workshop on Computational Learning Theory, p. 144 – 152, San Mateo, CA: Morgan Kaufmann, 1992

9. Breiman L., Bagging predictors, Machine Learning, vol. 24, p. 123–140, 1996.

10. Broomhead D.S., Lowe D., Multivariable functional interpolation and adaptive network, Complex Systems, vol. 2, p. 321 – 355, 1988

11. Brown T.H., Kairiss E. W., Keenan C. L., Hebbian synapses: biophysical mechanisms and algorithms, Annual Rev. Neurosci. 1990, Vol. 13, p.475 – 511.

12. Cajas Ramon y, Histologie du System Nerveux de l’Homme et des Vertebres, Paris, 1911.

Page 211: Bai Giang No-ron-All - Trần Hoài Linh

- 211 -

13. Deza E., Deza M. M., Encyclopedia of Distances, Springer, 2009.

14. Dunn J. C., A Fuzzy Relative of the ISODATA Process and Its Use in Detecting Compact Well-Separated Clusters, Journal of Cybernetics, vol. 3, p. 32 – 57, 1973.

15. Eguci H., Furata T., Horiguchi H., Oteki S., Kitaguchi T., Neural Network LSI Chip with On-chip Learning, Proc. Int. Joint Conf. on Neural Networks IJCNN'90, 1990.

16. Faggin F., VLSI implementation of neural networks, Tutorial Notes, International Joint Conference on Neural Networks, Seatle, 1991

17. Fischler M.A., Firschein O., Intelligence: The Eye, the Brain, and the Computer, Reading, MA: Addison – Wesley, 1987

18. Glencoe Science: Electricity and Magnetism, McGraw-Hill, 2001.

19. Glesner M., Pöchmüller W., Neurocomputers: An Overview of Neural Networks in VLSI, Chapman &Hall, London, 1994.

20. Golub G.H., Van Loan C.F.,Matrix computations, 3ed., The Johns Hopkins University Press, 1996

21. Grossberg S., How does a brain build a cognitive code?, Psychological Review, vol. 87, p. 1 – 51, 1980.

22. Hagan M., Mohammed B. M., Training Feedforward Networks with the Marquardt Algorithm, IEEE Trans. On Neural Networks 5(6), p. 989 – 993, 1994

23. Hebb, D. O., The organization of behavior. New York: Wiley & Sons, 1949.

24. Heim P., Vittoz E., Precise Analog Synapse for Kohonen Feature Maps, IEEE Journal on Solid State Circuits, vol. 29, No. 8, p. 982 – 985, 8/2004.

25. Intel, 80170NX ETANN Data Sheet, Intel Corporation, 1991.

26. Kirkpatrick S., Gelatt C.D. Jr., Vecchi M.P., Optimization by stimulated annealing, Science, vol. 220, p. 671 – 680, 1983

27. Kolmogorov A. N., On the representation of continuous functions of several variables by superposition of continuous functions of one variable and addition, Dokl. Akad. Nauk SSSR, vol. 114, p. 953 – 956.

28. Kosko B., Bidirectional Asociative Memories, IEE Trans. On Systems, Man and Cybernetics, vol. 18, No. 1, p. 49 – 60, 1988.

Page 212: Bai Giang No-ron-All - Trần Hoài Linh

- 212 -

29. Larson S., The shrinkage of the coefficient of multiple correlation, Journal of Educational Psychol., vol.22, p. 45–55,1931.

30. Li J., Michel A. N., Porod W., Analysis and synthesis of a class of neural networks: linear systems operating on a closed hypercube, IEEE Transactions on Circuits and Systems, vol. 36, no. 11, pp. 1405-1422, November 1989.

31. Linh T. H., A Modified TSK Network and Its Application in Classification, International Journal of Information Technology, Vol.12 No.6, p. 78 – 86, 2006.McCulloch W.S., W. Pitts, A logical calculus of the ideas immanent in nervous activity, Bulletin of Mathematical Biophysics, vol. 5, p. 115 – 133, 1943.

32. MCE, MT19003 Data Sheet, 1994.

33. Mendel, J. M., McLaren, R. W., Reinforcement learning control and pattern recognition systems, in Adaptive, Learning and Pattern Recognition Systems: Theory and Applications, p. 287-318. Academic Press, New York, 1970

34. Minsky M.L., Papert S.A., Perceptrons: An Introduction to Computational Geometry, Cambridge, MA:MIT Press, 1969

35. Nigrin A., Neural Networks For Pattern Recognition, Cambridge MA: The MIT Press, 1993

36. Rochester N., Holland J.H., Haibt L.H., Duda W.L., Tests on a cell assembly theory of the action of the brain, using a large digital computer, IRE Transactions on Information Theory, vol. IT-2, p. 80 – 93, 1956.

37. Rojas R., Neural Networks, Springer – Verlag, 1996

38. Rumelhart D.E., Hinton G.E., Williams R.J., Learning representations of back-propagation errors, Nature, vol. 323, p. 533 – 536, 1986.

39. Sejnowski, T. J., Storing covariance with nonlinearly interacting neurons, J. Math. Biol. Vol.4, 1977a, p. 303 – 321.

40. Sejnowski, T. J., Statistical constraints on synaptic plasticity, J. Theoret. Biol. Vol. 69, 1977b, p. 385 – 389.

41. Shepherd G. M., Koch C., Introduction to synaptic circuits, in “The Synaptic Organization of the Brain”, p. 3-31, New York – Oxford University Press, 1990

Page 213: Bai Giang No-ron-All - Trần Hoài Linh

- 213 -

42. Swingler K., Applying Neural Networks: A Practical Guide, Morgan Kaufmann, 1996.

43. von der Malsburg C., Self-organization of orientation sensitive cells in the striate cortex, Kybernetik, vol. 14, p. 85 – 100, 1973

44. Wang A., Ramsay B., A neural network based estimator for electricity spot-pricing with particular reference to weekend and public holiday, Neurocomputing, vol. 23, p. 47 - 57, 1998.

45. Werbos P.J., Beyond regression: New tools for prediction and analysis in the behavioral sciences, PhD Thesis, Harvard University, Cambridge, MA, 1974.

46. Williams R. J., Zipser D., Experimental Analysis of the Real-time Recurrent Learning Algorithm, Connection Science, vol. 1, No. 1, p. 87 – 111, 1989Yasunga M., Msuda N., Yagyu M., Asai M., Yamada M., Masaki A., Design, Fabrication and Evaluation of a 5-Inch Wafer Scale Neural Network LSI Composed of 576 Digital Neurons, Proc. Int. Joint Conf. on Neural Networks IJCNN 1990, vol. II, p. 527-535.

47. Zadeh L.A., Fuzzy sets. Information and Control, vol. 8, No. 3, 338–353, 1965

48. Zadeh L.A., Fuzzy sets and systems, System Theory (editor Fox J.), Polytechnic Press, p. 29–39, 1965

49. Zadeh L.A., Outline of a new approach to the analysis of complex systems and decision processes, IEEE Trans. Systems, Man and Cybernetics, vol. 3, p. 28–44, 1973.

50. Zurada J. M., Introduction to Artificial Neural Systems, PWS Publishing Company, 1992


Recommended