1. Trang chủ
  2. » Giáo Dục - Đào Tạo

XÂY DỰNG ỨNG DỤNG PHÂN TÍCH NGỮ NGHĨA TRONG TÌM KIẾM TÀI LIỆU TRỰC TUYẾN

84 270 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

Thông tin cơ bản

Định dạng
Số trang 84
Dung lượng 1,57 MB

Nội dung

Luận văn này đực thực hiện nhằm đề xuất ra được một phương thức xây dựng hệ thống hỗ trợ tư vấn với các kết quả sau: - Tư vấn hoàn toàn tự động các tài liệu cho người dùng theo từ khóa,

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN

Trang 2

Tôi cũng xin gửi lời cám ơn đặc biệt đến bạn Kiều Văn Cường, người cùng chung đồ án với tôi, đã giúp tôi rất nhiều trong những lúc nghiên cứu, xây dựng chương trình Tôi cũng xin cám ơn các bạn cùng lớp Tin 3 và HTTT A đã cung cấp các tài liệu, gợi ý các giải thuật để hoàn thành đồ án

Con cũng xin cảm ơn Bố, Mẹ, những người thân đã luôn bên cạnh động

viên khích lệ về mặt tinh thần và cả vật chất để giúp con hoàn thành tốt những năm học đại học và đồ án này

Hà Nội Tháng 5 năm 2008

Sinh viên Nguyễn Công Chính

Trang 3

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Ngày tháng 05 năm 2008

Ký tên

Trang 4

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Ngày tháng 05 năm 2008

Ký tên

Trang 5

MỤC LỤC

PHẦN 0: LỜI NÓI ĐẦU 10

1 MỤC TIÊU VÀ Ý NGHĨA CỦA ĐỀ TÀI 10

2 VẤN ĐỀ GIẢI QUYẾT 10

3 CÁCH GIẢI QUYẾT 11

3.1 Phân tách tài liệu thành các từ khóa (Filter) 11

3.2 Phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analystic-LSA) 12

3.3 Phân tích lịch sử truy cập của người dùng 12

4 CÁC ĐÓNG GÓP CHÍNH CỦA LUẬN VĂN 13

5 CÀI ĐẶT 14

5.1 Tách tài liệu thành các từ khóa Tìm kiếm dựa trên từ khóa 14

5.2 Mô hình tìm tư vấn dựa trên phân tích ngữ nghĩa tiềm ẩn 15

6 GIAO DIỆN TRANG CHỦ CHƯƠNG TRÌNH 16

PHẦN I: VẤN ĐỀ VÀ THỰC TRẠNG 18

1 ĐẶT BÀI TOÁN 18

2 CÁC VẤN ĐỀ VÀ CÁC GIẢI PHÁP HIỆN TẠI 21

2.1 Các hệ thống gợi ý (recommender systems - RS) 21

2.1.1 Các khái niệm về Recommender System 21

2.1.2 Các hệ thống recommender tiêu biểu 22

2.2 Xử lý tài liệu tiếng Việt 26

2.2.1 Các nghiên cứu về cấu của các nhà nghiên cứu Việt Nam 26

2.2.2 Tóm tắt đặc trưng của cấu trúc ngữ pháp tiếng Việt, Anh 29

2.3 Xử lý tài liệu theo ngữ nghĩa 30

2.3.1 Đặt vấn đề 30

2.3.2 Phân tích ngữ nghĩa tiềm ẩn (LSA) 31

2.3.3 Nhận xét, kết luận 31

2.4 Thu thập thông tin người dùng 32

2.4.1 Ưu điểm của các hệ thống tự học 32

2.4.2 Phân tích logfile 32

2.4.3 Phân tích dựa thông tin người dùng 32

2.4.4 Kết luận 33

2.5 Vấn đề lưu trữ dữ liệu 33

PHẦN II: CƠ SỞ LÝ THUYẾT 34

Trang 6

1 CÁC BỘ MÁY TÌM KIẾM <SEARCH ENGINE> 34

1.1 Một số engine thông dụng 34

1.2 Chiến lược tìm kiếm 37

1.2.1 Công nghệ tìm kiếm ngữ nghĩa trên thế giới hiện nay 37

1.2.2 Chiến lược tìm kiếm 38

2 XỬ LÝ VĂN BẢN TIẾNG VIỆT 40

2.1 Từ và cấu trúc từ của tiếng Việt 40

2.1.1 Định nghĩa từ 40

2.1.2 Cấu trúc từ tiếng Việt 40

2.1.3 Các phương pháp tách từ tiếng Việt đã được nghiên cứu 41

2.2 Thuật toán, otomat tách từ 44

PHẦN III: GIẢI PHÁP KỸ THUẬT 48

1 Giải pháp đọc các định dạng tài liệu Error! Bookmark not defined 1.1 Giao diện Ifilter 48

1.2 Chương trình EPocalipse.IFilter 48

2 Giải pháp tách từ Error! Bookmark not defined 2.1 Giải pháp tách từ Tiếng Anh 49

2.2 Giải pháp cho Tiếng Việt 50

3 Giải pháp LSA Error! Bookmark not defined 4 Giải pháp phân tích lịch sử làm việc của người dùng Error! Bookmark not defined 5 Giải pháp công nghệ Error! Bookmark not defined PHẦN IV: XÂY DỰNG CHƯƠNG TRÌNH, CÀI ĐẶT CHẠY DEMO 53

1 Phân tích hệ thống Error! Bookmark not defined 1.1 Mô hình use-case và đặc tả use-case 53

1.2 Về cơ sở dữ liệu 66

2 Các modul Error! Bookmark not defined 2.1 Modul đọc các định dạng tài liệu 77

2.2 Modul tách từ 77

2.2 Modul LSA Error! Bookmark not defined PHẦN V: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 80

1 Kết luận Error! Bookmark not defined 2 Hướng phát triển 82

Trang 7

DANH MỤC HÌNH VÀ BẢNG

DANH MỤC HÌNH VÀ BẢNG 7

Hình 1: Hình minh họa tập tách văn bản 14

Hình 2: Cấu trúc giải thuật LSA 15

Hình 3: Quy trình truy vấn 16

Hình 4: Giao diện chính trang chủ chương trình 17

Hình 5: Tìm kiếm thông tin – So sánh gợi ý của người và máy 18

Hình 6: Mô hình sơ đồ hệ thống gợi ý cho người dùng 20

Hình 7: Sơ đồ tổng quát hệ thống 21

Hình 8: Giao diện tìm kiếm của Amazone.com 22

Hình 9: Giao diện kết quả trả lại 23

Hình 10: Giao diện kết quả tìm kiếm của Amazone.com 24

Hình 11: Sơ đồ cấu trúc từ của Nguyễn Tài Cẩn 27

Hình 12: Giao diện tìm kiếm của Google 34

Hình 13: Giao diện tìm kiếm Yahoo 35

Hình 14 Giao diện tìm kiếm Ask Jeeves 36

Hình 15: Giao diện tìm kiếm All the web 36

Table 1: : Tần suất xuất hiện độ dài từ tiếng Việt trên trang Vdict.com 40

Table 2: Tần số tài liệu của một số từ thông dụng trong tiếng Việt 41

Table 3: Ví dụ về MI của n-gram 42

Hình 16: Xây dựng ôtômát âm tiết 44

Hình 17: Xây dựng ôtômát từ vựng 45

Hình 18: Một tình huống nhập nhằng 47

Hình 19: Giải thuật tách từ từ câu 50

Table 4: Bảng một số ví dụ về cấu trúc lưu trữ từ điển 51

Hình 20: Biểu đồ use-case hệ thống 53

Hình 21: Use-case tìm kiếm Hình 22: Biểu đồ cộng tác chức năng tìm kiếm 54 Hình 23: Biểu đồ tiến trình chức năng tìm kiếm 54

Hình 24: Use-case quản lý tài liệu 55

Hình 25: Biểu đồ cộng tác 55

Hình 26: Biểu đồ tiến trình chức năng thêm mới tài liệu 56

Hình 27: Biểu đồ tiến trình chức năng sửa tài liệu 56

Hình 28:Biểu đồ tiến trình chức năng xóa tài liệu 57

Hình 29: Biểu đồ cộng tác quản lý tài liệu 57

Hình 30: User-Case quản lý tác giả 58

Hình 31: Biểu đồ tiến trình thêm mới tác giả 58

Hình 32: Biểu đồ tiến trình sửa tác giả 59

Trang 8

Hình 33: Biểu đồ tiến trình xóa tác giả 59

Hình 34: Biểu đồ cộng tác quản lý tác giả 60

Hình 35: User-Case quản lý NXBLớp biên: 60

Hình 36: Biểu đồ tiến trình thêm mới NXB 61

Hình 38: Biểu đồ tiến trình xóa thông tin NXB 62

Hình 39: Biểu đồ công tác quản lý NXB 62

Hình 40: Biểu đồ usercase quản lý thành viên 63

Hình 42: Biểu đồ tiến trình chỉnh sửa user 64

Hình 43: Biểu đồ tiến trình xóa user 64

Hình 44: Biểu đồ cộng tác quản lý user 65

Hình 45: Biểu đồ cộng tác quản lý user 66

Table 5: Bảng các thực thể chính 67

Table 6: Bảng quan hệ các thực thể 68

Table 7: Danh sách các bảng chính 71

Table 8: Mô tả bảng tài liệu A01 72

Table 9: Mô tả bảng Catalogue A02 73

Table 10: Mô tả bảng tác giả A04 73

Table 11: Mô tả bảng NXB A05 74

Table 12: Mô tả bảng User A06 74

Table 13: Mô tả bảng subCatalogue A07 75

Table 14: Mô tả bảng Child A08 75

Table 15: Mô tả bảng A11 76

Table 16: Mô tả bảng A12 76

Trang 10

PHẦN 0: LỜI NÓI ĐẦU

1 MỤC TIÊU VÀ Ý NGHĨA CỦA ĐỀ TÀI

Máy tính hiện nay đã đóng góp một phần không nhỏ vào đời sống, và đã trở nên phổ dụng Trong lĩnh vực lưu trữ dữ liệu, chỉ cần một ổ cứng 10x15x3 cm3 là đã có thể lưu trữ được số lượng sách tương ứng với cả một thư viện sách khổng lồ Theo đó, là vấn đề tra cứu dữ liệu trong kho dữ liệu như thế Cũng như việc tổ chức trong thư viện, việc lưu trữ tài liệu điện tử trong máy tính cũng được chia thành các loại sách, và chủ

đề lớn khác nhau Hiện nay xu thế người đọc sách là coi sách là nguồn để tra cứu những vấn đề mình quan tâm, chứ không phải học một kiến thức mới do một cuốn sách mang đến Vấn đề đặt ra là làm sao tư vấn cho người dùng những cuốn sách nào liên quan nhiều nhất tới chủ đề người dùng yêu cầu (thông qua các từ khóa được nhập) bằng phân tích nội dung và lịch sử truy cập của những người dùng trước

Luận văn này đực thực hiện nhằm đề xuất ra được một phương thức xây dựng hệ thống hỗ trợ tư vấn với các kết quả sau:

- Tư vấn hoàn toàn tự động các tài liệu cho người dùng theo từ khóa, lịch sử truy cập của người dùng đó và những người dùng khác và sở thích của họ Kết quả tư vấn ngày càng chính xác hơn vì hệ thống có phân tích và cập nhật lịch sử truy cập của người dùng

- Giới thiệu tài liệu có độ tương tự nhất định với tài liệu đang nghiên cứu để người dùng lựa chọn tài liệu tiếp theo nghiên cứu

- Hệ thống khảo sát (survey) để thu thập các ý kiến đánh giá của người dùng về sự tương tự của các tài liệu hệ thống gợi ý Qua đó, càng thu thập nhiều sự đánh giá, kết quả tư vấn cho người dùng càng sát với vấn đề người ta đặt ra hơn

- Người dùng mới không nhất thiết phải đăng ký thông tin với hệ thống Hệ thống vẫn gợi ý cho người dùng thông qua phân tích nội dung và lịch sử truy cập hệ thống

- Đáp ứng các yêu cầu tìm kiếm trên các trang web (tìm kiếm trong site riêng hoặc trên internet) Hệ thống hướng tới việc tìm kiếm và xây dựng cơ sở dữ liệu động từ internet

2 VẤN ĐỀ GIẢI QUYẾT

Có 2 phương pháp chủ đạo được dùng trong hệ tư vấn:

Phương pháp lọc cộng tác: là phương pháp tập hợp các đánh giá hoặc các quan

điểm của người dùng, nhận dạng sự tương đồng giữa các người dùng trên cơ sở các phiên giao dịch của họ Phiên giao dịch của người dùng được bắt đầu từ khi người dùng đánh từ khóa và có tín hiệu search Kết thúc phiên làm việc với một từ khóa mới được nhập Phương pháp lọc cộng tác ước lượng hàm đánh giá R(u,i) của item i với user u dựa trên cơ sở đánh giá R(u’,i) của user u’ cho cùng item i mà trong đó u và u’

là tương tự nhau

Phương pháp lọc cộng tác có các vấn đề như:

Sự thưa thớt: thực tế thì vấn đề của người dùng quan tâm (từ khóa) nó chiếm phần rất

Trang 11

nhỏ và sự đánh giá sự tương đồng cho tài liệu là rất nhỏ so với rất nhiều tài liệu của hệ thống Với hệ thống gợi ý trong luận văn này, các đánh giá, các nhận định sẽ được lưu lại dần dần, loại bỏ dần những kết quả không chính xác

Vấn đề tài nguyên mới: Hệ thống không ngừng cập nhật các tài liệu mới cho kho dữ

liệu của mình Mỗi lần thêm một tài liệu mới, hệ thống sẽ tính lại (off-line) là phân tích

độ tương đồng về ngữ nghĩa giữa các văn bản (kỹ thuật LSA) để tìm ra tập các láng giềng gần của một cuốn sách

Vấn đề người dùng mới: Như đã đề cập, hệ thống sẽ phân tích và lưu trữ lại lịch sử

của tất cả các phiên làm việc, kết hợp phân tích nội dung trong hệ thống để lọc ra sự tương đồng, liên quan chính xác nhất của các tài liệu Nên hệ thống hoàn toàn có thể gợi ý tư vấn cho một người dùng mới Khi người dùng cung cấp cho hệ thống các sở thích, hệ thống sẽ lọc tiếp theo sở thích đó, để cung cấp kết quả chính xác hơn

Phương pháp lọc dựa trên nội dung: là một giải thuật hướng về nghiên cứu lọc thông tin, phương pháp lọc dựa trên nội dung ước lượng hàm đánh giá R(u,i) của item i với user u được thiết lập dựa trên cơ sở đánh giá R(u,i’) của cùng user u cho item i’ mà trong đó i và i’ là tương tự nhau về mặt nội dung

Nhược điểm chính của phương pháp này là nó giả định các thuật ngữ là độc lập nhau Trong thực tế, các thuật ngữ thường có liên quan với nhau và hiểu được điều này

có thể dẫn đến việc tính độ liên quan tốt hơn

Tính đồng nghĩa: có nhiều cách để chỉ đến một đối tượng, ví dụ: car và automobile

• Các sản phẩm tương tự được đối xử theo cách khác nhau

• Tăng sự thưa thớt, làm mất tính chất bắc cầu giữa các từ khóa

• Sinh ra kết quả có chất lượng thấp

Tính nhiều nghĩa của từ: hầu hết các từ đều có nhiều nghĩa, ví dụ: model, python, chip

• Độ chính xác thấp

3 CÁCH GIẢI QUYẾT

Sử dụng phương pháp lọc cộng tác, hệ thống đã đưa ra phương án giải quyết được các nhược điểm của nó như đã trình bầy ở trên Về sử dụng phương pháp lọc dựa trên nội dung, hệ thống đang sử dụng các phương pháp:

Các tài nguyên là các tài liệu được thể hiện dưới dạng văn bản như một cuốn sách, tạp chí, hay một bài báo, bài diễn văn điện tử nào đó Với những tài liệu tiếng Anh, một từ thường có một âm tiết, ta có thể dễ dàng xác định một từ dựa vào dấu cách (space) hoặc dấu câu Việc phân tách văn bản tiếng anh thành các từ khóa không khó khăn Với những văn bản tiếng việt, mỗi từ nó có thể có một, hai hoặc nhiều hơn số lượng âm tiết Việc phân tách thành từ khóa đối với văn bản tiếng việt phải dựa trên từ

điển và các thuật toán đọc từ khóa sao cho đúng nghĩa nhất của câu Thí dụ: Học sinh

Trang 12

học sinh học thì hệ thống sẽ tách thành Học sinh, học, sinh học Sau đó, loại bỏ các từ

dừng (Stopword – Những từ mang ý nghĩa cảm thán, đại từ…như anh, bạn, do đó…),

những từ không mang nhiều ý nghĩa về nội dung Bước tiếp theo, dùng kỹ thuật IDF để lọc bỏ bớt số lượng từ khóa của tài liệu

TF-3.2 Phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analystic-LSA)

Kỹ thuật LSA là những lý thuyết và phương thức cho việc trích rút và thể hiện ngữ cảnh sử dụng ngữ nghĩa của từ dựa trên việc tính toán thông kê Kỹ thuật này cho phép ứng dụng trên một kho dữ liệu văn bản lớn Ý tưởng cơ bản của kỹ thuật là tổng hợp tất cả các văn cảnh của từ, trong đó, một từ được đưa ra đã và không chỉ định biểu

lộ những tập ràng buộc lẫn nhau Những tập ràng buộc này cho phép xác định sự tương đồng về nghĩa của những từ và tập hợp mỗi từ khác

Tập các từ khóa của các tài liệu của bước phân tích trên được dùng làm đầu vào cho các hàng của ma trận Theo đó, bộ từ khóa của một tài liệu được dùng làm cột, các tài liệu làm hàng, các cell của ma trận được khởi tạo là tần suất xuất hiện của từ khóa-thuật ngữ đó trong tài liệu LSA dùng kỹ thuật phân tích giá trị riêng (SVD-singular value decomposition) để giảm bớt để giảm bớt kích thước ma trận thuật ngữ-tài liệu, không gian N-chiều sẽ được giảm bớt xuống một không gian K chiều, K<<N, không gian mới này được gọi là không gian khái niệm

Sử dụng kết quả bước này, ta thu được tập các tài liệu có sự tương đồng về ngữ nghĩa nhất định với tài liệu xét Là nguồn quan trọng trong việc đưa ra gợi ý những tài

liệu tương tự với tài liệu người dùng đang đọc.

3.3 Phân tích lịch sử truy cập của người dùng

Một phiên làm việc của người dùng được đánh dấu bằng việc nhập một từ khóa và nhấn nút search Các kết quả gợi ý được đưa ra, khi người dùng quyết định chọn một tài liệu (A), hệ thống gợi thống gợi ý các tài liệu có liên quan (dựa vào phân tích LSA trước và phân tích lịch sử phiên làm việc) Khi người dùng chọn một tài liệu (B) tiếp theo trong phần của hệ thống gợi ý để đọc, hệ thống ghi nhận tài liệu B có liên quan nhất trong phiên làm việc đó với tài liệu A Và cứ thế, hệ thống sẽ cập nhật và đánh giá lại sự liên quan nhất định của các tài liệu qua các phiên làm việc của người dùng

Hệ thống còn đưa ra kỹ thuật khảo sát (survey) để thu thập ý kiến chính xác hơn của người dùng về sự tương đồng của các tài liệu

Hạn chế của phương pháp này, là khi có một tài liệu mới được cập nhật, chỉ số lịch

sử truy cập của nó là 0, hoặc một giá trị âm nào đó Có thể về cơ bản thì nó rất tương đồng với văn bản A trên chẳng hạn, nhưng phải qua nhiều lần, nhiều phiên làm việc thì

nó mới đứng đầu trong các văn bản liên quan của A

Trang 13

4 CÁC ĐÓNG GÓP CHÍNH CỦA LUẬN VĂN

 Cung cấp bộ phân tách văn bản thành các từ khóa với văn bản tiếng Việt

và văn bản tiếng Anh Sử dụng bộ đọc văn bản đầu vào Ifilter để xử lý, kết hợp các file

từ điển, file từ stopword để tách dữ liệu được đọc vào thành các từ khóa, đặc trưng cho tài liệu đó

 Kỹ thuật LSA, đánh giá độ tương đồng về mặt ngữ nghĩa giữa các tài liệu dựa trên kỹ thuật xử lý ma trận SVD Phần này sẽ được trình bày chi tiết trong luận văn còn lại của dự án (Liên lạc với Mr Kiều Văn Cường)

 Cung cấp kỹ thuật xử lý lịch sử phiên làm việc của một người dùng, cho phép các kết quả chính xác hơn sau nhiều phiên làm việc

 Đề xuất mô hình và phương thức triển khai cho phần mở rộng dự án, xây dựng hệ thống CSDL động trên Internet và đẩy hết các quá trình xử lý thành on-line (hệ thống như một tool tìm kiếm cho khách hàng Hệ thống sẽ bắt đầu khi người dùng bắt đầu phiên làm việc)

Trang 14

5 CÀI ĐẶT

5.1 Tách tài liệu thành các từ khóa Tìm kiếm dựa trên từ khóa

Mô hình này áp dụng cho những lần gợi ý đầu tiên, cho khi người dùng nhập từ khóa

Giải thuật tách từ khóa (chạy off-line):

Input: tập tài nguyên là sách, tạp chí, trang thông tin (html) ở các định dạng tài liệu

Output: Tập các từ khóa với rank tương ứng

Quá trình tìm kiếm sẽ ưu tiên với những khóa được lọc ra ở tập khóa có mức độ ưu

tiên được đánh giá bằng rank tương ứng của chúng

Giải thuật này được thiết kế để chạy offline trong phiên bản đầu tiên này Quá trình

cập nhật tài liệu được người quản trị nhập Chi phí thời gian cho modul này là khá lớn,

một cuốn sách điện tử tầm 200 trang tương ứng là 3 phút cho hệ thống đọc và tách

thành từ khóa

Hình 1: Hình minh họa tập tách văn bản

Trang 15

5.2 Mô hình tìm tƣ vấn dựa trên phân tích ngữ nghĩa tiềm ẩn

Sau khi tách thành tập các từ khóa, modul này sẽ thực hiện việc cập nhật tiếp các tài liệu liên quan, có độ tương đồng nhất định về nội dung Mỗi tài liệu sẽ được xác định cùng với nó một tập các tài liệu khác có tương đồng về mặt nội dung

Hình 2: Cấu trúc giải thuật LSA

Tập tài liệu (từ khóa)

Xử lý LSA

(ma trận và giải thuật SVD)

Tập các tài liệu liên quan tới 1 tài liệu

Cập nhật CSDL

(dữ liệu tài liệu liên quan )

Trang 16

5.3 Mô hình tư vấn dựa trên lịch sử phiên truy cập của người dùng

Kế thừa từ các hệ thống học thông minh, từ các phiên làm việc của người dùng, hệ thống sẽ tự động cập nhật để chính xác hơn những thông tin có trong cơ sở dữ liệu để phục vụ cho những lần tư vấn sau đó Có rất nhiều mô hình khai thác trên lĩnh vực người dùng Trong đồ án này, tôi chỉ khai thác trên khía cạnh sở thích và lịch sử các phiên làm việc của người dùng Khi người dùng đăng ký thông tin, hệ thống ghi nhận ở tài khoản của họ, thông tin về các lĩnh vực người dùng quan tâm để lọc các kết quả tìm kiếm Tại phiên làm việc của người dùng, khi người dùng click vào một tài liệu mà hệ thống đưa ra để gợi ý cho tài liệu đang đọc, hệ thống sẽ cập nhật hệ số tương quan giữa

2 tài liệu đó, phục vụ cho các kết quả tư vấn ở lần tiếp theo

Tài liệu chứa từ

khóa trong query

Tài liệu có liên quan với tài liệu kết quả

Truy vấn

Các tài liệu liên quan

Cập nhật tài liệu liên quan Hiển thị kết

quả ra browser

tác người dùng

Trang 17

6 GIAO DIỆN TRANG CHỦ CHƯƠNG TRÌNH

Hình 4: Giao diện chính trang chủ chương trình

Trang 18

Trên internet, chúng ta đã có rất nhiều các công cụ tìm kiếm và gợi ý các tài liệu cần đọc và những tài liệu liên quan Thí dụ như công cụ tìm kiếm của Google, ngoài những tài liệu có chứa từ khóa, nó còn gợi ý những tài liệu có độ tương đồng nhất định với nội dung người dùng tra cứu, thể hiện ở các liên kết cuối mỗi trang Với amazon.co.uk, hệ thống recommender chỉ với những thành viên đăng ký tài khoản với

hệ thống Khi đăng ký tài khoản, user đăng ký luôn các sở thích và các lĩnh vực họ quan tâm Với hệ thống mubu.com, họ gợi ý trong lĩnh vực âm nhạc Người dùng cũng phải cung cấp thông tin về sở thích như ca sỹ, nhạc sĩ, thể loại nhạc quan tâm Từ đó,

hệ thống gợi ý cho người dùng không cần keyword…

Hình 5: Tìm kiếm thông tin – So sánh gợi ý của người và máy

Trang 19

Rất nhiều người không có thời gian để lọc ra trong một tệp các cuốn sách được thông tin mình mong muốn Thậm chí trong một cuốn sách dầy tới nghìn trang Mục lục ở mỗi cuốn sách cũng là các tóm tắt ý, các chủ đề viết về cho cuốn sách Người dùng có thể tìm trong các mục lục đó, cũng có thể tìm theo từ khóa (ứng với mỗi tài liệu, chúng được tìm theo từ khóa dựa vào chương trình đọc tài liệu đó) Như hình trên, vấn đề là, tìm được một cuốn sách chứa chủ đề của mình và có đủ lượng thông tin cần thiết cho vấn đề mình quan tâm Hoặc khi chưa đủ thông tin, người dùng được gợi ý những cuốn sách viết về những chủ đề có liên quan mà người ta cần tra cứu thông tin

về

Bài toán đặt ra là, trong kho dữ liệu, bao gồm rất nhiều cuốn sách, rất nhiều các tài liệu như bài báo, tạp chí Người dùng cần tra cứu thông tin về một vấn đề nào đó Hệ thống sẽ phải cung cấp những cuốn sách viết về vấn đề đó và sắp xếp theo thứ tự ưu tiên nhất định cho người đọc Hơn nữa, hệ thống cũng cung cấp các tài liệu mà những người dùng trước đó đã sử dụng khi cần tra cứu vấn đề đó

Người dùng thiết lập một phiên giao dịch, bằng việc đăng nhập vào hệ thống hoặc

có thể không cần đăng nhập (Tất nhiên, khi đăng nhập vào hệ thống sẽ được hỗ trợ một

số tính năng tìm kiếm nâng cao) Bằng việc đánh một từ khóa người dùng quan tâm, hệ thống sẽ cung cấp hai loại kết quả:

1 Kết quả do truy vấn SQL trong cơ sở dữ liệu của hệ thống

2 Kết quả do phân tích qua lịch sử truy cập của những người dùng trước

Với loại kết quả đầu tiên, kết quả tìm được do việc truy vấn bằng các câu truy vấn SQL trong cơ sở dữ liệu CSDL phải được thiết kế sao cho quá trình tìm kiếm là thuận lợi nhất Khi tìm được các kết quả theo mức độ ưu tiên, người dùng sẽ chọn một văn bản nào đó để nghiên cứu Hệ thống phải cung cấp tiếp cho người dùng những tài liệu liên quan tới tài liệu mà họ đang đọc Việc tìm những văn bản liên quan là dựa trên sự

tương đồng giữa hai văn bản Với loại kết quả thứ hai, hệ thống sẽ cung cấp cho người

dùng những văn bản mà qua những lần truy cập hệ thống trước đó, hệ thống ghi nhận những tài liệu mà các người dùng trước đã đọc khi đọc tài liệu này học tài liệu khác

cùng chủ đề hay có độ tương đồng nhất định với tài liệu đó Sơ đồ tổng quát giao dịch

của hệ thống:

Trang 20

Hình 6: Mô hình sơ đồ hệ thống gợi ý cho người dùng

Kết quả trả lại được sắp xếp theo thứ tự giảm dần của mức độ ưa thích

Query search

1.Truy vấn theo từ khóa

2.Truy vấn theo tài liệu

liên quan (LSA + phân

tích lịch sử làm việc)

Items Databases

Phân tích phiên làm việc

Trang 21

2 CÁC VẤN ĐỀ VÀ CÁC GIẢI PHÁP HIỆN TẠI

2.1 Các hệ thống gợi ý (recommender systems - RS)

2.1.1 Các khái niệm về Recommender System

Recommender Systems (RS) là một hế thống lọc thông tin đặc biệt, hệ thống cho phép lọc thông tin dựa trên sự quan tâm của người dùng và nội dung của văn bản Điển hình, một hệ thống RS sẽ so sánh những thông tin người dùng với những đặc trưng liên quan Những đặc trưng này có thể thu thập từ nội dung thông tin (Cách tiếp cận theo nội dung: Content - based approach) hoặc từ môi trường mạng xã hội của người sử

dụng (Cách tiếp cận theo hướng lọc cộng tác: Collaborative filtering approach) <Theo

wikipedia>

Như vậy dựa vào khái niệm trên chúng ta có thể thấy hiện có hai kỹ thuật chính

được sử dụng để xây dựng một hệ thống RS hiện nay Một là kỹ thuật hướng nội

dung – Content based approach, kỹ thuật này cho phép hệ thống đưa ra những gợi ý

phù hợp nhất với những tiêu chuẩn đã được xác định Hệ thống phải nắm được tất cả những đặc điểm chính được thể hiện trong đối tượng được quan tâm (Theo từ khoá của người dùng) và sắp xếp chúng theo những tiêu chuẩn tương ứng

Mặt khác , tiếp cận theo hướng lọc cộng tác – Collborative filtering CF lại làm

việc dựa trên cơ chế tìm kiếm những sự đồng nhất của một cá nhân với cộng đồng mà

họ tham gia để xác định gợi ý hơn là dựa trên việc xác thực nội dung của sự quan tâm Tức là CF dựa trên sự công tác giữa một nhóm cá thể có chung một quan điểm hay một

sự lựa chọn nào đó để đưa ra nhưng gợi ý cho người tìm kiếm

Hình 7: Sơ đồ tổng quát hệ thống

Trang 22

Trong môt số hệ thống cũng thường áp dụng cả hai kỹ thuật này cách này gọi là hệ thống lai (Hybrid)

Về căn bản mô hình bài toán được xây dựng như sau:

- Gọi C là số thành viên của hệ thống: ci là tường người dùng cụ thể

- Gọi S là toàn bộ không gian đối tượng có thể đưa ra và si là một đối tượng cụ thể

- Gọi u là giá trị phù hợp của đối tượng s với người dùng c

Vậy bài toán là sự ánh xạ u: CxS  R Trong đó R chính là tập hợp các đối tượng được đưa ra giới thiệu Tập R sẽ được sắp xếp theo thứ tự giảm dần của u.Công việc chính của giải thuật đơn giản chỉ là đi tìm giá trị hàm u=f(c, s) sao cho u (max) là giá trị được ưa thích nhất

Dễ thấy độ phức tạp của bài toán là rất cao bởi không gian S là rất lớn Ví dụ như cách ứng dụng về gợi ý sách, số lượng sách có thể lên tới hàng triệu quyển Hoặc hệ thống gợi ý về CDs…Đồng thời không gian C cũng rất lớn nếu như mạng phát triển mang tính toàn cầu như Ebay, Google, Yahoo có thể lên đến hàng tỉ thành viên

2.1.2 Các hệ thống recommender tiêu biểu

Hệ thống bán hàng trực tuyến m a z o n e

Hình 8: Giao diện tìm kiếm của Amazone.com

Trang 23

Đầu vào: Tên thiết bị, tên công ty, tên danh mục hay bất cứ từ khóa nào

Đầu ra: Gợi ý cho người dùng các sản phẩm hiện có

Hình 9: Giao diện kết quả trả lại

Kết quả trả về với đúng cuốn sách cần tìm Ngoài ra, hệ thống còn tư vấn các sản phẩm khác tương tự

Trang 24

Hệ thống tìm kiếm âm nhạc trực tuyến Chacha.vn

Hình 10: Giao diện kết quả tìm kiếm của Amazone.com

Recommender System của ChaCha.vn là một hệ thống tư vấn âm nhạc độc đáo với nhiều tính năng nổi trội, là công cụ hỗ trợ bạn nghe nhạc một cách hữu hiệu nhất Hệ thống Recommender tư vấn cho người dùng những thông tin mới như:

Nghệ sĩ liên quan : Hệ thống này sẽ cho bạn biết sự liên quan giữa các nghệ sĩ với nhau, xét theo tiêu chí là mức độ yêu thích của người dùng đối với các nghệ

sĩ đó

Người dùng hợp gu : Hệ thống đưa ra danh sách nhóm người dùng có cùng sở thích âm nhạc với bạn Đồng thời cho biết thêm mức độ hợp “gu” của bạn với một người trong nhóm đó là thấp, trung bình, hay cao

Bài hát liên quan : Hệ thống sẽ đưa ra danh sách các bài hát có liên quan gần gũi đến một bài hát cụ thể nào đó để người dùng tham khảo

Giới thiệu các bài hát mới : Hệ thống tư vấn cho người dùng các bài hát mới mà theo dự đoán của hệ thống, đó là các bài hát người dùng sẽ thích nghe

Trang 25

Hoạt động của hệ thống

Hệ thống tư vấn gồm 4 chức năng hoạt động như sau:

Nghệ sĩ liên quan: Dựa trên các thông tin về nghệ sĩ (các bài hát, thể loại sáng tác hay trình bày, mức độ quan tâm của người dùng…), hệ thống sẽ tính toán để đo mức liên quan giữa các nghệ sĩ, sau đó đưa ra danh sách các nghệ sĩ có độ liên quan cao nhất

Người dùng hợp “gu”: Dựa trên các bài hát đã nghe qua của từng người dùng cụ thể, hệ thống tính toán mức độ hợp “gu” (hợp sở thích) giữa những người dùng khác nhau Trên cơ sở đó đưa ra danh sách những người dùng có mức độ hợp

“gu” cao nhất

Bài hát liên quan: Dựa vào thể loại, mức độ được ưa thích của bài hát, hệ thống tính toán độ liên quan giữa các bài hát khác nhau Sau đó đưa ra danh sách bài hát có độ liên quan cao nhất đối với bài hát hiện tại

Giới thiệu các bài hát mới: Dựa vào tiểu sử người dùng (các bài hát đã nghe qua, đánh giá của người dùng về các bài hát đã nghe), hệ thống sẽ tiến hành dự đoán mức độ ưa thích của người dùng đối với các bài hát chưa nghe Thông qua đó, sắp xếp các bài hát và đưa ra danh sách các bài hát có độ ưa thích cao nhất để tư vấn cho người dùng

Hệ thống này có ưu điểm nổi bật:

Hệ thống giúp cho người dùng có thể tìm thấy các bài hát gần gũi với bài hát mà mình yêu thích thông qua các bài hát liên quan

Hệ thống Recommender cũng là kênh kết nối bạn với những người dùng khác có cùng sở thích âm nhạc Bạn sẽ có nhiều cơ hội làm quen, khám phá những sở thích mới lạ từ những người cùng “gu” âm nhạc

Với các mục hỗ trợ tìm kiếm hiện nay, người dùng muốn tìm một bài hát buộc phải đưa thông tin nào đó về bài hát cần tìm (tên bài hát, một câu hát trong bài, tên ca sĩ, nhạc sĩ sáng tác ) Vì thế rất khó để tìm thấy một bài hát mới hoặc một bài hát hợp sở thích của mình, hoặc bạn sẽ gặp khó khăn nếu bạn không có thông tin về bài hát đó Với chức năng tư vấn âm nhạc, hệ thống Recommender cho phép người dùng có thể khám phá các bài hát mới lạ, bất ngờ Nhờ hệ thống Recommender, bạn có thể nghe nhạc chọn lọc theo đúng sở thích mà không mất nhiều thời gian tìm kiếm

Kết luận:

Nhìn chúng các hệ thống truyền thống đều có mặt hạn chế nhưng chúng ta biết cách kết hợp các kỹ thuật phù hợp với từng hệ thống riêng biết Trong nhiều hệ thống thực tế chúng ta đã thấy được khả năng mở rồng đầy tiềm năng đặc biệt trong hệ thống tìm kiếm

Trang 26

2.2 Xử lý tài liệu tiếng Việt

Tiếng nói và chữ viết là hai yếu tố cơ bản nhất của bất kỳ ngôn ngữ nào Trong sự phát triển của công nghệ thông tin (CNTT) ở Việt Nam, một số việc liên quan đến

“tiếng Việt” đã được làm và ít nhiều có kết quả ban đầu:

(a) Trước hết là các bộ gõ chữ Việt và thành công của việc đưa được bộ mã chữ Việt vào

bảng mã Unicode, cũng như việc chọn Unicode cho bộ mã chuẩn tiếng Việt (nhân đây cũng xin nói thêm, do chưa ý thức về chuẩn, rất nhiều cán bộ CNTT, nhiều cơ quan nhà

nước vẫn chưa chịu đổi thói quen cũ để dùng bộ mã chuẩn Unicode, một việc rất quan trọng của xử lý tiếng Việt) Bảo tồn chữ Nôm trên máy tính cũng là một việc đầy nỗ lực

và nhiều ý nghĩa được nhiều người theo đuổi lâu nay, cần được nhà nước tiếp tục ủng

hộ

lâu dài (http://nomfoundation.org)

(b) Tiếp theo có thể kể đến các chương trình nhận dạng chữ Việt in (OCR: optical character recognition), như hệ VnDOCR của Viện Công nghệ Thông tin, Viện Khoa

học và Công nghệ Việt Nam Các chương trình nhận dạng chữ in nhằm chuyển các tài

liệu in trên giấy thành các tài liệu điện tử (dưới dạng các tệp văn bản trên máy tính) (c) Các phần mềm hỗ trợ việc sử dụng tiếng nước ngoài, tiêu biểu là các từ điển song ngữ

trên máy tính, thí dụ như các từ điển điện tử của Lạc Việt đã được dùng rộng rãi trên máy

tính để tra cứu từ Anh-Việt, Việt-Anh Điều ta cần phân biệt là các từ điển điện tử này dành cho con người sử dụng, khác với từ điển điện tử dành cho máy tính sử dụng trong

xử lý ngôn ngữ tự nhiên (sẽ được đề cập ở phần sau)

(d) Các nỗ lực trong việc làm các phần mềm dịch Anh-Việt,Việt-Anh, chẳng hạn như các hệ dịch EVTRAN và VETRAN

(e) Một loại việc nữa là Việt hóa các phần mềm mà gần đây tiêu biểu là kết quả Việt hóa

Windows và Microsoft Office của Microsoft Việc này có thể xem như việc “dịch” các

thông báo tiếng Anh cố định trong các phần mềm thành các thông báo tiếng Việt

2.2.1 Các nghiên cứu về cấu của các nhà nghiên cứu Việt Nam

Các quan điểm trong nghiên cứu về ngữ pháp tiếng Việt, chúng ta có thể thấy rằng chưa có một định nghĩa chuẩn thống nhất về cách gọi của từ loại cũng như cấu trúc các ngữ của tiếng Việt Trong đồ án này, người viết luận văn sẽ chủtrương bám sát theo quan điểm được nhiều tác giảđã thống nhất, quan điểm này được đánh giá là khá phù hợp với ngữ pháp tiếng Việt hiện tại Đồng thời, trong quá trình xây dựng đồ án, tác giả cũng tiến hành so sánh và bổ sung thêm những phần lý thuyết thuộc hai quan điểm của Nguyễn Tài Cẩn và Diệp Quan Ban

Trang 27

Nguyễn Tài Cẩn (1975) [14] cho rằng cụm danh từ (danh ngữ) gồm có ba phần : phần đầu, phần trung tâm và phần cuối như sơ đồ sau :

Hình 11: Sơ đồ cấu trúc từ của Nguyễn Tài Cẩn

Trong thực tế danh ngữ còn có thể xuất hiện cả dưới dạng những dạng chỉ có hai phần: phần đầu+phần trung tâm, phần trung tâm+phần sau hoặc phần đầu + phần sau

Phần trung tâm của danh ngữ không phải chỉ có một từ trung tâm mà bao gồm cả bộphận trung tâm ghép gồm hai trung tâm T1 và T2, với hai vị trí T1, T2 bộ phận trung tâm có thể xuất hiện dưới 3 biến dạng :

o Có đầy đủ : T1T2, ví dụ : con chim ( này)

o Dạng thiếu T1 : -T2, ví dụ : - chim (này)

o Dạng thiếu T2: T1-, ví dụ : con – ( này)

-Phần đầu của danh ngữ có tất cả 3 loại thành tố phụ (3 loại định tố) :

o Định tố “cái”, ví dụ : cái cậu học sinh ấy

o Định tố chỉ số lượng, ví dụ : mấy cái cậu học sinh ấy

o Định tố chỉ ý nghĩa toàn bộ, ví dụ : tất cảmấy cái cậu học sinh ấy

-Phần cuối của danh ngữ, có thể có 2 loại định tố có tổ chức hoàn toàn khác nhau:

o Loại định tố chỉ gồm một từ, ví dụ : một quyển sách quý

o Loại định tố do một mệnh đềđảm nhiệm, ví dụ : cuốn sách tôi vừa mua hôm

qua

Trong tiếng Việt có theer dùng những từ loại sau đây để làm định tố cuối :

+ Danh từ, ví dụ : vườn cau

+ Tính từ, ví dụ : ghế dài, một cái ghể rất tốt

+ Động từ, ví dụ : bàn học

+ Từ chỉ trỏ, ví dụ : sáng nay, người ấy

+ Từ chỉ vị trí, ví dụ : nhà trong, cổng trước

+ Từ chỉ con số : giường một, ngày 27

Hồ Lê (1992) [20] cho rằng vị trí của số lượng từ, đại từ chỉ định và sự kiện từ xoay xung quanh danh từ theo mô hình sau :

Trang 28

Trong đó:

D1: gồm những danh từ như : con, cái, …; ông, bà…; loại, thứ, hạng, …; phía,

bên, nơi, chốn, buổi, hôm, ngày, giờ, khi, lúc…

D2: gồm những danh từ còn lại

Ví dụ: - Con mèo đen lớn rồi

- Cô y tá

- Phía ngoài sân

Nguyễn Kim Thản (1997) [20] cho rằng việc nghiên cứu cụm danh từ chính là việc nghiên cứu từ tổ danh từ, loại từ chiếm ưu thế tuyệt đối trong nhóm danh từ Danh từcó thể ghép với danh từ, thời vị từ, số từ, động từ, tính từ, đại từvà một số từ phụ khác như : khi, lúc, hồi, dạo, thưở, khoảng, độ, bữa, buổi, đằng, phía, phương, nơi, bên, ngả, lối, hạng, cái, loại, cỡ, khổ, bậc, ngạnh…

-Từ tố danh từ + danh từ (N) :

o Từ tố N1 N2, ví dụ : cân gạo, bó rau, hòm sách, chùm cau, tóc mây, tiền nghìn, sông Hồng, huyện Gia Lộc, nước Lào…

o Từ tố N1 z N2, ví dụ : quê của mẹ, nhà bằng gạch, kế hoạch vềkinh tế, sách

cho thiếu nhi, nhãn ở Hưng yên…

oTừ tố N1 (z) N2, ví dụ : quê mẹ, nhà gạch, kế hoạch kinh tế sách thiếu nhi, nhãn Hưng yên… ( z : là giới từ)

-Từ tố danh từ + thời vị từ (E):

oTừ tổ N E, ví dụ : Ngoài nhà ngoài có cái giường mình nằm

oTừ tổ N (z) E, ví dụ: ý định ( của) trên như thế nào ?

-Từ tố danh từ + số từ ( F): từ chỉ số lượng bao giờ cũng đặt trước danh từ (FN), ví

dụ : hai cái bàn Từ chỉ thứ tự bao giờ cũng đặt sau danh từ ( NF), ví dụ : bàn số hai, quyển thứ năm

o Từ tố danh từ + động từ, ví dụ : cá sống, nước sôi, gió lùa, kế hoạch làm việc…

oTừ tố danh từ + tính từ, ví dụ: quả táo vàng, cái áo trắng…

oTừ tố danh từ + đại từ chỉđịnh, ví dụ: con mèo ấy, cái xe này, …

Diệp Quang Ban (1999) [1] đưa ra cấu tạo chung của cụm danh từ có ba phần: phần trung tâm, phần phụ trước, phần phụ sau Phần trung tâm thường là một danh từ hoặc một ngữ danh từ Trong phần phụ trước người ta đã xác định được ba vị trí khác nhau sắp xếp theo một trật tự nhất định Ở phần phụ sau thường nhận được hai vị trí có trật tựổn định Phần phụ trước cụm danh từ chuyên dùng chỉ mặt số lượng của sự vật nêu ở trung tâm, phần phụ sau chủ yếu dùng chỉ mặt chất lượng của sự vật nêu ở trung tâm

Trang 29

Phần phụ trước Phần phụ trung tâm Phần phụ sau

Vị trí -1 là vị trí của từ chỉ xuất cái

Vị trí -2 là vị trí của từ chỉ số lượng, ví dụ: một, hai,…; vài, ba, dăm, dăm ba ; mỗi, từng, mọi…; những, các, một…; mấy

Vị trí -3 là vị trí của từ chỉ tổng lượng, ví dụ : hết thảy, tất cả, cả…

Vị trí 1 là vị trí của từ nêu đặc trưng miêu tả có thể gặp nhiều loại từ khác nhau như : danh từ, động từ, tính từ, số từ, đại từ và thời vị từ

Ví dụ:

phòng tạp chí, phòng đọc, phòng hẹp, phòng chúng tôi…

Vị trí 2 là vị trí của từ chỉ định, ví dụ: cái máy này, quả táo kia…

2.2.2 Tóm tắt đặc trưng của cấu trúc ngữ pháp tiếng Việt, Anh

Các đặc điểm trong câu của tiếng Việt:

 Câu được cấu tạo đa thành phần, có câu đơn, câu ghép, câu tối giản

 Các câu được phân tách bằng các dấu chấm câu

 Câu hoàn chỉnh có hoặc không sử dụng các trạng từ, từ cảm thán (các stopword,

sẽ được loại bỏ khi phân tách để lọc thông tin)

 Câu được hình thành từ các từ, hoặc các câu đơn

 Mỗi câu mang một ý nghĩa thông tin hoàn chỉnh

Như đã trình bày ở trên, ngày nay, các tài liệu viết tiếng Việt đang chuyển sang khai thác trên font chữ chung, tuân theo chuẩn unicode Điều này có lợi rất nhiều cho việc đọc chính xác các tài liệu tiếng việt của các chương trình đọc

Với các tài liệu tiếng Anh, các từ được phân cách nhau bởi dấu cách Việc xử lý phân tách từ từ các văn bản tiếng Anh tương đối dễ dàng

Trong tiếng Việt không thể phân tách được thành những từ riêng bởi dấu cách Vì

từ có thể gồm một, hai hoặc nhiều hơn số lượng âm tiết (số lượng từ ghép) Vì thế, việc tách từ để chính xác đòi hỏi giải thuật tách từ tốt

Trang 30

2.3 Xử lý tài liệu theo ngữ nghĩa

1 Dựa trên trí tuệ nhân tạo (AI-based):

Đây là cách tiếp cận sớm nhất (1960) với những lý thuyết rất hay về mạng ngữ nghĩa, khung ngữ nghĩa và các ý niệm nguyên thủy và các quan hện như IS-A,PART-OF…Tuy nhiên, do hầu hêt các tri thức về ngữ nghĩa trong cách tiếp cận này đều được xây dựng bằng tay, vì vậy các mô hình đều dừng lại ở mức độ biểu diễn trên một vài câu Vấn đề khó khăn của cách tiếp cận này là thiếu tri thức

2 Dựa trên Cơ sở tri thức (Knowledge-Based):

Vào đầu thập niên 80, người ta đã chuyển sang hướng khai thác tri thức tự động từ các từ điển điện tử (MRD: Machine – Readable Dictionaries) như các từ điển đồng nghĩa… để có thể phần nào khắc phục hạn chế của hướng tiếp cận dựa trên trí tuệ nhân tạo (thiếu tri thức) Kết quả của hướng tiếp cận này là sự ra đợi của mạng WordNet – Một cơ sở tri thức khổng lồ về ngữ nghĩa theo hướng liệt kê nét nghĩa Tuy nhiên, các cơ sở tri thức nói trên cũng chỉ là những nguồn thông tin để hệ thống chọn nghĩa tham khảo, còn chọn thông tin nào trong số những thông tin có liên quan đó thì ta phải tự xác định trong từng trường hợp cụ thể

3 Dựa trên ngữ liệu (Corpus – Based)

Hướng tiếp cận này sẽ rút ra các quy luật xử lý ngữ nghĩa (bằng thống kê, bằng máy học,…) từ những kho dữ liệu lớn đã có sẵn và áp dụng các luật này cho trường hợp mới Thực ra, cách tiếp cận này đã được nêu ra rất sớm (1940), nhưng do nguồn dữ liệu hạn chế, thiết bị xử lý chưa hiện đại nên không có điều kiện phát triển Mãi tới thập niên 1990, khi mà công nghệ phát triển mạnh, đã có thể vượt qua được khó khăn của mình, cách tiếp cận này được hồi sinh và phát triển mạnh tới ngày nay

Hiện nay, cách tiếp cận dựa trên ngữ liệu kết hợp với tri thức có sẵn là hướng tiếp cận đang được nhiều nhà ngôn ngữ học – máy tính quan tâm

Trang 31

2.3.2 Phân tích ngữ nghĩa tiềm ẩn (LSA)

Cũng liên quan tới mảng ngữ nghĩa của từ, trong đồ án tốt nghiệp này, chúng tôi khai thác chiều khác của phân tích về mặt ngữ nghĩa Ngoài việc tương đồng từ khóa

về mặt hình thức (về bản mặt từ), chúng tôi còn đề cập tới tương đồng về nội dung của tài liệu

Có nhiều phương pháp khác nhau để đánh giá sự tương đồng về nội dung như phương pháp Định chỉ số ngữ nghĩa tiềm ẩn (LSI – Latent Semantic Index), phương pháp Phân tích ngữ nghĩa tiềm ẩn (LSA – Latent Sematic Analys)

Chỉ mục ngữ nghĩa tiềm ẩn (LSI) thêm một bước quan trọng cho việc xử lý chỉ mục tài liệu.Thêm vào việc ghi những từ khóa mà một tài liệu chứa Phương pháp này khảo sát toàn bộ tập dữ liệu, để thấy những tài liệu khác chứa một số từ tương được với các từ đó LSI được phát triển đầu tiên ở Bellcore trong cuối những năm 80 LSI xem các tài liệu có nhiều từ thông dụng là có nghĩa, và xem những tài liệu ít từ thông dụng

là ít có nghĩa Mặc dù thuật giải LSI không hiểu tí gì về nghĩa của các từ, nó nhận ra các khuân mẫu

Khi bạn tìm kiếm một CSDL chỉ mục LSI, công cụ tìm kiếm này xem xét những giá trị tương tự mà nó tính toán cho mỗi từ của nội dung, và trả về các tài liệu mà nó nghĩ là thích hợp nhất với câu truy vấn Bởi vì hai tài liệu có thể rất gần nghĩa với nhau thậm chí nếu chúng không cùng chung một từ khóa đặc biệt, LSI không yêu cầu một sự phân tích lấy tương xứng để trả về các kết quả hữu dụng Ở những vị trí mà một tìm kiếm theo từ khóa đơn giản sẽ không thực hiện được nếu không có phân tích lấy tương xứng, thì LSI sẽ thường trả về những tài liệu liên quan mà không chứa tất cả những từ khóa đó

Phương pháp đề cập nữa là phân tích ngữ nghĩa tiềm ẩn (LSA), là phần kia của đồ

án Xin vui lòng xem đồ án của Mr Cường sẽ có trình bầy chi tiết về phương pháp LSA, và áp dụng của nó trong việc phân tích nội dung của tài liệu

2.3.3 Nhận xét, kết luận

Phân tích ngữ nghĩa là một khâu rất quan trọng trong hệ thống gợi ý Bước tách từ vựng đã tách tài liệu thành các từ khóa và nó đặc trưng cho tài liệu đó Hệ thống sẽ tìm kiếm trong kết quả trả về cho người dùng lần đầu tiên bằng việc so khớp các từ khóa được nhập với các từ khóa trong phần từ khóa của các tài liệu Khâu xử lý về nội dung

sẽ xác định các tài liệu nào giống tài liệu nào Giống ở đây chỉ mức độ tương đồng về

mặt nội dung giữa các tài liệu đem gợi ý Có thể hai tài liệu không có bộ từ khóa giống nhau, nhưng nó có thể sẽ giống về nội dung

Trang 32

2.4 Thu thập thông tin người dùng

2.4.1 Ưu điểm của các hệ thống tự học

Hệ thống tự học là hệ thống dựa vào thông tin của người dùng mà người dùng cung cấp những lần giao dịch với hệ thống để phát hiện ra những sở thích lĩnh vực người dùng quan tâm để cải thiện kết quả trả về cho người dùng cho sát với những yêu cầu thực tế Hệ thống là một phần nhỏ của hệ chuyên gia-là hệ mà khai thác tri thức trong

những lần “giao tiếp” với người dùng bằng các tập luật đã được định nghĩa sẵn

Những ưu điểm của hệ thống tự học chúng tôi tổng kết được

 Tri thức của hệ thống là tri thức mở Các giao tiếp với người dùng có thể thay

đổi sau những lần giao dịch để thích hợp với sở thích của người dùng hơn

 Cho phép người dùng lựa chọn bước tiếp theo của hệ thống

 Kết quả tìm kiếm đối với một hệ thống search engine ngày càng sát hơn với nhu cầu của người tìm kiếm

 Càng thông minh hơn sau nhiều lần giao dịch với người dùng

 Hệ thu nhận và tạo một profile cho người dùng (nếu họ đăng ký thông tin với hệ thống) Và sau những lần giao dịch với hệ, hệ sẽ học được và loại bỏ những thông tin không cần thiết, tăng bộ lọc cho kết quả trả về

2.4.2 Phân tích logfile

Logfile là file ghi nhận thông tin về lịch sử làm việc của người dùng với một hệ nào

đó Việc phân tích logfile sẽ góp phần quan trọng để xác định những sở thích của người dùng để thu hẹp phạm vi các kết quả trả về, đồng thời cũng thu thập để chính xác hơn những dữ liệu mà hệ thống có với những hệ gợi ý

Có rất nhiều các kỹ thuật phân tích logfile, trong phạm vi đồ án này, tôi chỉ giới thiệu

mà không đi sâu vào phương pháp nào, để giới thiệu một ứng dụng nhỏ trong hệ thống

về việc phân tích các thông tin trong các lần giao dịch với hệ thống

2.4.3 Phân tích dựa thông tin người dùng

Việc ghi nhận các thông tin của người dùng như địa điểm, độ tuổi, giới tính, hay một số các thông tin về sở thích sẽ giúp hệ thống lọc chính xác hơn các kết quả đưa lại cho người dùng Thí dụ, một trang nhạc có thể đưa mặc định trong playlist của một người dùng có tuổi 13 những bài hát thiếu nhi

Những hệ thống đa người sử dụng, phân tích dựa trên thống tin người dùng thể hiện

ở các nhóm quản trị hệ thống, nhóm các người dùng thông thường hay những khác vãng lai Với những hệ thống đó, những thông tin về người dùng sẽ quyết định giao diện của hệ thống đối với người dùng đó

Trang 33

2.4.4 Kết luận

Một hệ thống recommender system cần phải kết hợp tối đa các phân tích để trả lại kết quả chính xác và phù hợp nhất cho yêu cầu của người dùng Những thông tin do người dùng cung cấp sẽ là những bộ lọc cho kết quả, những nguồn thông tin đầu vào cho những gợi ý nâng cao Hệ thống khai thác tri thức dựa trên thông tin được cung cấp bởi người được áp dụng rất nhiều ngay từ những năm 60 được thể hiện ở những hệ chuyên gia, hệ tư vấn

Vấn đề lưu trữ dữ liệu cũng là bài toán không nhỏ với những bộ máy tìm kiếm Ở phần dưới, tôi sẽ giới thiệu những công cụ tìm kiếm nổi tiếng trên internet hiện nay Mỗi hệ thống đều có những giải pháp lưu trữ dữ liệu riêng phụ thuộc vào giải thuật tìm kiếm của mình Với những search engine, phải có kế hoạch cập nhật thông tin định kỳ nhất định để cập nhật sự thay đổi (những hệ thống tìm kiếm online) hay khi cập nhật tài liệu mới (những hệ thống trên CSDL có sẵn) Trong đồ án này, chúng tôi cũng lựa chọn một phương thức lưu trữ dữ liệu sẽ được trình bày chi tiết trong phần sau

Trang 34

PHẦN II: CƠ SỞ LÝ THUYẾT

1 CÁC BỘ MÁY TÌM KIẾM <SEARCH ENGINE>

1.1 Một số engine thông dụng

Sau đây là danh sách một số search engine Tại sao chúng được gọi là các search engine “lớn”? Đó là vì chúng được biết đến nhiều và sử dụng tốt Với các chuyên gia web, các công cụ tìm kiếm lớn là danh sách những nơi quan trọng nhất bởi chúng phát sinh ra một lượng lớn các trang web tiềm tàng Đối với những người tìm kiếm, các công cụ tìm kiếm phổ biến thường trả lại kết quả đáng tin cậỵ

Dưới đây là danh sách các search engine

1 http://google.com

Hình 12: Giao diện tìm kiếm của Google

Nguyên thủy, Google là một đề án của trường Đại học Stanford được thực hiện bởi hai sinh viên Larry Page và Sergey Brin gọi là BackRub Đến năm 1998 thì đổi thành Google, và đồ án đó đã trở thành công ty riêng Google đặt tại khuôn viên trường đại học Google là công cụ tìm kiếm nổi tiếng, tốt nhất hiện tại cho tìm kiếm thông tin trên web Dịch vụ dựa vào crawler, spider cung cấp trang web với thông tin đưa ra toàn diện cùng mức độ liên quan tốt

Trang 35

2 http://yahoo.com

Hình 13: Giao diện tìm kiếm Yahoo

Đưa ra năm 1994, yahoo là “thư mục” cũ nhất của web, một nơi các nhà tổ chức trang web thành các thư mục Tuy nhiên, vào tháng 10 năm 2002, yahoo chuyển sang lập danh sách dựa vào crawler cho những kết quả chính của nó Công cụ này sử dụng công nghệ từ Google cho tới 2/2004 Hiện nay, Yahoo sử dụng công cụ tìm kiếm riêng của mình

Yahoo Directory vẫn tồn tai Bạn sẽ chỉ ra các liên kết “danh mục” phía dưới một

số các trang web liệt kê trong kết quả trả về của một tìm kiếm từ khóa Khi được đề xuất, những trang web này dẫn bạn đến một danh sách các trang web đã được xem xét

và phê chuẩn bởi một nhà biên tập

Công nghệ Alta Vista và AllTheWeb được phối hợp với kỹ thuật Inktomi, một công cụ tìm kiếm dựa trên crawler, để tạo nên một Yahoo crawler hiện nay

Vừa qua, thương vụ mua bán Yahoo với Microsoft không thành, khiến nhiều chuyên gia đánh giá, trong thời gian tới, cả 2 hãng này sẽ có bước đột phá trong công nghệ tìm kiếm và đánh giá các site

3 Ask Jeeves http://www.ask.com

Ask Jeeves bắt đầu nổi tiếng từ năm 1998 và 1999, được biết như một công cụ tìm kiếm “ngôn ngữ tự nhiên” cho phép ta tìm kiếm bằng cách đặt câu hỏi và trả về kết quả

với những gì có vẻ là trả lời đúng

Trang 36

Hình 14 Giao diện tìm kiếm Ask Jeeves

Thực sự, công nghệ không phải là những gì làm cho Ask Jeeves thực thi tốt Bên cạnh các bối cảnh, công vụ này tại một thời điểm có hơn 100 trình soạn thảo giám sát các log tìm kiếm Sau đó, chúng vào trong web và định vị những site mà chúng cho là tốt nhất tương xứng với các truy vấn phổ biến nhất

4 All the web http://www.alltheweb.com

Hình 15: Giao diện tìm kiếm All the web

Trang 37

2.1 Chiến lƣợc tìm kiếm

2.1.1 Công nghệ tìm kiếm ngữ nghĩa trên thế giới hiện nay

Hầu hết các hiệu quả gần đây của các công cụ tìm kiếm dựa vào ngữ nghĩa phụ thuộc vào công nghệ xử lý ngôn ngữ tự nhiên để phân tích và hiểu câu truy vấn Một trong những công cụ tìm kiếm đầu tiên và thông dụng nhất là Ask Jeesves Nó liên kết những điểm mạnh của phần mềm phân tích ngôn ngữ tự nhiên, xử lý khai khoáng dữ liệu và tạo cơ sở tri thức với những phân tích theo kinh nghiệm Người dùng có thể gõ các truy vấn bằng ngôn ngữ tự nhiên và nhận được những trả lời thỏa đáng

Một kiểu nâng cao khác của công cụ tìm kiếm Internet là Cycorp (http://www.cyc.com) Cyc liên kết cơ sở tri thức lớn nhất trên thế giới với Internet Cyc là một cơ sở tri thức bao la và đa ngữ cảnh Với Cyc Knowledge Server, nó cho phép các site Internet thêm vào tri thức ngữ nghĩa thông dụng và phân biệt những nghĩa khác nhau của khái niệm nhập nhằng

Bàn về hiệu quả của các tìm kiếm ngữ nghĩa

Nhiều công ty lớn đang thật sự hướng đến vấn đề của tìm kiếm ngữ nghĩa, sự phát triển của Microsoft về web có lẽ phụ thuộc vào khả năng của nó để hoàn thiện công cụ tìm kiếm mà dẫn đầu là Google Kết quả là Microsoft đưa ra một chương trình tìm kiếm mới gọi là MSNBot, nó lướt Web để xây dựng một chỉ mục các liên kết HTML

và các tài liệu MSNBot được dự định như là một công nghệ mà kết hợp các ứng dụng cho hệ điều hành Windows Sau đó Microsoft sẽ kết nối công cụ tìm kiếm của nó với cômg MSN trong phiên bản Wíndows kế tiếp của nó nhằm dễ dàng tìm kiếm e-mail, spreadsheets và các tài liệu trên PC

Về Công nghệ tìm kiếm

Tìm kiếm ngữ nghĩa giải quyết với các khái niệm và các mối quan hệ logic Nếu xem xét các vấn đề thực tế của tìm kiếm ngữ nghĩa, chúng ta sẽ thấy rằng, cây tìm kiếm đứng trước tình trạng thiếu logic đưa đến vấn đề chưa hoàn tất hay “ngắc ngứ” (Incompleteness and Halting Problem)

Đầu tiên, về vấn đề Incompleteness, kết luận có thể được xem như là một sự suy

diễn của một dãy logic gắn lại với nhau Ở mỗi điểm, có thể có nhiều hướng khác nhau

để tới một suy diễn mới Vì vậy, để đạt hiệu quả, có một nhóm các khả năng phân nhánh để bằng cách nào đó hướng tới một giải pháp đúng, và nhóm các phân nhánh đó

có thể trải ra trong các hướng mới lạ

Trang 38

Trong một hệ thống logic phức tạp, có một số lượng lớn các chứng cớ tiềm tàng Một số chúng dài và không rõ ràng nếu chỉ có một chứng cơ Được chúng minh vào những năm 1930, một số hệ thống logic đủ phức tạp vốn đã là không đầy đủ Nói cách khác, có các câu lệnh mà không thể được chứng minh một cách logic Luận cứ của nó

cho điều đó liên quan đến một vấn đề khác, vấn đề Halting

Vấn đề Halting suy ra rằng, các giải thuật hiện nay sẽ không bao giờ kết thúc trong một câu trả lời Khi nói về Web, chúng ta nói tới hàng triệu các sự kiện và chục ngàn luật và có thể nối kết đan lại với nhau trong những hướng phức tạp Vì thế, không gian của các chứng cứ tiềm tàng là vô tận, và cây này theo logic sẽ trở nên vô tận

Chiến lược tìm kiếm với thông tin trên Web ngữ nghĩa dựa trên nền tảng các công nghệ trên

Từ search engine thường được dùng rộng rãi để mô tả các công cụ tìm kiếm dựa trên crawler và các thư mục do con người cung cấp Đây là hai loại của các search engine tập hợp các danh sách của chúng trong những cách khác nhau hoàn toàn

Search engine dựa vào crawler gồm 3 phần:

1 Bộ thu thập thông tin:

Robot là một chương trình tự động duyệt qua các cấu trúc siêu liên kết để thu thập tài liệu và đệ quy nó để nhật về tất cả các tài liệu có liên quan với tài liệu này Về bản chất, nó chỉ là một chương trình duyệt và thu thấp thông tin từ các site theo đúng giao thức web Như trình duyệt thông thường không được gọi là robot do thiếu tính chủ động Chúng chỉ duyệt web khi có sự tác động của con người

2 Bộ lập chỉ mục - Index

Hệ thống lập chỉ mục hay gọi là hệ thống phân tích và xử lý dữ liệu thực hiện việc phân tích, trích chọn những thông tin cần thiết (thường là các từ đơn, từ ghép, cụm từ quan trọng) từ những dữ liệu mà robot thu thập được và tổ chức thành cơ sở dữ liệu riêng để có thể tìm kiếm trên đó một cách nhanh chóng, hiệu quả Hệ thống chỉ mục là danh sách các từ khóa, chỉ rõ các từ khóa nào xuất hiện ở trang nào, địa chỉ nào

3 Bộ tìm kiếm thông tin

Search engine là cụm từ để chỉ toàn bộ hệ thống bao gồm bộ thu thập thông tin, bộ lập chỉ mục và bộ tìm kiếm thông tin Các bộ này hoạt động liên tục từ lúc khởi động

hệ thống, chúng phụ thuộc lần nhau về mặt dữ liệu và độc lập về hoạt động

Trang 39

Search engine tương tác với user thông qua giao diện web, có nhiệm vụ nhận và trả

về những tài liệu thỏa yêu cầu của user

Nói các khác, tìm kiếm từ là tìm kiếm các trang mà những từ trong câu truy vấn xuất hiện nhiều nhất, trừ stopword (những từ quá thông dụng, cảm thán…) Một từ trong câu truy vấn càng xuất hiện nhiều trong một trang thì trang đó càng được chọn để trả về Một trang chứa tất cả các từ trong câu truy vấn thì tốt hơn là trang không chứa hoặc chỉ một số từ Ngày nay, hầu hết các search engine đều hỗ trợ chức năng tìm kiếm

cơ bản và nâng cao, từ đơn từ ghép, cụm từ, danh từ riêng…

Ngoài việc tìm chính xác theo từ khóa, các search engine còn cố gắng hiểu ý nghĩa thực sự của câu hỏi thông qua câu chữ do người dùng cung cấp Điều này được thể hiện qua chức năng sửa lỗi chính tả

1.2 Nguyên lý hoạt động

Search engine điều khiển robot đi thu thập thông tin trên mạng thông qua các

hyperlink Khi robot phát hiện ra một site mới, nó gửi tài liệu về cho server chính để tạo cơ sở dữ liệu chỉ mục phục vụ cho nhu cầu tìm kiếm thông tin

Vì thông tin trên mạng luôn thay đổi nên robot phải cập nhật liên tục các site cũ Mật độ cập nhật phụ thuộc vào từng hệ thống search engine Khi search engine nhận câu truy vấn, nó tiến hành phân tích, tìm trong cơ sở dữ liệu chỉ mục và trả về những tài liệu thỏa yêu cầu

Trang 40

2 XỬ LÝ VĂN BẢN TIẾNG VIỆT

2.1 Từ và cấu trúc từ của tiếng Việt

2.1.1 Định nghĩa từ

Khái niệm từ nghe rất thông dụng dễ hiểu nhưng định nghĩa chính xác thế nào thì không đơn giản Từ trước tới nay cũng có nhiều định nghĩa được đưa ra, tất cả đều đúng, nhưng chưa hoàn chỉnh Dưới đây, tôi nêu ra một số định nghĩa về từ

Thời Hy Lạp cổ đại, trường phái ngôn ngữ Alexandre định nghĩa: “Từ là đơn vị

nhỏ nhất trong chuỗi lời nói” Theo E.Sapir: “Từ là một đoạn nhỏ nhất có ý nghĩa, hoàn toàn có khả năng độc lập và bản thân có thể làm thành câu tối giản

Còn với những nhà ngôn ngữ học tiếng Việt, thì theo Lê Văn Lý: “Từ là một tín

hiệu ngữ âm có thể cấu tao bằng một âm vị hay sự kết hợp với âm vị, mà sự phát âm chỉ tiến hành trong một lần, hoặc là một âm tiết mà chữ viết biểu thị bằng một đơn vị tách rời có thể hiểu được.” Theo Nguyễn Kim Thản thì “Từ là đơn vị cơ bản của ngôn ngữ, có thể tách khỏi các đơn vị khác của lời nói để vận dụng một cách độc lập và là một khối hoàn chỉnh về mặt ý nghĩa và cấu tạo” Quan niệm của ông về “đơn vị cơ

bản” là những đơn vị có số lượng hữu hạn để thông báo, trao đổi tư tương cho nhau Đơn vị này phải có ý nghĩa, và khi sử dụng, người dùng phải có ý thức về nó Chính vì thế, từ không thể là câu, và không thể là âm tiết (vì nhiều khi âm tiết không có nghĩa

và khi sử dụng, người dùng không ý thức về nó)

2.1.2 Cấu trúc từ tiếng Việt

Từ của tiếng Việt không giống với những ngôn ngữ phương Tây khác là không thể tách để xác định từ loại Từ trong tài liệu tiếng Việt có thể là từ đơn (1 từ) , từ ghép Theo như thống kê trên trang http://Vdict.com thì độ dài của một từ tiếng Việt được thể hiệnt trong bảng:

Table 1: : Tần suất xuất hiện độ dài từ tiếng Việt trên trang Vdict.com

Ngày đăng: 10/04/2016, 17:32

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w