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

Luận văn thạc sĩ Hệ thống thông tin quản lý: Hệ thống thu thập thông tin nhằm hỗ trợ đánh giá chất lượng sản phẩm, dịch vụ

74 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Hệ thống thu thập thông tin nhằm hỗ trợ đánh giá chất lượng sản phẩm, dịch vụ
Tác giả Đặng Nguyên Hóa
Người hướng dẫn TS. Lê Thanh Vân
Trường học Đại học Quốc gia TP. Hồ Chí Minh
Chuyên ngành Hệ thống thông tin quản lý
Thể loại Luận văn thạc sĩ
Năm xuất bản 2015
Thành phố Tp. Hồ Chí Minh
Định dạng
Số trang 74
Dung lượng 12,63 MB

Nội dung

TOM TAT LUẬN VĂN THẠC SĨLuận văn này được thực hiện nhằm mục đích xây dựng hệ thống thu thậpdữ liệu về nhà chung cư tại khu vực thành phố Hồ Chí Minh một cách tự động,chính xác và cập nh

Trang 1

ĐẠI HỌC QUỐC GIA TP HỖ CHÍ MINH

TRUONG ĐẠI HỌC BACH KHOA

DANG NGUYEN HOA

HE THONG THU THAP THONG TINNHAM HO TRO ĐÁNH GIÁ CHAT LƯỢNG

SAN PHAM, DICH VU

Chuyên ngành: Hệ thống thông tin quan ly

Mãsô: 60.34.48

TP HO CHI MINH, thang 11 nam 2014

Trang 2

ĐẠI HỌC QUỐC GIA TP HỖ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

a

HE THONG THU THAP THONG TINNHAM HO TRO DANH GIÁ CHAT LƯỢNG

SAN PHAM, DICH VU

CHUYEN NGANH: HE THONG THONG TIN QUAN LY

MASO CHUYEN NGANH: 60.34.48

Trang 3

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI:TRUONG ĐẠI HOC BACH KHOA - ĐHQG -HCMCán bộ hướng dẫn khoa hoc: TS Lê Thanh Vân

Cán bộ chấm nhận xét 1: TS Lê Lam SơnCán bộ chấm nhận xét 2: TS Nguyễn Tuan Dang

Luận văn thạc sĩ được bảo vệ tại Trường Dai học Bách Khoa, DHQG Tp HCMngày 06 tháng 0Inăm 2015.

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

I TS.Lé Thành Sách Chủ tịch2 _ TS Nguyễn Thanh Bình Thư ký3 TS Lê Lam Sơn Phản biện |

4 TS Nguyễn Tuan Đăng Phản biện 25 TS Võ Thị Ngọc Châu Ủy viênXác nhận của Chủ tịch Hội đồng đánh giá luận văn và Trưởng khoa Quản lý chuyên

ngành sau khi luận văn đã được sữa chữa (nêu có).

CHỦ TỊCH HỘI ĐÔNG TRƯỞNG KHOA KH-KTMT

Trang 4

ĐẠI HỌC QUOC GIA TP.HCM CONG HÒA XÃ HỘI CHỦ NGHĨA VIET NAMTRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập — Tự do — Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨHọ tên học viên: ĐẶNG NGUYÊN HÓA MSHV: 12321060

Ngày, tháng, năm sinh: 15/01/1987 Nơi sinh: Bình Định

Chuyên ngành: Hệ thống thông tin quản lý Mã số: 60.34.48I TÊN DE TÀI:

Hệ thống thu thập thông tin nhằm hỗ trợ đánh giá chất lượng

sản phẩm, dịch vụ.Il NHIỆM VU VÀ NỘI DUNG:

1 Xây dựng một công cụ thu thập dữ liệu tự động từ nhiều website đảmbảo tính chất chính xác và cập nhật dữ liệu về nhà chung cư tại khu vựcthành phố Hồ Chí Minh; và đưa ra một số gợi ý từ những yêu cau timkiếm nha chung cư cho người sử dụng

2 _ Nghiên cứu va đề xuất phương pháp thực hiện.3 Chay thử và đánh giá hệ thông

Ill NGÀY GIAO NHIEM VU:20/01/2014IV NGAY HOAN THANH NHIEM VU:14/11/2014v CÁN BO HUONG DAN:TS LE THANH VAN

Tp Hô Chi Minh, ngày 06 tháng 01 năm 2015TRUONG KHOA KH&KTMT CAN BỘ HƯỚNG DAN

TS LE THANH VAN

Trang 5

LỜI CÁM ƠN

Lời đầu tiên, xin được gởi lời cảm ơn đến các thây cô trong khoa Khoa học vàKỹ thuật máy tính đã tạo điều kiện cho tôi hoàn thành khóa học Trong thời gian hainăm học tập tại trường, tôi đã nhận được sự tận tình hướng dẫn, giảng dạy của các

thây cô cũng như các cán bộ quản lý của khoa

Đặc biệt, tôi xin được gởi lời tri ân đến côTS.Lê Thanh Vânngười trực tiếphướng dẫn trong suốt thời gian làm dé cương và thực hiện luận văn Những gợi ý,

định hướng đúng lúc của Cô cho phép tôi hoàn thành nghiên cứu của mình Thực

hiện đề tài này ngoài việc đánh giá hoàn tất khóa học còn mang đến những cái nhìnmới tong quan, hé thong và cơ hội ap dụng kiến thức học được vào trong công việcthực tế

Cuôi cùng, xin được gởi lời cảm ơn đên gia đình và bạn bè, những người đãđộng viên và tạo điêu kiện thuận lợi cho tôi trong suôt quá trình học tập và thựchiện luận văn này.

Tp Hô Chi Minh, tháng 11 năm 2014

Học viên cao học khóa 2012

Đặng Nguyên Hóa

Trang 6

TOM TAT LUẬN VĂN THẠC SĨLuận văn này được thực hiện nhằm mục đích xây dựng hệ thống thu thậpdữ liệu về nhà chung cư tại khu vực thành phố Hồ Chí Minh một cách tự động,chính xác và cập nhật dữ liệu; đưa ra gợi ý từ những yêu cau tìm kiếm của ngườidùng hỗ trợ cho người dùng đây nhanh quá trình tìm kiếmnhà chung cư theo nhu

câu Dé đạt được mục đích dé ra, dé tài cần thực hiện qua giai đoạn chính như sau.

Bước đầu, khảo sát các website bât động sản để thu thập dữ liệu dựa trênyếu tô xếp hạng của trang trên Alexa (http://www.alexa.com/)

Bước hai, trên cơ sở các bài toán thu thập dữ liệu tự động,bên cạnh tham

khảo các phương pháp giải quyết van dé từ các bài báo, công trình nghiên cứu liênquan, tác giả đề xuất phương pháp thực hiện xây dựng hệ thống thu thập dữ liệu tự

động vê nha chung cư.

Bước cuối cùng, các yếu tố ảnh hưởng trực tiếp đến việc chọn nha chung cưđược phân tích, xem xét khi xây dựng hệ thống thu thập tự động lay các thông tinchính dựa trên các yếu tố ảnh hưởng này Việc chạy thử nghiệmvới dữ liệu thực chophép đối chiếu với mục tiêu ban đầu dé radựa trên 4 tiêu chí: hiệu qua, an toàn,

năng suat, sự thỏa man.

Những đánh giá và kết luận của báo cáo cho thấy tính khả thi khi triển khaihệ thống này vào sử dụng thực tế

Trang 7

ABSTRACTThe thesis is done with the purpose of building a system for collecting dataabout condominiums in Ho Chi Minh City area automatically, accurately andupdating; it suggests results base on a search request from the seeker, help them toshorten their seeking period To achieve its goals, the thesis need to follow steps asbelow:

First step, collecting data from real estate website, basing on ranking factorson Alexa website (http://www.alexa.com/).

Second step, based on the problem of automatic data collection, besidereferring methods of solving problems from the article, related research, the authorwill propose methodology to build a system for collecting data about thecondominium automatically.

Final step, analyzing and considering factors affecting directly topurchasing behavior of customers when building this system which collecting datamainly base on these factors The running tests with real data allows us to make acomparison with the initial objective based on four criteria: effectiveness, safety,productivity, satisfaction.

Assessments and conclusions of this thesis will show the feasibility ofimplementing this system in reality.

Trang 9

DANH MỤC BANG BIEUBảng 3.1: Danh sách trang web dé thu thập tin rao bán căn hộ - se: j1Bang 3.2: Danh sách trang web dé thu thập tin tức thị trường bat động sản j1Bang 3.3: Chỉ tiết bang dit liệu thu thập tin rao bản căn hộ - -cc+cscsesese 36Bang 3.4: Chi tiết bang dit liệu thu thập tin tức thị trường bất động sản 37Bảng 4.1:Thống kê thời gian xử lý các kết quả tìm kiém của người dùng 49Bang 4.2:SỐ lượng tin rao về hệ thống/ĐhúIt - - + ccstsEeksEeEeEeEererkrkrkekrereeerree 49Bảng 4.3: Đánh giá chất lượng tin rao thu thập «+ se Sex cerkEeErkrkeerereeesree 50Bảng 4.4: Kết quả thực tế của hệ thÔng c- -c-c-kk+k+tsEeESEEEEEEEEEEEEEEEEEEEkrksrsreerree 50

Trang 10

DANH MỤC HÌNH ẢNHHình 2.1: Kiến trúc chuẩn của Web CFQWÏF - + Set SkEESEEkEEErkerrrkrkerrred 6

Hình 2.2: Quy trình hoạt GONG CUA CTWÏGF” Ă S111 11 11 VVEEEEtksseeeessse 7

Hình 2.3: Mô hình crawler da lUOng -c-c- EESE+ESESESEEEEEEEEEEEEEEEEEEEkrksrrererree 13

Hình 2.4: Ví dụ rút trích thong tin cccccccccccccccccccccccccccccceeeeeeeeeeeeeeeeeeeeeeseeeeeeeeeeseseseeeees 17

Hình 2.5: Biểu diễn cây DO M «set EEEEEE11511111111111111111111111EEE.gye 19

Hình 2.6: Phân loại hàm DG viccccccccccccccscccccssscccccssscccccssccccccssecccessscsccuuseccusecsceuunesess 21

Hình 2.7: Cấu trúc tong quát của hàm DAM, viececcccccccscscsescssssssescscsesescsvsveveneneasasevevens 22Hình 2.8: Sơ đồ vòng lặp chính của ÌM]D5 + c+cseskekstsEsEeEeEekerkrkrkekrkreeerree 23Hình 2.9: Cơ chế duyệt đồ thị của các CLAWLED ceccccccccscscsscscsssscsevssssesesscsesscsesscsesscaes 24Hình 2.10: Phần mêm Viet SpDÌđ€F - + SE *EEEEESESESESEEEEEEEEEEEEEEEEEEEEEkrkrkrerree 26

Hình 3.1: Mô hình Đài fOÁI - << 0000 ngờ 29

Hình 3.2: Sơ đồ Use Case của người đÌHg c- + cccststskekeEsEeEkEekerkrkrkekrkreeerree 30Hình 3.3: Các bài viết cần thu thập từ trang web nguồn (www.batdongsan.com.vn)32Hình 3.4: Ví du nội dung bài viết trang web nguon(www.batdongsan.com.vn) 33Hình 35 Các bài viết cẩn thu thập từ trang web nguồn

(WWW MUADANNNAAALCOMLVN ) ecccccccccccesccccccccccsesecccccccuseseccescccueeeececescuueeceeseuueeeeeeeesanes 34

Hình 3.6: Vi du nội dung bài viết trang web nguôn(www.muabannhadat.com.vn)35Hình 3.7: Lưu đồ hoạt động của hệ thong ¬ 38Hình 3.8: So sánh nội dung tring nhau tiêu để từ web nguồn

Trang 11

Hình 3.11: Sử dung hàm băm dé so sánh tiêu dé trùng Nhat ncccecececeseecssesstseseseees 42Hình 3.12: Kết quả tìm kÌẾM - «+ << EEEEEEEESEEEEEEEEEEEEEETETETETESEEEEkrkrerree 44

Hình 3.13: Các tin rao ĐẢH GOL Ý SE ret 45

Hình 3.14: Giao diện chính hệ thống thu thập thông tin căn hộ chung cư 45Hình 3.15:Hién thị thông tin cơ bản của căn hộ khi người dùng ro chuột lên bài255 46Hình 3.16: Giao diện tab tin tức mới về thị truong bat động SAN 46Hình 3.17: Giao diện tab tìm kiếm (lựa chọn tìm kiếm trên khu vực, diện tích và

QUA) P8 — ố.ốỐốỐốỐốỐốỐố ốỐốỐố 47

Hình 3.18: Nội dung thông tin bài viết thu thập căn hộ CHUNG CH - 55s: 47Hình 3.19: Giao diện tab thông kê tin rao DAN CAN ỒỘ - << << S1 E34 48Hình 4.1: Mô hình chất lượng sử AUag cccccececcscccsssssssssssesssesssscscscsvsvevencssssasavevevecevens 50

Trang 12

DANH MUC CHU VIET TAT

URL — : Uniform Resource LocatorHTML : HyperText Markup LanguageCSDL : Co so dữ liệu

Trang 13

MỤC LỤCMUC BtPEỆHAiâiẳđẳaaaảddididididiiad l

Chương 1: TONG QUAN - G3 3 111515151515 5 1 1111111101111 1111111111131 1e |1.1 Lý do chọn dé tài: - - + z3 1 E1 1 1111111111111 0111 1110111012111 |

1.2 Mục đích nghiên CỨU: - Ăn re 21.2.1 Khảo sát, phân tích hiện trạng: - ng re 2

1.2.2 Xây dựng hệ thống thu thập thông tin nhằm hé trợ đánh giá chất lượng san

phẩm, CỊCh VỤ: -cc G1110 1 111 TH TT re 31.2.3 Đánh giá việc triển khai hệ thống: - ¿5-5252 SE2E£E+E2EE£E£E£EzEeErerkrree 31.3 Đối tượng và phạm vi nghiÊn CỨU: ¿2-2 +2 55+++S££E+E+E+£E£EeEzerrerereerees 3

14 Phương pháp nghiÊn CỨU: (<< 9.00 0S re 3

1.5 BỐ cục luận Văn: - G11 11191 111 1911191 1111111111 T111 ng ng: 4Chương 2: CƠ SỞ LÝ THUY ẾTT - + 2E S2 SESEEE£ESEEEEEEEEE5E1E5 E1 E111 eckrkd5

2.1 = GOT HHIGU Web 0v 7/02 ae 5BI N./0sr 2 52.I.[.[ FrOntier: oo eee eececccceccceceeeeessssnsaaeneceeeeeeeeeeeesseeesssssaaaeeeeeeeeeeeeeeeeeeeeeaas 8

2.1.1.2 Cách thức chuyền trang khi thu thập dữ liệu của crawler: 92.1.2 Các chiến lược thu thap dO LGU: 035 102.1.3 Crawler đa luéng (Multi-threaded Crawler): -<<< <-<sss<<s2 122.1.4 Các yêu cầu đối với crawler [5Š]: ccccccsccsesscsssessesesessesssesscsesesseseseeseseseesesesen 142.1.5 Đánh giá đối với CraWÌ€T: ¿-©- + SE SESE E9 2E E23 1511511111111 11 1E cxe 142.1.6 Các van dé khi xây dựng crawler [5]: - - ¿55s ecxveecereerererrees 16

2.2 Bai toán rút trích thông fIn: - - - < << 0 HH ke 172.2.1 Rút trích thông tim: - G9999 00 ke 17

Trang 14

2.2.2 Các kỹ thuật rút trích thông tint << 5GB 119 1 ve rre 182.2.3 Rút trích thông tin dựa trên cây DOM? Ăn 1 re 192.3 Hàm bam (Hash ÍUnCfiOT)) (<< < 1 3990010199 90 ng re 202.3.1 Khái nIỆm: - G9 ọ nrrh 20

2.3.2 Tính chất cơ bản của hàm băm: - + 5+++++cxteEterxeerkrrrkrrrkrrrriee 20

2.3.3 Phân loại hàm băm: - << c0 3333111111110 1 1111111111111 1 ngu 212.3.3.1 Các hàm băm CÓ KhÓA << 000 re 212.3.3.2 Các hàm băm không KHÓA: «<5 50 1 ke 21

2.3.4 Cấu trúc ham băm: - 2+ SE 1xx 222.3.5 Một số hàm băm thông dụng: - «<< ng, 22

2.3.5.2 Hàm băm ÀÍÏ)Š o0 Tre 2324 Tinh hình nghiên cứu liên qUaT - << 1 1139930151111 v9 3311 1 ve rre 24

2.5 _ Tóm tắt chương: - c5: St E2 E1 111515151111 11 111115151111 11 1111111 28Chương 3: BÀI TOÁN THU THẬP THONG TIN VÀ PHƯƠNG PHAP THUC

3.2.1.2 Xác định nội dung thu thập của We©bsSI{©: -Ă SH he geg 32

3.2.2 Thực hiện lẫy dữ liệu - - 5256213 1 E5 1 121 1511111111111 111111 rk 36

3.2.3 Phương pháp thực hiỆn: (<< 1 ng ngờ 37

3.2.3.1 Xây dựng hệ thống: - 2 ©E+E+EESE+ESEEEEEEEEEEEEErErrkrkrrrrrrree 37

Trang 15

3.2.3.2 Kiếm soát các bài viết trùng nhau: - ¿5552 s+s+cscecxveereceee 39

3.2.3.3 Chức năng gợi ý cho người UNG? - << «s9 ve.42

3.3 Giao diện hệ thống - - SE 1 E5 1 3211151111111 1111111111111 453.4 Tóm tắt chương: -¿ - + SE SE 3 1515 1112111511111 1111111111111 46Chương 4:KIEM THU, DANH GIÁ THUC HIEN 2 +5+c+c+£z£ececee: 49

4.1 Thực hiện đánh giá: c S199 11 9 0111 1n và 49

4.2 Đánh giá chất lượng của hệ thống: - ¿52252952 S*2E+EE E2EErxrrerererreee 514.2.1 Đánh giá kết quả thực hiện của hệ thống: c.ceccecsesseessessseeeseseseseeeseees 51A2.2 Tóm tắt ChUONg? ccccccccsccceccssscsescsescscsssscscssscssssescssscsssescscscsssssesscsssssesseseans 52Chương 5: KẾT LUẬN uoceeccccccccscscscscscscscscscesececscssscscsesssssscscssssscscscsvevevstsnenseseeen 535.1 Tóm tắt nội dung nghiên CỨU: - ¿2-5 25+ + +E+E+E££E+EeEe+ErEeEerererreei 535.2 _ Những hạn chế: : 6+ S21 1 E515 11111 1111111511 1111111111111 535.3 KẾtluận: G11 TT H111 TT HH HT TH ng 545.4 _ Hướng nghiên cứu tiẾp theO: ¿5-5256 S22 EEEESEEEEEEEEErErkerrrkrrrreee 54

Tài liệu tham Kha eecececscseccsscscscssescscscsesscscscscssscscscscsssscscssscsssscscssssssscscevsessscsescens 55

Trang 16

Chuong 1: TONG QUANl1 — Lý do chọn đề tài:

Hiện nay, chúng ta đang sống trong thời đại phát triển và đạt được nhiềuthành tựu đáng ké của công nghệ thông tin Các loại thông tin, số liệu, âm thanh,hình ảnh đều được số hóa, từ đó được lưu trữ, phân loại, xử lý và chia sẻ thông tindưới sự hỗ trợ của máy tính Tất cả các ngành, các lĩnh vực đều xem công nghệthông tin là nền tảng để nâng cao hiệu quả, cải thiện chất lượng từ khâu sản xuấtđến cung ứng dịch vụ

Tìm kiếm luôn là một trong những bài toán quan trọng trong việc lưu trữ vàtổ chức dữ liệu Các máy tìm kiếm như Google, Yahoo, Bing ra đời đã tạo nêncuộc cách mạng lớn trong việc tìm kiếm thông tin trên internet Tuy nhiên, nhữngmáy tìm kiếm này có một số trường hợp trả về kết quả quá lớn, không được sắpxếp, phân loại không phù hợp với yêu cầu tìm kiếm của người dùng Do đó, ngườidùng rất khó tìm kiếm thông tin hữu ích với lượng thông tin không lỗ như vậy

Thu thập, xử lý và khai thác thông tin sao cho hiệu quả đang là một van démới mẻ trong lĩnh vực khai phá dữ liệu Bài toán có ý nghĩa lớn đối với nhu cầu tiếp

cận thông tin của con người.

Trong khảo sát của công ty nghiên cứu thị trường Vinaresearch “Báo cáo

thị trường nhà ở tại Hà Nội và thành phố Hồ Chí Minh”thực hiện vào năm 2013,khảo sát trực tuyến thì tỉ lệ có nhu cầu mua căn hộ chung cư tại thành phố Hồ ChíMinh là 28% và tỉ lệ này ngày càng tăng Đây là con số cho thấy nhu câu về thịtrường mua căn hộ chung cư tại thành phố Hồ Chí Minh là khá lớn Và qua khảo sátcũng cho thấy có quá nhiều kênh thông tin cho người có nhu cầu mua căn hộ chungcư tham khao.Dac biệt, kênh thông tin website bất động sản xuất hiện rất nhiềucùng nhiều thông tin gây khó khăn cho việc lựa chọn cho người dùng có nhu cầumua bán bất động sản Nhu cầu đặt ra có trang web giúp người dùng có được thôngtin tong hợp về nhu cầu can bán căn hộ chung cư ở thành phố Hồ Chí Minh trongmột trang duy nhất, đưa ra gợi ý căn hộ bán cho người dùng, tóm tắt tin

Trang 17

Theo báo cáo nghiên cứu của tác giả Phạm Thị Vân Trinh “Mô hình đo

lường những yếu tố ảnh hưởng đến quyết định chon mua căn hộ chung cư củakhách hàng tại thành phố Hồ Chí Minh” thực hiện vào năm 2011, tác giả đưa ra cácyếu tô ảnh hưởng đến quyết định mua căn hộ chung cư:

> Các yếu tố gây anh hưởng (hỗ trợ vay vốn của ngân hàng, tiễn độ

thanh toán).

> Các yếu tố thuộc tinh sản phẩm (vi trí, hướng nhà, diện tích, chất

lượng căn hộ, thiết kế).> Yếu tố cá nhân (thu nhập của khách hàng).> Các yếu tổ marketing (quảng cáo, khuyến mãi, giá cả).> Các yếu tố xã hội

Do đó, việc xây dựng một hệ thống thu thập thông tin căn hộ chung cư ởthành phố Hồ Chí Minh một cách tự động đưa ra gợi ý cho người dùng nhằm hỗ trợcho người dùng tìm kiếm thông tin nhanh chóng, hiệu quả và đưa ra quyết định khi

lựa chọn mua căn hộ chung cư.1.2 Mục dích nghiên cứu:

Đề tài được thực hiện để đạt được kết quả là xây dựng hệ thốngthu thậpthông tin nhằm hỗ trợ cho người dùng trong việc tìm kiếm thông tin và đưa ra quyếtđịnh khi lựa chọn mua căn hộ chung cư, được thể hiện qua 3 nội dung chính sau:

1.2.1 Khao sát, phân tích hiện trạng:

- Khảo sát các website hiện nay về bat động sản có thông tin cần bánnha chung cư tại thành phố Hồ Chí Minh

- Xac dinh cac yếu tố có ảnh hưởng đến việc lựa chọn nhà chung cư của

người dùng.

Trang 18

1.2.2 Xây dựng hệ thống thu thập thông tin nhằm hỗ trợ đánh giá chất lượng

sản phẩm, dịch vụ:Dựa trên các tài liệu nghiên cứu, các bài báo về thu thập dữ liệu tự độngtrong và ngoài nước; sử dụng các bộ mã nguồn mở,các module hỗ trợ sẵn có, xâydựng một công cụ thu thập dữ liệu đáp ứng một số yêu câu sau:

- — Thu thập dữ liệu tự động từ nhiều website bất động sản đảm bảo tínhchính xác và cập nhật về thông tin căn hộ chung cư ở thành phố Hỗ

Chí Minh.

- Dua ra một số gợi ý theo nhu cầu cho người dùng nhằm hỗ trợ giúpngười dùngthu hẹp phạm vi, đây nhanh quá trình tìm kiếm và đưa racác quyết định

1.2.3 Đánh giá việc triển khai hệ thống:

Tiêu chuẩn dé đánh giá VIỆC triển khai hệ thống mới trong điều kiện thực tế:- Khả năng thu thập thông tin tự động từ các website chon trước về

thông tin căn hộ chung cư ở thành phố Hồ Chí Minh Tóm tắt cácthông tin cơ bản liên quan đến nhu cầu mua căn hộ chung cư

- Dua ra một số gợi ý theo nhu cầu cho người dùng.1.3 Đối tượng và phạm vi nghiên cứu:

Trong phạm vi luận văn này tập trung các website bất động sản chung cư tạikhu vực thành phố Hỗ Chí Minh để xây dựng hệ thống thu thập thông tin tự độngnhăm hỗ trợ người dùng đưa ra quyết định khi lựa chọn muacăn hộ chung cư Trongđó, bao gồm các kỹ thuật, công nghệ thu thập, rúttríchthông tin trên các website vaxây dựng hệ thống thu thập thông tin tự động trực tuyến

1.4 Phương pháp nghiên cứu:

v Tìm hiểu, nghiên cứu và áp dụng các bài toán thu thập thông tin tự dộng:

- Nghiên cứu lý thuyết về khai phá dữ liệu và khai phá dữ liệu web

Trang 19

- Nghiên cứu cơ chế hoạt động của các hệ thông thu thập thông tin và

các công cụ dé ứng dụng xây dựng hệ thống thu thập thông tin

- Nghiên cứu các bài báo, báo cáo đã được công bô có mô hình va

các yêu cầu tương tự với hệ thống dự định triển khai.v Đánh giá lại việc triển khai hệ thống trong điều kiện thực tế: tiêu chí là khả

năng đáp ứng các yêu câu của bài toán đặt ra.1.5 Bo cục luận van:

Bo cục của luận văn này gôm năm chương:

Chương 1: Tổng quan — Giới thiệu tổng quan, lý do hình thành, mục tiêu, đốitượng, phạm vi nghiên cứu, phương pháp nghiên cứu của đề tài

Chương 2: Cơ sở lý thuyết — Trinh bay tong quan về cơ sở lý thuyết và các nghiên

cứu liên quan.

Chương 3:Bài toán thu thập thông tin và phương pháp thực hiện - Trình bày

mô hình của hệ thống, quá trình xây dựng hệ thống.Chương 4: Kết qua nghiên cứu — Trình bày kết quả của dé tài.Chương 5: Kết luận - Kết luận từ kết quả nghiên cứu, nêu những hạn chế và hướngnghiên cứu tiếp theo cho đề tài

Trang 20

Chương2: CƠ SỞ LÝ THUYETChương 2 trình bày tổng quan về lý thuyết bài toán thu thập thông tin, cácnghiên cứu có liên quan làm cơ sở dé xây dựng hệ thống thu thập thông tin nhăm hỗ

trợ cho người dùng.2.1 Giới thiệu web crawler:2.1.1 Web crawler:

Trinh thu thập web (Web crawler) là một chương trình máy tinh có thé

duyệt website một cách tự động theo một phương thức nao đó được xác định trướcthông qua URLs (Uniform Resource Locator) Web crawler cũng được xem nhưweb spider hay web robot [5].

Hau hết các công cụ tìm kiếm online hiện nay đều sử dung quá trình nay đểthu thập va cập nhập kho dữ liệu phục vụ nhu cầu tìm kiếm của người dùng Mụcdich chung của các hệ thống search engine là số lượng trang web dau vảo dat giá tricao nhất có thể, trong đó web crawler làm công việc chính là duy trì co sở dữ liệuđược đánh chỉ mục, trả về giá trị của bộ thu thập và bộ lập chỉ mục để có thể cho kếtquả nhanh hơn khi được tìm kiếm Ví dụ như Google Crawler của Google, các

website trên internet được Google Crawler duyệt qua và thu thập lại nội dung và lưu

trữ trong cơ sở dữ liệu và được tìm kiếm khi có yêu cau từ phía người dùng Ở ViệtNam, cũng có một số mô hình thu thập thông tin như: baomoi.com, phần mềm

VietSpider

Trang 21

h World Wide h

| Web !

Web pages

| URLs Mioulti-threaded !> Scheduler downloader l

|

Hình 2.1: Kiến trúc chuẩn của web crawler [5]

> Queue: nhận danh sách dia chỉ cần crawling, lưu trữ, chuân hóa va

chuyền cho Scheduler

> Scheduler:

» Xac định mot thứ tự crawling cho các dia chi (ordering).

= Phân bố các địa chi cho hệ thống crawler phân tán.=» Xác định thời gian để Re-crawling một địa chỉ.Đề làm những nhiệm vụ này, Scheduler cần được xây dựng dựa

trên các chính sách (crawling policies):

= Selection Policies: xác định những địa chi nao cần đượccrawling dựa trên PageRank, nếu đã có trên máy chủ dựa vào

Trang 22

thức robots exclusion protocol cho phép quản tri củawebserver câu hình được khu vực nào crawler không thê vào.

= Parallelization Policies: cho phép tổ chức crawling song song

và phân tán.

Nguyên lý hoạt động của một crawler: xuất phát từ những trang cho trướcgọi là hạt giống (seed pages)đây là những địa chỉ website muốn thu thập thông tin,và duyệt từ trang này đến trang khác thông qua những liên kết chứa trong nhữngtrang mà nó đi qua, quá trính này gọi là crawling Crawler tổng hợp nội dung (vănbản và những liên kết) từ những website và lưu chúng vào trong cơ sở dữ liệu

|

C Fetch page › |C Parse page › |

( Add URLs » |

to frontier

Hình 2.2: Quy trình hoạt động cua crawler [6].

Crawling Loop

Trang 23

2.1.1.1 Frontier:Là một danh sách công việc của một crawler hay còn gọi là To-do list.

Frontier dùng dé chứa những URL chưa được crawler duyệt qua Ban dau Frontierchứa các URL hạt nhân do người dùng hoặc chương trình khác cung cấp Mỗi vònglặp crawling bao gồm: lay các URL tiếp theo cần được tải về từ Frontier, nap trangweb tương ứng với URL bằng giao thức HTTP, tải nội dung trang web Quá trìnhcrawling kết thúc khi:

> Đạt được điều kiện dừng ví dụ như SỐ lượng trang web tải về đáp

ứng được yêu câu đặt ra.

> Danh sách các URL tai Frontier rỗng, không còn trang web yêu cầu

crawler tải về.

Frontier có thể coi như một hàng đợi làm việc theo cơ chế FIFO (First InFirst Out), vào trước ra trước trong trường hợp sử dụng thuật toán tìm kiếm theochiều rộng (Breadth-First) để thu thập thông tin Crawler sử dụng thuật toán tìmkiếm này gọi là thu thập theo chiều rộng Các URL được lay ra thu thap duoc chontừ trên xuống dưới trong danh sách va các URL mới được thêm vào đuôi của danhsách Trong frontier, các URL chỉ được lay một lần Dé tránh việc trùng lặp URLđược trích xuất đã có trong danh sách chưa dùng hàm băm với URL là khóa Hàmbăm này sinh ra các giá trị băm tương ứng với mỗi URL Sử dụng hàm băm sé timkiếm nhanh hơn vì việc so sánh các giá trị băm nhanh hơn nhiều việc so sánh mộtgiá trị với một khối dữ liệu lớn Khi frontier đạt đến miễn giới hạn, thì các trình thuthập theo chiều rộng sẽ làm việc theo cơ ché: sau khi đưa một URL ra khỏi frontierđể tiễn hành quá trình thu thập trang tương ứng thay vì việc lấy tất cả URL trongtrang này trình thu thập sẽ chỉ lay URL chưa thăm dau tiên và thêm vào frontier

Frontier có thé coi như một hàng đợi ưu tiên trong trường hợp sử dụng thuậttoán tìm kiếm tối ưu (Best-First) Trinh thu thập sử dụng thuật toán tim kiếm nàygọi là thu thập ưu tiên Hàng đợi ưu tiên là một mảng với các phần tử các URLđược sắp xếp theo điểm đánh giá Trình thu thập ưu tiên làm việc theo cơ chế: URL

Trang 24

lay ra khỏi Frontier dé tiễn hành thu thập thông tin luôn là URL tốt nhất Sau khithu thập trang web tương ứng, các URL được trích xuất ra đưa vào Frontier và danhsách URL được sắp xếp lại theo thời điểm đánh giá Dé tránh việc trùng lặp URLdùng hàm băm với URL là khóa Khi frontier đạt đến miền giới hạn, cơ chế làmviệc của trình thu thập tối ưu cũng giống với trình thu thập theo chiều rộng chỉ kháclà các URL được lấy là các URL tốt nhất (URL có điểm đánh giá cao nhất).

Nhiều khi trình thu thập có thể bắt gặp spider trap dẫn nó đến một lượnglớn các URL khác nhau nhưng trỏ đến cùng một trang web Một cách để giảm bớtvan dé này là hạn chế số lượng trang mà các trình thu thập truy cập từ một tên miễnnhất định Các mã liên kết với frontier có thể đảm bảo rằng trong một chuỗi liên kếtcác URL trong frontier sẽ chỉ chứa một URL từ một tên miền máy chủ Như vậytrình thu thập sẽ tốt hơn bởi không truy cập vào cùng một trang quá thường xuyên

và các trang truy cập cũng có xu hướng đa dạng hơn.

2.1.1.2 Cách thức chuyển trang khi thu thập dữ liệu của crawler:Vấn đề cốt lõi hoạt động của crawler để lấy nội dung các trang web mộtcách tự động là dựa vào cách thức chuyền trang từ trang web này sang trang webkhác, hoặc thay đối nội dung này sang nội dung khác trong cùng một trang web

> Chuyén trang sử dung các phương thức HTTP GET, HTTP POST

Các trang web loại này không sử dụng JavaScript hoặc có su dung

JavaScript nhưng không ảnh hưởng đến cách thức chuyển trang

hoặc nội dung trang web.

> Chuyển trang sử dung đến các đoạn mã nhúng client-side như

JavaScript làm thay đổi cau trúc DOM hoặc nội dung bên trong củatrang web Ví dụ như: công nghệ Ajax sử dụng JavaScript để thựchiện các yêu cầu GET hoặc POST chỉ dé lay và nhận dữ liệu, dữliệu nhận được từ máy chủ được JavaScript xử lý để hiển thị kết

quả cho người dùng.

Trang 25

2.1.2 Cac chiến lược thu thập dữ liệu:

Quá trình thu thập web chính là quá trình duyệt đệ quy một đồ thị Các web

được xem như một do thị với các trang là các đỉnh (node) và các siêu liên kết là các

cạnh Chính vì vậy các chiến lược thu thập dữ liệu cũng được xây dựng dựa trên cácthuật toán tìm kiếm trên đồ thị Các thuật toán tìm kiếm trên đồ thị: tìm kiếm theo

chiêu sâu, tìm kiêm theo chiêu rộng và tìm kiêm ngâu nhiên [15].

> Chiến lược thu thập dữ liệu theo chiều sâu

Từ một danh sách chứa các liên kêt cân duyệt, thực hiện các bước

sau:

(1) Cho danh sách = {trang đầu tiên}(2) Lay trang dau tiên trong danh sách

- Nếu có, qua (3)- Nếu không, qua (5)

(3) Trang này đã xét tới chưa ?

- Nếu rồi, quay lại (2)- Nếu chưa, qua (4)(4) Đánh dấu trang này đã tới rồi Phân tích và tìm các liên kết có

trong trang đó không?

- Nếu có, thêm liên kết này vào đầu danh sách Quay lại (4)- Nếu không, quay lại (2)

(5) Kết thúc.Chiến lược thu thập dữ liệu theo chiều rộng

Từ một danh sách chứa các liên kêt cân duyệt, thực hiện các bước

Sau:

(1) Cho danh sách = {trang dau tiên}

Trang 26

Sau:

(2) Lay trang đầu tiên trong danh sách- Nếu có, qua (3)

- Nếu không, qua (5)

(3) Trang này đã xét tới chưa?

- Nếu rồi, quay lại (2)- Nếu chưa, qua (4)(4) Đánh dấu trang này đã tới rồi Phân tích và tìm các liên kết có

trong trang đó không?

- Nếu có, thêm liên kết này vào cuối danh sách Quay lại (4).- Nếu không, quay lại (2)

(5) Kết thúc.Chiến lược thu thập dữ liệu theo ngẫu nhiên

Từ một danh sách chứa các liên kêt cân duyệt, thực hiện các bước

(1) Cho danh sách = {trang đầu tiên}(2) Lay ngẫu nhiên một trang trong danh sách

- Nếu có, qua (3)- Nếu không, qua (5)

(3) Trang này đã xét tới chưa?

- Nếu rồi, quay lại (2)- Nếu chưa, qua (4)(4) Đánh dấu trang này đã tới rồi Phân tích và tìm các liên kết có

trong trang đó không?

- Nếu có, thêm liên kết này vào cuối danh sách Quay lại (4)- Nếu không, quay lại (2)

(5) Kết thúc

Trang 27

> Chiến lược thu thập dữ liệu theo lựa chọn tốt nhất ngây tho (Naive

Best - First): sử dụng thuật toán tim kiếm lựa chọn tốt nhất theo qUytắc tính điểm số cho các URL Điểm số của một URL được tinhbăng phương pháp độ tương đồng cosin (cosine similarity, [19])

của trang web tương ứng và truy vần mà người dùng đưa ra.

Quá trình thu thập dữ liệu dùng trong trình thu thập tuần tự được

thực hiện như sau:

(1) Cho danh sách Sắp xếp các URL theo thứ tự giảm dan điểm số.(2) Lay trang đầu tiên trong danh sách

- Nếu có, qua (3)- Nếu không, qua (5)

(3) Trang này đã xét chưa?

- Nếu rồi, quay lại (2)- Nếu chưa, qua (4)(4) Đánh dấu trang này đã tới rồi Phân tích và tìm các liên kết có trong

trang này

- Nếu có, thêm các liên kết vào cuối danh sách Quay lại (4)- Nếu không, quay lại (2)

(5) Kết thúc.2.1.3 Crawler đa luéng (Multi-threaded crawler):

Việc sử dụng đa luồng trong đó mỗi luéng xử lý một vòng lặp crawling cóthé cải thiện được đáng kể tốc độ và hiệu qua sử dụng băng thông Mô hình crawlerđa luéng là mô hình làm việc gồm nhiều luồng trên cùng một frontier với mỗi luồnglà một vòng thu thập Chính vì thế cần một cơ chế đồng bộ dé tránh việc xung độtkhi các luéng cùng tiễn hành quá trình thu thập trên một frontier

- _ Luỗng đầu tiên bắt đầu bằng cách khóafrontier dé chọn URL tiếp theo cho

quá trình thu thập dt liệu.

Trang 28

- Sau khi lay ra một URL, nó sẽ mở khóa frontier cho phép các luéng tiếp

theo truy cập vào frontier.

- Frontier lại bị khóa lại dé những URL mới được thêm vào.Các bước khóa này cần thiết để đồng bộ hóa việc sử dụng frontier khi màfrontier bị chia sẻ bởi nhiều vòng thu thập

Các mô hình thu thập đa luồng cũng giải quyết trường hop frontier bị rỗng.Nếu một luéng phát hiện frontier rỗng, nó không tự động hiểu là toàn bộ crawler đãđến trang thái kết thúc, có thé các luéng khác dang nạp thêm các URL mới Mộtcách giải quyết với tình trạng này là đặt một luéng mot trang thai cho khi frontier bikhóa Khi hết thời gian chờ nó sẽ kiểm tra lai frontier Sẽ có một bộ kiểm tra theodõi số luéng dang ở trạng thái chờ tại thời điểm hiện tại Chỉ khi tất cả các luồngđều trong trạng thái chờ thì khi đó crawler sẽ dừng lại [9]

Frontier

| |

|

| || |

Get URL Add URLs Get URL Add URLs '| |

| Ý Ý |

| _ _— |

' d b ry

| —+ Check for termination dt] „@ end > Check for termination fore] ,œ end |

[not «mi [not dere

Lock frontier Lock frontier h

J 1| Pick URL Pick URL' fom frontier fom frontier

: Lock freeticr Lock frertier' L 1

' Add URLs Add URLs

| to frontier to frontier

J J

' ——— Unlock fronticr Unlock frontier

Hình 2.3: Mô hình crawler da luong [9]

Trang 29

2.1.4 Cac yêu cầu đối với crawler [5]:

Tính mềm dẻo (robustness): Nhiều website có nội dung được tạo tự động cóthé tạo ra những trang web với số lượng không xác định được, gọi là bay spider(spider trap) Lỗi này có thể do lỗi trong quá trình phát triển website Vì thế, các bộthu thập cần có khả năng điều chỉnh việc loại bỏ URL để thoát khỏi những bẫy này

Politeness: Nhiều web server của website có thiết lập những qui định chotừng bộ thu thập có thể tải tài liệu tại website đó Khi đó, các bộ thu thập tài liệu

phải tuân theo qui định này.

Tính phân tán (distributed): Bộ thu thập cần có khả năng thực hiện trong

môi trường phân tán trên nhiêu máy.

Có khả năng tăng trưởng (scalable): Kiến trúc của bộ thu thập tài liệu cần

cho phép tăng hiệu quả thu thập khi tăng thêm máy và băng thông.

Hiệu qua (efficiency): can duoc thiét ké hiéu qua trong viéc su dung cac tainguyên hệ thống như: bộ xử lý, dung lượng lưu trữ va băng thông mang, ưu tiên thu

thập những trang hữu ích trước tiên.

Tính mới (freshness): cần thu thập nội dung một trang nào đó theo chu kỳxấp xi với tan số thay đổi nội dung của trang đó

Có khả nang mở rộng (extensible): Có khả năng mở rộng phạm vi thu thậpcác định dạng tài liệu, giao thức tải tài liệu.

2.1.5 Đánh giá đối với crawler:

Để đánh giá chương trình thu thập thông tin tự động hoạt động tốt haykhông phụ thuộc vào chất lượng các trang web thu thập về chương trình và thờigian sống của các trang web này Dé giải quyết van dé naycan xác định những trangweb quan trọng và có giá trị và cơ chế phân tích để đánh giá mức độ chính xác và

hoàn chỉnh kêt quả truy vần của người dùng.

> Độ quan trọng của trang web được đánh giá theo một số tiêu chí

[9]:

Trang 30

= Từ khóa trong tài liệu: một trang web được xem có liên quannêu nó chứa một phân hoặc tât cả từ khóa trong truy vân.

= Tần số phát sinh: số lần xuất hiện của một từ hay cụm từ khóa

trong nội dung trang web Mật độ khóa quan trọng trong việcđánh giá độ quan trọng trang web.

=» Thẻ meta và câu lệnh title: trình thu thập sẽ đọc nội dung và

đánh giá độ quan trọng Các thẻ meta có nhiều hiệu lực cho

việc đánh giá:<meta name="description” content="miéu tả nội dungwebsite”>

<meta name=”keywords” content=”danh sách từ khóa”>

Với câu lệnh <title>(tiêu dé của trang web)</title> không bị bỏtrong thì độ quan trọng của nó có thé được nâng lên

= Sự tương đồng với các trang hạt giống: các trang tương ứngvới các URL hạt giống thường là đơn vị đo cho độ liên quan

của các trang thu thập.

= Tính phố biến của liên kết: một chương trình thu thập thông tincó thé sử dụng kết quả xếp hạng các liên kết của các trang như:Alexa, Google Page Rank dé đưa đánh giá về độ quan trọng.Đánh giá kết quả trả về cho người dùng: phân tích thông tin thuthập về có độ chính xác (precision) và độ hoàn chỉnh (recall):

= Độ chính xác: tỉ lệ giữa số lượng các tài liệu liên quan trongcác tài liệu thu thập được với tong số tài liệu thu thập được

|{releuant documents} n {retrieved documents}|

recision =Pp |{retrieved documents}|

= Độ hoàn chỉnh: tỉ lệ giữa số lượng tài liệu liên quan trong tàiliệu thu thập được với tổng số tài liệu liên quan

Trang 31

{relevant documents} n {retrieved documents}|

recall =

|{relevant documents}|

2.1.6 Cac van dé khi xây dựng crawler [5]:

Chon các URLs: cần có một chiến lược lựa chọn các trang web để crawlertải về Các trang web có nhiều lượt truy cập, cung cấp nội dung có giá trị và phdbiến nên được ưu tiên trong danh sách URL

Cập nhật nội dung: các trang web cập nhật nội dung thường xuyên Vì vậy

cần có chiến lược cập nhật crawler phù hợp

Thu thập nội dung trang web tối ưu: khi các crawler thu thập nội dung cáctrang web sẽ làm tiêu hao tài nguyên Nếu crawler chiếm quá nhiều tài nguyênmạng thì có thé bị quản trị của các website thu thập thông tin loại trừ Vì vậy, cóchiến lược dé nâng cao khả năng hoạt động và ít tốn tài nguyên cho crawler

Xử lý song song: dữ liệu trên internet vô cùng lớn, nên can có nhiều crawler

hoạt động cùng lúc.

Khả năng lưu trữ: crawler hoạt động truy cập vào một URL, lọc thông tin

rồi tìm ra các địa chỉ URL khác (dựa vào những liên kết có bên trong các seeds).Sau đó thêm chúng vào danh sách URL Vì vậy cần phải định nghĩa trước giới hạnđộ sâu của liên kết

Các van dé khó khăn khi xây dung crawler:> Số lượng khống 16 các dữ liệu cần được crawling.> Tốc độ tăng trưởng nhanh chóng các dữ liệu HTML dựa trên các

ngôn ngữ: ASP, PHP, JSP.

> Tốc độ thay đối dữ liệu trên các tài liệu

Trang 32

2.2 Bài tốn rúttrích thơng tin:2.2.1 Ruttrich thơng tin:

Rút trích 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ụ lay ra các mẫu thơng tin “cĩ ích ”đỗi với

người dùng.

Theo Jaeyoung Yang và cộng sự, rút trích xuất thơng tin (IE) là bài tốnnhậ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 ngữ nghĩa của văn ban đĩ [11].

Nĩi một cách đơn giản, 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 Dữ liệuđượcrút trích ra cĩ nội dung và cau trúc thỏa mãn yêu câu người dùng Bài tốn rút

trích thơng tin như sau:

Dau vào: Văn bản cĩ câu trúc bat kỳ.

_ TẢ.là //emeve leoxarsee : 8

—=m an¬ TED oman lọo2ocxeyese cox cột ————

fet jn Panis (Jtine Soochow @lMyVkcở

Teast Ki chenfood maÏs?ac®Sszes

Mayer

DnB tes?prehe nhìu Fagor te ’

-Abert 1 Ste? il he J 0-682 Tele

Hình 2.4: Ví du rút trích thơng tin[13]

Trang 33

2.2.2 Các kỹ thuật rút trích thông tin:

Dữ liệu đầu vào cho bài toánrút trích thông tin rất đa dạng Dữ liệu có thể

dạng không câu trúc, bán câu trúc hoặc có câu trúc.

>Dữ liệu không câu trúc: dữ liệu không câu trúc thường dùng dé chi

dữ liệu ở dạng tự do và không cân câu trúc định nghĩa săn, ví dụnhư ngôn ngữ tự nhiên.

Dữ liệu có cau trúc: dữ liệu có câu trúc thường dùng dé chỉ dữ liệulưu trữ trong các hệ quản trị cơ sở dữ liệu, 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à dit liệu có cấu trúc nhưng không hoàn toàntường minh, nó không tuân theo những cau trúc, cách thức cau 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 phan 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 dang cho dữ liệu bán cầu trúc Hệ thống tậptrung vào bài toán thu thập dữ liệu về và rút trích thông tin từ dữ liệu bán cấu trúc

Có nhiều cách tiếp cận để giải quyết bài toán rút trích thông tin, dựa vào đặctrưng của dữ liệu để giải quyết bài toán rút trích thông tin thì có một số cách:

> Dữ liệu có cau trúc: được lưu trữ trong CSDL, việc lay thông tin

thông qua các câu truy vân của người dùng.

Dữ liệu bán cau trúc: các trang web đại diện cho dữ liệu loại này.Để lay thông tin trên trang web thường sử dụng cấu trúc cây DOMvà sử dụng biéu thức chính quy (Regular Expression)

Dữ liệu không cau trúc:với dữ liệu không cấu trúc thì rút tríchthông tin có thể coi là bài toán nhận dạng và rút trích thực thể như:

tên người, tên tô chức, vi tri

Trang 34

2.2.3 Rút trích thong tin dựa trên cay DOM:

Theo W3C (World Wide Web Consortium) thi DOM (Document ObjectModel) là một giao diện lập trình ứng dung (Application Program Interface - API)

cho các văn bản HTML hợp lệ và các van ban XML có cầu trúc chặt chẽ Nó định

nghĩa câu trúc logic của các văn bản và cách truy xuât, thao tác một văn bản.

<TBODY> Dạng biéu diễn cây DOM của mã HTMI

>

“Th

” + _=A.<TR> 78 | a | | «Tp

hađy Grove } | Aeoken ) ) ( Goran

Hình 2.5: Biéu diễn cây DOMCây DOM được xây dựng trên các thẻ HTML, trong đó node gốc chính làthẻ ngoài cùng <TABLE>, sau đó đến các thẻ long bên trong và lá chính là các nội

dung Như vậy việc trích chọn thông tin trên cây DOM chính là việc duyệt cây

thông qua các cặp thẻ HTML Có hai phương pháp cơ bản để xây dựng các cây

DOM:

> Sử dung các thẻ riêng biệt: trong một cây DOM, mỗi thé là một

node, những cặp thẻ an bên trong là node con cua node hiện tại.

Trang 35

= Làm sạch mã HTML: một vài thẻ không cần thé đóng (như<li>, <hr>, <p>) mặc dù chúng có thể đóng Bởi vậy một thẻđóng được chèn vao dé tat cả các thẻ được cân bang Các thẻđịnh dạng không tốt cũng cần thiết được sữa chữa

= Một thẻ sai thường là thẻ đóng, đó là thẻ cắt ngang các khối an

bên trong.

= Xây dung cây: có thé đi theo các khối con của các thẻ HTMLđể xây dựng được cây DOM

> Su dụng các thẻ và các hộp ao (visual cue): thay vì phan tích ma

HTML để sữa lỗi, có thé sử dụng sự biểu diễn hoặc các thông tin ảođể suy luận mối quan hệ có cau trúc của các thẻ và có thé xây dựng

được cây DOM.2.3 Ham bam (Hash function)

2.3.1 Khai niệm:

Ham băm là hàm toán học chuyển đổi một thông điệp có độ dài bất kythành mot dãy bit có độ dài cố định (tùy thuộc vào thuật toán bam) Day bit này

được gọi là thông điệp rút gọn (message digest) hay giá trị băm (hash value), đại

diện cho thông điệp ban đầu [4].2.3.2 Tính chất cơ bản của ham bam:

Hàm băm là một hàm h có hai tính chất sau:> Tính kháng tiên anh:chat nén: h sẽ tạo ra ánh xạ thông điệp x có độ

dài hữu hạn thành h(x) có độ dài n cô định.> Tinhchat dé dàng tính toán: với h cho trước và một dau vào x, có

thể dễ dang tính được h(x)

Trang 36

| | OWHF CRHF |

| i

Hình 2.6: Phân loại hàm băm2.3.3.1 Cac hàm băm có khóa

Hàm băm có khóa là hàm băm có dữ liệu đâu vào ngoài thông điệp ra còn

có một khóa bí mật Các hàm băm có khóa được sử dụng để xác thực thông báo và

thường được gọi là các thuật toán tao mã xác thực thông báo (MAC — MessageAuthentication Codes).

2.3.3.2 Cac hàm bam không khóa:

Ngoài hai tính chất cơ ban trên ham băm không khóa còn có tinh chất:> Tinh khang tién anh

> Kháng tiền anh thứ hai

> Tinh khang va cham.

Hàm băm không khóa bao gồm các lớp con MDC (Manipulation DetectionCodes) Các MDC được sử dụng để tạo ra ảnh đặc trưng của thông điệp,

đảm bảo sự toàn vẹn của dữ liệu Bản thân MDC được chia thành hai lớphàm sau:

> Ham băm một chiều (OWHF — Oneway hash function): có tính chat

bô sung:

Trang 37

= Kháng tiền ảnh= Kháng tiền ảnh thứ hai

> Ham băm khó va cham (CRHF — Collision resistant hash function):

có tính chất bố sung:= Kháng tiền ảnh thứ hai

=» Kháng va chạm

2.3.4 Cau trúc hàm băm:

Thành phan chính của một hàm băm là một hàm nén và các hàm biến đổikhác Hàm nén được thực thi nhiều lần để băm thông điệp ban đầu của hàm bămthành một chuỗi có chiều dài cố định Các hàm biến đổi khác (có thé có hoặckhông) nhận vào chuỗi bit sau lần cuối cùng thực thi hàm nén và cho kết quả chínhlà mã băm cuối cùng của hàm băm

| |

| : : | |

3 \ Ham nén ⁄ 3

| || |

| |

| || |

| í Đâu ra chiêu đài cô định

: | ' Các biên đôi khác không bat buộc

Ngày đăng: 24/09/2024, 04:04

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

TÀI LIỆU LIÊN QUAN