Tải bản đầy đủ (.pdf) (72 trang)

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ạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.83 MB, 72 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
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
LIÊN QUAN ĐẾN CỤM TỪ





Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60 48 05



LUẬN VĂN THẠC SĨ






NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. LÊ HUY THẬP













Hà Nội - 2009


i
LỜI CAM ĐOAN

Trong quá trình th hi lu vn tác gi  nghiên c xây d  tài
lu vn c mình trên c s tham kh các ngu tài li   gi thi 
ph TÀI LI THAM KH và không sao chép t b k m ngu nào
khác.
Tác gi lu vn xin 





Tác giả luận văn
Đào Tùng Thịnh



ii
LỜI CẢM ƠN

 này tôi 
  Tôi xin chân
thành 

, gi 
  
 n 
ý chân thành 

 .
T các , 
và nh ai  lu vn này.




Hà Nội, tháng 12 năm 2009
Học viên
Đào Tùng Thịnh




iii
MỤC LỤC

 i
 ii
 iii
 v
 vi
 vii
 1
Chương 1- TỔNG QUAN 2
1.1  2
 2
 3
 3
 4
 4
1.6.1 Google () 4
1.6.2 Ask ( ) 5
1.6.3 Exalead ( 5
1.6.4 Google Scholar ( 5
1.6.5 ( 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  6
Chương 2 - CƠ SỞ LÝ THUYẾT 7
2.1 .NET Framework 7
 7

 8
se 9
 10
 12
 13
 14
 18
 18


iv
 27
 34
 34
 43
Chương 3 - CÀI ĐẶT THUẬT TOÁN 44
 44
p trình 44
 44
 45
 45
 45
 45
 46
 46
 46
 59
 62
Chương 4 - KẾT LUẬN 63
 63

 63
 64


v
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
1
CSDL
Cơ sở dữ liệu
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


7
URI
Uniform Resource Identifier
8
CLR
Common Language Runtime
9
RE
Regular Expression
10
Q&A
Question and Answer
11
NXB
Nhà xuất bản
12
Tr
Trang


vi
DANH MỤC CÁC BẢNG

 8
 9
 15
 23
 24
 25

 28
  28
  29
 29
 29
  30
 30
 31
 31
 46
 49
 50
 51
 52
 52
 54
 54
 56
 57
 59









vii

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

 7
 25
 34
ng 46
 47
 47
 48
 49
 50
 51
 52
 53
 54
Hình 14. Màn hình chín 55
 55
 57
 58
 59





1
MỞ ĐẦU

Ngày nay cu cách m Khoa h  Công ngh ang phát tri m
cách nhanh chóng, nó  làm thay  n kinh t toàn c và tr thành l

l s xu tr ti. Khoa h  Công ngh  a nhân lo chuy d t
n vn minh công nghi sang n kinh t tri th. Trong  CNTT là m
trong các ngành m nh  a n kinh t toàn c có m b phát tri
 phá m m. Nó có t quan tr cho m qu gia nh là  v các
n ang phát tri mu hoà nh v n kinh t th gii nh n ta.
M  d quan tr c CNTT là vi áp d vào qu lý,  bi
trong l v qu lý nhà n, qu lý kinh t - xã h. Nó giúp cho các nhà
qu lý a ra nh quy  chính xác, k th, x lý nhanh chóng các tình
hu nh nâng cao hi qu qu lý.
V

ng

 Thông


CSDL 





CSDL, chúng ta có 
CSDL


 





2
Chương 1- TỔNG QUAN
1.1 Đặt vấn đề

tìm trên các W



CSDL 


CSDL, chúng ta có
             CSDL.




 
 


xâu  
. 
  ta 
và trích rút  
“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  
 c. 
  khai thác 
 tri t 
  ?

 T
Ask, Exalead, Scirus


3
   



chung  

 

vtrên 
.
1.3 Mục đích, yêu cầu của luận văn
Khi ta  (
), ta i google  tìm

 xâu
    danh sách
các website .  làm cho ta 
 
và        

doanh.
  trên 
 nhanh  

kin. 

“mode” 
   .

xây  các    và
c nhanh các

1.4 Ý nghĩa, lợi ích của luận văn




4

 
1.5 Nội dung nghiên cứu


Các vấn đề cần nghiên cứu để thực hiện đề tài:
 
  
 
 T  
Luận văn này được tổ chức thành 4 chương như sau:
  TNG QUAN: cu 

 
làm gì,  
  : c
 ,   CSDL và các
.
  :  t
  , 
 .
  : c


1.6 Một số công cụ tìm kiếm
            
 tác gi xin
   
1.6.1 Google ()
             
 thông tin 
. 




5
1.6.2 Ask ( )




 , k



     &A, giúp
 



1.6.3 Exalead (
Exalead  . 



.  ph 
  

“thị trường chứng khoán việt nam”
 danh sách m   Exalead


1.6.4 Google Scholar (






     

















 (

, 



, , 


 ,)   . 






 









6




 .  Scholar








   


Links- 








 
















 .
1.6.5 (
Scirus  . 


  , 
 ,   
.
1.6.6 Xalo(www.xalo.vn)
Công ty Tinh Vân 

  2008.
H  có  
1.6.7 Timnhanh (www.timnhanh.com)
Timnhanh v    thông         
           
-
1.6.8 Vatgia (www.vatgia.com)
Vatgia l


; 

1.6.9 Baamboo (www.baamboo.com)
 


1.7 Kết luận chương
này trình bày  
              




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

2.1 .NET Framework
  
      cho
 


.Net Framework là  
 dên
 khác nhau  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:
 ET và Windows Forms.
- ASP.NET             
().
- 

  


  


8

  
 
 chúng ET 
     ET       (Common Language
Runtime).
2.1.2 Lớp WebRequest và WebResponse

WebRequest và WebResponse 
System.Net. Hai l này  xây d  ph v cho l trình m giao ti
gi Client và Server. Vì lu vn là  tài ch y nghiên c sâu v các thu
toán tìm ki và trích rút thông tin trên m internet do  hai l WebRequest
và WebResponse có ý ngh cc k quan tr trong vi l trình th nghi.
WebRequest và WebResponse tng  
  g yêu c và  thông tin trên internet
HTTP. WebRequest 
 Website    WebResponse        t
WebServer.  t (instance) WebRequest 
Create(URL).  WebResponse 
GetResponseStream() Stream.

Thuộc tính/Phương thức
Diễn giải
System.Net.WebRequest.RequestUri


System.Net.WebRequest.Headers


System.Net.WebRequest.ContentLength


System.Net.WebRequest.ContentType


System.Net.WebRequest.Credentials



System.Net.WebRequest.PreAuthenticate


System.Net.WebRequest.GetRequestStream()


System.Net.WebRequest.GetResponse()

Bảng 1. Một số thuộc tính và phương thức của lớp WebRequest


9

Thuộc tính/Phương thức
Diễn giải
System.Net.WebResponse.Headers

.
System.Net.WebResponse.ContentLength

server.
System.Net.WebResponse.ContentType
 
.
System.Net.WebResponse.GetResponseHe
ader(string headerName)

headerName.
System.Net.WebResponse.GetResponseStr
eam()

 .
Bảng 2. Một số thuộc tính và phương thức của lớp WebResponse

   WebRequest và
WebResponse 

protected void Button1_Click(object sender, EventArgs e)
{
string URL = "";
WebRequest request = WebRequest.Create(URL);
WebResponse response = request.GetResponse();
StreamReader reader = new
StreamReader(response.GetResponseStream());
string str = reader.ReadLine();
while(str != null)
{
txtBox1.text = txtBox1.text + str;
txtBox1.text = txtBox1.text + "\n";
str = reader.ReadLine();
}
}
2.1.3 Lớp HttpWebRequest và HttpWebResponse
LWebRequest và WebResponse  trong gói th vi
System.Net,  chúng  chúng.  chúng ta
 HttpWebRequest và HttpWebResponse tng   th
hi g yêu c và nh k qu tr v t Webserver.


10
 bên d  các  t HttpWebRequest và

HttpWebResponse thay th cho các  t WebRequest và WebResponse.

protected void Button1_Click(object sender, EventArgs e)
{
string URL = "";
HttpWebRequest request =
(HttpWebRequest)WebRequest.Create(URL);
HttpWebResponse response =
(HttpWebResponse)request.GetResponse();
String ver = response.ProtocolVersion.ToString();
StreamReader reader = new
StreamReader(response.GetResponseStream() );
string str = reader.ReadLine();
while(str != null)
{
txtBox1.text = txtBox1.text + str;
txtBox1.text = txtBox1.text + "\n";
str = reader.ReadLine();
}
}
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 hi tìm ki và trích rút thông tin t nhi ngu khác nhau trên
internet, s xu hi tr h chúng ta truy xu ph các website  b
m, các  tr khi có th truy xu
vào . Nh v  t website có yêu xác th chúng ta
 WebRequest.Credentials 
Một số kiểu xác thực mà website thường sử dụng:
 W Basic authentication hay Digest authentication, chúng
ta    
System.Net.NetworkCredential 

HttpWebRequest.Credentials.
 W Integrated Windows authentication, chúng ta 
    Chúng ta      tin   
 System.Net.CredentialCache.


11
 Website     chúng ta      
t  
System.Security.Cryptography.X509Certificates.X509Certificate,
và thêm 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);
requestB.Credentials = CredentialCache.DefaultCredentials;
requestB.PreAuthenticate = true;
// Xác thực người dùng bằng chữ ký điện tử.

HttpWebRequest requestC = (HttpWebRequest) WebRequest.Create(uri
Certificate);


12
X509Certificate cert =X509Certificate.CreateFromCertFile(@"c:\user.cer
");
requestC.ClientCertificates.Add(cert);
// (Bắt đầu xử lý trích rút thông tin.)
}
}
2.2 Biểu thức chính quy

  
 
.
 (regular expression) regexp, regex hay regxp
 
  và

 ình 
 ( C#, Java, PHP) 


 hai literal và
metacharacters.
 literal -z) mà chúng ta 

 Metacharacters là k 


 b 
^(From|To|Subject|Date):
 

.
-  


13
-  ^ cho b            
chúng ta 
-  Subject, Date literal
- Các ký t (, ), và | là nh metacharacters literal và

- metacharacter m hàng.
 
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
.  , \n.
  quy: sh.t
  
c i chung là nó hai ký
  .
\d -9]
\D không 
\s \f\n\r\t\v]
\S \f\n\r\t\v]
\w :  -zA-

Z_0-9]
\W :  [^a-zA-Z_0-9]
^   dòng
$   dòng
\A  
\z  
|   

[abc]
[a-z] -- 
[^abc] 
a hay b hay c.
()  (group - 
trong  (pattern) .V
? 
*   


14
+  Ví  
{n} , k

{n, }  AA, AAA

{m,n}  -
AA,AAA,AAAA.
2.2.2 Các lớp thao tác với biểu thức chính quy trong .NET
Trong    
            
             .

System.Text.RegularExpression là không gian tên trong 
.
a. Lớp Regex
 Regex     
).   
mà   .

Thuộc tính/Phương thức
Diễn giải
Options
T
constructor Regex.
RightToLeft
N giá bi th
chính quy .
GetGroupNames()
T
bi th chính quy.
GetGroupNumbers()
T
m 
GroupNameFromNumber()


IsMatch()
Tbi th
chính quy 
không trên m (pattern).
Match()
Dò tìm trên m (pattern) 

bi th chính quy 




15
Matches()
D
bi th chính quy có hay không


Replace()
Cho phép 
bi th
chính quy 

Split()
Chia 

bi th chính quy.
Unescape()
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ó:

using System;
using System.Collections.Generic;
using System.Text;

using System.Text.RegularExpressions;

namespace RegexTesting
{
class Program
{
static void Main(string[] args)
{
string chuoi = "Mot, Hai, Ba, Bon, Nam.";
//tạo pattern
//luật: xem chuỗi nào có chứa khoảng trắng hay dấu phẩy
string pattern = " |, ";
Regex regex = new Regex(pattern);
string[] sKQ = regex.Split(chuoi);
foreach (string subString in sKQ)
{
Console.WriteLine(subString);
}


16
Console.ReadLine();
}
}
}

Kết quả:
Mot
Hai
Ba

Bon
Nam.

b. Lớp Match

(match) y
 


 

using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace RegexTesting
{
class Program
{
static void Main(string[] args)
{
string chuoi = "123abcd456bdabc";
string pattern = "abc";
Regex regex = new Regex(pattern);
Match m = regex.Match(chuoi);
if (m.Success)
{



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

Console.ReadLine();
}
}
}

Kết quả:
Tim thay chuoi con abc o vi tri thu 3 trong chuoi

c. Lớp MatchCollection
 

       Regex.Matches



using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace RegexTesting
{
class Program

{
static void Main(string[] args)
{
//tập hợp chứa những so khớp
MatchCollection mc;
//1 chuỗi thử nghiệm
string chuoi = "Tim chuoi con trong chuoi to";
//tạo pattern
string pattern = "chuoi";

×