tìm hiểu các mô hình ngôn ngữ

13 182 0
tìm hiểu các mô hình ngôn ngữ

Đ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

Lý thuyết ngôn ngữ BÁO CÁO LÝ THUYẾT NGÔN NGỮ NHÓM TÌM HIỂU CÁC MÔ HÌNH NGÔN NGỮ Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ LỜI MỞ ĐẦU Ngôn ngữ tự nhiên ngôn ngữ người sử dụng giao tiếp hàng ngày: nghe, nói, đọc, viết Mặc dù người dễ dàng hiểu học ngôn ngữ tự nhiên; việc làm cho máy hiểu ngôn ngữ tự nhiên chuyện dễ dàng Sở dĩ có khó khăn ngôn ngữ tự nhiên có luật, cấu trúc ngữ pháp phong phú nhiều ngôn ngữ máy tính, để hiểu nội dung giao tiếp, văn ngôn ngữ tự nhiên cần phải nắm ngữ cảnh nội dung Do vậy, để xây dựng ngữ pháp, từ vựng hoàn chỉnh, xác để máy hiểu ngôn ngữ tự nhiên việc tốn công sức đòi hỏi người thực phải có hiểu biết sâu ngôn ngữ học Các phương pháp xử lý ngôn ngữ tự nhiên dựa thống kê không nhắm tới việc người tự xây dựng mô hình ngữ pháp mà lập chương trình cho máy tính “học” nhờ vào việc thống kê từ cụm từ có văn Cốt lõi phương pháp xử lý ngôn ngữ tự nhiên dựa thống kê việc xây dựng mô hình ngôn ngữ Trong báo cáo nhóm chúng em xin trình bày mô hình ngôn ngữ Ngram ứng dụng mô hình xử lý ngôn ngữ tự nhiên Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ MỤC LỤC LỜI MỞ ĐẦU Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ NỘI DUNG BÁO CÁO I.KHÁI QUÁT CHUNG 1.Mục tiêu • • • Hiểu khái niệm mô hình ngôn ngữ Tìm hiểu mô hình ngôn ngữ sử dụng xử lý ngôn ngữ tự nhiên Phân tích ví dụ cho mô hình cụ thể Giới thiệu khái niệm mô hình ngôn ngữ Mô hình ngôn ngữ phân bố xác suất tập văn Nói đơn giản, mô hình ngôn ngữ cho biết xác suất câu (hoặc cụm từ) thuộc ngôn ngữ Mô hình ngôn ngữ phận quan trọng lĩnh vực xử lý ngôn ngữ tự nhiên Có nhiều lĩnh vực xử lý ngôn ngữ tự nhiên sử dụng mô hình ngôn ngữ như: kiểm lỗi tả, dịch máy hay phân đoạn từ Chính nghiên cứu mô hình ngôn ngữ tiền đề để nghiên cứu lĩnh vực Thực chất mô hình hàm chức có đầu vào chuỗi từ đầu điểm đánh giá xác suất người ngữ nói chuỗi Chính vậy, mô hình ngôn ngữ tốt đánh giá câu ngữ pháp, trôi chảy cao chuỗi từ có thứ tự ngẫu nhiên ví dụ sau (áp dụng mô hình ngôn ngữ tiếng Việt): P[“hôm qua thứ năm”] = 0.001 P[“năm thứ hôm qua”] = Mô hình ngôn ngữ có nhiều hướng tiếp cận, chủ yếu xây dựng theo mô hình N-gram mô hình nơ-ron Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ II MÔ HÌNH NGÔN NGỮ N-GRAM Khái quát Nhiệm vụ mô hình ngôn ngữ cho biết xác suất câu ww w i Theo công thức Bayes: P(AB) = P(B|A) * P(A), thì: P(ww…wi) = P(w) * P(w|w) * P(w|ww) *…* P(wi|ww…wi-1) Theo công thức này, mô hình ngôn ngữ cần phải có lượng nhớ vô lớn để lưu hết xác suất tất chuỗi độ dài nhỏ m Rõ ràng, điều m độ dài văn ngôn ngữ tự nhiên (m tiến tới vô cùng) +) Corpus: Kho ngữ liệu +) History(về ngôn ngữ): ta hiểu tiền ngữ, chẳng hạn “ngôn ngữ tự nhiên” “ngôn ngữ tự chế” có chung tiền ngữ “ngôn ngữ tự” Cụ thể với n-gram w=w1…… wn-1wn history wn w w1w2… wn-1 Chuỗi Markov Giả thiết xác suất tính cho kiện: • • Chỉ phụ thuộc vào history trước Giới hạn nhớ: có k từ đưa vào history (các từ “cũ hơn” có khả liên quan), chẳng hạn chuỗi w= w’ww wn ta coi w ~ ww wn Ta gọi mô hình Markov bậc n Ước lượng xác suất cho mô hình N-gram Để tính xác suất văn với lượng nhớ chấp nhận được, ta sử dụng xấp xỉ Markov bậc n: P(wi|w,w,…, wi-1) = P(wi|wi-n,wi-n+1, …,wi-1) Nếu áp dụng xấp xỉ Markov, xác suất xuất từ (w i) coi phụ thuộc vào n từ đứng liền trước (w i-nwi-n+1…wi-1) phụ Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ thuộc vào toàn dãy từ đứng trước (ww…wi-1) Như vậy, công thức tính xác suất văn tính lại theo công thức: P(ww …wi) = P(w) * P(w|w) * P(w|ww) *…* P(wi-1|wi-n-1wi-n …wi-2) * P(wi|wi-nwi-n+1…wi-1) Ví dụ: P(“Hôm qua thứ năm”)=P(“hôm”)*P(“qua/hôm”)*P(“là/hôm qua”) *P(“thứ/hôm qua là”)*P(“năm/hôm qua thứ”) Với công thức này, ta xây dựng mô hình ngôn ngữ dựa việc thống kê cụm có n+1 từ Mô hình ngôn ngữ gọi mô hình ngôn ngữ N-gram Một cụm N-gram dãy gồm n phần tử liên tiếp dãy phần tử cho trước (trong liệu huấn luyện) Ví dụ: cụm 2-gram “tôi đã” thuộc câu “tôi đọc sách ấy” Các phần tử xét thường kí tự, từ cụm từ; tùy vào mục đích sử dụng Dựa vào số phần tử cụm N-gram, ta có tên gọi cụ thể: • • • Với n = 1, ta có – gram (Unigram) Tính kí tự, ta có thông tin tần suất xuất nhiều chữ Điều ứng dụng để làm keyboard: phím hay xuất vị trí dễ sử dụng (e,a, ………) Với n = 2, ta có - gram (Bigram) Ví dụ với chữ tiếng Anh, ‘th’, ’he’, ’in’, ’an’, ’er’ cặp kí tự hay xuất Ngoài ta thấy sau kí tự ‘q’ hầu hết kí tự ‘u’ Với n = 3, ta có (Trigram) Vì n lớn số trường hợp lớn nên thường người ta sử dụng với n=1,2 n=3 Ví dụ với kí tự tiếng Việt, tiếng Việt sử dụng 29 ký tự, với n=1 số trường hợp 29, n=2 số trường hợp 29^2=841, n=3 có 29^3=24389 trường hợp Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ Công thức tính “xác suất thô”: Gọi C(w ww) tần số xuất cụm w ww tập văn huấn luyện Gọi P(w|w w) xác suất w sau cụm w ww Ta có công thức tính xác suất sau: P(w|w w) = Dễ thấy, C(w ww) tần số xuất cụm w w văn huấn luyện Do công thức viết lại thành: P(w|w w) = Tỉ lệ vế phải gọi tỉ lệ tần số Cách tính xác suất dựa vào tỉ lệ tần số gọi ước lượng xác suất cực đại Cũng gọi công thức tính “xác suất thô” để phân biệt với cách tính xác suất theo thuật toán xét phần sau Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ Khó khăn xây dựng mô hình ngôn ngữ N-gram 5.1.Phân bố không đều: Khi sử dụng mô hình N-gram theo công thức “xác suất thô”, phân bố không tập văn huấn luyện dẫn đến ước lượng không xác Khi N-gram phân bố thưa, nhiều cụm n-gram không xuất có số lần xuất nhỏ, việc ước lượng câu có chứa cụm n-gram có kết tồi Với V kích thước từ vựng, ta có V cụm N-gram sinh từ từ vựng Tuy nhiên, thực tế số cụm N-gram có nghĩa thường gặp chiếm Ví dụ: tiếng Việt có khoảng 5000 âm tiết khác nhau, ta có tổng số cụm 3gram có là: 5.000 = 125.000.000.000 Tuy nhiên, số cụm 3-gram thống kê xấp xỉ 1.500.000 Như có nhiều cụm 3-gram không xuất xuất Khi tính toán xác suất câu, có nhiều trường hợp gặp cụm Ngram chưa xuất liệu huấn luyện Điều làm xác suất câu 0, câu câu hoàn toàn mặt ngữ pháp ngữ nghĩa Đề khắc phục tình trạng này, người ta phải sử dụng số phương pháp “làm mịn” kết thống kê 5.2.Kích thước nhớ mô hình ngôn ngữ Khi kích thước tập văn huấn luyện lớn, số lượng cụm Ngram kích thước mô hình ngôn ngữ lớn Nó gây khó khăn việc lưu trữ mà làm tốc độ xử lý mô hình ngôn ngữ giảm xuống nhớ máy tính hạn chế Để xây dựng mô hình ngôn ngữ hiệu quả, phải giảm kích thước mô hình ngôn ngữ mà đảm bảo độ xác Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ Các phương pháp làm mịn Để khắc phục tình trạng cụm N-gram phân bố thưa đề cập, người ta đưa phương pháp “làm mịn” kết thống kê nhằm đánh giá xác (mịn hơn) xác suất cụm N-gram Các phương pháp “làm mịn” đánh giá lại xác suất cụm N-gram cách: • Gán cho cụm N-gram có xác suất (không xuất hiện) giá trị khác • Thay đổi lại giá trị xác suất cụm N-gram có xác suất khác (có xuất thống kê) thành giá trị phù hợp (tổng xác suất không đổi) CÁC PHƯƠNG PHÁP LÀM MỊN NHƯ SAU: +) Phương pháp truy hồi +) Phương pháp nội suy +) Phương pháp làm mịn Kneser – Ney +) Phương pháp làm mịn Kneser - Ney cải tiến Chen-GoodMan +) Các thuật toán chiết khấu (discounting): Nguyên lý thuật toán chiết khấu giảm xác suất cụm Ngram có xác suất lớn đề bù cho cụm Ngram chưa xuất tập huấn luyện Các thuật toán trực tiếp làm thay đổi tần số xuất tất cụm Ngram Ở đề cập đến thuật toán chiết khấu phổ biến: Thuật toán Add-one Thuật toán làm mịn Add-one cộng thêm vào tần số xuất tất cụm N-gram nhân với phân số chuẩn hóa (để bảo toàn tổng xác suất) Với unigram, cộng thêm vào tần số cụm unigram, tổng số cụm unigram xuất bằng: M’ = M + V với : M tổng số cụm unigram xuất Nhóm - Lớp thứ 4, tiết 1-2-3 Page 10 Lý thuyết ngôn ngữ V kích thước từ vựng Để bảo toàn tổng số cụm unigram M, tần số cụm unigram tính lại theo công thức: C= (C+1) với: C tần số cụm unigram trước làm mịn Như vậy, xác suất cụm unigram tính lại: P* = Với: M tổng số cụm unigram xuất V kích thước từ vựng C tần số cụm unigram trước làm mịn Xét cụm N-gram với N>1, thay M C(w w) xác suất cụm w wwđược tính theo công thức sau: P(w|w w) = Thuật toán Witten-Bell Thuật toán Good-Turing Thuật toán Good-Turing dựa việc tính toán Nc, với Nc số cụm Ngram xuất c lần Như vậy: Nc số cụm n-gram có tần số c N0 tổng số cụm n-gram Nhóm - Lớp thứ 4, tiết 1-2-3 Page 11 Lý thuyết ngôn ngữ Kỹ thuật làm giảm kích thước liệu: Các kỹ thuật làm giảm kích thước mô hình ngôn ngữ Mặc dù có chung mục tiêu, kỹ thuật lại có hiệu khác Có ba kỹ thuật chính, bao gồm: • Pruning (loại bỏ): làm giảm số lượng cụm Ngram mô hình ngôn ngữ cách loại bỏ cụm Ngram không quan trọng • Quantization (lượng tử hóa): thay đổi cấu trúc thông tin cụm Ngram mô hình ngôn ngữ • Compression (nén): nén cấu trúc liệu sử dụng việc lưu trữ cụm Ngram mô hình ngôn ngữ Độ đo Để xây dựng hình ngôn ngữ hiệu quả, phải có cách để đánh giá chúng Dưới số phương pháp phổ biến để đánh giá mô hình ngôn ngữ: • Entropy - Độ đo thông tin • Perplexity - Độ hỗn loạn thông tin • Error rate - Tỉ lệ lỗi Nhóm - Lớp thứ 4, tiết 1-2-3 Page 12 Lý thuyết ngôn ngữ III ỨNG DỤNG MÔ HÌNH N-GRAM Mô hình n-gram ứng dụng rộng rãi xác suất, thuyết truyền đạt, học máy, nén liệu Một số ứng dụng thực tế gần gũi: • • • • Đoán trước từ để hoàn thành câu: Dự đoán đầu vào văn Hệ thống dự đoán đầu vào dự đoán bạn gõ đưa lựa chọn để hoàn thành Ứng dụng để kiểm lỗi tả đánh máy sai Kết hợp xử lý tiếng nói, tách lời hát hay đoạn hội thoại Nhóm - Lớp thứ 4, tiết 1-2-3 Page 13 ... ngữ sử dụng xử lý ngôn ngữ tự nhiên Phân tích ví dụ cho mô hình cụ thể Giới thiệu khái niệm mô hình ngôn ngữ Mô hình ngôn ngữ phân bố xác suất tập văn Nói đơn giản, mô hình ngôn ngữ cho biết xác... thuyết ngôn ngữ MỤC LỤC LỜI MỞ ĐẦU Nhóm - Lớp thứ 4, tiết 1-2-3 Page Lý thuyết ngôn ngữ NỘI DUNG BÁO CÁO I.KHÁI QUÁT CHUNG 1.Mục tiêu • • • Hiểu khái niệm mô hình ngôn ngữ Tìm hiểu mô hình ngôn ngữ. .. thước mô hình ngôn ngữ lớn Nó gây khó khăn việc lưu trữ mà làm tốc độ xử lý mô hình ngôn ngữ giảm xuống nhớ máy tính hạn chế Để xây dựng mô hình ngôn ngữ hiệu quả, phải giảm kích thước mô hình ngôn

Ngày đăng: 29/08/2017, 11:02

Từ khóa liên quan

Mục lục

  • LỜI MỞ ĐẦU

  • NỘI DUNG BÁO CÁO

  • I.KHÁI QUÁT CHUNG.

    • 1.Mục tiêu.

    • 2. Giới thiệu khái niệm mô hình ngôn ngữ.

    • II. MÔ HÌNH NGÔN NGỮ N-GRAM.

      • 1. Khái quát.

      • 2. Chuỗi Markov.

      • 3. Ước lượng xác suất cho mô hình N-gram.

      • 4. Công thức tính “xác suất thô”:

      • 5. Khó khăn khi xây dựng mô hình ngôn ngữ N-gram

        • 5.1.Phân bố không đều:

        • 5.2.Kích thước bộ nhớ của mô hình ngôn ngữ

        • 6. Các phương pháp làm mịn.

        • 7. Kỹ thuật làm giảm kích thước dữ liệu:

        • 8. Độ đo.

        • III. ỨNG DỤNG MÔ HÌNH N-GRAM.

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

Tài liệu liên quan