NGHIÊN CỨU ÁP DỤNG KỸ THUẬT HỌC SÂU (DEEP LEARNING) CHO BÀI TOÁN NHẬN DẠNG KÝ TỰ LATINH_2

57 492 5
NGHIÊN CỨU ÁP DỤNG KỸ THUẬT HỌC SÂU (DEEP LEARNING) CHO BÀI TOÁN NHẬN DẠNG KÝ TỰ LATINH_2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 BỘ GIAO THÔNG VẬN TẢI BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM CN TRẦN QUYẾT CƯỜNG NGHIÊN CỨU ÁP DỤNG KỸ THUẬT HỌC SÂU (DEEP LEARNING) CHO BÀI TOÁN NHẬN DẠNG TỰ LATINH LUẬN VĂN THẠC SĨ KỸ THUẬT HẢI PHÒNG - 2016 Footer Page - Footer Page - kho luan van - tai lieu - 123doc- tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 BỘ GIAO THÔNG VẬN TẢI BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM CN TRẦN QUYẾT CƯỜNG NGHIÊN CỨU ÁP DỤNG KỸ THUẬT HỌC SÂU (DEEP LEARNING) CHO BÀI TOÁN NHẬN DẠNG TỰ LATINH LUẬN VĂN THẠC SĨ KỸ THUẬT NGÀNH: CÔNG NGHỆ THÔNG TIN MÃ SỐ: 60480201 CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN Người hướng dẫn khoa học: TS Hồ Thị Hương Thơm HẢI PHÒNG - 2016 Footer Page - Footer Page - kho luan van - tai lieu - 123doc- tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 LỜI CAM ĐOAN Học viên xin cam đoan công trình nghiên cứu riêng hướng dẫn khoa học TS Hồ Thị Hương Thơm Các nội dung nghiên cứu, kết nêu luận văn xác thực chưa công bố cơng trình khác Các thơng tin sử dụng luận văn có sở nguồn gốc rõ ràng Học viên xin hoàn toàn chịu trách nhiệm tính xác thực nguyên luận văn Hải Phòng, ngày tháng năm 2016 Học viên Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai i luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 LỜI CẢM ƠN Trong trình hồn thành luận văn, thầy trường Đại học Hàng hải Việt Nam giúp đỡ tạo điều kiện cho học viên nhiều Học viên xin gửi lời cảm ơn chân thành đến thầy cô khoa Công nghệ thông tin, Viện Đào tạo sau Đại học đặc biệt TS Hồ Thị Hương Thơm bảo, hướng dẫn học viên thực đề tài: “Nghiên cứu áp dụng kỹ thuật học sâu (Deep Learning) cho toán nhận dạng tự Latinh” Học viên muốn gửi lời cảm ơn sâu sắc đến gia đình, bạn bè động viên, giúp đỡ suốt q trình nghiên cứu, học tập hồn thiện đề tài Bước đầu làm quen với công tác nghiên cứu khoa học nhiều bỡ ngỡ hạn chế kiến thức kinh nghiệm nên không tránh khỏi thiếu sót định Rất mong nhận góp ý thầy, bạn để đề tài hoàn thiện Xin chân thành cảm ơn! Footer Page - Footer Page - kho luan van - tai lieu - 123docii tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC CÁC CHỮ VIẾT TẮT VÀ HIỆU v DANH MỤC CÁC BẢNG vi DANH MỤC CÁC HÌNH vii LỜI MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ HỌC MÁY VÀ NHẬN DẠNG 1.1 Học máy (Machine learning) 1.1.1 Khái niệm 1.1.2 Phân loại 1.2 Nhâ ̣n da ̣ng 10 1.2.1 Nhận dạng 10 1.2.2 Nhận dạng tự quang học 11 CHƯƠNG 2: KỸ THUẬT HỌC SÂU CHO BÀI TOÁN NHẬN DẠNG TỰ LATINH 14 2.1 Mạng nơ-ron nhân tạo 14 2.1.1 Perceptron sigmoid 14 2.1.2 Kiến trúc mạng nơ-ron 17 2.1.3 Quá trình xử lý thông tin ANN 18 2.1.4 Quá trình học (Learning Processing) ANN 20 2.1.5 Giao thức huấn luyện (Training protocols) 21 2.2 Mạng nơ-ron xoắn 22 2.2.1 Trường tiếp nhận cục 23 Footer Page - Footer Page - kho luan van - tai lieu - 123dociii tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 2.2.2 Trọng số chung định hướng 25 2.2.3 Lớp tổng hợp 28 2.3 Áp dụng phương pháp học sâu vào nhận dạng tự Latinh 30 2.3.1 Cơ sở liệu 30 2.3.2 Quá trình nhận dạng 30 CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH, CÀI ĐẶT, THỬ NGHIỆM VÀ ĐÁNH GIÁ 37 3.1 Xây dựng chương trình 37 3.1.1 Yêu cầu phần cứng 37 3.1.2 Ngơn ngữ cơng cụ lập trình 38 3.1.3 Chương trình demo 39 3.2 Thử nghiệm đánh giá kết 43 3.2.1 Thử nghiệm 43 3.2.2 Đánh giá kết 45 KẾT LUẬN 47 TÀI LIỆU THAM KHẢO 48 Footer Page - Footer Page - kho luan van - tai lieu - 123dociv tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 DANH MỤC CÁC CHỮ VIẾT TẮT VÀ HIỆU Giải thích Chữ viết tắt SVM Support Vector Machine HAC Hierarchical Agglomerative Clustering SOM Self-Organizing Map TSVM Transductive Support Vector Machine EM Expectation Maximization LLSF Linear Least Square Fit KNN K-Nearest Neighbours NB Naive Bayes DT Decision Tree MDP Markov Decision Process CAP Credit Assignment Path DNN Deep Neural Network OCR Optical Character Recognition ICR Intelligent Character Recognition ANN Artificial Neural Network IPA Integrity, Purposefulness, Adaptability GUI Graphical User Interface Footer Page - Footer Page - kho luan van - tai lieu - 123docv tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 DANH MỤC CÁC BẢNG Số bảng 3.1 3.2 3.3 Tên bảng Cấu hình tối thiểu Cấu hình đề nghị Kết thử nghiệm hai phương pháp Trang 37 38 44 Footer Page - Footer Page - kho luan van - tai lieu - 123docvi tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van of 95 DANH MỤC CÁC HÌNH Số hình Tên hình Trang 1.1 Quá trình nhận dạng đối tượng người 11 2.1 Một perceptron với ba đầu vào 14 2.2 Mạng nơ-ron gồm nhiều perceptron 15 2.3 Mạng nơ-ron lớp ẩn 17 2.4 Mạng nơ-ron hai lớp ẩn 18 2.5 Q trình xử lý thơng tin ANN 18 2.6a Hàm tổng nơ-ron đơn 19 2.6b Hàm tổng nhiều nơ-ron lớp 19 2.7 Hoạt động PE 20 2.8 Phân loại học dựa theo thuật toán kiến trúc 21 2.9 Mạng kết nối đầy đủ với ba lớp ẩn 22 2.10 Các nơ-ron đầu vào 23 2.11 Trường tiếp nhận cục 23 2.12 Trường tiếp nhận cục với nơ-ron ẩn 24 2.13 Trường tiếp nhận cục với nơ-ron ẩn thứ hai 24 2.14 Ánh xạ đặc trưng vào lớp ẩn 26 2.15 Ánh xạ đặc trưng hình ảnh khác 26 2.16 Max-polling 28 2.17 Tương quan ánh xạ đặc trưng max-polling 28 2.18 Mạng nơ-ron xoắn lớp tổng hợp 29 2.19 Các bước nhận dạng tự 30 2.20 Lan truyền tiến đầu vào cho nơ-ron 32 3.1 Trang chủ 40 3.2 Học sâu test tự 40 3.3 Học sâu test tập tự 41 3.4 Nhận dạng tự từ ảnh bitmap học sâu 41 3.5 Học nông test tự 42 3.6 Học nông test tập tự 42 3.7 Nhận dạng tự từ ảnh bitmap học nông 43 3.8 100 tự số tập MNIST 43 Footer Page - Footer Page - kho luan van - tai lieu - 123docvii tieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 10 of 95 LỜI MỞ ĐẦU Nhận dạng tự biết đến đầu kỷ XX quan tâm phát triển với tiến khoa học máy tính Từ ý tưởng ban đầu nhằm tạo công cụ hỗ trợ người khiếm thị, nay, nhận dạng tự ngày trở nên quan trọng nhiều lý Ví việc số hóa nhằm lưu trữ tài liệu có niên đại cổ khó đọc thời gian hay tác động môi trường, chuyển sách viết tay thành văn số… mà chương trình nhận dạng giúp người tiết kiệm nhiều công sức thời gian Ngồi ra, nhận dạng tự góp phần khơng nhỏ vào nhiều lĩnh vực sống như: bảo mật lưu trữ thông tin, ngân hàng… Nhận dạng tự biết đến với hai mục tiêu chính: nhận dạng chữ in nhận dạng chữ viết tay, đó, vấn đề nhận dạng chữ in chuyên gia giải đưa sản phẩm nhận dạng nhiều loại tự nhiều nước khác Tại Việt Nam, nhiều nhà nghiên cứu đưa chương trình nhận dạng chữ Việt in dạng tệp văn chứa hình ảnh với độ xác lên đến 98% Có thể nói giải gần trọn vẹn toán nhận dạng chữ in Tuy nhiên, nhận dạng chữ viết tay toán tương đối phức tạp người có nét chữ khác biến đổi đa dạng tùy theo trạng thái người viết Đơi người viết khơng thể xác định chữ họ viết ra, làm cách mà máy tính “đọc” đưa xác chữ viết tay người để tất người hiểu ý nghĩa chúng hiển thị? Việc tìm phương án giải vấn đề động lực thúc đẩy nhà nghiên cứu cho đời kỹ thuật nhận dạng chữ viết tay khác Đã có nhiều bước tiến đáng kể lĩnh vực nhận dạng tự viết tay, đó, phải kể đến kỹ thuật nhận dạng kết hợp với phương pháp luận lĩnh vực học máy (Machine Learning) Có nhiều cách tiếp cận để giải toán nhận dạng tự viết tay học máy kỹ thuật mạng Nơ-ron, Support Vector Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 43 of 95 Trong thực tế, có phải trải qua hàng trăm ngàn lần lặp trọng số hội tụ Tóm tắt thuật tốn lan truyền ngược cho mạng nơ-ron học để phân lớp trình bày sau: Input: tập mẫu học, mạng nhiều lớp Output: mạng nơ-ron học để phân lớp cho mẫu Bước 1: Khởi tạo tất trọng số định hướng mạng; Bước 2: While điều kiện kết thúc chưa thỏa { for với mẫu X tập mẫu học { //lan truyền tiến đầu vào Bước 3: for với nơ-ron j lớp ẩn lớp xuất Ij =∑ w ij O i + θ j // tính mạng đầu vào cho nơ-ron j O j=1+eIj // tính mạng đầu cho nơ-ron j Bước 4: for với nơ-ron j lớp xuất //tính sai số Errj = Oj(1 - Oj)(Tj - Oj) for với nơ-ron j lớp ẩn Err j = Oj (1 - Oj )∑Err k jk // tính sai số Bước 5: for với trọng số wij mạng { ∆wij = (l)ErrjOj ; wij = //độ tăng trọng số = wij +∆wij; } //cập nhật trọng số Bước 6: for với định hướng θi mạng { ∆θj = (l)Errj ; ∆θj = θj + ∆θj ; } // độ tăng định hướng // cập nhập định hướng } } 34 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 44 of 95 2.3.2.3 Huấn luyện Huấn luyện mạng nơ-ron nhiều lớp sử dụng thuật tốn lan truyền ngược gồm hai q trình: Q trình truyền tuyến tính q trình truyền ngược Q trình truyền tuyến tính: Dữ liệu từ lớp nhập qua lớp ẩn đến lớp xuất để:  Thay đổi giá trị trọng số liên kết W nơ-ron mạng biểu diễn liệu học  Tìm khác giá trị thật hàm mẫu mà mạng tính kết dự đốn mạng gọi lỗi (học có giám sát) Q trình truyền ngược: Giá trị lỗi truyền ngược lại cho trình huấn luyện (học) tìm trọng số Wi để lỗi nhỏ Bước 1: Lan truyền xuôi đầu vào Xs={x1, x2,…, xn} qua mạng:  Đầu nơ-ron j lớp ẩn yj =g (∑𝑛𝑖=1 𝑊 ii xi -  j) (2.16)  Đầu nơ-ron lớp : 𝑚 𝑛 Yk =g (∑𝑚 𝑗=1 𝑦j wjk ) = g( ∑𝑗=1 𝑤 jk g( ∑𝑖=1 𝑤 ij xi - j ) - k ) (2.17) Bước 2: Lan truyền ngược sai số : So sánh phần tử vectơ đầu thực với phần tử tương ứng vectơ đầu mẫu để tính độ sai lệch ek =tk -yk Tổng bình phương sai số mạng ứng với mẫu học ( Xs Ts) 𝑝 E = ∑𝑘=1(yk – tk )2 (2.18) Thông tin sai số lan truyền ngược qua mạng để điều chỉnh lại giá trị trọng số vòng lặp thứ l: Với liên kết nơ-ron ẩn nơ-ron ra: w jk    k (l ) y j(l ),với  hệ số học (2.19) lek (l).gk ( yk (l) ) (2.20) Wjk (l+1) = wjk(l) + wjk (2.21) 35 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 45 of 95 Với liên kết nơ-ron vào nơ-ron ẩn: wij = .j(l).xi (2.22) 𝑚  (l) = gj’(yj) ∑𝑗=1 l.Wjk ( l+1 ) (2.23) Wij (l+1 )= wij + w+ij (2.24) Sau hiệu chỉnh trọng số, mẫu Xs tiếp tục đưa vào mạng lần thứ (l+1) tiếp tục thuật toán hiệu chỉnh trọng số E<  cho trước số vòng lặp đạt đến mức định trước Mẫu đưa vào mạng trình huấn luyện lặp lại mạng học thuộc tất mẫu Lưu cấu hình mạng lại để sẵn sàng đưa vào sử dụng Hàm kích hoạt sử dụng mạng nơ-ron hàm sigmoid lưỡng cực g(s) = 1+𝑒 −∝𝑠 -1 hàm sigmoid đơn cực g(s) = 1+𝑒 −∝𝑠 , đạo hàm hàm g’(s) = g(s)( 1-g(s)) 2.3.2.4 Nhận dạng Sau huấn luyện kết thúc, ta tìm giá trị lỗi cách đối chiếu số điểm cao đầu mạng với giá trị cao nhãn mẫu test Tỉ lệ lỗi nhận dạng tính tỉ số giá trị lỗi tổng số nhãn mẫu test: [~, h] = max(net.o); [~, a] = max(y); bad = find(h ~= a); er = numel(bad) / size(y, 2); Cuối cùng, tính thời gian nhận dạng, đưa tự nhận dạng với tỉ lệ (%) nhận dạng xác Để làm rõ trình nhận dạng, tìm hiểu chương trình thử nghiệm trình bày chương 36 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 46 of 95 CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH, CÀI ĐẶT, THỬ NGHIỆM VÀ ĐÁNH GIÁ Dựa nội dung chi tiết quy trình phương pháp, thuật tốn trình bày chương 2, chương tiến hành xây dựng, cài đặt chương trình demo Sau thử nghiệm đưa nhận xét, so sánh với học nông đánh giá kết áp dụng phương pháp học sâu vào nhận dạng tự 3.1 Xây dựng chương trình 3.1.1 Yêu cầu phần cứng Chương trình thực laptop hệ điều hành Windows 10 64-bit, vi xử lý Intel Core I7, RAM 8GB với Card đồ họa 256-bit Cấu hình phần cứng ảnh hưởng đến tốc độ thời gian thực thi chương trình Do kết thử nghiệm khác chạy chương trình phần cứng khác Để cài đặt chạy chương trình, máy tính cần đáp ứng cấu hình sau: Thành phần Yêu cầu Hệ điều hành Windows Server 2008, Windows Server 2012, Windows Service Pack 1, Windows 8, Windows 8.1, Windows 10 Kiểu hệ thống Hệ điều hành 64-bit Vi xử lý Dual core, Core2duo, Intel I3 RAM 2GB RAM Ổ cứng 2GB để cài đặt phần mềm, 4-6 GB để lưu trữ lựa chọn cài đặt thêm Graphics adapter Card đồ họa hỗ trợ xử lý ảnh 64-bit Bảng 3.1: Cấu hình tối thiểu 37 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 47 of 95 Hoặc để chương trình hoạt động hiệu hơn, nên chuẩn bị phần cứng với cấu hình đây: Thành phần Yêu cầu Hệ điều hành Windows Server 2008, Windows Server 2012, Windows Service Pack 1, Windows 8, Windows 8.1, Windows 10 Kiểu hệ thống Hệ điều hành 64-bit Vi xử lý Intel core I3 cao RAM – GB RAM Ổ cứng 2GB để cài đặt phần mềm, 4-6 GB để lưu trữ lựa chọn cài đặt thêm Card đồ họa hỗ trợ xử lý ảnh 128-bit cao Graphics adapter Bảng 3.2: Cấu hình đề nghị 3.1.2 Ngơn ngữ cơng cụ lập trình Chương trình nhận dạng sử dụng ngơn ngữ lập trình soạn thảo MATLAB phiên 2016a (R2016a) cơng cụ có sẵn MATLAB MATLAB 2016 hỗ trợ hệ thống 64-bit Nếu muốn dùng cho hệ điều hành 32-bit ta sử dụng phiên thấp MATLAB 2013, 2014 2015 Ngôn ngữ MATLAB Đây ngôn ngữ ma trận/mảng cấp cao với câu lệnh điều khiển, chức năng, cấu trúc liệu, đầu vào/đầu ra, tính lập trình hướng đối tượng Nó cho phép lập trình chương trình nhỏ gọn cách nhanh chóng tạo chương trình lớn với cấu trúc phức tạp Công cụ xử lý ảnh MATLAB Chương trình demo sử dụng cơng cụ xử lý ảnh MATLAB (MATLAB Image Processing Toolbox) để xây dựng Sử dụng hai thư viện hỗ trợ mạng nơ-ron “cnn” “nn”, MATLAB xử lý loạt hoạt động hình ảnh cách nhanh gọn thân thiên với người dùng 38 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 48 of 95 Cơng cụ mạng nơ-ron MATLAB MATLAB tích hợp sẵn công cụ hỗ trợ cho mạng nơ-ron với nhiều tính năng: • Mạng có giám sát bao gồm mạng nhiều lớp, học vector lượng tử, thời gian trễ, tự hồi quy phi tuyến, lớp hồi quy • Mạng khơng giám sát, bao gồm ánh xạ tự tổ chức lớp cạnh tranh • Ứng dụng cho vừa khít liệu, nhận dạng mẫu, phân cụm • Tính tốn song song hỗ trợ GPU để tăng tốc huấn luyện • Tiền xử lý hậu xử lý để nâng cao hiệu huấn luyện mạng đánh giá hiệu suất mạng 3.1.3 Chương trình demo MATLAB cung cấp cơng cụ để tạo giao diện người dùng đồ họa (GUI) Những cơng cụ giúp q trình tạo lập trình GUI nhanh chóng hiệu Trang chủ Chương trình hiển thị trang chủ với vài lựa chọn Người dùng chọn phương pháp học Menu Giao diện phương pháp học hiển thị với lựa chọn chính: - Xác định ảnh đầu vào - Huấn luyện nhận dạng Module xử lý GUI nhận hình ảnh truy vấn Hiển thị ảnh trường hợp nhận dạng ảnh, trường hợp nhận dạng nhiều ảnh không hiển thị Huấn luyện mạng hàm sigmoid với phương pháp học nơng; huấn luyện mạng thuật tốn lan truyền ngược cho phương pháp học sâu Trả thời gian thực hiện, số tự nhận dạng tỉ lệ nhận dạng xác 39 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 49 of 95 Một số hình ảnh chương trình Trang chủ Hình 3.1: Trang chủ Đối với lựa chọn phương pháp học sâu ta có vài hình ảnh chương trình sau: Học sâu test tự Hình 3.2: Học sâu test tự 40 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 50 of 95 Học sâu test tập tự Hình 3.3: Học sâu test tập tự Nhận dạng tự từ ảnh dựng học sâu Hình 3.4: Nhận dạng tự từ ảnh bitmap học sâu 41 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 51 of 95 Sử dụng phương pháp học nơng để nhận dạng có giao diện tương tự giao diện học sâu, sau số hình ảnh: Học nơng test tự Hình 3.5: Học nông test tự Học nông test tập tự Hình 3.6: Học nơng test tập tự 42 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 52 of 95 Nhận dạng tự từ ảnh dựng học nơng Hình 3.7: Nhận dạng tự từ ảnh bitmap học nông 3.2 Thử nghiệm đánh giá kết 3.2.1 Thử nghiệm a Tập liệu Tập liệu huấn luyện hình ảnh số Latinh từ 0-9 sở liệu MNIST với 60000 mẫu huấn luyện Tập test gồm 10000 mẫu hình ảnh chữ số viết tay từ 0-9 Hình 3.12 thể hình ảnh 100 tự số tập huấn luyện MNIST với nhãn tự: Hình 3.8: 100 tự số tập MNIST 43 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 53 of 95 Ta nhận thấy nhãn tự số có giá trị với giá trị số hình ảnh, điều giúp cho việc mở rộng tập liệu dễ dàng b Thử nghiệm Chương trình nhận dạng tự viết tay áp dụng hai phương pháp mạng nơron để nhận dạng: phương pháp học nông phương pháp học sâu Phương pháp học nông sử dụng lớp đầu vào, lớp ẩn đầu Học nông sử dụng hàm sigmoid để nhận dạng Phương pháp học sâu sử dụng lớp đầu vào, hai lớp ẩn, hai lớp tổng hợp đầu Học sâu sử dụng hàm sigmoid thuật toán lan truyền ngược để nhận dạng Cả hai phương pháp thực tập huấn luyện tập test Mỗi lần huấn luyện ta thay đổi số epoch để đánh giá khả nhận dạng hai phương pháp, số epoch tối đa chương trình thực 100 Đối với nhận dạng tự, chương trình đưa kết nhận dạng sai Do vậy, để đánh giá kết nhận dạng xác, tỉ mỉ ta thử nghiệm nhận dạng toàn 10000 mẫu cho phương pháp Bảng 3.5 thể kết thử nghiệm hai phương pháp học: Epochs Tỉ lệ nhận dạng Học nơng Thời gian huấn luyện (s) Thời gian nhận dạng (s) xác (%) Tỉ lệ nhận dạng Học sâu Thời gian huấn luyện (s) Thời gian nhận dạng (s) xác (%) 91,46 2,20 0,1722 88,87 70,02 5,6539 10 94,97 21,41 0,1965 97,27 698,83 5,6675 20 95,51 42,01 0,1973 97,39 1401,01 5,6736 30 95,74 64,78 0,1811 97,47 2019,48 5,6742 40 95,77 85,56 0,1632 97,58 2691,97 5,6678 50 95,72 112,68 0,2037 97,77 3364,33 5,6797 60 95,68 130,27 0,1921 98,01 4062,84 5,6685 70 95,70 151,31 0,2017 98,23 4757,94 5,6745 80 95,79 174,42 0,1822 98,41 5458,43 5,6651 90 95,73 196,89 0,2067 98,65 6141,90 5,6732 100 95,82 215,63 0,2032 98,81 6838,42 5,6763 Bảng 3.3: Kết thử nghiệm hai phương pháp 44 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 54 of 95 Từ chương trình nhận dạng tự số, ta mở rộng tập huấn luyện tập test từ MNIST để xây dựng chương trình nhận dạng chữ viết tay, cách xây dựng ảnh nhãn cho chúng Cụ thể, với chữ cái, ta xây dựng ảnh bitmap 28x28 gồm 6000 mẫu cho tập huấn luyện 1000 mẫu cho tập test Sau đó, ta chuyển ảnh mẫu xây dựng dạng ma trận ghép với ma trận ảnh ban đầu Nhãn xây dựng dạng mảng nhị phân chiều, nhãn ứng với 26 phần tử bảng chữ Latinh ghép với mảng nhãn ban đầu Do hạn chế mặt thời gian nên chưa kịp xây dựng luận văn 3.2.2 Đánh giá kết Chương trình nhận dạng tự viết tay thử nghiệm hai phương pháp học khác kết thu đáng khích lệ Về tỉ lệ nhận dạng xác: Nhìn vào bảng 3.5 ta thấy rằng, số lần đưa tất liệu vào huấn luyện lúc (epoch) tỉ lệ nhận dạng xác phương pháp học nông học sâu 91.46% 88.87%, thấp nhiều so với việc tăng số epoch lên mức khác Từ số epoch 10 trở lên, tỉ lệ nhận dạng xác thay với đổi biên độ nhỏ Sử dụng phương pháp học nông, tăng số epoch từ 10 đến 100 khơng có cải thiện tỉ lệ nhận dạng; tỉ lệ nhận dạng xác thay đổi không theo quy luật với mức cao 95.82% số epoch tăng lên 100 94.97% epoch 10 Điều cho thấy rằng, dù có điều chỉnh số epoch tỉ lệ xác phương pháp học nông không vượt 96% Với phương pháp học sâu, ban đầu, epoch 1, tỉ lệ nhận dạng thấp, thấp phương pháp học nơng Nhưng việc tăng số epoch lên 10 tỉ lệ nhận dạng cải thiện nhiều Tỉ lệ nhận dạng tăng dần ta tăng dần số epoch kết cuối khả quan 98.81% 45 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 55 of 95 Về thời gian thực Kể chưa thử nghiệm chương trình, ta dễ dàng suy luận thời gian thực chương trình sử dụng phương pháp học nông nhanh phương pháp học sâu Vì phương pháp học nơng có lớp ẩn, phương pháp học sâu có bốn lớp ẩn, để sử dụng bốn lớp ta cần có thêm thuật tốn lan truyền ngược, việc thời gian thực lớn điều lý giải Ta thấy rằng, thời gian thực cho epoch xấp xỉ nhau, nghĩa ta tăng số epoch lên lần thời gian thực tăng nhiêu lần cho hai phương pháp Ở đây, phương pháp học sâu cần thời gian gấp 30 lần học nông để huấn luyện Cụ thể, với epoch học nông cần thời gian giây học sâu cần gần 70 giây để hoàn thành huấn luyện Gần hai để huấn luyện cho 60000 mẫu thời gian dài Điều cần quan tâm thời gian nhận dạng phương pháp Với mức thay đổi số epoch, học nông gần 0,2 giây cho q trình nhận dạng tồn 10000 mẫu test, học sâu dùng 5,6 giây cho trình Học sâu dùng nhiều học nơng 5,4 giây nhận dạng, thay vào đó, tỉ lệ nhận dạng xác cải thiện 3% Ta biết việc tìm hiểu, nghiên cứu nâng cao tỉ lệ nhận dạng 3% số không nhỏ, tập huấn luyện tập test lớn ta nhận thấy tầm quan trọng Thực nhận dạng cho 10000 mẫu thử đạt tỉ lệ 98.81% thời gian chưa đến giây hồn tồn chấp nhận Việc sử dụng phương pháp học sâu với mạng nơ-ron nhiều lớp giúp nâng cao nhiều khả phân lớp tỉ lệ nhận dạng xác chữ viết so với mạng học nơng có lớp 46 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 56 of 95 KẾT LUẬN Kỹ thuật học máy sử dụng mạng nơ-ron sâu hướng nghiên cứu nhiều hệ thống nhận dạng với nhiều kết khả quan Luận văn nghiên cứu áp dụng phương pháp học sâu sử dụng mạng nơ-ron xoắn nhận dạng tự Latinh đạt kết sau: + Trình bày sở lý thuyết phương pháp nhận dạng mạng nơ-ron xoắn nhiều lớp, từ xây dựng chương trình thử nghiệm, đánh giá kết + Chương trình nhận dạng tự viết tay thực hai phương pháp học nông học sâu giúp ta có đánh giá khách quan Dựa kết nghiên cứu ta thấy mạng học sâu cho tỉ lệ nhận dạng xác cao so với mạng học nông Mặc dù học sâu nhiều thời gian để nhận dạng, thời gian khơng đáng kể học sâu tăng nhiều tỉ lệ xác Do thời gian hạn chế nên đề tài chưa đưa tập đầu vào chữ chưa áp dụng nhiều thuật toán để thử nghiệm, đánh giá Rất mong nhận góp ý q thầy bạn để luận văn hoàn thiện Hướng nghiên cứu đề tài thời gian tới nâng cấp để chương trình học từ nhiều tập đầu vào với dạng khác Áp dụng thêm số kỹ thuật nhằm tối ưu hiệu hệ thống để chương trình mở rộng cho nhiều lĩnh vực nhận dạng khác như: Nhận dạng mặt người, nhận dạng biển số xe, phân lớp ảnh… Xin chân thành cảm ơn! 47 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - luan van thac si - luan van thac si kinh te - luan an tien - luan van 57 of 95 TÀI LIỆU THAM KHẢO [1] GS TS Đỗ Hồng Tồn (2006), Giáo trình lý thuyết nhận dạng ứng dụng quản lý, NXB Khoa học Kỹ thuật, tr5-10 [2] Th.S Nguyễn Thị Thuận (2006), Phương pháp học tăng cường, Hà Nội, tr2630 [3] Chirag I Patel, Ripal Patel, Palak Patel (2011), Handwritten Character Recognition Using Neural Network, International Journal of Scientific & Engineering Research Volume 2, Issue [4] Michael A Nielsen (2013), Neural Networks And Deep Learning, Determination Press [5] Irwin Sobel (2014), History and Definition of the Sobel Operator [6] http://bis.net.vn/forums/t/619.aspx [7] http://bis.net.vn/forums/t/482.aspx [8] https://vi.wikipedia.org/wiki/Nhận_dạng_ký_tự_quang_học 48 Footer Page - Footer Page - kho luan van - tai lieu - 123doctieu luan - khoa luan-tai chinh ngan hang - thuong mai - ... thuật học sâu (deep learning) cho toán nhận dạng ký tự Latinh” Mục tiêu đề tài: Mục tiêu đề tài nghiên cứu áp dụng kỹ thuật học sâu cho toán nhận dạng ký tự Latinh Đối tượng phạm vi nghiên cứu: ... quan học máy nhận dạng: Trình bày khái niệm, nội dung học máy nhận dạng Các ứng dụng học máy thực tế Chương 2: Kỹ thuật học sâu cho toán nhận dạng ký tự Latinh: Nghiên cứu cụ thể áp dụng kỹ thuật. .. [1] Các nhà nghiên cứu dựa trình nhận dạng người tạo kỹ thuật giúp máy tính có khả nhận dạng, điển hình nhận dạng ký tự quang học 1.2.2 Nhận dạng ký tự quang học Nhận dạng ký tự quang học (OCR),

Ngày đăng: 20/05/2018, 17:06

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan