Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề Mạng nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của học sinh, sinh viên trường cao đẳng nghề
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
LÊ SƠN THẢO
MẠNG NƠ RON ỨNG DỤNG CHO PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ HỌC TẬP CỦA HỌC SINH,
SINH VIÊN TRƯỜNG CAO ĐẲNG NGHỀ
LUẬN VĂN THẠC SĨ MÁY TÍNH
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
LÊ SƠN THẢO
MẠNG NƠ RON ỨNG DỤNG CHO PHÂN TÍCH, ĐÁNH GIÁ KẾT QUẢ HỌC TẬP CỦA HỌC SINH,
SINH VIÊN TRƯỜNG CAO ĐẲNG NGHỀ
Chuyên ngành : KHOA HỌC MÁY TÍNH
Trang 3LỜI CẢM ƠN
Đầu tiên tôi xin gửi lời cảm ơn chân thành đến thầy PGS.TS Lê Bá
Dũng - Viện Công nghệ thông tin - Viện khoa học và công nghệ Việt Nam đã
tận tình hướng dẫn, chỉ bảo cho tôi trong suốt quá trình tôi làm luận văn
Tôi cũng xin gửi lời cảm ơn đến các thầy cô trường Đại học sư phạm Hà Nội
2, các thầy cô Viện Công nghệ thông tin - Viện khoa học và công nghệ Việt
Nam đã truyền đạt những kiến thức và giúp đỡ tôi trong suốt quá trình học
của mình
Tôi cũng xin gửi lời cảm ơn tới các đồng nghiệp, gia đình và bạn bè những
người đã động viên tạo mọi điều kiện giúp đỡ tôi trong suốt hai năm học
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan toàn bộ nội dung trong luận văn này do tôi tự nghiên cứu, đọc, dịch tài liệu, tổng hợp và thực hiện, đây là công trình nghiên cứu của tôi
dưới sự hướng dẫn khoa học của thầy PGS.TS Lê Bá Dũng Các số liệu, kết
quả trong luận văn là trung thực, rõ ràng Trong luận văn tôi có sử dụng một
số tài liệu tham khảo như đã trình bày trong phần tài liệu tham khảo Tôi xin chịu trách nhiệm với những nội dung được viết trong luận văn này
Hà Nội, ngày 16 tháng 12 năm 2014
Người viết luận văn
Lê Sơn Thảo
Trang 5
MỤC LỤC
LỜI CẢM ƠN 1
LỜI CAM ĐOAN 2
MỞ ĐẦU 7
1 Lý do chọn đề tài 7
Chương 1: GIỚI THIỆU VỀ MẠNG NƠRON NHÂN TẠO 10
1.1 Cấu trúc và mô hình mạng nơron 11
1.1.1 Mô hình một nơron sinh học 11
1.1.2 Cấu trúc và mô hình của một nơron nhân tạo 12
1.2 Cấu tạo và phương thức làm việc của mạng nơron 15
1.2.1 Mạng nơron một lớp 17
1.2.2 Mạng nơron truyền thẳng nhiều lớp 18
1.2.3 Mạng nơron phản hồi 19
1.2.4 Mạng nơron hồi quy 19
1.2.5 Mạng Hopfield 19
1.2.6 Mạng BAM 21
1.3 Các luật học 22
1.3.1 Học có giám sát 23
1.3.2 Học củng cố 24
1.3.3 Học không có giám sát 24
1.4 Thuật toán lan truyền ngược 26
1.5 Kết luận 33
Chương 2: MẠNG NƠRON KOHONEN VỚI BÀI TOÁN PHÂN TÍCH, ĐÁNH GIÁ 34
2.1 Giới thiệu về mạng nơron Kohonen 34
2.2 Các phương pháp phân tích, đánh giá 35
2.2.1 Phân cụm và các thành phần trong phân cụm dữ liệu 35
2.2.2 Phương pháp phân cụm phân cấp 36
2.2.3 Phương pháp phân cụm phân hoạch 36
2.2.4 Phương pháp phân cụm dựa trên mật độ 36
2.2.5 Phân cụm dữ liệu dựa trên lưới 37
2.2.6 Phân cụm dữ liệu dựa trên sự ràng buộc 37
2.3 Ứng dụng mạng nơron Kohonen trong việc phân tích, đánh giá 38
Trang 62.3.1 Cấu trúc mô hình mạng nơron Kohonen 38
2.3.2 Thuật toán của mạng nơron Kohonen 46
2.3.2.2 Thuật toán phân cụm phi tuyến tính không giám sát 53
2.3.3 Mạng nơron Kohonen với bài toán phân tích, đánh giá 56
2.4 Kết luận chương 2 60
CHƯƠNG 3: ỨNG DỤNG MÔ HÌNH MẠNG KOHONEN CHO BÀI TOÁN KHẢO SÁT, ĐÁNH GIÁ TÌNH HÌNH HỌC TẬP CỦA HỌC SINH, SINH VIÊN TRONG TRƯỜNG CAO ĐẲNG NGHỀ 61
3.1 Phát biểu bài toán 61
3.2 Một số ứng dụng của mạng nơron Kohonen trong việc phân tích, đánh giá kết quả học tập của Học sinh, Sinh viên 61
3.2.1 Thu thập dữ liệu 61
3.2.2 Phân tích dữ liệu 69
3.3 Thử nghiệm sử dụng mô hình mạng Kohonen để khảo sát, đánh giá, thống kê tình hình học tập của HSSV trường Cao đẳng nghề Cơ khí nông nghiệp 76
3.3.1 Các chức năng của chương trình 76
3.3.2 Giao diện chương trình 76
3.3.3 Kết quả và phân tích kết quả sau khi huấn luyện mô hình mạng Kohonen 77
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 89
TÀI LIỆU THAM KHẢO 90
Trang 7DANH MỤC CÁC KÍ HIỆU, CHỮ CÁI VIẾT TẮT
SOM (Self Organizing Maps) Mạng nơron tự tổ chức
PE (Processing element) Phần tử xử lý
U-matrix (unified distance matrix) Ma trận thống nhất khoảng cách
EM (Expectation maximization) Thuật toán tối đa hóa
MST (Minimum spanning tree) Thuật toán tối thiểu cây mở rộng BMU (Best – Matching unit) Đơn vị phù hợp nhất
DBSCAN (Density Based Spatial
Clustering of Applications with Noise)
Phân cụm dữ liệu dựa trên không gian mật độ ứng dụng với nhiễu
Trang 8DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Một nơron sinh học 12
Hình 1.2 Sự liên kết các nơron 12
Hình 1.3 Mô hình một nơron nhân tạo 13
Hình 1.4 Đồ thị các dạng hàm truyền 15
Hình 1.5 Mạng nơron ba lớp 16
Hình 1.6 Một số dạng mạng nơron 18
Hình 1.7 Cấu trúc của mạng Hopfield 20
Hình 1.8 Cấu trúc của BAM 21
Hình 1.9 Cấu trúc huấn luyện mạng nơron 22
Hình 1.10 Học có giám sát 24
Hình 1.11 Học không có giám sát 24
Hình 1.12 Sơ đồ cấu trúc chung của quá trình học 25
Hình 1.13 Mạng 3 lớp lan truyền ngược 26
Hình 2.1 Cấu trúc của mạng SOM 38
Hình 2.2 Cập nhật BMU và lân cận của nó với mẫu đầu vào x 40
Hình 2.3 Hàm tỉ lệ học theo thời gian 41
Hình 2.4 Giá trị của hàm lân cận Gausian(a) và hàm bubble(b) 43
Hình 2.5 Bảo toàn cấu trúc liên kết các cụm 46
Hình 3.1 Kết quả phân cụm môn học, mô đun sử dụng phương pháp trực quan U-Matrix 78 Hình 3.2 Kết quả phân cụm sử dụng phương pháp trực quan các bản đồ thành phần 84
Hình 3.3 Kết quả phân cụm sinh viên theo môn học, mô đun sử dụng phương pháp trực quan U-Matrix 85
DANH MỤC CÁC BẢNG Bảng 3.1 Dữ liệu thống kê phân cụm môn học, mô đun 72
Bảng 3.2 Dữ liệu thống kê phân cụm học sinh theo điểm thi kết thúc môn học, mô đun 75
Bảng 3.3 Kết quả các cụm sau khi huấn luyện mạng Kohonen 79
Bảng 3.4 Kết quả phân cụm sinh viên sau khi huấn luyện mạng Kohonen 88
Trang 9MỞ ĐẦU
1 Lý do chọn đề tài
Ngày nay, cùng với sự phát triển của mô hình dữ liệu, chúng ta ngày càng có nhiều kho dữ liệu với lượng dữ liệu rất lớn Để khai thác có hiệu quả những dữ liệu khổng lồ này, đòi hỏi chúng ta (những người sử dụng) phải biết khai thác và chọn lọc dữ liệu có ích cho mình Đó cũng chính là lý do mà Data Mining (DM) ra đời và đã được áp dụng trong thực tế theo nhiều hướng quan trọng và một trong các hướng đó là phân cụm dữ liệu (Data Clustering)
Phân cụm dữ liệu là quá trình nhóm một tập các đối tượng tương tự nhau trong tập dữ liệu vào các cụm sao cho các đối tượng thuộc cùng một cụm là tương đồng còn các đối tượng thuộc các cụm khác nhau sẽ không tương đồng Phân cụm dữ liệu là một ví dụ của phương pháp học không có thầy
Hiện nay, có rất nhiều các phương pháp phân cụm dữ liệu đã và đang được phát triển và áp dụng trong các lĩnh vực khác nhau, bao gồm: nhận dạng, phân tích dữ liệu, nghiên cứu thị trường, xử lý ảnh,… Các phương pháp phân cụm đó như phương pháp phân cụ thống kê, phân cụm khái niệm, phân cụm
mờ, phân cụm sử dụng mạng Kohonen Trong số này, mạng Kohonen (hay còn gọi là Self-Organizing Maps viết tắt là: SOMs) là một giải thuật được phát triển bởi Giáo sư Teuvo Kohonen, nó có thể được áp dụng cho nhiều lớp bài toán khác nhau như dự báo thông tin thị trường, thời tiết, phụ tải điện… nó giúp giảm số chiều (kích thước) của dữ liệu, qua đó giúp chúng ta hiểu được
dữ liệu có kích thuớc lớn đó Một trong những khía cạnh thú vị nhất đó là: Kohonen là một dạng của thuật toán học để phân loại dữ liệu huấn luyện mà không cần bất cứ sự giám sát bên ngoài nào - học không giám sát và rất hiệu quả trong việc phân cụm và rút gọn kích thước dữ liệu
Trang 10Trong nhiều biện pháp để cải cách, nâng cao chất lượng giáo dục phải
kể đến vai trò của công nghệ thông tin Công nghệ thông tin đã được ứng dụng để hỗ trợ các công tác giảng dạy, kiểm tra đánh giá, quản lý dữ liệu học tập, thống kê, báo cáo,…
Việc phân tích, đánh giá, phân loại kết quả học tập của học sinh, sinh viên có ý nghĩa quan trọng trong công tác quản lý, giúp ta có thể thấy được toàn cảnh về các môn học trong chương trình, từ đó có sự đánh giá đúng đắn
về tính chất môn học và khả năng nhận thức của người học, từ đó có biện pháp tác động phù hợp để cải thiện chất lượng dạy và học Ngoài ra, việc phân cụm cũng có thể giúp thấy được khả năng học tập của mỗi Học sinh, Sinh viên với từng môn học, từ đó có biện pháp áp dụng phương pháp dạy học cá biệt hóa thích hợp, dựa trên kết quả phân cụm này cũng có thể giúp người học
có định hướng phù hợp cho quá trình học tập tiếp theo
Chính vì lý do đó tác giả chọn đề tài “Mạng Nơ ron ứng dụng cho phân tích, đánh giá kết quả học tập của Học sinh, Sinh viên trong trường Cao đẳng nghề”
2 Mục đích nghiên cứu
- Hiểu rõ các khái niệm, các thuật toán liên quan đến phân cụm
dữ liệu, hình thành luật từ các cụm đã được phân
- Dựa trên kiến thức đã nghiên cứu, thiết kế mạng nơron Kohonen ứng dụng để phân tích, đánh giá kết quả học tập của Học sinh, Sinh viên trong trường Cao đẳng nghề Cơ khí nông nghiệp, từ đó có những nhận xét và các
biện pháp tác động phù hợp để cải thiện chất lượng dạy và học
3 Nhiệm vụ nghiên cứu
- Nghiên cứu lý thuyết về mạng nơron Kohonen, các giải pháp kết hợp giữa mạng nơron Kohonen SOM với logic mờ, giải thuật di truyền để nâng cao hiệu quả và tốc độ hội tụ của mạng
Trang 11- Thiết kế mô hình mạng nơron Kohonen’s SOM phục vụ cho việc phân tích, đánh giá kết quả học tập của Học sinh, Sinh viên trong trường Cao đẳng nghề Từ đó đưa ra những nhận xét, biện pháp dựa trên những phân tích
từ việc phân cụm môn học, phân nhóm các Học sinh, Sinh viên theo kết quả học tập và khả năng học để từ đó có những định hướng và các biện pháp tác động phù hợp để cải thiện chất lượng dạy và học
4 Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu là lớp bài toán phân tích, đánh giá kết quả học tập của Học sinh, Sinh viên sử dụng mạng nơron nhân tạo truyền thẳng huấn luyện bằng thuật toán lan truyền ngược
- Phạm vi nghiên cứu là lý thuyết ứng dụng mạng Nơ ron nhân tạo cho bài toán phân tích, đánh giá kết quả học tập của Học sinh, Sinh viên trong trường Cao đẳng nghề
5 Giả thuyết khoa học
- Phát hiện những yêu cầu và thách thức trong thực tế đối với vấn đề phân tích, đánh giá được kết quả học tập của học sinh, sinh viên
- Cài đặt và thử nghiệm đánh giá kết quả học tập của Học sinh, Sinh viên sử dụng mạng nơron nhân tạo truyền thẳng huấn luyện bằng thuật toán lan truyền ngược
6 Phương pháp nghiên cứu
- Phương pháp nghiên cứu chính là tìm hiểu các tài liệu bài báo viết
về mạng SOM và sử dụng công cụ SOM Toolbox để huấn luyện mạng SOM phân cụm các trường đại học, cao đẳng của Việt Nam từ đó đưa ra những nhận xét, đánh giá, tư vấn cho học sinh đăng kí dự thi vào các trường
- Tìm hiểu và phát hiện các vấn đề trong thực tế, từ đó đưa ra so sánh,
đánh giá và các giải pháp khắc phục
Trang 12Chươ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
Phâ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áp nà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ất nhiều phương pháp học máy Đặc biệt, lý thuyết thống kê cho phép ước lượ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 ưu có/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ụng thườ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
Trang 13(Computer Vision) …
- 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ộ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.1 chỉ ra mối quan hệ giữa bốn phần tử của một nơron sinh học
Trang 14Hì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ấ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.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 15- 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ớ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 [-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 đa một đầu ra
Trang 16Về 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 i = f (net i -𝜃i ) và neti= ∑1𝑗−1𝑤𝑖𝑗𝑥𝑗
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í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)
Trang 17
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ạng nơ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ắc bấ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ệt cá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ên ngoà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ều nơ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ạng nơ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 cá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ực tiế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ớp trung gian Các nơron
Trang 18trong lớp này có tên là nơron nội hay nơron ẩn Đầu ra của cá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ác nơ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ột mạ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ẳng mộ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ạng nơron bao gồm một hay nhiều lớp trung gian được gọi là mạng Multilayer Perceptrons) (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 nhau, đượ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 đầu và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
Trang 19kiể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ạng thô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ăng nà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ông hì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òng trò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ác nhờ 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 ma trậ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ác trọ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á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 vector wj của nơron thứ j gồm m trọng số wji Các trọng số trong cùng mộ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]
Tại cùng một thời điểm, vector đầu vào x = [x1, x2, , 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
Trang 20(a) Mạng truyền thẳng một lớp (b) Mạng hồi tiếp một lớp
(c) Mạng truyền thẳng nhiều lớp
Hình 1.6 Một số dạng mạng nơron 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:
• 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 xi đượ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 chỉ đóng vai trò phân phối các tín hiệu
( d) M ạng nơron h ồi quy
Trang 21• 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
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ơron hồ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ạng Hopfield, mạng luôn hội tụ về trạng thái ổn định (Hình 1.6.b) Mạng BAM thuộc nhó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ệu và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 có trọng số liên kết đối xứng
1.2.5 Mạng Hopfield
Mạng Hopfield là mạng phản hồi một lớp, được chỉ ra trong hình 1.6.b Cấu trúc chi tiết của nó được thể hiện trong hình 1.7 Khi hoạt động với tín hiệu rời rạc, nó được gọi là mạng Hopfield rời rạc, và cấu trúc của nó cũng được gọi là mạng hồi quy
Trang 22
Hì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ào củ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:
Có 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ới giá trị đầu đã được xác định trước) Trong khi đó, với luật
Trang 23cậ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ạng Hopfield Ở đây ta chỉ xét mạng rời rạc, vì nó đơn giản và dễ hiểụ
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ột lớ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ột lớ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 ỵ
Đầu vào được xử lý và truyền tới đầu ra của lớp y như sau:
y’ = ăwx) ; 𝑦𝑖′ = 𝑎(∑ 𝑤𝑖𝑗𝑥𝑗); với i = 1,2, ,n (1.12)
Ở đó ặ) là hàm truyền, vector y’ bây giờ lại nuôi trở lại lớp nơron x
và tạo nên đầu ra như sau:
x’ = ăwTy’); 𝑥𝑗=𝑎(∑𝑛𝑖=1𝑤𝑖𝑗𝑖𝑖); với j = 1,2, ,m (1.13) Sau đó 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) = ăwx(0)) (truyền thẳng lần thứ nhất)
x(2) = ăw(T)y(1)) (truyền ngược lần thứ nhất) y(3) = ăwx(2)) (truyền thẳng lần thứ hai)
Trang 24x(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ương trình (1.12) và (1.13) Trạng thái cập nhật cũng có thể không đồng bộ theo phương trì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ướ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 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 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
Hình 1.9 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
w i
So sánh Đích
D ữ
li ệu
vào
Đi ều chỉnh
Trang 25bì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ơ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
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.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ạng nơ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 chỉ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át với đầu ra mong muốn
Trang 26Hì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ày khô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ốt hay 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ận mộ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 đặc biệ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ỉnh cá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 đầ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
Trang 27loại đối tượng không có thầy, những lớ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ác nơ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 được thay đổ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ủa vector wi là ∆wi tỉ lệ với tín hiệu học r và tín hiệu đầu vào x(t)
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:
𝑑𝑤𝑖
Trang 28Vấn đề quan trọng trong việc phân biệt luật học cập nhật trọng số có giám sát hay không có giám sát, hoặc học củng cố là tín hiệu học r Như vậy, đối với tín hiệu học r thì nó làm thế nào để thay đổi hoặc cập nhật trọng số trong mạng nơron
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 cho phé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 áp dụ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ến trình chính: lan truyền tiến để thực hiện ánh xạ
và lan truyền ngược sai số để cập nhậ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áp giả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.13)
Hình 1.13 Mạng 3 lớp lan truyền ngược
Trang 29Thuậ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 vector 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(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 lan truyề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à 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 đơ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:
𝑛𝑒𝑡𝑞 = ∑ 𝑣𝑞𝑗𝑥𝑗
𝑚
𝑗=1
(1.19)
Trang 30Phương trình đầu ra của q sẽ là:
𝑧𝑞 = 𝑎(𝑛𝑒𝑡𝑞) = 𝑎(∑𝑚𝑗=1𝑣𝑞𝑗𝑥𝑗) Đầu vào phần tử thứ i của lớp đầu ra sẽ là:
𝑞=1Phương trình đầu ra của phần tử nowron thứ i sẽ là:
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:
Sử dụng các công thức (1.21-1.23) và thay đổi luật với 𝜕𝐸
𝜕𝑤𝑖𝑞, ta có:
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 31Trong đó, neti là đầu vào của phần tử nơron thứ i trong lớp đầu ra và
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 đó:
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ó:
Sử dụng công thức (1.26), ta có thể viết lại công thức (1.28) như sau:
Ở đây, 𝜕hq 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ư dưới đây:
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ủa mộ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ật họ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
Trang 32tín hiệu sai số 𝛿oi của các phầ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 lan truyề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ể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 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:
∆𝑤𝑖𝑗 = η𝛿𝑖𝑥𝑗 = η𝛿𝑜𝑢𝑡𝑝𝑢𝑡−𝑖𝑥𝑖𝑛𝑝𝑢𝑡−𝑗 (1.31)
Ở đâ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, 𝛿i là tín hiệu học được định nghĩa bởi công thức (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ĩa bở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:
1 + 𝑒−𝑛𝑒𝑡 − 1 Khi đó ta có: 𝑎′(𝑛𝑒𝑡) = 𝜕𝑎(𝑛𝑒𝑡)
* 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à 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
Trang 33đầu vào, l nơron ở lớp ẩn, và n nơron đầu rạ Với qwij là trọng số nối từ q-1wj
đến qyi
Đầ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ủa phần tử cuối cùng bằng -1, tức là 𝑥𝑚+1(𝑘) = −1
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 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à 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ó:
𝒚𝒊
𝒒 = 𝒚𝟏 𝒊 = 𝒙𝒊(𝒌) 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
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 Q y i cho lớp đầu ra như sau:
Trong đó: Q𝛿i 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à
Trang 34Bướ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𝛿i cho các lớp xử lý:
- 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 quay vò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ới bằng cách nhảy tới bước 1
Trang 351.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 lan truyền ngược Quá trình học của mạng truyền thẳng chỉ ra một phương thức để mạ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ết nố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ặc vớ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ết nố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ền ngượ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ạng nơ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 so sá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ác kết quả mong đợi sẽ có một mức sai số nào đó Để giảm thiểu sai số này, người ta tiế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ệch củ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ữa mạ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òn mạng nơron Kohonen sử dụng phương thức huấn luyện không giám sát
Trang 36Chương 2 MẠNG NƠRON KOHONEN VỚI BÀI TOÁN PHÂN TÍCH, ĐÁNH GIÁ
2.1 Giới thiệu về mạng nơron Kohonen
SOM là một mô hình mạng nơron do GS Kohonen tìm ra như một dạng thông tin topo thường thấy trong dữ liệu đầu đa chiều biến đổi đổi thành lớp một chiều hoặc hai chiều của nơron, thường với hai chiều, lưới hình chữ nhật Bản đồ topo đảm bảo một trật tự hoặc một ma trận số liệu được xác định tác động đến đầu vào Nó thúc đẩy biểu diễn các thông tin giác quan quan trọng trong bộ nhớ của con người có một thứ tự hình học Cấu trúc liên kết bảo toàn là một thuộc tính quan trọng trong SOM Các nơron đại diện cho các lớp có tính chất tương tự nhau do đó có thể nhóm lại được với nhau Nói cách khác cấu trúc liên kết của các tập dữ liệu trong không gian n chiều, nó được chụp bởi SOM và thể hiện trong sự sắp xếp các nút của nó SOM nén dữ liệu trong khi vẫn giữ mối liên hệ topo quan trọng nhất, nó có thể được coi như tạo
ra một số kiểu trừu tượng
Mạng SOM gồm có một mảng hoặc một mạng tinh thể các số của các phần tử xử lý nơron (các nơron hoặc các nút) thường được sắp xếp trong một mạng lưới đa chiều mà mỗi nơron được kết nối với đầu vào Kiểu mạng tinh thể có thể có nhiều mẫu như hình chữ nhật, hình lục giác hoặc thậm chí bất thường Liên kết với mỗi nơron có một mẫu được gọi là bảng mã, mô hình có cùng số chiều với số chiều của mẫu đầu vào
Phương thức học của SOM là một biến thể của cạnh tranh: phương pháp tiếp cận winner-take-all Tính năng của bản đồ Kohonen tạo ra một bản
đồ topo điều chỉnh không chỉ trọng số của nơron chiến thắng mà còn điều chỉnh trọng số của các đơn vị đầu ra liền kề hoặc vùng lân cận của nơron chiến thắng Không chỉ nơnon chiến thắng được điều chỉnh mà toàn bộ đầu ra lân cận được di chuyển gần hơn đến các mẫu đầu vào Bắt đầu từ giá trị trọng
Trang 37số ngẫu nhiên, các đơn vị đầu vào tự sắp xếp chúng khi một mẫu đầu vào được thể hiện và một lân cận đáp ứng các mẫu đầu vào Tiến trình huấn luyện giảm kích thước của các miền lân cận tỏa ra từ các đơn vị chiến thắng Đơn vị đầu ra lớn sẽ được cập nhật sau đó sẽ đến đơn vị nhỏ hơn và nhỏ hơn được cập nhật cho đến khi kết thúc huấn luyện chỉ có một đơn vị chiến thắng được điều chỉnh Tương tự như vậy tỉ lệ học sẽ giảm như tiến trình huấn luyện, tìm hiểu tỉ lệ phân rã với khoảng cách từ đơn vị đầu ra chiến thắng
2.2 Các phương pháp phân tích, đánh giá
2.2.1 Phân cụm và các thành phần trong phân cụm dữ liệu
Phân cụm dữ liệu là quá trình áp dụng các phương pháp, thuật toán để
tổ chức dữ liệu thành các nhóm có những đặc điểm tương tự nhau Một cụm là một tập hợp dữ liệu mà các phần tử tương tự nhau trong cùng một cụm và các phần tử không tương tự sẽ thuộc một cụm khác Phân tích cụm được sử dụng
để đưa ra những số liệu thống kê nhằm xác định những đặc điểm khác nhau giữa các cụm
Mẫu đại diện: Đề cập đến số lớp, số mẫu có sẵn và số lượng, chủng loại, quy mô của các tính năng có sẵn cho các thuật toán phân cụm Lựa chọn đặc trưng là quá trình xác định các đặc trưng ban đầu của tập hợp con để sử dụng trong phân cụm Trích chọn đặc trưng là việc sử dụng một hoặc nhiều biến đổi từ đặc trưng đầu vào để tạo ra đặc trưng mới nổi bật Những kĩ thuật này có thể được sử dụng để có một tập hợp các đặc trưng được sử dụng trong phân cụm dữ liệu
Mẫu lân cận: Thường được đo bằng một hàm khoảng cách thực hiện trên từng cặp mẫu Có nhiều phương pháp đo khoảng cách được áp dụng trong phân cụm dữ liệu trong đó phổ biến nhất là phương pháp đo khoảng cách Euclide Các bước nhóm dữ liệu có thể được thực hiện bằng nhiều cách khác nhau Các cụm đầu ra có thể phân vùng dữ liệu thành các nhóm hoặc mỗi một mẫu có thể biến đổi các thành viên trong cụm đầu ra
Trang 38Trừu tượng hóa dữ liệu: Là quá trình rút ra một đại diện đơn và nhỏ gọn của một tập dữ liệu Trong phân cụm dữ liệu trừu tượng hóa dữ liệu là mô
tả nhỏ gọn mỗi cụm thường mô tả các cụm nguyên mẫu hoặc các mẫu đại diện trọng tâm Đánh giá tính đúng đắn là mục tiêu và được thực hiện để xác định đầu ra có ý nghĩa hay không
2.2.2 Phương pháp phân cụm phân cấp
Cấu trúc phân cụm phân cấp xây dựng trên một hệ thống phân cấp cụm Các cụm chứa các nút cụm con Các cụm ngang hàng được phân chia thành các điểm cùng cụm cha Cách tiếp cận này cho phép tìm hiểu chi tiết dữ liệu ở các cấp độ khác nhau Phương pháp phân cụm được chia làm hai loại [5]: Phân cụm phân cấp tích tụ Bottom-Up và phân cụm phân cấp chia nhóm Top-Down Phân cụm phân cấp tích tụ khởi đầu với một điểm cụm và kết hợp
đệ quy với 2 hoặc nhiều cụm thích hợp nhất Một cụm chia tách bắt đầu với một cụm của tất cả các điểm dữ liệu và đệ quy chia tách các cụm thích hợp nhất Quá trình này tiếp tục cho đến khi đạt được một tiêu chí dừng lại được
Phân cụm phân cấp dựa trên kết quả thống kê kết quả liên kết trong cụm
2.2.3 Phương pháp phân cụm phân hoạch
Phân cụm phân hoạch phân chia dữ liệu thành các tập số Kiểm tra tất
cả các hệ thống tập hợp con có thể là tính toán không khả thi Di chuyển lặp
đi lặp lại các điểm trong cụm Sau khi các cụm được xây dựng phương pháp phân cụm phân hoạch sẽ xem xét lại các cụm để cải thiện các cụm tốt hơn
Với dữ liệu thích hợp sẽ đem lại hiệu quả cao trong phân cụm
2.2.4 Phương pháp phân cụm dựa trên mật độ
Một tập mở trong không gian Euclide có thể được chia thành một tập hợp các thành phần kết nối Việc thực hiện ý tưởng này cho phân vùng của một tập hợp hữu hạn các điểm đòi hỏi phải có khái niệm về kết nối, mật độ, ranh giới Chúng liên quan đến điểm lân cận gần nhất Một cụm quy định như
Trang 39là một thành phần kết nối dày đặc, phát triển ở bất kỳ hướng nào mà mật độ cao nhất Dựa trên các thuật toán mật độ có khả năng phát hiện các cụm với hình dạng bất kỳ điều này giúp loại bỏ các giá trị ngoại lai hoặc nhiễu
2.2.5 Phân cụm dữ liệu dựa trên lưới
Phương pháp phân cụm dựa trên lưới đã được sử dụng trong một số nhiệm vụ khai thác dữ liệu của cơ sở dữ liệu lớn Trong phân cụm dữ liệu dựa trên lưới, không gian đặc trưng được chia thành một số hữu hạn các ô hình chữ nhật hình thành lên lưới Trên cấu trúc của lưới quá trình phân cụm được thực hiện Quá trình đa phân tích thay đổi kích thước của ô hình chữ nhật có thể hình thành lên lưới Trong không gian đa chiều d, lưới có dạng một hình lập phương với kích thước d tương ứng với các ô Trong cấu trúc lưới phân cấp kích thước ô có thể được giảm để đạt được một cấu trúc ô chính xác hơn Cấu trúc phân cấp có thể được chia thành nhiều cấp độ giải quyết Mỗi ô ở mức độ cao hơn k sẽ được phân chia thành các ô có cấp độ thấp hơn k+1 Các
ô ở mức độ thấp k+1 sẽ được hình thành bởi việc chia tách các ô k vào các ô nhỏ hơn
2.2.6 Phân cụm dữ liệu dựa trên sự ràng buộc
Trong phân cụm dữ liệu để có những hiểu biết về những trường hợp nên hay không nên gom cụm lại với nhau người ta có thể áp dụng phương pháp phân cụm dựa trên những ràng buộc Phân cụm ràng buộc dựa trên sự thay đổi của thuật toán K-mean dựa vào tính toán những liên kết bắt buộc giữa hai điểm trong cùng một cụm và hạn chế những liên kết không thể thực hiện được giữa hai điểm trong một cụm Những yêu cầu đó là bắt buộc trong khi phân cụm dữ liệu Khi các ràng buộc không được đáp ứng các liên kết ràng buộc được gán bằng 0 Phân cụm ràng buộc dựa trên các liên kết liên quan nhưng sự khác biệt đến từ phân cụm bán giám sát khi có một số nhãn được biết trước
Trang 402.3 Ứng dụng mạng nơron Kohonen trong việc phân tích, đánh giá
2.3.1 Cấu trúc mô hình mạng nơron Kohonen
SOM được tạo thành từ các nơron được đặt trên một lưới một chiều hoặc hai chiều Trọng số n chiều hoặc vector tham chiếu đại diện cho nơron thứ i trong SOM Mi mi1,mi2 min trong đó n bằng kích thức của các vector đầu vào Cấu trúc liên kết của SOM có thể là hình chữ nhật hoặc hình lục giác
Hình 2.1
Hình 2.1 Cấu trúc của mạng SOM
Các nơron trong bản đồ được kết nối với các nơron lân cận thông qua các lệnh mối quan hệ liền kề trong cấu trúc của bản đồ Các nơron liền kề thuộc lân cận thứ nhất ni1 của nơron thứ i Trong không gian hai chiều các nơron có thể được bố trí trong hình chữ nhật hoặc hình lục giác Các kích cỡ khác nhau của lân cận được minh họa như hình Số lượng các nơron xác định kết quả chi tiết của bản đồ và nó ảnh hưởng đến tính chính xác và khả năng khái quát của SOM
2.3.1.1 Khởi tạo SOM
Trong thuật toán SOM cơ sở mối quan hệ giữa các topo và số nơron được bố trí ngay từ đầu Số lượng các nơron thường được lựa chọn là lớn nhất với kích thước lân cận điều chỉnh độ mịn và tính khái quát của bản đồ Bản đồ không bị ảnh hưởng nhiều khi số lượng nơron vượt quá số lượng vector đầu