🔙 Quay lại trang tải sách pdf ebook Giáo trình một số ứng dụng mạng Nơron xây dựng mô hình nhận dạng và dự báo
Ebooks
Nhóm Zalo
CÔNG THƯƠNG
JG ĐẠI HỌC SAO Đỏ
TS. DINH VÃN NHƯỢNG
GIÁO TRÌNH
MỘT SỔ 0HB DỤNG MẠNG HƠROH KÂV DỰNG MÔ HỈNH HHẬn DẠNG UÀ Dự BÁO ■ ■ ■ ■
( Ị ^ ẹ U
BỘ C Ô N G THƯƠNG - TRƯỜNG ĐẠI HỌ C SAO Đ Ò T S . Đ I N H V Ă N N H Ư Ợ N G
( Ỉ I Ấ O T I Ù M I
MỘT SỐ ỨNG DỤNG MẠNG NƠRON XÂY DỰNG MÔ HÌNH NHẬN DẠNG VÀ Dự BÁO
NHÀ XUẤT BẢN KHOA HỌC V À KỸ THUẬT
HÀ NỘI-2013
fjữ ỉi n ó i đ ầ u
Các ứng dụng mạng mrron trong mô hình nhận dạng và dự báo đã
và đang trong giai đoạn phát triến mạnh mẽ cà về phương diện lý thuyết cũng như thực tế, thu hút sự quan tăm của đông đảo các nhà khoa học trong và ngoài nước. Nhiều mô hình điểu khiên mờ đã được nghiên cứu và xây dựng dựa trên các quy tắc suy luận của trí tuệ nhân tạo, giúp con người có khả năng chế ngự được những đôi lượng có những thông số biến động mạnh và phức tạp. Điểu khiển mờ, hay điểu khiên mờ thích nghi đã nâng cao chất lượng điểu khiển, đặc biệt đối với các bài toán nhận dạng, dự báo mà tín hiệu đầu vào có nhiều thông số biến thiên phức tạp. Một trong những bài toán đó phải kê đến là các bài toán nhận dạng phân loại sản phâm công nghiệp và các bài toán dự báo nói chung, đã và đang được ứng dụng mạnh và cho kết quả tot.
Cuốn "Giáo trình một số ứng dụng mạng nơron xây dựng mô hình nhận dạng và d ụ báo " gồm có 3 phần, 4 chương. Nội dung để cập đến một số van đề lý thuyết cơ bán của mạng nơron, đồng thời cũng đưa ra một sổ mô hình ứng dụng mạng nơron trong nhận dạng đổi tượng là hàm phi tuyến, một sổ sàn phẩm công nghiệp cũng như dự báo sự cố xảy ra trong máy điện...
Trong quá trình biên soạn cuốn giáo trình này, tác già đã tham khảo nhiều sách, nhiều công trình nghiên cứu cùng với những kết quà ứng dụng mô hình mạng nơron của chính các tác giả, của các bài báo khoa học đã được báo cáo trong các hội thào khoa học, được đăng trên các tạp chỉ nghiên cứu khoa học có uy tín trong và ngoài nước, tìồng thời, trong quá trình biên soạn tác già cũng nhận được sự đóng góp ỷ kiến của các đồng nghiệp khoa Điện, khoa Điện tử - Tin học (Trường Đại học Sao Đỏ) và Ban Biên tập (Nhà xuất bàn Khoa học và Kỹ thuật). Hy vọng rằng, cuốn giÚQ trình sẽ là tài liệu học tập, tham khảo hữu ích cho sinh viên, cán bộ kỹ thuật nghiên cứu thuộc các lĩnh vực Điện, Điện tử, Đo lường điều khiển và Tin học công nghiệp.
Mặc dù đã cố gắng, song cuốn giáo trình xuất bản lần đâu nên khó tránh khỏi những thiếu sót, tác giả mong nhận được sự góp ý của bạn đọc để ngày càng hoàn thiện hom trong lần xuất bán sau.
Thư góp ỷ xin được gửi về theo địa chi Email: nhuonech’2000(a),email, com . Trân trọng cảm ơn.
TÁC GIẢ
3
MỤC LỤC
Trang
LÒI NÓI ĐÀU ..............................................................................................................3 Phần I. NHẬP M Ô N ..........................................................................................................5
CHƯƠNG 1. TỒNG QUAN VỀ MẠNG N Ơ RO N .............................„...5 1.1. Lịch sử phát triển và ứng dụng mạng nơron.....................................5 1.2. Mạng nơron nhân tạ o .........................................................................9 1.3. Mô hình mạng nơron .......................................................................12 1.4. Huấn luyện mạng nơron ..................................................................17 1.5. Thuật toán lan truyền ngược ............................................................21
Phần II. MỌT SỐ MẠNG NƠRON THƯỜNG s ử DỤNG TRONG NHẶN DẠNG PHÂN L O Ạ I........................................................................29
CHƯƠNG 2. MẠNG NƠRON.................................................................. 29 2.1. Mạng nơron một lớp ....................................................................... 29 2.2. Mạng MLP (Multilayer Percepừons Network) ................................ 44
CHƯƠNG 3. MẠNG NƠRON LÔGIC MỜ TSK................................ 50 3.1. Lôgic m ờ ..........................................................................................50 3.2. Mạng TSK (Takaga - Sugeno - Kang) ..........................................56
Phần III. MỘT SỐ ỨNG DỤNG MẠNG NƠRON TRONG NHẬN DẠNG VA D ự BÁO ....................!................................................... ’........................ Ổ8
CHƯƠNG 4. ỨNG DỤNG MẠNG NƠRON TRONCj
NHẬN DẠNG VÀ D ự B Á O ........................................... 88
4.1. Nhận dạng và các phương pháp tiếp cận ........................................88 4.2. ủng dụng trong nhận dạng hàm phi tuyến .................................... 90 4.3. ứng dụng trong nhận dạng, phân loại........................................... 102 4.4. ủng dụng trong dự báo sự cố động c ơ ..........................................109
TÀI LIỆU THAM K H Ả O ............................................................................................... 125 4
Phần I
NHẬP MÔN
Chương 1
TỔNG QUAN VỀ MẠNG NƠRON
1.1. LỊCH SỬ PHÁT TRIỂN VÀ ỨNG DỤNG MẠNG NƠRON 1.1.1. Lịch sử phát triển mạng nơron
Trong những thập niên vừa qua một ngành khoa học mới đã và đang được đầu tư nghiên cứu và phát triển rất mạnh trên thế giới cũng như ở Việt Nam, đó là những nghiên cứu về ứng dụng trí tuệ nhân tạo trong việc giải các bài toán: Xử lý tín hiệu; Đo lường; Điều khiển; Dự báo...
Thế kỷ XX đã đánh dấu việc xuất hiện của các phần tử bán dẫn, đặc biệt là transistor và sau đó là các mạch tích hợp rụà ứng dụng quan trọng nhất là tạo ra được máy tính điện tử. Kể từ ngày ra đời, máy tính điện tử đã không ngừng đưọc hoàn thiện, tốc độ tính toán đạt tói kỷ lục khó tưởng tượng, kích thước các mạch tính toán ngày càng nhỏ gọn. Tuy nhiên, nếu so sánh với khả năng con người thì các máy móc còn thua kém rất xa. Trước tiên có thể kể tới các giác quan và khả năng phân tích, xử lý thông tin của con người. Ví dụ như con người có khả năng phân biệt mùi qua khứu giác, trong khi những ma trận càm biến khí hiện đại nhất hiện nay trên thế giới cũng không thể đạt được mức độ chính xác như khứu giác con người và thường cũng chỉ phản ứng với một vài loại khí và mùi khác nhau. Cũng có thể lấy ví dụ về mắt người có một khả năng ghi nhớ các hinh ảnh và phân tích, nhận dạng các ảnh mới ngay cà trong trường hợp đối tượng được nhận dạng đã bị thay đổi rất nhiều. Khả năng này hiện nay cũng đang được các nhà khoa học trên thế giới tìm cách mô phỏng, tuy nhiên kết quả còn hết sức hạn chế. Khả năng lớn nhất của con người mà hiện nay chưa có hệ thống
5
nào mô phỏng được với kết quả khả quan đó là: khả năng tư duy, tự suy nghĩ và tự tìm giải pháp từ kết quả tư duy. Chính khả năng này đã đưa lại được tính “thông minh” cho con người.
Do đó trong lĩnh vực trí tuệ nhân tạo ta nghiên cứu phương pháp mô phỏng các hoạt động, các phương pháp tư duy, phân tích của con người để xây dựng những thiết bị, hệ thống có chức năng tương tự. Để giải quyết vấn đề này có một ngành đã và đang được phát triển mạnh với nhiều kết quả được áp dụng trong thực tế đó là các nghiên cứu về mạng nơron và nơron lôgic mờ. Các mạng nơron và nơron lôgic mờ được xây dựng nhằm mục đích mô phỏng quá trình học và suy luận tương tự như học và suy luận của con người.
Hàng loạt các ứng dụng thực tế đã áp dụng các mạng nơron và nơron lôgic mờ với kết quả tốt hơn hẳn so với những giải pháp kinh điển. Một trong những ứng dụng quan trọng đầu tiên của các giải pháp nơron và lôgic mờ là hệ thống điều khiển tự động các đường tàu điện ngầm tại Nhật Bản vào cuối những năm 70, đầu những năm 80 của thế kỷ trước. Ngày nay ta thấy những giải pháp nơron và nơron lôgic mờ có mặt ở khắp nơi, ngay cả trong những thiết bị điện tử dân dụng như bộ điều khiển máy giặt, máy điều hoà nhiệt độ, tủ lạnh và đang được ứng dụng mạnh mẽ vào trong công nghiệp và được nhiều nhà khoa học quan tâm nghiên cứu. Theo R.Schalkoff thì có thể chia sự phát triển của mạng nơron nhân tạo thành 3 giai đoạn:
Giai đoạn 1: Tiền Perceptron (những năm 1940 - 1960): Trong giai đoạn này mạng chưa đủ phức tạp cho nên chưa có khả năng giải quj'et các bài toán khó có sức thuyết phục. Các sự kiện trong giai đoạn này cần kể đến:
- Năm 1943 McCulloch lần đầu tiên giới thiệu mô hình toán học cùa mạng nơron.
-N ăm 1957 Rosenblatt định nghĩa Perceptron mong muốn khẳng định các nơron liên kết, phi tuyến tạo nên mạng thích nghi có thể góp phần giải quyết các bài toán nhận dạng.
- Năm 1960 Windrow đóng góp chính là thuật toán trung bình bình phương cực tiểu LMS cho mô hình Adaline/Madaline.
- Kết quả của Minsky và Papert năm 1969.
ó
Giai đoạn 2: Hậu Perceptron: Giai đoạn này Perceptron được phát huy với những thuật toán truyền thẳng và liên kết suy rộng. Tìm thêm nhiều câu trúc mới. trong đó cần kể tới:
- Mạng truyền thẳng với thuật toán lan truyền ngược (luật Delta suy rộng-GDR) năm 1985.
- Mạng dùng các hàm cơ sờ xuyên tâm (mạng RBF).
- Các mạng Hopíĩeĩd hồi quy năm 1982.
- Bộ nhớ liên họp hai chiều (ABAM) năm 1987.
- Công trình các mạng thích nghi của Grossberg và Kohonen. Giai đoạn 3: Giai đoạn gần đây và hiện nay tiếp tục nghiên cứu và đưa vào thực tiễn nhiều mô hình và thuật toán đã hoàn chỉnh hơn. Những vấn đề chính hiện nay đang cần nghiên cứu là:
- Đánh giá xác thực những hạn chế của mạng nơron.
- Các k.hả năng suy rộng khác.
- Phối hợp công nghệ mạng nơron và các công nghệ lôgic mờ và các thuật toán di truyền.
- Cài đặt các mạng nơron nhân tạo bằng các phần cứng chuyên dụng. Những thuật toán điều khiển mờ đang được quan tâm và đạt được nhiều kết quà khả quan, ứng dụng nhiều trong công nghiệp đó là: Điều khiển Mamdani (MC- Mamdani Control).
Diều khiển m ờ trượt (SM FC-Sliding M ode Fuzzy c ontrol). Điều khiển tra bảng (CM-Cell Maping Control).
Điều khiển Takaga - Sugeno - Kang (TSK).
1.1.2. Phạm vi ứng dụng
Lĩnh vực ứng dụng của mạng nơron nhân tạo rất rộng, chù yếu tập trung trong các lĩnh vực sau:
Lĩnh vực 1: Phân lớp (classification), tách cụm (clustering), dụ đoán (diagnoisis) và liên kết. Đây là lĩnh vực tìm thấy nhiều ứng dụng nhất và cũng được nghiên cứu nhiều nhất. Nhóm mô hình này nhận dạng những tín hiệu vào tĩnh hoặc tín hiệu theo thời gian và cần nhận dạng hoặc phân lớp chúng. Thuật toán phân lớp cần huấn luyện mạng sao cho khi tín hiệu vào bị
7
biến dạng ít nhiều thì mạng vẫn nhận đúng dạng thực tế của chúng. Trong lĩnh vực này, yêu cầu mạng có khả năng miễn nhiễu tốt, đây cũng là mong muốn của nhiều ứng dụng.
Lĩnh vực 2: Các bài toán tối ưu. vấn đề chính ờ đây là tìm những thuật toán huấn luyện mạng sao cho góp phần tìm nghiệm cho nhiều lóp bài toán tối ưu toàn cục. Trong nhóm các thuật toán ứng dụng mạng nơron, người ta đã quan tâm đến sự kết hợp mạng nơron với các thuật toán di truyền.
Lĩnh vực 3: Hồi quy và tổng quát hoá (Regression and Generalization). Trước đây các bài toán hồi quy đã được tích cực nghiên cứu. Qua hồi quy tuyến tính và phi tuyến người ta cố gắng tim các đường thẳng hoặc các đường hồi quy phi tuyến trơn sao cho khớp với mẫu. Trong bài toán hồi quy người ta thường dùng các thuật toán có giám sát nên bài toán suy rộng khó hon, vì dữ liệu được học mới chi có một phần.
Lĩnh vực 4: Hoàn chình dạng (Pattern completion). Bài toán là hoàn chinh “Đủ” dữ liệu ban đầu sau khi đã bị mất đi một phần hay ta chi thu được một phần. Người ta đã quan tâm tới hai mô hình: Mô hình Markov và các mạng có độ trễ với các mạng nơron nhiêu lóp, mạng Bolzmann và mạng Hopfield tĩnh.
Trong những năm của thập kỷ này được xem là thời kỳ nở rộ cùa các công trinh khoa học nghiên cứu về mạng Mờ-nơron cũng như Nơron-mờ với những ứng dụng trong nhận dạng hình ảnh, trong hệ thống hỗ trợ quyết định, trong cơ chế suy diễn Nơron-mờ. Nguyên nhân của sự phát triến đó là sự ra đời của mạng Hopfield, Tank, tiếp nối là sự hoàn thiện các thuật toán lan truyền ngược của Rumenlhart, Hinton, Wiliams, Nauck và Kruse cho mạng MLP (Multilayer perceptrons Network). Nguyên nhân nữa thúc đẩy sự phát triển này chính là các sàn phẩm lôgic mờ ở Nhật Bản phát triển mạnh mẽ và các “Chip mờ” đã được ứng dụng trong điều khiển: Máy giặt, nồi com điện, máy điều hoà. Hiện nay hệ thống điều khiển mờ đang được ứng dụng ở một số nhà máy xi măng có hệ thống tự động hoá hiện đại ở nước ta, trong đó có Tổng công ty xi măng Hoàng Thạch.
Các công trinh nghiên cứu ứng dụng mạng nơron lôgic mờ trong các bài toán nhận dạng như: Nhận dạng chữ viết; Nhận dạng tiếng nói; nhận dạng dấu vân tay; nhận dạng sự cố tiềm ẩn trong thiết bị điện; nhận dạng
8
phân loại khí thải công nghiệp,...; xử lý ảnh và nhiều ứng dụng khác trong các lĩnh vực Quốc phòng, Y tê. Xây dựng,...
1.2. MẠNG NƠRON NHÂN TẠO
1.2.1. Não và nơron sinh học
Não là tố chức cao cấp có cấu tạo vô cùng phức tạp, dày đặc các mối liên kết giữa các nơron nhưiig xử lý thông tin linh hoạt trong một môi trường bất định.
Trong bộ não có khoảng lo " đến 1012 nơron và mỗi nơron có thể liên kết với 104 nơron khác qua các khớp nối. Những kích hoạt ức chế này được truyền qua trục nơron (axon) đến các nơron khác. Trên hình 1.1 là hình ảnh của tế bào nơron trong bộ não của con người.
H inh 1.1. Hình ảnh của tế bào nơron trong bộ não của con người
Nơron sinh học: Phần tử xử lý cơ bàn của một mạng nơron sinh học là một nơron, phần tử này có thể chia làm bốp thành phần cơ bản như sau: dendrites, soma, axon, và synapses.
- Dendrites: là phần nhận tín hiệu đầu vào.
- Soma: là hạt nhân.
- Axon: là phần dẫn ra tín hiệu xử lý.
- Synapses: là đường tín hiệu điện hóa giao tiếp giữa các nơron. 9
Một cách tổng quát, thì một nơron sinh học nhận đầu vào từ các nguồn khác nhau, kết hợp chúng tại với nhau, thực thi tồ hợp phi tuyến chúng để cho ra kết quả cuối cùng ở đầu ra. Hình 1.2 chỉ ra mối quan hệ giữa bốn phần tử cửa một nơron sinh học.
Nhân
Sợi trục ra
Các nhár
hình cây
H ình 1.2. Một nơron sinh học
Một nơron sinh học chi có một số chức năng cơ bản, như vậy ta nhận thấy khả năng xử lý thông tin của nó là rất yếu. Để có được khả năng xử lý thông tin hoàn hảo như bộ não con người, thì các nơron phải kết hợp và trao đồi thông tin với nhau. Ta hình dung sơ đồ liên kết, và trao đổi thông tin giữa hai nơron như hình 1.3
Các nhánh vào
hlnh cây
Sk. Thân tế bào
C U - - ' * ‘ H ư ớ n g truyền
Thiết bị đ ầu ra sợi trục khớp thần kinh với
- ràr các tinh thể nhánh cây trên tế bào đích tinh th ể n h á n h r.âv trê n tÀ h à n đ ín h
Sợi trục ra
H ình 1.3. S ự liên kết các nơron
10
Khi ta nhìn não từ góc độ tính toán, chúng ta dễ dàng phát hiện cách thức tính toán của não khác xa với tính toán theo thuật toán và chương trình chúng ta thường làm với sự trợ giúp của máy tính. Sự khác biệt trước tiên ở hai điểm quan trọng là:
- Quá trình tính toán được tiến hành song song và phân tán trên nhiều nơron gần như đồng thời.
- Tính toán thực chất là quá trình học chứ không phải theo sơ đồ định sẵn từ trước.
Thông thường, một mạng nơron bao gồm một hoặc nhiều các nơron được kết nối vật lý với nhau hoặc có liên kết với nhau về mặt chức năng. Một nơron đơn có thể được nối với nhiều nơron khác và tổng số nơron kết nôi trong một mạng có thể là giá trị cực kỳ lớn. Các kết nối gọi là các khớp thần kinh (synapeses), thường nối từ các axon tới các tể bào tua gai thần kinh (dendrite), tuy có thể có các vi mạch dendrodentritic và các kết nối khác. Do vậy, cũng như các mạng sinh học khác, mạng nơron vô cùng phức tạp.
1.2.2. Nơron nhân tạo
Mạng nơron nhân tạo ià một mô phỏng xử lý thông tin, được nghiên cứu dựa trên hệ thống thần kinh của sinh vật, giống như bộ não để xử lý thông tin. Nó bao gồm số lượng lớn các mối gắn kết cấp cao để xừ lý các yếu tố làm việc trong mối liên hệ giải quyết vấn đề rõ ràng. ANN (Antiílcal Neural Networks) giống như con người, được học bới kinh nghiệm, lưu giữ những kinh nghiệm hiểu biết và sử dụng trong những tình huống phù hợp.
Đầu tiên ANN được giới thiệu năm 1943 bởi nhà thần kinh học Warren McCulloch và nhà lôgic học Walter Pits. Nhưng với những kỹ thuật trong thời gian này chưa cho phép họ nghiên cứu được nhiều. Những năm gần đây mô phỏng ANN xuất hiện và phát triển. Các nghiên cứu ứng dụng đó được thực hiện trong các ngành: điện, diện tử, kỹ thuật chế tạo, y học, quân sir, kinh tế... và mới nhất là các nghiên cứu ứng dụng trong lĩnh vực quản lý dự án xây dựng. Tại Việt Nam việc nghiên cứu ứng dụng ANN vào quản lý xây dựng chỉ mới bắt đầu trong vài năm gần đây và cần được phát triển.
11
1.3. MÔ HÌNH MẠNG NƠRON
1.3.1. Mô hình vê một nơron
Mô hình toán học của nơron sinh học được đề xuất bởi McCulloch và Pitts, thường được gọi là nơron M-P, ngoài ra nó còn được gọi là phần tử xử lý và được ký hiệu là PE (Processing Element).
Mô hình nơron có m đầu vào X |, X 2 , xm, và một đầu ra y\ như sau:
Hình 1.4. Mõ hình m ột nơron n h ân tạo
Giải thích các thành phần cơ bản:
- Tập các đầu vào: Là các tín hiệu vào của nơron, các tín hiệu này thường được đưa vào dưới dạng một vectơ m chiêu.
- Tập các liên kết (các trọng số): Mỗi liên kết được thể hiện bởi một trọng số (thường được gọi là trọng số liên kết). Trọng số liên kết giữa tín hiệu vào thứ j cho nơron i thường được ký hiệu là Wjj. Thông thường các trọng số này đuợc khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình học mạng.
- Bộ tổng: Thường dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó.
- Ngưỡng: Ngưỡng này thường được đưa vào như một thành phần của hàm truyền.
- Hàm truyền: Hàm này dùng để giới hạn phạm vi đầu ra của mỗi nơron. Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho. Thông thường, phạm vi đầu ra của mỗi nơron được giới hạn trong đoạn [0 ,1 ] hoặc
12
[-1,1]. Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến. Việc lựa chọn hàm truyền tùy thuộc vào từng bài toán và kinh nghiệm của người thiết kế mạng.
- Đâu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đmột đầu ra.
về mặt toán học, cấu trúc của một nơron i được mô tả bằng cặp biểu thức sau:
y , = f (net, — 0 ,) và net = ( 1. 1)
trong đó: X|, X2, ...x m - các tín hiệu đầu vào;
Wjj, Wj2,...,Wjm - các trọng số kết nối của nơron thứ i;
neti - hàm tống;
f - hàm truyền;
9, - một ngưỡng;
Ỵị - tín hiệu đầu ra của nơron.
Như vậy, tương tự như nơron sinh học, nơron nhân tạo cũng nhận các tín hiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thu được rồi gửi kết quà đến hàm truyền), và cho một tín hiệu đầu ra (là kết quá của hàm truyền).
Hàm truyền có thể có các dạng sau:
- Hàm giới hạn chặt (hay còn gọi là hàm bước)
(1.3)
- Hàm bậc thang
1 khi X > 1
(1.4)
- Hàm ngưỡng đơn cực
(1.5)
13
X k h i 0 < X < 1 0 khi X < 0
- Hàm ngưỡng hai cực
y = -1 với X. > 0 (1.6) 1 + e
Đồ thị các dạng hàm truyền được biểu diễn như hình 1.5:
yy
y ế+1
1+1
0 * X 0 +1
0 -1
(a) Hàm buúc (b) H àm giói hạn chặt (c) H àm b ậc thang
+1 y .
1
0
-1 -1 x
(d) Hàm ngưỡng đơn cực (e) Hàm ngưỡng hai cực
H ình 1.5. ĐỒ thị c á c d ạ n g hàm truyèn
1.3.2. Mô hình vê mạng nơron
Mỗi nơron (nút) là một đon vị xử lý thông tin cùa mạng nơron, là yếu tố cơ bản để cấu tạo nên mạng nơron.
Hình 1.6. Mỏ hình m ạng nơron
Xj - các tín hiệu input;
w kp - trọng số của từng input;
f(.) - hàm kích hoạt;
yk - kết xuất của nơron;
b - thông số ảnh hưởng đến ngưỡng ra của output.
14
• M ạng một lớp
Mỗi một nơron có thể phối hợp với các nơron khác tạo thành một lớp các trọng số. Mạng một lớp truyền thẳng như hình 1,7a. Một lớp nơron là một nhóm các nơron mà chúng đều có cùng trọng số, nhận cùng một tín hiệu đầu vào đồng thời.
Trong ma trận trọng số, các hàng là thể hiện nơron, hàng thứ j có thể đặt nhãn như một vectơ Wj của nơron thứ j gồm m trọng số W jj. Các trọng số trong cúng một cột thứ j (j= l,2 ,...,n) đồng thời cùng nhận một tín hiệu đầu vào Xj.
Wj = [W ji, Wj2, w jm] (1.7)
Tại cùng một thời điềm, vectơ đầu vào X = [ X |, X 2 ,..., Xn] có thể là một nguồn bên ngoài là cảm biến hoặc thiết bị đo lường đưa tới mạng.
H ì n h í . 7 a . M ợ n y t i u y è n I h ẳ n y m ộ t l ứ p
* V’
-L.
Hình 1.7b Mạng hồi tiếp một lớp
15
*• y2
Wmm
Hinh 1.7c. Mạng nơron hồi quy một lớp
Hinh.1.7. Một số dạng m ạng nơron m ột lớp
• Mạng nhiều lớp
H ình 1.8. Mạng n ơ rôn nhiều lớp
Mạng nơron nhiều lớp có thể giái quyết các bài toán phi tuyến nhờ vào cár lớp ẩn. Các lóp ẩn này xen giữa các input bên ngoài và output của mạng. Càng nhiều lớp ẩn thì khả năng mở rộng thông tin càng cao và xử lý tôt mạng cỏ nhiều input và output. Ngoài ra còn có mạng hồi quy và mạng nơron dạng lưới.
Mạng naron truyền thằng một lớp
Hình l .9 mô hình mạng nơron truyền thẳng một lớp. cấu trúc gồm có: - Lớp vào là lớp nơron đầu tiên nhận tín hiệu vào Xi (i = 1, 2, n). Mỗi tín hiệu Xj được đưa đến tất cả các nơron của lớp đầu vào. Thông thường, các nơron đầu vào không làm biến đồi các tín hiệu vào Xi, tức là chúng không có các trọng số hoặc không có các loại hàm chuyển đổi nào, chúng chi đóng vai trò phân phối các tín hiệu.
16
- Lớp ẩn là lớp nơron sau lớp vào, chúng không trực tiếp liên hệ với thế giới bên ngoài như các lớp nơron vào/ra.
- Lớp ra là lớp nơron tạo ra các tín hiệu ra cuối cùng.
yi
X2 y2
X3
H inh 1.9. Mạng truyền thẳng nhiều lớp
1.4. HUÂN LUYỆN MẠNG NƠRON
1.4.1. Hàm hoạt động của mạng nơron
Các hàm hoạt động phải có các đặc tính sau:
- Hàm bị chặn trên và chặn dưới.
- Hàm có tính đơn điệu.
- Hàm phải có tính liên tục và trơn.
Trong thực tế, thông thường người ta thường chọn các hàm sau: - I í.Vn Threhold:
f(u ).11 u > 0
[o u < 0
- Hàm piecewwise - linear
'l u > 1/2
f ( u ) = < u 1 /2 > u > -1 /2
0 II < - 1/2
- Hàm sigmoid (logistic)
f(u) = 1/(1 + exp(-au))
- Hàm tang - hyperbol
u -u
( 1.8)
(1.9) ( 1.10)
f(u) = tanh(u):
e - e
u _-u e + e
( 1.11)
ỊEẬI HỌC THẤI NGUYÊN' TBUNG TÂM HỌC LỈEU
17
1.4.2. Các luật học
Thông thường, mạng nơron được điều chỉnh hoặc được huấn luyện để hướng các đầu vào riêng biệt đến đích ờ đầu ra. cấ u trúc huấn luyện mạng được chi ra ở hình 1.1 0 . Ở đây, hàm trọng số của mạng được điều chinh trên cơ sở so sánh đầu ra với đích mong muốn (taget), cho tới khi đầu ra của mạng phù hợp với đích. Những cặp vào/đích (input/taget) được dùng để giám sát cho sự huấn luyện mạng.
Hinh 1.10. c ấ u trúc huấn luyện mạng nơron
Đê CÓ được một số cặp vào/ra, ở đó mỗi giá trị vào được gửi đến mạng và giá trị ra tương ứng được thực hiện bằng mạng là sự xem xét và so sánh với giá trị mong muốn. Bình thường, nó sẽ tồn tại một sai số vì giá trị mong muốn không hoàn toàn phù hợp với giá trị thực. Sau mỗi lần chạy, ta có tổng bình phương của tất cả các sai sổ. Sai số này được sử dụng để xác định các hàm trọng số mới.
Sau mỗi lần chạy, hàm trọng số cúa mạng đuợc sửa đổi với đặc tính tốt hơn tương ứng với đặc tính mong muốn. Từng cặp giá trị vào/ra phải được kiểm tra và trọng số được điều chỉnh một vài lần. Sự thay đổi các hàm trọng số của mạng sê được dừng lại, nếu tổng các bình phương sai số nhỏ hơn một giá trị đặt trước, hoặc đã chạy đủ một số lần chạy xác định (trong trường hợp này, mạng có thể không thoả mãn yêu cầu đặt ra do sai lệch còn cao). Có hai kiều học:
- Học tham số: Là các tham số về trọng số cập nhật kết nối giữa các nơron.
- Học cấu trúc: Trọng tâm là sự biến đổi cấu trúc của các mạng nơron gồm số lượng nút và các loại liên kết.
1 . 1« -
18
> \ .M I
Giả sử ma trận trọng số bao gồm tất cả các phần tử thích ứng cùa mạng nơron. Nhiệm vụ của việc học tham số là tìm ra được ma trận chính xác mong muốn từ ma trận giả thiết ban đầu (với cấu trúc của mạng nơron có sẵn). Để làm được điều này thì mạng nơron phải sử dụng các trọng số điều chỉnh, với nhiều phương pháp học khác nhau để có thể tính toán gần đúng ma trận w cần tìm đặc trưng cho mạng. Sau đây là 3 phương pháp học:
1.4.2.]. H ọc có giám sát
Học có giám sát: Là quá trình học có tín hiệu chi đạo bên ngoài d. Trong học có giám sát, thỉ tại mỗi thời điểm khi đầu vào được cung câp tới mạng nơron, phản ứng đầu ra mong muốn d tương ứng của hệ thống được đưa ra, khi mỗi đầu vào x(k> được đặt vào mạng, đầu ra mong muốn tương ứng d(k) cũng được cung cấp tói mạng. Hiệu giữa đầu ra thực y(k) và đầu ra mong muốn d|ki được đo trong máy phát tín hiệu lỗi. Hệ thống này sẽ tạo ra túi hiệu lỗi cho mạng để hiệu chinh các trọng số của mạng, và với các hiệu chinh này thi đầu ra thực sẽ tiến sát với đầu ra mong muốn.
Hình 1.11. Học có giám sát
1.4.2.2. H ọc củng cố
Tín hiệu chủ đạo d có thể lấy từ môi trường bên ngoài, nhưng tín hiệu này không được đầy•••> 0 y j(i= i. wi«
1
X, ►
xm y»
Hình 1.14. M ạng 3 lớ p lan tru y ển n g ư ợ c
Thuật toán:
Đầu tiên ta cho lan truyền thẳng suốt trong mạng, qua các phần tử nơron và được tiếp tục với các hàm kích hoạt của phần tử nơron. Các mạng được nghiên cứu cùng với thuật toán học lan truyền ngược được gọi là mạng lan truyền ngược.
Huấn luyện các cặp vào/ra.
{(x(k), d(k>)}, k = 1, 2 ,..., p
Thuật toán cung cấp một thù tục cho việc thay đổi các vectơ trọng số trong mạng, đầu ra của mạng được lan truyền ngược trở lại lớp đầu vào cho đúng các mẫu. Cơ sở cho việc cập nhật các trọng số là phương pháp độ dốc Gradient.
Với cặp vào ra (x(k', d được lan truyền ngược trở lại từ lớp đầu ra tới lớp đầu vào để cập nhật trọng số. Hình 1.14 diễn giải thuật toán lan truyền ngược. Ket quả có thể mở rộng sang mạng nơron nhiều lớp.
- Trên hình 1.14 có m phần tử nơron đầu vào, 1 phần từ nơron ở lớp ẩn, và n phần tử nơron ở lớp đầu ra. Đường nét liền diễn tả lan truyền thẳng của các tín hiệu, đường nét đứt diễn tả lan truyền ngược của các sai số. Đầu tiên huấn luyện vào cặp vào/ra ký hiệu (-X, d) để cho đom giản ta bỏ chi số k.
22
Khi một mẫu đầu vào X được đưa vào thì các phần từ trong mạng sẽ được tính như sau:
+ Đầu vào phần tử q của lớp ẩn sẽ được tính theo phương trình 1.16 in
n etq = Z V q.X j
j=l
+ Phương trình đầu ra của q sẽ là: m
(1.16)
za = a(net ) = a
ấ V i i=l
(1.17)
+ Đầu vào phần tử thứ i của lớp đầu ra sẽ là:
I 1 ( m
n e t , = X w ,qzq = Z w .qa Z V )
q=l q=l V, j=l
Phương trình đầu ra của phần từ nơron thứ i sẽ là: \ \
y ị = a(netị) = a = a1 [ m
I W: a I V . X .
q=l iq J=1 ‘Ũ J
(1.18) (1.19)
Các chi số trên được tính toán cho sự lan truyền tiến của các tín hiệu đầu vào xuyên suốt qua các lớp mạng nơron. Trước khi đề cập đến các tín hiệu sai số của sự lan truyền ngược, ta sẽ định nghĩa một hàm mục tiêu như sau:
-,2
— Z, (
2 1=1 2 i=1
r 1 “ 1 n í 1 ì [ d i - a in e t j ) ] = ! £ dị-a l ỉ r ^ l
( 1.20)
Sau đó, theo phương pháp độ dốc Gradient, các trọng số nối giữa lớp ẩn và lớp đầu ra được cập nhật bởi Awiq, và nó được tính theo công thức
sau:
ỔE
Sử dung các công thức (1.21 -1.23) và thay đôi luât với —— , ta có: 23
Aw. = -T| iq 1ÔE fr j 5net;
ổnet;i ỡnet;
ổnet;i
ỡw .'q{ d j - y j][a'(neti ) ] [ Zq] = n50j2 (1.22)
Trong đó, 5oj là tín hiệu sai số, chỉ số dưới thứ hai là điểm thứ i trong lớp đầu ra. Sai số tín hiệu được định nghĩa bởi:
ỔE
ô„. =• ổnet." ỔE" ỡy,
A i . dnet,[ d ,- y ,] [ a ’(net,)] (123)
Trong đó, netị là đầu vào của phần tử nơron thứ i trong lớp đầu ra và ổa(netj) a ’(net,):ỡnet,(1.24) Bây giờ ta phải tính đầu ra Zq của lớp ẩn:
Với trọng số nối giữa đầu vào và các lóp ẩn, ta sử dụng thay đổi luật cùng phương pháp độ dốc Gradient, ta cập nhật trọng số để kết nối giữa phần tử thứ j của lớp đầu vào với phần tử thứ q của lớp ẩn. Khi đó:
Av* = -■nỔE ỠE
' "■ 1
&a>
1
’ ỡ e " 5netq
.^ < 0 .
*1
1
ã*ct><—*■ .0
1. ^ .
TỊ _ổnetq. to* . (1.25)
Từ công thức (1.20), thì mỗi sai số [dị-yi], với i= l,2,...,n là một hàm của Zq.
Đánh giá thay đối luật ta có:
A v qj = _Tl Z [ ( d i - y ,) - a '(net,).wiq].a'(netq).xJ (1 26)
1=1
Sử dụng công thức (1.23), ta có thề viết lại công thức (1.26) như sau:
A \ ) = - Ĩ1 Ẻ [ S « -W iq ! a '(n e tq )-X J = n Ổh<,Xj (1 2 7 ) i=l Ờ đây, dhq là sai số tín hiệu của phần tử thứ q của lớp ẩn và được định nghĩa như sau:
ỠE ỔE ỡzq
ỔM = -
ổnetq
1
Ề 1
= a'(n etq) £ s 0lw iq (128) cr
1 = 1
Trong đó, netq là đầu vào phần tử thứ q cùa lớp ẩn. 24
Tín hiệu sai số của một phần tử trong lớp ẩn khác so với tín hiệu sai số của một phần tử trong lớp đầu ra. Do có sự khác nhau này, nên các thủ tục cập nhật các trọng số trên được gọi là luật học delta tổng quát. Chúng ta xem xét công thức (1.28), sai số tín hiệu ổhq của phần tử lớp ẩn q có thể
được xác định trong các mẫu cùa các tín hiệu sai số Soj cùa các phần tử ở
lớp ra thứ i (yO cung ứng. Các hệ số là các trọng số được sử dụng cho lan truyền thang, nhưng ở đây chúng truyền các tín hiệu sai số (S ) ngược trở
lại, đó chính là các đường nét đứt trong hình 1.14. Điều này đã chứng tỏ được đặc điểm quan trọng của thuật toán lan truyền ngược - luật cập nhật cục bộ, đây chính là tính toán trọng số thay đổi dựa vào sự kết nối, và chúng ta chỉ cần giá trị ở hai đầu của kết nối này.
Sự đạo hàm ở trên có thể dễ dàng mở rộng cho mạng có nhiều hon một lớp ẩn, bàng cách sử dụng chuỗi luật liên tiếp. Trong trường hợp chung, với số lớp tùy ý, thì sự lan truyền ngược được cập nhật luật ở dạng sau: AWjj = T|ôix j = Tlô0lllput. ix inpill. j (1.29)
Ớ đây, (output-i) và (input-j) quy vào hai đầu của sự kết nối từ phần tử thứ j tới phần tử thứ i, Xj là đầu vào cuối cùng kích hoạt từ một phần tử lớp ân, hoặc từ một đầu vào bên ngoài. Ngoài ra, Sị là tín hiệu học được định
nghĩa bởi công thức (1.23) với đầu ra hoặc lớp cuối cùng của các trọng số kêt nôi, và được định nghĩa bời công thức (1.28) cho tất cả các lớp khác. Khi hàm sigmoid lưỡng cực được sử dụng làm hàm kích hoạt, đồng thời sử dụng (1.23) và (1.28) ta có hàm y được xác định như sau:
y = a(net) = -1 (1.30)
K h iđ ó tacó : a'(net) = -^a .net-^ = —1~1 - a 2(net)l = — (1 - y 2) (1.31) ỡnet 2 L J 2
Soi= ^ ( i - y 2) [ d , - y , ] (1.32) ỗN = 4 ( i ~ z2)ấ ô°'w '< (133) ^ 1=1
25
Thuật toán lan truyền ngược
Xem xét một mạng với Q lớp lan truyền ngược, q = 1, 2,..., Q; với qnetj và qyi lần lượt là đầu vào và đầu ra của khối trong lớp thứ q. Mạng có m nơron đầu vào, 1 nơron ở lớp ẩn, và n nơron đầu ra. Với qWjj là trọng số nối từ q''wj đến qyi
Đầu vào: các cặp huấn luyện {x(k), d(k) I k= l, 2,..., p}, ở đó giá trị đầu vào của phần tử cuối cùng bằng - 1, tức là X(J+Ị = - 1 .
Bước 1 (Đặt giá trị ban đầu)
- Lựa chọn bước tính (Hằng số học) 0 < T| < 1 và Emax (sai số lớn nhất cho phép).
- Chọn các trọng số ban đầu nối từ phần tử thứ j của lớp (q - 1) đến phần từ thứ i của lớp q là qWjj có giá trị nhỏ và ngẫu nhiên. - Cho sai số E = 0 và k = 1.
Bước 2 (Vòng lặp huấn luyện)
Áp dụng mẫu vào thứ k, cho lớp đầu vào q = 1. Khi đó ta có: qyi= ‘yi = xi(k) cho tất cả các i = 1, 2, 3,..., m. (1.34) Bước 3 (Lan truyền thẳng)
Lan truyền tín hiệu thẳng xuyên suốt mạng sử dụng công thức (1.35) cho mỗi i và q cho tới khi các đầu ra của lớp đầu ra °y, được thực hiện.
(1.35)
Bước 4 (Đo lường sai số đầu ra)
Tính toán giá trị sai lệch và tín hiệu sai lệch Qổ, cho lớp đầu ra như sau:
(1.36)
(1.37)
trong đó: Qôj - tín hiệu sai lệch của nơron thứ i cho lớp ra Q; a '(°n e tl) - đạo hàm của hàm truyền a(.) theo tổng trọng số của phần tử i của lớp đầu ra là °n e tj.
26
(\íì
a '(°riet ) = ~77q ~ 7 (1-38) d (v netj)
Bước 5 (Lan truyền ngược sai số)
Các sai số lan truyền ngược với mục đích để cập nhật các trọng số và tính toán các tín hiệu sai lệch q~'ô, cho các lớp xử lý:
A X = T1 •qô,.‘H yJ; X ' w = x ld+ A X O -39)
q lô, = a ( ‘t- 'n e t,) X qw J1qSJ; vói q = Q, Q - 1,..., 2 (1.40) j
Trong đó:
Aqw ij - sai lệch tại thời điểm tính của giá trị trọng số liên kết cập nhật mới và cũ, liên kết từ phần tử thứ j của lớp q - 1 đến phần tử i của lớp q;
q W"w - g'á trị trọng số liên kết cập nhật mới từ phần tử thứ j của lớp (q - 1) đến phần tử i của lớp q;
q w íjld - giá trị trọng số liên kết cũ từ phần từ thứ j của lớp (q - 1) đến phần tử i của lớp q.
q-'y j - tín hiệu ra cùa phần tử j của lớp (q - 1).
Bước 6 (Sau mỗi vòng lặp)
Kiểm tra xem đã lặp hết các giá trị mẫu huấn luyện chưa, nếu chưa qua) vòng h ết (tức là k < p) tă n g k — k t 1, và n h ả y tới bư ớc 1, Iigưực lại (tức k = p) thì chuyển sang bước 6 .
Bước 7 (Kiểm tra tổng sai số)
Kiểm tra sự khác nhau giữa tổng sai số và sai số cho phép: - Neu tồng sai số nhỏ hcm sai số cho phép (tức là E < Emax) thì kết thúc quá trình huấn luyện và ghi lại các giá trị trọng số cuối cùng. - Trái lại, gán E = 0, k = 1 và bắt đầu một quá trình huấn luyện mói bằng cách nhảy tới bước 1 .
Ưu điểm sử dụng mô hình mạng nơron
- Khả năng của các quá trình xử lý song song và phân tán: Có thể đưa vào mạng một lượng lớn các nơron liên kết với nhau theo các lược đồ với các cấu trúc khác nhau.
27
- Khả năng thích nghi và tự tổ chức: về đặc trung này người ta đề cập tới khả năng xử lý thích nghi và điều chỉnh bền vững dựa vào các thuật toán học thích nghi và các quy tắc tự tổ chức. Chỉ cần đưa vào mạng một tập mẫu dữ liệu trong quá trình học là mạng có khả năng phát hiện những ràng buộc dữ liệu và áp dụng những ràng buộc này trong quá trình sử dụng mà không cần phải thêm các tri thức về miền ứng dụng.
- Khả năng dung thứ lỗi: Có khả năng bắt chước dung thứ lỗi của não theo nghĩa các hệ thống có thể tiếp tục làm việc và điều chỉnh khi nhận tín hiệu vào một phần thông tin bị sai lệch hoặc bị thiếu. Mạng có thể chấp nhận những dữ liệu mẫu không hoàn toàn chính xác tuyệt đối mà vẫn đảm bảo được phần nhiều tính đúng đắn của bài toán. Điều này làm giảm nhẹ rất nhiều quá trình sàng lọc.
- Xử lý các quá trình phi tuyến: Đặc trưng này rất quan trọng, ví dụ như trong xấp xỉ mạng, miễn nhiễu (chấp nhận nhiễu) và khả nàng phân lớp. Với ưu điểm này cho phép chúng ta dễ dàng xây dựng các mô hình thích nghi mà trong đó có sự thay đổi liên tục về quy luật dữ liệu có thể dễ dàng được cập nhật trong quá trình học lại của mạng.
28
Phẩn II
MỘT SÓ MẠNG NƠRON THƯỜNG s ử DỤNG TRONG NHẬN DẠNG PHÂN LOẠI 0 0 •
Chương 2
MẠNG NƠRON
2.1. MẠNG NƠRON MỘT LỚP
2.1.1. Mạng hopfield
2 .1 .1.1. M ô h ìn h m ạng
Năm 1982 nhà vật lý người Mỹ J.J. Hopfield đã đề xuất mô hình mạng nơ ron một lớp như hình 2 . 1.
Lớp vào
Lớp ra
H ình 2.1. Mạng Hopfield
Hàm kích hoạt được dùng tại các nơ ron là hàm:
í m
outj = sign (N etj) = sign X WJ'X' (2.1) V i= i
29
2.1.1.2. Huấn luyện mạng
Mạng Hopíĩeld (HF) học dựa trên nguyên tắc có giám sát. Giả sử có p mẫu học tương ứng với các vectơ tín hiệu vào x s, s = 1, p. Mạng sẽ xác định bộ trọng số w sao cho
x s = Tinh (Xs , W) với mọi s = 1, p (2.2) Ta xây dựng ma trận trọng số w như sau : w = (w jj) với
I * SJX5, N ế u i * j
W J .=
, (2 .3 )
0 N e u i = j
Trong đó x s = (xsi , x sm). (2.4) Một cách trực quan, trọng số liên kết C0jj sẽ tăng thêm một lượng là 1 (tương ứng với số hạng Xsj.Xsi) nếu cả hai thành phần thứ i và thứ j của mẫu học x s bằng nhau. Khi có mẫu học mới Xp+1 ta chi cần xét các thành phần thứ i và thứ j của nó để cập nhật giá trị cho Wjj. Có thể chứng minh được với ma trận w được xác định như trong biểu thức 2.4, ta sê có được biểu thức 2.4. Nói cách khác, mạng đã "học thuộc" các ví dụ mẫu {Xs}.
2.1.1.3. ử n g dụng và đặc điểm sử dụng mạng
- ứng dụng mạng: sử dụng trong các bài toán nhận dạng ảnh. - Đặc điểm sử dụng:
+ Mạng Hopfield cho phép tạo ánh xạ tự kết hợp trên các tập dữ liệu; + Dữ liệu vào, ra có giá trị lưỡng cực;
+ Học có giám sát;
+ Mạng cho phép phục hồi dữ liệu;
+ Khả năng nhớ mẫu phụ thuộc vào số nơ ron của mạng.
2.1.2. Mạng ABAM (Adaptive Bidirectional Associative Memory Neural Network)
2.1.2.1. M ô hình mạng
Theo một nghĩa nào đó, mạng ABAM có nhừng nét giống mạng H opfield.
30
- Chúng cùng là mạng 1 lớp.
- Tín hiệu vào có thể là nhị phân, hoặc lưỡng cực.
- Việc xác định ma trận trọng số ban đầu giống nhau.
Điểm khác giữa 2 loại mạng chính là ở phạm vi bài toán có thể giải quyết và cách xác định các trọng số cho phù hợp với các bài toán đó. Mạng Hopfield được xác định đúng một lần và được dùng cho tất cả các bước tính toán. Kích thước của ảnh (số điểm ảnh trong mỗi mẫu) sẽ xác định số nơ ron và số trọng số liên kết, trong khi đó số mẫu học và hình dạng của chúng sẽ xác định giá trị các trọng số.
w f = ỉ > s i y , j P-5) S = 1
- Với mạng ABAM, ma trận trọng số không bắt buộc phải vuông. Thông thường, số nơron ra ít hom nhiều số nơron vào. Ban đầu, ma trận trọng số đuợc xác định dựa trên các tập mẫu {(XS,YS)} giống như đối với mạng Hopfield nghĩa là: Ờ các bước tiếp theo trong quá trình học, ma trận trọng số w (t) được thay đồi cho phù hợp sao cho tạo ra sự kết hợp thực sự 2 chiều giữa tín hiệu vào và tín hiệu ra trong tập mẫu học. Mô hình mạng có dạng như hình 2 .2 .
Lớp vào
Lớp ra
H ìn h 2.2. Mạng ABAM
2.1.2.2. H uấn luyện m ạng
Giả sử có tập mẫu học {(XS,YS)}, sơ đồ quá trình 'nọc được thể hiện như sau:
Lặp {(X S,YS)} -> ma trận w (0)
W (0>t _ > Y s(i >
Ys w (0) -> x s(l)
31
{(XS(I),YS(I))} —> ma trận w (1)
Xs W(I)T y s(2)
Ys w (l)- > x s(2)
cho đến khi {(Xs(t),Ys(t))} = {(XS,YS)}
Từ tập các mẫu học {(Xs(t),Ys(t>)} xác định ma trận w (t) theo 2.5 Ban đầu x s<0) = x s và Ys(0) = Ys.
+ Tạo tập mẫu học mới {(Xs(t+n,Ys(t+1))} nhờ nhân ma trận w (t) và chuyển vị của nó W 0
out = •<
0 nếu ngược lại
32
Lớp vào
Lớp ra
H inh 2.3. Mạng Perceptron (2.6)
2.1.3.2. H uấn luyện m ạng
Mạng học dựa trên nguyên tắc có giám sát với tập mẫu {(Xs, Ys)}. Y tướng cơ bản cùa quá trình huấn luyện mạng là xác định bộ trọng so w sao cho:
outs = Tinh(Xs,W) = Ys đối với mọi mẫu học s.
Ban đầu các trọng số được gán ngẫu nhiên một giá trị. Sau đó hiệu chinh các trọng số sao cho phù họp với các mẫu học, làm giảm sai số giữa giá trị quan sát Ys với giá trị tính toán outs.
Các bước tiến hành như sau:
- Xác định ngẫu nhiên bộ trọng số.
- Với mỗi mẫu học (XS,YS), Xs = (XS|,..., xsn), thực hiện các bước: + Tính giá trị outs theo công thức (2.6);
+ Xác định E ư = Ys — outs. Hiệu chinh các trọng số Wj = Wj + a XSj*Err, trong đó a là hàng số học.
ứ ng dụng: Sử dụng trong nhận dạng ảnh và làm công cụ tính toán các hàm lôgic.
2.1.4. Mạng Kohonen
2.1.4.1. Cấu trúc và nguyên lý hoạt động
Các mạng Kohonen kinh điển đượ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 vectơ đầu vào X đưa vào mạng nơron. Đầu vào ta có một bộ số liệu gồm p vectơ đa chiều: X, = [x jl,x jí,...,x iN] e R N;i = l-> p . (2.7 )
H ình 2.4. P hân bố s ố liệu ví dụ trên không gian hai chiều
33
Ví dụ trên hình 2.4 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)
cj = [ c j„ c j2,...,c jN] e M N;j = l - > p (2 .8 )
Ví dụ phân chia và nhóm các số liệu từ hình 2.4 thành 3 nhóm ta có kết quả như hình 2.5.
Hình 2.5. C á c s ố liệu đ ư ợ c ch ia th à n h 3 nh ó m
(đặc trưng b ờ i c á c viền b a o v à c á c t r ọ n g 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, trọng tâm của các nhóm được xác định chủ yếu trên nguyên tắc: “các vectơ 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 vectơ chủ yếu là sử dụng công thức ơ-clít:sử dụng công thức ơ-clít:
X ,C € R N :d(x,c) = ||x -c || = J ] £ ( x , - c , ) 2 (2.9)
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ư:
1. Khoảng cách tích vô hướng:
d(x,c) = 1 - X C = 1 — llxll - ||c|Ị• cos(x, c)
34
N
2. Khoảng cách Manhattan: d(x,c) = ^ | x l — c, I 1=1
3. Khoảng cách Chebyshev: d(x,c) = max |x, — C jI ->N
N
4. Khoảng cách Minkowski: d(x,c) = <ịỊ
Z l lm lx. ~ c.l i=l
Trong trường hợp ta có M trọng tâm Cj,i = 1 -> M và một vectơ X thì trong quá trình hoạt động cạnh tranh, trọng tâm chiến thang là trọng tâm có khoảng cách ngắn nhất tới điểm đang xét.
||x - c win|| = min ||x -c ,|| (2 . 1 0 )
Ta có thế mô tả cấu trúc xử lý các vectơ đầu vào gồm N thành phân và hệ M trọng tâm c, như trên hỉnh 2.6.
Hình 2.6. C ấu trúc x ử lý c á c v e c tơ đ ẩ u v ào cù a m ạ n g K ohonen kinh điển
Đâ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ố Cjj. số lượng đầu vào bàng với số chiều của vectơ 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 Cjj được coi là
hệ số đặc trưng của kênh nối đầu vào thứ j (là Xj) tới trọng tâm. Hệ số đặc
trưng này trong các nghiên cứu về mạng nơron thường được gọi là trọng số ghép nôi (connection weight) hay đơn giản là trọng so (weight). Vectơ đầu vào X - [ x , , x 2, . . . , x N] và C = [C|,C2,...,C N] thường được chuẩn hóa về độ
dài 1 (tuy nhiên đây là giải pháp 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 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à vectơ đầu vào đang xét. Khoảng cách càng nhỏ thì mức độ kích hoạt 35
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à:
1. Hàm chuông: activationc(x) = exp -
d2(x,c)
2. Hàm Gauss mở rộng: activationc (x) = - 1 +
khi
X - c > a
3. Hàm tam giác: activationc(x) =
khi
x - c < a
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 2.7a 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 2.7b. 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)
Hình 2.7. K h ô n g g ia n v ớ i 3 t r ọ n g tâ m đ ư ợ c x á c đ ịn h (a) v à c á c v ù n g “c h i ế n t h ắ n g ” cùa mỗi 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 độ vectơ các điểm đầu vào cao. Trên hai hình 2.8
36
là ví dụ các phân bố như vậy. Hình 2.8a có các điểm đầu vào (dấu V ) 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 2.8b có các điểm đầu vào (dấu V ) 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 ‘ • ’) cũng được phân bố như vậy.
(a)
0.2-------------------*----------- ‘-*------- *----------------- *--------------- *
0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65
(b)
Hình 2.8. Vi d ụ p h â n b ổ c á c t r ọ n g t â m p h â n t á n t h e o c á c v ù n g s ố liệu
2.I.4.2. Các thuật toán học cơ bản của m ạng Kohonen kinh điển
Trong mạng Kohonen, ta cần xác định vị trí của M trọng tâm khi được cho trước một tập hợp điểm X và số trọng tâm M. Các thuật toán xác định vị tri 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ơron do việc tham gia vào quá trình học để điều chinh các thông số cùa mình.
37
2.1.4.2.1. Các thuật toán phân nhóm trực tuyến
Các giải pháp nơron cổ điển cho vấn đề phân nhóm, đã được bắt đâu trong các công trình của Kohonen, 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 vectơ dữ liệu đầu vào X .
Trong quá trình học, các nơron tự sắp xếp, trong đó thuật toán tự sắp xếp được hình thành bàng trình tự của các hoạt động sau:
Bước ỉ: Đặt i = l.
Bước 2: Biểu diễn vectơ X, tới mạng.
Bước 3: Xác định các khoảng cách từ vectơ X, tófi các nơron trọng tâm Cj từ đó xác định nơron chiến thắng Nw là nơron có khoảng cách ngăn nhất tới vectơ X j.
Bước 4: Cập nhật các trọng số của nơron chiến thắng và các nơron có liên quan tới nơron chiến thắng theo hướng dịch chuyển về gần phía vectơ đầu vào X,.
. x2 . x 2
X1 . X1 v..d„
• °1 d \ ° 1 d,2\
*
°2
• • • • x3 x4 x3 x4
H ình 2.9. Vj tri 4 v e c t ơ đ ầ u v à o X1, X2 , Xj, X4 và hai t r ọ n g tâ m Cl, C2. Khi xét v ectơ X1 thì k h o ả n g c á c h d u < d i 2 nên trọng tâm C1 chiến thắng
38
H ình 2.10. Và tr ọ n g tâ m Ci đ ư ợ c d ịc h c h u y ể n v ề p h ía v e c t ơ X 1
còn trọng tám c 2 đứ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 nơron 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 vectơ mẫu và hai trọng tâm được thê hiện trên hình 2.9 và hình 2.10.
Trong thuật toán trực tuyến chuẩn, chúng ta cập nhật trọng số của các nơron được tìm thấy trong lân cận nơron chiến thắng Nw, theo luật sau: c ,( t + 1) = c J(t) + n l( t ) G ( c |, x ( t ) ) [ x ( t ) - c J(t)] ( 2 . 1 1 )
trong đó: Cj — vectơ trọng số của nơron thứ j được tìm thấy trong lân cận của nơron chiên thắng;
ry - hệ số học;
G(Cị, x(t)) - hàm lân cận cùa nơron thứ j và t là chỉ số thời gian rời rạc.
Các công thức khác nhau trong việc lựa chọn hàm lân cận G(Cj,x(t))
dẫn tới nhiều thuật toán học khác nhau. Một thuật học nổi tiếng là thuật toán Kohonen với hàm Gaussian, trong đó:
d '’ ( c . ’ c N » ) G(Cj,x) = exp (2 .12)
trong đó: d 2(c ,x ) - khoảng cách ơ-clit giữa vectơ trọng số của nơron thứ j và nơron chiến thắng Nw;
ơ - hệ số vùng lân cận và sẽ giảm theo quá trình học.
39
Một thuật toán mạnh khác được gọi là khí nơron, trong đó hàm lân cận được định nghĩa theo khoảng cách giữa vectơ đầu vào X và vectơ trọncủa nơron. Trong cách tiếp cận này, chúng ta sắp xếp các nơron theo khoảng cách này, tức là
d, < d 2... < d M_, < d M (2.13)
trong đó dị = ||x - c m(i)|| vớii = 1 -> M. Khi đó, giá trị của hàm lân cận được
xác định như sau:
m (j)
G (Cj,x) = e k (2.14)
trong đó: m(i) là vị trí của nơron thứ i sau khi phân loại và X. là tham số giảm theo thời £ian
í 1 \ k/k"'
m = K
min
V max y
(2.15)
Hệ số học T| 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 mạng tốt.
2.1.4.2.2. Thuật toán phân nhóm ngoại tuyến
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 hay thuật toán K- trung binh cứng, đưa ra m ột cư ché đưn giản để tối thiểu hóa tổng các bình phương sai số với các nhóm K, với m ỗi
nhóm chứa một tập n mẫu tương tự nhau. Thuật toán này có thể được giới thiệu như sau:
- Chọn một tập các nhóm khởi đầu C|, C2,..., Cm, tùy ý.
- Gán các mẫu Xi tới các nhóm j sử dụng luật khoảng cách ơ-clit tối thiểu, theo đó Xi thuộc về nhóm Cj nếu X; -C;
i j= min X. -c, k = i ^ M II ' k
- Tính toán các nguyên mẫu nhóm mới là trang bình cộng của tất các vectơ trong nhóm i
1
c
n j xt« c J
40
(
trong đó: r ij chi số lượng vectơ X j được gán với nhóm thứ j = p V i=i
- Nếu trọng tâm có tọa độ được thay đổi đáng kể trong quá trình cậnhật trên, quay trở lại bước 2 ; nếu không thì dừng lại.
Thuật toán K- trung bình chia một tập hợp các vectơ 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 ơ-clit được sử dụng, ta có hàm chi phí toàn phần có thể được xác định như sau:
K (
X, -c , (2.17)
i = l yXjjGC,
Hình 2.11. Trong bước tính toán trên, c á c véc tơ Xi và X2 thuộc về nhóm C1, c á c vectơ X3 và X* thuộc về nhóm C2, do đó trong quá trình cập nhật, C1 sẽ dịch chuyẻn về phía trung điểm củ a X 1 và x 2 còn C 2 sẽ d ịch chuyển về phía trung điểm của X3 và X 4
Với n điểm dữ liệu và K nhóm, các nhóm đã phân chia có thể được mô tả hoàn chỉnh bằng ma trận liên thuộc nhị phân K X n với phần tử U jj = 1 nếu điểm dữ liệu thứ j thuộc nhóm i và bằng 0 trong trường hợp khác, tức là
f2 2
1 nếu ụ . - c ị s ||xj--ck|| (2 . 1 8 )
0 ngược lại
41
Trong quá trình tạo nhóm cứng, một điểm dữ liệu cho trước có thê chỉ trong một nhóm, do đó, ma trận liên thuộc Ư có những tính chất sau K
(2.19)
với tất cả các điểm dữ liệu j = 1, 2 ,..., n và
K n
(2.20)
Thuật toán tạo nhóm cứng không tính đến các hoạt động tương đối của các nơron, chỉ thưởng cho nơron chiến thang. Giá trị liên thuộc của nơron thua luôn luôn bằng 0 , bất chấp mức độ hoạt động bên trong của nó. 2.1.4.2.3. Thuật toán tạo nhóm cơ ban
Quá trình tạo nhóm mờ, cũng được gọi là nhóm C- trung bình là một thuật toán trong đó mỗi điểm dữ liệu thuộc về các nhóm cụ thể với các hệ số được gọi là độ liên thuộc /u. Giá trị liên thuộc cụ thể của một vài dữ liệu X tới tập F thường được xác định thông qua sừ dụng hàm liên thuộc Ịi(x). Ở đây, chúng tôi sẽ sử dụng hàm Gaussian tổng quát hóa được xác định như sau:
n(x) = e x p ( * - c) ------- J —
l ơ
Tham số c là tâm của hàm, ơ mô tả độ rộng của hàm và b điều khiển hình dạng của hàm. Với b = 1, nó là hàm Gaussian gốc, với b » 1 nó là hình thang và đặc tính tam giác thu được với các giá trị cùa b nằm giữa 0.4 và 0 .8 .
Tương tự trường hợp tạo nhóm cứng, quá trình tạo nhóm mờ chia một tập cùa n vectơ Xj thành K nhóm mờ và tìm tầm nhóm của mỗi nhỏm để hàm chi phí đo độ không đồng dạng được tối thiểu hóa. Vectơ X thuộc vào nhóm với độ liên thuộc được mô tả bởi phương trình trên.
Giá trị liên thuộc này phụ thuộc mạnh vào khoảng cách từ dữ liệu X tới tâm của nhóm. Lúc này, vectơ X có thể thuộc vào một vài nhóm với độ liên thuộc có giá trị từ 0 đến 1. Do đó, đầu vào của ma trận u có giá trị từ 0 đến 1 với tất cả các vectơ dữ liệu. Lúc này, hàm chi phí toàn phần có thể được xác định lại như sau :
42
E = Ề ẳ < lh -x J
1=1 j
với m là số mũ trọng số, m e [1, 00]. Đe đạt được giá trị tối thiểu của hàm chi phí, chúng ta phải xem xét ràng buộc trên. Với vấn đề này, chúng tôi giới thiệu hàm Lagrange LE, được xác định như sau:
L E = È Ệ » : ; |c . - * )| ’ + Ì > , ( ! > , - • 1=1 j J=I V 1=1
(2 .2 1 )
trong đó: X.J là các nhân tử Lagrange cho n 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 :
V " u"1: J=| u
V " 11"
í-í\=\ 'J
và
I
\ l/( 111-1)
(2 .22) (2.23)
trong đó: dij là khoảng cách ơ -c lit giữa tâm Cj và vectơ d ữ liệu Xj. D o đó, thuật toán phân nhóm C-trung bình mờ có thể được phát biểu như sau: - Khởi tạo ma trận u với các giá trị ngẫu nhiên giữa 0 và 1 theo cách mà thỏa mãn các ràng buộc (2 .2 1 ).
- lìm K tám nhóm mờ Cj sứ dụng phương trinh (2.22).
- Tính toán hàm chi phí. Neu E thấp, giá trị sai số già định hay sự mở rộng qua vòng lặp trước đó của nó bỏ qua được dừng lại, nếu không, đi đến bước kế tiếp.
- Tính toán các đầu vào mới cùa ma trận u sử dụng phương trình (2.23) và quay lại bước 2.
Quá trình này được lặp lại nhiều lần 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 ià đạt tới giá trị tối thiểu toàn cục. Chất lượng của giải pháp được quyết định bởi sự lựa chọn các tâm nhóm khởi đâu theo sau từ các giá trị ngẫu nhiên của ma trận u . Các tâm nên được tập trung ở những khu vực này nơi phân bố hầu hết các điểm dữ liệu đa chiều. Chì trong trường họp phân bố đều, sự sắp xếp của các tâm dễ dàng và cũng
43
nên đều nhau. Trong các trường hợp khác nên áp dụng các phương pháp phân bố mật độ dữ liệu đặc biệt. Phương pháp được biết đến nhiều nhất là phương pháp tạo nhóm theo núi và phân nhóm loại trừ.
2.2. MẠNG MLP (MULTILAYER PERCEPTRONS NETWORK) 2.2.1. Cấu trúc mạng
Là một trong những mạng nơron nhiều lớp được xây dựng đầu tiên và hiện nay đã được ứng dụng rộng rãi trong thực tế. Các ứng dụng mạng MLP trong kỹ thuật có thể kể tới:
- Mô hình hóa hàm phi tuyến.
- Nhận dạng đối tượng tuyến tính.
- Nhận dạng đối tượng phi tuyến.
- Phát hiện phần tử sự cố hay bù sai số hệ thống.
Mạng MLP được xẩy dựng từ các phần tử cơ bàn gọi là nơron. Mô hình toán học của một nơron được trình bày trên hình 2.12a. Mô hình rút gọn được trình bày trên hình 2.12b:
X, X,
(a) (b)
H ình 2.12. Mô h ìn h to á n h ọ c c ủ a nơron: m ô h ìn h đ ầy đ ù (a) v à rút gọn (b)
Mỗi nơron có thể có nhiều đầu vào Xj, i = 1 -> N. Mỗi đầu vào tín hiệu Xị được khuếch đại bàng trọng số kết nối W j. Các tín hiệu đầu vào được
lấy tổng có trọng lượng và tạo ra tín hiệu đi qua khối hàm f để tạo thành đầu ra tương ứng y. Hàm f được gọi là hàm truyền đạt hoặc hàm kích hoạt {activation function). Trong thực tế, ta thường sử dụng các hàm kích hoạt là hàm:
44
- Logsig: f ( u ) - (2.24)
1 -e ~ ai1
-T an sig : f(u) = -—- — & V 1 + e -au - Hàm tuyến tính: f(u) = au
(2.25) (2.26)
Với các phần tử nơron cơ bản này, ta có thể xây dựng mô hình cấu trúc mạng nhiều lớp, bao gồm lớp đầu vào X , lớp đầu ra y và một số lóp ở giữa gọi là lớp ẩn. Tại mỗi lớp (trừ lớp đầu vào) ta có một số nơron, giữa hai lớp bất kỳ của mạng có các kết nối có trọng số. Thông thườ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.
Trong các mô hình đã được nghiên cứu, phần lớn chỉ dùng một lớp ẩn. Khi đó mạng MLP sê gồm có tổng cộng 3 lớp. cấu trúc một mạng MLP với 1 lớp ẩn được thể hiện trên hình 2.13 với 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 (Wịj - trọng số ghép nối giữa nơron ẩn thứ i và đầu vào thứ j), V là ma trận các trọng số kết nối giữa lớp ẩn và lớp đầu ra (Vjj - trọng số ghép nối giữa nơron đầu ra thứ i và nơron ẩn thứ j).
H ình 2.13. C ấ u trú c m ạ n g MLP v ớ i m ộ t lớ p ẳ n
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ơron thuộc lớp ẩn; K - số nơron ờ lớp đầu ra.
- Các hàm truyền đạt f| của lớp ẩn và Ỉ2 của lớp đầu ra.
45
- Ma trận trọng số W e ỊỊJM* 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 G ỊRKx(M+l) giữa lớp ẩn và lớp đầu ra. Khi đó, với vectơ đầu vào X ta có:
- Tổng đầu vào của nơron ẩn thứ i bàng:
N
(2.27)
j=0
Đầu ra của nơron ẩn thứ i: Vj = f|(Uj) (để phù hợp với công thức, ta coi đầu vào phân cực của các nơron lớp ra là Vo = 1 .
- Tổng đầu vào của nơron đầu ra thứ i:
M
& = Ẹ viV «- (2.28)
- Và cuối cùng ta có đầu ra thứ i của mạng sê bằng y, = Í2(gi). Qtrình tính toán đáp ứng của mạng MLP khi có đầu vào X được gọi là quá trình truyền thẳng.
Nhiệm vụ của quá trình học là xác định giá trị các phần từ của w và V sao cho đáp ứng đầu ra của mạng gần giống với giá trị đích nhất. Ta có thể sử dụng thuật toán bước giảm cực đại để giải bài toán này. Hiện nay mạng MLP đã có nhiều công trình nghiên cứu kỹ cả phần lý thuyết và ứng dụng trong các lĩnh vực nhận dạng, ước lượng, dự báo, các hệ thống tự động điều chinh quá trình đạt hiệu quả tốt.
2.2.2. Thuật toán học của mạng MLP
Nội dung của thuật toán bước giảm cực đại có thể được trình bày như sau: Ta có một hàm f(x) bất kỳ và một giá tfị khởi đầu x(0). Ta cần tìm điểm x(l) sao cho f(x(l)) < f(x(0)). 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 {x(k)} mà giá trị hàm số f(x(k)) giảm dần, hay nói cách khác f(x(k)) —> min. 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:
(2.29)
trong đó: T| - hệ số bước học. Công thức này là hệ quả của phép khai triển Taylor của hàm số f lân cận điểm xtk>:
46
f(x (k) + A )« f(x
(2.31)
V (k>l) = y ( k ) _ d E
“ P “ P 15 V (k)
với hàm mục tiêu
E = i £ | y “- - d ‘f
z i=l
Từ các công thức đã nêu trên ta có
ỠE = í ÈM"-< )-? “ (2-32> 3V # H uvop i=l 1=1 trong đỏ:
ổy(.° . . . ỡg';0 . , ,;>x N ... av, j —f Jk (2 33)
Pp<'> N
. = f2(gỌ >)rỄ i_ = f2(g < '> )ỷ ,
g\j 2V®j )q \ị ' j ' r í k ỔV„. ƯVap aịĩ k=0 uvap
0V. ' ' ỔV.
nhưng — — = 1 khi j = a và k = (3, — — = 0 trong các trường hợp còn lại.
Từ đó ta có:
ÕE
ổVaPẺ ( y ^ - d - ) f 2(g^)v-> (2.34) 1=1
Một cách hoàn toàn tương tự ta có:
ỔE
* Ẻ È ( > f v : ( < w (2J5) 6|
thì đây được coi là một định nghĩa chặt chẽ. Theo cách định nghĩa như vậy với m ột giá trị X bất kì, có thể biết được X có thuộc tập B hay không. N ói cách khác, với m ọi so X, thì m ệnh đề X e B chi có thể nhận m ộ t tro n g hai giá trị: Đ úng (bằng 1), hay sai (bằng 0).
Tuy nhiên, nếu đưa ra một định nghĩa: “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” hay
c = |x e R |x « 3|
thì rõ ràng đây là một định nghĩa không chặt chẽ (hay còn gọi là mờ) vì thực tế không tồn tại một định nghĩa rõ cho khái niệm “xấp xi”. Với một định nghĩa “mờ” như vậy, không thể khẳng định giá trị X = 2 hay X = 2,9 có thuộc tập c hay không. N ếu đã không khẳng định được X = 2 hay X = 2,9 có thuộc
50
c (xấp xỉ 3) hay không thì cũng không khẳng định là X = 2 hay X - 2,9 không thuộc c (không xấp xi 3).
Khác với lôgic kinh điển chi có hai giá trị là 1 nếu X e c hoặc bang 0 nếu X Ể c , lôgic m ờ sẽ đưa ra quan niệm mới có vai trò làm rõ định nghĩa cho tập m ờ. N ói m ộ t cách khác, với lôgic m ờ thì m ột giá trị X nào đó sê có thể thuộc về tập c khoáng bao nhiêu phần trăm ? điều đó sẽ được thể hiện thông qua giá trị hàm liên thuộc n(x) tại điểm X đó sẽ bằng bao nhiêu.
C hẳng hạn có thề nói như sau: “giá trị X = 2,9 thuộc về tập c chín sáu phần trăm” hay “giá trị X = 2 thuộc về tập c bốn sáu phần trăm” và giá trị bao nhiêu phần trăm đó sê tuỳ thuộc vào cách xây dựng mô hình hàm liên thuộc
như thế nào? Như vậy với ví dụ trên, cần có độ tin cậy của mệnh đề X = 2 ,9 e c phải cao hơn độ tin cậy của mệnh đề X = 2 € c .
3.1.2. Biểu thức giá trị mờ
Đe tìm hiểu về biểu thức giá trị mờ, ta xét 3 dạng biểu thức mờ cơ bàn sau:
- X nhỏ hơn nh iều so với A : X —co(3.1)
0
0
0
0
0
0
0
0
0 .
ol--------------------*------------*------L-
-4 - 3 -2 -1 0 1 2
H ình 3.1. H àm liên thuộc c ủ a biểu thức m ờ X « A
51
Đối với biểu thức mờ X » A , hàm liên thuộc n*A(x) sẽ có dạng hình chuông như hình 3.2 với 0 < (x ) < 1, được định nghĩa:
1 khi X = A
y = ^ A(x ) = ' (3.2) 0 khi |x - a | -> 00
H ình 3.2. H àm liên th u ộ c h ìn h c h u ô n g c ủ a b iểu th ứ c m ờ X » A
Đối với biểu thức mờ X » A , hàm liên thuộc H-*A(x) sẽ có dạng như hình 3.3 với 0 < ịa ^ ( x ) < 1, được định nghĩa:
í-» 1 khi X - A -> +00
-> 0 khi X - A -> -00 y = n * A(x ) = (3.3)
H ình 3.3. H àm liên th u ộ c c ủ a b iểu th ứ c m ờ X » A
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. Đối với các hàm liên thuộc hình chuông, thuờng sử dụng hàm Gauss và được mô tả bằng phương trình:
(3.4)
52
^ c , b , a ( x ) :
1 +
1
/x -c\ \ơ /
Trong đó: b,ơ € R và X , c là các vectơ. Ba thông số c, b và ơ có thể điều chỉnh linh hoạt, nên hình dạng của hàm liên thuộc sê được thay đổi bởi ba tham số là: Trọng tâm c, độ mở ơ và hệ số mũ b.
Đe làm rõ về ảnh hưởng của các tham số đến hình dạng của hàm liên thuộc, xét ví dụ về tập mờ c gôm các số thực gần bằng 3
c = |x e R|x as 3|
Hàm phụ thuộc ^ 3 (x) tại điểm X nào đó phải có giá trị trong khoảng [0,1], tức là:
0 ^ , 3( x ) < l
trong đó: (x ) —> 1 khi |x - 3 | -> 0 và (x) —> 0 khi |x -3 | —>00 .
Già sử chọn giá trị c = 3, độ mở ơ = 1, b = 1 thì hàm liên thuộc của tập c như sau:
1 +
/M ì 2 1 + ( M ) 2 V 1
H ình 3.4a. H ình d ạ n g c ủ a h àm liên th u ộ c n«3(x) v ớ i b a đ ộ m ờ k h á c n h a u 53
H ình 3.4b. H ình d ạ n g h àm liên th u ộ c n . 3(x) với g iá trị k h á c n h a u h ệ s ố b
Hình 3.4a mô tả hình dạng của hàm liên thuộc n*3(x) với hệ số mũ được chọn cố định b = 1 và giá trị độ mở ơ lần luợt thay đổi bằng 1, 2 và 3. Trên hình 3.4b, nếu chọn giá trị độ mở ơ cố định bằng ] và giá trị b thay đổi lần lượt bằng 0,5 thi hàm kích hoạt có dạng gần như hình tam giác, b = 1 có
dạng hình chuông và b = 3 có dạng gần với hình thang.
Một điểm chung trong các hàm n*3(x) là các điểm có giá trị càng gần trọng tâm thì sẽ có giá trị liên thuộc càng lớn (tiến tới 1), đối với các điểm có giá trị càng xa trọng tâm thì có giá trị liên thuộc càng nhỏ (tiến tới 0).
3.1.3. Quy tắc suy luận mờ và giá trị của quy tắc suy luận mờ
Trong lý thuyết điều khiển, các quy tắc điều khiển thường được mô tả dưới dạng mệnh đề điều kiện IF ... THEN
IF đầu vào là A THEN đầu ra là B (3.5)
Đối với khái niệm điều khiển chính xác, cần chỉ rõ rằng nếu đại lượng đầu vào có giá trị cụ thể bao nhiêu thì đầu ra cũng bằng một giá trị cụ thể nào đó. Như vậy một quy tắc suy luận chính xác sẽ có cấu trúc như sau: IF X = A THEN y = B (3.6)
tức là khi giá trị X bằng A thì giá trị y sẽ bằng B.
54
Tuy nhiên một vấn đề đặt ra: Neu khi giá trị X “xấp xỉ” bàng A thì giá trị y sẽ bằng bao nhiêu? 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ì có thể tính được giá trị của y hay không? Khái niệm “lôgic mờ” sẽ trả lời được câu hỏi trên thông qua quy tắc suy luận mờ.
Một quy tắc suy luận mờ sẽ có cấu trúc như sau:
IF X » A THEN y as B (3.7)
tức là nếu X xấp xỉ bằng A thì y sẽ xấp xỉ bằng B. Khi X bằng A thì sê có y 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 ^ U a (x ) v à thông qua giá trị của hàm liên thuộc. Với một giá trị đầu vào X b ấ t kì, có thể đề xuất phương pháp tính được giá trị đầu ra y của quy tắc suy luận mờ như sau:
y = B-H*A(x) (3-8)
Trên thực tế. một hệ thống điều khiển hay nhận dạng không chi có duy nhất một quy tắc suy luận mờ mà thông thường sẽ bao gồm một tập hợp các quy tấc suy luận mờ. 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ờ.
Ví dụ: hệ thống gồm có 4 quy tắc mờ R l, R2, R3, R4 như hình 3.5 R l: If X, is small and x 2 is small Then y = 3x, + 2 x 2 -4 R2: If Xị is small and x2 is big Then y = 2xj -3x2 +5 R3: If X, is big and X, is big Then y = - X ,-4 x 2 + 3 R4: If Xj is big and x 2 is sm all T hen y = -2X] + 5 x 2 -3 Giả sử vectơ đầu vào là: X = (x ,;x 2)' = (10;0,5)T. khi đó các giá trị
liên thuộc tương ứng với các quy tắc sẽ được lần lượt tính toán bằng: 0,24; 0,8; 1,0; 0,3, tương ứng với các giá trị đầu ra là: yRi = 27; yR2 = 23,5; ỷ Rì = -9; yR 4 =-20,5.
55
T“ T I
I F' H s 1— p ^ * «» u id■ | S i * .T H E N y — 3 X | + 2 x -> - 4 - 2 7
I F
Ỳ Ỵ
» i n Jw „ I
T H E N y “ 2 ) 1 | - 3 * 1 + 5 - 2 - V S
I F
M l ,
a n d
' 1 ^ 1 . .T H E N V — - X 1 - + Ĩ m - Q
I Fu t „ỉir t d' H i * , .T H E N y - - 2 X | + 5 x -> - 3 - - 2 0 . 5
Hình 3.5. ĐỒ thị h ệ th ố n g g ồ m c ó 4 q u y tắ c m ờ
Trong trường hợp này độ mạnh của luật được chọn chính bàng giá trị liên thuộc của X trong từng quy tắc. G iá trị |ij(x) và g iá trị đầu ra của toàn hệ thống đố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 đó và được tính như sau:
Z n,(x)-y,(x)
y = ^ ----------- <3.9) 2 > i t o i=l
= 0,24.27 + 0 ,8.23,5 + 1 ,0.(-9) + 0,3. (-20,5)
y 0,24 + 0,8 + 0,1 + 0,3
N
trong nhiều trường hợp giá trị ^ Ị i l(x)được quy chuẩn bằng 1 nên ta có i«i
y = ẳ H i ( x ) y i ( x ) (3.10) i= 1
3.2. MẠNG TSK (TAKAGA - SUGENO - KANG)
3.2.1. Mô hình mạng TSK
3.2.1.1. Các luật suy luận TSK
Mạng TSK ià mạng nơron lôgic mờ, dùng để mô phỏng các luật suy luận và điều khiển mờ do ba tác giả người Nhật là Takaga, Sugeno và Kang đề xuất. Một quy tắc suy luận mờ TSK có dạng như sau:
56
if X ss c then y « f(x) = a0 + a,X, + ... + a Nx N (3.11) trongđó X = [x, , x2,...,xn ]T , c = [c ,, C2,..., CN]' G R N
Quy tắc trong phương trình (3.11) có một vectơ đặc trưng c được gọi là trọng tâm củ a quy tắc. N eu vectơ đầu vào X càng gần với trọng tâm này thì đầu ra của quy tắc sẽ càng gần với giá trị f(x) với f là một hàm tuyến tính cho trước củ a v ectơ đ ầu vào (trư ờng hợp đặc biệt, khi X = c thì y = f(x)). Hiếu theo một cách khác, luật suy luận này dùng để tạo đáp ứng đầu ra khi số liệu đầu vào thuộc về lân cận của một điểm c = [c ,, C2,..., C N]T e R N
nào đó. Đe có thể tạo ra một mô hình suy luận bao trùm được không gian số liệu đầu vào, có thể sử dụng hệ nhiều quy tắc suy luận:
if X » c , then y, w ^ ( x )
• ........................ ........... (3.12) if X « C M then yM « fM(x)
Có thể thay các giá trị phụ thuộc mờ ở hệ trên bằng các hàm chính xác:
■y, = W .Ci(x)f,(x)
• ........................ (3.13) yM = w ,CM(x )fM(x)
Trong đó w c ( là hệ số kích hoạt cùa luật mờ.
K hi đó, ứ ng với m ỗi đầu vào X, mỗi quy tắc suy luận sẽ đ ư a ra m ột đáp ứng yi. Để có thể tổng hợp lại và đưa ra được một đáp ứng duy nhất, các tác giả đã đề x u ất lấy tru n g bình trọng số của các đáp ứ ng riêng lẻ. T ừ đó có:
Ì w , C|(x)f,(x)
y = ± ^M— ------------ <3-14) Z w , c , w
i = 1
57
L Ill'll I
H ình 3.6. Mô h ìn h h ệ n h iề u lu ậ t
3.2.1.2. Cấu trúc chung mạng TSK
Phát triển từ hệ suy luận các tác già Takaga, Sugeno và Kang đã đề xuất mô hình mạng TSK để mô phỏng hệ suy luận. Mạng này thuộc hệ thống các hệ suy luận mờ, ngày nay được áp dụng rộng rãi trong kỹ thuật. Để mô phỏng hoạt động của hệ thống ta có cấu trúc mạng được trình bày cụ thể như hình 3.7, cấu trúc gồm 5 lớp:
H ình 3.7. C ấ u trú c m ạ n g TSK k in h đ iẻ n
58
Lớp thứ nhất bao gồm các khối M.jfxj) còn được gọi là khối mờ hoá
cho thành phần thứ j của vectơ đầu vào X. Mỗi khối mờ hoá thường sử dụng hàm Gauss m ở rộng như biêu thức (3.15)
/ \ 1
(3.15)
1 +
X
o
ơ n V ụ /
được đặc trưng bới 3 tham số C jj.b jjjC T jj, trong đó: c là số trọng tâm, b là hệ số mũ, ơ là độ mở, i là số luật, j số kênh đầu vào. Hàm Gauss mở rộng này có tính chất là ( XJ) —>■ 1 khi ||xj — CjjII -> 0 và >0 khi
x i ~ c« ' 00 .
Lớp thứ hai là khối nhân, dùng để tính tích đầu ra của các khối mờ hoá
M x ) = n ^ j ( x j) (3 1 6 ) H
Đầu ra cùa lớp thứ hai sẽ là các hệ số kích hoạt Hi (x ) của các kênh suy luận fj phía sau.
Lớp thứ ba là khối tính các giá trị hàm fj đầu ra của mạng TSK, đây là các hàm tuyên tính.
Lớp thứ tư là khối tính toán các thành phần tử số f| và mẫu số Ỉ2.
f, - ĩ w , f (i)( x ) (3.17) i=l
M
f 2 = Ẽ W , (3.18) i=l
Lớp thứ năm là khối tính đáp ứng cuối cùng của mạng TSK M
£w,f">(x)
, _ j=l__________ __
y = - (3.19)
M r
Ị w . f>
1 = 1
Trong cấu trúc này ta có lớp 2, 4 và 5 là các lớp tính toán và hoạt động cố định. Các lớp 1 và 3 là các lớp có các tham số có thể thay đổi thích nghi để xây dựng mô hình tối ưu. Lớp 1 đó là các tham số Cị, b,, ơị của các khối mờ hoá, trong lớp 3 đó là các hệ số ay cùa hàm tuyến tính.
59
3.2.13. Cải tiến cấu trúc kinh đién v à thuật toán xây dụng mạng TSK Trong mẫu truyền thống, độ mạnh của quy tắc mờ thứ i phụ thuộc khoảng cách giữa vectơ đầu vào và mẫu của quy tắc và được tính toán bằng:
Mx)=rWxj)=ÍỊ— (3.20) >1 j.|1 +\ 2b„
ơ„
Điều này đòi hỏi hệ số mũ và độ mở được xác định cho mọi tín hiệu đầu vào. Những hệ số này là cần thiết để xác định dữ liệu theo từng chiều, nhưng tại cùng một thời điểm chúng làm phức tạp cấu trúc của mạng và làm tăng số lượng các tham số phi tuyến. Đe giảm số lượng các tham số phi tuyến ta sử dụng công thức xác định khoảng cách. Phương pháp được thế hiện dưới dạng tổng quát như sau:
d 2(x,c) = ( x - c ) T.S .(x -c ) (3.21) Trong đó s là ma trận xác định duơng, đối xứng. Có thể dễ dàng nhận ra rằng (3.21) là công thức tổng quát hom công thức xác định khoảng cách Eucildes kinh điển, trong đó s = I - ma trận đom vị. Với phương pháp này, mức độ kích hoạt của quy tắc thứ i có thể chỉ chứa một cặp hệ số mũ và độ rộng cho mọi biến N. Hàm mờ hiệu chỉnh được xác định là:
M * ) = 7 - Vb, (3.22) 1 +x - c .
Mầu hiệu chinh mạng TSK chỉ có M x (N + 2) tham số điều chỉnh phi tuyển.
60
Để điều chỉnh các tham số cùa mạng ta có thể chia các tham sô thành 2 nhóm: Tham so a,j của các hàm trong mạng TSK gọi là các tham sô tuyên tính, v à các tham số CjjbjjOj gọi là các tham số phi tu y ến . T h u ật toán đ iều
chinh được thực hiện như sau:
1. Hiệu chỉnh các tham số tuyến tính ajj các hàm của mạng TSK tại các giá trị cố định các tham số phi tuyến.
2. Hiệu chỉnh các tham số phi tuyến tại các giá trị cố định các tham số tuyến tính.
Các bước 1 và 2 được lặp lại nhiều lần cho đến khi thiết lập được các tham số của mạng. Tại N biến đầu vào và M quy tắc độc lập có M x (N + 1)
tham số tuyến tính có thể điều chỉnh được của hàm TSK cho mỗi đầu ra. Trong bước 1, các tham số phi tuyến là cố định và với sự kích thích của hệ thống bởi vectơ X , tín hiệu đầu ra có thể viết dưới dạng: M r N
y(x) = X h ( x ) al0-t-X auxj i=J j = l
(3.23a)
Khi có p cặp mẫu { X j, dj} i = l,...,p , ta ký hiệu Wjj = Hị í tính cho
mẫu đầu vào X(j). Các cặp mẫu này cho phép xây dựng được hệ p phương trình tuyến tính, từ đó có thể xác định được các thông số tuyến tính tối ưu (ứng với sai số nhỏ nhất). Hệ p phương trình tuyến tính được khái quát như sau:
a io
wvvll • W h X in •• W M1 w X v v M 1a I1 • W M,X w 12 W,2X2I . ■ W I 2 * 2 N • ■ W M2 w X M2 2! • W M2X
W,'p w .p x p . •• W lpXpN . • W Mp w X Mp pl • WMpx Hoặc dưới dạng ma trận
d|
a iN d 2
X —
a M0 d_ p _
_a M N.
(3.23b)
W *A = D (3.24) Ma trận w có kích thước là p x (N + l)M . Hệ phương trình này được xác lập bằng cách sử dụng ma trận nghịch đảo già của w .
61
A = w + X D (3.25) với w + là ma trận nghịch đảo giả của w , được tính bằng cách sử dụng thuật toán SVD.
Sau khi cố định giá trị của các tham số phi tuyến, bước thứ 2 bắt đầu với việc tính giá trị đầu ra cần thiết bằng cách sử dụng mối quan hệ tuyến tính.
Y = w X A (3.26) Có các giá trị đầu ra có thể xác định giá trị của các hàm mục tiêu.
E = ị ẳ ( y ( x , ) - d , ) 2
£ /=I(3.27)
Các tham số phi tuyến được hiệu chỉnh bằng cách sử dụng phương pháp bước giảm cực đại:
C kj ( t + l ) = C kj( t ) - T l c
ỔE(t)(3.28) ổckj
ơ kj(t + l) = ơ kj(t)-T ia
ỠE(t)
lo , (3.29)
bkj(t + l) = bkj(t)-T ib
ổE(t)(3.30) ổbkj
Các phương trình từ (3.28) đến (3.30) sừ dụng độ dốc cùa hàm mục tiêu E với các tham số phi tuyến, độ dốc đối với mẫu ca(i cùa biến thứ p và
quy tắc thứ a có thể biểu diễn trong mối quan hệ sau:
* = ẳ ~ ? t ệ f k [ Ễ w .,( g „ < x ,) - e „ < x ,,) otB /-1 Í Ỹ ' , , , aP Lm=l
Z , w (i
V i = i /
với ga (x,) = aa0 + ^ a ajxlj tacó
H
4bjX Waíx ( l - W J x ị s pjx (x r caj)
ÕWC ___________________ H
(3.31)
õ c ap d (x, ca)(3.32) Hàm dốc liên quan tới cla) là
62
aw, p i= i i a p /=1
4e,baW „(l-W a) . £ s pj(x/j- c aj)
----------- 7------------72------ — ------------------------ Z W w ( g a / - g w )
i > i d2(x, c(r|)
H y
(3.33)
Tương tự các hàm dốc quan hệ tới ơ i b như sau:
ÕE ổơ „
V
- t
2b" W J 1 - W J
L w/j V j=| y
M
Z w k /(ẽ a /-g k/) . k = l
(3.34)
dE _ Ỷ ổba “ h
2e (/)ln í M
? Wj V -i=l
d(Xp ca )(1-W JM
Z W w ( g a/ - g k / )
k=l
(3.35)
3.2.2. Khởi tạo tự động của các quy tắc suy luận mờ, thuật toán Gustafson - Kessel
Một trong những vấn đề quan trọng nhất trong mạng TSK là xác định số lượng các quy tác có thể sử dụng được trong mẫu dữ liệu. Càng nhiều quy tắc có nghĩa là biểu diễn dữ liệu càng tốt, nhưng nó cũng làm tăng độ phức tạp của mạng, làm tăng chi phí xử lý dữ liệu. Mạng điều khiển quá phức tạp có thể dẫn tới giảm khả năng tổng quát hoá, làm giảm chất lượng hoạt động của mạng. Để giải quyết với nhiều đầu ra, có thể viết các đẳng thức tương tự cho mỗi đầu ra. Tuy nhiên, điều đó có nghĩa là làm tăng độ phức tạp của giải pháp. Vì vậy vấn đề quan trọng nhất là giảm số lượng các quy tắc suy luận bàng cách loại bỏ sự kết hợp với những vùng dữ liệu trống. Giải quyết vấn đề này, áp dụng thuật toán tự tổ chức mờ của dữ liệu bằng thuật toán Gustafson - Kessel để xác định vị trí của các mẫu.
Ký hiệu các vectơ dừ liệu trong tập hợp là Xị e R N với i = l,2 ,...,p . Ta sẽ phân chia các vectơ này thành M nhóm, mỗi nhóm được đại diện bởi vectơ trọng tâm c = [c M, c 3,...,cjN] . Đặt u = € R Mxp là ma trận các
63
hệ số phụ thuộc Ujj - m ức độ phụ thuộc của Xj (j = l,2 ,...p ) vào nhóm thứ i(i = . Thuật toán chia nhóm được thực hiện với hàm mục tiêu E
được định nghĩa theo công thức:
M p
E = £ l < d 2(xj)Cj) (3.36)
1=1 j=i
Một phân chia tốt sẽ có giá trị hàm E nhỏ.
M
Các thuật toán tối ưu hóa E được xây dựng với các ràng buộc ^ Ujj=1 i=l
với j = 1, 2,..., p và 0 < V u ,j < p với i = 1, 2,..., M. Tham số m dùng để điều
chỉnh tính mờ của các nhóm (thường thì m = 2). Hàm dCx^Cj) xác định
khoảng cách giữ a vectơ dữ liệu Xj và m ẫu Cj của nhóm th ứ i. M ột trong những thuật toán mờ hiệu quả nhất là thuật toán Gustaffson - Kessel (G-K). Thuật toán G-K được thể hiện với các bước sau :
1. Khởi tạo tạm thời một cách ngẫu nhiên các trọng tâm c, với i = tính ma trận u.
2. Xác định vị trí các trọng tâm theo công thức
c, =J~ Ị~ — (3.37)
j-i
3. Tính các hiệp biến nhóm F(0 và ma trận s, (i = theo
X < ( x J-c ,)(x J- c 1)T
r — _________________
P(3.38)
s, = ^det(F i).[Fi]-' (3.39*
4. Ước tính khoảng cách djj2 (i = l,2...,p) giữa vectơ đầu vào Xj và m ẫ u nhóm Cj
dị = (xj - c i)T.Sỉ.(xj - c i) (3.40)
64
5. Xác định các ma trận đầu vào U jj(i = 1,2,...,M và j = l,2 ,...,p ) thquy tăc
u,ij (3.41)
Nếu d = 0 trong trường hợp i = I, lấy U,J = 1 và U|J = 0 cho I * i . Lặp lại tới khi ||Ư - UM|| < e cho hai hước lặp lại liên tiếp.
Hình 3.9 là một ví dụ về tổ chức không gian dữ liệu thành các nhóm dữ liệu bàng thuật toán G-K, trong đó các điểm trong một nhóm nam trên cùng một đường elip sẽ có giá trị liên thuộc bằng nhau.
Thuật toán G-K được dùng để khởi tạo quá trình học của mạng nơron. Sau khi áp dụng thuật toán G-K, các vùng dữ liệu sẽ được thiết lập, đồng thời xác định được các giá trị liên thuộc ban đầu của các điêm dữ liệu trong các tập dữ liệu học. Quá trình học tiếp theo của mạng TSK sẽ điều chỉnh lại các giá trị liên thuộc của các điểm dữ liệu cũng như các giá trị tuyến tính ay đê kêt quả học được chính xác.
1 25
0 75
0 5
0 25
0
- 0 2 5
- 0.25 0 0.25 0.5 0.75 1.25
Hinh 3.9. P h â n b ố c á c n h ó m d ữ liệu b à n g th u ậ t to á n G-K
65
3.2.3. Xác định sô lượng nhóm thông qua việc phôi hợp 6 chi sô thông kê
Nhiệm vụ ước lượng số nhóm tập trung của số liệu và vị trí phân bô của các nhóm là một trong những vấn đề cơ bàn của các bài toán xử lý tín hiệu nói chung và xác suất thống kê nói riêng. Đã có rất nhiều các công trình nghiên cứu về nhiệm vụ này và các công trình nghiên cứu đã đề xuất nhiều công thức chỉ số thống kê khác nhau. Tuy nhiên, cũng theo các nghiên cứu thì mỗi chỉ số thống kê thường có tác dụng cho những trường hợp phân bố số liệu nhất định. Do đó các đánh giá vẫn chủ yếu là theo tính kinh
nghiệm, chưa có kết luận khẳng định chính thức về sự vượt trội của chỉ số nào so với các chỉ số còn lại trong mọi trường hợp phân bố số liệu.
Với thực tế như vậy, một hướng đề xuất mới hiện nay là cần sử dụng phôi hợp nhiều chỉ số đồng thời để nâng cao được độ tin cậy của việc ước lượng. Một số công trình trước đây đã sử dụng phối hợp đến 4 chì số, trong nội dung này chúng tôi đề xuất sử dụng thêm 2 chi số nữa tổng cộng là 6 chi số để ước lượng số nhóm trong phân bố số liệu.
Thông qua một số ví dụ minh chứng hiệu quả cao hơn của việc sử dụng 6 chi số so với sử dụng 4 chi số. 6 chi số được lựa chọn là:
1. Chi số thế tích mờ của nhóm Vh
M
(3.42)
1=1
2. Chỉ số mật độ phân bố mờ trung bình D a
(3.43)
Với các tham số SSị (i = 1,2,...,M ) chỉ được tính toán cho các vectơ Xk, với phạm vi là độ lệch chuẩn của các đặc tính nhóm và được xác định như sau:
S S |= ^ u jk cho từng biến k mà (xk - c , ) r.[ s (,>J .(xk - C j) < l. 66
3. Chi số trung bình khoảng cách nhóm Dw 1 M ,
D = — Y -
k=l_____
M t r V(3.44)
4. Chỉ số trung binh độ phăng của nhóm tA
1 ^
M t r(3.45)
Trong đó tị = A.jn / Ằn với x.jj là giá trị thứ j ma trận hiệp biến Fj, sắp xếp theo thứ tự giảm dần, ví dụ: x n > >... > X,jN. Một phân chia tốt khi chi số của Vh và t A đạt giá trị min, các chi số của Da và Dw đạt giá trị max.
5. Chi số PBM
PBM (k) = L ầ i.
k ElDl (3.46)
Trong đó: k là số trọng tâm;
E| là tổng khoảng cách có trọng số từ mọi điểm số liệu đến một trọng tâm Co duy nhất.
1 E
c° n S Xỉ p i-l
Ei = ẳ l l X. " Co|l i=l
p là số điểm dữ liệu
Ek là tổng khoảng cách nội nhóm được định nghĩa bởi:
E > -tíỉX lh -s í
i=i V «=1
(3.47) (3.48)
(3.49)
với Uy là hệ sế phụ thuộc của vectơ Xj vào trọng tâm Cj và được tính bằng
U =ij M 1 k=l a kj
(3.50) 67
Dk là khoảng cách lớn nhất giữa hai trọng tâm
K i.j-1, ..k 1' ' J II(3.51)
D, = max c, -c,
Số trọng tâm tối ưu (một phân chia tốt) sẽ được tìm cho giá trị tương ứng với PBM đạt cực đại.
6. Chi số DN\
Có bộ mẫu {Xj} với i=l,2,...,p; có M là số trọng tâm, từ đó ta có ma
trận các hệ số phụ thuộc mờ của vectơ X i vào trọng tâm C j, tiếp sau ta tính được các đại lượng
D,(U;C) = ì ấ K - < u(>T p ,=1
1 khi u„ > —
(3.52)
với
(Uu)T =
,J M
0 khi u„ < — ỈJ M
(3.53)
D(U;C) = X D j(U,C)
j=i
DC D(U,C)
M -l
Sau đó ta tính chỉ số Lattice
N ( ^ .£ ) = m i n [ ( F ; ° Í Ũ l - ( £ s £ ) ]
trong đó theo định nghĩa ta có
Fi oFk = min [maxCu^Uịý)]
F, s Fk = max [m in tu ^ u ^ )]
Từ các giá trị N(Fi,Fk) ta có:
NM = maxN(F,,Fk)
i,k
Cuối cùng ta có
0 DC = NM = 0
DN(U,C) = 2* DC*NM
DC + NMCác trường hợp khác
68
(3.54) (3.55)
(3.56)
(3.57) (3.58)
(3.59) (3.60)
Một phân chia tốt sẽ có giá trị DN nhỏ.
Để phối hợp sử dụng đồng thời 6 chi số này, chúng tôi đề xuất một còng thức gọi là “chi số tổng hợp”: a
a = a,Vh - a 2DA - a ,D w + a 4tA - a 5PBM + a6DN (3.61)
Xuất phát từ lý do như đã trình bày ở trên, mặt khác hiện nay cũng chưa có đề xuất nào mới về việc xác định thêm các chỉ số thống kê khác (ngoài 6 chỉ số thống kê nêu trên), nên chúng tôi đề xuất việc phối hợp 6 chi số để tính “chì số tổng hợp” a. Đồng thời chưa có kết luận chính thức nào trong các công trình nghiên cứu về hiệu quà của các chỉ số thống kê trong trường hợp tổng quát, vì vậy việc phối hợp các chi số tạm dựa trên nguyên tắc là các chi số có ảnh hưởng đồng đều. Do đó các hệ số a, của từng chỉ số thống kê được chọn là nghịch đảo của giá trị lớn nhất của chỉ số đó, để đảm bao trong công thức tính chi số tổng hợp mỗi chi số thống kê sê có khoảng
giá tri biến thiên giống nhau là đoan [0,1]. Ví du a, = ------^— - (max đươc max{Vh}
tính cho tất cả các chì số thống kê đang được xét), khi đó ta có aiVh € [0, 1]. Đồng thời, tiêu chí “số nhóm tốt” của mỗi chi số được ứng với giá trị min (Vh, tA và DN) hoặc giá trị max (Dw, Da và PBM ), vì vậy để thuận tiện cho việc tính toán và lựa chọn, nên thống nhất sử dụng tiêu chí giá tri của "chi số tổng hợp" đạt: "giá trị min ứng với số nhóm tốt". Đe có được giá trị a min thì các chì số Vh, tA và DN lấy hệ số với dấu chỉ số Dw, D a và PBM lấy hệ số với dấu
3.2.4. Đặt giá trị ban đâu cho các hàm suy luận
Sau khi số lượng trọng tâm đã được ước lượng và vị trí ban đầu của các trọng tâm được tính toán từ thuật toán G-K, ta cần khởi tạo các giá trị còn lại của các luật suy luận mờ. Một luật mờ có ba thông số cơ bản là một thông số Cj'Ma được xác định, do đó còn hai thông số
cần phài tiếp tục khởi tạo. Một giá trị nhỏ của a cũng làm cho quy
tắc “chính xác” hơn, nhưng giá trị lớn sẽ làm cho quy tắc trở nên linh hoạt và thiết thực hơn đối với phạm vi rộng của đầu vào. Giá trị của nó sẽ phụ
69
thuộc vào việc phân bố dữ liệu và khoảng cách giữa các vị trí mẫu. Phương pháp đặt giá trị ban đầu cho các giá trị cùa ơ được thực hiện như sau: 1. Đối với mỗi một trọng tâm Cf, tính khoảng cách cho tất cả các mẫu khác sử dụng.
2. T ính hệ số tỷ lệ Ref(l) băng cách lây khoảng cách trung bình từ trọng tâm Cj tới K (thường chọn K = 5) m ẫu số liệu gần nhất khi có hơn 5 trọng tâm hoặc K = M - 1 khi số trọng tâm M < 6.
3. Đặt giá trị ban đầu <7j tới R<;f(i)/k, hệ số bi chọn bằng 1 để có được hàm dạng hình chuông.
Để làm rõ cho các đề xuất nêu trên ta tiến hành thử nghiệm trên một số tập số liệu phân bổ trên mặt phẳng.
3.2.5. Kết quả thử nghiệm
T hử nghiệm 1: Có tập số liệu mẫu phân bố trên mặt phẳng như hình 3.10.
- Nhiệm vụ phân vùng tập số liệu mẫu thành các nhóm.
- Yêu cầu số lượng nhóm phù hợp và bao trùm toàn bộ tập số liệu. y I*
0 .9
0.8
0 .7
0.6
0 .5
0 .4
0 .3
0.2
0.1
X
Hình 3.10. T ập s ố liệu m ẫu p h á n b ố trê n m ặ t p h ẳ n g
70
- Cho số nhóm c biến thiên từ 2 đến 15 với 6 chì số: v h, D A D w, tA , PBM . DN.
- Vẽ biêu đồ biên thiên của chỉ sô Vh theo công thức (3.42). Sử dụng hàm function res = Vh all (X, M max) được xây dựng trong Matlab.
1
0 9
0 8
0.7
0.6
0.5
0 4
0.3
0.2
0.1
02 4 6 8 10 12 14 16 N u m b e r o f ce n te rs
H ình 3.11. B iểu đ ồ b iến th iê n c h i th e o s ố Vh
Biếu đồ hình 3.11 cho thấy khi Vh nhận giá trị nhó nhất tương ứng số nhóm bằng 9. Căn cứ vào chỉ số v h chọn số nhóm bằng 9 (tương ứng với 9 luật).
- Vẽ biểu đồ biến thiên của chỉ số Da biến thiên theo công thức 3.43. Sử dụng hàm function res = DA all (X, M jn a x ) được xây dựng trong Matlab. Qua biểu đồ hình 3.12 thấy Da có giá trị gần bằng 1 là giá trị lớn nhất thì số nhóm tương ứng bằng 9. Căn cứ vào chi số Da chọn số nhóm bàng 9 (tương ứng với 9 luật).
71
T r
_L
8 10
N um ber of centers
Hinh 3.12. B iểu đ ồ b iến th ié n th e o c h i s ố Da
- Vẽ biểu đồ biến thiên của chỉ số Dw biến thiên theo công thức 3.4Sử dụng hàm function res = DW all (X, M_max) được vẽ trong Matlab. Qua biểu đồ hình 3.13 thấy Dw xấp xỉ gần bằng 0,6 là giá trị lớn nhất thì số nhóm tương ứng bằng 2. Căn cứ vào chi số Dw chọn sổ nhóm băng 2 (tương ứng với 2 luật).
H ình 3.13. B iểu đ ồ b iến th iê n th e o c h i s ố Dw
72
Vẽ biểu đồ biến thiên cùa chỉ số tA theo công thức (3.45). Sử dụng hàm function res = tAall (X, M max) được vẽ trong Matlab.
H ình 3.14. B iểu đ ồ b iế n th iê n th e o c h i s ố tA
Qua biểu đồ hình 3.14 thấy tA= 0 là giá trị nhỏ nhất thì số nhóm tương ứng bằng 4. Căn cứ vào chỉ số tA chọn số nhóm bàng 4 (tương ứng với 4 luật). - Vẽ biểu đồ biến thiên chi số PBM theo công thức (3.46). Sử dụnhàm function res = PBMall (X, M max) được vẽ trong Matlab. Qua biểu đồ hình 3.15 thấy giá trị PBM xấp xi bằng 1 tương ứng với số nhóm bằng 9 là phân chia tốt
Number of centers
H ình 3.15. B iể u đ ồ b iế n th iê n th e o c h ỉ s ố PBM
73
- Vê biểu đồ biến thiên chỉ số DN theo công thức (3.60). Sử dụng hàm function res = DN all (X, M_max) được vẽ trong Matlab. Biểu đồ hình 3.16 cho thấy chỉ số DN đạt giá trị nhỏ xấp xỉ bằng 0 là phân chia tốt (tương ứng với số nhóm trong khoảng từ 4 - 15). 1*---------------- I-----------------1----------------- 1-----------------1----------------- I-----------------T-----------------
0.9 -
0.8
07 -
0 6 -
Qz 0.5 -
0.4
03 -
0.2 -
0.1 -
■ T . . . . . . . . . . . . .
2 4 6 8 10 12 14 16
Number of centers
Hình 3.16. B iều đ ồ b iến th iên th e o c h ì s ổ DN
- Vẽ biếu đồ biến thiên của chỉ số tồng hợp a theo công thức (3.61). Sử dụng hàm function res = Alpha_all (Vh all, DA all, DW all, tA all, PBM all. DN all.M max)
Tham số đầu vào:
X - ma trận hai chiều chứa tập các vectơ đầu vào cần phân nhóm. Vh_all - vectơ chứa các giá trị của chỉ số Vh ứng với số trọng tâm biến thiên từ 2 đến M_max.
M_max - số trọng tâm lớn nhất cần xác định chỉ số (hàm sẽ tính cho số trọng tâm trong khoảng từ 2 đến M_max).
Kết quả đầu ra:
res - vectơ chứa các giá trị của chi số a ứng với số trọng tâm biến thiên từ 2 đến M max.
74
Qua biểu đồ hỉnh 2.17 cho thấy a = 1,75 là giá trị nhỏ nhất thì số nhóm tương ứng bằng 9. Căn cứ vào chi số a chọn số nhóm bằng 9 (tương ứng với 9 luật).
Hình 3.17. B iểu đ ồ b iế n th iê n th e o ch i s ố tổ n g h ợ p a
- Xác định trọng tâm cùa các vùng số liệu theo phương pháp G-K. dụng hàm function [C, U] = gk_one_c(X,M)
Tham số đầu vào:
X - ma trận hai chiều chứa tập các vectơ đầu vào cần phân nhóm. M - số trọng tâm cần tìm.
Ket quả đầu ra:
u - ma trận hệ sổ phụ thuộc cùa vectơ đầu vào Xj vào trọng tâm c .
Phát triển trong Matlab ta có vùng số liệu phân bố như hình 3.18. Nếu phân chia tập số liệu mẫu theo 9 nhóm tương ứng với 9 quy tắc sẽ bao quát hết tập số liệu, đạt được độ chính xác cao trong nhận dạng.
75
H ình 3.18. P h â n c h ia tậ p s ố liệu m ẵu th e o 9 n h ó m
T h ử nghiệm 2: Xét tập số liệu với phân bố như trên hình 3.19.
H ình 3.19. T ập s ố liệu m ẫ u v ớ i 7 n h ó m s ố liệu
Với bộ số liệu trên, thuật toán tính toán các chì số thống kê đã được áp dụng cho số trọng tâm biến thiên từ 2 đến 15. Kết quả thu được trình bày trên hình 3.20.
76
1 » ------- -------------T----------------------- 1------------------------!-----------------------1---------------------—r----------------------r
0 9 -
0.8 j
Hinh 3.20 (a)
Hình 3.20 (b)
77
Hinh 3.20 (c)
Number of centers
Hình 3.20 (d)
78