Luận Văn Phân tích cú pháp tiếng việt theo tiếp cận thống kê

Thảo luận trong 'Công Nghệ Thông Tin' bắt đầu bởi Mai Kul, 27/11/13.

  1. Mai Kul

    Mai Kul New Member

    Bài viết:
    1,299
    Được thích:
    0
    Điểm thành tích:
    0
    Xu:
    0Xu
    Định dạng file word
    Luận văn tốt nghiệp dài 78 trang


    MỤC LỤC

    MỞ ĐẦU 1

    Chương 1. Giới thiệu .2

    1.1. Xử lý ngôn ngữ tự nhiên và các vấn đề chính 2

    1.2. Phân tích cú pháp và ứng dụng trong xử lý ngôn ngữ tự nhiên 3

    1.2.1. Định nghĩa: 3

    1.2.2. Vai trò của phân tích cú pháp trong xử lý ngôn ngữ tự nhiên .3

    1.3. Phân tích cú pháp dành cho tiếng Việt 4

    1.3.1. Nhập nhằng – vấn đề chính của xử lý ngôn ngữ tự nhiên: 4

    1.3.2. Phân tích cú pháp trong tiếng Việt .5

    1.4. Mục tiêu .6

    Chương 2. Phương pháp phân tích cú pháp 7

    2.1. Văn phạm phi ngữ cảnh 7

    2.2. Các phương pháp cổ điển 8

    2.2.1. Phân tích top – down 8

    2.2.2. Phân tích bottom – up: .10

    2.2.3. So sánh giữa top – down và bottom – up 13

    2.2.4. Thuật toán CYK (Cocke – Younger – Kasami) 13

    2.2.5. Thuật toán Earley .15

    2.3. Văn phạm phi ngữ cảnh xác suất (PCFGs) 19

    2.3.1. Định nghĩa .19

    2.3.2. Nhược điểm của văn phạm phi ngữ cảnh xác suất 20

    2.4. Văn phạm phi ngữ cảnh xác suất từ vựng (LPCFGs) 22

    2.4.1. Cấu trúc head .22

    2.4.2. Mô hình một: Mô hình cơ sở 23

    2.4.3. Mô hình 2: Phân biệt định ngữ và bổ ngữ, subcategorization .25

    2.4.4. Mô hình 3: Trace và Wh-movement .27



    Chương 3. Tiếp cận trong xây dựng bộ phân tích cú pháp Tiếng Việt 28

    3.1. Penn Treebank 28

    3.1.1. Gán nhãn từ loại .28

    3.1.2. Bracketing .30

    3.2. Viet Treebank .32

    3.2.1. Mục tiêu .32

    3.2.2. Danh sách từ loại và các nhãn cú pháp .32

    3.2.3. Một số đặc điểm của Viet Treebank .34

    Chương 4. Bộ phân tích cú pháp của Bikel 35

    4.1. Một số nhiệm vụ cơ bản 35

    4.1.1. Tiền xử lý 35

    4.1.2. Huấn luyện 40

    4.1.3. Các loại tham số và các đánh giá 42

    4.1.4. Decode .48

    4.2. Tổng quan về bộ phân tích cú pháp .49

    4.2.1. Mở đầu 49

    4.2.2. Vấn đề cơ bản 50

    4.2.3. Tổng quan về hệ thống .50

    4.2.4. Khả năng 54

    4.3. Kết luận 55

    Chương 5. Áp dụng bộ phân tích cú pháp của Bikel và dữ liệu Viet Treebank .56

    5.1. Gói ngôn ngữ tiếng Việt .56

    5.2. Quá trình thực hiện: 57

    5.2.1. Xử lý dữ liệu 57

    5.2.2. Cấu hình để thực hiện: .58

    5.2.3. Huấn luyện 61

    5.2.4. Phân tích cú pháp .62

    5.2.5. Đánh giá kết quả: .62

    5.3. Kết quả đạt được: 63

    KẾT LUẬN .67

    TÀI LIỆU THAM KHẢO .68



    TÓM TẮT

    Phân tích cú pháp là một trong những bài toán cơ bản và quan trọng nhất trong
    xử lý ngôn ngữ tự nhiên (XLNNTN). Kết quả của phân tích cú pháp được sử dụng
    trong rất nhiều ứng dụng XLNNTN khác như dịch máy, hỏi đáp, trích chọn thông
    tin Xây dựng một bộ phân tích cú pháp cho tiếng Việt có độ chính xác cao là một
    công việc rất có ý nghĩa. Mục tiêu đề ra của luận văn là xây dựng bộ phân tích cú pháp
    tiếng Việt theo tiếp cận thống kê. Đây là một hướng tiếp cận khá mới mẻ trong cách
    xây dựng bộ phân tích cú pháp tiếng Việt. Luận văn sẽ trình bày khái quát về các cách
    tiếp cận trong việc xây dựng bộ phân tích cú pháp, và đi sâu tìm hiều về văn phạm phi
    ngữ cảnh xác suất từ vựng (Lexicalized Probabilistic Context Free Grammar). Cụ thể
    hơn, tôi tìm hiểu, nghiên cứu 3 mô hình xác suất của Collins [11], và áp dụng công cụ
    phân tích của Bikel’s [9] để thử nghiệm cho phân tích cú pháp tiếng Việt. Phân tích cú
    pháp dựa theo thống kê cần có dữ liệu để huấn luyện mô hình. Trong luận văn, tôi sẽ
    sử dụng ngữ liệu Viet Treebank. Kết quả thực nghiệm cho thấy độ chính xác
    (precision) là trên 80% với hơn 9000 câu huấn luyện và 500 câu kiểm tra. Những kết
    quả của luận văn cho thấy rằng, đối với tiếng Việt, mô hình 1 của Collin có độ chính
    xác thấp hơn so với mô hình 2, và mô hình 3 chưa thực sự hiệu quả. Ngoài ra, kết quả
    thực nghiệm còn chỉ ra một số tham số của mô hình 2 của Collins có ảnh hưởng tới độ
    chính xác của bộ phân tích cú pháp.


    MỞ ĐẦU
    Phân tích cú pháp là một bài toán trung tâm trong XLNNTN. Phân tích cú pháp
    được sử dụng trong rất nhiều ứng dụng của XLNNTN. Độ chính xác của bộ phân tích
    cú pháp có ảnh hưởng lớn tới kết quả của các ứng dụng xử lý ngôn ngữ khác. Các
    nghiên cứu về xây dựng phân tích cú pháp tự động đã được phát triển từ rất sớm và đã
    có nhiều bộ phân tích cú pháp với chất lượng rất tốt cho các ngôn ngữ như tiếng Anh,
    tiếng Trung [9]. Ngày nay, nhiều ứng dụng trong XLNNTN đang được nghiên cứu và
    phát triển cho tiếng Việt và nhu cầu về một bộ phân tích cú pháp tiếng Việt với độ
    chính xác cao là rất cấp thiết. Tuy nhiên, các nghiên cứu về phân tích cú pháp tiếng
    Việt vẫn còn hạn chế và tập trung chủ yếu vào tiếp cận cũ (Knowledge-based), với kết
    quả còn hạn chế và chưa có bộ phân tích nào được công bố rộng rãi. Vì vậy, khóa luận
    này hướng tới việc xây dựng bộ phân tích cú pháp tiếng Việt theo tiếp cận thống kê.
    Chúng tôi theo tiếp cận này sử dụng văn phạm phi ngữ cảnh xác suất từ vựng
    (Lexicalized Probabilistic Context Free Grammar). Luận văn sẽ nghiên cứu các cách
    tiếp cận cơ bản trong phân tích cú pháp, đi sâu tìm hiểu văn phạm phi ngữ cảnh xác
    suất từ vựng theo 3 mô hình của Collins [11]. Từ đó, dựa vào hiểu biết về ngữ liệu
    Viet Treebank để huấn luyện và đánh giá độ chính xác của mô hình dựa trên việc tích
    hợp tiếng Việt vào bộ phân tích cú pháp của Bikel [9]. Kiến trúc cúa hệ phân tích cú
    pháp của Bikel cũng được nghiên cứ và phân tích để có thể sửa đổi đối tượng tương
    thích cho tiếng Việt cũng như khảo sát ảnh hưởng của các tham số khác nhau đối với
    phân tích cú pháp tiếng Việt.


    Chương 1. Giới thiệu
    Đã từ lâu, con người luôn ước mơ phát minh ra một chiếc máy có khả năng nghe
    và thực hiện các mệnh lệnh của con người. Cho đến nay, một hệ thống như vậy vẫn
    còn trong ước mơ bởi máy móc vẫn gặp khó khăn trong việc nhận biết ngôn ngữ của
    con người, từ việc nghe đúng cho đến việc hiểu đúng được lời nói của con người rất là
    khó khăn. Tuy nhiên, con người đang tích cực nghiên cứu phát triển ra công nghệ mới
    để thực hiện được một hệ thống thông minh như con người, lĩnh vực đó là xử lý ngôn
    ngữ tự nhiên.

    1.1. Xử lý ngôn ngữ tự nhiên và các vấn đề chính
    Xử lý ngôn ngữ tự nhiên là lĩnh vực trong khoa học máy tính, nhiệm vụ của nó là
    xây dựng một hệ thống có thể phân tích, hiểu được ngôn ngữ của con người, không
    những thế hệ thống này còn có khả năng phản hồi lại bằng chính ngôn ngữ của con
    người. Như vậy ta có một mô hình đơn giản về một hệ thống xử lý ngôn ngữ tự nhiên
    như sau:



    ngôn


    ngôn


    Hệ thống








    hiểu ngôn
    sinh ra ngôn

    Hình 1: Mô hình xử lý ngôn ngữ tự nhiên


    Xử lý ngôn ngữ tự nhiên có rất nhiều ứng dụng trong thực tế, có thể kể ra ở đây
    một vài ứng dụng của xử lý ngôn ngữ tự nhiên như là dịch máy (machine translation),
    tìm kiếm thông tin (information retrieval), trích chọn thông tin (information retrieval)
    hay như là nhận dạng tiếng nói (speech recognition).

    - Dịch máy (machine translation) là một ứng dụng có nhiệm vụ dịch một văn bản
    từ một ngôn ngữ (ví dụ như tiếng Anh) sang một ngôn ngữ khác (chẳng hạn là tiếng
    Việt), giống như người phiên dịch.
    - Tìm kiếm thông tin (information retrieval): ở đây ta có thể thấy một ví dụ rất
    điển hình đó là web search engine, www.google.com, website này là một dạng của tìm
    kiếm thông tin, tức là khi cần một thông tin, hệ thống sẽ thực hiện việc tìm kiếm trong
    dữ liệu (tập rất nhiều các văn bản) một hay nhiều văn bản tương tự với thông tin ta cần
    tìm kiếm.

    - Trích chọn thông tin (information extraction): khi đưa vào một tập văn bản, hệ
    thống này có thể trả về cho ta những đoạn trong văn bản đó miêu tả thông tin chúng ta
    quan tâm. Một ví dụ đơn giản ở đây là khi gặp một trang blog ta cần xác định một số
    thông tin về cá nhân sở hữu blog như tên, giới tính, địa chỉ, v.v thì hệ thống trích
    chọn thông tin có nhiệm vụ trả về cho ta các thông tin này.

    - Nhận dạng tiếng nói (speech recognition): Khi bạn nói một câu, chúng ta đã có
    những hệ thống có thể ghi lại những âm thanh này ở dạng dữ liệu số, mục tiêu của ứng
    dụng này là chuyển được sóng âm thanh này thành dữ liệu văn bản.

    Trên đây là một số ứng dụng của xử lý ngôn ngữ tự nhiên và trong thực tế còn
    nhiều ứng dụng khác đang được nghiên cứu và phát triển. Tuy nhiên, các ứng dụng
    ngôn ngữ tự nhiên đều có chung một số bài toán cơ sở như là phân tích từ tố, phân tích
    cú pháp, phân tích ngữ nghĩa. Trong đó, phân tích cú pháp đóng vai trò trung tâm
    trong ứng dụng XLNNTN và là mục tiêu của luân văn này.

    1.2. Phân tích cú pháp và ứng dụng trong xử lý ngôn ngữ tự nhiên

    1.2.1. Định nghĩa:
    Phân tích cú pháp (parsing hay syntatic analys) là quá trình phân tích một chuỗi
    từ tố (chuỗi từ tố này là kết quả của quá trình phần tích từ tố, thông thường đối với xử
    lý ngôn ngữ là các từ), nhằm đưa ra cấu trúc ngữ pháp của chuỗi từ đó dựa vào một
    văn phạm nào đó. Thông thường cấu trúc ngữ pháp được chọn ở đây thường là ở dạng
    cây, bởi thông qua dạng này sự phụ thuộc của các thành phần là trực quan.

    1.2.2. Vai trò của phân tích cú pháp trong xử lý ngôn ngữ tự nhiên
    Có thể nói phân tích cú pháp là bài toán cơ sở, xuất hiện rất nhiều trong các ứng
    dụng của xử lý ngôn ngữ tự nhiên. Ví dụ đầu tiên ta có thể thấy ngay đó là áp dụng
    phân tích cú pháp trong kiểm tra lỗi ngữ pháp. Đối với việc kiểm tra lỗi ngữ pháp ta
    cần thực hiện việc phân tích cú pháp câu đầu vào, xem cấu trúc có đúng không?

    Trong dịch máy, hiện nay, có ba chiến lược dịch cơ bản là dịch trực tiếp, dịch
    chuyển đổi và dịch liên ngữ. Đối với dịch trực tiếp, cách dịch này dựa vào bộ từ điền


    TÀI LIỆU THAM KHẢO
    Tài liệu tiếng Việt

    [1]. Cường, Lê Anh. Xây dựng bộ phân tích cú pháp Tiếng Anh trong hệ dịch tự
    động Anh Việt. Hà nội : Luận Văn Thạc sỹ khoa học, 2001. 1.

    [2]. Dũng, Vũ Tiến. Tiếng Việt và ngôn ngữ học hiện đại: sơ khảo về cú pháp.
    Germany : VIET Stuttgart, 2004. 2.

    [3]. Thái, Nguyễn Phương, và những tác giả khác. Thiết kế tập nhãn cú pháp
    và hướng dẫn gán nhãn. không biết chủ biên : Nhóm xây dựng Viet Treebank, 2009.
    3.

    [4]. Thái, Nguyễn Phương, Lương, Vũ Xuân và Huyền, Nguyễn Thị Minh.
    Xây dựng treebank Tiếng Việt. Hà nội : ICT-08, 2008. 4.

    [5]. Thái, Tạ Yên. Một số tìm hiểu về quá trình phân tích cú pháp trong Ngôn
    ngữ tự nhiên. không biết chủ biên : Khóa luận tốt nghiệp, 2000. 5.

    [6]. Thế, Nguyễn Quốc và Hương, Lê Thanh. Vietnamese syntactic parsing
    using the Lexicalized Probabilistic Context-free Grammar. Nha Trang, Viet Nam :
    FAIR conference, 2007. 6.



    Tài liệu tiếng Anh

    [7]. Bikel, Daniel M. A statiscal model for parsing and wword-sense
    disambiguation. 2000.

    [8]. Bikel, Daniel M. Design of a multi-lingual, parallel-processing statistical
    parsing engine. 2002.

    [9]. Bikel, Daniel M. On the parameter space of Generative Lexical Statistical
    Parsing Model. 2004.

    [10]. Charniak, Eugene. Statistical Techniques for Nature Language Parsing.
    1997.

    [11]. Collins, Michael. Head-Driven Statical Models for Natural Language
    Parsing. 1999.

    [12]. Collins, Michael. Three generative, lexicalised models for statistical
    parsing. 1996.
    [13]. Jurafsky, Daniel and Martin, James H. Speech and Language
    Processing: An Introduction to Natural Language Processing, Computation
    Linguistics and Speech Recognition. s.l. : Alan Apt, 1999.

    [14]. Manning, Chistopher D. and Schutze, Hinrich. Foundations of Statistical
    Natural Language Processing. s.l. : MIT Press, 1999.

    [15]. Marcus, Mitchell P., Marcinkiewicz, Mary Ann and Santorini,
    Beatrice. Building a Large Annotated of English: The Penn Treebank. s.l. :
    Computation Linguistics, 1993.
     

    Các file đính kèm:

Đang tải...