GIỚI THIỆU NGÔN NGỮ VB 6 0

65 320 0
GIỚI THIỆU NGÔN NGỮ VB 6 0

Đ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

Kế toán

LỜI CẢM ƠN Trước hết em xin chân thành cảm ơn thầy giáo Ths Vũ Mạnh Khánh thầy giáo Ths Đặng Quang Huy, người hướng dẫn em nhiều suốt trình tìm hiểu nghiên cứu hồn thành khóa luận từ lý thuyết đến ứng dụng Sự hướng dẫn thầy giúp em có thêm hiểu biết xử lý ngôn ngữ tự nhiên úng dụng Đồng thời em xin chân thành cảm ơn thầy cô môn công nghệ thông tin thầy cô trường trang bị cho em kiến thức cần thiết để em hồn thành tốt khóa luận Em xin gửi lời cảm ơn đến thành viên lớp CT1002, người bạn bên cạnh động viên, tạo điều kiện thuận lợi em tìm hiểu, hồn thành tốt khóa luận Sau cùng, em xin gửi lời cảm ơn đến gia đình, bạn bè tạo điều kiện để em xây dựng thành công khóa luận Hải Phịng, ngày…….tháng……năm 2010 Sinh viên Bùi Văn Tú MỤC LỤC MỞ ĐẦU .1 Chương : GIỚI THIỆU VỀ XỬ LÝ NGÔN NGỮ TỰ NHIÊN I Tổng quan II Cơ sở khoa học II.1 Một số khái niệm .3 II.2 Lý thuyết thông tin II.3 Quy trình xử lý ngơn ngữ tự nhiên II.4 Một số thuật tốn phân tích cú pháp 11 III Các ứng dụng xử lý ngôn ngữ tự nhiên 14 Chương 2: NGỮ PHÁP TIẾNG ANH 17 I Các tiếng anh: 17 II: Cách sử dụng số thì: 17 II.1 Thì đơn(The Simple Present Tense): 17 II.2 Thì tiếp diễn(The present continuous/progressive tense) .18 II.3 Thì hồn thành(The Present Prefect Tense) 19 II.4 Thì hồn thành tiếp diễn(The Present Prefect continuousTense) 19 II.5 Thì khứ đơn(The Simple Past Tense) 20 II.6 Thì khứ tiếp diễn (The Past continuous Tense) 21 II.7 Thì tương lai đơn(The Simple Future Tense) .21 Chương 3: GIỚI THIỆU NGÔN NGỮ VB 6.0 .23 I Giới thiệu 23 II Các thao tác VB 23 III Lập trình VB 26 III.1 Kiểu liệu - biến .27 III.2 Các cấu trúc lệnh VB 31 III.3 Các hàm xử lý chuỗi Vb6 32 Chương 4: CHƢƠNG TRÌNH THỰC NGHIỆM 35 I Giới thiệu 35 II Chiến lược thuật toán 36 II.1 Chiến lược 36 II.2 Thuật toán: 39 III Mô tả chi tiết 40 III.1 Dữ liệu đầu vào kết chương trình 40 III.2 Form Từ Điển 41 III.3 Form Sửa lỗi 46 IV Hạn chế hướng phát triển đề tài 60 KẾT LUẬN 61 TÀI LIỆU THAM KHẢO 62 ĐỒ ÁN TỐT NGHIỆP MỞ ĐẦU Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngơn ngữ người Trong trí tuệ nhân tạo xử lý ngơn ngữ tự nhiên phần khó liên quan đến việc phải hiểu ý nghĩa ngôn ngữ - công cụ hoàn hảo tư giao tiếp Xử lý ngơn ngữ xử lý thơng tin đầu vào “dữ liệu ngôn ngữ” (dữ liệu cần biến đổi), tức liệu “văn bản” hay “tiếng nói” Các liệu liên quan đến ngôn ngữ viết (văn bản) nói (tiếng nói) dần trở nên kiểu liệu người có lưu trữ dạng điện tử Đặc điểm kiểu liệu khơng có cấu trúc nửa cấu trúc chúng lưu trữ khuôn dạng cố định bảng biểu Để máy tính hiểu thực thi chương trình viết ngơn ngữ cấp cao, ta cần phải có trình biên dịch thực việc chuyển đổi chương trình sang chương trình dạng ngơn ngữ đích Chữ viết phương tiện giao tiếp quan trọng người qua việc xử dụng sai chữ viết: sai từ, sai câu… dễ dẫn tới hậu nghiêm trọng việc thể điều muốn diễn đạt Trong khi, lỗi xử dụng từ, câu tránh khỏi, người học tiếng nước ngồi Chương trình mơ sửa lỗi từ vựng việc sử dụng câu tiếng Anh lĩnh vực chương trình xử lý ngơn ngữ tự nhiên Việc tìm sửa lỗi sử dụng câu tiếng Anh giúp ích cho người học tiếng Anh sở lập trình cho công việc khác lĩnh vực xử lý ngôn ngữ tự nhiên BÙI VĂN TÚ – CT1002 ĐỒ ÁN TỐT NGHIỆP Chương : GIỚI THIỆU VỀ XỬ LÝ NGÔN NGỮ TỰ NHIÊN I Tổng quan Xử lý ngơn ngữ xử lý thơng tin đầu vào “dữ liệu ngôn ngữ” (dữ liệu cần biến đổi), tức liệu “văn bản” hay “tiếng nói” Các liệu liên quan đến ngôn ngữ viết (văn bản) nói (tiếng nói) dần trở nên kiểu liệu người có lưu trữ dạng điện tử Đặc điểm kiểu liệu khơng có cấu trúc nửa cấu trúc chúng lưu trữ khuôn dạng cố định bảng biểu Theo đánh giá cơng ty Oracle, có đến 80% liệu khơng cấu trúc lượng liệu lồi người có [Oracle Text] Với đời phổ biến Internet, sách báo điện tử, máy tính cá nhân, viễn thơng, thiết bị âm thanh,… người người tạo liệu văn hay tiếng nói Vấn đề ta xử lý chúng, tức chuyển chúng từ dạng ta chưa hiểu thànhcác dạng ta hiểu giải thích được, tức ta tìm thơng tin, tri thức hữu ích cho Giả sử có câu sau tiếng nước ngoài: - “We meet here today to talk about Vietnamese language and speech processing.” - “Aujourd'hui nous nous réunissons ici pour discuter le traitement de langue et de parole vietnamienne.” - “Mы встрачаемся здесь сегодня, чтобы говорить о вьетнамском языке и обработке речи.” Nếu có dịch, có chương trình máy tính dịch (biến đổi) chúng tiếng Việt, ta hiểu nghĩa câu là: “Hôm gặp để bàn xử lý ngôn ngữ tiếng nói tiếng Việt.” Nếu câu lưu trữ tệp tiếng Anh, Pháp, Nga Việt ta nhìn thấy trên, ta có liệu “văn bản” Nếu đọc câu này, ghi âm lại, ta chuyển chúng vào máy tính dạng tệp tín hiệu (signal) “tiếng nói” Tín hiệu sóng âm hai âm tiết tiếng Việt nhìn thấy sau: BÙI VĂN TÚ – CT1002 ĐỒ ÁN TỐT NGHIỆP Hình : Tín hiệu sóng âm hai âm tiêt Tiếng Việt Tuy nhiên, văn thật (một báo khoa học chẳng hạn) có đến hàng nghìn câu, ta khơng phải có mà hàng triệu văn Web nguồn liệu văn khổng lồ, với thư viện điện tử − tương gần sách báo xưa nguồn âm chuyển hết vào máy tính (chẳng hạn chương trình nhận dạng chữ, thu nhập âm thanh, gõ thẳng vào máy) − sớm chứa toàn kiến thức nhân loại Vấn đề “xử lý” (chuyển đổi) khối liệu văn tiếng nói khổng lồ qua dạng khác để người có thơng tin tri thức cần thiết từ chúng II Cơ sở khoa học II.1 Một số khái niệm II.1.1 Ngôn ngữ tự nhiên Ngôn ngữ hệ thống để giao thiệp hay suy luận dùng cách biểu diễn phép ẩn dụ loại ngữ pháp theo logic, bao hàm tiêu chuẩn hay thật thuộc lịch sử siêu việt Nhiều ngôn ngữ sử dụng điệu bộ,âm thanh, lý hiệu, hay chữ viết, cố gắng truyền khái niệm, ý nghĩa, ý nghĩ, mà nhiều khía cạnh nằm sát q, khó phân biệt II.1.2 Xử lý ngơn ngữ tự nhiên Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngôn ngữ người Trong trí tuệ nhân tạo xử lý ngơn ngữ tự nhiên phần khó liên quan đến việc phải hiểu ý nghĩa ngơn ngữ-cơng cụ hồn hảo tư giao tiếp II.1.3 Trí tuệ nhân tạo Trí tuệ nhân tạo hay trí thơng minh nhân tạo (tiếng Anh: artificial intelligence hay machine intelligence, thường viết tắt AI) trí tuệ BÙI VĂN TÚ – CT1002 ĐỒ ÁN TỐT NGHIỆP biểu diễn hệ thống nhân tạo Thuật ngữ thường dùng để nói đến máy tính có mục đích khơng định ngành khoa học nghiên cứu lý thuyết ứng dụng trí tuệ nhân tạo II.1.4 Nhập nhằng Nhập nhằng ngôn ngữ học tượng thường gặp, giao tiếp hàng ngày người để ý đến họ xử lý tốt tượng Nhưng ứng dụng liên quan đến xử lý ngôn ngữ tự nhiên phải thao tác với ý nghĩa từ vựng mà điển hình dịch tự động nhập nhằng trở thành vấn đề nghiêm trọng Ví dụ câu cần dịch có xuất từ “đường” câu “ra chợ mua cho mẹ đường” vấn đề nảy sinh cần dịch từ road hay sugar, người xác định chúng dễ dàng vào văn cảnh dấu hiệu nhận biết khác với máy khơng Một số tượng nhập nhằng: Nhập nhằng ranh giới từ, Nhập nhằng từ đa nghĩa, Nhập nhằng từ đồng âm (đồng tự), Nhập nhằng từ loại II.2 Lý thuyết thông tin II.2.1 Khái niệm Lý thuyết thông tin nghiên cứu về: Áp dụng công cụ tốn học việc lượng hóa data cho mục đích lưu trữ truyền liệu Độ đo thơng tin Entropy, số lượng bít trung bình cần thiết việc lưu trữ hay truyền liệu Đóng vai trị quan trọng xử lý thơng tin phương pháp thống kê, đặc biệt NLP II.2.2 Entropy Entropy độ đo thông tin Entropy ~ hỗn độn, mờ, trái nghĩa với order Đo độ không chắn: Entropy thấp -> Đo độ không chắn thấp; Entropy cao -> Đo độ không chắn cao Trong vật lý: Entropy giảm lượng sử dụng Ký hiệu p(x) phân bố biến ngẫu nhiên X không gian mẫu X Entropy tính sau: H(X) = - ∑ x p(x) log2p(x) Đơn vị: bits (log10: nats) Kí hiệu: H(X) = Hp(X) = H(p) BÙI VĂN TÚ – CT1002 ĐỒ ÁN TỐT NGHIỆP II.2.3 Perplexity - Cross Entropy Entropy liên quan đến hiểu ngôn ngữ? Liên quan đến ko xác: vấn đề có nhiều thơng tin Entropy thấp.Có nhiều mơ hình -> entropy đo chất lượng mơ hình? Ví dụ: mơ hình mã hóa ký tự với trung bình số bít sử dụng ký tự 2.5 Đây mơ hình ngơn ngữ 0-gram, đặt liên kết âm tiết sinh mơ hình tốt hơn, chẳng hạn cho entropy 1.22 bít ký tự Perplexity Entropy phân bố p(X) là: Hp(X)Thì giá trị 2H gọi perplexity perplexity số lượng mẫu trung bình mà biến phải lựa chọn Perlexity bé (tức entropy bé) mơ hình tốt số bít dùng để mã hóa thơng tin bé Ví dụ : Cho ngựa với xác suất lựa chọn sau: Ngựa 1: 1/2 ngựa 2: 1/4 ngựa 3: 1/8 ngựa 4: 1/16 Ngựa 5: 1/64 ngựa 2: 1/64 ngựa 3: 1/64 ngựa 4: 1/64 Entropy rate Tính entropy dãy từ ngôn ngữ L H(w1, ,wn) = - W L p(W1n)log(W1n) Entropy rate coi per-word entropy Coi ngơn ngữ q trình ngẫu nhiên sản xuất dãy từ Cần quan tâm đến dãy vô hạn từ Entropy rate H(L) định nghĩa sau: H ( L) lim H (w1, , wn ) n n lim n n p(w1, , wn ) log p(w1, , wn ) L Cross Entropy Cross entropy sử dụng phân bố thật p Cross-entropy phân bố m phân bố thật p định nghĩa: H ( p, m) lim n n p(w1, , wn ) log m(w1, , wn ) L lim n log m(w1, , wn ) n (theo lý thuyết Shannon-McMillan-Breiman) BÙI VĂN TÚ – CT1002 ĐỒ ÁN TỐT NGHIỆP Cross entropy để so sánh mơ hình : H(p) ≤ H(p,m) Cross entropy H(p,m) cận entropy H(p); Mơ hình m xác cross entropy H(p,m) gần với entropy H(p); Độ khác H(p,m) H(p) đo độ xác mơ hình m; Các cơng thức Cross Entropy Cross entropy biến X với phân bố xác suất p(x) phân bố m tính sau: H ( X , m) H ( X ) D( p || m) p( x) log m( x) x Chú ý: D(p||q) = ∑x p(x) log2 (p(x)/q(x)) II.3 Quy trình xử lý ngơn ngữ tự nhiên Để máy tính hiểu thực thi chương trình viết ngơn ngữ cấp cao, ta cần phải có trình biên dịch thực việc chuyển đổi chương trình sang chương trình dạng ngơn ngữ đích Chương trình bày cách tổng quan cấu trúc trình biên dịch mối liên hệ với thành phần khác - “họ hàng” - tiền xử lý, tải soạn thảo liên kết,v.v Cấu trúc trình biên dịch mô tả chương cấu trúc mức quan niệm bao gồm giai đoạn: Phân tích từ vựng, Phân tích cú pháp, Phân tích ngữ nghĩa, Sinh mã trung gian, Tối ưu mã Sinh mã đích Nói cách đơn giản, trình biên dịch chương trình làm nhiệm vụ đọc chương trình viết ngôn ngữ - ngôn ngữ nguồn (source language) - dịch thành chương trình tương đương ngôn ngữ khác - ngôn ngữ đích (target languague) Một phần quan trọng q trình dịch ghi nhận lại lỗi có chương trình nguồn để thơng báo lại cho người viết chương trình Hình : Một trình biên dịch BÙI VĂN TÚ – CT1002 ĐỒ ÁN TỐT NGHIỆP II.3.1 Phân tích từ vựng (Lexical Analysis) Trong trình biên dịch, giai đọan phân tích từ vựng đọc chương trình nguồn từ trái sang phải (quét nguyên liệu - scanning) để tách thành thẻ từ (token) Ví dụ 1: Q trình phân tích từ vựng cho câu lệnh gán position := initial + rate * 60 tách thành token sau: Danh biểu position Ký hiệu phép gán := Danh biểu initial Ký hiệu phép cộng (+) Danh biểu rate Ký hiệu phép nhân (*) Số 60 Trong trình phân tích từ vựng khoảng trắng (blank) bị bỏ qua II.3.2 Phân tích cú pháp (Syntax Analysis) Giai đoạn phân tích cú pháp thực cơng việc nhóm thẻ từ chương trình nguồn thành ngữ đoạn văn phạm (grammatical phrase), mà sau trình biên dịch tổng hợp thành phẩm Thơng thường, ngữ đoạn văn phạm biểu diễn dạng phân tích cú pháp (parse tree) với: - Ngôn ngữ đặc tả luật sinh - Phân tích cú pháp dựa vào luật sinh để xây dựng phân tích cú pháp Ví dụ 1.3: Giả sử ngôn ngữ đặc tả luật sinh sau: Stmt → id := expr expr → expr + expr | expr * expr | id | number Với câu nhập: position := initial + rate * 60, phân tích cú pháp xây dựng sau: BÙI VĂN TÚ – CT1002 ... Tense) 20 II .6 Thì khứ tiếp diễn (The Past continuous Tense) 21 II.7 Thì tương lai đơn(The Simple Future Tense) .21 Chương 3: GIỚI THIỆU NGÔN NGỮ VB 6. 0 .23 I Giới thiệu ... Trong biểu thức position := initial + rate * 60 Các danh biểu (tên biến) khai báo real, 60 số integer trình biên dịch đổi số nguyên 60 thành số thực 60 .0 Hình 4: Chuyển đổi kiểu phân tích cú pháp... ngựa 4: 1/ 16 Ngựa 5: 1 /64 ngựa 2: 1 /64 ngựa 3: 1 /64 ngựa 4: 1 /64 Entropy rate Tính entropy dãy từ ngôn ngữ L H(w1, ,wn) = - W L p(W1n)log(W1n) Entropy rate coi per-word entropy Coi ngơn ngữ q trình

Ngày đăng: 09/12/2013, 14:11

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