Đăng ký Đăng nhập
Trang chủ Hệ thống trả lời tự động tiếng việt cho công tác tuyển sinh đại học...

Tài liệu Hệ thống trả lời tự động tiếng việt cho công tác tuyển sinh đại học

.PDF
134
81
60

Mô tả:

TRƢỜNG ĐẠI HỌC LẠC HỒNG TRUNG TÂM THÔNG TIN TƢ LIỆU ---------- BÁO CÁO NGHIÊN CỨU KHOA HỌC GIÁO VIÊN ĐỀ TÀI: HỆ THỐNG TRẢ LỜI TỰ ĐỘNG TIẾNG VIỆT CHO CÔNG TÁC TUYỂN SINH ĐẠI HỌC NGUYỄN BÌNH TRỌNG ĐỒNG NAI, THÁNG 5/2012 TRƢỜNG ĐẠI HỌC LẠC HỒNG TRUNG TÂM THÔNG TIN TƢ LIỆU ---------- BÁO CÁO NGHIÊN CỨU KHOA HỌC GIÁO VIÊN ĐỀ TÀI: HỆ THỐNG TRẢ LỜI TỰ ĐỘNG TIẾNG VIỆT CHO CÔNG TÁC TUYỂN SINH ĐẠI HỌC Thực hiện: Nguyễn Đình Liên Lƣơng Quốc Sơn Nguyễn Bình Trọng ĐỒNG NAI, THÁNG 5/2012 MỤC LỤC DANH MỤC TỪ VIẾT TẮT DANH MỤC HÌNH CHƢƠNG 1: TỔNG QUAN................................................................................ 1 1.1 Mục tiêu của đề tài ........................................................................................ 1 1.1.1 Đặt vấn đề ............................................................................................... 1 1.1.2 Mục tiêu của đề tài.................................................................................. 2 1.2 Phạm vi nghiên cứu ...................................................................................... 3 1.3 Phương pháp nghiên cứu ............................................................................. 4 1.3.1 Các nội dung cần triển khai .................................................................... 4 1.3.2 Điểm mới của đề tài ................................................................................ 5 1.3.3 Kết quả dự kiến đạt được của đề tài ....................................................... 5 1.4 Bố cục của đề tài .......................................................................................... 5 CHƢƠNG 2: KIẾN TRÚC HỆ THỐNG ........................................................... 7 2.1 Mô hình chức năng của hệ thống .................................................................. 7 2.2 Các thành phần cơ bản của hệ thống ............................................................ 8 2.2.1 Thành phần dữ liệu ................................................................................. 8 2.2.2 Thành phần xử lý ..................................................................................10 2.2.3 Thành phần giao tiếp người dùng. ........................................................10 2.3 Quy trình xử lý câu hỏi ...............................................................................11 2.3.1 Tiền xử lý câu hỏi .................................................................................11 2.3.2 Phân tích câu hỏi...................................................................................12 2.3.3 Tổng hợp dữ liệu trên cây truy vấn để tiến hành truy vấn CSDL ........13 2.3.4 Nhận kết quả và hiển thị lên cho người dùng .......................................13 CHƢƠNG 3: PHÂN TÍCH CÚ PHÁP CÂU HỎI DỰA TRÊN DCG ..........14 3.1 Cơ bản về CFG và DCG .............................................................................14 3.1.1 Cơ bản về CFG .....................................................................................14 3.1.1.1 Định nghĩa ......................................................................................14 3.1.1.2 Cây cú pháp ....................................................................................15 3.1.1.3 Sự mơ hồ (nhập nhằng) trong văn phạm phi ngữ cảnh. ................16 3.1.2 Cơ bản về DCG.....................................................................................20 3.1.2.1 Định nghĩa ......................................................................................20 3.1.2.2 Quy tắc cú pháp: .............................................................................20 3.1.2.3 Đối số trong DCG...........................................................................21 3.1.2.4 Cây cú pháp trong DCG. ................................................................21 3.2 Xây dựng cú pháp các câu hỏi tuyển sinh dựa trên DCG. .........................21 3.2.1 Ý tưởng xây dựng cây cú pháp .............................................................21 3.2.2 Xây dựng các thành phần cơ bản cho việc xây dựng cú pháp..............39 3.2.2.1 Từ điển từ đơn ................................................................................40 3.2.2.2 Định nghĩa các từ tổ và từ ghép .....................................................41 3.2.2.3 Định nghĩa từ có thể “khuyết”........................................................42 3.2.2.4 Định nghĩa nhóm từ đại diện cho các từ đồng nghĩa .....................43 3.2.2.5 Định nghĩa thành phần “tên” hoặc “giá trị” cho một đối tượng trong câu hỏi. ..............................................................................................45 3.2.2.6 Định nghĩa các thành phần WHERE. .............................................47 3.2.2.7 Định nghĩa các thành phần mặc định .............................................47 3.2.2.8 Định nghĩa các thành phần SELECT .............................................47 3.2.2.9 Định nghĩa các thành phần sử dụng chung của các câu hỏi ...........48 3.2.2.10 Các thành phần chung khác ..........................................................49 3.2.2.11 Định nghĩa thành phần đại diện chung cho đối tượng nghi vấn ..50 3.3 Cú pháp các câu hỏi sử dụng trong hệ thống ..............................................51 CHƢƠNG 4: XÂY DỰNG CHƢƠNG TRÌNH ...............................................52 4.1 Các thành phần trong hệ thống ...................................................................52 4.2 Thành phần dữ liệu .....................................................................................52 4.3 Thành phần xử lý ........................................................................................54 4.3.1 Tiền xử lý câu hỏi .................................................................................54 4.3.1.1 Loại bỏ các ký tự thừa ....................................................................55 4.3.1.2 Chuyển mã tiếng việt......................................................................55 4.3.2 Phân tích cú pháp câu hỏi .....................................................................57 4.3.4 Tổng hợp dữ liệu để tiến hành truy vấn CSDL ....................................58 4.3.4.1 Tổng hợp các nút lá lại trên mỗi nút WHERE ...............................59 4.3.4.2 Phát sinh câu truy vấn SQL ............................................................62 4.3.5 Xử lý kết quả trả lời ..............................................................................63 4.3.5.1 Câu lệnh SQL trả về giá trị.............................................................64 4.3.5.2 Lệnh SQL không trả về giá trị ........................................................64 4.3.5.3 Tìm được cấu trúc gần đúng ...........................................................64 4.3.5.4 Không tìm được cấu trúc gần đúng ................................................65 4.3.6 Ví dụ mô tả lại các bước của thành phần xử lý ....................................65 4.4 Thành phần giao diện người dùng ..............................................................67 4.4.1 Các công nghệ và nền tảng mà hệ thống sử dụng ................................67 4.4.2 Giao diện của hệ thống .........................................................................68 4.5 Thử nghiệm và đánh giá .............................................................................71 4.5.1 Một số câu hỏi thử nghiệm trong hệ thống..........................................71 4.5.2 Đánh giá hệ thống .................................................................................72 CHƢƠNG 5: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ................................74 5.1 Kết quả đạt được của hệ thống..................................................................74 5.2 Những điểm hạn chế của hệ thống.............................................................75 5.3 Hướng phát triển ........................................................................................75 TÀI LIỆU THAM KHẢO PHỤ LỤC 1: ĐỊNH NGHĨA CÚ PHÁP CHO CÁC THÀNH PHẦN CỦA CÂU HỎI PHỤ LỤC 2: ĐỊNH NGHĨA CÚ PHÁP CHO CÁC DẠNG CÂU HỎI TRONG HỆ THỐNG PHỤ LỤC 3: CÁC LƢU ĐỒ XỬ LÝ TRONG HỆ THỐNG PHỤ LỤC 4: CÁC CÂU HỎI CHUẨN CỦA HỆ THỐNG DANH MỤC TỪ VIẾT TẮT CFG: Context Free Grammar DCG: Definite Clause Grammar CSDL: Cơ Sở Dữ Liệu SQL: Structured Query Language DANH MỤC HÌNH Hình 2.1: Mô hình chức năng của hệ thống. .......................................................... 7 Hình 2.2: Quy trình xử lý câu hỏi. .......................................................................11 Hình 2.3: Công đoạn tiền xử lý. ...........................................................................11 Hình 2.4: Công đoạn phân tích câu hỏi. ...............................................................12 Hình 2.5: Công đoạn tổng hợp dữ liệu và truy vấn dữ liệu. ................................13 Hình 2.6: Công đoạn hiển thị kết quả. .................................................................13 Hình 3.1 Cây cú pháp câu hỏi ..............................................................................16 Hình 3.2 Cây cú pháp câu hỏi – dạng cây thứ nhất. ............................................17 Hình 3.3 Cây cú pháp câu hỏi – dạng cây thứ hai ...............................................18 Hình 3.4 Cây cú pháp câu hỏi – dạng cây thứ ba.................................................18 Hình 3.5 Cây cú pháp câu hỏi – dạng cây thứ tư .................................................19 Hình 3.6 Cây cú pháp câu hỏi. .............................................................................24 Hình 3.7 Cây truy vấn của câu hỏi. .....................................................................30 Hình 3.8 Cây truy vấn của câu hỏi – đã được tối ưu..........................................32 Hình 3.9 Cây truy vấn của câu hỏi. .....................................................................37 Hình 3.10 Cây truy vấn của câu hỏi. ...................................................................39 Hình 4.1 Các thành phần trong hệ thống .............................................................52 Hình 4.2 Mô hình cơ sở dữ liệu của hệ thống. .....................................................53 Hình 4.3 Mô hình quy trình xử lý công việc của hệ thống. .................................54 Hình 4.6 Cây truy vấn của câu hỏi. ......................................................................59 Hình 4.7 Kết quả trả về dưới dạng một danh sách. ..............................................69 Hình 4.8 Trả lời cho dạng câu hỏi “có/không”. ...................................................69 Hình 4.9 Khi câu hỏi nhập vào với tham số xác định bị sai. ...............................70 Hình 4.10 Thông báo khi không phân tích được câu hỏi. ....................................70 Hình 4.11 Gợi ý những câu hỏi liên quan đến từ được nhập. ..............................71 1 CHƢƠNG 1: TỔNG QUAN 1.1 Mục tiêu của đề tài 1.1.1 Đặt vấn đề Thông tin tuyển sinh của các trường đại học đều được phổ biến rộng rãi trên internet ở một số tờ báo mạng, diễn đàn và được đưa lên website chính của từng trường. Tuy nhiên, các thông tin trên các diễn đàn và các báo mạng thường là ý kiến của nhiều người nên có thể sẽ trái chiều nhau gây ra cảm giác ngờ vực, phân vân nơi người sử dụng. Mặt khác, cách trình bày nội dung của mỗi website của từng trường lại khác nhau nên sẽ gây khó khăn cho người quan tâm muốn có được câu trả lời mong muốn. Người dùng sẽ tốn nhiều thời gian và công sức để truy cập mỗi website của từng trường, duyệt qua nội dung của các trang web trong mỗi website đó, mong muốn tìm được câu trả lời cần thiết. Hiện nay chưa có công cụ tìm kiếm chuyên dụng nào cho các thông tin tuyển sinh của các trường. Học sinh và phụ huynh của học sinh muốn tìm kiếm thông tin về trường học và ngành nghề tương lai thì có thể dùng các công cụ tìm kiếm web để tìm kiếm thông tin. Nhưng để có được câu trả lời ưng ý cũng đòi hỏi nhiều thời gian và công sức để duyệt qua các câu gợi ý từ những hệ thống tìm kiếm trên. Đề tài “Hệ thống trả lời tự động tiếng Việt cho công tác tuyển sinh đại học” đưa ra một giải pháp cho vấn đề tìm kiếm thông tin dựa trên ngôn ngữ tự nhiên bằng tiếng Việt nhằm giúp giải quyết cho những nhu cầu trên. Người dùng chỉ cần đưa ra những câu hỏi bằng ngôn ngữ tự nhiên, hệ thống sẽ đáp trả lại câu trả lời tương ứng với câu hỏi cho người dùng. Hệ thống ra đời cũng với mục đích làm giảm công việc cho bộ phận tuyển sinh của trường đại học và cũng giúp cho các em học sinh lớp 12 có thể tìm hiểu, lựa chọn được ngành nghề và trường phù hợp với mình trong tương lai. 2 Việc xây dựng các hệ thống tìm kiếm ngữ nghĩa bằng tiếng việt cũng là hướng nghiên cứu của các công trình [1], [2], [3], [4], [5], [6], [7], [8], [9]. 1.1.2 Mục tiêu của đề tài Đề tài tập trung xây dựng mô hình công cụ tìm kiếm bằng truy vấn tiếng Việt cho các vấn đề liên quan đến tuyển sinh, áp dụng cho trường Đại học Lạc Hồng và có thể mở rộng thêm cho nhiều trường khác. Đề tài không tìm kiếm dựa trên từ khoá hay cụm từ, do đó sẽ không trả về nội dung chứa từ khoá hay cụm từ đó, mà sẽ nhận một câu hỏi bằng tiếng Việt do người dùng nhập vào phân tích, xử lý để trả về câu trả lời chính xác đối với câu hỏi đặt ra. Hệ thống cho phép người dùng đặt ra các câu hỏi bằng tiếng Việt để tìm kiếm thông tin về tuyển sinh. Đó là các câu hỏi đơn liên quan đến những thông tin mô tả về ngành học, khoa, điểm chuẩn, khối thi, chuẩn đầu ra, chuyển ngành, ... Câu hỏi đặt cho hệ thống phải thỏa những điều kiện sau: - Là câu hỏi đơn liên quan đến vấn đề tuyển sinh như: thông tin về trường, ngành, khoa, điểm chuẩn, chuẩn đầu ra, học phí, ... - Câu hỏi phải đúng chuẩn cú pháp của ngôn ngữ tự nhiên không chứa các từ viết tắt. - Hệ thống không xử lý câu hỏi đa nghĩa hoặc các câu hỏi có nhiều điều kiện lọc kết hợp “OR” với nhau. Việc hỗ trợ người dùng tìm kiếm các thông tin tuyển sinh bằng các câu truy vấn dưới dạng ngôn ngữ tự nhiên có những thuận lợi sau: - Người dùng dễ dàng đưa ra các câu hỏi ở mức đơn giản phù hợp với nhu cầu hiện tại của bản thân. - Các câu hỏi bằng ngôn ngữ tự nhiên có thể diễn đạt được các thông tin 3 cần tìm kiếm chính xác hơn việc dùng các từ khóa. - Câu trả lời hệ thống đưa ra đáp ứng đúng theo yêu cầu của câu hỏi đặt ra ban đầu. - Tập các câu hỏi liên quan đến lĩnh vực tuyển sinh được tác giả tham khảo tại [15], [16], [18], [19], ... Dưới đây là số ví dụ về các câu hỏi mà hệ thống sẽ xử lý:  Trường đại học Lạc Hồng có bao nhiêu ngành?  Trường đại học Lạc Hồng có dạy Ngành công nghệ Thông tin không?  Điểm chuẩn của ngành công nghệ thông tin năm 2011 của trường đại học lạc hồng ở hệ đại học là bao nhiêu điểm?  Chuẩn đầu ra của ngành công nghệ thông tin là gì?  ....... 1.2 Phạm vi nghiên cứu Như mục tiêu của đề tài đã xác định ở trên, hệ thống chỉ giới hạn trong việc truy vấn bằng tiếng Việt các thông tin về vấn đề tuyển sinh như: các thông tin về trường, ngành học, điểm chuẩn, khối thi, chuẩn đầu ra, ... Kết quả tìm kiếm vì vậy sẽ là một câu trả lời tương ứng với nội dung truy vấn được và các dữ liệu có liên quan (nếu có). Nội dung của các câu truy vấn bằng tiếng Việt phải đáp ứng được các yêu cầu sau: - Mỗi câu hỏi sẽ hỏi một vấn đề về trường, khoa, ngành, điểm chuẩn, ... hoặc là một dạng câu hỏi khẳng định “có/không”. - Chỉ xử lý các dạng câu hỏi được đề cập trực tiếp, không xử lý các câu hỏi có tính gián tiếp hoặc chứa ẩn ý. - Chỉ xử lý các câu truy vấn có cấu trúc đơn, câu không chứa nhiều thành phần ghép với nhau bởi các liên từ như “và”, “hoặc”, “hay”, … - Chỉ xử lý các câu truy vấn có nghĩa rõ ràng, không nhập nhằng, không 4 mơ hồ về nghĩa. - Điều kiện lọc dữ liệu chỉ bao gồm phép toán AND đơn giản không xử lý trong trường hợp các điều kiện OR với nhau. Bộ văn phạm xây dựng cho hệ thống này do đó cũng chỉ được giới hạn trong phạm vi truy tìm thông tin về vấn đề tuyển sinh và đáp ứng các câu hỏi tuân thủ các yêu cầu đặt ra. 1.3 Phƣơng pháp nghiên cứu 1.3.1 Các nội dung cần triển khai Để xây dựng hệ thống trả lời tự động bằng ngôn ngữ tự nhiên tiếng Việt cho các câu hỏi liên quan đến vấn đề tuyển sinh như yêu cầu đặt ra, đề tài thực hiện những nội dung cụ thể sau: - Khảo sát các câu hỏi đơn liên quan đến vấn đề tuyển sinh nhằm xác định chính xác các thông tin, từ đó sẽ tiến hành xây dựng một CSDL để lưu trữ các thông tin cung cấp cho câu trả lời của hệ thống. - Dựa vào thông tin khảo sát trên tiến hành xây dựng tập các câu hỏi tự nhiên bằng tiếng Việt phù hợp với thông tin lưu trữ trong CSDL - Dựa trên tập câu hỏi đã xác định được, tiến hành định nghĩa một bộ văn phạm cú pháp hạn chế dựa trên DCG nhằm phân tích đầy đủ và chính xác tập câu hỏi đã đề ra. - Nghiên cứu các giải pháp tiền xử lý câu hỏi nhằm tách các thành phần của câu, đồng thời giải quyết các vấn đề phát sinh khi hệ thống xử lý tiếng Việt. - Phân tích kết quả trả về sau khi phân tích cú pháp, từ đó tiến hành tổng hợp dữ liệu và truy vấn CSDL để tìm ra câu trả lời. - Xử lý dữ liệu trả về sau khi truy vấn CSDL, phát sinh câu trả lời cùng các thông tin liên quan, phù hợp với câu hỏi người dùng đặt ra. 5 1.3.2 Điểm mới của đề tài Đề tài phát triển hệ thống tra cứu các dữ liệu liên quan quan đến tuyển sinh với một số đặc thù riêng: - Xây dựng mới hoàn toàn bộ văn phạm phân tích cú pháp cho các câu hỏi trong phạm vi ứng dụng là các thông tin mô tả về vấn đề tuyển sinh của trường. Bộ văn phạm được định nghĩa dựa trên DCG thay vì UBG hay CFG như các hệ thống khác có chức năng trả lời tự động tương tự. - Sử dụng ngôn ngữ Prolog để biểu diễn bộ văn phạm được xây dựng bằng DCG ở trên. - Xây dựng bộ cú pháp phát sinh trực tiếp ra cây truy vấn thay vì phải phát sinh cây cú pháp rồi mới chuyển qua cây truy vấn. - Truy vấn trực tiếp CSDL vì vậy nên thông tin có thể tìm kiếm sẽ chính xác và đỡ tốn thời gian cho việc duyệt kết quả tìm kiếm. 1.3.3 Kết quả dự kiến đạt đƣợc của đề tài - Xây dựng một CSDL hoàn chỉnh chứa các thông tin cơ bản về trường, khoa, ngành, điểm chuẩn, .... của một số trường đại học. - Cài đặt CSDL và website trên server để hỗ trợ cho người dùng sử dụng web browser truy cập đến trang web của hệ thống và đặt câu hỏi. - Xây dựng một trang web hỗ trợ cho người dùng có thể truy vấn các thông tin liên quan đến vấn đề tuyển sinh bằng ngôn ngữ tự nhiên. - Cập nhật lại các câu hỏi chưa xử lý được để có thể chỉnh sửa hoặc xây dựng thêm cú pháp để đáp ứng nhu cầu sử dụng. 1.4 Bố cục của đề tài Đề tài được chia thành 5 chương, bố cục cụ thể như sau: - Chương 1. Tổng quan: Giới thiệu tổng quan về đề tài như mục tiêu đạt được, phạm vi nghiên cứu, và phương pháp nghiên cứu. 6 - Chương 2. Kiến trúc hệ thống: Trình bày tổng quát về hệ thống gồm chức năng, kiến trúc và đề ra các giải pháp để giải quyết vấn đề đặt ra. - Chương 3. Phân tích cú pháp câu hỏi tuyển sinh bằng DCG: Đi sâu phân tích phương pháp xây dựng bộ văn phạm hạn chế cho hệ thống bằng văn phạm DCG. Đây là thành phần quan trọng nhất trong các hệ thống xử lý ngôn ngữ tự nhiên. - Chương 4. Xây dựng chƣơng trình: Trình bày từng bước để xây dựng hoàn thiện hệ thống. Giới thiệu chương trình thử nghiệm của hệ thống. Tiến hành đánh giá hệ thống. - Chương 5: Kết luận và hƣớng phát triển. - Phần tài liệu tham khảo và phụ lục. 7 CHƢƠNG 2: KIẾN TRÚC HỆ THỐNG 2.1 Mô hình chức năng của hệ thống Với tập cú pháp được định nghĩa trước, hệ thống tiếp nhận câu hỏi tiếng việt từ người dùng thông qua giao diện chương trình(Web). Tiến hành phân tích cú pháp để hiểu được nội dung người dùng muốn hỏi, sau đó sẽ truy vấn CSDL để tìm ra kết quả và hiển thị lên cho người dùng. Đặt câu hỏi Nhận câu trả lời Trả về kết quả Hình 2.1: Mô hình chức năng của hệ thống. Hệ thống chỉ hỗ trợ xử lý những câu hỏi đơn và “thuần” với ngôn ngữ tự nhiên. Những câu hỏi mà hệ thống hỗ trợ được là các câu hỏi đơn về thông tin của trường đại học, khoa, ngành học, thông tin về điểm chuẩn, về khối thi, về chuẩn đầu ra,... Ví dụ một số câu hỏi sử dụng hỏi đáp trong hệ thống: - Trường đại học Lạc Hồng có những ngành nào? - Ngành công nghệ thông tin thi khối nào? - Chuẩn đầu ra ngành xxxx của trường yyyy là gì? - Điểm chuẩn của ngành xxx của trường yyyy là bao nhiêu điểm? Ngoài chức năng cơ bản là trả lời câu hỏi của người dùng. Hệ thống còn hỗ trợ đưa ra những lời gợi ý gần giống với câu hỏi sai cú pháp và một số chức năng khác hỗ trợ tốt cho việc nhập lại câu hỏi cũ, xem những câu hỏi mà nhiều người khác quan tâm,... 8 2.2 Các thành phần cơ bản của hệ thống 2.2.1 Thành phần dữ liệu Sau khi tiến hành khảo sát tổng thể thành phần dữ liệu phục vụ trả lời cho các câu hỏi liên quan đến vấn đề tuyển sinh. Thành phần dữ liệu chủ yếu cần lưu trữ để trả lời là: các thông tin về Trường, khoa, ngành, chuyển ngành, khối thi, điểm chuẩn, chuẩn đầu ra, .... Các trường thông tin cụ thể của các đối tượng được liệt kê trong bảng: Tên Field Ý nghĩa Bảng: tblTruong TruongID Mã của trường TenTruong Tên trường DiaChi Địa chỉ của trường PhuongCham Phương châm đào tạo của trường. MoTa Giới thiệu khái quát về trường Bảng: tblKhoa KhoaID Mã của khoa TenKhoa Tên của khoa MoTaKhoa Giới thiệu khái quát về khoa Bảng: tblNganh NganhID Mã của ngành TenNganh Tên của ngành TenTat Tên viết tắt MoTaNganh Giới thiệu khái quát về ngành Bảng: tblKhoiThi KhoiID Mã của khối thi TenKhoi Tên của khối thi Bảng: tblHeDaoTao 9 HeDaoTaoID Mã của hệ đào tạo TenHeDaoTao Tên của hệ đào tạo Bảng: tblMonHoc MonHocID Mã môn học TenMH Tên môn học HeSo Số đơn vị học trình hay số tín chỉ LyThuyet Số tiết lý thuyết ThucHanh Số tiết thực hành. Bảng: tblGiangVien GiangVienID Mã của giảng viên TenGiangVien Tên của giảng viên CoHuu Là cơ hữu hay là thỉnh giảng DiaChi Nơi ở của giảng viên Bảng: tblHocHamHocVi HHHVID Mã học hàm học vị TenHHHV Tên học hàm học vị ChuyenMon Chuyên môn của học hàm học vị Một số Filed khác SoNamDaoTao Số năm đào tạo của một ngành ứng với một hệ đào tạo Các thông tin về chuẩn đầu ra của một ngành của một hệ ChuanDauRa đào tạo Điểm chuẩn của một ngành của một hệ bậc đào tạo tại một DiemChuan năm nào đó. Số lượng sinh viên đầu vào của một ngành của một hệ bậc ChiTieu đào tạo trong một năm .... ..... Bảng 2.1: Bảng mô tả các trường dữ liệu. Ngoài những thông tin cơ bản trên, trong CSDL còn có những Filed khác chứa các thông tin về cơ sở vật chất của trường, các mối quan hệ giữa các 10 ngành, mối quan hệ giữa các ngành với hệ đào tạo, ngành với khối thi, .... 2.2.2 Thành phần xử lý Đây là thành phần quan trọng nhất của hệ thống. Bao gồm các thành phần chi tiết sau: - Một tập các khai báo cú pháp cho các dạng câu hỏi liên quan đến vấn đề tuyển sinh được xây dựng dựa trên văn phạm DCG. - Một trình biên dịch của Prolog hỗ trợ phân tích câu hỏi do người dùng nhập với tập cú pháp đã được định nghĩa trước. Kết quả trả về là một cây truy vấn nếu câu của người dùng nhập trùng khớp với cú pháp. Trả về False nếu người dùng nhập sai cú pháp đã định nghĩa trước đó. - Một công cụ hỗ trợ nhúng trình biên dịch của Prolog vào trong C#. Để từ đó có thể phân tích cú pháp lấy được dữ liệu cần thiết rồi truy vấn dữ liệu và hiển thị kết quả cho người dùng. - Trước khi đưa vào phân tích cú pháp, câu hỏi phải qua một công đoạn tiền xử lý để đưa câu hỏi do người dùng nhập về gần đúng với cú pháp của ngôn ngữ tự nhiên. Tức là loại bỏ những ký tự đặc biệt, loại bỏ những khoảng trắng thừa, ... có trong câu hỏi. 2.2.3 Thành phần giao tiếp ngƣời dùng. - Người dùng và hệ thống giao tiếp với nhau thông qua giao diện Web. - Hệ thống được xây dựng dựa trên Microsoft Studio 2010 với nền .NET Frameworks 4.0. - Sử dụng thư viện JQuery để xử lý các thao tác trên web browser, làm giảm công việc cho server. - Sử dụng công nghệ AJAX để kết nối giữa web browser và server, giúp cho giao diện được mượt mà và trơn tru hơn. - Hệ thống hoạt động tốt trên các trình duyệt web thông dụng như: FireFox, Internet Exploer,... 11 2.3 Quy trình xử lý câu hỏi Câu hỏi Tiền xử lý Câu hỏi Phân tích câu hỏi “chuẩn” Hiển thị kết quả Cây Tổng hợp dữ liệu truy vấn Kết quả truy vấn Hình 2.2: Quy trình xử lý câu hỏi. Quy trình xử lý câu hỏi bao gồm các công việc chính của thành phần xử lý trong hệ thống. Quy trình này sẽ được mô tả chi tiết ở chương 4. Sau đây là những mô tả cơ bản về từng công đoạn. 2.3.1 Tiền xử lý câu hỏi Có nhiệm vụ loại bỏ những “rác” trong câu, đó là những khoảng trắng thừa, những ký tự đặc biệt không phải ký tự chữ cái hoặc số. Đồng thời ở bước này cũng xử lý chuyển mã các ký tự unicode của các từ tiếng việc có dấu thành không dấu dưới dạng mã của kiểu gõ VNI. Ví dụ, từ “tên”= “te6n”. Câu hỏi Loại bỏ các ký tự đặc biệt và khoảng trắng thừa Chuyển ký tự có dấu thành mã VNI Hình 2.3: Công đoạn tiền xử lý. Câu hỏi “chuẩn” 12 2.3.2 Phân tích câu hỏi Ở công đoạn này công việc được đưa lại cho trình biên dịch của prolog xử lý. Với tập cú pháp được định nghĩa trước đó, các câu hỏi sẽ được phân tách ra thành các thành phần trong một danh sách(list) trước khi đưa vào Prolog. Sau đó Prolog sẽ tiến hành so khớp các thành phần trong danh sách với tập cú pháp của câu hỏi đã được định nghĩa. Kết quả trả về là một tập các cây truy vấn nếu so khớp thành công hoặc trả về FALSE nếu không thành công. Các cây truy vấn này có thể trùng nhau. Câu hỏi “chuẩn” Tách câu hỏi ra thành danh sách So sánh danh sách và tập cú pháp Trình biên dịch của Prolog Cây truy vấn False Hình 2.4: Công đoạn phân tích câu hỏi. Trong trường hợp ở công đoạn trên trả về FALSE mà không trả về cây truy vấn. Hệ thống sẽ quay lại so khớp để đề xuất ra các câu hỏi có ý gần giống với câu hỏi do người dùng nhập vào. 13 2.3.3 Tổng hợp dữ liệu trên cây truy vấn để tiến hành truy vấn CSDL Với các cây truy vấn nhận được từ công đoạn trên, tác giả tiến hành tổng hợp các nút lá lại để được dữ liệu hoàn chỉnh, sau đó phát sinh câu truy vấn SQL tự động dựa trên các nút WHERE và SELECT. Cây truy vấn Tổng hợp dữ liệu trên các nút lá Phát sinh câu truy vấn SQL Truy vấn dữ liệu Hình 2.5: Công đoạn tổng hợp dữ liệu và truy vấn dữ liệu. 2.3.4 Nhận kết quả và hiển thị lên cho ngƣời dùng - Tiếp nhận và kiểm tra kết quả: tùy thuộc vào câu truy vấn mà cấu trúc dữ liệu trả về có thể khác nhau, do đó việc xử lý kết quả cũng sẽ phải khác nhau. Cần lưu ý tới trường hợp kết quả trả về là rỗng. - Đưa ra câu trả lời tương ứng với kết quả: các câu trả lời cũng có sự khác biệt tùy thuộc vào dạng câu hỏi mà người dùng đặt ra cho hệ thống. Xử kết quả truy vấn Truy vấn Kết quả dữ liệu truy vấn Hiển thị kết quả Hình 2.6: Công đoạn hiển thị kết quả.
- Xem thêm -

Tài liệu liên quan