1. Trang chủ
  2. » Luận Văn - Báo Cáo

Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ

72 565 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 72
Dung lượng 1,83 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ở Việt Nam cũng có một số công ty xây dựng các công cụ kiếm chẳng hạn như xalo do Công ty Tinh Vân phát triển, Baamboo thuộc Công ty cổ phần truyền thông Việt Nam, … Tất cả các công cụ ở

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Đào Tùng Thịnh

CHUẨN HOÁ VÀ XÁC ĐỊNH MỐI QUAN HỆ

GIỮA CÁC CỤM TỪ, TÌM VÀ LẤY THÔNG TIN

Trang 2

LỜI CAM ĐOAN

Trong quá trình thực hiện luận văn tác giả đã nghiên cứu xây dựng đề tài luận văn của mình trên cơ sở tham khảo các nguồn tài liệu đã được giới thiệu ở phần TÀI LIỆU THAM KHẢO và không sao chép từ bất kỳ một nguồn nào khác

Tác giả luận văn xin cam đoan đây là công trình nghiên cứu của riêng mình Các dữ liệu, kết quả trình bày trong luận văn là trung thực và chưa từng được công bố trong bất kỳ công trình nào trước đây

Tác giả luận văn

Đào Tùng Thịnh

Trang 3

LỜI CẢM ƠN

Trong suốt quá trình thực hiện đề tài luận văn này tôi đã nhận được sự động viên, chỉ bảo tận tình của thầy giáo hướng dẫn TS Lê Huy Thập Tôi xin chân thành được bày tỏ lòng biết ơn sâu sắc tới thầy

Tôi xin chân thành cảm ơn tới tất cả các thầy cô giáo đã tận tình giảng dạy trong suốt quá trình học tập, giúp tôi có thêm những kiến thức quý báu làm nền tảng phục vụ cho quá trình xây dựng đề tài của mình

Cảm ơn tất cả các bạn học đã nhiệt tình chia sẻ kinh nghiệm và những góp

ý chân thành giúp tôi hoàn thành tốt luận văn này

Mặc dù đã cố gắng nỗ lực để hoàn thành luận văn của mình, nhưng trong quá trình nghiên cứu làm đề tài chắc chắn không thể tránh khỏi những thiếu sót Tôi kính mong nhận được sự cảm thông chỉ bảo tận tình của các thầy cô, các bạn

và những ai đọc luận văn này

Hà Nội, tháng 12 năm 2009

Học viên

Đào Tùng Thịnh

Trang 4

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT v

DANH MỤC CÁC BẢNG vi

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ vii

MỞ ĐẦU 1

Chương 1- TỔNG QUAN 2

1.1 Đặt vấn đề 2

1.2 Tình hình nghiên cứu trong và ngoài nước 2

1.3 Mục đích, yêu cầu của luận văn 3

1.4 Ý nghĩa, lợi ích của luận văn 3

1.5 Nội dung nghiên cứu 4

1.6 Một số công cụ tìm kiếm 4

1.6.1 Google (http://www.google.com) 4

1.6.2 Ask ( http://www.ask.com/ ) 5

1.6.3 Exalead (http://www.exalead.com/search) 5

1.6.4 Google Scholar ( http://scholar.google.com/) 5

1.6.5 ( http://www.scirus.com/) 6

1.6.6 Xalo(www.xalo.vn) 6

1.6.7 Timnhanh (www.timnhanh.com) 6

1.6.8 Vatgia (www.vatgia.com) 6

1.6.9 Baamboo (www.baamboo.com) 6

1.7 Kết luận chương 6

Chương 2 - CƠ SỞ LÝ THUYẾT 7

2.1 NET Framework 7

2.1.1 Mô hình kiến trúc Net FrameWork [5] 7

2.1.2 Lớp WebRequest và WebResponse 8

2.1.3 Lớp HttpWebRequest và HttpWebResponse 9

2.1.4 Trích rút thông tin từ các website có yêu cầu xác thực 10

2.2 Biểu thức chính quy 12

2.2.1 Ý nghĩa của các metacharacters 13

2.2.2 Các lớp thao tác với biểu thức chính quy trong NET 14

2.3 Thuật toán 18

2.3.1 Chọn các cụm từ 18

Trang 5

2.3.2 Giới thiệu cơ sở dữ liệu 27

2.3.3 Sơ đồ quan hệ 34

2.3.4 Thuật toán tìm kiếm và trích rút thông tin 34

2.4 Kết luận chương 43

Chương 3 - CÀI ĐẶT THUẬT TOÁN 44

3.1 Công nghệ sử dụng 44

3.1.1 Công nghệ lập trình 44

3.1.2 Hệ quản trị cơ sở dữ liệu 44

3.1.3 Công cụ thiết kế 45

3.2 Thành phần ứng dụng 45

3.2.1 Thành phần giao diện 45

3.2.2 Thành phần truy xuất cơ sở dữ liệu 45

3.2.3 Thành phần truy xuất tìm kiếm lấy thông tin trên internet 46

3.3 Thiết kế chi tiết phần mềm 46

3.3.1 Thiết kế phần mềm 46

3.3.2 Kết quả thực nghiệm 59

3.4 Kết luận chương 62

Chương 4 - KẾT LUẬN 63

4.1 Kết luận 63

4.2 Hướng phát triển 63

TÀI LIỆU THAM KHẢO 64

Trang 6

DANH MỤC CÁC KÝ HIỆU, TỪ VIẾT TẮT

STT Ký hiệu,

từ viết tắt

Diễn giải

2 CNTT Công nghệ thông tin

3 HTTP HyperText Transfer Protocol

4 RDBMS Relationship DataBase Managerment System

5 XML eXtended Markup Language

6 URL Uniform Resource Locator, được dùng để tham chiếu

tới tài nguyên trên Internet

8 CLR Common Language Runtime

9 RE Regular Expression

10 Q&A Question and Answer

Trang 7

DANH MỤC CÁC BẢNG

Bảng 1 Một số thuộc tính và phương thức của lớp WebRequest 8

Bảng 2 Một số thuộc tính và phương thức của lớp WebResponse 9

Bảng 3 Một số thuộc tính và phương thức của lớp Regex 15

Bảng 4 Quan hệ giữa cụm từ và bài viết 23

Bảng 5 Quan hệ giữa cụm từ và bài viết 24

Bảng 6 Tần số và tần số tích lũy 25

Bảng 7 Cấu trúc bảng ChuDe 28

Bảng 8 Dữ liệu minh họa bảng ChuDe 28

Bảng 9 Cấu trúc bảng CumTu 29

Bảng 10 Dữ liệu minh họa bảng CumTu 29

Bảng 11 Cấu trúc bảng TimKiem 29

Bảng 12 Dữ liệu minh họa bảng TimKiem 30

Bảng 13 Cấu trúc bảng TongHop 30

Bảng 14 Cấu trúc bảng NguoiDung 31

Bảng 15 Cấu trúc bảng ThamSo 31

Bảng 16 Mô tả màn hình đăng nhập hệ thống 46

Bảng 17 Mô tả màn hình quản trị người dùng 49

Bảng 18 Mô tả màn hình quản trị nhóm người dùng 50

Bảng 19 Mô tả màn hình Sao lưu dữ liệu 51

Bảng 20 Mô tả màn hình phục hồi dữ liệu 52

Bảng 21 Mô tả màn hình Đổi mật khẩu 52

Bảng 22 Mô tả màn hình Phân quyền hệ thống 54

Bảng 23 Mô tả màn hình Cập nhật tham số hệ thống 54

Bảng 24 Mô tả màn hình quản lý Chủ đề tìm kiếm 56

Bảng 25 Mô tả màn hình quản lý Cụm từ tìm kiếm 57

Bảng 26 Mô tả màn hình Tìm kiếm 59

Trang 8

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ

Hình 1 Kiến trúc Net Framework 7

Hình 2 Đồ thị các cụm từ theo tần số tích luỹ 25

Hình 3 Sơ đồ quan hệ 34

Hình 4 Màn hình đăng nhập hệ thống 46

Hình 5 Màn hình kết nối máy chủ 47

Hình 6 Màn hình chính của ứng dụng 47

Hình 7 Màn hình quản trị người dùng 48

Hình 8 Màn hình quản trị nhóm người dùng 49

Hình 9 Màn hình Sao lưu dữ liệu 50

Hình 10 Màn hình Phục hồi dữ liệu 51

Hình 11 Màn hình Đổi mật khẩu 52

Hình 12 Màn hình Phân quyền hệ thống 53

Hình 13 Màn hình Cập nhật tham số hệ thống 54

Hình 14 Màn hình chính khi chọn tab “Báo cáo phi cấu trúc” 55

Hình 15 Màn hình quản lý Chủ đề tìm kiếm 55

Hình 16 Màn hình quản lý Cụm từ tìm kiếm 57

Hình 17 Màn hình Tìm kiếm 58

Hình 18 Thực hiện tìm kiếm tổng hợp báo cáo phi cấu trúc 59

Trang 9

MỞ ĐẦU

Ngày nay cuộc cách mạng Khoa học – Công nghệ đang phát triển một cách nhanh chóng, nó đã làm thay đổi nền kinh tế toàn cầu và trở thành lực lượng sản xuất trực tiếp Khoa học – Công nghệ đã đưa nhân loại chuyển dần từ nền văn minh công nghiệp sang nền kinh tế tri thức Trong đó CNTT là một trong các ngành mũi nhọn để đưa nền kinh tế toàn cầu có một bước phát triển đột phá mạnh mẽ Nó có tầm quan trọng cho mọi quốc gia nhất là đối với các nước đang phát triển muốn hoà nhập với nền kinh tế thế giới như nước ta

Một ứng dụng quan trọng của CNTT là việc áp dụng vào quản lý, đặc biệt trong lĩnh vực quản lý nhà nước, quản lý kinh tế - xã hội Nó giúp cho các nhà quản lý đưa ra những quyết định chính xác, kịp thời, xử lý nhanh chóng các tình huống nhằm nâng cao hiệu quả quản lý

Với sự bùng nổ mạnh mẽ của internet, hầu như các thông tin đều có thể tìm trên các website thông qua các công cụ tìm kiếm Tuy nhiên số website và các công cụ khác để đưa thông tin lên internet ngày càng nhiều, nội dung ngày càng phong phú và đa dạng Đa số là các dữ liệu phi cấu trúc tồn tại ở nhiều loại như các tờ trình, báo cáo, email, văn bản, hình ảnh, âm thanh, các đoạn phim Thông tin về chủ đề nào đó có thể nằm rải rác trên các vùng, miền, của mạng Do đó chúng ta sẽ gom nhóm chúng lại cùng với các thông tin liên quan và lưu lại dưới dạng tệp văn bản hoặc dạng quan hệ trong CSDL quan hệ

Khi các thông tin trên được lưu dưới dạng tệp văn bản, chúng ta có thể tạo

ra các báo cáo phi cấu trúc với nội dung thay đổi phụ thuộc vào thời điểm thực hiện thuật toán Dựa vào báo cáo phi cấu trúc này người dùng có thể tổng hợp được nhanh các thông tin cần thiết theo thời gian, gần gũi với người đọc và hỗ trợ ra quyết định

Còn khi các thông tin trên được lưu trong CSDL, chúng ta có thể tạo ra các báo cáo dựa vào các tiêu chí (các thuộc tính) có trong CSDL Kiểu báo cáo này được gọi là báo cáo có cấu trúc và động

Cách tạo ra báo cáo phi cấu trúc động hoặc có cấu trúc động là một vấn đề mới đang được quan tâm do có các ưu điểm như: tổng hợp nhanh các thông tin cần thiết theo thời gian; gần gũi với người đọc và những người cần thông tin hỗ trợ để ra quyết định

Trang 10

Chương 1- TỔNG QUAN 1.1 Đặt vấn đề

Trong thời đại bùng nổ thông tin Internet, gần như các thông tin đều có thể tìm trên các Website Tuy nhiên Internet là kho dữ liệu khổng lồ có nhiều nội dung phong phú và đa dạng Các thông tin về chủ đề nào đó có thể nằm rải rác trên các vùng, miền, của mạng Chúng ta sẽ gom nhóm chúng lại cùng với các thông tin liên quan và lưu lại dưới dạng tệp văn bản hoặc dạng quan hệ trong CSDL quan hệ

Khi các thông tin trên được lưu dưới dạng văn bản, có nghĩa là chúng ta có thể tạo ra báo cáo phi cấu trúc với nội dung động phụ thuộc vào thời điểm thực hiện thuật toán Còn khi các thông tin trên được lưu trong CSDL, chúng ta có thể tạo ra các báo cáo dựa vào các chỉ tiêu (các thuộc tính) có trong CSDL Kiểu báo cáo này được gọi là báo cáo có cấu trúc và động

Cách tạo ra báo cáo phi cấu trúc động hoặc có cấu trúc động là một vấn đề mới đang được quan tâm do có các ưu điểm như tổng hợp nhanh các thông tin cần thiết theo thời gian; gần gũi với người đọc và những người cần thông tin hỗ trợ để ra quyết định Để nắm bắt các thông tin về một lĩnh vực nào đó ta gọi là chủ đề, ta thường phải tìm kiếm thông qua một xâu mang toàn bộ hoặc một phần nội dung của chủ đề đó

Thông qua tập các xâu đầu vào ta thực hiện xây dựng mối quan hệ giữa các xâu dựa trên phương pháp thống kê dựa vào tần số tích luỹ sự xuất hiện của các cụm từ Từ đó sẽ lấy được các xâu nằm trong vùng “mode” là vùng nằm ở phần

tư thứ hai và phần tư thứ ba nơi mà cụm từ xuất hiện nhiều Sau đó ta truy cập

và trích rút các đoạn văn bản trên các Website phục vụ cho việc xây dựng báo

cáo phi cấu trúc Việc làm này chính là ta đi tìm hiểu giải quyết bài toán “Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ”

1.2 Tình hình nghiên cứu trong và ngoài nước

Ngày nay với sự phát triển chóng mặt của internet thì internet là một kho

dữ liệu tri thức khổng lồ có nhiều nội dung phong phú và đa dạng Vậy câu hỏi đặt ra ở đây là làm sao để các tổ chức, doanh nghiệp, cá nhân khai thác được hiệu quả kho dữ liệu tri thức này phục vụ cho công việc kinh doanh, hay những mục đích riêng của mình đạt hiệu quả?

Để khai thác kho dữ liệu internet khổng lồ này chính là chúng ta đi tìm kiếm thông tin được lưu trữ trên internet Trên thế giới đã phát triển rất nhiều công cụ tìm kiếm chẳng hạn như google, yahoo, alexa, Ask, Exalead, Scirus, …

Trang 11

Ở Việt Nam cũng có một số công ty xây dựng các công cụ kiếm chẳng hạn như xalo do Công ty Tinh Vân phát triển, Baamboo thuộc Công ty cổ phần truyền thông Việt Nam, …

Tất cả các công cụ ở trên mới chỉ cho phép chúng ta tìm kiếm thông tin chung theo các từ khóa và kết quả trả là danh sách các website hợp lệ chứ chưa

có công cụ nào xây dựng chức năng mà cho phép chúng ta tổng hợp nội dung chi tiết của các bài báo dựa trên mối quan hệ giữa các cụm từ tìm kiếm Vì vậy

đề tài luận văn này là đề tài mới mà hiện nay chưa có nơi nào nghiên cứu và đi vào giải quyết vấn đề trên nhằm cung cấp giải pháp tìm kiếm và tổng hợp tự động thông tin trên các website theo yêu cầu người sử dụng

1.3 Mục đích, yêu cầu của luận văn

Khi ta muốn tổng hợp thông tin về một lĩnh vực nào đó (chúng ta gọi là chủ đề), ta phải sử dụng công cụ tìm kiếm chẳng hạn như google để thực hiện tìm kiếm thông qua một xâu mang toàn bộ hoặc một phần nội dung của chủ đề đó Google sẽ trả về danh sách các website hợp lệ mà có một phần hay toàn bộ xâu tìm kiếm Sau đó ta phải tự truy cập và đọc các đoạn văn bản này trên danh sách các website mà google trả về Công việc này làm cho ta mất nhiều thời gian và không hiệu quả khi cần tổng hợp nhanh các thông tin mang tính thời sự nóng hổi

và mang tính chất hỗ trợ ra quyết định để kịp thời đưa ra hướng đầu tư kinh doanh

Vậy để khắc phục vấn đề trên chúng ta phải nghiên cứu đưa ra giải pháp tìm kiếm tự động và tổng hợp nhanh thành các báo cáo phi cấu trúc giúp người dùng tổng hợp nhanh các thông tin cần thiết phục vụ cho việc quyết định đầu tư kinh doanh có hiệu quả Để việc thực hiện thuật toán tìm kiếm tổng hợp nhanh chúng ta ứng dụng phương pháp thống kê dựa vào tần số tích lũy của các cụm từ

để tìm ra các xâu nằm trong vùng “mode” nhằm giảm bớt không gian tìm kiếm

do đó sẽ giảm bớt được thời gian tìm kiếm tổng hợp và kết xuất ra báo cáo Qua mục này chúng ta thấy rõ được mục đích và yêu cầu của luận văn là xây dựng được các thuật toán tìm kiếm tự động, thuật toán tìm lớp “mode” và phần mềm tìm kiếm tổng hợp tự động giúp người dùng tổng hợp được nhanh các thông tin mang tính thời sự

1.4 Ý nghĩa, lợi ích của luận văn

Cung cấp giải pháp tìm kiếm và tổng hợp tự động thông tin trên các website theo yêu cầu người sử dụng

Trang 12

Giúp người sử dụng tổng hợp thông tin một cách nhanh nhất để hỗ trợ ra quyết định thông qua phần mềm

1.5 Nội dung nghiên cứu

Mục này chúng ta sẽ trình bày nội dung nghiên cứu của luận văn dựa trên những vấn đề đã được đặt ra và mục đích yêu cầu của luận văn

Các vấn đề cần nghiên cứu để thực hiện đề tài:

 Cơ sở lý thuyết phục vụ đề tài

 Nghiên cứu thuật toán tìm các xâu mode bằng phương pháp thống kê

 Nghiên cứu các phương pháp tìm kiếm trên các website

 Tổng hợp văn bản đưa ra báo cáo phi cấu trúc

Luận văn này được tổ chức thành 4 chương như sau:

Chương 1 – TỔNG QUAN: chương này nêu tổng quan về đề tài bao gồm

vấn đề đặt ra để giải quyết là gì, những gì trên thế giới đã làm, mình định

làm gì, lợi ích của đề tài là gì và nội dung nghiên cứu là gì

 Chương 2 – CƠ SỞ LÝ THUYẾT: chương này trình bày các kiến thức cơ

sở phục vụ cho đề tài, phân tích thiết kế, xây dựng tổ chức CSDL và các thuật toán của đề tài

 Chương 3 – CÀI ĐẶT ỨNG DỤNG: chương này trình bày các công nghệ

sử dụng để cài đặt ứng dụng, kiến trúc ứng dụng, thiết kế chi tiết phần mềm ứng dụng và kết quả thực nghiệm

 Chương 4 – KẾT LUẬN: chương này nêu kết luận và những ý nghĩa đạt được cũng như những vấn đề còn tồn tại của luận văn, từ đó đưa ra hướng phát triển của đề tài trong tương lai

1.6 Một số công cụ tìm kiếm

Để phục vụ cho việc tìm kiếm thông tin trên internet, có rất nhiều hãng phần mềm phát triển các công cụ tìm kiếm rất mạnh Ở đây tác giả luận văn xin giới thiệu một số công cụ tìm kiếm mạnh ở trên thế giới và Việt Nam

1.6.1 Google (http://www.google.com)

Google là một công cụ tìm kiếm mạnh thông dụng nhất hiện nay, với google bạn có thể truy xuất tìm kiếm thông tin trên kho dữ liệu khổng lồ internet chỉ bằng một vài thao tác đơn giản Để tìm kiếm bạn chỉ cần nhập vào cụm từ tìm kiếm rồi nhấn nút tìm kiếm, google sẽ trả về cho bạn danh sách kết quả các website phù hợp với cụm từ tìm kiếm

Trang 13

1.6.2 Ask ( http://www.ask.com/ )

Với công cụ Ask , khi tìm thông tin kết quả tìm kiếm sẽ hiển thị cả những câu hỏi gợi ý khác có liên quan đến câu hỏi truy vấn trong phần Q &A, giúp người sử dụng nghiên cứu sâu hơn vấn đề của họ Phần tìm kiếm ảnh có chức năng phân loại ảnh màu và ảnh đen trắng

1.6.3 Exalead (http://www.exalead.com/search)

Exalead là công cụ tìm kiếm được sử dụng rất rộng rãi ở Châu Âu Công cụ tìm kiếm này có giao diện tìm kiếm dễ sử dụng cho phép người dùng tìm thông một cách dễ dàng Kết quả tìm kiếm phù hợp được Exalead trả về là danh sách các website và bao gồm cả các đánh giá thống kê về ngôn ngữ sử dụng và nguồn gốc của các bài báo từ nước nào bằng biểu đồ trực quan

Ví dụ: Với từ khóa tìm kiếm “thị trường chứng khoán việt nam”

Thì kết quả trả về danh sách một số website hợp lệ và các thống kê từ Exalead như sau:

1.6.4 Google Scholar ( http://scholar.google.com/)

Google Scholar là công cụ tìm kiếm chuyên sâu dành cho học giả, giúp người dùng tìm kiếm các tài liê ̣u ho ̣c thuâ ̣t (luâ ̣n văn, luâ ̣n án, sách, các bài báo khoa ho ̣c ,…) về nhiều lĩnh vực Google Scholar có chức năng tìm kiếm đơn giản và chức năng tìm kiếm nâng cao để tăng tính chính xá c và hiê ̣u quả cho

Trang 14

viê ̣c tìm thông tin Ngoài ra người dùng còn có thể sử dụng chức năng “Scholar preferences” để lựa cho ̣n cách hiển thị kết quả tìm kiếm hay chức năng “Library Links- online and offline” để tìm hiểu xem mô ̣t thư v iê ̣n đa ̣i ho ̣c ba ̣n đang quan tâm có tài liê ̣u đó hay không

1.6.5 ( http://www.scirus.com/)

Scirus là công cụ tìm kiếm web về thông tin khoa học Scirus cho phép các nhà khoa học tìm kiếm không chỉ nội dung các bài báo , các trang web của các nhà khoa học , các phần mềm học tập ,… mà còn cả các thông tin riêng của các tổ chức khoa học

1.6.6 Xalo(www.xalo.vn)

Xalo là công cụ tìm kiếm được Công ty Tinh Vân phát triển Phiên bản beta của công cụ này được Công ty Tinh Vân cho ra mắt vào cuối tháng 3 năm 2008 Hiện công cụ này có bốn dịch vụ tìm kiếm là Web, Tin tức, Blog và Diễn đàn

1.6.7 Timnhanh (www.timnhanh.com)

Timnhanh vừa là một trang thông tin tổng hợp, vừa là một công cụ tìm kiếm theo kiểu Yahoo và được chính Yahoo hỗ trợ Trang này còn cung cấp miễn phí các dịch vụ như e-mail, tạo blog, tra cứu từ điển

1.6.8 Vatgia (www.vatgia.com)

Vatgia là website tìm kiếm chú trọng đến lĩnh vực thương mại với đầy đủ các tính năng như tổng hợp, phân chia hàng hóa một cách khoa học Cung cấp đầy đủ thông tin về các loại sản phẩm, dịch vụ, được trình bày một cách khoa học; giúp người tiêu dùng có thể tìm được những sản phẩm, dịch vụ một cách nhanh nhất

Trang 15

Chương 2 - CƠ SỞ LÝ THUYẾT

2.1 NET Framework

Mục này trình bày các kiến thức cơ bản về Net Framework, các lớp thư viện cơ sở trong Net Framework được sử dụng để lập trình thực nghiệm cho luận văn; thực hiện thống kê các bài báo trên internet và thực hiện trích rút thông tin từ các bài báo đó

.Net Framework là một nền tảng công nghệ phát triển phần mềm giúp các nhà phát triển phần mềm có thể xây dựng các ứng dụng nhanh và hiệu quả trên nhiều ngôn ngữ lập trình khác nhau như C#.NET, VB.NET, ASP.NET, J#.NET

2.1.1 Mô hình kiến trúc Net FrameWork

Hình 1 Kiến trúc Net Framework Net Framework bao gồm 3 tầng:

 Tầng ứng dụng: gồm có ASP.NET và Windows Forms

- ASP.NET cung cấp các thành phần thực hiện xây dựng các ứng dụng web (chạy trong mạng cục bộ hay trên mạng internet), các dịch vụ web

- Windows Forms: cung cấp các thành phần thực hiện phát triển các ứng dụng chạy trên windows

 Tầng giữa: cung cấp các thư viện lập trình cơ sở bao gồm các gói thư viện phục vụ cho lập trình mạng (Net), các gói thư viện giao tiếp với database (ADO.NET), các gói thư viện cho bảo mật (Security), …

 Tầng dưới cùng: quản lý việc biên dịch và chạy các ứng dụng

Trang 16

Khi sử dụng Net Framework, chúng ta sẽ không còn phải quá quan tâm đến việc lựa chọn ngôn ngữ nào để phát triển ứng dụng Thậm chí trong một ứng dụng chúng ta có thể viết bằng nhiều ngôn ngữ NET khác nhau Điều này là do tất cả các ngôn ngữ NET đều được quản lý bởi CLR (Common Language Runtime)

2.1.2 Lớp WebRequest và WebResponse

Lớp WebRequest và WebResponse là hai lớp cơ sở nằm trong gói thư viện System.Net Hai lớp này được xây dựng để phục vụ cho lập trình mạng giao tiếp giữa Client và Server Vì luận văn là đề tài chủ yếu nghiên cứu sâu về các thuật toán tìm kiếm và trích rút thông tin trên mạng internet do đó hai lớp WebRequest

và WebResponse có ý nghĩa cực kỳ quan trọng trong việc lập trình thực nghiệm Hai lớp WebRequest và WebResponse tương ứng được sử dụng trong luận

văn để thực hiện gửi yêu cầu và lấy dữ liệu từ các nguồn thông tin trên internet

thông qua giao thức HTTP Lớp WebRequest dùng để tạo ra một yêu cầu gửi tới một Website cụ thể Lớp WebResponse dùng để lấy thông tin trả về từ WebServer Để tạo một thể hiện (instance) của lớp WebRequest ta dùng phương thức Create(URL) Để lấy dữ liệu từ đối tượng WebResponse ta dùng phương thức GetResponseStream() trả về kiểu dữ liệu Stream

System.Net.WebRequest.RequestUri Lấy các URI từ các nguồn được

tham chiếu đến

System.Net.WebRequest.Headers Lấy các tiêu đề tên/cặp giá trị liên

kết với yêu cầu

System.Net.WebRequest.ContentLength Lấy hoặc gán nội dung chiều dài

của yêu cầu được gửi đi

System.Net.WebRequest.ContentType Lấy hoặc gán kiểu nội dung của

yêu cầu được gửi đi

System.Net.WebRequest.Credentials Lấy hoặc gán Credentials được

dùng để xác nhận yêu cầu

System.Net.WebRequest.PreAuthenticate Lấy hoặc gán giá trị để gửi thông

tin xác thực với yêu cầu

System.Net.WebRequest.GetRequestStream() Lấy dòng văn bản cho dữ liệu đến

nguồn dữ liệu

System.Net.WebRequest.GetResponse() Lấy phản hồi của một yêu cầu

Bảng 1 Một số thuộc tính và phương thức của lớp WebRequest

Trang 17

Thuộc tính/Phương thức Diễn giải

System.Net.WebResponse.Headers Lấy các tiêu đề tên/cặp giá trị liên

kết với nội dung trả về

System.Net.WebResponse.ContentLength Lấy chiều dài của nội dung trả về từ

Lấy nội dung trả về từ server

Bảng 2 Một số thuộc tính và phương thức của lớp WebResponse

Đoạn chương trình bên dưới sử dụng các đối tượng WebRequest và

WebResponse thực hiện gửi yêu cầu và nhận kết quả trả về

protected void Button1_Click(object sender, EventArgs e)

{

string URL = "http://www.google.com.vn";

WebRequest request = WebRequest.Create(URL);

WebResponse response = request.GetResponse();

StreamReader reader = new

hiện gửi yêu cầu và nhận kết quả trả về từ Webserver

Trang 18

Đoạn chương trình bên dưới sử dụng các đối tượng HttpWebRequest và

HttpWebResponse thay thế cho các đối tượng WebRequest và WebResponse

protected void Button1_Click(object sender, EventArgs e)

String ver = response.ProtocolVersion.ToString();

StreamReader reader = new

2.1.4 Trích rút thông tin từ các website có yêu cầu xác thực

Khi thực hiện tìm kiếm và trích rút thông tin từ nhiều nguồn khác nhau trên internet, sẽ xuất hiện trường hợp chúng ta truy xuất phải các website được bảo mật, các website đó yêu cầu một số thông tin xác thực trước khi có thể truy xuất vào được Như vậy trước khi gửi yêu cầu tới website có yêu xác thực chúng ta

phải cấu hình thuộc tính WebRequest.Credentials với các thông tin xác thực

Một số kiểu xác thực mà website thường sử dụng:

 Website sử dụng Basic authentication hay Digest authentication, chúng

ta cần gửi kết hợp username và password bằng cách tạo đối tượng

System.Net.NetworkCredential và gán nó vào thuộc tính

Trang 19

 Website đòi hỏi chứng chỉ, chúng ta cần nạp chứng chỉ từ một tệp bằng lớp

System.Security.Cryptography.X509Certificates.X509Certificate,

và thêm nó vào tập hợp HttpWebRequest.ClientCertificates

Đoạn mã dưới đây thực hiện cả 3 cách tiếp cận trên:

using System;

using System.Net;

using System.Security.Cryptography.X509Certificates;

public class DownloadWithAuthentication {

private static void Main() {

string uriBasic, uriIntegrated, uriCertificate;

// Xác thực username và password với Basic authentication

WebRequest requestA = WebRequest.Create(uriBasic);

requestA.Credentials =new NetworkCredential("userName", "password")

;

requestA.PreAuthenticate = true;

// Đăng nhập người dùng hiện hành với

// Integrated Windows authentication

WebRequest requestB = WebRequest.Create(uriIntegrated);

Trang 20

X509Certificate cert =X509Certificate.CreateFromCertFile(@"c:\user.cer

Biểu thức chính quy (regular expression) viết tắt là regexp, regex hay regxp

là một chuỗi miêu tả một bộ các chuỗi khác, theo những quy tắc cú pháp nhất định Biểu thức chính quy thường được dùng trong các trình biên tập văn bản và các tiện ích tìm kiếm và xử lý văn bản dựa trên các mẫu được quy định

Nhiều ngôn ngữ lập trình cũng hỗ trợ biểu thức chính quy trong việc xử lý chuỗi (chẳng hạn như C#, Java, PHP) có bộ máy mạnh mẽ để xử lý biểu thức chính quy được xây dựng trực tiếp trong cú pháp của chúng

Một biểu thức chính quy là một kiểu mẫu văn bản gồm hai phần: literal và

metacharacters

Một literal đơn thuần chỉ là một ký tự (a-z) mà chúng ta muốn đem so

khớp với chuỗi đích

Metacharacters là ký tự đặc biệt hoạt động như là một mệnh lệnh đối với

bộ phận phân tích ngữ nghĩa (parser) của biểu thức chính quy

Ví dụ một biểu thức chính quy như:

Trang 21

- Dấu ^ cho bộ phân tích ngữ nghĩa của biểu thức chính quy biết chuỗi mà

chúng ta đang tìm phải bắt đầu bởi một hàng mới

- Các chữ From, To, Subject, Date là những literal

- Các ký tự (, ), và | là những metacharacters được dùng để tạo nhóm literal và

cho biết bất cứ những lựa chọn nào cũng phải khớp

- Dấu ^ cũng là metacharacter nó cho biết là khởi đầu một hàng

Do đó biểu thức chính quy ở trên được đọc như sau:

“cho khớp bất cứ chuỗi con nào bắt đầu bởi một hàng mới theo sau bởi bất cứ 4 chuỗi literal: From,To,Subject và Date rồi theo sau bởi dấu hai chấm”

2.2.1 Ý nghĩa của các metacharacters

: đại diện cho một ký tự bất kỳ, trừ ký tự xuống dòng \n

\s : ký tự khoảng trắng tương đương [ \f\n\r\t\v]

\S : ký tự không phải khoảng trắng tương đương [ ^\f\n\r\t\v]

\w : bất kỳ từ nào (gồm chữ cái và chữ số, dấu gạch dưới _ ) tương đương

[a-zA-Z_0-9]

\W : không có bất kỳ từ nào [^a-zA-Z_0-9]

^ : bắt đầu một chuỗi hay một dòng

$ : kết thúc một chuỗi hay một dòng

\A : bắt đầu một chuỗi

\z : kết thúc một chuỗi

| : ký tự ngăn cách so trùng tương đương với phép or (lưu ý sử dụng cái này nếu

muốn kết hợp nhiều điều kiện)

[abc]: khớp với 1 ký tự nằm trong nhóm là a hay b hay c

[a-z] so trùng với 1 ký tự nằm trong phạm vi a-z, dùng dấu - làm dấu ngăn cách [^abc] sẽ không so trùng với 1 ký tự nằm trong nhóm, ví dụ không so trùng với

a hay b hay c

() : Xác định một nhóm (group - biểu thức con) xem như nó là một yếu tố đơn lẻ

trong mẫu (pattern) Ví dụ ((a(b))c) sẽ khớp với b, ab, abc

? : khớp với đứng trước từ 0 hay 1 lần Ví dụ A?B sẽ khớp với B hay AB

* : khớp với đứng trước từ 0 lần trở lên Ví dụ A*B khớp với B, AB, AAB

Trang 22

+ : khớp với đứng trước từ 1 lần trở lên Ví dụ A+B khớp với AB, AAB

{n} : n là con số, khớp đúng với n ký tự đúng trước nó Ví dụ A{2}) khớp đúng

2.2.2 Các lớp thao tác với biểu thức chính quy trong NET

Trong NET cung cấp cho chúng ta các lớp thư viện để tiếp cận thao tác với biểu thức chính quy một cách đơn giản Đó là cách cách tiếp cận hướng đối tượng về việc so khớp chuỗi và thay thế theo biểu thức chính quy

System.Text.RegularExpression là không gian tên trong thư viện các lớp chuẩn

của NET liên quan đến tất cả các đối tượng gắn liền với biểu thức chính quy

a Lớp Regex

Lớp Regex tượng trưng cho một biểu thức chính quy bất di bất dịch (chỉ

đọc) Lớp này cũng chứa phương thức tĩnh (static) cho phép chúng ta sử dụng

mà không cần khởi tạo một đối tượng khác

Thuộc tính/Phương thức Diễn giải

Options Trả về những mục chọn được trao qua cho

constructor Regex

RightToLeft Nhận một giá trị cho biết liệu xem biểu thức

chính quy dò tìm từ phải qua trái hay không

GetGroupNames() Trả về mảng gồm toàn tên nhóm thu lượm

đối với biểu thức chính quy

GetGroupNumbers() Trả về mảng gồm toàn số nhóm thu lượm

tương ứng với tên nhóm trên một mảng

GroupNameFromNumber() Đi lấy tên nhóm tương ứng với số nhóm

được khai báo

IsMatch() Trả về trị bool cho biết liệu xem biểu thức

chính quy có tìm thấy một so khớp hay không trên mẫu (pattern)

Match() Dò tìm trên mẫu (pattern) xem có xuất hiện

một biểu thức chính quy hay không rồi trả về kết quả chính xác như là một đối tượng Match duy nhất

Trang 23

Matches() Dò tìm trên pattern xem tất cả các xuất hiện

của một biểu thức chính quy có hay không rồi trả về tất cả những so khớp thành công xem như Match được gọi nhiều lần

Replace() Cho phép thay thế những xuất hiện của một

pattern được định nghĩa bởi một biểu thức chính quy bởi một chuỗi ký tự thay thế được chỉ định

Split() Chia một pattern thành một mảng gồm

những chuỗi con ở những vị trí được chỉ định bởi một so khớp trên biểu thức chính quy

Unescape() Cho unescape bất cứ những ký tự nào được

escape trên pattern

Bảng 3 Một số thuộc tính và phương thức của lớp Regex

Ví dụ dùng Regex tách chuỗi sử dụng phương thức Split của nó:

Trang 24

Sử dụng thuộc tính Match.Access của lớp Match báo cho biết liệu xem đã tìm ra một so khớp hay chưa

string chuoi = "123abcd456bdabc";

string pattern = "abc";

Regex regex = new Regex(pattern);

Match m = regex.Match(chuoi);

if (m.Success)

{

Trang 25

Console.WriteLine("Tim thay chuoi con {0} o vi tri thu {1} trong chuoi", m.Value, m.Index);

Trang 26

//khởi tạo 1 đối tượng của Regex

//truyền chuỗi pattern vào constructor

Regex regex = new Regex(pattern);

//dùng phương thức Matches của myRegex

//để tìm ra matches và chỉ mục của từng match

Chuoi con 'chuoi' xuat hien o chi muc 4

Chuoi con 'chuoi' xuat hien o chi muc 20

2.3 Thuật toán

2.3.1 Chọn các cụm từ

Mối quan hệ giữa chủ đề và các cụm từ:

Mục này trình bày mối quan hệ mật thiết giữa chủ đề và các cụm từ, nó có

ý nghĩa cực kỳ quan trọng trong quá trình xây dựng thuật toán tìm kiếm và trích rút thông tin tạo ra báo cáo phi cấu trúc

Chủ đề và các cụm từ có quan hệ mật thiết với nhau bởi vì một chủ đề được đưa ra để tìm kiếm tổng hợp các thông tin thì cần phải có các cụm từ tìm kiếm cho nó Nếu chúng ta lựa chọn các cụm từ tìm kiếm quá bao hàm không phù hợp (đồng nghĩa với việc số từ của cụm từ tìm kiếm xuất hiện trong chủ đề quá ít dẫn đến không sát với chủ đề) làm cho nội dung của báo cáo rất tản mạn không sát với chủ đề mà chúng ta muốn tổng hợp

Dưới đây là ví dụ minh họa việc lựa chọn cụm từ tìm kiếm bao gồm cụm từ tìm kiếm quá bao hàm, cụm từ tìm kiếm sát với chủ đề và cụm từ tìm kiếm không liên quan gì nhiều đến chủ đề (có từ xuất hiện trong chủ để nhưng khác

về ngữ nghĩa)

Chủ đề tìm kiếm: “Thị trường chứng khoán Việt Nam”

Trang 27

Các cụm từ tìm kiếm: “Chứng khoán”, “Thị trường chứng khoán Việt Nam năm 2009”, “Chứng gà”

- Với cụm từ tìm kiếm “Chứng khoán” chúng ta có khoảng 3.510.000 bài viết

- Một số kết quả trả về từ internet với cụm từ tìm kiếm “Chứng khoán”

TIN NHANH CHUNG KHOAN: Cong thong tin Kinh te - Tai chinh - Chung

25 Tháng Mười Hai 2009 Tin nhanh chứng khoán, đầu tư, báo đầu tư, chứng khoán, chứng khoán online, đầu tư chứng khoán, thông tin

chứng khoán, bảng giá chứng khoán,

Thông tin phân tích - TIN SỞ GDCK TP HCM - Thị trường niêm yết

tinnhanhchungkhoan.vn/ - 5 giờ trước đây

Sở Giao Dịch Chứng Khoán TpHCM

Xem giá, khối lượng khớp lệnh, của các chứng khoán trong thời gian giao dịch Xem chi tiết top chứng khoán tăng, giảm giá, khối lượng giao dịch

www.hsx.vn/

Welcome to chungkhoan.24h.com.vn

BẢNG GIÁ CHỨNG KHOÁN - HoSTC Ngày 25/12/2009 - 10:59:24 AM HoSTC (Sàn HCM), HNX (Sàn Hà Nội) Lựa chọn tất cả chứng khoán Ẩn/Hiện bảng mã CK

chungkhoan.24h.com.vn/

SSIDịch vụ chứng khoán · QUẢN LÝ QUỸ · Ngân hàng đầu tư Kết quả

lễ rút thăm trúng thưởng chương trình "Giao dịch chứng khoán, trúng thưởng BMW tại SSI"

fpts.com.vn/

http://www.hnx.vn - Từ Sở GDCK HN

sở giao dịch chứng khoán hà nội,Giao dịch, Chứng khoán, Niêm yết,

OTC, Index, Bảng giá, lên xuống, tăng giảm, giao dich, chung khoan, niem

yet, bang gia,

www.hastc.org.vn/

CafeF - Dịch vụ dữ liệu thông tin tài chính chuyên sâu | CafeF.vn

25 Tháng Mười Hai 2009 Trong bài:Mọi giao dịch bán chứng khoán sẽ

bị khấu trừ 0,1% · Garung - Hôm nay 16:25:23 chuyện tính toán giá trị của

chứng khoán lúc mua [

cafef.vn/ - 1 giờ trước đây

Trang chủ- Công ty Chứng khoán Ngân hàng Đầu tư và Phát triển Việt

Nam

Trang 28

Trang chủ của CTCK Ngân hàng đầu tư và phát triển Việt nam Bản tin thị

trường, giá cả các cổ phiếu Ngoài ra còn có một thị trường chứng khoán

ảo để cho

www.bsc.com.vn/

Chứng khoán – Wikipedia tiếng Việt

Chứng khoán là một giá trị tài chính đại diện bằng lãi suất có thể thỏa thuận và có thể thay thế Chứng khoán gồm các loại: chứng khoán cổ phần (ví dụ cổ

vi.wikipedia.org/ / Chứng_khoán

- Với cụm từ tìm kiếm “Thị trường chứng khoán Việt Nam năm 2009” chúng ta

có khoảng 326.000 bài viết

- Một số kết quả trả về từ internet với cụm từ tìm kiếm “Thị trường chứng khoán Việt Nam năm 2009”

VnEconomy - Cùng dự báo chứng khoán Việt Nam 2009 - Chứng khoán

2 Tháng Giêng 2009 Thị trường chứng khoán Việt Nam năm 2009 sẽ

là một năm khó khăn và nhiều thách thức Tuy vậy cái gì đến cũng đã đến

Bốn giai đoạn lớn của thị trường chứng khoán Việt Nam năm 2009

Bốn giai đoạn lớn của thị trường chứng khoán Việt Nam năm 2009

khoan-viet-na

vietchinabusiness.vn/ /13997-bon-giai-doan-lon-cua-thi-truong-chung-Dự đoán thị trường Chứng khoán Việt Nam 2009 Đầu tư vào thị trường

Ngày10 tháng 1 năm 2009 tại hội trường Dinh Độc Lập đã diễn ra hội thảo

―Dự đoán thị trường chứng khoán Việt Nam năm 2009 – Đầu tư vào thị trường nhiều biến

caohockinhte.info/ /t-7959.html

Thị trường chứng khoán Việt Nam năm 2009 - WELCOME TO MOF

Thị trường chứng khoán Việt Nam năm 2009: tiếp tục tập trung cho

chiến lược dài hạn (05/01/2009 14:39) Thị trường chứng khoán (TTCK)

được coi như một tấm

www.mof.gov.vn/Default.aspx?

Trang 29

HSBC: Chứng khoán Việt Nam 2009 chưa hết khó khăn | Kinh tế

6 Tháng Ba 2009 Thị trường chứng khoán Việt Nam năm 2009 sẽ vẫn

còn bất ổn và đầy thách thức nhưng các chuyên gia phân tích tin rằng,

nhiều cơ hội vàng sẽ

nhansuvietnam.vn/ /47499.html

Bao Thong Tin Thi Truong

Thị trường chứng khoán Việt Nam năm 2009 sẽ ra sao ? [ 20/01/2009 -

Báo Thị Trường ] anh_14aa.jpg Năm qua, đa số nhà đầu tư trên thị trường

chứng khoán

www.marketnews.vn/index.php?option=com_content&task=view

Chứng khoán 2009: Không quá bi quan - Thị trường - Thể thao & Văn hóa

11 Tháng Giêng 2009 Theo các chuyên gia tham dự hội thảo ―Dự đoán thị trường chứng khoán Việt Nam năm 2009, đầu tư vào thị trường

nhiều biến động‖ do Sở Giao

- Với cụm từ tìm kiếm “Chứng gà” chúng ta có khoảng 9.340 bài viết

- Một số kết quả trả về từ internet khi chúng ta sử dụng cụm từ tìm kiếm “Chứng gà”

Avatar + Animation - Chứng Gà - Chứng Vịch - Yeah1.com Forum

Avatar + Animation - Chứng Gà - Chứng Vịch • Ävatar ω Änimation

www.photo.yeah1.com/showthread.php?

đại lý chứng gà quê nổi tiếng(ông ĐÀO VĂN TRỌNG- xom liêm)

đại lý chứng gà quê nổi tiếng(ông ĐÀO VĂN TRỌNG- xom liêm) xóm liêm

- tiêu hạ- tiêu động- bình lục- hà

wikimapia.org/ /đại-lý-chứng-gà-quê-nổi-tiếng-ông-ĐÀO-VĂN-TRỌNG-xom-l - Đã lưu trong bộ nhớ cache - Tương tự

nhận biết chứng gà công nghiệp - Các bài viết về "nhận biết chứng nhận biết chứng gà công nghiệp - Các topic về nhận biết chứng gà công

Hội chứng gà mái đẻ và cách phòng chống Khắc phục gà giảm đẻ (Nhiều

bạn chăn nuôi gà ở huyện Tầm Du, Long An) Trả lời: Nguyên nhân: Hội

Trang 30

chứng giảm đẻ trên

icadl2007.vista.gov.vn/ /library.exe?

Màn LCD 17" trắng như chứng gà bóc giá chỉ có 1.390.000 đ 1

Màn hình LCD - Tình hình là bên em mới về được lô màn hình LCD 17" hàng Nhật hiệu Fujitsu trắng như trắng gà bóc vậy Em nó data 2005

390-000-d-1-e

www.vatgia.com/ /man-lcd-17-quot-trang-nhu-chung-ga-boc-gia-chi-co-1-Bệnh thường gặp ở gà [Lưu Trữ] - Diễn Đàn Cá Rồng Việt Nam - DNTN Triệu chứng: Gà ủ rũ, xù lông, chậm chạp, phân đỏ hoặc sáp nhiều khi có máu tươi Triệu chứng: Gà ủ rũ, phân trắng loãng, hôi thối Gà đẻ trứng giảm,

cacanhhonganh.com.vn/ /t-2624.html

Chào mừng bạn đến với Sở Nông nghiệp & PTNT Lâm Đồng

1/ Triệu chứng: Gà mắc bệnh thường ủ rũ, kém ăn và chậm lớn 1/ Triệu chứng: Gà con bỏ ăn, ủ rũ, lông xơ xác, nằm chết chất đống trong chuồng,

Như vậy từ các so sánh ở trên chúng ta thấy rằng việc lựa chọn cụm từ tìm kiếm và mối quan hệ mật thiết giữa nó và chủ đề tìm kiếm là rất quan trọng trong việc tìm kiếm tổng hợp báo cáo Do đó để có được nội dung báo cáo tổng hợp mà sát với chủ đề người dùng phải hiểu rõ mối quan hệ giữa cụm từ và chủ

đề để lựa chọn các cụm từ tìm kiếm sao cho sát với chủ đề tìm kiếm nhất

Từ các kết quả trên chúng ta thấy số bài viết chứa cụm từ thuộc chủ đề là một đại lượng ngẫu nhiên có quan hệ tần số tuyệt đối

Để tìm hiểu về mối quan hệ giữa các cụm từ và bài viết trước tiên chúng ta

đi tìm hiểu về khái niệm “mode” là gì?, “lớp mode” là gì? trong ngành thống kê

“Mode” của một danh sách dữ liệu là giá trị của phần tử có số lần xuất hiện lớn nhất trong danh sách

Trang 31

Ví dụ, mode của {lê, hồng, mơ, mận, mận, mận, đào} là mận

Vậy mode có ý nghĩa như thế nào trong việc lựa chọn các cụm từ và mối liên hệ giữa các cụm từ với bài viết ở trong luận văn này?

Để trả lời câu hỏi trên chúng ta sử dụng công cụ tìm kiếm google trên internet thực hiện lập bảng số liệu thống kê số bài viết về cụm từ, từ đó chúng ta minh họa được mối quan hệ giữa cụm từ và bài viết

Nội dung xâu liên quan chủ đề (X) Số bài viết, tần số (f)

Bảng 4 Quan hệ giữa cụm từ và bài viết

Với bảng số liệu trên chúng ta tìm được xâu mode là xâu “Chứng khoán”, bởi vì xâu “Chứng khoán” có tần số xuất hiện trong các bài viết là lớn nhất Bằng cách phân tích trực quan chúng ta thấy rằng với xâu tìm kiếm mà có nhiều bài viết về nó thì đó là những thông tin hóng hổi và mang tính thời sự

Với việc tìm kiếm thông qua xâu mode cũng dẫn việc tìm kiếm trùng lặp các bài viết (bởi vì xâu mode là xâu có tần suất xuất hiện lớn nhất) Do đó sẽ có nhiều bài viết trên nhiều website cùng đưa nội dung về xâu mode đó

Từ bảng quan hệ giữa cụm từ và bài viết chúng ta thấy được rằng với cụm

từ tìm kiếm càng dài thì số bài viết xuất hiện cụm từ tìm kiếm đó càng ít Số bài viết càng ít thì không gian tìm kiếm được thu hẹp và nội dung bài được cô đọng

Trang 32

Ngược lại với cụm từ tìm kiếm càng ngắn thì số bài viết xuất hiện cụm từ càng nhiều Số bài viết càng nhiều thì không gian tìm kiếm càng rộng và nội dung bài viết sẽ rất tản mạn

Như vậy chúng ta có thể thấy được rằng mode có một số ý nghĩa quan trọng sau:

- Ý nghĩa về mặt thống kê: xâu mode là giá trị có tần suất xuất hiện lớn nhất

- Ý nghĩa về mặt thực tế: tìm kiếm với xâu mode sẽ dẫn đến việc tìm kiếm trùng lặp các bài viết

- Ý nghĩa về mặt thông tin cập nhật: với xâu mode là xâu có tần suất xuất hiện lớn nhất do đó nó chính là thông tin nóng hổi, sốt dẻo và mang tính thời sự

Trong luận văn này có nghiên cứu ứng dụng mode vào trong thuật toán tìm kiếm

và trích rút thông tin thông qua lớp mode

Lớp (vùng, miền) mode là lớp mà các cụm từ tìm kiếm xuất hiện nhiều và có quan hệ gần gũi với chủ đề nhất

Phương pháp tìm các cụm từ có độ khả tín cao (tìm lớp mode):

Chúng ta sẽ ứng dụng phương pháp Thống kê để tìm ra các cụm từ có độ khả tín có thể có hiệu quả nhất khi tìm kiếm các bài viết liên quan đến “Chủ đề”

là lớp (miền) mode (là miền mà các cụm từ tìm kiếm có quan hệ gần gũi với chủ

đề nhất)

Để thực hiện tìm các cụm từ thuộc lớp mode chúng ta thực hiện theo các bước sau:

Bước 1 Tạo bảng sắp xếp các cụm từ tăng theo độ dài

Từ bảng mối quan hệ giữa cụm từ và bài viết chúng ta sắp xếp các cụm từ tăng theo độ dài được bảng kết quả như sau:

Nội dung xâu liên quan chủ đề (X) Số bài viết, tần số (f)

Phân tích thị trường chứng khoán 1.600.000

Mã chứng khoán tăng mạnh cuối tuần 482.000

Bảng 5 Quan hệ giữa cụm từ và bài viết

Trang 33

Bước 2 Tạo bảng có cột tần số tích lũy tham gia

Từ bảng cụm từ đã được sắp xếp ở bước 1 chúng ta thực hiện tính tần số tích luỹ theo công thức:

cf(i+1) = cf(i) + f(i)

cf là tần số tích luỹ (khởi tạo cf(1) = 0)

f là tần số hay số bài viết

i là chỉ số chạy từ 1 → n-1 (n: là tổng số cụm từ)

Chúng ta được kết quả như sau:

Nội dung xâu liên quan chủ đề (X) Số bài viết,

Phân tích thị trường chứng khoán 1.600.000 12.713.000

Mã chứng khoán tăng mạnh cuối

tuần

482.000 14.313.000

Bảng 6 Tần số và tần số tích lũy

Bước 3 Vẽ đồ thị của các cụm từ theo tần số tích lũy

Từ bảng tần số tích luỹ chúng ta thực hiện vẽ đồ thị của các cụm từ theo cột tần

số tích luỹ như sau:

Hình 2 Đồ thị các cụm từ theo tần số tích luỹ

Trang 34

Bước 4 Lấy các cụm từ thuộc lớp mode

Từ đồ thị được vẽ ở bước trước chúng ta thực hiện lấy các cụm từ thuộc miền phần tư thứ hai và phần tư thứ ba (các cụm từ với tần số tích lũy nằm trong đoạn từ 25% đến 75%) là các cụm có quan hệ gần gũi nhất với “chủ đề” Đây chính là lớp mode mà chúng ta cần phải tìm kiếm

Với bảng số liệu ở trên chúng ta có tần số tích lũy lớn nhất là 14.313.000

Do đó mốc bắt đầu phần tư thứ hai có giá trị là 3.578.250, mốc kết thúc phần tư thứ ba có giá trị là 10.734.750 Vậy chúng ta thực hiện lấy các cụm từ có tần số tích lũy nằm trong đoạn [3.578.250, 10.734.750] chúng ta được các cụm từ

“Bảng giá chứng khoán”, “Thị trường chứng khoán HN”, “Mã chứng khoán tăng mạnh” là các cụm từ thuộc vào lớp mode

Thuật toán tìm lớp mode:

 Vào: Tập các cụm từ tìm kiếm cho chủ đề

 Ra: Quan hệ TimKiem (các cụm từ thuộc lớp mode)

„ Sao các giá trị từ quan hệ CumTu sang mảng arrCumTu theo chủ đề tìm kiếm

„ Vòng lặp thực hiện thống kê số bài báo cho từng cụm từ

For i=0 to iCT

Trang 35

„ Thực hiện chia tần số tích luỹ lớn nhất cho 4 ta được giá trị ¼

PhanTu = CF[jCT]/4

„ Giá trị bắt đầu ¼ thứ hai của tần số tích lũy

Int BatDauPhanTuThuHai = CF[jCT] – PhanTu*3

„Giá trị kết thúc ¼ thứ ba của tần số tích lũy

Int KetThucPhanTuThuBa = CF[jCT] – PhanTu

„ Thực hiện lấy các cụm từ thuộc vào BatDauPhanTuThuHai đến

„KetThucPhanTuThuBa của cột tần số tích luỹ

„ Lưu các cụm từ này vào quan hệ TimKiem và kết thúc thuật toán

SAVE(TimKiem)

Chú ý trong các đoạn chương trình thuật toán viết giả mã thì sau dấu „ là ghi chú, còn dòng lệnh giả mã được viết in nghiêng

Chọn cụm từ để thăm dò:

Cụm từ thăm dò là hết sức quan trọng, nó làm thu hẹp miền tìm kiếm (giảm

số lượng các bài viết có nội dung ít phù hợp với chủ đề)

Chẳng hạn với chủ đề “Thị trường chứng khoán” thì các cụm từ cần cho thăm dò có thể chỉ cần: “Thị trường chứng khoán tăng mạnh”, “Thị trường chứng khoán giảm mạnh”, “Thị trường chứng khoán Việt Nam năm 2009”, “Thị trường chứng khoán tăng mạnh cuối tuần”, Mà không cần các xâu như:

“Chứng khoán”, “Chứng gà”, …

Chúng ta cần chọn các cụm từ thích hợp cho chủ đề cần nghiên cứu Để làm được điều này, ta cần phải có kiến thức về các chủ đề, để biết khả năng xuất hiện cụm từ trong bài viết Tránh trường hợp có bài viết chứa chủ đề cần nghiên cứu nhưng khi chọn cụm từ lại không thích hợp để có thể tham chiếu đến bài viết

Để tránh được điều này chúng ta có thể chọn các cụm từ thuộc vùng “mode” như đã trình bày ở trên

2.3.2 Giới thiệu cơ sở dữ liệu

Mục này chúng ta đi vào trình bày thiết kế, tổ chức cơ sở dữ liệu để thực hiện lưu trữ thông tin và phục vụ kết xuất ra báo cáo

a Bảng ChuDe

Do quá trình thăm dò và tổng hợp không phải chỉ dành cho một mà là nhiều chủ đề, vì thế chúng ta cần thiết kế một bảng để lưu nội dung của các chủ đề Bảng chủ đề được đặt tên là ChuDe và có cấu trúc như sau:

Trang 36

Tên trường Kiểu dữ

liệu

Độ rộng

Ghi chú

ChuDe Nvarchar 100 Chủ đề cần nghiên cứu và tổng hợp

Bảng 7 Cấu trúc bảng ChuDe

Dữ liệu (minh họa) của bảng ChuDe:

TCCK Thị trường chứng khoán

CNTT Công nghệ thông tin

DBTT Dự báo thời tiết

GiaXangDau Giá xăng dầu

Bảng 8 Dữ liệu minh họa bảng ChuDe

b Bảng CumTu

Bảng cụm từ chứa các “cụm từ” được dùng để tìm các địa chỉ đoạn văn hay bài viết có chứa cụm từ liên quan đến chủ đề Các “cụm từ” được người sử dụng đưa vào bảng cụm từ sau đó dùng phương pháp thống kê để tìm lớp “mode” Bảng này bao gồm các trường lưu các dữ liệu cho mục đích tổng hợp văn bản

và cung cấp tiêu đề của khối văn bản cần tổng hợp Bảng cụm từ được đặt tên là CumTu và có cấu trúc như sau:

Tên trường Kiểu dữ

liệu

Độ rộng

Ghi chú

MaCumTu varchar 10 Khoá chính

CumTu Nvarchar 4000 Cụm từ cần dùng để thu lượm thông

tin

Ngày đăng: 25/03/2015, 09:36

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Đỗ Xuân Lôi (1996), Cấu trúc dữ liệu và giải thuật, NXB Khoa học và Kỹ thuật Sách, tạp chí
Tiêu đề: Cấu trúc dữ liệu và giải thuật
Tác giả: Đỗ Xuân Lôi
Nhà XB: NXB Khoa học và Kỹ thuật
Năm: 1996
[2]. Robert Sedgewick (2001), Cẩm nang thuật toán Vol.1 and vol.2, NXB Khoa học và Kỹ thuật Sách, tạp chí
Tiêu đề: Cẩm nang thuật toán Vol.1 and vol.2
Tác giả: Robert Sedgewick
Nhà XB: NXB Khoa học và Kỹ thuật
Năm: 2001
[3]. Lê Huy Thập (2006), Thuật toán thăm dò mạng, lấy về các văn bản cần thiết và chuyển thành văn bản có cấu trúc, Các báo cáo toàn văn tại “Hội nghị khoa học ITMATH-06”, Học viện Quân sự, tr. 128-135 Sách, tạp chí
Tiêu đề: Thuật toán thăm dò mạng, lấy về các văn bản cần thiết và chuyển thành văn bản có cấu trúc, "Các báo cáo toàn văn tại “Hội nghị khoa học ITMATH-06
Tác giả: Lê Huy Thập
Năm: 2006
[4]. Lê Huy Thập (2007), Tìm thông tin trên các máy tính bằng cách dùng các chuỗi để so sánh, Kỷ yếu hội nghị khoa học kỷ niệm 30 năm thành lập Viện công nghệ thông tin, NXB Khoa học tự nhiên và Công nghệ, Hà Nội, tr. 422-427 Sách, tạp chí
Tiêu đề: Tìm thông tin trên các máy tính bằng cách dùng các chuỗi để so sánh
Tác giả: Lê Huy Thập
Nhà XB: NXB Khoa học tự nhiên và Công nghệ
Năm: 2007
[5]. Lê Huy Thập (2008), Kỹ thuật lập trình, NXB khoa học tự nhiên và công nghệ, Hà Nội Sách, tạp chí
Tiêu đề: Kỹ thuật lập trình
Tác giả: Lê Huy Thập
Nhà XB: NXB khoa học tự nhiên và công nghệ
Năm: 2008
[6]. Lê Tiến Vương (2000), Nhập môn cơ sở dữ liệu quan hệ, NXB Thống Kê. Internet Sách, tạp chí
Tiêu đề: Nhập môn cơ sở dữ liệu quan hệ
Tác giả: Lê Tiến Vương
Nhà XB: NXB Thống Kê. Internet
Năm: 2000
[7]. Microsoft SQL Server 2005 Administration Tutorials http://www.vtc.com/products/Microsoft-SQL-Server-2005-Administration-tutorials.htm Link
[8]. Microsoft SQL Server Tutorials http://www.functionx.com/sqlserver/ Link
[13]. Regex tutorial, examples and reference-regexp parters http://www.regular-expressions.info/ Link

HÌNH ẢNH LIÊN QUAN

Hình 1. Kiến trúc .Net Framework  .Net Framework bao gồm 3 tầng: - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Hình 1. Kiến trúc .Net Framework .Net Framework bao gồm 3 tầng: (Trang 15)
Bảng 2. Một số thuộc tính và phương thức của lớp WebResponse - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng 2. Một số thuộc tính và phương thức của lớp WebResponse (Trang 17)
Bảng giá chứng khoán  1.030.000 - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng gi á chứng khoán 1.030.000 (Trang 31)
Hình 2. Đồ thị các cụm từ theo tần số tích luỹ - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Hình 2. Đồ thị các cụm từ theo tần số tích luỹ (Trang 33)
Bảng 8. Dữ liệu minh họa bảng ChuDe  b. Bảng CumTu - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng 8. Dữ liệu minh họa bảng ChuDe b. Bảng CumTu (Trang 36)
Bảng cụm từ chứa các “cụm từ” được dùng để tìm các địa chỉ đoạn văn hay  bài viết có chứa cụm từ liên quan đến chủ đề - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng c ụm từ chứa các “cụm từ” được dùng để tìm các địa chỉ đoạn văn hay bài viết có chứa cụm từ liên quan đến chủ đề (Trang 36)
Bảng tìm kiếm được dùng để tạo ra các chủ đề, ứng với các chủ đề là các  cụm từ tương ứng (thuộc lớp mode) tìm thông tin cho chủ đề này - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng t ìm kiếm được dùng để tạo ra các chủ đề, ứng với các chủ đề là các cụm từ tương ứng (thuộc lớp mode) tìm thông tin cho chủ đề này (Trang 37)
Bảng 10. Dữ liệu minh họa bảng CumTu  c. Bảng TimKiem - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng 10. Dữ liệu minh họa bảng CumTu c. Bảng TimKiem (Trang 37)
Bảng tổng hợp được dùng để lưu giữ các văn bản có chứa cụm từ thuộc chủ  đề. Cấu trúc của bảng phụ thuộc vào yêu cầu tổng hợp của người sử dụng - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng t ổng hợp được dùng để lưu giữ các văn bản có chứa cụm từ thuộc chủ đề. Cấu trúc của bảng phụ thuộc vào yêu cầu tổng hợp của người sử dụng (Trang 38)
Bảng 12. Dữ liệu minh họa bảng TimKiem - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng 12. Dữ liệu minh họa bảng TimKiem (Trang 38)
Bảng 14. Cấu trúc bảng NguoiDung  f. Bảng ThamSo - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng 14. Cấu trúc bảng NguoiDung f. Bảng ThamSo (Trang 39)
Bảng tham số được dùng để lưu giữ các tham số của hệ thống dùng cho  việc cấu hình hệ thống - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng tham số được dùng để lưu giữ các tham số của hệ thống dùng cho việc cấu hình hệ thống (Trang 39)
Hình 3. Sơ đồ quan hệ  2.3.4 Thuật toán tìm kiếm và trích rút thông tin - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Hình 3. Sơ đồ quan hệ 2.3.4 Thuật toán tìm kiếm và trích rút thông tin (Trang 42)
Hình 4. Màn hình đăng nhập hệ thống  b. Mô tả giao diện đăng nhập - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Hình 4. Màn hình đăng nhập hệ thống b. Mô tả giao diện đăng nhập (Trang 54)
Bảng 16. Mô tả màn hình đăng nhập hệ thống - Chuẩn hóa và xác định mối quan hệ giữa các cụm từ, tìm và lấy thông tin liên quan đến cụm từ
Bảng 16. Mô tả màn hình đăng nhập hệ thống (Trang 54)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w