Tải bản đầy đủ (.docx) (22 trang)

TỔNG QUAN VỀ RÚT TRÍCH THÔNG TIN

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 (476.37 KB, 22 trang )

Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
MỤC LỤC
Trang 1
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
DANH MỤC HÌNH ẢNH
Trang 2
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
DANH MỤCBẢNG
Trang 3
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
LỜI MỞ ĐẦU
Ngày nay việc ứng dụng công nghệ kĩ thuật cao vào đời sống đang là một đòi hỏi
bức thiết.Một trong những lĩnh vực đó là trí tuệ nhân tạo, mà một phần quan trọng của nó
là Hệ chuyên gia. Hệ chuyên gia là một hệ thống chương trình máy tính chứa các thông
tin tri thức và các quá trình suy diễn về một lĩnh vực cụ thể nào đó dể giải quyết các bài
toán khó màđòi hỏi sự uyên bác của các chuyên gia trong ngành.
Hiện nay hệ chuyên gia được ứng dụng trong nhiều lĩnh vực khác nhau: ví dụ như
công nghệp, nông nghiệp, khoa học máy tính, thương mại khí tượng, y học, quân sự, hoá
học Đặc biệt trong giai đoạn gần đây việc ứng dụng hệ chuyên gia vào xây dựng hệ
thống trích rút thực thể ứng dụng trong phân tích kinh tế đang được phát triển mạnh.
Thông tin kinh tế là yếu tố cực kỳ quan trọng cho doanh nghiệp để nắm bắt được
tin tức thị trường, xu thế kinh tế giúp bắt kịp với các doanh nghiệp khác. Hiện nay có rất
nhiều website đăng tải rất nhiều các thông tin, tin tức về kinh tế và các tin tức khác.Nhiều
nguồn tin có thể gây lẫn với nhau hoặc có thể trùng lặp tin. Với nguồn thông tin vô cùng
phong phú như vậy cần phải có một phương thức hoặc công cụ nào đó có khả năng tìm
kiếm, trích xuất thông tin trên web và lưu trữ lại thông tin đó theo ý muốn của con người,
một cách tự động và hiệu quả. Vì thế chúng em đã lựa chọn đề tài này.
Tên đề tài :
“Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế”
Trong quá trình làm đề tài,do chúng em còn ít kinh nghiệm nên không tránh khỏi
nhiều sai sót.Kính mong các thầy,cô giáo thông cảm và bổ sung,đóng góp ý kiến để cho


đề tài của chúng em được hoàn thiện hơn, nhóm chúng em xin chân thành cảm ơn !
Trang 4
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
CHƯƠNG 1 :TỔNG QUAN VỀ RÚT TRÍCH THÔNG TIN
1.1 Tổng quan về rút trích thông tin.
Không giống như việc hiểu toàn bộ văn bản, các hệ thống trích chọn thông tinchỉ
cốgắng nhận biết một số dạng thông tin đáng quan tâm. Có nhiều mức độ tríchchọn thông
tin từ văn bản như xác định các thực thể (Element Extraction), xác địnhquan hệ giữa các
thực thể (Relation Extraction), Extraction), xác định và theo dõi các sự kiện vàcác kịch
bản (Event and Scenario Extraction and Tracking), xác định đồng tham chiếu(Co-
reference Resolution) Các kĩ thuật được sử dụng trong trích chọn thông tin gồmcó:
phân đoạn, phân lớp, kết hợp và phân cụm.
Hình 1Minh họa một hệ thống trích chọn thông tin.
Kết quả của một hệ thống trích chọn thông tin thường là các mẫu (template) chứa
mộtsốlượng xác định các trường (slots) đã được điền thông tin.
Rút trích thông tin không đòi hỏi hệ thống phải đọc hiểu nội dung của tài liệu văn
bản, nhưng hệ thống phải có khả năng phân tích tài liệu và tìm kiếm các thông tin liên
quan mà hệ thống mong muốn được tìm thấy.
Để có một hệ thống trích chọn thông tin đầu tiên chúng ta phải có một hệthống nhận dạng
thực thể và tiếp sau mới tính đến phân loại quan hệ. Bài toán nhận biết các loại thực thể
là bài toán đơn giản nhất trong số các bài toán trích chọn thông tin, tuy vậy nó lại là bước
cơ bản nhất trước khi tính đến việc giải quyết các bài toán phức tạp hơn trong lĩnh vực
Trang 5
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
này. Ngoài ứng dụng trong hệ thống trích chọn thông tin, nó còn có thể được áp dụng
trong tìm kiếm thông tin (Information Retrieval), dịch máy (machine translation) và hệ
thống hỏi đáp (question answering).
Các kỹ thuật rút trích thông tin có thể áp dụng cho bất kỳ tập tài liệu nào mà chúng
ta cần rút ra những thông tin chính yếu, cần thiết cũng như các sự kiện liên quan. Các kho
dữ liệu văn bản về một lĩnh vực trên internet là ví dụ điển hình, thông tin trên đó có thể

tồn tại ở nhiều nơi khác nhau, dưới nhiều định dạng khác nhau. Sẽ rất hữu ích cho các
khảo sát, ứng dụng liên quan đến một lĩnh vực nếu như những thông tin lĩnh vực liên
quan được rút trích và tích hợp lại thành một hình thức thống nhất và biểu diễn một cách
có cấu trúc. Khi đó thông tin trên internet sẽ được chuyển vào một cơ sở dữ liệu có cấu
trúc phục vụ cho các ứng phân tích và khai thác khác nhau.
Rút trích thông tin trên web là một đề tài quan trọng từ giúp chuyển đổi nội
dungtrang web theo hình thức trình bày phục vụ người duyệt web thành các nguồn
thôngtin được chuẩn hóa phục vụ nhiều nhu cầu đặc biệt như so sánh sản phẩm, tìm kiếm
thông minh, chuyển đổi nội dung phục vụ thiết bị di động, mashup
1.2 Giới thiệu về Rút trích thông tin.
1.2.1 Khái niệm.
Rút trích thông tin (IE – Information Extraction) là quá trình lấy thông tin từ các
nguồn ở những định dạng không đồng nhất và chuyển thành một dạng đồng nhất. Dữ liệu
sau khi rút trích được sử dụng, trình bày trực tiếp cho người dùng, lưu vào cơ sở dữ liệu
để xử lý sau đó hay sử dụng cho những hệ thống tìm kiếm thông tin như một dữ liệu đã
qua bước tiền xử lý.
1.2.2 So sánh rút trích thông tin và tìm kiếm thông tin.
Tìm kiếm thông tin (IR – Information Retreival) là phương pháp tìm kiếm những
tài liệu có thông tin phù hợp với những tiêu chí đặt ra ban đầu trong một khối lượng lớn
tài liệu. IE và IR có điểm chung là đem đến cho người dùng những thông tin cần thiết
nhưng IE và IR hoàn toàn khác nhau :
+ Hệ thống IR tập trung vào việc tìm kiếm những văn bản liên quan và đem đến
cho người dùng.
+ Hệ thống IE là phân tích văn bản và chỉ mang đến cho người dùng những mẫu
tin phù hợp mà người dùng quan tâm.
Ví dụ: lấy bối cảnh trong nhà sách, một hệ thống IE sẽ tìm kiếm tất cả các tên và
địa chỉ công ty có trong tất cả những tài liệu trong nhà sách. Thông tin này sẽ được định
Trang 6
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
dạng rõ ràng theo một cấu trúc nào đó và trình bày cho người dùng. Trong khi đó, hệ

thống IR sẽ tìm kiếm ra những cuốn sách có liên quan đến một công ty nào đó. Thông tin
công ty đưa vào tức là yêu cầu của người dùng và kết quả thu được từ hệ thống IR là tập
hợp những cuốn sách thỏa mãn yêu cầu đó.
Tùy vào từng ngữ cảnh, từng bài toán mà độ phức tạp của hệ thống sẽ khác nhau
nhưng cũng có trường hợp IE kết hợp với IR trong một hệ thống nào đó.
1.2.3 Hệ thống rút trích thông tin từ các trang web.
1.2.3.1 Khái niệm.
Rút trích thông tin từ web là quá trình lấy thông tin từ các trang web và chuyển
thành thành dạng đồng nhất.
Nhiệm vụ chính của các trang web tìm kiếm hiện nay trả về cho người dùng những
tài liệu có sự tương thích cao với những từ khóa mà người dùng đưa vào. Tuy nhiên,
trong khối lượng thông tin vô cùng khổng lồ trên web như hiện nay, tồn tại rất nhiều các
đối tượng trong những trang web nổi hoặc Nn mà người dùng mong muốn như: thông tin
con người, sản phẩm, bài báo, thông tin về tổ chức, các sự kiện,…. Nếu như các đối
tượng này được rút trích ra từ web rồi tổng hợp lại và cho người dùng tìm kiếm theo một
tiêu chí hoặc theo một chủ đề nào đó, người dùng sẽ có được một công cụ tìm kiếm
hướng đối tượng hiệu quả và thỏa mãn hơn.
1.2.3.2Phân loại hệ thống rút trích thông tin từ web.
Ngày nay, có rất nhiều hệ thống rút trích thông tin từ web được các nhà phát triển
nghiên cứu và xây dựng. Các tiêu chí để phân loại một hệ thống rút trích thông tin từ web
như sau :
- Dựa vào mức độ can thiệp của con người trong quá trình rút trích thông tin : các
hệ thống rút trích thông tin có thể được chia ra làm 4 loại: thủ công, có giám sát, bán
giám sát và không giám sát. Trong đó, các hệ thống hoàn toàn tự động, không có sự can
thiệp của con người đang được các nhà nghiên cứu quan tâm nhất
- Dựa vào tầng dữ liệu được rút trích: một trang web sẽ có nhiều trang HTML, một
trang HTML sẽ có nhiều record và một record sẽ có nhiều thuộc tính. Do đó, dựa vào kết
quả thông tin rút trích được ở tầng nào, các hệ thống rút trích được chia ra làm 4 loại:
tầng thuộc tính (attribute), tầng record, tầng trang HTML (page) và tầng trang web (site).
Hiện tại các hệ thống xử lý ở tầng thuộc tính và record chiếm đa số. Và cho đến nay, vẫn

chưa thấy xuất hiện các hệ thống rút trích thông tin ở tầng site.
Trang 7
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
- Dựa vào các phương pháp rút trích thông tin : các hệ thống rút trích thông tin
cũng được chia thành 3 dạng :
+ Các hệ thống dựa trên các phương pháp thủ công: sử dụng các phương
pháp gán nhãn, các cách lấy thông tin trực tiếp từ cơ sở dữ liệu hoặc từ các dịch vụ
web (web service).
+ Các hệ thống dựa trên các phương pháp heuristic: các phương pháp thống
kê, tập luật, sử dụng các mẫu thông tin, dựa vào cấu trúc cây,… được sử dụng để
rút trích thông tin.
+ Các hệ thống dựa trên các phương pháp học: sử dụng các phương pháp
mô hình Markov, ngữ nghĩa, học trên cấu trúc cây,… để giúp cho các hệ thống
hiểu và rút trích thông tin chính xác hơn.
1.2.3.3 Khảo sát một số ứng dụng rút trích thông tin từ web.
Web-Harvest là công cụ mã nguồn mở để rút trích dữ liệu Web. Công cụ cung cấp
một phương pháp để thu thập các trang Web mong muốn và rút trích dữ liệu hữu ích từ
chúng. Đó là sử dụng các kỹ thuật thao tác trên text/xml như XSLT, XQuery và biểu thức
quy tắc. Do các sử dụng một số logic nên cần thiết để mô tả quá trình làm thế nào để lấy
dữ liệu mong muốn từ nội dung hỗn hợp. Tất cả các thủ tục rút trích trong Web-Harvest
là người dùng định nghĩa thông qua các tệp tin cấu hình XML.Mỗi tập tin cấu hình mô tả
các trình tự xử lý thực hiện một số nhiệm vụ để được mục tiêu cuối cùng.
RoadRunner hoạt động dựa trên thuật toán học không giám sát. Mục đích của
công cụ là rút trích được các dữ liệu từ những trang web có lượng lớn dữ liệu và cấu trúc
ít thay đổi.RoadRunner hoạt động bằng cách so sánh cấu trúc HTML của các trang mẫu
cùng loại và tạo ra một lược đồ cho các dữ liệu chứa trong các trang từ những thẻ HTML.
Dynamo nhấn mạnh việc rút trích dữ liệu qua các trang web ở những trang HTML
tĩnh và cung cấp dịch vụ mới. Những công cụ hiện nay khi rút trích hoàn tất thường gặp
nhiều khó khăn để quản lý việc tạo ra các tập dữ 25 liệu có thể hiển thị một cách đơn giản
nhất (RSS feeds) nhưng lại gặp một số hạn chế như nguồn cấp dữ liệu cũ có thể không

được quan tâm và thường bị xóa từ các máy chủ và máy chủ truyền thống không thể thực
hiện các truy vấn trực tiếp. Ngược lại, với Dynamo sẽ :
+ Tự động phát sinh RSS từ những dữ liệu của trang web tĩnh.
+ Lưu trữ các nguồn cung cấp dữ liệu theo thứ tự thời gian.
+ Truy vấn và tổng hợp thành các dịch vụ web.
Trang 8
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
Nhận xét: Các công cụ rút trích thông tin từ web này phần lớn chỉ có thể áp dụng
cho các trang web nổi. Vậy đối với các trang web ẩn, chúng ta có thể sử dụng lại các
công cụ này hay phải xây dựng một hệ thống mới. Nếu các công cụ này có thể tái sử
dụng thì đối với các nhà phát triển, việc tái sử dụng sẽ được tiến hành như thế nào?
1.3 Bài toán cần giải quyết.
Rút trích thông tin từ các trang web dựa trên chủ đề là một trong những hướng
nghiên cứu nhận được nhiều quan tâm. Vấn đề trở nên quan trọng khi các trang web đang
ngày một gia tăng và nhu cầu sử dụng thông tin của người dùng được nâng cao.
Những công cụ phân tích các luồng và các chủ đề thông tin trở nên cần thiết khi
giúp người dùng có một cái nhìn tổng quát và định hướng thông tin tốt hơn. Những nhân
viên làm việc với các tập dữ liệu văn bản lớn như các nhà làm luật, các nhà báo, những
nhà thống kê … có thêm công cụ để duyệt qua các mảng thông tin dễ dàng hơn theo các
chủ đề.
Đối với những trang web ẩn với nội dung động, thông thường người dùng phải sử
dụng các trang tìm kiếm thông tin của trang web đó.Điều này làm cho người dùng phải
tốn rất nhiều thời gian và chi phí để có thể có được thông tin mình muốn đặc biệt là các
thông tin từ các trang web ẩn.
Hiện nay có nhiều công cụ đã được các nhà nghiên cứu phát triển. Tuy nhiên các
công cụ này thường được dùng với 1 chủ đề cụ thể kèm một số ít trang web Nn và một
thuật toán cố định như về “Chuyến bay”, về “Việc làm”… Điều này làm cho các nhà phát
triển rất khó khăn khi mở rộng hay thay đổi các thành phần trong hệ thống. Các nhà phát
triển mong muốn có được một hệ thống có thể dễ dàng bổ sung hay thay đổi các chủ đề,
các trang web, các thuật toán… cũng như dễ dàng cho công tác bảo trì và mở rộng từ các

thành phần trong hệ thống.
Bảng 1 So sánh hệ thống xây dựng và máy tìm kiếmliên hợp
So
Sánh
Máy tìm kiếm liên hợp Hệ thống xây dựng
Giống
nhau
Gửi yêu cầu đến các
đối tượng web và xử lý kết
quảtrả về
Gửi yêu cầu đến các đối tượng
web và xử lý kết quả trả về
Là thành phần trung
gian nên không có lưu dữ
liệu trang web
Là thành phần trung gian nên
không có lưu dữ liệu trang web
Dữ liệu trả về được
xử lý có thể hiển thị cho
Dữ liệu trả về được xử lý có
thể hiển thị cho người dùng hoặc lưu
Trang 9
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
người dùng hoặc lưu trữ trữ
Khác
nhau
Tìm kiếm thông tin Rút trích thông tin
Đối tượng gửi yêu cầu
là các trang tìm kiếm
Đối tượng gửi yêu cầu là các

trang web ẩn
Số lượng đối tượng cần
gửi yêu cầu là ít
Số lượng các trang web Nn cần
gửi yêu cầu là nhiều
Gửi từ khóa tìm kiếm Gửi các thuộc tính ứng với chủ đề
rút trích
Tốn ít chi phí cho việc
xây dựng các thuộc tính form
Tốn nhiều chi phí và tài nguyên
cho việc xây dựng và lưu trữ các thuộc
tính form
Tập trung vào các
thuật toán xử lí kết quả từ các
máy tìm kiếm khác như tổng
hợp và xếp hạng.
Tập trung vào cách thức xây
dựng các thuộc tính form, gửi các
yêu cầu đến các trang web Nn và rút
trích kết quả trảvề
1.4 Các kỹ thuật rút trích thông tin.
Dữ liệu đầu vào cho bài toán trích rút thông tin rất đa dạng và phong phú.Dữ liệu
có thể là dạng không cấu trúc, bán cấu trúc hoặc có cấu trúc, dữ liệu có thể được trích rút
trực tuyến (on-line) hoặc ngoại tuyến (off-line). Chi tiết như sau:
 Dữ liệu không cấu trúc: Dữ liệu không cấu trúc thường dùng để chỉ dữ liệu ở
dạng tự do và không cần có cấu trúc định nghĩa sẵn ví dụ như ngôn ngữ tự nhiên.
 Dữ liệu có cấu trúc: Dữ liệu có cấu trúc thường dùng để chỉ dữ liệu lưu trữ trong
các hệ quản trị cơ sở dữ liệu quan hệ như MS SQL Server hay MySQL, trong đó các
thực thể và các thuộc tính được định nghĩa sẵn.
 Dữ liệu bán cấu trúc: Là dữ liệu có cấu trúc nhưng không hoàn toàn tường minh,

nó không tuân theo những cấu trúc, cách thức cấu trúc của bảng và các mô hình dữ liệu
trong cơ sở dữ liệu nhưng nó chứa những thẻ, những đánh dấu tới những phần tử ngữ
nghĩa riêng biệt của các bản ghi và các trường riêng biệt bên trong dữ liệu .Dữ liệu từ
các trang web là một dạng tiêu biểu cho dữ liệu bán cấu trúc. Trong luận văn này tập
trung vào giải quyết bài toán trích rút thông tin từ dữ liệu bán cấu trúc ngoại tuyến (thu
thập dữ liệu về và trích rút thông tin).
Có nhiều cách tiếp cận để giải quyết bài toán trích rút thông tin, tuy nhiên nếu dựa
trên đặc trưng dữ liệu thì bài toán trích rút thông tin có thể giải quyết bằng một số kỹ
thuật sau:
Trang 10
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
 Dữ liệu có cấu trúc: Được lưu trữ trong CSDL, việc lấy thông tin thông qua các
truy vấn người dùng (mệnh đề SELECT)
 Dữ liệu bán cấu trúc: Các trang web đại diện cho dữ liệu loại này. Có hai kỹ
thuật thường xuyên được dùng để trích rút thông tin trên web đó là sử dụng cấu trúc cây
DOM và sử dụng biểu thức chính quy.
 Dữ liệu không có cấu trúc: Với dữ liệu không có cấu trúc, bài toán trích rút
thông tin có thể coi là bài toán nhận dạng và trích rút thực thể như: tên người, tên tổ
chức, vị trí, ngày tháng, số…
Trang 11
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
CHƯƠNG 2 : HỆ THỐNG TRÍCH RÚT THỰC THỂ ỨNG DỤNG TRONG PHÂN
TÍCH KINH TẾ
2.1 Bài toán trích rút thông tin.
Phát biểu bài toán trích rút thông tin:
Trích rút thông tin (Information Extraction – IE) là một lĩnh vực của khai phá dữ
liệu (Data Mining) có nhiệm vụ lấy ra các mẫu thông tin “có ích” đối với người dùng.
Theo Jaeyoung Yang và cộng sự, trích rút/trích xuất thông tin (IE) là bài toán nhận
dạng những thành phần thông tin cụ thể của một văn bản, những thành phần này chính là
hạt nhân tạo nên nội dung ngữ nghĩa của văn bản đó [8].

Nói một cách đơn giản, trích rút/trích xuất thông tin là quá trình xử lý thông tin,
đầu vào là một văn bản và đầu ra là các thông tin “có giá trị” với người dùng. Thông tin
“có giá trị” ở đây có thể hiểu là các thực thể, các thuộc tính mô tả thực thể và mối quan
hệ giữa các thực thể. Dữ liệu được trích rút ra có nội dung và cấu trúc thỏa mãn yêu cầu
người dùng.
Có thể phát biểu bài toán trích rút thông tin như sau:
Đầu vào: Văn bản có cấu trúc bất kỳ.
Đầu ra: Thông tin “có ích” được tổ chức dưới dạng cấu trúc.
2.2 Yêu cầu và mục tiêu của hệ thống
• Yêu cầu:
- Đề tài : Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh
tế.
• Mục tiêu:
- Xây dựng hệ thống tổng hợp tin kinh tế từ trang web (chỉ lấy những tin về
kinh tế).
- Tổng hợp lại thành bảng bao gồm: tên công ty, địa chỉ, doanh thu trong
từng năm.
Trang 12
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
2.3 Xây dựng website tổng hợp tin kinh tế.
2.3.1RSS là gì ?
RSS (Really Simple Syndication) là một dạng thức công nghệ cung cấp và khai
thác mọi thông tin trên Internet theo nhu cầu của người dùng, tạm dịch là “Giao thức
cung cấp thông tin đơn giản theo thời gian thực”. Đây là một dạng công nghệ săn tin
“giùm” cho người đọc trên toàn bộ những trang web có tích hợp RSS, thay vì mất thời
gian bật hết trang web này đến trang web khác để đọc tin.
Công nghệ của RSS cho phép người dùng Internet có thể đặt mua thông tin từ các
websites có cung cấp khả năng RSS (RSS feeds).Chúng thường là các site có nội dung
thay đổi và được thêm vào thường xuyên.
Định dạng RSS cung cấp nội dung web và tóm lược nội dụng web cùng với các

liên kết đến phiên bản đầy đủ của nội dung tin đó, và các siêu-dữ-liệu (meta-data) khác.
Thông tin này được cung cấp dưới dạng một tập tin XML được gọi là một RSS feed,
webfeed, RSS stream, hay RSS channel. Cùng với việc hỗ trợ cung cấp chia sẻ thông tin,
RSS cho phép những độc giả thường xuyên của một website có thể theo dõi các cập nhật
của site đó dùng một aggregator.
2.3.2 Hệ thống tổng hợp tin kinh tế.
• Hệ thống của chúng emthực hiện trích rút tin kinh tế từ các website có hỗ trợ
đọc tin thông qua RSS như Dantri, Vnexpress, Vietnamnet,
• Các bước lấy tin tự động qua RSS :
- Bước 1: Lấy link rss mục kinh tế của website hỗ trợ rss.
- Bước 2: Xem cấu trúc xml.
- Bước 3: Hiển thị trang web theo cấu trúc.
2.4 Trích rút thực thể dựa theo các mẫu biểu thức chính qui .
Trích chọn thông tin là lĩnh vực quan trọng trong khai phá dữ liệu, trong đó trích
chọn thực thể là một bài toán con, cơ bản nhưng đóng vai trò hết sức quan trọng.Nó có
thể được sử dụng để hỗ trợ cho phương pháp tìm kiếm mới – tìm kiếm hướng thực thể, và
góp phần quan trọng cho việc xây dựng web ngữ nghĩa.
Đôi khi bạn cần kiểm tra dữ liệu nhập vào có đúng với cấu trúc và nội dung được
quy định trước hay không hay bạn muốn trích rút nội dung theo một quy chuẩn nào đó
trong văn bản . Ví dụ, bạn muốn bảo đảm người dùng nhập địa chỉ IP, số điện thoại, hay
địa chỉ e-mail hợp lệ. Khi đó, bạn sẽ cần tới Regular Expression (RegEx), hay còn gọi là
Trang 13
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
'Biểu thức chính quy". Ngoài việc kiểm tra dữ liệu đầu vào biểu thức chính quy còn được
dùng để giải quyết bài toàn rút trích dữ dữ liệu trong dữ liệu bán cấu trúc (các trang web).
2.4.1 Biểu thức chínhquy.
Biểu thức chính quy (tiếng Anh: 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ư Perl 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.
Bộ các trình tiện ích (gồm trình biên tập sed và trình lọc grep) đi kèm các bản phân phối
Unix có vai trò đầu tiên trong việc phổ biến khái niệm biểu thức chính quy. Việc sử dụng
Regex sẽ giúp ta loại bỏ được các dữ liệu không hợp lệ trong quá trình nhập liệu.
Khi ứng dụng nhận dữ liệu từ người dùng hoặc đọc dữ liệu từ file, bạn nên giả
định dữ liệu này là chưa chính xác và cần được kiểm tra lại. Một nhu cầu kiểm tra khá
phổ biến là xác định các số điện thoại, số thẻ tín dụng, địa chỉ e-mail có đúng dạng hay
không. Việc kiểm tra cấu trúc và nội dung của dữ liệu không đảm bảo dữ liệu là chính
xác nhưng giúp loại bỏ nhiều dữ liệu sai và đơn giản hóa việc kiểm tra sau này. Biểu thức
chính quy (regular expression) cung cấp một cơ chế rất tốt để kiểm tra một chuỗi có đúng
với cấu trúc quy định trước hay không, do đó bạn có thể lợi dụng tính năng này cho mục
đích kiểm tra dữ liệu nhập.
2.4.2 Xây dựng một biểu thức chính quy.
Trước tiên, bạn phải xác định cú pháp của biểu thức chính quy cho phù hợp với
cấu trúc và nội dung của dữ liệu cần kiểm tra, đây là phần khó nhất khi sử dụng biểu thức
chính quy. Biểu thức chính quy được xây dựng trên hai yếu tố: trực kiện (literal) và siêu
ký tự (metacharacter) :
- Trực kiện mô tả các ký tự có thể xuất hiện trong mẫu mà bạn muốn so trùng
- Siêu ký tự hỗ trợ việc so trùng các ký tự đại diện (wildcard), tầm trị, nhóm,
lặp, điều kiện, và các cơ chế điều khiển khác
Dưới đây là bảng liệt kê các siêu ký tự thường dùng :
Trang 14
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
Bảng 2.Bảng liệt kê các siêu ký tự thường dùng.
Siêu
ký tự
Mô tả
. Mọi ký tự trừ ký tự xuống dòng (\n)
\d Ký tự chữ số thập phân (digit)

\D Ký tự không phải chữ số (non-digit)
\s Ký tự whitespace (như khoảng trắng, tab )
\S Ký tự non-whitespace
\w Ký tự word (gồm mẫu tự, chữ số, và dấu gạch dưới)
\W Ký tự non-word
^ Bắt đầu một chuỗi hoặc dòng
\A Bắt đầu một chuỗi
$ Kết thúc một chuỗi hoặc dòng
\z Kết thúc một chuỗi
|
Ngăn cách các biểu thức có thể so trùng, ví dụ AAA|ABA|ABB sẽ
so trùng với AAA, ABA, hoặc ABB (các biểu thức được so trùng từ trái
sang)
[abc]
So trùng với một trong các ký tự trong nhóm, ví dụ [AbC] sẽ so
trùng với A, b, hoặc C
[^abc
]
So trùng với bất cứ ký tự nào không thuộc các ký tự trong nhóm,
ví dụ [^AbC] sẽ không so trùng với A, b, or C nhưng so trùng với B, F,…
[a-z]
So trùng với bất kỳ ký tự nào thuộc khoảng này, ví dụ [A-C] sẽ so
trùng với A, B, hoặc C
()
Xác định một biểu thức con sao cho nó được xem như một yếu tố
đơn lẻ đối với các yếu tố được trình bày trong bảng này
?
Xác định có một hoặc không có ký tự hoặc biểu thức con đứng
trước nó, ví dụ A?B so trùng với B, AB, nhưng không so trùng với AAB
*

Xác định không có hoặc có nhiều ký tự hoặc biểu thức con đứng
trước nó, ví dụ A*B so trùng với B, AB, AAB, AAAB,…
+
Xác định có một hoặc có nhiều ký tự hoặc biểu thức con đứng trước
nó, ví dụ A+B so trùng với AB, AAB, AAAB,… nhưng không so trùng
với B
{n}
Xác định có đúng n ký tự hoặc biểu thức con đứng trước nó, ví dụ
A{2} chỉ so trùng với AA
{n,}
Xác định có ít nhất n ký tự hoặc biểu thức con đứng trước nó, ví dụ
A{2,} so trùng với AA, AAA, AAAA,… nhưng không so trùng với A
{n,m
}
Xác định có từ n đến m ký tự đứng trước nó, ví dụ A{2,4} so trùng
với AA, AAA, và AAAA nhưng không so trùng với A hoặc AAAAA
Khi dữ liệu cần kiểm tra càng phức tạp thì cú pháp của biểu thức chính quy cũng
càng phức tạp.Ví dụ, dễ dàng kiểm tra dữ liệu nhập chỉ chứa số hay có chiều dài tối thiểu,
nhưng kiểm tra một URL khá phức tạp.
Trang 15
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
2.4.3 Sử dụng biểu thức chính quy trong C#.
Một khi đã biết cú pháp của biểu thức chính quy, bạn tạo một đối tượng Regex
(nằm trong namespace System.Text.RegularExpression ) bằng cách truyền cho phương
thức khởi dựng của nó chuỗi chứa biểu thức chính quy. Sau đó, gọi phương thức IsMatch
của đối tượng Regex và truyền chuỗi cần kiểm tra, phương thức này trả về một giá trị
luận lý cho biết chuỗi có hợp lệ không. Cú pháp của biểu thức chính quy sẽ chỉ định
Regex so trùng toàn bộ chuỗi hay chỉ so trùng một phần của chuỗi.
Ta có thể sử dụng đối tượng Regex để kiểm tra nhiều chuỗi, nhưng không thể thay
đổi biểu thức chính quy được gắn cho nó; bạn phải tạo một đối tượng Regex mới tương

ứng với một cấu trúc mới.
2.4.4 Biểu thức chính quy trong trích rút thực thể.
Với một biểu thức chính qui, một otomat hữu hạn trạng thái có thể được xây dựng
và được sử dụng để so khớp sự xuất hiện của nó trong chuỗi tuần tự các trang web.Trong
quá trình này, dữ liệu có thể được trích xuất.
Ví dụ: Với mã HTML như sau:
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Tinh Tong cua cac so tu 1->n</title>
</head>
Để lấy được phần tiêu đề của đoạn mã này thì ta có thể xây dựng biểu thức chính
qui như sau: <head>.*?<title>(#text)</title>
Trích rút thực thể có tên:
• Trích rút tên công ty :
Trang 16
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
- Tên tổ chức hay công ty là một trong những đối tượng cơ bản xuất hiện trong
văn bản, đặc biệt là trong các website kinh tế, xã hội, thế giới Cùng với sự
phát triển của thương mại điện tử, sự toàn cầu hoá nên nhu cầu tìm hiểu về
tên tổ chức là liệt kê ra danh sách tên các tổ chức công ty xuất hiện trong văn
bản.
- Với bài toán trích rút tên công ty là bài toán cơ bản trong các bài toán trích
chọn thông tin. Bời vì trước khi khai phá được các tri thức về thuộc tính, tính
chất của các thực thể, thì đầu tiên chúng ta phải rút trích ra được chính xác
tên của thực thể đó. Tuy nó là bài toán cơ bản, nhưng tồn tại rất nhiều vấn đề
nhập nhằng làm cho việc rút trích gặp khó khăn. Đặc biệt với ngôn ngữ tiếng
việt, đa dạng trong cách viết, đôi khi nhập nhằng về ngữ pháp, và chưa có
một chuẩn nào cụ thể về chữ hoa, chữ thường cho tên tiếng Việt cũng như
xuất hiện nhiều từ “thừa” chỉ mang tính chất liệt kê, bổ nghĩa

- Thông thường, đi kèm với một tên tổ chức hay công ty được đề cập đến trong
văn bản tiếng Việt là các từ như “công ty, Cty, Doanh nghiệp, ” và tên công
ty thường được viết hoa chữ cái đầu tiên của một chữ . Ví dụ : Công ty Vàng
Bạc SJC. Tên của công ty không có một quy chuẩn nhất định nào mà nó phụ
thuộc vào người sáng lập ra công ty đó. Do vậy, không có một biểu thức
chính quy nào có thể trích rút được tất cả các tên tổ chức xuất hiện trong văn
bản.
- Biểu thức chính quy được sử dụng trong hệ thống có dạng:(Công\sty|Cty|
doanh\snghiệp|tập\sđoàn)\s[^\""\r\n\.\,\;\(\“\)\.\;\?\!]+
- Với biểu thức này hệ thống sẽ trích rút được tất cả các câu có chứa từ các từ
như: công ty, doanh nghiệp, tập đoàn, Cty, Công ty, Ví dụ: “Công ty Vàng
Bạc SJC đã niêm yết giá vàng ngày hôm nay.” hoặc chỉ là những câu đơn
thuần như “công ty của chúng tôi đã niêm yết giá vàng ngày hôm nay.”
- Bước tiếp theo chúng ta làm sạch dữ liệu để trích rút được tên tổ chức xuất
hiện trong câu vừa trích rút được nhờ biểu thức chính quy trên. Trong những
câu có chứa tên tổ chức thì sau đó sẽ có một từ nối đi kèm như: đã, được, tổ
chức, đề nghị, niêm yết, triển khai, có, Chính vì vậy, để trích rút được
chính xác tên thực thể chúng ta cần phải cắt bỏ phần văn bản “thừa” bắt đầu
từ các từ nối đó cho đến hết câu. Ví dụ với câu “Công ty Vàng Bạc SJC đã
niêm yết giá vàng ngày hôm nay.” Sau khi cắt bỏ đoạn văn bản bắt đầu từ từ
Trang 17
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
“đã” cho đến hết câu thì văn bản còn lại là “Công ty Vàng Bạc SJC ” đây
chính là dữ liệu chúng ta cần trích rút.
- Một vấn đề mới nảy sinh là, với những câu không chứa tên công ty nhưng
cũng có chứa những từ nối như “công ty của chúng tôi đã niêm yết giá vàng
ngày hôm nay.” Sau khi cắt bỏ đoạn văn bản bắt đầu từ từ “đã” cho đến hết
câu thì văn bản còn lại là “công ty của chúng tôi ” đây không phải là dữ liệu
tên thực thể mà chúng ta cần rút trích. Như chúng ta đã biết , đã là tên thì sẽ
có ít nhất một chữ được viết hoa. Vậy để giải quyết vấn đề trên, ta cần có một

biểu thức chính quy để kiểm tra xem dữ liệu đầu vào có chứa từ viết hoa hay
không. Nếu biểu thức được so trình thành công thì dữ liệu đầu vào được cho
là dữ liệu chuẩn cần trích rút. Biểu thức chính quy có dạng :
(\s[^\s\r\n\,\(\)\""|[a-z(đêôưâăơ)][^\r\n\s]+)+
• Trích rút địa chỉ :
- Quá trình trích rút địa chỉ cũng được thực hiện tương tự như trích rút tên tổ
chức. Thông thường, đi kèm với một chuỗi địa chỉ được đề cập đến trong văn
bản tiếng Việt là các từ như “Địa chỉ, tới, dc, Đc, ” và địa chỉ thường được
viết hoa chữ cái đầu tiên của mỗi chữ và xuất hiện dấu “-” hoặc “,” trong chuỗi
địa chỉ đó . Ví dụ: địa chỉ Liên Hồng – Đan Phượng – Hà Nội.
- Biểu thức chính quy trích rút đoạn dữ liệu chỉ địa chỉ công ty có dạng:
(Địa\schỉ\s:|tới|dc|Tới|Dc|Địa\schỉ|ĐC)(((\s?[^\-\s\r\n|[a-z(đêôưâăơ)]
[^\r\n\.\-\s]+)+)+[\-\s]+)+[^\-\s\r\n|[a-z(đêôưâăơ)][^\r\n\.\-\s\<]+
- Với biểu thức chính quy trên hệ thống sẽ tóm được những chuỗi văn bản bắt
đầu bằng các từ như: Địa chỉ, tới, Đc, địa chỉ, Dc và tiếp sau là chuỗi có dạng:
Ax - Ax - Ax. Trong đó , A là tất cả các ký tự hoa hoặc số và x là bất kỳ
ký tự thuộc bảng chữ cái .Với đoạn văn bản : “địa chỉ 379 Trần Hưng Đạo, P.
Mỹ Long, Thành phố Long Xuyên, An Giang. Tel. (076) 3845610. Fax: (076)
3844 749. Email: ”
- Chuỗi địa chỉ mà hệ thống trích rút được là:“địa chỉ 379 Trần Hưng Đạo, P. Mỹ
Long, Thành phố Long Xuyên, An Giang”
• Trích rút doanh thu :
• Quá trình trích rút địa chỉ cũng được thực hiện tương tự như trích rút tên tổ
chức. Thông thường, đi kèm với một chuỗi địa chỉ được đề cập đến trong văn
bản tiếng Việt là các từ như “Địa chỉ, tới, dc, Đc, ” và địa chỉ thường được
Trang 18
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
viết hoa chữ cái đầu tiên của mỗi chữ và xuất hiện dấu “-” hoặc “,” trong chuỗi
địa chỉ đó . Ví dụ: địa chỉ Liên Hồng – Đan Phượng – Hà Nội.
• Biểu thức chính quy trích rút đoạn dữ liệu chỉ địa chỉ công ty có dạng:

(Địa\schỉ\s:|tới|dc|Tới|Dc|Địa\schỉ|ĐC)(((\s?[^\-\s\r\n|[a-z(đêôưâăơ)]
[^\r\n\.\-\s]+)+)+[\-\s]+)+[^\-\s\r\n|[a-z(đêôưâăơ)][^\r\n\.\-\s\<]+
• Với biểu thức chính quy trên hệ thống sẽ tóm được những chuỗi văn bản bắt
đầu bằng các từ như: Địa chỉ, tới, Đc, địa chỉ, Dc và tiếp sau là chuỗi có dạng:
Ax - Ax - Ax. Trong đó , A là tất cả các ký tự hoa hoặc số và x là bất kỳ
ký tự thuộc bảng chữ cái .Với đoạn văn bản : “địa chỉ 379 Trần Hưng Đạo, P.
Mỹ Long, Thành phố Long Xuyên, An Giang. Tel (076)3845610. Fax (076)
3844749. Email :”. Chuỗi địa chỉ mà hệ thống trích rút
được là:“địa chỉ 379 Trần Hưng Đạo, P. Mỹ Long, Thành phố Long Xuyên, An
Giang”
• Trích rút doanh thu :
- Để trích rút được doanh thu trong dữ liệu chúng ta cần xác định được cấu trúc
thông thường khi chúng ta viết về doanh thu trong một văn bản. Chuỗi doanh
thu của một công ty thường bắt đầu bằng các từ như : Doanh thu, lãi, thu, đi
sau nó là một số thập phân và cuối cùng là một đơn vị tiền tệ như : VNĐ, $,
USD, triệu USD, Sau một thời gian tìm hiểu chúng tôi đã rút ra được biểu
thức chính quy có thể trích rút được chuỗi doanh thu như sau :
(Doanh\sthu|Lãi|Lợi\snhuận|lãi|doanh\sthu\sđạt)\s\d+([\,\.]?)\d+(\s?)
((USD)|(usd)|\$|(VNĐ)|(vnđ)|(tỷ\sđồng)|(tỷ\sđồng)|(tỷ\susd)|(tỷ\sUSD)|
(triệu\susd)|(triệu\seuro))
- Với biểu thức chính quy trên, hệ thống sẽ xử lý, duyệt tất cả văn bản và trích rút
ra được chuỗi doanh thu theo định dạng. Ví dụ với đoạn văn bản đầu vào “Công
ty hoạt động năm 2010 với điện tích nhà xưởng 35.000 m2. Hiện nay, Công ty
giải quyết việc làm cho 960 lao động ( trong đó 90% công nhân là người trong
tỉnh) với mức thu nhập bình quân 5,6 triệu đồng/ người/ tháng, tăng 20% so với
năm 2012. 6 tháng, Công ty đạt tổng doanh thu 20 triệu USD, tăng 30% so cùng
kỳ năm 2012, nộp ngân sách Nhà nước hơn 26 tỷ đồng. Phấn đấu hết năm 2013
doanh thu đạt 48 triệu USD.”
- Chuỗi doanh thu mà hệ thống trích rút được là :
 doanh thu 20 triệu USD

 doanh thu đạt 48 triệu USD
Trang 19
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH
* Một số giao diện chương trình.
- Giao diện tổng hợp về các tin kinh tế.
Hình 3.Giao diện tổng hợp về các tin kinh tế.
Trang 20
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
- Giao diện trích rút thông tin
Hình 3: Giao diện trích rút thực thể
Trang 21
Xây dựng hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế
KẾT LUẬN
Những kết quả đã đạt được :
Xây dựng được hệ thống trích rút thực thể ứng dụng trong phân tích kinh tế đảm
bảo được một số công việc như :
+ Xây dựng được hệ thống trích rút thông tin.
+ Tổng hợp tin tức kinh tế từ mộ số trang web có hỗ trợ đọc tin rss
+ Trích rút thực thể Tên công ty, Địa chỉ, Doanh thu
Hướng phát triển :
Trong tương lai chúng em sẽ cố gắng phát triển hệ thống nhằm mục đích tổng hợp
được tin tức từ nhiều trang web hơn và trích xuất thông tin một cách chính xác hơn.
Tổng kết :
Mặc dù đã rất cố gắng, xong do kiến thức còn hạn hẹp nên không thể tránh khỏi
những sai sót. Nhìn chung, chương trình đã đáp ứng được yêu cầu đề ra, đó là tổng hợp
được tin tức kinh tế từ một số trang web và trích rút được tên công ty, địa chỉ, doanh thu
xuất hiện trong nội dung bài báo.
Chúng em rất mong nhận được nhiều ý kiến đóng góp, góp ý về đề tài của thầy cô
và các bạn để chúng em rút ra được kinh nghiệm cũng như những kiến thức còn chưa rõ,

để cách nghiên cứu và phát triển có thể hoàn thiện hơn.
Để hoàn thành bài tập lớn này chúng em xin chân thành cảm ơn sự hướng dẫn,
giúp đỡ tận tình của TS.Nguyễn Thị Thu Hà đã tạo điều kiện giúp đỡ chúng em hoàn
thành quá trình học tập một cách tốt nhất.
Chúng em xin chân thành cảm ơn cô!
Trang 22

×