Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
2,87 MB
Nội dung
i ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THƠNG TIN VÀ TRÙN THƠNG CHU HỒNG HÀ NGHIÊN CỨU MẠNG NƠRON VÀ ỨNG DỤNG TRONG NHẬN DẠNG CHỮ VIẾT TAY TRỰC TUYẾN Chuyên ngành: Khoa học máy tính Mã số: 60.48.01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍ NH NGƢỜI HƢỚNG DẪN KHOA HỌC PGS-TS Ngô Quốc Tạo Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ii Thái Nguyên – 2013 BẢN CAM KẾT Tên tơi là: Chu Hồng Hà Lớp: Cao học Cơng nghệ thơng tin K10A Khố học: 2011 - 2013 Chuyên ngành:Khoa học máy tính Mã số chuyên ngành: 60 48 01 Cơ sở đào tạo: Trƣờng Đại học Công nghệ thông tin Truyền thông Thái Nguyên Giáo viên hƣớng dẫn: PGS-TS Ngô Quốc Tạo Cơ quan công tác: Trƣờng Đại học Sƣ phạm Kỹ Thuật Nam Định Tơi xin cam đoan tồn nội dung đƣợc trình bày luận văn kết tìm hiểu nghiên cứu riêng tơi, q trình nghiên cứu luận văn “Nghiên cứu mạng nơron ứng dụng nhận dạng chữ viết tay trực tuyến” kết liệu đƣợc nêu hoàn tồn trung thực Mọi thơng tin trích dẫn đƣợc tn theo luật sở hữu trí tuệ, có liệt kê rõ ràng tài liệu tham khảo Tôi xin chịu hoàn toàn trách nhiệm với nội dung đƣợc viết luận văn Thái Nguyên, ngày 08 tháng 06 năm 2013 HỌC VIÊN CHU HỒNG HÀ Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iii Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iv LỜI CẢM ƠN Luận văn đƣợc thực Trƣờng Đại học Công nghệ Thông tin Truyền Thông - Đại học Thái Nguyên dƣới hƣớng dẫn thầy PGS-TS Ngô Quốc Tạo Trƣớc hết em xin bày tỏ lòng biết ơn sâu sắc tới thầy PGS-TS Ngô Quốc Tạo - Viện Công nghệ thơng tin, ngƣời tận tình hƣớng dẫn giúp đỡ để em hồn thành tốt luận văn Em xin gửi lời cảm ơn chân thành đến thầy cô giáo Trƣờng Đại học Công nghệ Thông tin Truyền Thông - Đại học Thái Nguyên, thầy giáo nhiệt tình giảng dạy, truyền đạt kiến thức cho em suốt trình học tập trƣờng nhƣ trình làm luận văn Cuối em xin gửi lời cảm ơn đến gia đình, bạn bè, đồng nghiệp ngƣời động viên, giúp đỡ tạo điều kiện cho em trình học tập hồn thành luận văn Thái Ngun, ngày 08 tháng 06 năm 2013 HỌC VIÊN CHU HOÀNG HÀ Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn v MỤC LỤC LỜI MỞ ĐẦU Chƣơng KHÁI QUÁT VỀ MẠNG NƠRON 1.1 Khái niệm mạng nơron 1.1.1 Giới thiệu 1.1.1.1 Nơron 1.1.1.2 Chức năng, tổ chức hoạt động não ngƣời 1.1.1.3 So sánh mạng nơron với máy tính truyền thống 10 1.1.2 Nơron nhân tạo 11 1.1.3 Mạng nơron nhân tạo 14 1.2 Đặc trƣng mạng nơron[5] 15 1.2.1 Tính phi tuyến 15 1.2.2 Tính chất tƣơng ứng đầu vào, đầu 16 1.2.3 Tính chất thích nghi 16 1.2.4 Tính chất đƣa lời giải có chứng 16 1.2.5 Tính chất chấp nhận sai sót 16 1.2.6 Khả tích hợp VLSI (Very-Large-Scale-Intergrated) 17 1.2.7 Tính chất tƣơng tự phân tích thiết kế 17 1.3 Phân loại mạng nơron nhân tạo 17 1.3.1 Phân loại theo kiểu liên kết nơron 17 1.3.2 Một số loại mạng nơron điển hình[20] 18 1.3.2.1 Mạng dẫn tiến (feedforward) 18 1.3.2.1 Mạng quy hồi (recurrent network) 20 1.4 Xây dựng mạng nơron[8] 21 1.5 Huấn luyện mạng nơron 22 1.5.1 Phƣơng pháp học 22 1.5.1.1 Học có giám sát 22 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn vi 1.5.1.2 Học không giám sát 23 1.5.1.3 Học tăng cƣờng 23 1.5.2 Thuật toán học 23 1.6 Thu thập liệu cho mạng nơron 24 1.7 Biểu diễn tri thức cho mạng nơron 26 1.8 Ứng dụng mạng nơron 28 Chƣơng ỨNG DỤNG MẠNG NƠRON TRONG NHẬN DẠNG CHỮ VIẾT TAY TRỰC TUYẾN 2.1 Giới thiệu tốn nhận dạng kí tự 30 2.1.1 Giới thiệu sơ lƣợc nhận dạng 30 2.1.2 Giới thiệu nhận dạng chữ viết tay 31 2.1.3 Nhận dạng chữ viết tay mạng nơron[5] 35 2.1.4 Phát biểu toán 36 2.1.5 Các bƣớc giải toán sử dụng mạng nơron nhận dạng ký tự 36 2.2 Mạng Perceptron nhận dạng ký tự 36 2.2.1 Giới thiệu mạng nơron Perceptron 36 2.2.2 Cấu trúc mạng nơron Perceptron 37 2.2.3 Thực thi mạng nơron Perceptron 38 2.2.3.1 Thuật toán học mạng nơron lớp 38 2.2.3.2 Thuật toán học mạng nơron nhiều lớp 40 2.2.4 Nhận xét 44 2.3 Mạng Kohonen nhận dạng ký tự 45 2.3.1 Giới thiệu mạng nơron Kohonen 45 2.3.2 Cấu trúc mạng nơron Kohonen[16] 46 2.3.3 Thực thi mạng nơron Kohonen[15] 46 2.3.2.1 Chuẩn hóa đầu vào 46 2.3.2.2 Tính tốn đầu cho nơron 47 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn vii 2.3.2.3 Chọn nơron chiến thắng 47 2.3.2.4 Quá trình học mạng nơron Kohonen 48 2.3.3 Nhận xét 51 Chƣơng XÂY DỰNG CHƢƠNG TRÌNH NHẬN DẠNG CHỮ VIẾT TAY TRỰC TUYẾN 3.1 Giới thiệu 52 3.2 Xây dựng giao diện vẽ 53 3.3 Xử lý liệu (phân tích ảnh) 54 3.4 Xây dựng mạng nơron 54 3.4 Xây dựng mạng nơron Perceptron 54 3.4.2 Xây dựng mạng nơron Kohonen 56 3.5 Chƣơng trình minh họa 59 3.5.1 Các chức chƣơng trình 59 3.5.2 Kết nhận dạng 60 3.6 Đánh giá, nhận xét 62 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Những kết mà luận văn đạt đƣợc 64 Hƣớng phát triển 64 TÀI LIỆU THAM KHẢO Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn viii DANH MỤC CÁC HÌNH Hình 1.1 Sơ đồ nơron sinh học Hình 1.2 Mạng nơron sinh học 10 Hình 1.3 Mơ hình nơron nhân tạo 11 Hình 1.4 Sự tƣơng đƣơng nơron sinh học nơron nhân tạo[16] 12 Hình 1.5 Mơ hình phi tuyến thứ hai mạng nơron 14 Hình 1.6 Sơ đồ đơn giản mạng nơron nhân tạo[8] 15 Hình 1.7 Mạng truyền thẳng 18 Hình 1.8 Mạng quy hồi 18 Hình 1.9 Mạng tiến với mức nơron 19 Hình 1.10 Mạng tiến kết nối đầy đủ với mức ẩn mức đầu 20 Hình 1.11 Mạng hồi quy khơng có nơron ẩn khơng có vịng lặp tự phản hồi20 Hình 1.12 Mạng hồi quy có nơron ẩn 21 Hình 1.13 Sơ đồ đồ thị có hƣớng đơn giản 21 Hình 2.1 Mơ hình chung nhận dạng chữ viết 34 Hình 2.2 Mơ hình tổng quát mạng nơron Perceptron 37 Hình 2.3 Bài tốn XOR 39 Hình 2.4 Cấu trúc mạng Kohonen 46 Hình 2.5 Quá trình huấn luyện mạng nơron Kohonen 48 Hình 3.1 Quá trình tìm giới hạn ký tự 53 Hình 3.2 Quá trình lấy mẫu xuống 53 Hình 3.3 Quá trình ánh xạ từ ma trận điểm sang ma trận giá trị 54 Hình 3.4 Quá trình huấn luyện mạng 58 Hình 3.5 Giao diện chƣơng trình minh họa 59 Hình 3.6 Tải mẫu 60 Hình 3.7 Nhận dạng ký tự e mạng Kohonen 61 Hình 3.8 Nhận dạng ký tự e mạng Perceptron 61 Hình 3.9 Thêm mẫu 62 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn LỜI MỞ ĐẦU Mạng nơron nhân tạo ANN (Artificial Neural Networks) mô xử lý thông tin, đƣợc nghiên cứu từ hệ thống thần kinh sinh vật, giống nhƣ não để xử lý thơng tin Nó bao gồm số lƣợng lớn mối gắn kết cấp cao để xử lý yếu tố làm việc mối liên hệ giải vấn đề rõ ràng ANN giống nhƣ ngƣời, đƣợc học kinh nghiệm, lƣu kinh nghiệm hiểu biết sử dụng tình phù hợp quan trọng hết, ngƣời có khả sáng tạo Đầu tiên ANN đƣợc giới thiệu năm 1943 nhà thần kinh học Warren McCulloch nhà logic học Walter Pits Nhƣng với kỹ thuật thời gian chƣa cho phép họ nghiên cứu đƣợc nhiều Những năm gần mô ANN xuất phát triển Các nghiên cứu ứng dụng đƣợc thực ngành: điện, điện tử, kỹ thuật chế tạo, y học, quân sự, kinh tế Một ứng dụng kinh điển mạng nơron tốn nhận dạng mẫu, mẫu tập hợp (hay vector) tham số biểu thị thuộc tính q trình vật lý Ngồi sức mạnh vốn có, mạng nơron cịn thể ƣu điểm việc nhận dạng thơng qua khả mềm dẻo, dễ thích nghi với mơi trƣờng Chính vậy, coi mạng nơron trƣớc tiên công cụ để nhận dạng Các toán nhận dạng đƣợc nghiên cứu nhiều bao gồm nhận dạng mẫu hình học (vân tay, mặt ngƣời, hình khối,…), nhận dạng tiếng nói nhận dạng ký tự viết Nhận dạng ký tự viết bao gồm hai kiểu nhận dạng ký tự in nhận dạng ký tự viết tay Cho đến toán nhận dạng ký tự in đƣợc giải trọn vẹn với đời nhiều hệ thống nhận dạng đạt tới độ xác gần nhƣ tuyệt đối Nhận dạng ký tự viết tay vấn đề thách thức lớn nhà nghiên cứu, toàn chƣa thể giải trọn vẹn đƣợc phụ thuộc q nhiều vào ngƣời viết biến đổi đa dạng cách viết trạng thái tinh thần ngƣời viết Đặc biệt việc nhận dạng ký tự viết tay tiếng Việt lại gặp nhiều khó khăn ký tự tiếng Việt có nhiều ký tự có hình dáng giống nhau, khác chút phần dấu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Chính lý nêu với gợi ý thầy giáo nhận thấy nghiên cứu mạng nơron hƣớng nghiên cứu quan trọng, mẻ có nhiều triển vọng Đồng thời áp dụng mạng nơron để giải toán nhận dạng chữ viết tay tiếng Việt hƣớng tiếp cận khoa học có hiệu quả, góp phần giải tốn nhận dạng chữ viết tay tiếng Việt cịn chƣa đƣợc giải trọn vẹn Do tơi chọn đề tài: “Nghiên cứu mạng nơron ứng dụng nhận dạng chữ viết tay trực tuyến” Tuy nhiên hạn chế mặt thời gian nhƣ độ phức tạp tốn, tơi sâu nghiên cứu mô nhận dạng ký tự viết tay tiếng Việt rời rạc trực tuyến Nội dung luận văn gồm: Chƣơng 1: Khái quát mạng nơron Trình bày lý thuyết mơ hình mạng nơron nhƣ: lịch sử đời phát triển mạng nơron, khái niệm mạng nơron, loại mơ hình mạng nơron, đặc trƣng mạng, phƣơng pháp huấn luyện mạng nơron, phƣơng pháp học có giám sát Các vấn đề ứng dụng mạng nơron Chƣơng 2: Ứng dụng mạng nơron nhận dạng chữ viết tay trực tuyến Giới thiệu nhận dạng, toán nhận dạng, nhận dạng chữ viết tay tiếng Việt Phƣơng pháp nhận dạng chữ viết tay mạng nơron, phát biểu toán, bƣớc giải toán Trình bày lý thuyết mạng nơron Perceptron, Kohonen nhƣ: giới thiệu mạng, cấu trúc mạng, bƣớc thực thi mạng: chuẩn hóa đầu vào, tính tốn đầu ra, q trình huấn luyện mạng,… Chƣơng 3: Xây dựng chƣơng trình nhận dạng chữ viết tay trực tuyến Trình bày phạm vi chƣơng trình minh họa, bƣớc thực chƣơng trình minh họa: Thực chƣơng trình nhận dạng ký tự, xác định tham số cho mạng, vẽ hình ảnh, lấy mẫu xuống hình ảnh, tập huấn luyện, lớp mạng bản, … Chƣơng trình minh họa: Các chức chƣơng trình, kết nhận dạng, đánh giá, nhận xét Kết luận hƣớng phát triển Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 52 Chƣơng XÂY DỰNG CHƢƠNG TRÌNH NHẬN DẠNG CHỮ VIẾT TAY TRỰC TUYẾN 3.1 Giới thiệu Trong luận văn hạn chế mặt thời gian độ phức tạp nhận dạng chữ viết tay tiếng Việt hạn chế mô nhận dạng ký tự viết tay tiếng Việt rời rạc trực tuyến Các ký tự tiếng Việt gồm ký tự không dấu {A, B, C, D, Đ, E, G, H, I, K, L, M, N, O, P, Q, R, S, T, U, V, X, Y} ký tự có dấu {Ă, Â, À, Ả, Ã, Á, Ạ, Ằ, Ẳ, Ẵ, Ắ, Ặ, Ầ, Ẩ, Ẫ, Ấ, Ậ, Ê, È, Ẻ, Ẽ, É, Ẹ, Ề, Ể, Ễ, Ế, Ệ, Ì, Ỉ, Ĩ, Í, Ị, Ơ, Ơ, Ị, Ỏ, Õ, Ó, Ọ, Ồ, Ổ, Ỗ, Ố, Ộ, Ờ, Ở, Ỡ, Ớ, Ợ, Ƣ, Ù, Ủ, Ũ, Ú, Ụ, Ừ, Ử, Ữ, Ứ, Ự, Ỳ, Ỷ, Ỹ, Ý, Ỳ} Chƣơng trình đƣợc huấn luyện để nhận dạng ký tự viết tay ngƣời sử dụng vẽ chúng, chức tƣơng tự nhƣ nhận dạng ký tự viết tay sử dụng thiết bị cầm tay PDA (Personal Digital Assistant ) Chƣơng trình gồm giao diện đơn giản cho phép ngƣời sử dụng dùng chuột vẽ ký tự cần nhận dạng tiến hành nhận dạng Khi vẽ ký tự có hình chữ nhật xung quanh ký tự Mục đích hình chữ nhật để cắt khoảng trắng khơng liên quan đến ký tự làm cho chƣơng trình có khả khơng cần quan tâm đến vị trí ký tự đƣợc viết Ta vẽ ký tự giữa, trên, dƣới hay vị trí khác nhƣng chƣơng trình có khả nhận dạng Sau vẽ ký tự, ký tự đƣợc cắt bỏ khoảng trắng xung quanh mà không liên quan đến ký tự, sau đƣợc lấy mẫu xuống ký tự đƣợc vẽ có độ phân giải q cao mà mạng nơron khơng hiểu đƣợc Giảm mẫu hình ảnh, hình ảnh đƣợc ánh xạ vào lƣới nhỏ có kích thƣớc 10*10 Nhìn vào ta thấy đƣợc hình ảnh ký tự Nhờ lấy mẫu xuống nên số đầu vào ký tự đầy đủ kích thƣớc Đồng thời ký tự đƣợc quy kích thƣớc cố định, khơng cịn phải quan tâm ký tự đƣợc vẽ lớn, hay nhỏ huấn luyện hay nhận dạng Các bƣớc giải toán sử dụng mạng nơron nhận dạng ký tự: - Xây dựng giao diện vẽ Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 53 - Xử lý liệu (phân tích ảnh) - Xây dựng mạng nơron - Huấn luyện mạng nơron - Nhận dạng mạng nơron 3.2 Xây dựng giao diện vẽ - Xây dựng giao diện đồ họa, cho phép ngƣời sử dụng dùng chuột vẽ ký tự cần nhận dạng - Tìm giới hạn trên, giới hạn dƣới, trái, phải ký tự sau đƣợc vẽ - Cắt bỏ tất khoảng trắng xung quanh ký tự đƣợc vẽ thu đƣợc ảnh có hồn tồn ký tự Nhƣ quy xử lý ảnh có ký tự, không quan tâm ký tự đƣợc vẽ vị trí nào: bên hay dƣới, bên trái hay bên phải Hình 3.1 Quá trình tìm giới hạn ký tự - Thực lấy mẫu xuống ảnh ký tự cách ánh xạ ký tự vào lƣới có kích thƣớc 10*10 Bằng cách ta quy ký tự kích thƣớc cố định, nhƣ khơng cần quan tâm đến kích thƣớc ký tự đƣợc vẽ vào to hay nhỏ Hình 3.2 Quá trình lấy mẫu xuống Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 54 3.3 Xử lý liệu (phân tích ảnh) Q trình phân tích ảnh q trình tìm đặc tính ký tự Các điểm ảnh giá trị đầu vào cho trình huấn luyện trình kiểm tra Q trình phân tích dựa việc nhận dạng từ ảnh ngƣời sử dụng vẽ vào phƣơng pháp tìm điểm đen RGB(0,0,0) điểm trắng RGB(255,255,255) Kết thu đƣợc ma trận điểm ảnh Sau ma trận đƣợc ánh xạ thành vector đầu vào có kích thƣớc 100 phần tử Trƣớc đƣa vào mạng vector đƣợc xử lý làm điểm ảnh thành vector gồm phần tử 0.5 -0.5 Hình 3.3 Quá trình ánh xạ từ ma trận điểm sang ma trận giá trị 3.4 Xây dựng mạng nơron 3.4 Xây dựng mạng nơron Perceptron a) Chuẩn bị liệu Kích thƣớc mẫu : Khơng có ngun tắc hƣớng dẫn kích thƣớc mẫu phải toán cho trƣớc Ở sử dụng mẫu lớn cho đủ khả lƣu trữ nhớ Tập mẫu dƣợc chia thành tập con: để xây dựng mơ hình gọi tập huấn luyện (training set), để kiểm nghiệm mơ hình gọi tập kiểm tra (test set) Trong chƣơng trình dùng 2/3 mẫu cho huấn luyện 1/3 cho kiểm tra b) Xác định tham số cho mạng Chọn hàm truyền Không phải hàm truyền cho kết nhƣ mong muốn Cần chọn hàm truyền cho kiến trúc mạng nơron đối xứng (tức với Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 55 đầu vào ngẫu nhiên đầu có phân bố đối xứng) Nếu mạng nơron khơng đối xứng giá trị đầu lệch sang bên, khơng phân tán lên tồn miền giá trị output Điều làm cho mạng rơi vào trạng thái bão hịa, khơng đƣợc Trong trình xây dựng mạng nơron Perceptron, hàm truyền dạng – S f ( x) đƣợc sử dụng hàm Sigmoid: (1 e x ) Xác định số nơron tầng ẩn Việc chọn số lƣợng nơron tầng ẩn mạng Perceptron phụ thuộc vào toán cụ thể vào kinh nghiệm nhà thiết kế mạng Nếu tập liệu huấn luyện đƣợc chia thành nhóm với đặc tính tƣơng tự số lƣợng nhóm đƣợc sử dụng để chọn số lƣợng nơron ẩn Trong trƣờng hợp liệu huấn luyện nằm rải rác khơng chứa đặc tính chung, số lƣợng kết nối gần với số lƣợng mẫu huấn luyện để mạng hội tụ Trong trình xây dựng mạng nơron Perceptrong sử dụng thuật tốn lan truyền ngƣợc, lƣợng nơron tầng ẩn h mạng phải thỏa mãn: h (p 1) (n 2) Trong đó: + p số lượng mẫu huấn luyện + n số lượng đầu vào mạng Khởi tạo trọng số Các trọng số khởi tạo với giá trị nhỏ: Trọng số nơ ron đầu vào 1, trọng số nơ ron tầng ẩn tầng lấy ngẫu nhiên quanh giá trị Các ngƣỡng khởi tạo với giá trị nhỏ: Ngƣỡng nơ ron đầu vào 1, ngƣỡng nơ ron tầng ẩn tầng khởi tạo khoảng 0.25 đến Thời gian học η = 0.2 cho nơ ron tầng ẩn, η = 0.15 cho nơ ron tầng Lỗi chấp nhận đƣợc 0.05 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 56 c) Huấn luyện mạng nơron Perceptron Thuật toán huấn luyện mạng thuật tốn lan truyền ngƣợc trình bày chƣơng Quá trình huấn luyện bao gồm bƣớc: - Thiết lập tham số đầu vào - Tất mẫu đầu vào đƣợc lấy mẫu hình ảnh ký tự xuống lƣới kích thƣớc 10*10 Ta đƣợc ma trận hai chiều kích thƣớc 10*10 có giá trị tƣơng ứng với giá trị điểm ảnh - Chuyển thành vector đầu vào có kích thƣớc 10*10 - Đƣa vector đầu vào vào mạng - Thực tìm ma trận trọng số tốt theo thuật toán lan truyền ngƣợc d) Nhận dạng mạng nơron Perceptron Quá trình nhận dạng đƣợc diễn theo bƣớc sau: - Bƣớc 1: Ngƣời sử dụng vẽ ký tự cần nhận dạng - Bƣớc 2: Ký tự đƣợc lấy mẫu xuống lƣới kích thƣớc 10*10 Ta đƣợc ma trận hai chiều kích thƣớc 10*10 có giá trị tƣơng ứng với giá trị điểm ảnh - Bƣớc 3: Chuyển ma trận điểm ảnh thành vector đầu vào có kích thƣớc 10*10 bao gồm giá trị 0.5, - 0.5 - Bƣớc 4: Vector đầu vào đƣợc đƣa vào mạng nơron để tính tốn đầu - Bƣớc 5: Tính tốn đầu mạng - Bƣớc 6: Cập nhật đầu mạng để tìm kí tự tƣơng ứng - Bƣớc 7: Hiển thị kết nhận dạng đƣợc tƣơng ứng với ký tự đƣợc vẽ 3.4.2 Xây dựng mạng nơron Kohonen a) Xây dựng mạng Một việc quan trọng việc định cỡ mạng Việc định cỡ đầu vào phụ thuộc vào việc định cỡ lƣới lấy mẫu xuống Nếu ta chia ảnh ký tự thành ma trận có kích thƣớc lớn ký tự đƣợc biểu diễn cách chi tiết Tuy nhiên, việc dẫn đến chi phí xử lý ma trận lớn Ngƣợc lại, ta dùng ma trận kích thƣớc nhỏ để biểu diễn ảnh ký tự dẫn đến việc Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 57 mát thông tin Để cho cân hợp lý, ta chuẩn hóa cỡ ma trận 10*10, tức ảnh đƣợc biểu diễn 100 phần tử Lớp đầu vào gồm 100 nơron nhận giá trị từ 100 thành phần tƣơng ứng vector đầu vào Dữ liệu đầu vào có đƣợc từ việc vector hóa từ ma trận điểm ảnh ký tự phƣơng pháp chia lƣới Lớp đầu có số nơron với số mẫu nhập vào b) Huấn luyện mạng nơron Kohonen Một mạng nơron đƣợc xây dựng phải đƣợc huấn luyện không gian đầu vào đƣợc chuẩn bị trƣớc Khi hoạt động, mạng nơron đọc giá trị đƣợc huấn luyện Sự phức tạp tham số cho việc huấn luyện mạng: Việc chọn giá trị cho tham số (tốc độ học, số lần lặp cần thiết, giá trị ngƣỡng lỗi…) đƣợc dựa vào kinh nghiệm qua lần tiến hành thực nghiệm Mục đích trình huấn luyện hiệu chỉnh trọng số W cho giống với vector đầu vào Thực hiệu chỉnh vector trọng số ứng với ký tự mẫu Kết thu đƣợc ma trận trọng số W giống với tập vector đầu vào Huấn luyện bao gồm bƣớc: - Thiết lập tham số đầu vào - Tất mẫu đầu vào đƣợc lấy mẫu hình ảnh ký tự xuống lƣới kích thƣớc 10*10 Ta đƣợc ma trận hai chiều kích thƣớc 10*10 có giá trị tƣơng ứng với giá trị điểm ảnh - Chuyển thành vector đầu vào có kích thƣớc 10*10 - Đƣa vector đầu vào vào mạng - Thực tìm ma trận trọng số tốt theo sơ đồ thuật tốn sau: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 58 Hình 3.4 Quá trình huấn luyện mạng Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 59 3.5 Chƣơng trình minh họa 3.5.1 Các chức chƣơng trình Hình 3.5 Giao diện chƣơng trình minh họa Ký tự: Chứa ký tự mẫu dùng để huấn luyện Giá trị: Lƣu trữ giá trị ký tự mẫu dùng để huấn luyện Nhận dạng kí tự: Vùng để vẽ ký tự lên Tập mẫu: Chứa ký tự mẫu dùng để huấn luyện Tải mẫu: Tải tập ký tự mẫu tạo sẵn file: TapMau.xml Thêm ký tự: Ghi lại tập ký tự mẫu vào file: TapMau.xml Học theo Kohonen: Huấn luyện mạng nơron Kohonen Học theo Perceptron: Huấn luyện mạng nơron Perceptron Xóa ký tự: Xóa ký tự mẫu đƣợc chọn khỏi file TapMau.xml Nhận dạng: Nhận dạng ký tự vẽ vào Giới thiệu: Giới thiệu sơ chƣơng trình Chúng ta tải tập huấn luyện từ file tạo sẵn TapMau.xml cách nhấn nút “Tải mẫu” tự nhập mẫu để huấn luyện cách vẽ ký tự vào vùng vẽ ký tự nhấn “Thêm ký tự”, có hộp Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 60 thoại nhắc bạn đánh vào ký tự tƣơng ứng để nhận dạng ký tự tƣơng ứng với ký tự vừa vẽ Sau nhập xong tập mẫu nhấn nút “Học theo Kohonen” để huấn luyện cho mạng nơron Kohonen nhấn nút “Học theo Perceptron” để huấn luyện cho mạng nơron Perceptron Q trình huấn luyện hồn thành, thực nhận dạng ký tự cách vẽ ký tự nhấn “Nhận dạng” Khi ký tự đƣợc hiển thị lƣới kích thƣớc 10*10 Có thể xóa ký tự xóa mẫu tập mẫu cách chọn ký tự cần xóa nhấn nút “Xóa ký tự” 3.5.2 Kết nhận dạng - Để nhận dạng ký tự ta vẽ ký tự cần nhận dạng vào vùng vẽ chữ (vùng chữ nhật màu trắng, bên dƣới phần “Nhận dạng ký tự”) - Ký tự đồng thời đƣợc hiển thị lƣới kích 10*10 (vùng ô vuông màu xanh, bên phải giao diện chƣơng trình) -Nhấn nút nhận dạng Ký tự nhận dạng tƣơng ứng với ký tự cần nhận dạng đƣợc vẽ đƣợc hiển thị hình Một số kết minh họa Hình 3.6 Tải mẫu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 61 Hình 3.7 Nhận dạng ký tự e mạng Kohonen Hình 3.8 Nhận dạng ký tự e mạng Perceptron Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 62 Hình 3.9 Thêm mẫu 3.6 Đánh giá, nhận xét Có nhiều phƣơng pháp để giải toán nhận dạng ký tự viết tay tiếng Việt Nếu áp dụng mạng nơron để giải quyết, thông thƣờng ngƣời ta hay sử dụng mạng dẫn tiến đa lớp cho việc thực nhận dạng Nhƣng thấy số khó khăn vấn đề tìm số nơron lớp, lớp ẩn Thuật toán lan truyền ngƣợc phức tạp hơn, nhiều cơng thức tính tốn hơn, lại phải xét lớp mạng Trong mạng nơron Kohonen loại mạng phổ biến có cấu trúc đơn giản hơn, bƣớc thực đơn giản, rõ ràng, dễ dàng lựa chọn hiệu chỉnh tham số đầu vào, trình huấn luyện mạng nhanh, dễ hội tụ Vì lựa chọn mạng nơron Kohonen để giải toán nhận dạng ký tự viết tay tiếng việt rời rạc trực tuyến đơn giản hơn, hiệu Chƣơng trình nhận dạng với độ xác cao Nếu ký tự nhận dạng chƣa đƣợc xác ta thêm mẫu huấn luyện lại cho ký tự đến nhận dạng đƣợc ký tự xác Nếu ký tự gần giống nhận dạng dễ lẫn sang huấn luyện ta thêm mẫu tƣơng ứng với ký tự đến đạt đƣợc tỷ lệ nhận dạng cao Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 63 Chƣơng trình nhận dạng xác với ký tự khơng dấu đến 96%, ký tự có dấu độ xác lớn 85% Đối với ký tự có dấu độ xác giảm so với trƣờng hợp khơng có dấu trƣờng hợp ký tự khác ít, nên số lƣợng mẫu huấn luyện cho các ký tự có dấu cần nhiều Để nhận dạng đƣợc nhiều kiểu viết khác tập mẫu huấn luyện cho ký tự phải có nhiều dạng phong phú, tƣơng ứng với cách viết mà ngƣời sử dụng viết Q trình huấn luyện giải đƣợc khía cạnh phức tạp toán nhận dạng chữ viết tay đa dạng chữ viết tay, đặc biệt chữ viết tay tiếng Việt Nhƣ chƣơng trình minh họa cho nhận dạng ký tự viết tay tiếng Việt trực tuyến đạt đƣợc mục tiêu toán phức đặt Nghiên cứu mạng nơron hƣớng nghiên cứu mẻ có nhiều hứa hẹn Với hƣớng tiếp cận áp dụng cho giải toán nhận dạng ký tự viết tay tiếng Việt trực tuyến vốn phức tạp đặc điểm: - Ký tự viết tay trực tuyến phải thêm phần tạo giao diện để vẽ ký tự, so với việc nhập đầu vào file ảnh ký tự viết tay - Ký tự viết tay hình dạng ký tự phong phú đa dạng phụ thuộc nhiều vào ngƣời viết, ngƣời có cách viết khác - Ký tự viết tay tiếng Việt có số lƣợng lớn, lớn nhiều so với ký tự theo chuẩn khác Ví dụ: chuẩn tiếng Việt có 89 ký tự gồm ký tự khơng dấu có dấu, chuẩn tiếng Anh gồm 26 ký tự không dấu Mặt khác ký tự lại giống nên dễ nhầm lẫn trình nhận dạng - Nhƣ giải toán phải đáp ứng đƣợc yêu cầu: - Giải đƣợc phức tạp việc xử lý liệu đầu vào - Giải đƣợc việc xử lý khối lƣợng liệu lớn - Giải đƣợc độ chuẩn xác trình nhận dạng - Giải đƣợc mức độ tổng quát, đa dạng, phong phú trình xây dựng huấn luyện mạng để đạt đƣợc độ xác cao nhận dạng Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 64 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Những kết mà luận văn đạt đƣợc Về mặt lý thuyết Tìm hiểu thành phần kiểu kiến trúc mạng nơron, phân biệt đƣợc số loại mạng nơron Nắm đƣợc ý nghĩa việc học hay tích luỹ, có vai trị to lớn quy tắc học, mơ hình học thuật toán học nhiều khả ứng dụng khác Tìm hiểu ứng dụng mạng nơron thực tế Nắm đƣợc kiến thức mơ hình mạng nơron Kohonen cách xây dựng mơ hình mạng nơron thực tế Nắm đƣợc quy trình chung xây dựng hệ thống nhận dạng ký tự viết tay tiếng Việt trực tuyến Vận dụng mạng nơron Kohonen để xây dựng mô nhận dạng ký tự viết tay tiếng Việt rời rạc trực tuyến Về mặt thực tiễn Đƣa phƣơng pháp xử lý với ký tự viết tay tiếng Việt rời rạc, xây dựng thành công hệ thống nhận dạng ký tự viết tay tiếng Việt rời rạc sử dụng mơ hình mạng nơron Perceptron Kohonen Xây dựng đƣợc chƣơng trình minh họa Tuy biết điều thu nhận đƣợc phần nhỏ ngành nghiên cứu lớn, tự nhận thấy gặt hái đƣợc thành công định giai đoạn nghiên cứu Hƣớng phát triển Bên cạnh kết đạt đƣợc, có vấn đề chƣa đƣợc luận văn giải hay đề cập tới Trong thời gian tới tiếp tục nghiên cứu hoàn thiện đề tài với mục tiêu đƣợc đặt nhƣ sau: - Nâng cao hiệu độ xác hệ thống nhận dạng ký tự viết tay rời rạc tiếng Việt trực tuyến - Xây dựng đƣợc hệ thống nhận dạng chữ viết tay tiếng Việt sử dụng mạng nơron Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 65 TÀI LIỆU THAM KHẢO Tiếng việt Nguyễn Tân Ân, Bài giảng mạng nơron, Đại học Sƣ Phạm Hà Nội, 2011 Ngô Quốc Tạo, Phạm Văn Hùng, Xây dựng tham số cho mạng nơron lan truyền ngược, Kỷ yếu hội thảo Quốc gia, Thái Ngun, 8-2003 Nguyễn Đình Thúc, Trí tuệ nhân tạo Mạng nơron phương pháp & ứng dụng, Nhà xuất Giáo Dục, 2000 Ngô Quốc Tạo, Nghiên cứu phương pháp nhận dạng chữ viết tay hạn chế trực tuyến, Đề tài nghiên cứu sở mã số CS04.09 Viện CNTT, 2004 Lê Nam Quang 2010, Ứng dụng mạng neural nhận dạng kí tự, Luận văn tốt nghiệp, Trƣờng Đại học Bách Khoa Hà Nội, 2010 Lƣơng Mạnh Bá, Nguyễn Thanh Thủy , Nhập môn xử lý ảnh số, Nhà xuất khoa học kỹ thuật, Hà Nội, 1999 Ngô Xuân Bách , Ứng dụng mơ hình mạng nơron nhận dạng ký tự viết tay rời rạc hạn chế trực tuyến Tablet PC, Khóa luận tốt nghiệp đại học, Đại học Cơng Nghệ, Đại học quốc gia Hà Nội, 2006 Tiếng Anh Hangan M.T., Demuth H.B., Beal M., Neuron networks design, PWS Publishing Company, Boston, Ma, 1996 Haykin, S., Neural networks, a comprehensive foundation, Macmillan New York, Ny 1994 10 Ooyen A V., Nienhuis B., Improving the Convergence of the BackPropagation algorithm, Neural Networks, Vol 5, p 465-471, 1992 11 Artificial neural network - From Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Artificial_neural_network 12 Anand Venkataraman, The Backpropagation Algorithm http://www.speech.sri.com/people/anand/771/html/node37.html 13 Christos Stergiou and Dimitrios Siganos, Neural Networks http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/report.html Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 66 14 Daniel T.Larose , Discovering Knowledge in Data An Introduction to Data Mining, Wiley Interscience, United States of American, 2004 15 Dave Anderson and George McNeill Artificial Neural Networks Technology Prepared for Rome Laboratory RL/C3C Griffiss AFB, NY 13441-5700, Kaman Sciences Corporation 258 Genesse Street Utica, New York 135024627, 1992 16 Jeff Heaton Introduction to Neural Networks with Java, Heaton Research, Inc, United States of American, 2005 17 Neural network - From Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Neural_network 18 Nikola K Kasabov Foundations of Neural Networks, Fuzzy Systems, and Knowledge Engineering, Massachusetts Institute of Technology, The MIT Press, United States of America, 1998 19 R.M Hristev, The ANN Book, GNU public license, 1998 20 Simon Haykin Neural Networks Comprehensive Foundation, Second edition, Prentice Hall, Indian by Sai printoPack Pvt Ltd, 1998 21 Wang J., Jean J.S.N Multi-Resolution Neural Network for Omnifont Character Recognition, IEEE International Conference on Neural Network, 1993 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ... Ý, Ỳ} Nhận dạng chữ viết tay đƣợc chia thành hai lớp toán lớn nhận dạng chữ viết tay trực tuyến (online) nhận dạng chữ viết tay ngoại tuyến (offline) Trong nhận dạng chữ viết tay ngoại tuyến, ... khiển robot, Trong toán nhận dạng này, nhận dạng chữ viết toán đƣợc ứng dụng phổ biến Nhận dạng chữ viết bao gồm hai kiểu nhận dạng chữ in nhận dạng chữ viết tay Cho đến toán nhận dạng chữ in đƣợc... 2: Ứng dụng mạng nơron nhận dạng chữ viết tay trực tuyến Giới thiệu nhận dạng, toán nhận dạng, nhận dạng chữ viết tay tiếng Việt Phƣơng pháp nhận dạng chữ viết tay mạng nơron, phát biểu toán,