TÓM TẮT LUẬN VĂN Đề tài “Phát triển hệ thống search engine cho các mạng xã hội” có bản chất là một động cơ tìm kiếm và được hiện thực trên các mạng xã hội khác nhau.. Phương pháp tìm kiế
GIỚI THIỆU ĐỀ TÀI 1
Vì sao ta cần một công cụ tìm kiếm (Search engine)? 1
Tìm kiếm thông tin trên internet rộng lớn cũng giống như việc tìm kiếm một cuốn sách trong một thư viện khổng lồ Nếu không có hệ thống sắp xếp và chỉ dẫn hợp lý, việc tìm kiếm sẽ trở nên khó khăn và mất thời gian Do đó, sử dụng công cụ hỗ trợ tìm kiếm như các công cụ tìm kiếm là điều cần thiết để tối ưu hóa quá trình tìm kiếm thông tin trên internet, giúp tiết kiệm thời gian và công sức.
Bởi lượng thông tin trên mạng chắc hẵn gấp hàng triệu lần các đầu sách có trong một thư viện Đã vậy lượng thông tin này ngày một dồi giàu hơn do mỗi giây, phút có hàng triệu trang web mới được khai sinh Trong bối cảnh đó một yêu cầu thực tiễn được đề ra là xây dựng ngay một động cơ tìm kiếm thật tốt, đáp ứng sâu xác việc tìm ra mọi thông tin dù nhỏ nhất trực thuộc mạng.
Bối cảnh đề tài trên thế giới và trong nước 1
Hiện nay trên thế giới có rất nhiều Search Engine chẳng hạn như google, yahoo, bing, MSN… có khả năng tìm kiếm theo nhiều ngôn ngữ khác nhau
Và trong nước cũng có các Search Engine như xa lộ, socbay, baamboo, diadiem, gần đây nhất còn có wada…
Về cơ bản các SE đều giống nhau: Các SE gồm ba giai đoạn sau: thu thập thông tin, lập chỉ mục thông tin, tìm kiếm trên chỉ mục và truy vấn, sắp xếp kết quả Điểm khác nhau ở mỗi search engine là giải pháp xử lý không như nhau dẫn đến kết quả thực thi khác nhau Bên cạnh đó còn có phương pháp tìm theo ngữ nghĩa bằng việc ứng dụng phương pháp xử lí ngôn ngữ tự nhiên Để thực hiện đề tài “Phát triển hệ thống search engine cho các mạng xã hội” tôi dùng phương pháp tìm kiếm theo từ khóa Quá trình làm luận văn tôi có dùng một số thư viện hỗ trợ cho việc rút trích văn bản từ môt web page [16][27][28]
Mục tiêu của đề tài 2
Xây dựng công cụ tìm kiếm thông tin liên quan cho từng người dùng mạng dựa trên thông tin cá nhân, hoạt động, bạn bè và blog của họ.
Giới hạn của đề tài 2
Đề tài chỉ tìm kiếm theo từ khóa, không tìm kiếm dựa trên ngữ nghĩa
Ngoài ra, công cụ tìm kiếm chưa thật sự gần gũi cho người dùng Bởi việc khai báo ban đầu nhằm đưa ra kết quả còn phức tạp Cụ thể để truy vấn được kết quả là danh sách bạn bè mỗi thành viên mạng (mạng xã hội) người dùng chương trình phải lưu trữ nội dung webpage hiện hành vào một thư mục riêng, kế đến là việc nhập từ khóa cần tìm kiếm theo giao diện ban đầu.
Đóng góp của đề tài 2
Kết quả đề tài là ứng dụng việc rút trích thông tin từ văn bản thô HTML của mỗi webpage thu thập được Dựa theo phương pháp tìm kiêm bằng từ khóa, thông tin sau khi rút trích được đánh chỉ mục theo một cấu trúc dữ liệu nhất định
Cùng với các thủ tục đã xây dựng nhằm truy vấn trên chỉ mục nói trên, học viên đã hoàn thành cơ bản công cụ tìm kiếm thông tin liên quan cho một cá thể mạng (mạng xã hội).
Cấu trúc của Luận văn 3
Luận văn bao gốm các phần sau:
- Phần I: Giới thiệu đề tài
Phần này trong luận văn nêu lên lý do, bối cảnh, mục tiêu, đóng góp và giới hạn đề tài “ Phát triển hệ thống Search Engine cho các mạng xã hội”
- Phần II: Cơ sở lý thuyết
Cơ sở lý thuyết cho đề tài gồm: Kiến thức cơ bản về mạng xã hội và phương pháp tìm kiếm Trong phương pháp tìm kiếm, luận văn thể hiện hai khuynh hướng tìm kiếm chủ đạo: Tìm kiếm theo từ khóa và tìm theo ngữ nghĩa
- Phần III: Thực hiện đề tài Đề tài đã thực hiện với phương pháp tìm kiếm theo từ khóa Quá trình thực hiện luận văn được minh họa trên ba mạng xã hội phổ biến Facebook, Twitter và Zing me Ngoài việc đề cập quá trình xây dựng đề tài, trình bày kết quả, cuối phần này là thông tin kiểm tra thực nghiệm, đánh giá, bàn luận thêm kết quả, cũng như hướng nghiên cứu tiếp theo cho đề tài
- Phần IV: Kết luận Đây là lời tổng kết đề tài, ghi nhận lại kết quả đạt được, hạn chế và hướng phát triển thêm trong tương lai.
CƠ SỞ LÝ THUYẾT 4
Mạng xã hội 4
1.1 Mạng xã hội là gì?
Xã hội môi trường để con người giao tiếp, tương tác lẫn nhau trực tiếp hoặc gián tiếp thông qua người này hoặc người kia Một cách giao tiếp khác nữa là thông qua mạng xã hội ảo (Social network) Đó là kết quả của sự phát triển vượt bậc trong lĩnh vực công nghệ thông tin nói chung và mạng truyền thông nói riêng Chỉ cần một chiếc máy vi tính có kết nối mạng và một lần đăng kí là thành viên trang mạng xã hội nào đó là mọi người đã được thỏa sức hòa nhập với những người bạn cùng sở thích ngay tại trang mạng ấy
Có nhiều cách thức để các thành viên mạng kết bạn hay làm ăn với nhau: dưa theo thông tin cá nhân, cá tính hay một sở thích, lĩnh vực quan tâm… Các tính năng cơ bản một mạng xã hội như là chat, e-mail, phim ảnh, voice chat, chia sẻ file, blog…Sự hỗ trợ mạnh mẽ này đã làm ảnh hưởng không nhỏ tới cách sinh hoạt hàng ngày của người dùng
Một số mạng xã hội nổi tiếng hiện nay như ở Châu Á Thái Bình Dương có Friendster, riêng Nhật có Mixi, Hàn Quốc có CyWorld và Việt Nam như Zing Me, YuMe… ỞTây Âu , Bắc Mỹ có Facebook, MySpace; Nam Mỹ có Hi5 và Orkut
1.2 Lịch sử mạng xã hội
Trang Classmate ra đời năm 1995, lần đầu tiên đánh dấu sự kết nối thành công giữa nhóm bạn học có cùng mục tiêu với nhau Đến năm 1997 nhu cầu kết bạn dựa trên sở thích được quan tâm, SixDegrees đã được thành lập
Bắt kịp xu hướng, tại Mỹ, vào năm 2002, Friendster đã mở ra một sân chơi mới cho hàng triệu người Friendster được hưởng ứng nồng nhiệt đến mức máy chủ thường xuyên quá tải, cho thấy sức hút đáng kể của nền tảng mạng xã hội tiên phong này.
Không lâu sau đó, vào năm 2004 đã đánh dấu mạng xã hội phát triển thêm một bước tiến mới Chức năng xem , chia sẻ phim ảnh được tích hợp là một minh chứng cụ thể Không ai khác đó là MySpace mạng thu hút hàng nghìn người mỗi ngày, trong đó có cả những thành viên của các mạng xã hội cũ
Hơn thế nữa, ngoài những tiêu chí thỏa mãn tính giao lưu, kết nối và chia sẻ các tiện ích đánh dấu một bước phát triển hoàn thiện cần có của một trang mạng xã hội, năm 2006 Facebook ra đời còn được xây dựng trên nền tảng Platform Vì vậy nó cho phép người dùng tự tạo ứng dụng riêng cho mình và cho cả thành viên khác Đây như là thành tựu vượt bậc xứng đáng vị thế đỉnh điểm trong lịch sử hình thành và phát triển mạng xã hội
1.3 Cấu thành mạng xã hội
Cấu trúc đơn thuần của một mạng lưới nói chung cũng chỉ có hai thành phần cơ bản điểm nút (node) và mối liên kết (tie) Mạng xã hội cũng được cấu trúc như vậy Nút mạng xã hôi đại diên cho thực thể thuộc mạng Thực thể là một tổ chức, doanh nghiệp hay chỉ là cá nhân trực thuộc mạng Mối liên kết biểu diễn mối quan hệ giữa các nút mạng
Về mặt trực quan mạng xã hội có thể biểu diễn thông qua đồ thi đơn
Trong đó đỉnh đồ thị là nút mạng, cạnh đồ thị là đoạn thẳng giữa hai điểm nút thể hiện mối liên kết mạng, ấy cũng chính là mối quan hệ hiện hữu giữa mỗi thành viên trong xã hội được số hóa
1.4 Mục tiêu mạng xã hội
Mạng xã hôi đem lại nhiều lợi ích cũng như nhiều mục tiêu khác nhau
Mạng xã hội đóng vai trò là cầu nối giúp người dùng giao lưu, chia sẻ thông tin hữu ích bất chấp mọi rào cản về không gian và thời gian Không chỉ vậy, mạng xã hội còn mang lại lợi ích kinh tế thiết thực cho các tổ chức, doanh nghiệp và cá nhân thông qua việc quảng bá và phát huy nội lực của từng cá thể Hơn hết, mạng xã hội có ý nghĩa cộng đồng to lớn, bởi lẽ sự phát triển của mỗi cá nhân góp phần vào sự lớn mạnh của cả tập thể.
2.1 Tìm theo từ khóa 2.1.1 Lập chỉ mục (Index)
2.1.1.1 Khái quát hệ thống lập chỉ mục
Sau khi thu thập danh sách các trang web cần lập chỉ mục, hệ thống sẽ phân tích, chọn lọc các từ khóa, cụm từ phục vụ cho mục đích tìm kiếm của người dùng Những dữ liệu đã được trích xuất sẽ được lưu trữ trong cơ sở dữ liệu để đáp ứng nhu cầu truy cập thông tin của người dùng Đây là lược đồ xử lý của hệ thống lập chỉ mục.
Hinh 2 Lƣợc đồ xử lý tổng quát của hệ thống lập chỉ mục
Nội dung của mỗi trang web là tập hợp các từ, cụm từ then chốt Hệ thống lập chỉ mục sẽ chọn lọc, rút trích các từ, cụm từ trên sao cho thông tin trên web vẫn được đầy đủ, không thiếu hoặc dư thừa Việc rút trích không đầy đủ sẽ không thỏa mãn hết nhu cầu tìm kiếm về sau Dư thừa trong việc lập chỉ mục rõ ràng vô ích vì hiệu năng chương trình không được đảm bảo (tốn kém chi phí lưu trữ và chi phí tìm kiếm cao)
Các bước lập chỉ mục cho một tài liệu tiếng Anh: a Tokenization: Văn bản được tách thành các chuỗi dựa vào khoảng trắng Kết quả thu được là tập các chuỗi riêng biệt Mỗi chuỗi được xem là một từ b Removal of stop words: Trong văn bản những từ có tần số xuất hiện cao nhưng không cần thiết lập chỉ mục sẽ được loại bỏ Đa phần chúng là những đại từ, tính từ… c Stemming: Các hậu tố trong tiếng Anh sẽ được loại bỏ, chỉ giữ lại các từ gốc
Thực hiện xong các bước trên, từ thu được dùng vào việc lập chỉ mục Đối với tài liệu tiếng Việt chỉ được áp dụng hai bước (a) và (b), bước (c) thì không Bởi tiếng Việt là ngôn ngữ đơn thể
2.1.1.2 Phương pháp lập chỉ mục
Phương pháp lập chỉ mục thông qua hai bước cơ bản sau:
Bước thứ nhất: xác định các từ , cụm từ trọng yếu mang đầy đủ thông tin văn bản Các từ, cụm từ này sẽ được lập chỉ mục Tiến hành lập chỉ mục tuân thủ ba nguyên tắc tách từ, loại bỏ từ, loại bỏ hậu tố đối với tiếng Anh
Riêng tiếng Việt không thông qua việc loại bỏ hậu tố khi lập chỉ mục cho văn bản
Bước thứ hai: Tìm trọng số của mục từ Trọng số thể hiện mức độ quan trọng của từng mục từ trong tài liệu cần lập chỉ mục
2.1.1.2.1 Xác định mục từ quan trọng cho việc lập chỉ mục
e Biểu diễn văn bản với đồ thị có hướng theo cạnh không gán nhãn và cạnh là khoảng cách k giữa hai từ 17
gán nhãn và cạnh là khoảng cách k giữa hai từ Trong văn bản có mối quan hệ mật thiết nhau giữa các từ trong cùng câu hoặc vùng lân cận chính từ ấy Mô hình đồ thị có hướng, cạnh không gán nhãn, cạnh là khoảng cách k giữa hai từ trong văn bản thể hiện được đặc điểm trên cho các từ trong một tài liệu Đây cũng là đồ thị có hướng với mỗi đỉnh là các từ nhưng cạnh không gán nhãn Mặc dù vậy đồ thị có một ưu điểm khá hay là biểu diễn được mối quan hệ với k từ phía trước nó phục vụ tốt việc phân lớp hay gom cụm văn bản
Ví dụ: “Người chiến sĩ anh hùng, bất khuất” Với k = 2, mô hình biễu diễn câu trên:
Hình 7 Mô hình đồ thị khoảng cách k đơn giản
Tìm theo ngữ nghĩa 18
Khuynh hướng tìm kiếm thứ hai đó là dựa vào ngữ nghĩa Ngữ nghĩa không chỉ thể hiện tại mỗi từ mà còn cả câu hay toàn bộ văn bản Để hiểu và khai thác được trọn vẹn ngữ nghĩa văn bản ta phải am hiểu tường tận ngôn ngữ mà văn bản thể hiện Muốn vậy ta cần biết rõ đặc điểm về ngữ âm, từ vựng và cả văn phạm các ngôn ngữ mà tài liệu thể hiện Trong tin học, web ngữ nghĩa và ontology thể hiện được khái niệm trên nên được ứng dụng rộng rãi phục vụ nhu cầu tìm kiếm thông tin ngày nay
Người dùng Internet nói chung không thể phủ nhận vai trò thiết thực của web đã đem lại cho họ Mọi người được thỏa mãn thông tin từ những trang web thời sự, được đắm chìm trong thế giới giải trí thông qua các đa phương tiện đã được tích hợp sẵn trên web Bên cạnh đó nhu cầu trao đổi thông tin liên lạc của mọi người cũng được đáp ứng đầy đủ thông qua email hay diễn đàn các loại…Thế nhưng trong mắt người làm khoa học máy tính tất cả điều đó vẫn chưa đủ, cái họ cần là một web có ngữ nghĩa Web mà trên nó các khái niệm được phân biệt rõ ràng cho từng sự vật, sự việc cụ thể lẫn trừu tượng
Mạng ngữ nghĩa tập trung vào mối liên hệ ngữ nghĩa giữa các đối tượng thông tin Mỗi đối tượng được biểu diễn bằng một biểu đồ tri thức, nơi các khái niệm, thực thể và mối quan hệ được kết nối với nhau Việc tổ chức thông tin theo cách này giúp cho web trở nên linh hoạt và dễ hiểu, cho phép truy vấn và truy xuất thông tin dễ dàng hơn đáng kể so với web truyền thống.
Mỗi lĩnh vực là một đặc thù tri thức khác nhau, có tập hợp các khái niệm thật phong phú, đa dạng Ontology chính là sự mô tả lại các ý niệm đó và thể hiện được sự gắn kết giữa các khái niệm theo một mối quan hệ nào đó Chính vì vậy ontology chứa đựng tập các từ vựng cụ thể, đậm chất nghề nghiệp tương ứng từng lĩnh vực và được lưu trữ hữu hiệu trên máy tính nhằm đáp ứng mọi nhu cầu kết nối, chia sẽ tri thức giữa các ngành nghề
2.2.3 Cơ sở cho tìm kiếm ngữ nghĩa tiếng Việt
Trong tiếng Việt âm tiết hay còn được gọi là tiếng là đơn vị cơ bản cho việc hình thành một từ vựng Trong mỗi âm tiết có hoặc không chứa dấu Điều này tạo nên sự phong phú và đa dạng cho ngữ điệu Đồng thời đấy cũng là cơ sở hình thành mới các từ láy, từ tượng thanh, tượng hình…đem lại sự dồi giàu và đa dạng cho ngôn ngữ Việt
Từ vựng tiếng Việt đa dạng với nhiều loại từ, từ một âm tiết đến nhiều âm tiết, phản ánh nhu cầu thể hiện phong phú trong ngôn ngữ Tính từ thường sử dụng từ láy, từ ghép để biểu đạt mức độ hoặc đặc điểm, trong khi động từ có khả năng tăng cường hoặc làm giảm hành động Ngôn ngữ Việt không ngừng tiếp thu từ vựng từ các ngôn ngữ khác như Hán, Pháp, Anh, phản ánh quá trình giao thoa văn hóa và hội nhập quốc tế diễn ra trong lịch sử.
2.2.3.c Đặc điểm ngữ pháp Ngữ pháp bao gồm đặc điểm ngữ âm,âm học, hình thái ngôn ngữ, cú pháp và ngữ nghĩa Tuy nhiên quan trọng nhất là hình thái ngôn ngữ và cú pháp câu Tiếng Việt trật tự câu tuân thủ một nguyên tắc chủ vị Chủ ngữ là chủ thể một hành động, vị ngữ bao gồm các động từ và thành phần bổ ngữ làm rõ nghĩa câu Tuy nhiên trật tự này có thể hoán chuyển các bộ phận câu cho nhau nhằm nhấn mạnh cho chính bộ phận ấy
Câu trong tiếng Việt bao gồm câu đơn và câu phức Mỗi loại câu bao hàm ngữ nghĩa bị động hay chủ động đáp ứng sự linh hoạt cho hành văn
Riêng câu phức và câu ghép có sự kết hợp, đan xen các bộ phận câu cũng góp phần không nhỏ đem đến sự phong phú và đa dạng cho văn ngữ Từ, cụm từ liên kết câu được sử dụng nhiều trong câu ghép làm cho câu văn được liền mạch, thể hiện hết được tâm ý người dùng
Một số hư từ trong tiếng Việt còn biểu diễn được thì thể cho câu như
“đã” là qúa khứ, “ sẽ” là tương lai… Chỉ cần dùng một từ hay cụm từ là có thể diễn đạt được nội hàm cho câu như từ “ đang” thể hiện một hành động được tiếp diễn giúp người đọc nắm bắt ngay diễn tiến công việc.
THỰC HIỆN ĐỀ TÀI 21
Phương pháp và hệ thống thực hiện 21
1.1 Phương pháp tổng quát (phương pháp tìm theo chỉ mục)
Dựa trên cơ sở lí thuyết ở phần II, đề tài được hiện thực theo phương pháp tìm kiếm theo từ khóa Các bước hiện thực như sau:
Bước 1 Lấy mã HTML của một webpage
Bước 2 Loại bỏ các thẻ HTML(Chỉ lọc lấy văn bản(text) và đường Link trên web đó)
Bước 3 Chèn Text và Link vào chỉ mục tìm kiếm (indexer) Bước 4 Truy vấn tìm Link, hoặc tìm Text
Bước 5 Hiển thị kết quả (tại thẻ )
Hình 8 Tìm kiếm theo chỉ mục Thu thập dữ liệu (Bước 1 và bước 2)
Tạo chỉ mục tìm kiếm (Bước 3)
Ngoài phương pháp đề cập ở mục trên, học viên còn áp dụng việc truy vấn trực tiếp trên cơ sở dữ liệu (database) với các câu lệnh SQL đã thiết kế sẵn Phương pháp này dùng riêng biệt cho mạng xã hội Facebook và Twitter trong đề tài luận văn này
Hình 10 Hệ thống chương trình cơ sở dữ liệu mạng xã hội
Câu lệnh truy vấn SQL
Hình 9 Truy vấn trên cơ sở dữ liệu mạng xã hội
Hệ thống chương trình tìm kiếm trên ba mạng xã hội Zing me, Twitter, Facebook Trên mỗi mạng ta có thể truy vấn thông tin liên quan đến mỗi cá thể mạng (mạng xã hội).
Lƣợc đồ xử lý tổng quát của hệ thống lập chỉ mục
Nội dung của mỗi trang web là tập hợp các từ, cụm từ then chốt Hệ thống lập chỉ mục sẽ chọn lọc, rút trích các từ, cụm từ trên sao cho thông tin trên web vẫn được đầy đủ, không thiếu hoặc dư thừa Việc rút trích không đầy đủ sẽ không thỏa mãn hết nhu cầu tìm kiếm về sau Dư thừa trong việc lập chỉ mục rõ ràng vô ích vì hiệu năng chương trình không được đảm bảo (tốn kém chi phí lưu trữ và chi phí tìm kiếm cao)
Các bước lập chỉ mục cho một tài liệu tiếng Anh: a Tokenization: Văn bản được tách thành các chuỗi dựa vào khoảng trắng Kết quả thu được là tập các chuỗi riêng biệt Mỗi chuỗi được xem là một từ b Removal of stop words: Trong văn bản những từ có tần số xuất hiện cao nhưng không cần thiết lập chỉ mục sẽ được loại bỏ Đa phần chúng là những đại từ, tính từ… c Stemming: Các hậu tố trong tiếng Anh sẽ được loại bỏ, chỉ giữ lại các từ gốc
Sau khi hoàn thành các bước trên, dữ liệu thu được dùng cho mục đích lập chỉ mục Đối với tài liệu tiếng Việt, chỉ áp dụng hai bước (a) và (b), bước (c) không áp dụng vì tiếng Việt là ngôn ngữ đơn tiết.
2.1.1.2 Phương pháp lập chỉ mục
Phương pháp lập chỉ mục thông qua hai bước cơ bản sau:
Bước thứ nhất: xác định các từ , cụm từ trọng yếu mang đầy đủ thông tin văn bản Các từ, cụm từ này sẽ được lập chỉ mục Tiến hành lập chỉ mục tuân thủ ba nguyên tắc tách từ, loại bỏ từ, loại bỏ hậu tố đối với tiếng Anh
Riêng tiếng Việt không thông qua việc loại bỏ hậu tố khi lập chỉ mục cho văn bản
Bước thứ hai: Tìm trọng số của mục từ Trọng số thể hiện mức độ quan trọng của từng mục từ trong tài liệu cần lập chỉ mục
2.1.1.2.1 Xác định mục từ quan trọng cho việc lập chỉ mục
Đầu tiên, cần hiểu mục từ là đơn vị cơ bản của hệ thống chỉ mục, cung cấp cơ sở cho việc tìm kiếm sau này Mục từ được lựa chọn và trích xuất từ văn bản thô, có thể là từ đơn, từ ghép hoặc cụm từ chứa đủ thông tin để đại diện cho tài liệu cần lập chỉ mục.
Tiêu đề, nội dung tóm tắt hay nội dung chính văn bản là cơ sở chuẩn xác cho việc thiết lập mục từ
Quá trình lập chỉ mục cần xác định được tần số xuất hiện các từ trong văn bản Xác định được tần số này giúp ta phân biệt được tầm quan trọng của từ Điều này thật cần thiết đối với động cơ tìm kiếm Các đơn vị từ có thể mang cùng tần số xuất hiện gây khó phân biệt cho mục từ Tuy nhiên đó là trường hợp ít khi xảy ra trong văn bản ngôn ngữ tự nhiên
Theo luật của Zipf, từ vựng có đặc trưng xuất hiện là hằng số Nó phụ thuộc vào hai thông số tần số xuất hiện và thứ hạng của từ
Với Fik (Frequency) là tần số xuất hiện của mục từ k trong tài liệu i, TF k (Total Frequency) là tổng số tập tấn số xuất hiện của mỗi từ, n là số lượng tài liêu ta có công thức sau:
Hằng số =Tần số xuất hiên * Thứ hạng
Trong quá trình lập chỉ mục, các từ phổ biến nhưng không cần thiết như mạo từ, giới từ sẽ bị loại bỏ Ngược lại, những từ ít phổ biến cũng bị loại trừ, nhưng sự có mặt của chúng không ảnh hưởng nhiều đến quá trình tìm kiếm Do đó, các mục từ trong hệ thống chỉ mục thường có tần suất xuất hiện ở mức trung bình.
2.1.1.2.2 Các hàm tính trọng số mục từ
Trọng số của mục từ: là tần suất xuất hiện của mục từ trong tài liệu
Thống kê là phương pháp xác định trọng số của từ xuất hiên tại văn bản
Cho tập chỉ mục T={ t1, t2, , tn}, với ti là các mục từ
Tập chỉ mục T(D) = {w1, w2, , wn} thể hiện nội dung của tài liệu D được lập dựa trên tập ngữ liệu T Trọng số wi trong tập chỉ mục biểu thị độ quan trọng của từ ti trong tài liệu D Nếu từ ti không xuất hiện hoặc ít quan trọng trong D thì wi = 0 Nội dung của tài liệu D được lưu trữ dưới dạng vector chỉ mục T(D) trong cơ sở dữ liệu, nhằm đáp ứng các truy vấn tìm kiếm.
2.1.1.2.2.1 Nghịch đảo trọng số tần số tài liệu
Công thức trọng lượng của mục từ k :
Trong đó w k là trọng lượng của mục từ k, idfk là giá trị nghịch đảo của tần số tài liệu, nDoc là tổng số tài liệu, nDock là tổng số tài liệu có mục từ k xuất hiện, n ki là số lần xuất hiện của mục từ k tại tài liệu i, n k là số lần xuất hiện mục từ k trong toàn bộ tập tài liệu
Ta có nhận xét: mục từ k có trọng số tăng lên khi nó có tần số xuất hiện trong những tài liệu i tăng lên, nhưng bị giảm xuống nếu tấn số xuất hiện của k tại tập tài liệu được tăng lên
2.1.1.2.2.2 Độ nhiễu tín hiệu (Signal Noise)
Một mục từ k có độ nhiễu: Đại lượng n ki là số lần xuất hiện của mục từ k tại tài liệu i, n k là số lần xuất hiện mục từ k trong toàn bộ tập tài liệu
Signal là nghịch đảo độ nhiễu Công thức sau dùng tính trọng lượng mục từ k:
Lưu ý: Mức độ tập trung hay phân tán của từ sẽ ảnh hưởng đến trọng số của chính nó Với những từ có số lần xuất hiện như nhau, nhưng khác nhau về lượng tài liệu chứa chúng trong mỗi trường hợp ( tức khác nhau về mức độ phân bố) sẽ có trọng số khác nhau
2.1.1.2.2.3 Giá trị độ phân biệt mục từ
Giữa các tài liệu có sự trùng lặp nhau là khá lớn Để phân biệt chúng ta cần xây dựng độ phân biệt mục từ Hay nói cách khác độ phân biệt mục từ đánh giá được mức độ tương đương giữa các tài liệu Trong hệ thống chỉ mục, wk =signalk = log2( nk ) - noisek noisek = (nki / nk ).log2 (nki / nk ) i=1,nDoc mục từ được chọn là mục từ có độ phân biệt cao Kết quả tìm kiếm là tương tự nhau dù áp dụng tần số nghịch đảo hay tỉ lệ tín hiệu nhiễu hoặc độ phân biệt mục từ
Mô hình đồ thị vô hướng sử dụng tần số xuất hiện
2.1.2.d Biểu diễn văn bản với đồ thị có hướng mà cạnh không gán nhãn Ưu điểm đồ thị này có thể lưu trữ được thứ tự xuất hiện của các từ trên toàn văn bản, đáp ứng tốt cho các bài toán phân lớp hay gom cụm văn bản Đây là đồ thị có hướng Hướng trên mỗi cạnh phụ thuộc vào thứ tự trước sau của cặp từ (cụm từ) liền kề nhau Mỗi từ trong văn bản chỉ được xuất hiên một lần tại đồ thị, từ (cụm từ) chính là đỉnh của đồ thị
Ví dụ : ” Doanh nghiệp A lên kế hoạch khai thác nông sản là cao su và tiến hành quảng bá nó” được mô hình hóa như sau:
Hình 6 Mô hình đồ thị đơn giản
2.1.2.e Biểu diễn văn bản với đồ thị có hướng theo cạnh không gán nhãn và cạnh là khoảng cách k giữa hai từ Trong văn bản có mối quan hệ mật thiết nhau giữa các từ trong cùng câu hoặc vùng lân cận chính từ ấy Mô hình đồ thị có hướng, cạnh không gán nhãn, cạnh là khoảng cách k giữa hai từ trong văn bản thể hiện được đặc điểm trên cho các từ trong một tài liệu Đây cũng là đồ thị có hướng với mỗi đỉnh là các từ nhưng cạnh không gán nhãn Mặc dù vậy đồ thị có một ưu điểm khá hay là biểu diễn được mối quan hệ với k từ phía trước nó phục vụ tốt việc phân lớp hay gom cụm văn bản
Ví dụ: “Người chiến sĩ anh hùng, bất khuất” Với k = 2, mô hình biễu diễn câu trên:
Hình 7 Mô hình đồ thị khoảng cách k đơn giản
Khuynh hướng tìm kiếm thứ hai đó là dựa vào ngữ nghĩa Ngữ nghĩa không chỉ thể hiện tại mỗi từ mà còn cả câu hay toàn bộ văn bản Để hiểu và khai thác được trọn vẹn ngữ nghĩa văn bản ta phải am hiểu tường tận ngôn ngữ mà văn bản thể hiện Muốn vậy ta cần biết rõ đặc điểm về ngữ âm, từ vựng và cả văn phạm các ngôn ngữ mà tài liệu thể hiện Trong tin học, web ngữ nghĩa và ontology thể hiện được khái niệm trên nên được ứng dụng rộng rãi phục vụ nhu cầu tìm kiếm thông tin ngày nay
Người dùng Internet nói chung không thể phủ nhận vai trò thiết thực của web đã đem lại cho họ Mọi người được thỏa mãn thông tin từ những trang web thời sự, được đắm chìm trong thế giới giải trí thông qua các đa phương tiện đã được tích hợp sẵn trên web Bên cạnh đó nhu cầu trao đổi thông tin liên lạc của mọi người cũng được đáp ứng đầy đủ thông qua email hay diễn đàn các loại…Thế nhưng trong mắt người làm khoa học máy tính tất cả điều đó vẫn chưa đủ, cái họ cần là một web có ngữ nghĩa Web mà trên nó các khái niệm được phân biệt rõ ràng cho từng sự vật, sự việc cụ thể lẫn trừu tượng
(đối tượng) Trong đó các đối tượng có mối liên hệ lẫn nhau hoàn toàn dựa trên ngữ nghĩa Điều này làm cho web trở nên linh động và tường minh góp phần không nhỏ cho vào việc tìm kiếm, hỏi đáp thông tin trên mạng Đây cũng là ưu điểm và là sự khác biệt lớn so với web thông thường mà chỉ web ngữ nghĩa có được
Mỗi lĩnh vực là một đặc thù tri thức khác nhau, có tập hợp các khái niệm thật phong phú, đa dạng Ontology chính là sự mô tả lại các ý niệm đó và thể hiện được sự gắn kết giữa các khái niệm theo một mối quan hệ nào đó Chính vì vậy ontology chứa đựng tập các từ vựng cụ thể, đậm chất nghề nghiệp tương ứng từng lĩnh vực và được lưu trữ hữu hiệu trên máy tính nhằm đáp ứng mọi nhu cầu kết nối, chia sẽ tri thức giữa các ngành nghề
2.2.3 Cơ sở cho tìm kiếm ngữ nghĩa tiếng Việt
Âm tiết, hay còn gọi là tiếng, là đơn vị cơ bản cấu thành từ vựng tiếng Việt Các âm tiết có thể có hoặc không có dấu, tạo nên sự phong phú về ngữ điệu Đây cũng là tiền đề để hình thành các loại từ như từ láy, từ tượng thanh, tượng hình, góp phần làm phong phú và đa dạng ngôn ngữ Việt.
Từ vựng bao gồm tổ hợp từ hoặc cụm từ có nghĩa Sự phát triển xã hội thúc đẩy sự phát triển của ngôn ngữ, dẫn đến sự ra đời của nhiều từ vựng phong phú để đáp ứng nhu cầu diễn đạt các sự vật, hiện tượng Tiếng Việt sử dụng nhiều từ láy, từ ghép để thể hiện cấp độ, đặc điểm của đối tượng Động từ giúp tăng hoặc giảm đáng kể mức độ của hành động Xu hướng vay mượn từ trong ngôn ngữ diễn ra phổ biến, tiếng Việt cũng chịu ảnh hưởng từ chữ Hán, tiếng Pháp, Anh do quá trình đô hộ và hội nhập kinh tế.
2.2.3.c Đặc điểm ngữ pháp Ngữ pháp bao gồm đặc điểm ngữ âm,âm học, hình thái ngôn ngữ, cú pháp và ngữ nghĩa Tuy nhiên quan trọng nhất là hình thái ngôn ngữ và cú pháp câu Tiếng Việt trật tự câu tuân thủ một nguyên tắc chủ vị Chủ ngữ là chủ thể một hành động, vị ngữ bao gồm các động từ và thành phần bổ ngữ làm rõ nghĩa câu Tuy nhiên trật tự này có thể hoán chuyển các bộ phận câu cho nhau nhằm nhấn mạnh cho chính bộ phận ấy
Câu trong tiếng Việt bao gồm câu đơn và câu phức Mỗi loại câu bao hàm ngữ nghĩa bị động hay chủ động đáp ứng sự linh hoạt cho hành văn
Riêng câu phức và câu ghép có sự kết hợp, đan xen các bộ phận câu cũng góp phần không nhỏ đem đến sự phong phú và đa dạng cho văn ngữ Từ, cụm từ liên kết câu được sử dụng nhiều trong câu ghép làm cho câu văn được liền mạch, thể hiện hết được tâm ý người dùng
Một số hư từ trong tiếng Việt còn biểu diễn được thì thể cho câu như
“đã” là qúa khứ, “ sẽ” là tương lai… Chỉ cần dùng một từ hay cụm từ là có thể diễn đạt được nội hàm cho câu như từ “ đang” thể hiện một hành động được tiếp diễn giúp người đọc nắm bắt ngay diễn tiến công việc
Chương 3: THỰC HIỆN ĐỀ TÀI
1 Phương pháp và hệ thống thực hiện
1.1 Phương pháp tổng quát (phương pháp tìm theo chỉ mục)
Dựa trên cơ sở lí thuyết ở phần II, đề tài được hiện thực theo phương pháp tìm kiếm theo từ khóa Các bước hiện thực như sau:
Bước 1 Lấy mã HTML của một webpage
Bước 2 Loại bỏ các thẻ HTML(Chỉ lọc lấy văn bản(text) và đường Link trên web đó)
Bước 3 Chèn Text và Link vào chỉ mục tìm kiếm (indexer) Bước 4 Truy vấn tìm Link, hoặc tìm Text
Bước 5 Hiển thị kết quả (tại thẻ )
Hình 8 Tìm kiếm theo chỉ mục Thu thập dữ liệu (Bước 1 và bước 2)
Tạo chỉ mục tìm kiếm (Bước 3)
Ngoài phương pháp đề cập ở mục trên, học viên còn áp dụng việc truy vấn trực tiếp trên cơ sở dữ liệu (database) với các câu lệnh SQL đã thiết kế sẵn Phương pháp này dùng riêng biệt cho mạng xã hội Facebook và Twitter trong đề tài luận văn này
Hình 10 Hệ thống chương trình cơ sở dữ liệu mạng xã hội
Câu lệnh truy vấn SQL
Hình 9 Truy vấn trên cơ sở dữ liệu mạng xã hội
Hệ thống chương trình tìm kiếm trên ba mạng xã hội Zing me, Twitter, Facebook Trên mỗi mạng ta có thể truy vấn thông tin liên quan đến mỗi cá thể mạng (mạng xã hội)
2 Quá trình hiện thực và kết quả đạt đƣợc
2.1 Tìm kiếm trên mạng xã hội Zing me, Facebook, Twitter theo phương pháp tổng quát
Quá trình hiện thực tìm kiếm trên Zing me, Facebook, Twitter theo phương pháp chỉ mục được mô hình hóa như lược đồ sau:
Luận văn hiện thực có sử dụng thư viện Majestic12, Lucene.Net nhằm hỗ trợ việc rút trích văn bản và xây dựng hệ thống chỉ mục như đã nói trong chuỗi hiện thực trên