Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 73 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
73
Dung lượng
1,44 MB
Nội dung
LỜI CẢM ƠN Để hoàn thành đề tài có kiến thức nhƣ ngày hôm nay, em xin gửi lời cảm ơn đến ban Giám hiệu toàn thể thầy cô giáo khoa Công nghệ thông tin – Trƣờng đại học sƣ phạm Hà Nội tận tình giảng dạy, truyền đạt kiến thức nhƣ kinh nghiệm quý báu cho em suốt trình học tập nghiên cứu trƣờng Em chân thành cảm ơn cô Ths Lƣu Thị Bích Hƣơng tận tình hƣớng dẫn quan tâm, động viên em trình thực khóa luận Em bày tỏ lòng biết ơn sâu sắc đến ngƣời thân gia đình, bạn bè động viên tạo điều kiện giúp em trình học tập nhƣ sống Mặc dù em cố gắng hoàn thành tốt khóa luận nhƣng tránh khỏi sai sót định, mong đƣợc thông cảm chia sẻ quý thầy cô bạn bè Em xin gửi lời chúc sức khỏe thành đạt tới tất quý thầy cô bạn Sinh viên thực ĐỖ THANH BA LỜI CAM ĐOAN Tên là: ĐỖ THANH BA Sinh viên lớp: K34-CNTT, Trƣờng ĐH Sƣ Phạm Hà Nội Tôi xin cam đoan: Đề tài “Nghiên cứu mạng nơron nhân tạo ứng dụng vào toán nhận dạng ảnh ký tự” kết nghiên cứu riêng tôi, dƣới hƣớng dẫn cô giáo Th.s LƢU THỊ BÍCH HƢƠNG tham khảo số nguồn tài liệu nƣớc nƣớc Internet Khóa luận hoàn toàn không chép từ tài liệu có sẵn Kết nghiên cứu không trùng với tác giả khác Nếu sai, xin hoàn toàn chịu trách nhiệm! Hà Nội, ngày 21 tháng năm 2012 Ngƣời cam đoan ĐỖ THANH BA Mục Lục LỜI CẢM ƠN LỜI CAM ĐOAN MỞ ĐẦU CHƢƠNG TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO 1.1 Giới thiệu mạng nơron 1.1.1 Lịch sử phát triển mạng nơron 1.1.2 Nơron sinh học 1.1.3 Nơron nhân tạo 10 1.1.4 Các thành phần nơron nhân tạo 12 1.1.5 Mạng nơron nhân tạo 15 1.2 Đơn vị xử lý 16 1.3 Hàm xử lý 17 1.3.1 Hàm kết hợp 17 1.3.2 Hàm kích hoạt (hàm chuyển) 18 1.4 Đặc trƣng mạng nơron 21 1.4.1 Tính phi tuyến 21 1.4.2 Tính chất tƣơng ứng đầu vào đầu 22 1.4.3 Tính chất thích nghi 22 1.4.4 Tính chất đƣa lời giải có chứng 22 1.4.5 Tính chất chấp nhận sai xót 23 1.4.6 Khả cài đặt VLSI (Very-large-scale-intergrated) 23 1.4.7 Tính chất đồng dạng phân tích thiết kế 23 1.5 Một số vấn đề mạng nơron 24 1.6 Ứng dụng mạng nơron 25 CHƢƠNG BIỂU DIỄN TRI THỨC BẰNG MẠNG NƠRON 27 2.1 Các kiến trúc mạng 27 2.1.1 Mạng tầng 27 2.1.2 Mạng đa tầng 29 2.2 Các hình trạng mạng 31 2.2.1 Mạng truyền thẳng 31 2.2.2 Mạng hồi quy 33 2.3 Xây dựng mạng nơron 34 2.4 Huấn luyện mạng nơron 35 2.4.1 Phƣơng pháp học 35 2.4.2 Thuật toán học 36 2.5 Thu thập liệu cho mạng nơron 42 2.6 Biểu diễn tri thức cho mạng nơron 44 CHƢƠNG XÂY DỰNG ỨNG DỤNG 47 3.1 Phát biểu toán 47 3.2 Giải toán 47 3.2.1 Xây dựng mạng nơron 47 3.2.2 Xử lý liệu (phân tích ảnh) 49 3.2.3 Huấn luyện mạng nơron 54 3.2.4 Nhận dạng ảnh kí tự 58 3.3 Bảng mã ASCII 60 3.4 Thực nghiệm 61 3.4.1 Giao diện chƣơng trình 61 3.4.2 Thực nghiệm trình tính giá trị số tham số đầu vào 63 3.4.3 Thực nghiệm huấn luyện mạng 66 3.4.4 Thực nghiệm nhận dạng 68 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 72 TÀI LIỆU THAM KHẢO 73 MỞ ĐẦU Mục đích, lý chọn đề tài 1.1 Lý chọn đề tài Cuối kỉ XX, đầu kỉ XXI Công nghệ thông tin lĩnh vực thiếu sống ngày đại ngƣời Không phủ nhận vai trò quan trọng máy tính nghiên cứu khoa học kỹ thuật nhƣ đời sống Càng ngày có nhiều ngƣời tự hỏi, liệu máy tính có khả suy nghĩ nhƣ ngƣời hay chƣa? Chúng ta không trả lời câu hỏi Thay vào đó, nêu khác biệt chủ yếu cách làm việc máy tính óc ngƣời Một máy tính, dù có mạnh đến đâu nữa, phải làm việc theo chƣơng trình xác đƣợc hoạch định trƣớc chuyên gia Bài toán phức tạp việc lập trình công phu Trong ngƣời làm việc cách học tập rèn luyện, làm việc ngƣời có khả liên tƣởng, kết nối việc với việc khác, quan trọng hết, họ sáng tạo Do có khả liên tƣởng, ngƣời dễ dàng làm nhiều điều mà việc lập trình cho máy tính đòi hỏi nhiều công sức Từ lâu nhà khoa học nhận thấy ƣu điểm óc ngƣời tìm cách bắt chƣớc để thực máy tính, tạo cho có khả học tập, nhận dạng phân loại Mạng nơron nhân tạo đời từ nỗ lực Nó thực đƣợc ý nhanh chóng trở thành hƣớng nghiên cứu đầy triển vọng mục đích xây dựng máy thông minh tiến gần tới trí tuệ ngƣời Chính em chọn đề tài: “Nghiên cứu mạng nơron nhân tạo ứng dụng vào toán nhận dạng ảnh ký tự” với mục đích chuyển đổi ảnh văn thành văn sửa đổi đƣợc máy vi tính 1.2 Mục đích Mục đích đề tài nghiên cứu tạo nguồn tài liệu sở lĩnh vực nhận dạng ký tự, từ có nhìn tổng quan phƣơng thức thực hay vấn đề gặp phải toán nhận dạng ký tự, kích thích đam mê khả nghiên cứu khoa học sinh viên nhằm phát triển đƣợc nhiều ứng dụng thực tiễn liên quan tới ký tự chữ in nhƣ: Nhận dạng CMTND, hộ chiếu, biển số xe Nhiệm vụ, yêu cầu 2.1 Nhiệm vụ - Nghiên cứu lý thuyết nhận dạng - Nghiên cứu khái niệm thành phần mạng nơron Tập trung nghiên cứu mạng perceptron nhiều lớp MLP (MultiLayer Perceptron) loại mạng truyền thẳng điển hình, đƣợc sử dụng rộng rãi hệ thống nhận dạng nhƣ nhận dạng ảnh ký tự, chữ viết tay, nhận dạng tiếng nói… - Nghiên cứu ngôn ngữ c# để tiến hành cài đặt chƣơng trình nhận dạng ảnh ký tự 2.2 Yêu cầu - Xây dựng chƣơng trình nhận dạng ảnh ký tự mạng nơron nhân tạo Phƣơng pháp nghiên cứu - Phƣơng pháp nghiên cứu chủ yếu tham khảo tài liệu, viết liên quan tới nhận dạng ký tự quang học - Tìm nguồn tài liệu Internet, sách báo liên quan - Phƣơng pháp thực nghiệm Đối tƣợng, phạm vi nghiên cứu 4.1 Đối tƣợng nghiên cứu - Mạng nơron nhân tạo, đề tài tập trung nghiên cứu trình xây dựng mạng, xử lý liệu (phân tích ảnh), huấn luyện mạng nơron nhận dạng mạng nơron 4.2 Phạm vi nghiên cứu - Trong phạm vi đề tài giới thiệu tổng quan lý thuyết mạng nơron ứng dụng mạng Perceptron nhiều lớp lan truyền ngƣợc sai số để thiết kế chƣơng trình nhận dạng ảnh ký tự - Huấn luyện mạng nơron sử dụng phƣơng pháp học: học có giám sát Ý nghĩa thực tiễn đề tài Nếu đề tài “Nghiên cứu mạng nơron nhân tạo ứng dụng vào toán nhận dạng ảnh ký tự” đƣợc hoàn thành đƣợc ứng dụng thực tiễn vào việc nhận dạng ký tự file ảnh tài liệu đƣợc tạo từ thiết bị thu nhận ảnh nhƣ máy scanner,máy ảnh Cấu trúc khóa luận Ngoài mở đầu kết luận, khóa luận bao gồm ba chƣơng: Chƣơng 1: Tổng quan mạng nơron nhân tạo Chƣơng 2: Biểu diễn tri thức mạng nơron Chƣơng 3: Xây dựng ứng dụng CHƢƠNG TỔNG QUAN VỀ MẠNG NƠRON NHÂN TẠO 1.1 Giới thiệu mạng nơron 1.1.1 Lịch sử phát triển mạng nơron Mạng nơron nhân tạo đƣợc xây dựng từ năm 1940 nhằm mô số chức não ngƣời Dựa quan điểm cho não ngƣời điều khiển Mạng nơron nhân tạo đƣợc thiết kế tƣơng tự nhƣ nơron sinh học có khả giải hàng loạt toán nhƣ tính toán tối ƣu, điều khiển, công nghệ robot… Quá trình nghiên cứu phát triển nơron nhân tạo chia thành giai đoạn nhƣ sau: - Giai đoạn 1: Có thể tính từ nghiên cứu William (1890) tâm lý học với liên kết nơron thần kinh Năm 1940 Mc Culloch Pitts cho biết nơron mô hình hoá nhƣ thiết bị ngƣỡng (Giới hạn) để thực phép tính logic mô hình mạng nơron Mc Culloch Pitts với giải thuật huấn luyện mạng Hebb đời năm 1943 - Giai đoạn 2: Vào khoảng gần năm 1960, số mô hình nơron hoàn thiện đƣợc đƣa nhƣ: Mô hình Perceptron Rosenblatt (1958), Adalile Widrow (1962) Trong mô hình Perceptron đƣợc quan tâm nguyên lý đơn giản, nhƣng có hạn chế nhƣ Marvin Minsky Seymour papert MIT (Massachurehs Insritute of Technology) chứng minh không dùng đƣợc cho hàm logic phức (1969) Còn Adaline mô hình tuyến tính, tự chỉnh, đƣợc dùng rộng rãi điều khiển thích nghi, tách nhiễu phát triển - Giai đoạn 3: Vào khoảng đầu thập niên 80 Những đóng góp lớn cho mạng nơron giai đoạn phải kể đến Grossberg, Kohonen, Rumelhart Hopfield Trong đóng góp lớn Hopfield gồm hai mạng phản hồi: Mạng rời rạc năm 1982 mạng liên tục năm 1984 Đặc biệt, ông dự kiến nhiều khả tính toán lớn mạng mà nơron khả Cảm nhận Hopfield đƣợc Rumelhart, Hinton Williams đề xuất thuật toán sai số truyền ngƣợc tiếng để huấn luyện mạng nơron nhiều lớp nhằm giải toán mà mạng khác không thực đƣợc Nhiều ứng dụng mạnh mẽ mạng nơron đời với mạng theo kiểu máy Boltzmann mạng Neocognition Fukushima - Giai đoạn 4: Tính từ năm 1987 đến nay, hàng năm giới mở hội nghị toàn cầu chuyên ngành nơron IJCNN (International Joit Conferenceon Neural Networks) Rất nhiều công trình đƣợc nghiên cứu để ứng dụng mạng nơron vào lĩnh vực nhƣ: Kỹ thuật tính, điều khiển, toán tối ƣu, y học, sinh học, thống kê, giao thông, hoá học Cho đến mạng nơron tìm khẳng định đƣợc vị trí nhiều ứng dụng khác 1.1.2 Nơron sinh học Hệ thần kinh gồm hai lớp tế bào: Nơron (tế bào thần kinh) glia (tế bào glia) Nơron thành phần hệ thần kinh, chúng có chức xử lý thông tin Glia thực chức hỗ trợ Vì trƣớc nghiên cứu nơron nhân tạo trình bày khái quát cấu tạo hoạt động nơron sinh học Nơron sinh học có nhiều loại, chúng khác kích thƣớc khả thu phát tín hiệu Tuy nhiên chúng có cấu trúc nguyên lý hoạt động chung nhƣ sau: Mỗi nơron sinh học gồm có thành phần: Thân nơron với nhân bên (soma), đầu dây thần kinh (axon) hệ thống phân nhánh hình (Dendrite) để nhận thông tin vào Trong thực tế có nhiều dây thần kinh vào chúng bao phủ diện tích lớn (0,25mm2) Đầu dây thần kinh đƣợc rẽ nhánh nhằm chuyển giao tín hiệu từ thân nơron tới nơron khác Các nhánh đầu dây thần kinh đƣợc nối với khớp thần kinh (synapse) Các khớp thần kinh đƣợc nối với thần kinh vào nơron khác Các nơron sửa đổi tín hiệu khớp Hình ảnh đơn giản nơron thể hình 1.1 Hình 1.1: Mô hình nơron sinh học Hoạt động nơron sinh học đƣợc mô tả nhƣ sau: Mỗi nơron nhận tín hiệu vào từ tế bào thần kinh khác Chúng tích hợp tín hiệu vào, tổng tín hiệu vƣợt ngƣỡng chúng tạo tín hiệu gửi tín hiệu tới nơron khác thông qua dây thần kinh Các nơron liên kết với thành mạng Mức độ bền vững liên kết xác định hệ số gọi trọng số liên kết 1.1.3 Nơron nhân tạo Nơron nhân tạo đơn vị tính toán có nhiều đầu vào đầu ra, đầu vào đến từ liên kết Đặc trƣng nơron hàm kích hoạt phi tuyến chuyển đổi tổ hợp tuyến tính tất tín hiệu đầu vào thành tín hiệu đầu Hàm kích hoạt đảm bảo tính chất phi tuyến cho tính toán mạng nơron 10 BẮT ĐẦU Phân tích dòng ảnh Dòng Ánh xạ kí tự tới vector Tính toán đầu Chuyển từ Unicode sang kí tự Hết kí tự Kí tự dòng ? Hết dòng Dòng ? KẾT THÚC 59 Hình 3.8: Sơ đồ khối trình nhận dạng kí tự Thuật toán: Nạp file ảnh Phân tích ảnh cho dòng kí tự Với dòng tách kí tự liên tiếp Phân tích xử lý ảnh kí tự cho việc ánh xạ vào vectơ đầu vào Đƣa giá trị vecto đầu vào cho mạng nơron tính toán giá trị đầu Chuyển đổi mã Unicode đầu từ nhị phân tới kí tự tƣơng ứng trả dƣới dạng textbox 3.3 Bảng mã ASCII Trong đề tài sử dụng mã Unicode gồm 256 mã đƣợc mã hóa 16 bit Đây lý mà số nơron đầu 16 nơron, tƣơng ứng với 16 bit mã Unicode Dƣới bảng 3.1 số mã ASCII sử dụng trình thực nghiệm: Kí Mã Mã tự thập Hexa Kí tự phân Mã Mã thập Hexa Kí tự phân Mã Mã thập Hexa phân A 65 41 V 86 56 q 113 71 B 66 42 W 87 57 r 114 72 C 67 43 X 88 58 s 115 73 D 68 44 Y 89 59 t 116 74 E 69 45 Z 90 5A u 117 75 F 70 46 a 97 61 v 118 76 G 71 47 b 98 62 w 119 77 60 H 72 48 c 99 63 x 120 78 I 73 49 d 100 64 y 121 79 J 74 4A e 101 65 z 122 7A K 75 4B f 102 66 48 30 L 76 4C g 103 67 49 31 M 77 4D h 104 68 50 32 N 78 4E i 105 69 51 33 O 79 4F j 106 6A 52 34 P 80 50 k 107 6B 53 35 Q 81 51 l 108 6C 54 36 R 82 52 m 109 6D 55 37 S 83 53 n 110 6E 56 38 T 84 54 o 111 6F 57 39 U 85 55 p 112 70 Bảng 3.1: Một số mã sử dụng trình thực nghiệm 3.4 Thực nghiệm 3.4.1 Giao diện chƣơng trình 3.4.1.1 Giao diện chƣơng trình 61 Hình 3.9: Giao diện chương trình 3.4.1.2 Giao diện trình huấn luyện mạng Hình 3.10: Giao diện trình huấn luyện mạng 3.4.1.3 Giao diện trình nhận dạng ảnh ký tự 62 Hình 3.11: Giao diện trình nhận dạng ảnh ký tự 3.4.2 Thực nghiệm trình tính giá trị số tham số đầu vào 3.4.2.1 Thực nghiệm tìm số lần lặp lại Quá trình tăng số lần lặp có sinh quan hệ tỷ lệ rõ ràng mạng Tuy nhiên trƣờng hợp cụ thể việc tăng số lần lặp có số hiệu ứng bất lợi nhiều số đƣa vào dẫn đến nhận dạng sai Từng phần riêng thuộc tính tham số tốc độ học Nó giới hạn tối ƣu mở rộng việc cập nhật kết trọng số trạng thái vòng tối ƣu Với việc tăng lặp lặp lại mạng thử lại tới trạng thái mong muốn tiếp tục quay lại Vì cần có số lần lặp tối ƣu với lỗi chấp nhận đƣợc Các giá trị khác số kí tự=124, tốc độ học=150, Sigmoid slope=0.014 63 300 Kiểu font 600 Số kí tự Tỉ lệ lỗi Số kí tự 900 Tỉ lệ lỗi Số kí tự Tỉ lệ lỗi lỗi (%) lỗi (%) lỗi (%) Arial 4.44 3.33 1.11 Tahoma 1.11 0 0 0 0 1.11 Time NewRoman Bảng 3.2: Thực nghiệm tìm số lần lặp Giá trị định cho số lần lặp 300 mạng nơron có đặc trƣng chấp nhận sai xót lại sử dụng số lần lặp lớn với số lƣợng nơron lớn tập huấn luyện lớn ta cần nhiều thời gian cho việc huấn luyện dẫn đến tốn chi phí huấn luyện 3.4.2.2 Thực nghiệm tìm đầu vào (số kí tự đƣa vào) Kích thƣớc trạng thái đầu vào ảnh hƣởng tới trình thực thi Nó tự nhiên, nhiều giá trị kí tự đầu vào thiết lập mạng phụ thuộc vào trình huấn luyện dễ bị mắc lỗi Thông thƣờng phức tạp tập hợp đầu vào lớn cần mô hình mạng lớn với nhiều số lần lặp lại Cho tập hợp 120 đến 150 kí tự ta cần có mô hình mạng với lớp ẩn có 500 nơron Các giá trị khác số lần lặp=300, tốc độ học=150, Sigmoid slope=0.014 64 50 Kiểu font 90 Số kí tự 124 Tỉ lệ lỗi Số kí tự Tỉ lệ lỗi Số kí tự lỗi (%) Arial 0 0.044 0.048 Tahoma 0 0.022 0.032 0 0.022 0.032 Time NewRoman lỗi lỗi Tỉ lệ lỗi (%) (%) Bảng 3.3: Thực nghiệm tìm số kí tự Giá trị định cho số kí tự đƣa vào 120 đến 160 với số lƣợng 50 hay 90 ký tự hết ký tự đƣợc sử dụng vấn đề lâu dài tập 256 ký tự bảng mã ASCII 3.4.2.3 Thực nghiệm tìm tham số tốc độ học Sự thay đổi tham số tốc độ học ảnh hƣởng tới thi hành mạng cho số lần lặp định sẵn Giảm giá trị tham số này, mạng cập nhật lại trọng số Nó làm giảm khả học khó cập nhật liên kết chậm hơn, tăng số lần lặp để đạt giá trị tối ƣu Vì cần giá trị tối ƣu cho thi hành mạng Các giá trị khác số kí tự=124, số lần lặp=300, Sigmoid slope=0.014 Theo kết bảng 3.4, giá trị tối ƣu định cho tham số tốc độ học 150 sử dụng giá trị 50 hay 100 mạng học lâu độ xác không cao giá trị khác cho kết tƣơng tự 50 Kiểu font 100 Số kí tự Tỉ lệ lỗi lỗi (%) lỗi Arial 82 91.11 Tahoma 56 77 Time NewRoman 150 Số kí tự Tỉ lệ lỗi Số kí tự Tỉ lệ lỗi (%) lỗi (%) 18 20 3.33 62.22 11 12.22 1.11 85.56 15 16.67 0 Bảng 3.4: Thực nghiệm tìm tốc độ học 65 3.4.3 Thực nghiệm huấn luyện mạng Nhƣ biết có nhiều yếu tố ảnh hƣởng tới trình huấn luyện mạng nhƣ là: đa dạng đầu vào: kích thƣớc, phong cách… Một điều cần thiết chuẩn bị trình tự ảnh kí tự đầu vào file ảnh đơn giản (*.bmp [bitmap] mở rộng), tƣơng ứng với kí tự file văn (*.cts [character trainer set] mở rộng) lƣu trữ hai file thƣ mục (cả hai file tên nhƣng khác phần mở rộng) Ứng dụng cung cấp cho ngƣời dùng hộp thoại lựa chọn đƣờng dẫn tới vị trí file văn *.cts đƣa file ảnh tƣơng ứng với Trong khóa luận số tham số đƣợc lựa chọn sau: Tốc độ học = 150 Hệ số góc Sigmoid = 0.014 Trọng số kết nối sở = 30 Số lần lại 300-600 tùy độ phức tạp loại font Trung bình ngƣỡng lỗi = 0.0002 Mẫu dùng trình thực nghiệm huấn luyện: Ảnh đầu vào: Hình 3.12: Ảnh đầu dùng để huấn luyện Đầu mong muốn: 66 ABCDEFGHlJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 ~!@#$%^&*()-+=\{}[]:’;,.? Hình 3.13: File đầu mong muốn Kết huấn luyện: Sau huấn luyện xong lƣu lại kết vào thƣ mục “Mang” với *.ann để nhận dạng ta đƣa giá trị vào mạng nơron Dƣới dây hình 3.14 ví dụ giá trị trọng số file sau huấn luyện Ung Dung Mang Nơron Trong Nhan Dang Ky Tu- Do Thanh Ba –DHSP2 Network Name = Arial8 Hidden Layer Size = 500 Number of Patterns= 124 Number of Epochs = 300 Learning Rate = 150 Sigmoid Slope = 0.014 Weight Bias = 30 Weight[1 , , 0] = -75.64764 Weight[1 , , 1] = 165.6839 Weight[1 , , 2] = -315.9442 Weight[1 , , 3] = 20.66214 Weight[1 , , 4] = -100.0667 Weight[1 , , 5] = 211.1713 Weight[1 , , 6] = 133.3773 Hình 3.14: Kết sau huấn luyện 67 Nhận xét trình huấn luyện : Đối với font Arial có: I Hình 3.15a: chữ “I_ hoa” mã 48h l Hình 3.15b: chữ “l_thƣờng” mã 6Ch Đối với trình huấn luyện ta cần ý nhiều vào font Arial nhƣ hình 3.15a hình 3.15b chữ “I_Hoa”mã 49h chữ “l_Thƣờng ” mã 6Ch tách kí tự, chia lƣới đƣa kết vào mạng làm cho mạng không phân biệt đƣợc hai kí tự dẫn đến sau nhận dạng sai Phƣơng pháp cần tăng số lần lặp cho trình huấn luyện 3.4.4 Thực nghiệm nhận dạng Để thực nhận dạng kí tự tiến hành bƣớc sau: Đƣa giá trị huấn luyện vào mạng Đƣa ảnh cần nhận dạng vào Ghi lại kết nhận dạng đƣợc Một số ảnh kết nhận dạng đƣợc Ảnh đầu vào: 68 Hình 3.16a: Ảnh font Arial Kết thu đƣợc: ABCDEFGHlJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 ~!@#$%^&*()-+=\{}[]:’;,.? Hình 3.16b: Kết thu font Arial Ảnh đầu vào: Hình 3.17a : Ảnh font Tahoma 69 Kết thu đƣợc: ABCDEFGHlJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 ~!@#$%^&*()-+=\{}[]:’;,.? Hình 3.17b: Kết thu font Tahoma Nhận xét trình nhận dạng kí tự: Chƣơng trình thực nghiệm đƣợc huấn luyện nhận dạng hai loại font: Arial Tahoma với nhiều kích thƣớc khác đạt đƣợc kết tốt, nhƣng số tồn cần đƣợc phát triển để đạt kết cao Đối với trình huấn luyện ta cần ý nhiều font Arial nhƣ nói hình 3.15a hình 3.15b chữ “I_Hoa”mã 49h chữ “l_Thƣờng ” mã 6Ch tách kí tự, chia lƣới đƣa kết vào mạng làm cho mạng không phân biệt đƣợc hai kí tự dẫn đến sau nhận dạng sai Phƣơng pháp cần tăng số lần lặp cho trình huấn luyện Ngoài số trƣờng hợp ảnh hai kí tự nằm chéo nhƣ số trƣờng hợp sau: 70 Nó dẫn đến trình tách kí tự bị dính dó nhận dạng sai Đối với trƣờng hợp ta cần phát triển phƣơng pháp tách để tách kí tự Trong trình thực nghiệm nhận dạng ảnh kí tự ta thấy kí tự sai trình huấn luyện mạng chƣa học đƣợc kí tự ảnh nhận dạng bị nhận dạng sai Chỉ có số trình tách kí tự 71 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Trong thời gian vừa qua, em nghiên cứu mạng nơron nhân tạo thu đƣợc nội dung sau: Tìm hiểu mạng nơron nhân tạo Tìm hiểu toán nhận dạng Mô tả toán ứng dụng mạng nơron nhận dạng kí tự Phân tích cụ thể toán nhận dạng Thiết kế mạng huấn luyện mạng nơron cho toán “ứng dụng mạng nơron nhận dạng ảnh kí tự” Cài đặt kiểm tra thực nghiệm toán Nhận dạng kí tự phần quan trọng lĩnh vực nhận dạng nói riêng xử lý ảnh nói chung Cùng với việc sử dụng công cụ mạng nơron lĩnh vực cần đƣợc phát triển Trong khóa luận dừng phần thử nghiệm số loại font: Arial, Tohato, Time NewRoman, kích thƣớc: 8,12,14 Hƣớng phát triển đề tài tƣơng lai: Nâng cao hiệu độ xác việc nhận dạng kí tự Mở rộng thêm nhiều loại font chữ Mở rộng cỡ chữ đặc biệt cỡ chữ dùng nhiều văn Phát triển thêm chức hay mô đun cho thiết bị cầm tay 72 TÀI LIỆU THAM KHẢO MathNeuralNetworks Ben Krose, faculty of Mathematics and computer science, university of Amsterdam And Patrick van der smagt, institute of robotics and system dynamics German aerospase Reseach establishment Artificial Neural Networks and Information theory, colin Fyfe, department of computing and information system, the university of Paisley A Growth Algorithm for Neural Networks Decision Trees Mostefa golea and Mario Marchand, Deparment of physics, university of Ottawa Canada Artificial neural network From Wikipedia, the free encyclopedia Neural network From Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Non-linear http://www.codeproject.com/ 73 [...]... bớt một vài nơron ra khỏi tầng ẩn Khi đã tìm đƣợc một kiến trúc mạng tƣơng đối tốt lấy mẫu lại tập dữ liệu và huấn luyện lại để tìm các mạng mới 1.6 Ứng dụng của mạng nơron Kể từ khi ra đời và phát triển mạng nơron đã đƣợc ứng dụng trong rất nhiều lĩnh vực Do vậy, liệt kê đƣợc tất cả các ứng dụng của mạng nơron là không thực tế Tuy nhiên, ta có thể đƣa ra một số ứng dụng điển hình của mạng nơron nhƣ... trong mạng nơron 3 tầng nhƣ hình 2.3 Hình 2.3: Cấu trúc mạng nơron 3 lớp Nhƣ đã thấy, có R đầu vào, S 1 nơron ở tầng thứ nhất, S 2 nơron ở tầng thứ hai, S 3 nơron ở tầng thứ ba, v.v Nhƣ đã chú ý, những tầng khác nhau có thể có số lƣợng nơron khác nhau Đầu ra của các tầng 1 và 2 là đầu vào của tầng 2 và tầng 3 Vì vậy tầng 2 có thể đƣợc xem nhƣ mạng nơron một tầng với đầu vào R= S 1 , nơron S= S 2 , và. .. lý thuyết và các thuật toán học trong nhiều ứng dụng khác nhau của mạng nơron 23 Các mạng tổ hợp (modular) có thể đƣợc xây dựng thông qua một sự tích hợp các mô hình khác nhau 1.5 Một số vấn đề của mạng nơron Khi xây dựng một ứng dụng mạng nơron chúng ta cần quan tâm một số vấn đề sau: Vấn đề về kiến trúc mạng nơron: nơron nào nối với nơron nào? Đây chính là sự lựa chọn mô hình của mạng nơron Nó sẽ... = f( wy+b) Đầu vào Hình 1.2: Mô hình một nơron nhân tạo Một nơron đƣợc cầu tạo gồm các thành phần chính: liên kết nơron, bộ cộng, hàm kích hoạt Liên kết nơron là một thành phần của mạng nơron nhận tạo để liên kết giữa các nơron, nó nối đầu ra của nơron lớp này với đầu vào của một nơron trong lớp khác Đặc trƣng của thành phần liên kết là một trọng số mà mỗi tín hiệu đi qua đều đƣợc nhân với trọng số... Xử lý ảnh, nhìn máy: Gồm trùng khớp ảnh, tiền xử lý ảnh, phân đoạn và phân tích ảnh, nén ảnh, Xử lý tín hiệu: Phân tích tín hiệu địa chấn và hình thái học Nhận dạng mẫu: Gồm việc tách các nét đặc biệt của mẫu, phân loại và phân tích tín hiệu của rada, nhận dạng và hiểu tiếng nói, nhận dạng vân tay, ký tự, chữ viết, Y học: Phân tích và hiểu tín hiệu điện tâm đồ, chuẩn đoán bệnh, xử lý ảnh y... trong nơron sinh học Trong cả hai trƣờng hợp (nhân tạo và sinh học), một số đầu vào quan trọng hơn những đầu vào khác do vậy chúng có ảnh hƣởng lớn hơn tới thành phần xử lý để rồi chúng kết hợp lại để tạo ra sự phản ứng của nơron (neural response) Các trọng số là những hệ số thích nghi bên trong một mạng, chúng xác định cƣờng độ (sức mạnh hay là sức ảnh hƣởng) của tín hiệu vào lên nơron nhân tạo Những... đƣợc điều chỉnh sao cho dáng điệu vào ra của mạng sẽ mô phỏng hoàn toàn phù hợp với môi trƣờng đang xem xét Mô hình mạng nơron đƣợc mô tả trong hình 1.3 Hình 1.3: Sơ đồ đơn giản về một mạng nơron nhân tạo Mô hình mạng nơron ở trên gồm 3 lớp: lớp nhập (input), lớp ẩn (hidden) và lớp xuất (output) Mỗi nút trong lớp nhập nhận giá trị của một biến độc lập và chuyển vào mạng 15 Dữ liệu từ tất cả các nút... vậy để xây dựng một mạng nơron ta xây dựng một đồ thị có hƣớng: số đỉnh của đồ thị bằng số nơron trong mạng, giá trị của các cạnh chính là trọng số liên kết nơron Ví dụ xây dựng một mạng nơron đơn giản: Đầu vào: Mạng nơron có số lớp (với số lớp>1) Mỗi lớp có số nơron trong một lớp (số nơron >=1) Trọng số w liên kiết nơron ngẫu nhiên trong khoảng (-a,a) Đầu ra: Mạng nơron nhân tạo Kiểu dữ liệu: chọn lƣu... thống nơron sinh học Trong tƣơng lai với sự phát triển mô phỏng nơron sinh học, chúng ta có thể có loại máy tính thông minh thật sự 26 CHƢƠNG 2 BIỂU DIỄN TRI THỨC BẰNG MẠNG NƠRON 2.1 Các kiến trúc mạng 2.1.1 Mạng một tầng Mạng một tầng với S nơron đƣợc minh họa trong hình 2.1, với mỗi một đầu vào trọng số R đầu vào sẽ đƣợc nối với từng nơron và ma trận trọng số sẽ có S hàng Hình 2.1: Cấu trúc mạng nơron. .. nơron nhân tạo Phần này mô tả một số thành phần cơ bản của một nơron nhân tạo Những thành phần này là giống nhau cho dù nơron đó dùng trong tầng vào, tầng ra hay là ở trong tầng ẩn Thành phần 1 Các nhân tố trọng số: Một nơron thƣờng nhận nhiều đầu vào cùng lúc Mỗi đầu vào có trọng số liên quan của riêng nó, trọng số này giúp cho đầu vào có ảnh hƣởng cần thiết lên hàm tổng của đơn vị xử lý (thành phần ... tài Nghiên cứu mạng nơron nhân tạo ứng dụng vào toán nhận dạng ảnh ký tự đƣợc hoàn thành đƣợc ứng dụng thực tiễn vào việc nhận dạng ký tự file ảnh tài liệu đƣợc tạo từ thiết bị thu nhận ảnh. .. đề tài: Nghiên cứu mạng nơron nhân tạo ứng dụng vào toán nhận dạng ảnh ký tự với mục đích chuyển đổi ảnh văn thành văn sửa đổi đƣợc máy vi tính 1.2 Mục đích Mục đích đề tài nghiên cứu tạo nguồn... tính đƣa vào mạng nơron Đƣa vào mạng nơron tính giá trị đầu Hiển thị kí tự mã Unicode thu đƣợc 3.2 Giải toán Các bƣớc giải toán sử dụng mạng nơron nhận dạng ảnh ký tự: Xây dựng mạng, xử lý