• Các nhóm giải thuật học máy: Học có giám sát, học không giám sát, học nửa giám sát, học tăng cường,… 1.1 Cấu trúc và mô hình mạng nơron 1.1.1 Mô hình một nơron sinh học Phần tử xử lý
Trang 1MỤC LỤC
MỤC LỤC 1
CÁC HÌNH VẼ, BẢNG BIỂU TRONG LUẬN VĂN 2
THUẬT NGỮ TIẾNG ANH 2
Lời cảm ơn 3
Chương 1 Giới thiệu về mạng nơron nhân tạo 5
1.1 Cấu trúc và mô hình mạng nơron 7
1.1.1 Mô hình một nơron sinh học 7
1.1.2 Cấu trúc và mô hình của một nơron nhân tạo 8
1.2 Cấu tạo và phương thức làm việc của mạng nơron 11
1.2.1 Mạng nơron một lớp 13
1.2.2 Mạng nơron truyền thẳng nhiều lớp 14
1.2.3 Mạng nơron phản hồi 15
1.2.4 Mạng nơron hồi quy 15
1.2.5 Mạng Hopfield 15
1.2.6 Mạng BAM 17
1.3 Các luật học 18
1.3.1 Học có giám sát 19
1.3.2 Học củng cố 20
1.3.3 Học không có giám sát 20
1.4 Thuật toán lan truyền ngược 22
1.5 Kết luận 28
Chương 2 Tìm hiểu mạng nơron Kohonen 30
2.1 Giới thiệu 30
2.2.1 Mạng nơron Kohonen nhận dạng 33
2.2.2 Cấu trúc của mạng nơron Kohonen 33
2.2.3 Chuẩn hóa dữ liệu đầu vào 34
2.2.4 Tính toán dữ liệu đầu ra của nơron 35
2.2.5 Ánh xạ lưỡng cực 35
2.2.6 Chọn nơron thắng 36
2.2.7 Quá trình học của mạng Kohonen 37
2.2.8 Tỉ lệ (tốc độ) học 38
2.2.9 Điều chỉnh các trọng số (cập nhật trọng số) 39
2.2.10 Tính toán sai số 39
2.3 Thực thi mạng nơron Kohonen 40
2.3.1 Thực thi mạng nơron truyền thẳng 40
2.3.2 Thực thi lan truyền ngược 45
2.3.3 Các tập huấn luyện 46
2.3.4 Báo cáo tiến trình 47
2.3.4.1 Lớp mạng cơ sở 47
2.3.4.2 Lớp KohonenNetwork 49
2.4 Kết luận 57
Chương 3 Nhận dạng ký tự quang sử dụng mạng nơron Kohonen 59
3.1 Giới thiệu chung 59
3.2 Huấn luyện mạng 60
Trang 23.3 Thử nghiệm sử dụng mạng nơron Kohonen để nhận dạng ký tự quang 61
3.4 Trường hợp ngoại lệ 64
3.5 Kết luận 64
KẾT LUẬN 66
Tài tham khảo 67
CÁC HÌNH VẼ, BẢNG BIỂU TRONG LUẬN VĂN Hình 1.1 Một nơron sinh học 8
Hình 1.2 Sự liên kết các nơron 8
Hình 1.3 Mô hình một nơron nhân tạo 9
Hình 1.4 Đồ thị các dạng hàm truyền 11
Hình 1.5 Mạng nơron ba lớp 12
Hình 1.6 Một số dạng mạng nơron 14
Hình 1.7 Cấu trúc của mạng Hopfield 16
Hình 1.8 Cấu trúc của BAM 17
Hình 1.9: Cấu trúc huấn luyện mạng nơron 18
Hình 1.10: Học có giám sát 20
Hình 1.11: Học không có giám sát 20
Hình 1.12: Sơ đồ cấu trúc chung của quá trình học 21
Hình 1.14: Mạng 3 lớp lan truyền ngược 23
Hình 2.1: Một dạng mạng nơron Kohonen 34
Hình 2.2: Sơ đồ khối biểu diễn huấn luyện mạng nơron Kohonen 38
Hình 3.1:Mô hình chung trong nhận dạng chữ viết 60
Hình 3.2: Sơ đồ huấn luyện mạng 60
Hình 3.4: Biểu diễn ký tự e theo ma trận 5x7 pixcel 62
Hình 3.5: Biểu diễn ký tự e theo ma trận 5x7 bởi các giá trị 62
Hình3.6: Biểu diễn ký tự e ở vector đầu vào 62
Hình 3.7 Vẽ và gán ký tự 63
Hình 3.8 Kết quả mạng nơron Kohonen nhận dạng ký tự e và ký tự c 63
Hình 3.9 Đưa chữ ký vào mạng và gán tên 63
Hình 3.10 Kết quả mạng nơron Kohonen nhận dạng chữ ký 64
THUẬT NGỮ TIẾNG ANH
Trang 3ANN Mạng nơron cần huấn luyện
BAM Mạng BAM (Bidirectional Associative Memory)
SOM Mạng nơron tự tổ chức (Self Organizing Maps)
Trang 4Để tiếp cận khả năng học, người ta đưa ra mô hình mạng nơron gồm các nơron liênkết với nhau thành mạng phỏng theo cấu trúc mạng thần kinh của con người.
Mỗi nơron riêng lẻ có khả năng xử lý thông tin yếu, nhưng khi chúng đượcghép với nhau thành mạng, thì khả năng xử lý thông tin sẽ mạnh hơn rất nhiều Mỗicấu trúc mạng đều có một ưu điểm đặc thù, chúng cho ta một công cụ mạnh trongcác lĩnh vực kỹ thuật điều khiển và kỹ thuật thông tin Một mạng nơron nhân tạo làtập hợp một số lớn các phần tử xử lý (các nút hay các khối), thường được tổ chứcsong song và được cấu hình theo kiến trúc đệ quy Cách ứng sử trên mạng nơronnhân tạo giống như bộ não con người, nó chứng tỏ khả năng học, nhớ lại, và tổngquát hóa từ dữ liệu huấn luyện
Mạng nơron nhân tạo là công cụ tốt trong việc giải quyết các bài toán như:hợp và phân lớp đối tượng, xấp xỉ hàm, tối ưu hóa, định lượng vector, phân cụm dữliệu, Nó thay thế hiệu quả các công cụ tính toán truyền thống để giải quyết các bàitoán này
Nhận dạng là một lĩnh vực đóng vai trò quan trọng trong khoa học kỹ thuật.Trong hầu hết các vấn đề kỹ thuật ngày nay, ta đều phải xác định, nhận dạng đượccác mô hình và đối tượng liên quan, để từ đó tìm ra giải pháp Nhận dạng mô hình
là bài toán rất quan trong trong lý thuyết hệ thống Lý do đơn giản là vì không thểphân tích, tổng hợp hệ thống khi không có mô hình toán học mô tả hệ thống Trongquá trình xây dựng mô hình hệ thống trên phương diện lý thuyết, người ta thườngkhông khảo sát được mọi ảnh hưởng của môi trường đến tính động học của hệthống, cũng như những tác động qua lại bên trong hệ thống một cách chính xáctuyệt đối Rất nhiều yếu tố đã bị bỏ qua, hoặc chỉ được xem xét đến như là một tácđộng ngẫu nhiên Bởi vậy, nếu nói một cách chặt chẽ thì những hiểu biết lý thuyếtban đầu về hệ thống, mới chỉ có thể giúp ta khoanh được lớp các mô hình thích hợp
Để có thể có được một mô hình cụ thể có chất lượng phù hợp với bài cụ thể toán đặt
ra trong lớp các mô hình thích hợp đó, thì phải sử dụng phương pháp nhận dạng.Còn bài toán nhận dạng, phân tích phân cụm dữ liệu, là các bài toán rất hay gặp
Trang 5trong thực tế, khi chúng ta nhìn thấy một vật gì đó, thì câu hỏi thường trực của mỗingười là; vật đó có máy loại, và nó thuộc loại nào trong các loại có thể có.
Để giải quyết các bài toán nhận dạng, người ta đã đưa vào các cách tiếp cậnkhác nhau, mỗi phương pháp tiếp cận trong những bài toán cụ thể đều có những ưu,nhược điểm riêng Phương pháp ứng dụng mạng nơron trong nhận dạng là một cáchtiếp cận mới và hiện đại Nó có thể là công cụ rất mạnh để giải quyết các bài toántrong lĩnh vực này
Nội dung của đề tài đi vào tìm hiểu và xây dựng các phần tử nơron cơ bản,xem xét và nghiên cứu cấu trúc một mạng nơron, giới thiệu về mạng nơron nhiềulớp với thuật toán lan truyền ngược Trọng tâm của đề tài đi vào tìm hiểu về mạngnơron Kohonen (hay mạng nơron tự tổ chức – SOM)
Đề tài gồm ba chương
Chương 1, trình bày cấu trúc một phần tử nơron cơ bản, các cấu trúc mạngnơron nhân tạo thường gặp, thuật toán học, phân tích ưu nhược điểm của chúng, vàgiới thiệu về thuật toán lan truyền ngược
Chương 2, tìm hiểu mạng nơron Kohonen
Chương 3, nhận dạng ký tự quang sử dụng mạng nơron Kohonen
Cuối cùng em xin cảm ơn các thày cô giáo, đặc biệt là PGS.TSKH Bùi CôngCường đã tận tình chỉ dẫn cho em trong suốt thời gian làm đề tài Xin cảm ơn cácbạn cùng lớp đã tạo điều kiện cho tôi được học tập và nghiên cứu trong môi trườngtốt
Hà nội, tháng 12 năm 2009
Chương 1 Giới thiệu về mạng nơron nhân tạo
Học máy là một ngành khoa học nghiên cứu các thuật toán cho phép máy
tính có thể học được các khái niệm
Trang 6Phân loại: Có hai loại phương pháp học máy chính
• Phương pháp quy nạp: Máy học/phân biệt các khái niệm dựa trên dữ liệu đãthu thập được trước đó Phương pháp này cho phép tận dụng được nguồn dữliệu rất nhiều và sẵn có
• Phương pháp suy diễn: Máy học/phân biệt các khái niệm dựa vào các luật.Phương pháp này cho phép tận dụng được các kiến thức chuyên ngành để hỗtrợ máy tính
Hiện nay, các thuật toán đều cố gắng tận dụng được ưu điểm của hai phương phápnày
Các ngành khoa học liên quan:
• Lý thuyết thống kê: các kết quả trong xác suất thống kê là tiền đề cho rấtnhiều phương pháp học máy Đặc biệt, lý thuyết thống kê cho phép ướclượng sai số của các phương pháp học máy
• Các phương pháp tính: các thuật toán học máy thường sử dụng các tính toán
số thực/số nguyên trên dữ liệu rất lớn Trong đó, các bài toán như: tối ưucó/không ràng buộc, giải phương trình tuyến tính v.v… được sử dụng rất phổbiến
• Khoa học máy tính: là cơ sở để thiết kế các thuật toán, đồng thời đánh giáthời gian chạy, bộ nhớ của các thuật toán học máy
Ứng dụng: Học máy có ứng dụng rộng khắp trong các ngành khoa học/sản xuất,
đặc biệt những ngành cần phân tích khối lượng dữ liệu khổng lồ Một số ứng dụngthường thấy như:
• Xử lý ngôn ngữ tự nhiên: xử lý văn bản, giao tiếp người – máy, …
• Nhận dạng: nhận dạng tiếng nói, chữ viết tay, vân tay, thị giác máy(Computer Vision) …
Trang 7• Tìm kiếm
• Chẩn đoán trong y tế: phân tích ảnh X-quang, các hệ chuyên gia chẩn đoán
tự động
• Tin sinh học: phân loại chuỗi gene, quá trình hình thành gene/protein
• Vật lý: phân tích ảnh thiên văn, tác động giữa các hạt …
• Phát hiện gian lận tài chính (financial fraud): gian lận thẻ tỉn dụng
• Phân tích thị trường chứng khoán (stock market analysis)
• Chơi trò chơi: tự động chơi cờ, hành động của các nhân vật ảo
• Rôbốt: là tổng hợp của rất nhiều ngành khoa học, trong đó học máy tạo nên
hệ thần kinh/bộ não của người máy
• Các nhóm giải thuật học máy: Học có giám sát, học không giám sát, học
nửa giám sát, học tăng cường,…
1.1 Cấu trúc và mô hình mạng nơron
1.1.1 Mô hình một 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ốn 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
Kiến trúc cơ sở này của bộ não con người có một vài đặc tính chung Mộtcá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ếthợ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.1 chỉ ra mối quan hệ giữa bốn phần tử của một nơron sinh học
Trang 8Hình 1.1 Một nơron sinh học
Một nơron sinh học chỉ có một số chức năng cơ bản như vậy, ta nhận thấykhả năng xử lý thông tin của nó là rất yếu Để có được khả năng xử lý thông tinhoà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ớinhau Ta hình dung sơ đồ liên kết, và trao đổi thông tin giữa hai nơron như hình 1.2
Hình 1.2 Sự liên kết các nơron
1.1.2 Cấu trúc và mô hình của một nơron nhân tạo
Mô hình toán học của mạng 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 x1, x2, , xm, và một đầu ra yi như sau:
Trang 9Hình 1.3 Mô hình một nơron nhâ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 vector 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ệuvào thứ j cho nơron i thường được ký hiệu là wij Thông thường các trọng
số này được khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và được cậpnhật liên tục trong quá trình học mạng
- Bộ tổng (Hàm tổng): Thường dùng để tính tổng của tích các đầu vào vớitrọ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àmtruyề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ôngthường, phạm vi đầu ra của mỗi nơron được giới hạn trong đoạn [0,1]hoặc [-1,1] Các hàm truyền rất đa dạng, có thể là các hàm tuyến tínhhoặ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
Trang 10- Đầ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 đa 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ứcsau:
trong đó: x1, x2, …xm là các tín hiệu đầu vào, còn wi1, wi2,…,wim là các trọng sốkết nối của nơron thứ i, neti là hàm tổng, f là hàm truyền, θi là một ngưỡng, yi là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ínhiệ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áctí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ếtquả của hàm truyền)
01
x khi
x khi
01
)sgn(
x khi
x khi x
10
11
)sgn(
x khi
x khi
x
x khi x
Trang 11• Đồ thị các dạng hàm truyền được biểu diễn như sau:
Hình 1.4 Đồ thị các dạng hàm truyền
1.2 Cấu tạo và phương thức làm việc của mạng nơron
Dựa trên những phương pháp xây dựng nơron đã trình bày ở mục trên, ta có thểhình dung mạng nơron như là một hệ truyền đạt và xử lý tín hiệu Đặc tính truyềnđạt của nơron phần lớn là đặc tính truyền đạt tĩnh
Khi liên kết các đầu vào/ra của nhiều nơron với nhau, ta thu được một mạngnơron, việc ghép nối các nơron trong mạng với nhau có thể là theo một nguyên tắcbất kỳ Vì mạng nơron là một hệ truyền đạt và xử lý tín hiệu, nên có thể phân biệtcác loại nơron khác nhau, các nơron có đầu vào nhận thông tin từ môi trường bênngoài khác với các nơron có đầu vào được nối với các nơron khác trong mạng,chúng được phân biệt với nhau qua vector hàm trọng số ở đầu vào w
Nguyên lý cấu tạo của mạng nơron bao gồm nhiều lớp, mỗi lớp bao gồm nhiềunơron có cùng chức năng trong mạng Hình 1.5 là mô hình hoạt động của một mạngnơron 3 lớp với 8 phần tử nơron Mạng có ba đầu vào là x1, x2, x3 và hai đầu ra y1,
y2 Các tín hiệu đầu vào được đưa đến 3 nơron đầu vào, 3 nơron này làm thành lớpđầu vào của mạng Các nơron trong lớp này được gọi là nơron đầu vào Đầu ra của
Trang 12các nơron này được đưa đến đầu vào của 3 nơron tiếp theo, 3 nơron này không trựctiếp tiếp xúc với môi trường bên ngoài mà làm thành lớp ẩn, hay còn gọi là lớptrung gian Các nơron trong lớp này có tên là nơron nội hay nơron ẩn Đầu ra củacác nơron này được đưa đến 2 nơron đưa tín hiệu ra môi trường bên ngoài Cácnơron trong lớp đầu ra này được gọi là nơron đầu ra.
Hình 1.5 Mạng nơron ba lớp
Mạng nơron được xây dựng như trên là mạng gồm 3 lớp mắc nối tiếp nhau đi từđầu vào đến đầu ra Trong mạng không tồn tại bất kỳ một mạch hồi tiếp nào Mộtmạng nơron có cấu trúc như vậy gọi là mạng một hướng hay mạng truyền thẳngmột hướng (Feed forward network), và có cấu trúc mạng ghép nối hoàn toàn (vì bất
cứ một nơron nào trong mạng cũng được nối với một hoặc vài nơron khác) Mạngnơron bao gồm một hay nhiều lớp trung gian được gọi là mạng MultilayerPerceptrons) (MLP-Network)
Mạng nơron khi mới được hình thành thì chưa có tri thức, tri thức của mạng sẽđược hình thành dần dần sau một quá trình học Mạng nơron được học bằng cáchđưa vào những kích thích, và mạng hình thành những đáp ứng tương ứng, nhữngđáp ứng tương ứng phù hợp với từng loại kích thích sẽ được lưu trữ Giai đoạn nàyđược gọi là giai đoạn học của mạng Khi đã hình thành tri thức mạng, mạng có thểgiải quyết các vấn đề một cách đúng đắn Đó có thể là vấn đề ứng dụng rất khác
Trang 13nhau, được giải quyết chủ yếu dựa trên sự tổ chức hợp nhất giữa các thông tin đầuvào của mạng và các đáp ứng đầu ra
• Nếu nhiệm vụ của một mạng là hoàn chỉnh hoặc hiệu chỉnh các thông tin thuđược không đầy đủ hoặc bị tác động của nhiễu Mạng nơron kiểu này đượcứng dụng trong lĩnh vực hoàn thiện mẫu, trong đó có một ứng dụng cụ thể lànhận dạng chữ viết
• Nhiệm vụ tổng quát của một mạng nơron là lưu giữ động các thông tin Dạngthông tin lưu giữ này chính là quan hệ giữa các thông tin đầu vào và các đápứng đầu ra tương ứng, để khi có một kích thích bất kỳ tác động vào mạng,mạng có khả năng suy diễn và đưa ra một đáp ứng phù hợp Đây chính làchức năng nhận dạng theo mẫu của mạng nơron Để thực hiện chức năngnày, mạng nơron đóng vai trò như một bộ phận tổ chức các nhóm thông tinđầu vào, và tương ứng với mỗi nhóm là một đáp ứng đầu ra phù hợp Nhưvậy, một nhóm bao gồm một loại thông tin đầu vào và một đáp ứng đầu ra.Các nhóm có thể được hình thành trong quá trình học, và cũng có thể khônghình thành trong quá trình học
Hình 1.6 là một số liên kết đặc thù của mạng nơron Nơron được vẽ là các vòngtròn xem như một tế bào thần kinh, chúng có các mối liên hệ đến các nơron khácnhờ các trọng số liên kết Tập hợp các trọng số liên kết này sẽ lập thành các matrận trọng số tương ứng
1.2.1 Mạng nơron 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áctrọng số Mạng một lớp truyền thẳng như hình 1.6a Một lớp nơron là một nhóm cácnơ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ể đặtnhãn như một vector wj của nơron thứ j gồm m trọng số wji Các trọng số trong cùngmột cột thứ j (j=1,2, ,n) đồng thời cùng nhận một tín hiệu đầu vào xj
wj = [wj1, wj2, , wjm]
Trang 14Tại cùng một thời điểm, vector đầu vào x = [x1, x2, , xn] có thể là một nguồnbên ngoài là cảm biến hoặc thiết bị đo lường đưa tới mạng
1.2.2 Mạng nơron truyền thẳng nhiều lớp
Mạng nơron nhiều lớp (Hình 1.6.c) có các lớp được phân chia thành 3 loại sauđây:
Trang 15• 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ínhiệu xi được đưa đến tất cả các nơron của lớp đầu vào Thông thường, cácnơ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 chỉ đóng vaitrò phân phối các tín hiệu.
• 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ớibê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
1.2.3 Mạng nơron phản hồi
Mạng nơron phản hồi là mạng mà đầu ra của mỗi nơron được quay trở lại nối với đầu vào của các nơron cùng lớp được gọi là mạng Laeral như hình 1.6b
1.2.4 Mạng nơron hồi quy
Mạng nơron phản hồi có thể thực hiện đóng vòng được gọi là mạng nơronhồi quy như hình 1.6d Mạng nơron hồi quy có trọng số liên kết đối xứng như mạngHopfield, mạng luôn hội tụ về trạng thái ổn định (Hình 1.6.b) Mạng BAM thuộcnhóm mạng nơron hồi quy, gồm 2 lớp liên kết 2 chiều, không được gắn với tín hiệuvào/ra Nghiên cứu mạng nơron hồi quy mà có trọng số liên kết không đối xứng, thì
sẽ gặp phải vấn đề phức tạp nhiều hơn so với mạng truyền thẳng và mạng hồi quy
Trang 16Hình 1.7 Cấu trúc của mạng Hopfield
Như mạng Hopfield đã vẽ ở trên, ta thấy nút có một đầu vào bên ngoài xj vàmột giá trị ngưỡng θj(j = 1,2, n) Một điều quan trọng cần nói ở đây là mỗi nút
không có đường phản hồi về chính nó Nút đầu ra thứ j được nối tới mỗi đầu vàocủa nút khác qua trọng số wij, với i≠j, (i = 1,2, ,n), hay nói cách khác wii = 0, (với
i = 1,2, ,n)
Một điều quan trọng nữa là trọng số của mạng Hopfield là đối xứng, tức là
wij = wji, (với i,j = 1,2, ,n) Khi đó, luật cập nhật cho mỗi nút mạng là như sau:
,sgn
1
) ( )
i
k j ij
k
i = 1,2, ,n (1.11)Luật cập nhật trên được tính toán trong cách thức không đồng bộ Điều này
có nghĩa là, với một thời gian cho trước, chỉ có một nút mạng cập nhật được đầu racủa nó Sự cập nhật tiếp theo trên một nút sẽ sử dụng chính những đầu ra đã đượccập nhật Nói cách khác, dưới hình thức hoạt động không đồng bộ của mạng, mỗiđầu ra được cập nhật độc lập
Trang 17Có sự khác biệt giữa luật cập nhật đồng bộ và luật cập nhật không đồng bộ.Với luật cập nhật không đồng bộ thì sẽ chỉ có một trạng thái cân bằng của hệ (vớigiá trị đầu đã được xác định trước) Trong khi đó, với luật cập nhật đồng bộ thì cóthể làm mạng hội tụ ở mỗi điểm cố định hoặc một vòng giới hạn.
1.2.6 Mạng BAM
Mạng BAM bao gồm hai lớp và được xem như là trường hợp mở rộng của mạngHopfield Ở đây ta chỉ xét mạng rời rạc, vì nó đơn giản và dễ hiểu
Hình 1.8 Cấu trúc của BAM
Khi mạng nơron được tích cực với giá trị đầu vào của vector tại đầu vào của mộtlớp, mạng sẽ có hai mẫu trạng thái ổn định, với mỗi mẫu tại đầu ra của nó là mộtlớp Tính động học của mạng thể hiện dưới dạng tác động qua lại giữa hai lớp Cụthể hơn, giả sử một vector đầu vào x được cung cấp cho đầu vào của lớp nơron y.Đầu vào được xử lý và truyền tới đầu ra của lớp y như sau:
Trang 18Sau đó x’ nuôi trở lại đầu vào của lớp y và tạo ra hàm y’’ theo phương trình(1.12) Quá trình này cứ tiếp tục, bao gồm các bước như sau:
y(1) = a(wx(0)) (truyền thẳng lần thứ nhất)
x(2) = a(w(T)y(1)) (truyền ngược lần thứ nhất)
y(3) = a(wx(2)) (truyền thẳng lần thứ hai)
x(4) = a(w(T)y(3)) (truyền ngược lần thứ hai) (1.14)
y(k-1) = a(wx(k-2)) (truyền thẳng lần thứ k/2)
x(k) = a(w(T)y(k-1)) (truyền ngược lần thứ k/2)
Chú ý rằng trạng thái cập nhật trong phương trình (1.14) là đồng bộ theo phươngtrình (1.12) và (1.13) Trạng thái cập nhật cũng có thể không đồng bộ theo phươngtrình (1.12) và (1.13) với các nút i, j được chọn tự do Người ta đã chỉ ra rằng, hệthống ổn định cho cả hai chế độ đồng bộ và không đồng bộ Tuy nhiên, chế độ đồng
bộ sẽ làm cho hệ thống hội tụ nhanh hơn nhiều
1.3 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ướngcác đầu vào riêng biệt đến đích ở đầu ra Cấu trúc huấn luyện mạng được chỉ ra ởhình dưới Ở đây, hàm trọng số của mạng được điều chỉnh trên cơ sở so sánh đầu ravới đích mong muốn (taget), cho tới khi đầu ra của mạng phù hợp với đích Nhữngcặp vào/đích (input/taget) được dùng để giám sát cho sự huấn luyện mạng
Hình 1.9: Cấu trúc huấn luyện mạng nơron
Trang 19Để 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ônghoà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 được sửa đổi với đặc tính tốt hơntươ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ôngthoả 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
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ừ matrậ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àythì 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ọckhá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.3.1 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 chỉ đạo bên ngoài d (Hình 1.10).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ạngnơron, phản ứng đầu ra mong muốn d tương ứng của hệ thống được đưa ra Ở hình(1.10), 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(k)được đo trong máy phát tín hiệu lỗi Máy này sẽ tạo ra tín hiệu lỗi cho mạng để hiệu
Trang 20chỉnh các trọng số của mạng, và với các hiệu chỉnh này thì đầu ra thực sẽ tiến sátvới đầu ra mong muốn.
Hình 1.10: Học có giám sát
1.3.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àykhông được đầy đủ, mà chỉ có một vài bit đại diện có tính chất kiểm tra quá trình tốthay xấu Học củng cố cũng là một dạng của học có giám sát, bởi vì mạng vẫn nhậnmột số tín hiệu từ bên ngoài Nhưng tín hiệu phản hồi chỉ mang tính chất đánh giáhơn là mạng tính chất chỉ dẫn Nó cho biết mức độ tốt hay xấu của một đầu ra đặcbiệt Tín hiệu củng cố bên ngoài thường được xử lý bằng máy phát tín hiệu đánh giá
để tạo ra nhiều hơn nữa các thông tin tín hiệu đánh giá, sau đó dùng để điều chỉnhcác trọng số với mục đích đạt được tín hiệu đánh giá tốt hơn
1.3.3 Học không có giám sát
Hình 1.11: Học không có giám sát
Trong phần học không có giám sát, sẽ không có thầy hướng dẫn, tức làkhông có tín hiệu d cung cấp tới mạch phản hồi Điều này cho thấy, ta sẽ không biết
Trang 21đầu ra đạt giá trị gì Với loại này, thì các nơron tự xoay xở với các dữ liệu mẫu mà
nó có được, chứ không có “thầy” gợi ý cần luyện theo hướng nào Mạng phải tựkhám phá mẫu, đặc tính, sự tương quan hay loại đầu vào Trong khi khám phánhững đặc tính này, tham số của mạng sẽ bị thay đổi Quá trình này được gọi là tự
tổ chức Một ví dụ điển hình là quá trình phân loại đối tượng không có thầy, nhữnglớp thích hợp được hình thành bằng cách khám phá sự tương tự và không tương tựtrong số các đối tượng
Hình (1.12) mô tả cấu trúc chung của quá trình học của ba phương pháp học
đã nêu ở trên Trong tín hiệu vào xj (j = 1,2, ,m), có thể được lấy từ đầu ra của cácnơron khác hoặc có thể được lấy ra từ bên ngoài Trọng số của nơron thứ i đượcthay đổi tùy theo tín hiệu ở đầu vào mà nó thu nhận giá trị đầu ra của nó
Dạng tổng quát của luật học trọng số của mạng nơron cho biết số gia củavector wi là ∆w i tỉ lệ với tín hiệu học r và tín hiệu đầu vào x(t).
Trang 22Từ hình (1.12) ta thấy, vector trọng số wi = [wi1, wi2, , wim]T có số gia tỷ lệvới tín hiệu vào x và tín hiệu học r Vector trọng số ở thời điểm (t+1) được tính nhưsau:
wi(t+1) = wi(t) + ηfr(wi(t),x(t),d(t)).x(t) (1.17)
Phương trình liên quan đến sự biến đổi trọng số trong mạng nơron rời rạc, và tươngứng với sự thay đổi trọng số trong mạng nơron liên tục theo biểu thức sau:
)( r x t dt
Mạng nơron nhân tạo có các tính chất sau:
1.4 Thuật toán lan truyền ngược
Thuật toán lan truyền ngược được ứng dụng để giải các bài toán điều khiển các
hệ phi tuyến phức tạp và bất ổn định Lan truyền ngược là một phương pháp chophép xác định tập trọng số tốt nhất của mạng để giải một bài toán đã cho Việc ápdụng phương pháp lan truyền ngược là một quá trình lặp đi lặp lại nhiều lần hai tiếntrình chính: lan truyền tiến để thực hiện ánh xạ và lan truyền ngược sai số để cậpnhật các trọng số Các trọng số của mạng là các hệ số của mô hình Phương phápgiảm gradient được dùng để cập nhật những hệ số này sao cho giảm thiểu được sai
số của mô hình
Xét lớp mạng 3 lớp như hình (1.14)
Trang 23Hình 1.14: Mạng 3 lớp lan truyền ngượ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 đượcnghiê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ềnngượ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 vector trọng số trongmạng, đầu ra của mạng được lan truyền ngược trở lại lớp đầu vào cho đúng cácmẫ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(k)), thuật toán lan truyền ngược thực hiện các bước nhưsau:
Đầu tiên, mẫu x(k) được lan truyền từ lớp đầu vào qua các lớp ẩn đi đến lớp đầu
ra có kết quả là y(k) Sau đó, sai số giữa y(k) và d(k) đượ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 lantruyền ngược Kết 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, l phần tử nơron ở lớp ẩn, và nphầ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
Trang 24vào/ra ký hiệu (x,d) để cho đơn giản ta bỏ chỉ số k 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:
j m
∑
Đầu vào phần tử thứ i của lớp đầu ra sẽ là:
)(
1 1
.()(
)(
1 1
2
2
1)(2
1)(
n i
i i
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 ∆w iq, và nó được tính theo công thức sau:
iq iq
w
E w
i i
i i
i i
w
net net
net net
y y
Trong đó, δoi 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:
Trang 25[ i i][ '( i)]
i
i i i
net
y y
E net
net
net a
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ươngphá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 đầuvào với phần tử thứ q của lớp ẩn Khi đó:
q q
qj
q q
qj qj
v
net net
z z
E v
net net
E v
E
Từ công thức (1.23), thì mỗi sai số [di-yi], với i=1,2, ,n là một hàm của zq
Đánh giá thay đổi luật ta có:
n i
iq i i
iq oi
q q
q q
q
net
z z
E net
Trong đó, netq là đầu vào phần tử thứ q của lớp ẩn
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ủamột phần tử trong lớp đầu ra, như đã được chỉ ra trong công thức (1.30) và (1.26)
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ậthọc delta tổng quát Chúng ta xem xét công thức (1.30), 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ố δoi của các
Trang 26phần tử ở lớp ra thứ i (yi) cung ứng Các hệ số là các trọng số được sử dụng cho lantruyền thẳng, nhưng ở đây chúng truyền các tín hiệu sai số (δoi) ngược trở lại, đó
chính là các đường nét đứt trong hình (1.13) Điều này đã chứng tỏ được đặc điểmquan 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ínhtoá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ủakế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 hơn 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:
j input i output j
(1.26) 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ĩabởi công thức (1.30) 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.26) và (1.30) ta có hàm y được xácđịnh như sau:
11
1)
1)()(
net
net a net
1
δ
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 qneti và qyilầ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, lnơron ở lớp ẩn, và n nơron đầu ra Với qwij là trọng số nối từ q-1wj đến qyi
Trang 27Đầu vào: các cặp huấn luyện {x(k), d(k) | k=1,2, ,p}, ở đó giá trị đầu vào củaphần tử cuối cùng bằng -1, tức là ( ) 1
1 =−
+
k m
Bước 0 (Đặt giá trị ban đầu)
- Lựa chọn bước tính (Hằng số học) 0<η<1 và Emax (sai số lớn nhất chophé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à qwij có giá trị nhỏ và ngẫu nhiên
- Cho sai số E = 0 và k = 1
Bước 1 (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 = 1yi = xi(k) cho tất cả các i = 1,2,3,…,m (1.34)
Bước 2 (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 Qyi được thực hiện
).(
q i
q i
Bước 3 (Đo lường sai số đầu ra)
Tính toán giá trị sai lệch và tín hiệu sai lệch i
Qδ cho lớp đầu ra như sau:
E y d
E n Q i i
1
)'(
)
( ( )
i
Q i Q k i i
Trong đó: i
Qδ là tín hiệu sai lệch của nơron thứ i cho lớp ra Q; là
đạo hàm của hàm truyền ặ) theo tổng trọng số của phần tử i của lớp đầu ra
là
)()'(
i Q i
Q
net d
da net
Trang 28
Bước 4 (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− 1δicho các lớp xử lý:
j
q i
q ij
ij q new ij
j j
q ji
q i
q i
q− 1δ =a'( − 1net )∑ w δ
; với q=Q,Q-1, ,2 (1.39) Trong đó:
- là 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ậtmớ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
- là giá 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
- là 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
- là tín hiệu ra của phần tử j của lớp (q-1)
Bước 5 (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 quayvòng hết (tức là k<p) tăng k=k+1, và nhảy tới bước 1, ngược lại (tức k=p) thìchuyển sang bước 6
Bước 6 (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:
- Nếu tổng sai số nhỏ hơn 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, thì lại gán E=0, k=1 và bắt đầu một quá trình huấn luyện mớibằng cách nhảy tới bước 1
1.5 Kết luận
Trong chương này, chúng ta tìm hiểu một mạng nơron và thuật toán lantruyền ngược Quá trình học của mạng truyền thẳng chỉ ra một phương thức để
Trang 29mạng nơron nhận dạng một mẫu, nó giống như quá trình học của lan truyền ngược,
đó là mô tả một quá trình mạng nơron sẽ được huấn luyện
Một mạng nơron truyền thẳng là một mạng mà ở đó các nơron chỉ được kếtnối tới một lớp tiếp theo Không có kết nối giữa các nơron với các lớp trước hoặcvới chính nơron đó Thêm vào đó, các nơron sẽ không kết nối tới các nơron quá xa
ở lớp tiếp theo Một mẫu được xử lý bởi sự truyền thẳng, độ lệch và các trọng số kếtnối sẽ được áp dụng
Các mạng nơron được huấn luyện bằng cách sử dụng thuật toán lan truyềnngược Thuật toán lan truyền ngược là một dạng huấn luyện có giám sát Mạngnơron được đưa vào dữ liệu huấn luyện cho cho ra kết quả, các kết quả này được sosánh với các kết quả được mong đợi Sự khác nhau giữa các kết quả thực tế và cáckết quả mong đợi sẽ có một mức sai số nào đó Để giảm thiểu sai số này, người tatiến hành sử dụng thuật toán lan truyền ngược để điều chỉnh các trọng số và độ lệchcủa mạng Đây là cách mà sai số được giảm đáng kể Trong chương tiếp theo,chúng ta sẽ tìm hiều về mạng nơron Kohonen Sự khác nhau quan trọng nhất giữamạng nơron Kohonen và mạng nơron lan truyền ngược là phương thức huấn luyện.Phương thức lan truyền ngược sử dụng phương thức huấn luyện có giám sát Cònmạng nơron Kohonen sử dụng phương thức huấn luyện không giám sát
Trang 30Chương 2 Tìm hiểu mạng nơron Kohonen2.1 Giới thiệu
Trong các kiểu khác nhau của mạng nơron, mạng nơron Kohonen giống vớimạng nơron sinh học hơn cả về cấu tạo lẫn cơ chế học Mạng nơron nhân tạo nàylần đầu tiên được giới thiệu bởi Kohonen vào năm 1982, nó được biết đến như làánh xạ đặc trưng tự tổ chức (SOM) Ánh xạ tự tổ chức của Kohonen còn được biếtđến là một trong những mô hình khá đơn giản của mạng nơron, và người ta thườnggọi đó là mạng nơron Kohonen
Mạng nơron Kohonen (hay nơron tự tổ chức) mô hình hóa cách hoạt động bộnão của con người, mặc dù nó khá đơn giản Chúng ta có thể nhận được một số ýtưởng cách bộ não lưu trữ hình ảnh và cách nó nhận dạng các hình ảnh
Cách xử lý thông tin các mạng nơron khác thường chỉ quan tâm đến giá trị
và dấu hiệu của thông tin đầu vào, chưa quan tâm khai thác các mối liên hệ có tínhchất cấu trúc trong lân cận của các vùng dữ liệu mẫu, hay toàn thể không gian.Nhưng trong mạng nơron Kohonen đã quan tâm đến các yếu tố này
Tự tổ chức trong mạng nơron là một trong những chủ đề cuốn hút trongmạng nơron Một mạng nơron như vậy có thể được luyện để tìm ra các quy luật vàcác tương quan, các giá trị nhập vào và dự đoán các kết quả tiếp theo Các nơroncủa mạng thông qua quá trình luyện cạnh tranh để nhận ra một nhóm các đối tượngđầu vào tương đương nhau Mục đích chính của việc luyện trong mạng nơronKohonen là nhận dạng một nhóm các vector đầu vào cùng loại
Trong phần tiếp theo, chúng ta có thể chỉ ra hình ảnh được lưu trữ và nhậndạng với mạng nơron Kohonen Việc thi hành mạng nơron Kohonen có thể đượcthay thế bởi một thuật toán tương ứng mà dễ dàng thi hành, và luôn luôn được sửdụng trong các ứng dụng của mạng nơron Kohonen Chúng ta gọi thuật toán đó làthuật toán mạng nơron tự tổ chức (Kohonen, 1988) hay ánh xạ tự tổ chức SOM Ýtưởng đáng chú ý của thuật toán này là ánh xạ các đặc trưng topo tự tổ chức nhằmbảo toàn trật tự sắp xếp các mẫu trong không gian biểu diễn nhiều chiều sang một
Trang 31không gian mới với các mảng nơron có số chiều nhỏ hơn, thường là hai chiều Đây
là một phép chiếu phi tuyến đem lại một “ánh xạ đặc trưng” hai chiều, nó có thểđược sử dụng trong việc phát hiện và phân tích những đặc trưng trong không gianđầu vào Ta hiểu điều này như là bảo toàn cấu trúc các đặc trưng Trong mạngnơron Kohonen, các vector tín hiệu đầu vào gần nhau sẽ được ánh xạ sang cácnơron lân cận trong mạng
Kỹ thuật SOM đã được áp dụng thành công trong một số lĩnh vực như nhậndạng, phân cụm dữ liệu, dự đoán chuỗi và khai phá dữ liệu, Mẫu được nhận dạng
có thể là ảnh, âm thanh hoặc văn bản, Có thể xem SOM là một lớp điển hình,nhưng rất đơn giản của các mạng nơron Kohonen
2.2 Mạng nơron Kohonen
Mạng luyện không không có thầy hướng dẫn, là một kiểu luyện mà ở đó cácnơron tự xoay xở với các dữ liệu mẫu mà nó có được chứ không có “Ông thầy” gợi
ý cần luyện theo hướng nào
Tự mình khám phá những quan hệ đang được quan tâm, ví dụ về các dạng( patterns), các đặc trưng (features ) từ dữ liệu vào (input data) sau đó chuyểnthành cái ra (outputs) Như vậy thực chất : đó là các mạng tự tổ chức (hay mạngnơron Kohonen)
Định nghĩa: Mạng noron Kohonen là mạng có khả năng sử dụng những kinh
nghiệm của quá khứ để thích ứng với những biến đổi của môi trường (không dựbáo trước) Loại mạng này thuộc nhóm hệ học, thích nghi không cần có tín hiệu chỉđạo từ bên ngoài
Trong phần này chúng ta sẽ trình bày một số quy trình luyện tham số củaluyện không có thày như sau:
Mô hình
Mạng có n nơron PE i , i=1,2, , n
Cái ra của chúng là yi , i=1, ,n
Có m tín hiệu vào {x1, x2, , xm},wij là trọng số liên kết từ xj với PEi
Trang 32Gọi s(x), s(y) là hàm chuyển tín hiệu, giả thiết đó là hàm đơn điệu khônggiảm liên tục như dạng hàm Sigmoid.
Phương thức biến đổi trọng số được gọi là luật luyện Hebb, quy tắc luyệnđơn giản theo dạng Hebb cho bởi phương trình :
)()
()
(
'
j j i i ij
ij
dt
t dw
Bây giờ ta xét một số trường hợp riêng:
- Quy tắc luyện cạnh tranh (Competitive Learning Rule – Grossberg 1969,Rumelhart 1986)
))()(
(
'
ij j j i i
- Nếu dùng s xj( )j = xj ta thu được :
Quy tắc luyện cạnh tranh tuyến tính (the Linear competitive learning rule)
))(
(
'
ij j i i
Tại mỗi vòng lặp k, quy tắc luyện gồm 2 bước :
1/ Bước tìm cái khớp nhất (matching) – tìm nơron tạm gọi là nơron thắng (theonghĩa gần mẫu nhất), sử dụng công thức sau:
x
w x y y
y =max( 1 m)= . , (2.44) (Phương pháp tính tích vô hướng).
2/ Tính toán sai số và điều chỉnh trọng số
Ký hiệu ej là sai số ở cột thứ j, wij là biểu diễn cho cột thứ j của ma trận trọng số w,sai số này được tính theo công thức sau:
ej = ||x-wij|| (2.45)
Trang 33Nếu tổng sai số chưa nằm dưới mức cho phép, ta điều chỉnh trọng số theo côngthức:
)(
ij i
k ij
Mạng Kohonen được huấn luyện trong một chế độ không có giám sát Sử dụngmạng Kohonen này, dữ liệu có thể được phân loại thành từng cụm Chúng ta sẽ xemxét mạng Kohonen qua quá trình huấn luyện
2.2.1 Mạng nơron Kohonen nhận dạng
Ta sẽ xem việc huấn luyện mạng nơron Kohonen như thế nào để nhận dạngđúng các mẫu mà ta mong muốn Chúng ta bắt đầu bằng cách xem xét cấu trúc củamạng nơron Kohonen
2.2.2 Cấu trúc của mạng nơron Kohonen
Mạng nơron Kohonen chỉ bao gồm một lớp dữ liệu đầu vào và một lớp dữliệu đầu ra của các nơron và nó không chứa lớp ẩn
Lớp dữ liệu đầu vào đối với mạng nơron Kohonen là các nơron đầu vào Cácnơron đầu vào này tạo thành mẫu dữ liệu đầu vào của mạng Đối với mạng nơronKohonen, ta nên chọn dữ liệu đầu vào chuẩn hóa trong khoảng giữa -1 và 1 Khithực thi mẫu dữ liệu đầu vào, mạng sẽ tạo ra các nơron đầu ra
Lớp đầu ra của mạng nơron Kohonen rất khác với lớp đầu ra của mạng nơrontruyền thẳng Đối với mạng truyền thẳng, nếu chúng ta có một mạng nơron với 5nơron đầu ra, chúng sẽ có thể cho kết quả bao gồm 5 giá trị Còn trong mạng nơronKohonen chỉ có một nơron đầu ra cho ra một giá trị Giá trị duy nhất này có thể làđúng hoặc sai Dữ liệu đầu ra từ mạng nơron Kohonen thường là các chỉ số củanơron (Ví dụ nơron số 5,…) Cấu trúc đặc trưng của mạng nơron Kohonen được chỉ
ra trong hình 2.1