Đồ án : "Xây dựng ứng dụng phân tích chữ nghĩa trong tìm kiếm tài liệu trực tuyến"

Chia sẻ: haivan

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......

Bạn đang xem 20 trang mẫu tài liệu này, vui lòng download file gốc để xem toàn bộ.

Nội dung Text: Đồ án : "Xây dựng ứng dụng phân tích chữ nghĩa trong tìm kiếm tài liệu trực tuyến"

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN

──────── * ───────




ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN


ĐỀ TÀI:

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

Sinh viên thực hiện: Nguyễn Công Chính .

Lớp: HTTTA-K48 .

Giáo viên hướng dẫn: TS. Lê Thanh Hương .




Hà nội, tháng 6 năm 2008



1
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
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................................................................. 17
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
1. CÁC BỘ MÁY TÌM KIẾM ........................................................... 34
2
1.1 Một số engine thông dụng............................................................................. 34
2.1 Chiến lược tìm kiếm ....................................................................................... 37
2.1.1 Công nghệ tìm kiếm ngữ nghĩa trên thế giới hiện nay ............................ 37
2.1.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 ĐỊNH DẠNG TÀI LIỆU....................................................................... 48
1.1 Giao diện Ifilter................................................................................................ 48
1.2 Chương trình EPocalipse.IFilter...................................................................... 48
2. GIẢI PHÁP TÁCH TỪ ....................................................................................................... 49
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 ................................................................................................................. 52
4. GIẢI PHÁP PHÂN TÍCH NGƯỜI DÙNG......................................................................... 52
5. GIẢI PHÁP CÔNG NGHỆ................................................................................................. 52
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 .................................................................................................. 53
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...................................................................................................................... 77
2.1 Modul đọc các định dạng tài liệu ....................................................................... 77
2.2 Modul tách từ ................................................................................................. 77
2.3 Modul LSA........................................................................................................ 79
1. KẾT LUẬN.......................................................................................................................... 80
2. Hướng phát triển.................................................................................................................. 82




3
DANH MỤC HÌNH VÀ BẢNG
DANH MỤC HÌNH VÀ BẢNG......................................................................................4
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
4
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




5
6
LỜI CÁM ƠN
Lời đầu tiên, em muốn gửi lời cám ơn chân thành tới cô TS. Lê Thanh
Hương, là người trực tiếp hướng dẫn em hoàn thành đồ án này.

Em cũng muốn gửi lời cám ơn tới các thầy cô trong bộ môn Hệ thống
Thông Tin, trong khoa Công nghệ thông tin và các thầy cô trong trường đã tận
tình dạy dỗ trong suốt những năm học vừa qua.

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




7
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




8
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




9
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
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ệ
10
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:
3.1 Phân tách tài liệu thành các từ khóa (Filter)
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
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ừ
11
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 TF-
IDF để lọc bỏ bớt số lượng từ khóa của tài liệu.
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
Đề thi vào lớp 10 môn Toán |  Đáp án đề thi tốt nghiệp |  Đề thi Đại học |  Đề thi thử đại học môn Hóa |  Mẫu đơn xin việc |  Bài tiểu luận mẫu |  Ôn thi cao học 2014 |  Nghiên cứu khoa học |  Lập kế hoạch kinh doanh |  Bảng cân đối kế toán |  Đề thi chứng chỉ Tin học |  Tư tưởng Hồ Chí Minh |  Đề thi chứng chỉ Tiếng anh
Theo dõi chúng tôi
Đồng bộ tài khoản