Tìm hiểu kỹ thuật nhận dạng văn bản trong lớp ngôn ngữ la tinh

98 7 0
Tìm hiểu kỹ thuật nhận dạng văn bản trong lớp ngôn ngữ la tinh

Đ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

ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - - CHỬ ĐỨC THÀNH TÌM HIỂU KỸ THUẬT NHẬN DẠNG VĂN BẢN TRONG LỚP NGÔN NGỮ LA TINH LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH THÁI NGUYÊN, NĂM 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - - CHỬ ĐỨC THÀNH TÌM HIỂU KỸ THUẬT NHẬN DẠNG VĂN BẢN TRONG LỚP NGÔN NGỮ LA TINH Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH NGƢỜI HƢỚNG DẪN KHOA HỌC: TS ĐẶNG THỊ THU HIỀN THÁI NGUYÊN, NĂM 2015 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn LỜI CẢM ƠN Tôi xin chân thành cảm ơn Thầy giáo, Cô giáo khoa Công nghệ thông tin cán bộ, nhân viên phòng Đào tạo Sau đại học, Trƣờng Đại học Công nghệ Thông tin Truyền thông - Đại học Thái Ngun ln nhiệt tình giúp đỡ tạo điều kiện tốt cho suốt trình học tập trƣờng Xin chân thành cảm ơn anh, chị bạn học viên lớp Cao học CK12H - Trƣờng Đại học Công nghệ Thông tin Truyền thông – Đại học Thái Nguyên ln động viên, giúp đỡ nhiệt tình chia sẻ với kinh nghiệm học tập, công tác suốt khố học Đặc biệt tơi xin bày tỏ lịng biết ơn sâu sắc đến TS Đặng Thị Thu Hiền tận tình giúp đỡ tơi hình thành hồn chỉnh luận văn Mặc dù có nhiều cố gắng, song hạn hẹp thời gian, điều kiện nghiên cứu trình độ, luận văn khơng tránh khỏi khiếm khuyết Tôi chân thành mong nhận đƣợc đóng góp ý kiến Thầy giáo, Cơ giáo đồng nghiệp Một lần xin cảm ơn! Thái Nguyên, tháng 08 năm 2015 Ngƣời thực luận văn Chử Đức Thành Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn MỤC LỤC MỞ ĐẦU CHƢƠNG I TỔNG QUAN VỀ NHẬN DẠNG 1.1 Tổng quan nhận dạng 1.1.1 Không gian biểu diễn đối tƣợng, không gian diễn dịch 1.1.2 Mơ hình chất q trình nhận dạng 1.2 Nhận dạng dựa phân hoạch không gian 1.2.1 Phân hoạch không gian .7 1.2.2 Hàm phân lớp hay hàm định 1.2.3 Nhận dạng thống kê 1.2.4 Một số thuật toán nhận dạng tiêu biểu tự học .10 1.3 Nhận dạng theo cấu trúc 12 1.3.1 Biểu diễn định tính 12 1.3.2 Phƣơng pháp định dựa vào cấu trúc 13 1.4 Nhận dạng mạng nơron 14 1.4.1 Bộ não Nơron sinh học 15 1.4.2 Mơ hình mạng nơron 17 CHƢƠNG II KỸ THUẬT NHẬN DẠNG BẰNG THỐNG KÊ 20 2.1 Bài toán 20 2.2 Nhận dạng có giám sát 21 2.3 Nhận dạng khơng có giám sát 25 2.3.1 Đặt toán .25 2.3.2 Giải toán trƣờng hợp cho trƣớc số k 25 2.3.3 Trƣờng hợp số k chƣa cho biết trƣớc .28 2.4 Mơ hình xích Markov 30 2.5 Đặc trƣng ngôn ngữ tự nhiên 32 2.5.1 Tần số đơn tƣơng đối ngôn ngữ Tiếng Anh, Tiếng Pháp, Tiếng Đức 33 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 2.5.2 Tần số đơi móc xích Tiếng Anh, Tiếng Pháp, Tiếng Đức 34 CHƢƠNG III THỰC NGHIỆM 38 3.1 Bài toán nhận dạng văn La Tinh .38 3.2 Thuật toán sử dụng tần số đơn 38 3.2.1.Xây dựng sở liệu để máy học 38 3.2.2.Phân biệt trực tiếp 42 3.2.3 Một số ví dụ 44 3.3 Thuật toán dựa xich Markov cấp hữu hạn trạng thái 46 3.3.1 Xây dựng sở liệu để máy học .46 3.3.2 Nhận biết trực tiếp 57 3.3.3 Một số ví dụ 59 3.4.Chƣơng trình Demo 72 3.4.1 Giao diện chƣơng trình 73 3.4.2 Xây dựng mẫu thử .74 3.4.3 Thực thi chƣơng trình với thuật toán sử dụng tần số đơn 75 3.4.4 Thực thi chƣơng trình với thuật tốn dựa xích Markov cấp hữu hạn trạng thái 76 3.4.5 So sánh thuật toán 78 KẾT LUẬN 80 TÀI LIỆU THAM KHẢO 81 PHỤ LỤC 82 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn DANH MỤC CÁC HÌNH Hình 1.1 Sơ đồ tổng quát hệ nhận dạng Hình 1.2 Cấu tạo nơron sinh học 15 Hình 1.3 Mơ hình nơron nhân tạo .17 Hình 3.1 Sơ đồ khối thuật tốn sử dụng tần số đơn 43 Hình 3.2 Sơ đồ khối thuật tốn dựa xich Markov cấp hữu hạn trang thái 58 Hình 3.3.Giao diện chƣơng trình 73 Hình 3.4 Thực lấy liệu đầu vào .74 Hình 3.5 Màn hình thực thi thuật toán sử dụng tần số đơn .75 Hình 3.6 Kết hiển thị dang file.txt thuật toán sử dụng tần số đơn 76 Hình 3.7 Màn hình thực thi thuật tốn dựa xích Markov cấp hữu hạn trạng thái .77 Hình 3.8 Kết hiển thị dang file.txt thuật tốn dựa xích Markov cấp hữu hạn trạng thái 77 Hình 3.9 Sơ đồ biểu diễn độ xác hai thuật tốn 78 Hình 3.10 Kết thuật toán sử dụng tần số đơn 78 Hình 3.11 Kết thuật tốn dựa xích Markov cấp hữu hạn trạng thái 79 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn DANH MỤC CÁC BẢNG Bảng 2.1 Tần số đơn tƣơng đối ngôn ngữ Anh, Pháp, Đức .33 Bảng 2.2 Bảng tần số đơi móc xích Tiếng Anh .35 Bảng 2.3 Bảng tần số đơi móc xích Tiếng Pháp 36 Bảng 2.4 Bảng tần số đơi móc xích Tiếng Đức .37 Bảng 3.1 Ƣớc lƣợng hợp lí cực đại đặc trƣng ngơn ngữ Anh, Pháp , Đức, Dãy ngẫu nhiên 39 Bảng 3.2 Ƣớc lƣợng hợp lí cực đại đặc trƣng ngôn ngữ Anh, Pháp , Đức, Dãy ngẫu nhiên 40 Bảng 3.3 Ƣớc lƣợng hợp lí cực đại đặc trƣng ngơn ngữ Anh, Pháp , Đức, .41 Bảng 3.4 Ƣớc lƣợng hợp lí cực đại đặc trƣng ngơn ngữ Anh, Pháp , Đức, .42 Bảng 3.5 Ƣớc lƣợng đôi móc xích tiếng Đức 48 Bảng 3.6 Ƣớc lƣợng đơi móc xích tiếng Pháp 49 Bảng 3.7 Ƣớc lƣợng đơi móc sích tiếng Anh 50 Bảng 3.8 Ƣớc lƣợng ma trận xác suất chuyển trạng thái P mô hình Markov ứng với ngơn ngữ tự nhiên tiếng Đức 53 Bảng 3.9.Ƣớc lƣợng ma trận xác suất chuyển trạng thái P mơ hình Markov ứng với ngơn ngữ tự nhiên tiếng Pháp 54 Bảng 3.10 Ƣớc lƣợng ma trận xác suất chuyển trạng thái P mơ hình Markov ứng với ngôn ngữ tự nhiên tiếng Anh 55 Bảng 3.11.Ƣớc lƣợng ma trận xác suất chuyển trạng thái P mơ hình Markov ứng với ngơn ngữ tự nhiên tiếng dãy ngẫu nhiên .56 Số hóa Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn MỞ ĐẦU Nhận dạng lý thuyết toán học có nhiều ứng dụng thực tiễn, nhƣ nhận dạng tiếng nói, nhận dạng hình ảnh, nhận dạng chữ ký, phân loại ngôn ngữ , xây dựng tiêu chuẩn rõ ứng dụng phân tích mã v.v Trên giới nhƣ nƣớc có nhiều nhà nghiên cứu vấn đề có phần mềm áp dụng cho nhiều lĩnh vực khác nhau: phần mềm nhận dạng tiếng việt, phần mềm nhận dạng vân tay, phần mềm kiểm soát E-mail hệ thống Internet… Nhận dạng chữ tốn hữu ích, quen thuộc đƣợc ứng dụng nhiều thực tế đặc biệt lĩnh vực nhận dạng phân loại văn thu hút nhiều tác giả quan tâm nghiên cứu phƣơng pháp nhận dạng khác nhau: logic mờ, giải thuật di truyền, mơ hình xác suất thống kê, mơ hình mạng nơ ron Đã có nhiều cơng trình nghiên cứu thực việc nhận dạng, phân loại văn La Tinh đạt tỷ lệ xác cao, nhiên ứng dụng chƣa thể đáp ứng hồn tồn nhu cầu ngƣời sử dụng nên ngày ngƣời ta tiếp tục nghiên cứu phƣơng pháp nhận dạng tốt hƣớng đến dùng cho thiết bị di động, toán thời gian thực Sau tìm hiểu tiến cơng nghệ nhận dạng chữ La Tinh nhƣ tính phần mềm nhận dạng chữ, đƣợc tƣ vấn giáo viên hƣớng dẫn, lựa chọn đƣợc hƣớng nghiên cứu thiết thực với đề tài: "Tìm hiểu kỹ thuật nhận dạng văn lớp ngôn ngữ La Tinh" Trong khuôn khổ luận văn, tơi tập trung nghiên cứu, giải tốn nhận dạng ngôn ngữ tự nhiên dựa vào phân hoạch khơng gian (nhận dạng theo thống kê tốn học), lớp ngơn ngữ tiêu biểu đƣợc nghiên cứu ngơn ngữ La Tinh Việc nghiên cứu quan trọng cần thiết, kết nghiên cứu có khả mở rộng ứng dụng việc xây dựng chƣơng trình kiểm sốt E-mail đặc biệt chƣơng trình phân tích mã tự động, vấn đề cần thiết an ninh quốc phịng Đó ý nghĩa thực tiễn đề tài  Nội dung luận văn vấn đề cần giải Nghiên cứu trình Markov hữu hạn trạng thái Nghiên cứu xây dựng mơ hình Markov ứng với ngơn ngữ tự nhiên nhƣ : Tiếng Anh, Tiếng Pháp, Tiếng Đức Giải toán phân lớp đối tƣợng cho trƣờng hợp số lớp biết trƣớc số lớp chƣa biết Nghiên cứu xây dựng ƣớc lƣợng tham số xích Markov Ứng dụng tốn kiểm định giả thiết thống kê (testing of statistic hypothesis) để giải tốn nhận dạng ngơn ngữ Lập trình thử nghiệm  Phƣơng pháp nghiên cứu Phƣơng pháp nghiên cứu ứng dụng phƣơng pháp tốn học, nhận dạng xử lý ngơn ngữ, nghiên cứu khảo sát lý thuyết xây dựng thuật tốn, lập trình kiểm thử thuật tốn đánh giá Cụ thể: - Tìm hiểu cập nhật kiến thức phƣơng pháp nhận dạng ngôn ngữ tự nhiên, trí tuệ nhân tạo, khảo sát lý thuyết mơ hình, cơng cụ tốn học, thiết kế xây dựng thuật toán, kỹ thuật tổ chức liệu ngơn ngữ lập trình - Tìm đọc báo, cơng trình nghiên cứu khoa học liên quan đến chủ đề nghiên cứu nƣớc giới Cụ thể tài liệu kỹ thuật thống kê tốn học q trình Markov; quy luật ngơn ngữ nhƣ q trình ngẫu nhiên dừng, không hậu quả; kỹ thuật nhận dạng ngôn ngữ tự nhiên Hình thành đƣợc tổng quan tƣơng đối đầy đủ tình hình nghiên cứu liên quan đến chủ đề giới - Lập trình cài đặt số kỹ thuật nhận dạng ngôn ngữ La Tinh đánh giá kết  Cấu trúc luận văn đƣợc chia thành chƣơng: Chƣơng 1: " Tổng quan nhận dạng ", trình bày tổng quan hƣớng nghiên cứu nhận dạng Chƣơng 2: " Kỹ thuật nhận dạng thống kê ", trình bày ứng dụng kỹ thuật thống kê Tốn học để nhận dạng ngôn ngữ tự nhiên tìm hiểu đặc trƣng số ngơn ngữ tự nhiên tiêu biểu Chƣơng 3: " Thực Nghiệm ", trình bày thuật toán nhận dạng văn La Tinh đƣa kết với số mẫu ngôn ngữ điển hình CHƢƠNG I TỔNG QUAN VỀ NHẬN DẠNG 1.1 Tổng quan nhận dạng Nhận dạng trình phân loại đối tƣợng đƣợc biểu diễn theo mơ hình gán cho chúng vào lớp (gán cho đối tƣợng tên gọi) dựa theo quy luật mẫu chuẩn Quá trình nhận dạng dựa vào mẫu học biết trƣớc gọi nhận dạng có giám sát hay học có giám sát (supervised learning); trƣờng hợp ngƣợc lại nhận dạng khơng giám sát hay học khơng có giám sát (unsupervised learning) 1.1.1 Không gian biểu diễn đối tượng, không gian diễn dịch - Không gian biểu diễn đối tƣợng: Các đối tƣợng quan sát hay thu thập đƣợc, thƣờng đƣợc biểu diễn tập đặc trƣng hay đặc tính Nhƣ trƣờng hợp xử lý ảnh, ảnh sau đƣợc tăng cƣờng để nâng cao chất lƣợng, phân vùng trích chọn đặc tính đƣợc biểu diễn đặc trƣng nhƣ biên, miền đồng nhất,v.v Ngƣời ta thƣờng phân đặc trƣng theo loại nhƣ: đặc trƣng tơpơ, đặc trƣng hình học đặc trƣng chức Việc biểu diễn ảnh theo đặc trƣng phụ thuộc vào ứng dụng Ở ta đƣa cách hình thức việc biểu diễn đối tƣợng Giả sử đối tƣợng X (ảnh, chữ viết, dấu vân tay,v.v.); đƣợc biểu diễn n thành phần (n đặc trƣng): X={x1,x2, ,xn}; xi biểu diễn đặc tính Khơng gian biểu diễn đối tƣợng thƣờng gọi tắt không gian đối tƣợng X đƣợc ký hiệu là: X ={X1,X2, ,Xn} Xi biểu diễn đối tƣợng Khơng gian vô hạn Để tiện xem xét xét tập X hữu hạn - Không gian diễn dịch: Không gian diễn dịch tập tên gọi đối tƣợng Kết thúc trình nhận dạng ta xác định đƣợc tên gọi cho đối tƣợng tập khơng gian đối Hình 3.7 Màn hình thực thi thuật tốn xích Markov cấp hữu hạn trạng thái Để lƣu kết ta nhận chọn (Lƣu kết quả) hộp thoại (Save As) xuất , ta đặt tên file (File name) chọn (Save) Kết thuật tốn đƣợc lƣu dƣới dạng tệp txt Hình 3.8 Kết hiển thị dang file.txt thuật tốn xích Markov cấp hữu hạn 77 3.4.5 So sánh thuật tốn Hình 3.9 Sơ đồ biểu diễn độ xác hai thuật toán Thuật toán sử dụng tần số đơn với số lƣợng mẫu thử 240 tệp bao gồm 80 tệp tiếng Anh, 80 tệp tiếng Pháp, 80 tệp tiếng Đức thực thi, thuật thuật toán nhận dạng xác đƣợc 198 tệp tổng số 240 tệp Hình 3.10 Kết thuật tốn sử dụng tần số đơn Vì thuật tốn đơn tính tần số đơn (đếm số lần xuất ký tự (chữ cái) văn cần nhận dạng) làm số phép toán số học đơn giản 78 kết nhận dạng nhanh Điều quan trọng công tác thám mã tự động để tìm khóa Tuy nhiên thuật tốn khơng hiệu số trƣờng hợp đặc biệt; chẳng hạn mã đƣợc kiểm tra mã chuyển vị thuật tốn khơng phân biệt mã hay rõ đọc đƣợc có nghĩa Thuật tốn dựa xích Markov cấp hữu hạn trạng thái với số lƣợng mẫu thử 240 tệp bao gồm 80 tệp tiếng Anh, 80 tệp tiếng Pháp, 80 tệp tiếng Đức thực thi, thuật thuật tốn nhận dạng xác đƣợc 228 tệp tổng số 240 tệp Hình 3.11 Kết thuật tốn dựa xích Markov cấp hữu hạn trạng thái Thuật tốn dựa xích Markov cấp hữu hạn trạng thái Xây dựng ƣớc lƣợng ma trận xác suất chuyển trạng thái mơ hình Markov ứng với ngơn ngữ tự nhiên tiếng Đức, Pháp Anh Tính tần số đơi móc xích dãy ký tự khắc phục đƣợc nhƣợc điểm thuật toán sử dụng tần số đơn 79 KẾT LUẬN  KẾT QUẢ ĐẠT ĐƢỢC: Quá trình tìm hiểu kỹ thuật nhận dạng văn lớp ngôn ngữ La Tinh luận văn làm đƣợc số cơng việc sau: Trình bày vấn đề kỹ thuật nhận dạng nói chung, hƣớng nghiên cứu giới Nghiên cứu trình Markov hữu hạn trạng thái Nghiên cứu xây dựng mơ hình Markov ứng với ngơn ngữ tự nhiên nhƣ : Tiếng Anh, Tiếng Pháp, Tiếng Đức Giải toán phân lớp đối tƣợng cho trƣờng hợp số lớp biết trƣớc số lớp chƣa biết Nghiên cứu xây dựng ƣớc lƣợng tham số xích Markov Ứng dụng tốn kiểm định giả thiết thống kê (testing of statistic hypothesis) để giải tốn nhận dạng ngơn ngữ Đề xuất xây dựng đƣợc thuật toán để nhận dạng văn (Anh, Pháp, Đức) lớp ngôn ngữ la tinh Thuật tốn đƣợc thể máy tính ngơn ngữ C#, kết thử nghiệm tốt  HƢỚNG PHÁT TRIỂN: Thuật tốn dựa xích Markov hữu hạn trạng thái đƣợc mở rộng để nhận biết nhiều văn La tinh khác nhƣ tiếng Việt, tiếng Indonesia, tiếng Italia.v.v Khơng thế, đƣợc mở rộng sang ngôn ngữ tự nhiên phi la tinh khác nhƣ tiếng Lào, Thái Lan, Tiếng Campuchia lớp ngôn ngữ tiếng Nhật , Trung, Triều Tiên 80 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Lƣơng Mạnh Bá, Nguyễn Thanh Thuỷ (1999), Nhập môn xử lý ảnh số, Nhà xuất khoa học kỹ thuật, tr.154-170 [2] Hồ Văn Canh, Phạm Quốc Doanh (2002), Thuật toán nhận dạng ngôn ngữ tự nhiên, tr 3-20 [3] Trần Duy Hƣng, Nguyễn Ngọc Cƣờng (2002), Nhận dạng tự động ngôn ngữ tiếng Anh, Tạp chí "Tin học điều khiển học", Trung tâm Khoa học tự nhiên Công nghệ Quốc gia số 3/2002 [4] Hoàng Minh Tuấn, Một số vấn đề xây dựng siêu máy tính chi phí thay cho ứng dụng xử lý thơng tin tính toán khoa học kỹ thuật, Luận văn Tiến sĩ kỹ thuật, Mã số 62.52.70.01 tr 35-55 [5] Nguyễn Viết Thế, Hồ Văn Canh ( 2010), Nhập mơn Phân tích thơng tin có bảo mật, NXB Thơng tin Truyền thơng Tiếng Anh [6] AndrewR.Web.2002 John Wiley & Sons, Ltd Statistical Pattern Recognition, Second Edition [7] Richard O Duda, Peter E Hart, David G Stork Wiley-interscience “Bayesian decision theory”, Pattern Classification, Second Edition: 39-78 [8] Wilks, S S 1962 Mathematical Statitics New York: John Wiley Mark Stam, Richar M.Low ( 2007 ): Applied Cryptanalysis Breaking ciphers in the Real World A John wiley & sons, Inc, publication 2007 81 PHỤ LỤC CẤU TRÚC CÁC LỚP TRONG CHƢƠNG TRÌNH Cấu trúc chung Lớp Program: đầu vào chƣơng trình, gọi đến lớp MainFrom Lớp MainForm: lớp xử lý giao diện Lớp SimpleRecognition: Xử lý thuật toán Lớp MarkovRecognition: Xử lý thuật toán 2 Chi tiết lớp SimpleRecognition - Lớp thực việc nhận dạng ngôn ngữ theo thuật toán sử dụng tần số xuất chữ câu Các hàm bao gồm: caclConnect: lấy giá trị ma trận móc xích từ tệp calcFreq: tính tần số xuất kí tự chuỗi đầu vào calcS: tính tích vơ hƣớng ma trận móc xích mảng tần số xuất 82 using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Windows.Forms; namespace TextRecognition { public class SimpleRecognition { public static Dictionary dictLang = new Dictionary { {0,"Không đọc đƣợc"}, {1,"Tiếng Anh"}, {2,"Tiếng Đức"}, {3,"Tiếng Pháp"} }; public static string fileContent; public static string fileData; public static int type = 0; // Tần số đơn ngôn ngữ private static int[] freq; // Giá trị móc xích đọc từ tệp private static int[,] connect; public static void algorithm() { 83 type = 0; freq = new int[26]; connect = new int[4, 26]; calcFreq(); calcConnect(); int i = 0; double sValue = 0.0; while (i < 4) { sValue = calcS(i); if (sValue >= 0) { type = i; i = 4; } i++; } if (sValue < 0) { type = i - 1; } } // Tính tần số đơn public static void calcFreq() { using (FileStream fs = File.Open(fileContent, FileMode.Open)) using (BufferedStream bs = new BufferedStream(fs)) using (StreamReader sr = new StreamReader(bs)) { string s; while ((s = sr.ReadLine()) != null) { for (int i = 0; i < s.Length; i++) { if ('A'

Ngày đăng: 26/03/2021, 09:09

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

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

Tài liệu liên quan