Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
334,02 KB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Phạm Thị Thanh Hiển NHẬN DẠNG KÝ HIỆU TOÁN HỌC Chuyên ngành: Khoa học máy tính Mã số: 60.48.01.01 TĨM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI - 2013 Luận văn hồn thành tại: HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THÔNG Người hướng dẫn khoa học: TS Nguyễn Đức Dũng Phản biện 1: PGS TS Lương Chi Mai Phản biện 2: PGS TS Đỗ Năng Toàn Luận văn bảo vệ trước Hội đồng chấm luận văn thạc sĩ Học viện Cơng nghệ Bưu Viễn thơng Vào lúc: 14 15’ ngày 15 tháng năm 2014 Có thể tìm hiểu luận văn tại: - Thư viện Học viện Cơng nghệ Bưu Viễn thơng MỞ ĐẦU Việc số hóa tài liệu có ký hiệu tốn học để lưu trữ, khai thác thơng tin hệ thống máy tính tốn đặt Trên thực tế, cách để sử dụng thơng tin tốn học gõ lại cơng thức bàn phím để thêm vào hệ thống máy tính hay sử dụng làm đầu vào ứng dụng toán học Và với mong muốn tìm hiểu lĩnh vực nhận dạng kí tự quang học (Optical character recognition – OCR) đóng góp thêm vào kho ứng dụng nhận dạng hệ thống nhận dạng thiết thực, hữu ích Vì luận văn tập trung tìm hiểu kỹ thuật, công nghệ cần thiết để xây dựng hệ thống “Nhận dạng ký hiệu toán học” Nội dung luận văn gồm phần mở đầu, chương nội dung, phần kết luận, tài liệu tham khảo Chương 1: Các phương pháp nhận dạng Chương 2: Công nghệ nhận dạng ký tự quang học Chương 3: Ứng dụng mạng neural nhận dạng ký hiệu tốn học Mục đích nghiên cứu: - Nghiên cứu lý thuyết nhận dạng, xử lý ảnh - Hệ thống OCR - Công nghệ mã nguồn mở Tesseract OCR - Tạo ứng dụng nhận dạng ký hiệu toán học rời rạc dựa mạng noron mã nguồn mở Tesseract OCR CHƯƠNG 1: CÁC PHƯƠNG PHÁP NHẬN DẠNG 1.1 Tổng quan phương pháp nhận dạng văn Có nhiều phương pháp nhận dạng mẫu khác áp dụng rộng rãi hệ thống nhận dạng kí tự Các phương pháp tích hợp hướng tiếp cận sau: Đối sánh mẫu, thống kê, cấu trúc, mạng nơ ron SVM 1.1.1 Máy vecto hỗ trợ (SVM) Phương pháp máy véc tơ tựa (SVM - Support Vector Machines) đánh giá phương pháp học máy tiên tiến áp dụng rộng rãi lĩnh khai phá liệu thị giác máy tính… SVM gốc thiết kế để giải toán phân lớp nhị phân, ý tưởng phương pháp tìm siêu phẳng phân cách cho khoảng cách lề hai lớp đạt cực đại Khoảng cách xác định véc tơ tựa (SV - Support Vector), SV lọc từ tập mẫu huấn luyện cách giải toán tối ưu lồi 1.1.2 Phương pháp tiếp cận cấu trúc Cách tiếp cận phương pháp dựa vào việc mô tả đối tượng nhờ số khái niệm biểu diễn đối tượng sở ngôn ngữ tự nhiên Để mô tả đối tượng người ta dùng số dạng nguyên thuỷ đoạn thẳng, cung,… Mỗi đối tượng mô tả kết hợp dạng nguyên thuỷ 1.1.3 Phương pháp ngữ pháp (Grammatical Methods) Các phương pháp ngữ pháp khởi tạo số luật sinh để hình thành ký tự từ tập công thức ngữ pháp nguyên thủy Các luật sinh kết nối kiểu đặc trưng thống kê đặc trưng hình thái số cú pháp luật ngữ nghĩa Giống lý thuyết ngôn ngữ, luật sinh cho phép mô tả cấu trúc câu chấp nhận trích chọn thông tin theo ngữ cảnh chữ viết cách sử dụng kiểu ngữ pháp khác 1.1.4 Phương pháp đồ thị (Graphical Methods) Các đơn vị chữ viết mô tả đồ thị Các dạng nguyên thủy ký tự (các nét) lựa chọn hướng tiếp cận cấu trúc Đối với lớp, đồ thị thành lập giai đoạn huấn luyện để mô tả nét, ký tự từ Giai đoạn nhận dạng gán đồ thị chưa biết vào lớp cách sử dụng độ đo để so sánh đặc điểm giống đồ thị 2 1.1.5 Mơ hình Markov ẩn (HMM – Hidden Markov Model) Mơ hình Markov ẩn (HMM) mơ hình máy học quan trọng xử lý ngôn ngữ tự nhiên nhận dạng Mô hình trường hợp mở rộng máy hữu hạn trạng thái có hướng, có trọng số HMM thường sử dụng để xử lý kiện không quan sát trực tiếp (sự kiện ẩn) Do vậy, HMM ứng dụng để giải toán có độ nhiễu lớn, chẳng hạn, dự báo, nhận dạng tiếng nói,… 1.1.6 Đối sánh mẫu Kỹ thuật nhận dạng chữ đơn giản dựa sở đối sánh nguyên mẫu (prototype) với để nhận dạng ký tự từ Nói chung, tốn tử đối sánh xác định mức độ giống hai véc tơ (nhóm điểm, hình dạng, độ cong ) khơng gian đặc trưng Các kỹ thuật đối sánh nghiên cứu theo ba hướng sau: Đối sánh trực tiếp Các mẫu biến dạng Đối sánh mềm Đối sánh giảm nhẹ Kết luận Phần giới thiệu cách tổng quan lĩnh vực nhận dạng kí tự Cho đến kết nghiên cứu nhận dạng kí tự cịn hạn chế, ứng dụng chủ yếu tập trung số lĩnh vực hẹp Đặc biệt có kết liên quan đến nhận dạng ký hiệu toán học, kết nghiên cứu tập trung vào font chữ phổ biến Mạng nơ ron ứng dụng nhiều tốn phân loại mẫu (điển hình nhận dạng) ưu điểm trội dễ cài đặt với khả học tổng quát hoá cao Với thuật toán đơn giản hiệu quả, với thành cơng mơ hình ứng dụng thực tiễn, mạng nơ ron hướng nghiên cứu lĩnh vực học máy Trong phần sau trình bày chi tiết mạng neural ứng dụng nhận dạng ký hiệu toán học 3 1.2 Mạng Neural (neural networks) 1.2.1 Tổng quan mạng neural nhân tạo Mạng noron nhân tạo 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 noron nhân tạo thiết kế tương tự neural sinh học có khả giải hàng loạt tốn tính tốn tối ưu, điều khiển, cơng nghệ robot… Q trình nghiên cứu phát triển noron nhân tạo chia thành giai đoạn sau: - Giai đoạn 1: 1890 – 1943 - Giai đoạn 2: Vào khoảng gần năm 1960 - Giai đoạn 3: Vào khoảng đầu thập niên 80 - Giai đoạn 4: Tính từ năm 1987 đến Cho đến mạng neural tìm khẳng định vị trí nhiều ứng dụng khác 1.2.1.1 Khái niệm mạng neural [1] Định nghĩa: Mạng neural nhân tạo, Artificial Neural Network (ANN) gọi tắt mạng neural, neural network, mô hình xử lý thơng tin theo cách thức xử lý thơng tin hệ neural sinh học Nó tạo lên từ số lượng lớn phần tử (gọi phần tử xử lý hay neural) kết nối với thông qua liên kết (gọi trọng số liên kết) làm việc thể thống để giải vấn đề cụ thể Một mạng neural nhân tạo cấu hình cho ứng dụng cụ thể (nhận dạng mẫu, phân loại liệu, ) thơng qua q trình học từ tập mẫu huấn luyện Về chất học trình hiệu chỉnh trọng số liên kết neural 1.2.1.2 Tìm hiểu Neural sinh học [1] Mỗi neural sinh học gồm có thành phần: Thân neural 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 Hình ảnh đơn giản neural thể hình 1.5 4 Hình 1.5 Mơ hình neural sinh học 1.2.1.3 Mạng neural nhân tạo [1] a Giới thiệu Mạng neural nhân tạo (Artificial Neural Network) cấu trúc mạng hình thành nên số lượng lớn neural nhân tạo liên kết với Mỗi neural có đặc tính đầu vào, đầu thực chức tính tốn cục b Các thành phần noron nhân tạo Phần mô tả số thành phần nơ ron nhân tạo Những thành phần giống cho dù nơ ron dùng tầng vào, tầng tầng ẩn Thành phần Các nhân tố trọng số: Một neural thường nhận nhiều đầu vào lúc Mỗi đầu vào có trọng số liên quan riêng nó, trọng số giúp cho đầu vào có ảnh hưởng cần thiết lên hàm tổng đơn vị xử lý (thành phần xử lý) Các trọng số hệ số thích nghi bên mạng, chúng xác định cường độ (sức mạnh sức ảnh hưởng ) tín hiệu vào lên neural nhân tạo Những sức mạnh điều chỉnh theo tập đào tạo đa dạng khác theo kiến trúc mạng cụ thể qua luật học Thành phần Hàm tổng: Bước hoạt động thành phần xử lý tính tốn tổng có trọng số tất đầu vào Về mặt toán học, đầu vào trọng số tương ứng véc tơ biểu diễn : I = (ii,i2, , in) W = (w1, w2, …, wn) Tín hiệu vào tổng tích vơ hướng thành phần véc tơ I với thành phần tương ứng véc tơ W cộng lại tất tích Input1 = i1.w1, input2 = i2.w2… Cuối cộng lại: input1 + input2 + … + inputn Kết số nhất, véc tơ 5 Thành phần Hàm chuyển đổi: Kết hàm tổng, tổng có trọng số, chuyển đổi thành đầu có ý nghĩa nhờ q trình xử lý có thuật tốn gọi hàm chuyển đổi Trong hàm chuyển đổi tổng so sánh với ngưỡng để định đầu mạng Thành phần Hàm ra: Mỗi thành phần xử lý cho phép tín hiệu đầu mà đầu tới hàng trăm nơ ron khác Thành phần Giá trị truyền ngược hàm lỗi: Thành phần Hàm học: Mục đích hàm học để thay đổi giá trị biến trọng số kết nối đầu vào thành phần xử lý theo thuật tốn Có hai kiểu học học có giám sát học khơng có giám sát 1.2.2 Các tính chất mạng neural nhân tạo [8] 1.2.3 Mơ hình mạng neural [1] Một mạng neural mơ hình tính tốn xác định qua tham số: kiểu neural (như nút ta coi mạng neural đồ thị), kiến trúc kết nối (sự tổ chức kết nối neural) thuật toán học (thuật toán dùng để học cho mạng) 1.2.3.1 Phân loại theo kiểu liên kết neural Cách thức kết nối neural mạng xác định kiến trúc (topology) mạng Hai loại kiến trúc mạng chính: ♦ Tự kết hợp (autoassociative): mạng có neural đầu vào neural đầu Mạng Hopfield kiểu mạng tự kết hợp ♦ Kết hợp khác kiểu (heteroassociative): mạng có tập neural đầu vào đầu riêng biệt Perceptron, mạng Perceptron nhiều tầng (MLP: MultiLayer Perceptron), mạng Kohonen, … thuộc loại Ngoài tùy thuộc vào mạng có kết nối ngược (feedback connections) từ neural đầu tới neural đầu vào hay không, người ta chia làm loại kiến trúc mạng ♦ Kiến trúc truyền thẳng (feedforward architechture): kiểu kiến trúc mạng khơng có kết nối ngược trở lại từ neural đầu neural đầu vào; mạng không lưu lại giá trị output trước trạng thái kích hoạt neural Các mạng neural truyền thẳng cho phép tín hiệu di chuyển theo đường nhất; từ đầu vào tới đầu ra, đầu tầng khơng ảnh hưởng tới tầng Các mạng kiểu Perceptron mạng truyền thẳng ♦ Kiến trúc phản hồi (Feedback architecture): kiểu kiến trúc mạng có kết nối từ neural đầu tới neural đầu vào Mạng lưu lại trạng thái trước đó, trạng thái khơng phụ thuộc vào tín hiệu đầu vào mà cịn phụ thuộc vào trạng thái trước mạng Mạng Hopfield thuộc loại 1.2.3.2 Một số loại mạng neural a Perceptron Perceptron mạng neural đơn giản nhất, gồm neural, nhận đầu vào vector có thành phần số thực đầu hai giá trị +1 -1 b Mạng nhiều tầng truyền thẳng (MLP) Mơ hình mạng neural sử dụng rộng rãi mơ hình mạng nhiều tầng truyền thẳng (MLP: Multi Layer Perceptron) Một mạng MLP tổng quát mạng có n (n≥2) tầng (thơng thường tầng đầu vào khơng tính đến): gồm tầng đầu (tầng thứ n) (n-1) tầng ẩn Kiến trúc mạng MLP tổng qt mơ tả sau: ♦ Đầu vào vector (x1, x2, , xp) không gian p chiều, đầu vector (y1, y2, , yq) không gian q chiều ♦ Mỗi neural thuộc tầng sau liên kết với tất neural thuộc tầng liền trước ♦ Đầu neural tầng trước đầu vào neural thuộc tầng liền sau 1.2.4 Huấn luyện mạng neural [1] 1.2.4.1 Các phương pháp học Khái niệm: Học trình thay đổi hành vi vật theo cách làm cho chúng thực tốt tương lai Có ba phương pháp học phổ biến học có giám sát), học khơng giám sát (unsupervised learning) học tăng cường (Reinforcement learning): ♦ Học có giám sát (supervised learning) ♦ Học không giám sát (unsupervised learning) ♦ Học tăng cường (Reinforcement learning) 1.2.4.2 Học có giám sát mạng neural 1.2.4.3 Thuật toán lan truyền ngược Thuật tốn lan truyền ngược mơ tả sau: Input: - Mạng feed-forward với ni đầu vào, nh nút ẩn no đầu - Hệ số học η - Tập liệu huấn luyện D = {là vector đầu vào, vector đầu mong muốn} Output: Các vector trọng số Thuật toán: Bước 1: Khởi tạo trọng số giá trị ngẫu nhiên nhỏ Bước 2: Lặp lại thỏa mãn điều kiện kết thúc Với mẫu, thực bước sau: 2.1 Tính đầu oj cho nút j: oj = f(d – bj) với d = Σxjiwji 2.2 Với nút k thuộc tầng ra, tính δk theo công thức: δk = (tk – ok)(1 – ok)ok 2.3 Với nút h thuộc tầng ẩn, tính δh theo công thức: δh = oh(1 – oh) Σδkwkh với k ∈ Downstream(j) 2.4 Cập nhật: wji = wji + Δwji Trong Δwji = ηδkxji 1.2.5 Thu thập liệu cho mạng neural a Kích thước mẫu Hai yếu tố quan trọng ảnh hưởng đến kích thước mẫu: ♦ Dạng hàm đích: hàm đích phức tạp kích thước mẫu cần tăng ♦ Nhiễu: liệu bị nhiễu (thơng tin sai thiếu thơng tin) kích thước mẫu cần tăng 8 b Mẫu Trong xây dựng mơ hình cần chia tập mẫu 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) Thông thường dùng 2/3 mẫu cho huấn luyện 1/3 cho kiểm tra Điều để tránh tình trạng khớp (overfitting) c Sự phân tầng mẫu d Chọn biến Khi tạo mẫu cần chọn biến sử dụng mơ hình Có vấn đề cần quan tâm: ♦ Cần tìm hiểu cách biến đổi thơng tin cho có lợi cho mạng hơn: thông tin trước đưa vào mạng cần biến đổi dạng thích hợp nhất, để mạng đạt hiệu xuất cao ♦ Chọn số biến biến đổi biến đưa vào mơ hình: khơng phải thơng tin mẫu có lợi cho mạng 1.2.6 Xác định tham số cho mạng cho mạng neural a Chọn hàm truyền Một số quy tắc chọn hàm truyền sau: ♦ Không dùng hàm truyền tuyến tính tầng ẩn ♦ Chọn hàm truyền cho kiến trúc mạng neural đối xứng b Xác định số neural tầng ẩn Lựa chọn số lượng noron tầng ẩn mạng MLP phụ thuộc vào toán cụ thể kinh nghiệm nhà thiết kế mạng Nếu tập liệu huấn luyện chia thành nhóm với đặc tính tương tự số lượng nhóm sử dụng để chọn số lượng neural ẩ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ụ c Khởi tạo trọng Trọng thường khởi tạo phương pháp thử sai, mang tính chất kinh nghiệm phụ thuộc vào toán Một số quy tắc khởi tạo trọng: ♦ Khởi tạo trọng cho mạng neural thu cân ♦ Tạo trọng cho giá trị kết xuất nút có giá trị trung gian 1.2.7 Một số vấn đề mạng neural 1.2.7.1 Vấn đề lãng quên (catastrophic forgetting) 1.2.7.1 Vấn đề khớp 1.2.9 Ứng dụng mạng neural Ngày nay, mạng nơ ron ngày ứng dụng nhiều thực tế ví dụ: tốn nhận dạng mẫu, xử lý, lọc liệu, điều khiển 1.2.9 Ưu nhược điểm mạng neural 1.3 Kết luận Mỗi phương pháp nhận dạng có ưu điểm, nhược điểm riêng Trong chương giới thiệu cách tổng quan phương pháp nhận dạng lý thuyết phương pháp mạng nơron để áp dụng giải toán nhận dạng ký hiệu toán học 10 CHƯƠNG 2: CƠNG NGHỆ NHẬN DẠNG KÍ TỰ QUANG HỌC 2.1 Giới thiệu chung 2.1.1 Sơ lược nhận dạng ký tự quang học – OCR Nhận dạng ký tự quang học (tên tiếng anh Optical Character Recognition – OCR) kỹ thuật sử dụng để chuyển đổi ảnh văn sang dạng văn chỉnh sửa máy tính Đầu vào q trình tập tin hình ảnh đầu tập tin văn chứa nội dung chữ viết, ký hiệu có hình ảnh 2.1.2 So sánh thư viện/ công cụ nhận dạng ký tự quang học Tesseract OCR, GOCR, FreeOCR, MS Office Document Imaging (MODI), JavaOCR, TopOCR, SimpleOCR 2.2 Giới thiệu nhận dạng ký tự quang học Tesseract 2.2.1 Lịch sử 2.2.2 Kiến trúc hoạt động Hình 2.2 Kiến trúc tổng thể Tesseract 2.2.3 Cài đặt sử dụng thư viện tesseract 2.2.4 Huấn luyện liệu tesseract Sinh hình ảnh huấn luyện Tạo tập tin *.box Bắt đầu chạy huấn luyện Tesseract Clustering (tập hợp lại) Thêm liệu từ điển (tùy biến) 11 Tổ hợp kết lại với nhau: Trong việc ứng dụng Tesseract enginer cho nhận dạng ký hiệu tốn học, thực chất vấn đề khó khăn nằm khâu huấn luyện vấn đề lập trình tích hợp phần mềm 2.3 Kết luận Trong thư viện nhận dạng ký tự quang học nhận dạng Tesseract OCR trội nhiều ưu điểm sau: Có lịch sử phát triển lâu dài mang độ xác cao từ mắt Khả mở rộng tùy biến cao đồng thời Google tài trợ đông đảo nhà phát triển tham gia đóng góp cho Tesseract Phiên cập nhật thường xun, hỗ trợ ngày nhiều ngơn ngữ, có khả huấn luyện ngôn ngữ nhiều loại font chữ khác 12 CHƯƠNG ỨNG DỤNG MẠNG NEURAL NHẬN DẠNG KÝ HIỆU TOÁN HỌC 3.1 Xác định tốn Input : Vì đề tài tập trung vào nghiên cứu cài đặt trình nhận dạng ký hiệu toán học, nên liệu đầu vào phải qua xử lý đạt chuẩn yêu cầu có độ phân giải 300dpi trước đưa vào nhận dạng Output : file text chứa ký hiệu tốn học tương ứng mà chương trình mong muốn huấn luyện mạng học thuộc Do hạn chế thời gian ký hiệu phân tán nhiều tài liệu khác nên chương trình thử nghiệm huấn luyện nhận dạng với 80 chữ số từ – ký hiệu toán học 3.2 Quá trình thực 3.2.1 Xây dựng mạng neural Mạng noron xây dựng theo phương pháp học có giám sát Bài toán lựa chọn mạng Feed-forward lớp với cấu trúc sau -Số noron lớp đầu vào : 150 noron -Số noron lớp ẩn : 500 noron -Số noron đầu : 16 noron tương ứng với 16 bit nhị phân mã Unicode Điểm ảnh Điểm ảnh Điểm ảnh hoặc Điểm ảnh Lớp đầu Lớp đầu vào Lớp ẩn Hình 3.2 Mơ hình mạng neural 13 Thuật toán huấn luyện mạng Mạng feed- forward sử dụng giải thuật lan truyền ngược sai số Back Propagation Các tham số sử dụng chương trình Tốc độ học η = 0.15 Hệ số góc α hàm Sigmoid= 0.014 Giá trị ngưỡng hay độ lệch : 30 Số lần dạy 300-600 tùy độ phức tạp loại ký hiệu Ngưỡng sai số = 0.0002 3.2.2 Xử lý liệu Q trình phân tích ảnh dựa việc nhận dạng từ ảnh đầu vào phương pháp tính giá trị màu Giới hạn giá trị điểm đen RGB(0,0,0) điểm trắng RGB(255, 255, 255) Những ảnh đầu vào định dạng *.bmp, *.jpg, *.png, *.gif, *.tiff 3.2.3 Huấn luyện mạng neural Một mạng neural xây dựng phải huấn luyện không gian đầu vào chuẩn bị trước Khi hoạt động mạng neural đọc giá trị huấn luyện Thuật toán: Xây dựng mạng tương ứng với mơ hình tham số Khởi tạo giá trị trọng số với giá trị ngẫu nhiên Nạp file huấn luyện Tìm biên ảnh Đọc giá trị đầu mong muốn từ file lưu trữ ký hiệu học Với ký hiệu: a Tính toán giá trị đầu mạng b So sánh giá trị đầu mong muốn tương ứng với kí tự tính tốn lỗi c Truyền ngược giá trị từ đầu vào với liên kết điều chỉnh trọng số liên kết Chuyển sang ký hiệu lặp lại bước hết ký hiệu Tính tốn lỗi trung bình cho tất ký hiệu Lặp lại từ bước đến bước đạt số đưa vào số lần lặp tối đa a Với phạm vi lỗi đạt đến ngưỡng Nếu bỏ lặp lại b Ngược lại, tiếp tục trình huấn luyện 3.3 Cài đặt ứng dụng nhận dạng ký hiệu tốn học 3.3.1 Cài đặt chương trình Chương trình viết ngôn ngữ C# Visual Studio 2010 Microsoft 3.3.2 Mơ tả chương trình Các module dùng chương trình bao gồm: Module huấn luyện Module nhận dạng ký hiệu 14 Module nhận dạng dựa Tesseract 3.3.3 Giới thiệu chương trình Chương trình thiết kế với cửa sổ hình, cửa sổ thực chức riêng biệt, người dùng thao tác với cửa sổ thông qua nút lệnh hình giao diện Màn hình giao diện chương trình: Màn hình thứ hai, giúp người sử dụng huấn luyện ký hiệu toán học Các ký hiệu huấn luyện thơng qua file ảnh người sử dụng tự vẽ lại ký hiệu vào khung text Các ký hiệu huấn luyện lựa chọn hộp thoại ký tự học nhập tên ký hiệu label Tên ký tự Màn hình thứ ba, giúp người dùng lựa chọn file ảnh ký hiệu toán học cần nhận dạng: Màn hình thứ tư, nhận dạng ký hiệu tốn học thông qua mã nguồn Tesseract Kết nhận dạng lưu lại dạng file *.txt: 3.4 Kết Thử nghiệm việc huấn luyện mạng với tập mẫu chữ số ký hiệu tốn học Chương trình thu kết sau: 3.4.1 Thử nghiệm tìm số lần lặp lại Số ký hiệu = 80, hệ số học η =0.15, hệ số góc Epoch Số ký hiệu sai % Error =0.014 300 600 900 8.75 3.75 1.25 3.4.2 Thử nghiệm tìm tham số hệ số học Số ký hiệu = 80, số Epoch = 600, hệ số góc Hệ số học η Số ký hiệu sai % Error =0.014 0.05 0.1 0.12 62 15 77.5 18.75 6.25 3.4.3 Thử nghiệm huấn luyện mạng 15 Các tham số lựa chọn sau: Hệ số học η = 0.15 Hệ số góc α hàm Sigmoid= 0.014 Giá trị ngưỡng hay độ lệch : 30 Số lần dạy 300-600 tùy độ phức tạp loại ký hiệu Ngưỡng sai số = 0.0002 Kết luận: Với kết thu trình thử nghiệm ta nhận thấy mạng hoạt động tốt ổn định với thơng số Để chương trình hoạt động tốt thực hữu ích, cần phải giải số vấn đề sau đây: - Dữ liệu huấn luyện phải thu thập cách xác - Ảnh đưa vào nhận dạng phải đạt chuẩn có độ phân giải từ 300dpi - Tối ưu cấu trúc thông số mạng, điều đòi hỏi thời gian thử nghiệm huấn luyện mạng lâu 16 KẾT LUẬN Luận văn nghiên cứu lý thuyết mạng neural, mã nguồn mở Tesseract ứng dụng lĩnh vực nhận dạng ký hiệu toán học Những kết mà luận văn đạt được: Lý thuyết: - Đã nghiên cứu phương pháp nhận dạng văn - Đã nghiên cứu cách có hệ thống khái niệm lý thuyết mạng neural - Nghiên cứu ứng dụng nhận dạng kí tự quang học nhận dạng văn - Nghiên cứu phương pháp, cách thu thập liệu áp dụng xây dựng chương trình nhận dạng ký hiệu toán học dựa mạng neural mã nguồn Tesseract Ứng dụng: Trên sở nghiên cứu lý thuyết, xây dựng chương trình nhận dạng ký hiệu toán học Hướng nghiên cứu tiếp theo: - Nâng cao hiệu để chương trình chạy nhanh hơn, thời gian huấn luyện nhanh - Nghiên cứu chương trình ứng dụng phát triển nhận dạng cơng thức tốn học - So sánh kết với phương pháp khác để tìm phương pháp tối ưu ... pháp nhận dạng lý thuyết phương pháp mạng nơron để áp dụng giải toán nhận dạng ký hiệu toán học 10 CHƯƠNG 2: CƠNG NGHỆ NHẬN DẠNG KÍ TỰ QUANG HỌC 2.1 Giới thiệu chung 2.1.1 Sơ lược nhận dạng ký. .. luyện ký hiệu tốn học Các ký hiệu huấn luyện thông qua file ảnh người sử dụng tự vẽ lại ký hiệu vào khung text Các ký hiệu huấn luyện lựa chọn hộp thoại ký tự học nhập tên ký hiệu label Tên ký tự... giúp người dùng lựa chọn file ảnh ký hiệu toán học cần nhận dạng: Màn hình thứ tư, nhận dạng ký hiệu tốn học thơng qua mã nguồn Tesseract Kết nhận dạng lưu lại dạng file *.txt: 3.4 Kết Thử nghiệm