Đồ án 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

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.

doc84 trang | Chia sẻ: tuandn | Lượt xem: 1901 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án 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, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trê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 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 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 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 MỤC LỤC 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 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 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ệ 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ừ 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<<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. 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. 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) CÀI ĐẶT 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. Tập văn bản nguồn Tập văn bản đã được phân tách Hình 1: Hình minh họa tập tách văn bản 5.2 Mô hình tìm tư vấn dựa trên phân tích ngữ nghĩa tiềm ẩn Cập nhật CSDL (dữ liệu tài liệu liên quan ) Tập các tài liệu liên quan tới 1 tài liệu Xử lý LSA (ma trận và giải thuật SVD) Tập tài liệu (từ khóa) 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 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. Xử lý tác thao tác người dùng Xử lý query, tạo kết quả trả Tài liệu trả về Hiển thị kết quả ra browser Các tài liệu liên quan Cập nhật tài liệu liên quan Tập tài liệu Truy vấn CSDL (tài liệu) Tài liệu có liên quan với tài liệu kết quả Tài liệu chứa từ khóa trong query Câu truy vấn Nhận và tiền xử lý query Hình 3: Quy trình truy vấn GIAO DIỆN TRANG CHỦ CHƯƠNG TRÌNH Hình 4: Giao diện chính trang chủ chương trình PHẦN I: VẤN ĐỀ VÀ THỰC TRẠNG ĐẶT BÀI TOÁN Hiện nay, khoa học kỹ thuật ngày càng phát triển. Máy vi tính được phát triển từ năm 1980 đã ngày càng được sử dụng rộng rãi với các ứng dụng tiên tiến của nó. Theo đó, các hệ thống lưu trữ tài liệu dần chuyển sang lưu trữ số trên máy tính. Các hệ thống thư viện điện tử, thư viện trực tuyến ngày càng được sử dụng rộng rãi. Theo đó, là các vấn đề liên quan đến tìm kiếm, chia theo danh mục và gợi ý nội dung đọc Ebook cho người dùng. 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 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ả: Kết quả do truy vấn SQL trong cơ sở dữ liệu của hệ thống 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: Query search Phân tích phiên làm việc 1.Truy vấn theo từ khóa 2.Truy vấn theo tài