Thực tế cho thấy các phần mềm ngoài nước đa phần muốn sử dụng thì phải trả phí và thường lọc hình ảnh khiêu dâm còn lọc nội dung khiêu dâm chủ yếu bằng tiếng anh còn bằng tiếng việt thì
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC LẠC HỒNG
NGUYỄN THANH PHONG
XÂY DỰNG BỘ LỌC PHÁT HIỆN CÁC WEBSITE CÓ NỘI DUNG
KHIÊU DÂM DỰA TRÊN URL VÀ TEXT CONTENT
Luận văn Thạc sĩ Công nghệ Thông tin
ĐỒNG NAI, 2014
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC LẠC HỒNG
NGUYỄN THANH PHONG
XÂY DỰNG BỘ LỌC PHÁT HIỆN CÁC WEBSITE CÓ NỘI DUNG
KHIÊU DÂM DỰA TRÊN URL VÀ TEXT CONTENT
Chuyên ngành: Công nghệ Thông tin
Trang 3LỜI CẢM ƠN
Với những lời đầu tiên, em xin dành sự cảm ơn chân thành và sâu sắc tới thầy tiến sỹ Vũ Đức Lung đã hướng dẫn và giúp đỡ em tận tình trong quá trình hoàn thành luận văn
Em cũng xin cảm ơn quý Thầy Cô Trường Đại học Lạc Hồng đã tận tình truyền dạy kiến thức trong quá trình em học tập tại trường, những kiến thức đó đã giúp em rất nhiều trong việc học tập và nghiên cứu sau này
Cuối cùng, xin gửi lời cảm ơn tới những người thân trong gia đình và bạn bè, đồng nghiệp đã giúp đỡ và tạo điều kiện tốt trong quá trình làm luận văn
Trang 4Tôi xin cam đoan kết quả đạt đƣợc trong luận văn là sản phẩm của riêng cá nhân, là kết quả của quá trình học tập và nghiên cứu khoa học độc lập Trong toàn
bộ nội dung của luận văn, những điều đƣợc trình bày hoặc là của cá nhân hoặc là đƣợc tổng hợp từ nhiều nguồn tài liệu Tất cả các tài liệu tham khảo đều có xuất xứ
Trang 5LỜI CẢM ƠN
LỜI CAM ĐOAN
MỤC LỤC
KÝ HIỆU CÁC CỤM TỪ VIẾT TẮT
DANH SÁCH CÁC BẢNG BIỂU, HÌNH VẼ
MỞ ĐẦU 1
Lý do chọn đề tài 1
Mục tiêu đề tài 2
Nội dung thực hiện 2
Phương pháp thực hiện 3
CHƯƠNG 1 TỔNG QUAN VỀ TRÍCH LỌC DỮ LIỆU TRÊN WEBSITE 4
1.1 Giới thiệu 4
1.2 Các loại bộ lọc WEB có nội dung khiêu dâm 4
1.2.1 Bộ lọc WEB dựa vào địa chị mạng 4
1.2.2 Bộ lọc WEB dựa vào URL 6
1.2.3 Bộ lọc WEB dựa vào DNS 9
1.2.4 Bộ lọc WEB dựa vào từ khóa 10
1.2.5 Bộ lọc WEB dựa vào nội dung text và hình ảnh 10
1.3 Các công trình liên quan 11
CHƯƠNG 2 CÁC LÝ THUYẾT ỨNG DỤNG TRONG LUẬN VĂN 15
2.1 Rút trích nội dung của website 15
2.1.1 Phân tích mã HTML 15
2.1.2 So sánh khung mẫu 16
2.1.3 Xử lý ngôn ngữ tự nhiên 17
2.2 Phân tích nội dung thành các token 18
2.2.1 Tiền xử lý dữ liệu 19
2.2.2 Tách câu dựa trên Maximum Entropy 19
2.2.3 Tách từ 21
2.2.3.1 Phương pháp Maximum Matching 25
2.2.3.2 Phương pháp Transformation – based learning – TBL 25
Trang 62.2.3.4 Phương pháp tách từ tiếng việt dựa trên thống kê từ Internet và thuật giải di
truyền 28
2.2.4 Thuật tốn KEA 29
2.2.4.1 Chọn cụm ứng viên 31
2.2.4.2 Tính tốn đặc trưng 33
2.2.4.3 Huấn luyện 33
2.2.4.4 Rút trích những cụm từ khĩa 34
2.2.5 Thuật tốn KIP 34
2.2.6 Nhận diện thực thể cĩ tên 36
2.3 Phân tích URL 37
CHƯƠNG 3 GIẢI PHÁP LỌC WEBSITE KHIÊU DÂM DỰA TRÊN URL VÀ TEXT CONTENT 38
3.1 Phân tích mơ hình hệ thống 38
3.2 Module xử lý dựa vào URL 40
3.3 Module lọc theo nội dung 40
3.3.1 Giai đoạn huấn luyện 41
3.3.1.1 Tiền xử lý văn bản 41
3.3.1.2 Trích lọc đặc trưng 42
3.3.1.3 Thuật tốn Nạve Bayes 44
3.3.2 Giai đoạn phân lớp, nhận dạng 47
CHƯƠNG 4 THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 50
4.1 Mơi trường thử nghiệm 50
4.2 Giao diện chương trình 50
4.2.1 Giao diện chính 50
4.2.2 Giao diện học từ lấy TOKEN phân lớp nội dung Website 53
4.2.3 Giao diện duyệt các TOKEN từ đơn đưa vào danh sách TOKEN 54
4.2.4 Giao diện duyệt các TOKEN từ ghép đưa vào danh sách TOKEN 54
4.2.5 Giao diện danh sách các TOKEN từ phân lớp nội dung Website 55
4.2.6 Giao diện lấy TOKEN URL 55
4.2.7 Giao diện danh sách các TOKEN URL để phân lớp URL của Website 56
4.3 Thu thập dữ liệu 56
Trang 74.3.2 Thu thập dữ liệu để làm cơ sở dữ liệu TOKEN nội dung 57 4.4 Đánh giá kết quả thực nghiệm 58
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 60 TÀI LIỆU THAM KHẢO
Trang 8Từ viết tắt Ý nghĩa
KNN K-Nearest Neighbor
LDA Latent Drichlet Allocation
LLSF Linear Least Square Fit
LRMM Left Right Maximum Matching
NB Nạve Bayes
pLSA Probabilistic Latent Semantic Analysis
SVM Support Vector Machine
TBL Transformation -based Learning
TF Term Frequency
WFST Weighted Finit State Transducer
Trang 9Hình 2.1 - Hệ thống bóc tách nội dung của VietSpider 16
Hình 2.2 – Mô hình bóc tách nội dung chính bằng so sánh khung mẫu 17
Hình 2.3 – Sơ đồ thuật toán KEA 30
Hình 3.1 – Mô hình hệ thống lọc Website có nội dung khiêu dâm 39
Hình 3.2 – Quy trình huấn luyện lấy TOKEN URL 40
Hình 3.3 – Quy trình huấn luyện TOKEN nội dung 41
Hình 3.4 – Quy trình tách từ 42
Hình 3.5 – Mô hình huấn luyện từ 44
Hình 3.6 – Mô hình giai đoạn phân lớp 48
Hình 4.1 – Giao diện lúc khởi động bộ lọc 50
Hình 4.2 – Giao diện đăng nhập 51
Hình 4.3 – Giao diện khi duyệt một địa chỉ WEB tốt 51
Hình 4.4 – Giao diện khi duyệt một địa chỉ WEB xấu 52
Hình 4.5 – Giao diện danh sách địa chỉ WEB tốt, xấu 52
Hình 4.6 – Giao diện chức năng hệ thống 53
Hình 4.7 – Giao diện huấn luyện từ đơn, từ ghép 53
Hình 4.8 – Giao diện duyệt các TOKEN từ đơn đƣa vào danh sách ToKEN 54
Hình 4.9 – Giao diện duyệt các TOKEN từ ghép đƣa vào danh sách ToKEN 54
Hình 4.10 – Giao diện duyệt TOKEN từ đơn và từ ghép 55
Hình 4.11 – Giao diện huấn luyện TOKEN URL 55
Hình 4.12 – Giao diện danh sách các TOKEN URL sau huấn luyện 56
Hình 4.13 – Địa chỉ URL thu thập đƣợc 56
Hình 4.14 – File tốt thu thập đƣợc 57
Hình 4.15 – File xấu thu thập đƣợc 57
Hình 4.16 – Cơ sở dữ liệu TOKEN nội dung sau quá trình huấn luyện 58
Trang 10Bảng 1.1 – Kết quả đánh giá NET PROJECT 5
Bảng 1.2 – Một số sản phẩm lọc WEB theo URL 7
Bảng 2.1 – Xác định cụm ứng viên 32
Bảng 3.1 – Thống kê một số từ điển thông dụng tiếng việt 43
Bảng 3.2 – Số liệu thống kê bảng từ điển 43
Bảng 3.3 – Ví dụ minh họa tần số xuất hiện các TOKEN 46
Bảng 3.4 –Ví dụ minh họa tần số xuất hiện các TOKEN chƣa làm trơn 47
Bảng 3.5 –Ví dụ minh họa tần số xuất hiện các TOKEN đã làm trơn 47
Bảng 4.1 – Kết quả thực nghiệm File nội dung 59
Bảng 4.2 – Kết quả thực nghiệm URL 59
Trang 11MỞ ĐẦU
1 Lý do chọn đề tài
Internet bắt đầu xuất hiện từ những năm thập niên 60 Tuy nhiên tại thời điểm đó nó chỉ được sử dụng nội bộ và phục vụ chủ yếu cho quân sự Ngày 19/11/1997 là ngày đầu tiên Việt Nam chính thức hòa vào mạng Internet toàn cầu, sau mười mấy năm hoạt động Internet trở thành một thuật ngữ hầu như ai cũng biết, một phương tiện truyền thông ai ai cũng đang sử dụng, thậm chí với một số bộ phận còn phụ thuộc hoàn toàn Tầm ảnh huởng của Internet phát tán mạnh mẽ khi nó bắt đầu phát huy công dụng giải trí của mình, người ta không chỉ có thể tìm tư liệu mà còn xem phim, nghe nhạc, chơi game trên mạng Hàng triệu triệu người vào mạng mỗi ngày, nhưng số người vào mạng để làm việc, học tập, truy cập tài liệu thì rất ít
Với sự phát triển nhanh chóng của Internet hiện nay, đó là dấu hiệu đáng mừng trước sự phát triển của công nghệ thông tin trong một xã hội hiện đại Nhưng đằng sau nó là những hệ lụy từ Internet mang lại cho con người, trong đó đặc biệt là giới trẻ Song song với các trò chơi trên mạng, thì việc tò mò truy cập vào các trang
có nội dung không lành mạnh để đọc truyện Sex, xem các hình ảnh khiêu dâm, xem phim Sex cũng trở nên phổ biến và tác hại làm cho người xem muốn có hành vi quan hệ tình dục ngay, dẫn đến tình trạng sa đà vào tệ nạn mại dâm, hiếp dâm khi chưa đủ tuổi vị thành niên. 1
Website khiêu dâm không chỉ ảnh hưởng đến hành vi tình dục của giới trẻ
mà còn ảnh hưởng đến đạo đức làm việc nơi công sở 2 Ngoài ra, nó còn gây mất an ninh cho máy tính cá nhân của người sử dụng và hệ thống mạng máy tính nơi cơ quan, bởi các phần mềm độc hại Vậy làm sao để ngăn chặn không cho người sử dụng truy cập vào các Website có nội dung khiêu dâm là vấn đề đang được xã hội quan tâm Hiện nay trong nước và ngoài nước cũng có nhiều phần mềm được nghiên cứu như:
Nghiên cứu trong nước có thể đề cập đến một số phần mềm sau: Phần mềm Killporn của tác giả Nguyễn Hữu Bình; Phần mềm VwebFilter (viết tắt VWF) của Công ty Điện toán và Truyền số liệu xây dựng; Phần mềm Depraved Web Killer
Trang 12http://baohay.vn/chuyen-de/nhung-dieu-can-biet/288247/Web-sex-dang-tro-thanh-mon-giai-(DWK) của Vũ Lương Bằng, nhân viên công ty Điện thoại Đông, quận 10 (TP HCM); Phần mềm MiniFireWall 4.0 (MFW) của tác giả Huỳnh Ngọc Ẩn (công tác tại phòng Tin học - Bưu điện tỉnh Đồng Tháp); Bộ lọc phát hiện các Website có nội dung không lành mạnh, luận văn thạc sĩ công nghệ thông tin của Cao Nguyễn Thủy Tiên
Nghiên cứu ngoài nước có thể kể đến một số phần mềm sau: STOP
P-O-R-N 5.5 được phát hành bởi PB Software LLC; K9 Web Protection được phát hành bởi Blue Coat Systems; Media Detective 2.3 được phát hành bởi Tap Tap Software; Parental Filter 3.0 được phát hành bởi NWSP Software Design; ScrubLT 3.2.2.0 được phát hành bởi CrubLT; CyberSitter được phát hành bởi Solid Oak Software ; iShield 1.0 được phát hành bởi Guardware
Thực tế cho thấy các phần mềm ngoài nước đa phần muốn sử dụng thì phải trả phí và thường lọc hình ảnh khiêu dâm còn lọc nội dung khiêu dâm chủ yếu bằng tiếng anh còn bằng tiếng việt thì hạn chế, còn các phần mềm trong nước thì cũng còn những hạn chế trong việc chặn từ khóa khiêu dâm thông dụng và chặn URL cụ thể của Website Qua đó cho thấy còn nhiều vấn đề cần phải nghiên cứu làm sáng
tỏ, làm tốt hơn và đó là cũng là lý do mà đề tài “Xây dựng bộ lọc phát hiện các Website có nội dung khiêu dâm dựa trên URL và TEXT CONTENT” được lựa chọn cho luận văn này
2 Mục tiêu đề tài
Xây dựng bộ lọc WEB có thể tự động phát hiện các Website cần truy cập có nội dung khiêu dậm dựa trên URL và TEXT CONTENT của Website
3 Nội dung thực hiện
Thu thập các URL và TEXT CONTENT của các Website có nội dung khiêu dâm và không khiêu dâm để tạo bộ dữ liệu các token từ đã được huấn luyện để phục
vụ cho việc phân loại các Website có nội dung khiêu dâm và không khiêu dâm
Nghiên cứu cách khai phá URL và TEXT CONTENT của Website từ đó đề xuất mô hình lọc các Website có nội dung khiêu dâm dựa trên URL và TEXT CONTENT
Cài đặt bộ lọc Website hiện thực hóa vấn đề nghiên cứu
Trang 134 Phương pháp thực hiện
Dùng các cơng cụ, phần mềm đã cĩ trong nước và ngồi nước để thu thập dữ liệu của các trang tin tức, các trang Web cĩ nội dung khiêu dâm Dữ liệu cần thu thập là URL và nội dung của Website
Để phân lớp URL của một Website cần duyệt thuộc lớp tốt hay xấu thì dựa vào danh sách ToKenURL Danh sách ToKenURL là các từ, cụm từ được huấn luyện từ các URL thu thập được
Để phân lớp nội dung của một Website cần duyệt thuộc lớp cĩ nội dung Khiêu dâm hay khơng thì dựa vào danh sách ToKen nội dung Danh sách ToKen nội dung này được xây dựng từ việc huấn luyện các tập dữ liệu tốt và tập dữ liệu xấu thu thập được, tính tỉ lệ xuất hiện của các ToKen từ trên các tập dữ liệu tốt và xấu để chọn ra các ToKen từ cĩ trọng số cao rồi so sánh với bộ từ điển dữ liệu để chọn ra các ToKen từ đặc trưng dùng để phân lớp nội dung của Website
Nghiên cứu và áp dụng các thuật tốn tách câu, tách từ trong văn bản tiếng việt, kết hợp với thuật tốn Nạve Bayes để tính xác suất nội dung văn bản của Website cần duyệt để phân lớp Website là khiêu dâm hay khơng khiêu dâm
Trang 14CHƯƠNG 1 TỔNG QUAN VỀ TRÍCH LỌC DỮ LIỆU TRÊN
WEBSITE 1.1 Giới thiệu
Lọc trang WEB là một vấn đề không phải là mới Làm sao để phát hiện được các trang WEB có nội dung và hình ảnh khiêu dâm là vấn đề cần thiết Các gia đình có sử dụng Internet thì cha mẹ không muốn con mình tiếp xúc với các trang WEB có nội dung và hình ảnh khiêu dâm Hiện nay, một số quốc gia trên thế giới, trong đó có cả Việt Nam đã và đang nghiên cứu các giải pháp ngăn chặn các trang WEB khiêu dâm sao cho có hiệu quả, vì thế yêu cầu đặt ra là liên tục phát triển các phần mềm phát hiện và ngăn chặn các trang WEB khiêu dâm là một biện pháp an toàn bổ sung Nhiều trang WEB khiêu dâm không chỉ có nội dung khiêu dâm và hình ảnh khiêu dâm mà cón chứa cả phần mềm độc hại, phần mềm quảng cáo, phần mềm gián điệp và Virus…
Nói chung các trang WEB và các trang WEB có thể được phân loại là WEB khiêu dâm chủ yêu dựa trên các yếu tố như: hình ảnh khiêu dâm và nội dung khiêu dâm Trong phạm vi của đề tài này chỉ giới hạn phát hiện và ngăn chặn các trang WEB có nội dung khiêu dâm dựa trên URL và TEXT CONTENT của trang WEB
1.2 Các loại bộ lọc WEB có nội dung khiêu dâm
Lọc chặn nội dung khiêu dâm trên mạng không phải là vấn đề đơn giản, nguyên nhân nằm ở chỗ có hàng tỷ liên kết, và thực chẳng dễ dàng chút nào để biết chắc chắn đâu là liên kết bẩn trong khối lượng thông tin khổng lồ và lộn xộn như thế Dưới đây là một vài cách thức thường được dùng trong các bộ lọc WEB đen, WEB khiêu dâm
1.2.1 Bộ lọc WEB dựa vào địa chỉ mạng
Bộ lọc dựa vào danh sách đen (Back List) và danh sách trắng (White List)
Đây là biện pháp mà hầu hết các công cụ chặn web đen áp dụng, họ xây dựng, chia nhóm và phân loại các trang web để biết chắc chắn nội dung chủ yếu của một tên miền nào đấy thuộc về danh sách đen hay danh sách trắng (danh sách trắng
là danh sách các website được phép truy cập, danh sách đen là danh sách những trang cấm), điều này có thể được thực hiện bằng máy, hoặc thông qua cộng đồng Internet đông đảo giúp sức Nó tỏ ra khá hiệu quả, ngăn chặn hầu như 99% các trang web
Trang 15sex phổ biến, tuy nhiên nhược điểm của chương trình là đôi khi bỏ sót các trang web sex cỡ nhỏ, bởi vì các trang như thế sinh ra rất nhiều mỗi ngày, và không có một phần mềm nào có thể thêm đầy đủ tất cả vào danh sách đen của nó được
Lọc qua địa chỉ IP
Đây là kỹ thuật ngăn chặn trực tiếp trên đường mạng bằng các địa chỉ IP của một website Kỹ thuật này có thể là thiết thực trong bối cảnh các website thường bị truy cập thông qua địa chỉ IP hay nó có thể truy cập thông qua IP thay cho tên DSN Đa số trường hợp, không được khuyến khích dùng do 3 sự kém cỏi sau:
Ngăn chặn truy cập đến một IP cũng sẽ ngăn chặn lưu thông mạng đến những site
có host ảo trên cùng IP ngay cả khi nó có nội dung liên quan đến vấn đề cấm hay không
Ngăn chặn truy cập đến một IP cũng sẽ ngăn chặn lưu thông mạng đến mỗi thành viên của cổng thông tin nằm trên IP đó Nó sẽ ngăn chặn một thành phần của website không phải là một phần hay một tập các trang con
Đó là sự thay đổi thường xuyên của các website bị lọc ngay khi chủ nhân website phát hiện ra bị lọc Hành động này dựa trên DNS để cho phép người dùng vẫn còn truy cập đến trang web Bảng thống kê phía dưới sẽ so sánh kết quả lọc của một số phần mềm theo dự án khảo sát website của dự án NetProject
Bảng 1.1 – Kết quả đánh giá của NetProject
Phần mềm lọc Tỉ lệ khóa dùng Efectiveness Rate
Bức tường lửa (Firewall)
Firewall là một kỹ thuật được tích hợp vào hệ thống mạng để chống sự truy cập trái phép, nhằm bảo vệ các nguồn thông tin nội bộ và hạn chế sự xâm nhập không
Trang 16mong muốn vào hệ thống Thông thường Firewall được đặt giữa mạng bên trong (Intranet) của một công ty, tổ chức, vai trò chính là bảo mật thông tin, ngăn chặn sự truy cập không mong muốn từ bên ngoài và cấm truy cập từ bên trong (Intranet) tới một số địa chỉ nhất định trên Internet
Ưu điểm: Đa số các các hệ thống firewall đều sử dụng bộ lọc packet Một trong
những ưu điểm của phương pháp này là chi phí thấp vì cơ chế lọc packet đã được bao gồm trong mỗi phần mềm router
Hạn chế: việc định nghĩa các chế độ lọc packet là một việc phức tạp, đòi hỏi
người quản trị mạng cần có hiểu biết chi tiết về các dịch vụ Internet, các dạng Packet header,
1.2.2 Bộ lọc WEB dựa vào URL (Universal Resoure Locator)
Dựa vào từ khóa của URL
Thông thường các bộ lọc web như thế này sẽ có một danh sách các từ khóa dành cho người lớn được tạo ra sẳn để nhận dạng được những địa chỉ web bị chặn
Từ khóa URL là chuỗi con nằm trong một địa chỉ web, những URL của trang web
có chứa chuỗi con này thường là những trang web có nội dung khiêu dâm
Các trang web có nội dung khiêu dâm thường dùng từ ngữ khiêu dâm, tình dục làm tên miền cho website với mục đích gợi nhớ để người dùng dễ tìm kiếm bằng các công cụ tiềm kiếm Thực tế cho thấy có trang web nào mà nội dung lành mạnh lại đặt tên miền cho website như thế Vì vậy, những trang web có từ khóa URL như vậy cần chặn trực tiếp ngay từ đầu mà không cần phải tìm hiểu nội dung bên trong
Ví dụ: các trang web này đều là web có nội dung khiêu dâm
Trang 17Ưu điểm: Đơn giản nhưng khá tin cậy
Hạn chế: Đôi khi có một trang nào đấy chẳng chứa bất kỳ từ khóa khiêu dâm nào trong
URL nhưng bản thân trang đó lại có nội dung bẩn sẽ được chương trình bỏ qua hoặc ngược lại một trang web về giáo dục giới tính lành mạnh có thể chứa từ khóa sex trong URL sẽ lại bị chặn
Dựa vào URL
Đây là kỹ thuật lọc bằng cách quan sát lưu thông web (HTTP) bằng cách theo dõi URL và các host field bên trong các yêu cầu HTTP để nhận ra đích đến của yêu cầu Host field đuợc dùng riêng biệt bởi các máy chủ web hosting để nhận
ra tài nguyên nào được trả về
Lọc web qua URL thường được xếp vào loại chủ đề rộng lớn về "Content
Management" Các kỹ thuật lọc qua URL ra đời từ 2 kiểu lọc "pass-by" và "pass- through"
Lọc theo "pass-by": xử lý trên đường mạng mà không cần phải trực tiếp trong
đường nối giữa người dùng và internet Yêu cầu ban đầu được chuyển đến máy chủ web đầu cuối Nếu yêu cầu bị cho là không thích hợp thì bộ lọc sẽ ngăn chặn những trang gốc từ bất cứ yêu cầu truy cập nào Kỹ thuật này cho phép thiết bị lọc không bao gồm bộ định hướng yêu cầu Nếu thiết bị lọc bị hỏng, lưu thông mạng vẫn tiếp tục hoạt động một cách bình thường
Lọc theo "pass-through": gồm việc sử dụng một thiết bị trên đường của tất cả yêu cầu của người dùng Vì thế lưu thông mạng đi qua bộ lọc "pass-through" là
thiết bị lọc thực sự Thường bộ lọc này nằm trong các kiểu firewall, router, application switch, proxy server, cache server
Tùy chọn bộ lọc URL
Điểm đặc biệt của các sản phẩm theo phương pháp này cho phép người dùng chỉ định các URL bằng cách thêm hay bớt các URL khỏi "danh sách các site xấu" (Bad Site List) mặc dù các website nguyên thủy trong danh sách không thể bị loại bỏ Dưới đây là danh sách các sản phẩm lọc web phổ biến
Bảng 1.2 - Một số sản phẩm lọc web theo phương thức URL
Trang 18Web Filter SurfControl
Bt-WebFilter Burst Technology
CyBlock WebFilter Wavecrest Computing
Ưu điểm:
Những Website ảo không bị ảnh hưởng: Kỹ thuật này không ảnh hưởng đến các máy chủ web ảo khi chúng cùng dùng một IP như những website hạn chế Một website bị chặn và website không bị chặn có thể chia sẻ cùng một địa chỉ IP
Không ảnh hưởng đối với việc thay đổi IP: Trong phần lớn tình huống, sự thay đổi IP của website bị hạn chế sẽ không ảnh hưởng đến phương pháp này Vì phương pháp lọc này không phụ thuộc vào địa chỉ IP Chủ sở hữu những trang web có thể đòi bất
cứ IP nào họ muốn, nhưng người dùng đứng sau bộ lọc không thể truy cập được
Những Website ảo không bị ảnh hưởng: Kỹ thuật này không ảnh hưởng đến các máy chủ web ảo khi chúng cùng dùng một IP như những website hạn chế Một website bị chặn và website không bị chặn có thể chia sẻ cùng một địa chỉ IP
Không ảnh hưởng đối với việc thay đổi IP: Trong phần lớn tình huống, sự thay đổi IP của website bị hạn chế sẽ không ảnh hưởng đến phương pháp này Vì phương pháp lọc này không phụ thuộc vào địa chỉ IP Chủ sở hữu những trang web
có thể đòi bất cứ IP nào họ muốn, nhưng người dùng đứng sau bộ lọc không thể truy cập được
Hạn chế:
Thường không thể ngăn chặn các cổng phi tiêu chuẩn:
Những Web server làm việc với cổng tiêu chuẩn rất tốt
Website trên các cổng phi tiêu chuẩn thì khó khăn cho việc ngăn cấm
vì chúng yêu cầu một cấp độ cao hơn trong bộ lọc
Một giải pháp lọc qua URL có thể là kỹ thuật có khả năng cần thiết cho những kết nối HTTP trên các cổng phi tiêu chuẩn
Không làm việc với các lưu thông bị mã hóa: vì HTTP yêu cầu sử dụng SSL/TLS bị mã hóa Phương pháp lọc theo URL không thể đọc các hostfield Cho nên, bộ lọc không có hiệu quả phát hiện một tài nguyên nào trên một địa chỉ IP mà yêu cầu thực sự định hướng vào
Trang 19Tóm lại, các server cần có bộ lọc để thực hiện loại bỏ một số trang web không tốt, nhưng nó có thể làm cho hệ thống chậm lại
1.2.3 Bộ lọc WEB dựa vào DNS
Những website bị lọc sẽ hoàn toàn không thể truy cập được đến tất cả các cấu hình sử dụng bộ lọc nameserver cho bộ phân giải tên do tất cả các bộ lọc nameserver sẽ trả về thông tin bất hợp lệ khi yêu cầu phân giải một hostname của website bị lọc Như vậy không thể truy cập đến tài liệu trên của máy chủ chứa Website Tuy nhiên, các website không bị lọc sẽ cho phép truy cập miễn là chúng nó
có một hostname khác từ các website bị lọc Vì tên của chúng không được hỗ trợ thông tin bất hợp lệ bởi bộ lọc nameserver nên dữ liệu đúng sẽ trả về cho bất cứ người dùng nào yêu cầu phân giải tên và website hiển nhiên là có thể truy cập vào được
Hạn chế:
Không hiệu quả đối với các URL có chứa địa chỉ IP:
Phần lớn những địa chỉ của một website ở dạng DNS (www.lhu.edu.vn), tuy nhiên cũng có những địa chỉ được chỉ định bằng một địa chỉ IP thay vì là dạng DNS (http://118.69.126.40)
Trong trường hợp này nó được truy cập đến bằng địa chỉ IP mà không phải dùng địa crhỉ DNS của nó
Toàn bộ web server bị chặn hoàn toàn: Kỹ thuật không cho phép việc khóa có chọn lựa các trang còn lại trên một webserver Vì thế, nếu một trang bị cấm là www.exp.com/bad.htm thì
có thể tất cả các truy cập không thể truy xuất đến www.exp.com dù nó không trong danh sách bị khóa
Ảnh hưởng đến các subdomain: Xét về kỹ thuật, một tên miền đơn như example.com trong URL http://www.example.com được dùng truy cập đến web server Cùng một thời điểm, domain name có thể phục vụ như một domain cấp trên của các cổng khác như
Trang 20host1.example.com Trong trường hợp này, những địa chỉ DNS dạng www.example.com
có thể bị phân giải sai Ngoài ra, nó cũng làm cho bộ phân giải tên miền bị sai đối với các miền con Và nó còn ảnh hưởng đến các dịch vụ chạy trên mạng như e-mai
1.2.4 Bộ lọc WEB dựa vào từ khóa
Tương tự như cách tiếp cận dựa vào URL keyword cũng có một danh sách các từ khóa để nhận ra những trang web bị chặn Một trang web cấm sẽ chứa nhiều từ khóa không hợp lệ, đây là cơ sở để nhận ra trang web bị cấm Điều quan trọng đối với phương pháp này là ngữ nghĩa của từ khóa theo ngữ cảnh, điều này làm cho hệ thống có những nhầm lẫn khi đưa ra một quyết định về một trang web có được thể hiện hay không
Một website chuyên đề bệnh ung thư có thể bị khóa với lý do bài viết về "bệnh ung thư vú", ta thấy được rằng nếu trong bài viết có đề cập quá nhiều đến từ khóa nằm trong danh sách từ khóa chặn là "vú" thì vô tình hệ thống sẽ nhầm lẫn và khóa
trang này
Vấn đề tiếp theo đó là các từ cố ý hay vô ý đánh vần sai, ở một số trang chứa nội dung xấu thì ngôn từ được dùng trong trang web của nó bị thay đổi để đánh lừa hệ thống lọc, tuy nhiên khi người sử dụng đọc thì có thể hiểu ngay đó chỉ là sai chính tả thôi còn đối với hệ thống lọc điều đó làm ảnh hưởng lớn đến hệ thống
1.2.5 Bộ lọc dựa vào nội dung text và hình ảnh
Theo Stanfor project CS229 của SaiKat Sen Để xây dựng bộ lọc dựa vào nội dung text và hình ảnh tác giả sử dụng ba kỹ thuật chính đó là: phân tích hình ảnh, văn bản, phân tích và xếp hạng
Để phân tích văn bản, tác giả tiến hành kiểm tra:
Tiêu đề trang: nếu tiêu đề trang có chứa một từ người lớn thì trang được phân lớp là trang người lớn
Từ khóa: các trang web dành cho người lớn và các trang web có chứa nội dung gần giống trang web người lớn thì tiến hành tìm kiếm các từ khóa của trang trong từ điển từ vựng về người lớn
URL: phân tích các từ trên URL thành các chuỗi con và tra cứu vào bộ từ điển dành cho người lớn Trong trường hợp không có một từ điển trực tuyến tốt dành cho người lớn thì tiến hành xây dựng bằng cách sử dụng một ứng dụng tùy chỉnh và sử dụng cơ sở dữ liệu từ vựng Princeton
Trang 21WordNet Các tùy chỉnh ứng dụng cho phép người dùng lựa chọn một bộ nguồn từ, kết quả đầu ra từ đồng nghĩa trong mỗi lần lặp và cho phép người sử dụng để phân lớp các từ đồng nghĩa như người lớn, làm xám và sạch sẽ trước khi tiến bước kế tiếp là lặp đi lặp lại với các từ đồng nghĩa người lớn Nó là điều cần thiết để phân lớp các từ đồng nghĩa trong mỗi lần lặp đi lặp lại, nếu không thì túi từ sẽ tăng nhanh kích thước đến hàng ngàn từ với nhiều nghĩa khác nhau Tùychỉnh ứng dụng được xem như là một công cụ được dùng để lặp đi lặp lại cho đến khi nào không còn từ mới Danh sách cuối cùng bao gồm hai tập tin: adult.txt và gray.txt Adult.txt chứa những từ được xác nhận của người lớn thì chúng ta sẽ lọc, gray.txt chứa những từ mà chúng tôi muốn lọc nhưng có thể được sử dụng
ở nội dung người lớn và nội dung không dành cho người lớn Mục đích để
bộ lọc học được số lượng từ thích hợp qua các lần huấn luyện từ vựng thu thâp được bao gồm 106 từ danh sách đen và 26 từ xám
Nội dung trang: theo tasc giả nội dung trang là một yếu tố quyết định quan trọng
Để phân tích hình ảnh: sử dụng kỹ thuật nhận dạng hình ảnh khác nhau Các gói OpenCV được sử dụng để nhận dạng hình ảnh và phân lớp ML Để xếp hạng thì
sử dụng AldultRank một thước đo thứ hạng trương tự như PageRank
1.3 Các công trình liên quan
Ở Việt Nam có một số đề tài như “Nghiên cứu, phát triển hệ thống lọc nội dung hỗ trợ quản lý và đảm bảo an toàn - an ninh thông tin trên mạng Internet - TS Nguyễn Viết Thế - Cục công nghệ tin học từ 01/04/2006 - 01/03/2008” Mục tiêu của đề tài là nghiên cứu và đề xuất giải pháp hỗ trợ công tác quản lý một cách hiệu quả an toàn và an ninh các luồng dữ liệu vào - ra giữa Việt Nam và thế giới qua mạng Internet nói riêng và giữa các mạng diện rộng nói chung Phát triển các công
cụ phần mềm, thiết bị phần cứng cho phép xử lý khối lượng dữ liệu lớn thời gian thực (tính toán song song, tính toán lưới), có khả năng phát hiện và ngăn chặn thông tin (ảnh, văn bản bằng cả tiếng Việt và tiếng Anh) có nội dung không phù hợp với văn hoá, pháp luật Việt Nam và ảnh hưởng xấu đến trật tự an toàn xã hội Triển khai
và ứng dụng thử nghiệm tại cổng thông tin vào/ra tại trường Đại học Công nghệ, tại
Trang 22Bộ Công an, và cổng Internet quốc gia tại trung tâm điện toán và truyền số liệu VDC
“Tài liệu nghiên cứu, phân tích và đề xuất chính sách pháp lý tại Việt nam cho vấn đề lọc nội dung thông tin trên mạng Internet”, báo cáo chuyên đề trong khuôn khổ đề tài nhà nước mang mã số 02/2006 /HĐ -ĐTCT-KC.01/06-10 Cục Công nghệ Tin học nghiệp vụ Bộ Công An
DWK4.1: Depraved Web Killer (DWK) do tác giả Vũ Lương Bằng dự thi chung kết cuộc thi Trí Tuệ Việt Nam năm 2004, tính đến thời điểm này phiên bản mới nhất là v4.1 (2011) có nhiều chức năng như: ngăn chặn các trang web có nội dung xấu (từ khóa, URL), ghi nhật ký các chương trình đã được chạy trên máy, ghi nhật ký các trang web đã được truy cập, ghi nhật ký các trang web xấu mà phần mềm đã ngăn chặn, gửi nhật ký đến địa chỉ mail do người dùng thiết lập,
Giải pháp lọc Web REMPARO là sản phẩm của Công ty TNHH Chíp Sáng
và Ashmanov được phát triển dựa trên công nghệ trí tuệ nhân tạo đọc hiểu ngôn ngữ
tự nhiên Remparo - giải pháp lọc web theo ngữ nghĩa, có tính năng ngăn chặn truy cập trang web có nôi dung xấu, không phù hợp Mỗi trang web đi qua bộ lọc Remparo nếu có nội dung không thích hợp thuộc các chủ đề như khiêu dâm, bạo lực, phản động chính trị sẽ bị hệ thống nhận diện và đưa ra hành động thích hợp như: Cho phép hay ngăn chặn trang web hoặc thực hiện những hành động khác như cảnh báo, chuyển hướng truy cập tuỳ thuộc vào mong muốn của người quản lý Ngoài những module lọc web theo từ khoá, “key words”, theo danh mục “black lisk”/“White list”, giải pháp lọc web Remparo còn tích hợp module lọc web theo nội dung dựa trên công nghệ trí tuệ nhân tạo đọc hiểu ngôn ngữ tự nhiên tiếng Việt
Bên cạnh đó, giải pháp Remparo còn có những tính năng mới như: dễ sử dụng, không cần cài đặt phần mềm; tỷ lệ chặn 99% và có thể lọc những trang web mới xuất hiện chưa được cập nhật trong cơ sở dữ liệu; chặn truy cập từng trang webpage, không chặn cả website; việc chặn lọc được thực hiện hoàn toàn ở phía nhà mạng; có thể thiết lập hệ thống quản lý truy cập từ một trung tâm; không mất thời gian theo dõi và kiểm soát; không làm ảnh hưởng đến tốc độ truy cập Internet
Đề tài luận văn thạc sĩ “Xây dựng bộ lọc phát hiện các website có nội dung không lành mạnh” - Cao Nguyễn Thủy Tiên năm 2011 - Đại học Lạc Hồng Mục tiêu của luận văn tìm hiểu đặc trưng cũng như sự phát triển của website có nội dung
Trang 23không lành mạnh, kết hợp phân tích các hệ thống lọc web hiện có, từ đó đề xuất mô hình có thể tự động phát hiện những trang web có nội dung không lành mạnh sử dụng ngôn ngữ tiếng Việt bằng các kỹ thuật rút trích thông tin từ website cũng như ứng dụng khai phá dữ liệu văn bản, đặc biệt sử dụng thuật toán Naive Bayes nhằm xác định ngưỡng xác suất để phân loại các website không lành mạnh Trong luận văn này tác giả chỉ tập trung phân lớp các website không lành mạnh thông qua nội dung website chưa tiến hành phân lớp URL của website nên bộ lộc xử lý chưa nhanh lắm
Hiện tại, trên thế giới cũng có khá nhiều phương pháp để ngăn chặn những trang web không mong muốn nhưng phần lớn phải am hiểu về kỹ thuật tin học (sử dụng proxy, firewall, bộ lọc, các phần mềm diệt virut, ngăn chặn spyware,…) Điều này cũng mang lại khó khăn cho các phụ huynh vì phần lớn là những người không
có chuyên môn sâu về lĩnh vực này Ngoài ra các phần mềm này còn được bán với giá khá cao và thường chỉ ngăn chặn các trang web dựa vào danh sách đen và trắng
mà chưa chú trọng vào việc phân tích tự động nội dung để ngăn chặn, trong khi các trang web này lại liên tục thay đổi địa chỉ để vượt qua các danh sách này Có thể kể đến các sản phẩm sau:
ChildWebGuardian PRO: là một ứng dụng được thiết kế để cung cấp cho trẻ
em trải nghiệm lướt web an toàn Ứng dụng này sẽ theo dõi và kiểm tra nội dung của mỗi trang web mà ta muốn truy cập Nếu chương trình tìm thấy một số nội dung khiêu dâm, ChildWebGuardian PRO sẽ ngay lập tức chặn xem những trang web như vậy Ứng dụng này bao gồm một số chức năng kiểm soát như: bộ lọc nội dung, bộ lọc trang khiêu dâm, kiểm soát của cha mẹ, chặn URL, chặn truy cập Internet, kiểm soát trò chơi Mỗi một chức năng này đều hình thành một trở ngại lớn cho những ai muốn tìm kiếm thông tin khiêu dâm trên Internet Và trước khi con bạn nhìn thấy bất cứ trang nào, nó sẽ được kiểm tra bởi tất cả chức năng này
Sử dụng tính năng Parental Control được tích hợp vào phiên bản Kaspersky Internet Security 2010
K9 web protection giúp cài đặt các ngăn chặn về thời gian truy cập và danh sách các website cho phép hoặc cấm truy cập
Media Detective: là một phần mềm hữu ích, giúp bạn tìm kiếm và loại bỏ những nội dung khiêu dâm hoặc thiếu lành mạnh trên máy tính của mình bằng cách
Trang 24ngăn chặn truy cập web "đen" Phần mềm có các tính năng như phát hiện hình ảnh khiêu dâm, Quét từ khóa, cung cấp nhiều chế View, kiểm tra File ZIP và phần mở rộng tập tin, Quét tài liệu Word để tìm ra những hình ảnh được nhúng
Anti-Porn (AP) là chương trình phòng chống web "đen" khá tốt nhờ có CSDL các web không lành mạnh chủ yếu bằng tiếng Anh khá đầy đủ
Internet Lock là chương trình dành cho Windows cho phép quản lý việc truy xuất Internet, lướt web, chat và email bằng Password
Net Nanny là một phần mềm được thiết kế dành cho các gia đình muốn có một công cụ để giám sát tình hình sử dụng Internet của con cái
SurfControl – Enterprise Threat Protecion: đây là phần mềm của hãng SurfControl, phần mềm này thiết kế theo cách tiếp cận lọc web và ngăn chặn từ proxy qua URL và từ khóa, có khoảng 20 cách ngăn chặn
Internet Filter – Web Filters: do hãng iPrism Internet Filters & Web Filters phát triển, là phần mềm thực hiện giám sát và ngăn chặn Phần mềm này được quảng cáo là cùng kỹ thuật lọc web động kiểm soát nội dung trang web ngay từ ở ngõ vào Tuy nhiên, theo hướng dẫn quản trị của nhà sản xuất thì phần mềm này cũng có bóng dáng của kỹ thuật dùng phương pháp lọc chặn từ khóa
FamilyWall: là phần mềm bức tường lửa chạy thường trú trên máy tính của người sử dụng Chức năng chủ yếu của FamilyWall là ngăn chặn việc truy cập các Website có nội dung xấu trên mạng Internet, bao gồm các lớp kiểm soát chính sau: các từ khóa có nội dung xấu, nội dung các trang Web, danh sách các Website xấu đã được phát hiện, …
Nói chung những phần mềm hay công cụ trên thực hiện tốt các chức năng chặn các trang web không mong muốn dưới dạng danh sách đen, danh sách trắng, từ khóa tiếng Anh Nhưng hầu hết các phần mềm này không có cơ chế tự học, tự cải thiện để thích nghi với các thay đổi hay những dữ liệu mới thêm vào của các trang web không mong muốn và hầu hết phát triển cho ngăn chặn các trang web tiếng Anh hơn là tiếng Việt
Trang 25CHƯƠNG 2 CÁC LÝ THUYẾT ỨNG DỤNG TRONG LUẬN VĂN
2.1 Rút trích nội dung của website
Việc rút trích nội dung trên web thường được thực hiện bằng cách sử dụng các crawler hay wrapper Một wrapper được xem như là một thủ tục được thiết kế
để có thể rút trích được những nội dung cần quan tâm của một nguồn thông tin nào
đó Đã có nhiều công trình nghiên cứu khác nhau trên thế giới sử dụng nhiều phương pháp tạo wrapper khác nhau để thực hiện rút trích thông tin trên web Các phương pháp này bao gồm:
Khó khăn của bài toán là không phải toàn bộ nội dung của trang web đều cần thiết Nếu chỉ đơn thuần loại các chuỗi script HTML thì nội dung lọc được sẽ rất nhiều lỗi rác không cần thiết Ví dụ: phần thông tin quảng cáo, tin mới cập nhật, nội dung tin ngắn, menu những nội dung như thế này thường cần phải bỏ qua trong quá trình bóc tách nội dung chính của trang web
Trang 26dung đã bóc tách Sau quy trình khai thác, nội dung sẽ trở thành độc lập với website nguồn, được lưu trữ và tái sử dụng cho những mục đích khác nhau
Hình 2.1: Hệ thống bóc tách nội dung của VietSpider
Hệ thống của tác giả Nhữ Đình Thuần cũng đã cài đặt mô hình khai phá dữ liệu cho phép tổng hợp những nội dung liên quan Xây dựng mô hình topic tracking cho phép theo dõi các sự kiện đang diễn ra theo tuần tự thời gian Mô hình thuật
toán được cài đặt là LOR (Linked Object Representation) với sự hỗ trợ của kỹ thuật Stopping trong phân tách nội dung Giải pháp đánh chỉ mục (indexing) và tìm kiếm (searching) được sửa đổi và cải tiến từ một giải pháp nguồn mở nổi tiếng của
Apache là Lucene Search
Tuy nhiên, hạn chế của chương trình là cần phải xác định đường dẫn đến vùng nội dung chính trước khi bóc tách đối với mỗi domain Như thế sẽ khó khăn nếu hệ thống khi gặp phải một trang web mới hoàn toàn
2.1.2 So sánh khung mẫu
Phương pháp rút trích thông tin bằng cách so trùng hai trang web được xây dựng trên nền tảng nhận dạng mẫu được tác giả Trang Nhật Quang thực hiện trong việc rút trích nội dung nhằm cung cấp tin tức trên trang web hành chính Phương pháp này cho phép so khớp trang web cần rút trích với một trang web mẫu để xác định khung trình bày chung cho cả hai trang web cần rút trích, từ đó đi đến rút trích
ra nội dung nằm trong phần được xác định chứa nội dung chính trên trang mẫu
Trang 27(a) (b) (c)
Hình 2.2: Mô hình bóc tách nội dung chính bằng so sánh khung mẫu
(a) Trang web cần rút nội dung chính (b) Trang web khung mẫu (được xác định trước) (c) Nội dung chính sau khi so khớp và rút được Phương pháp này không đòi hỏi người sử dụng phải biết về ngôn ngữ xây dựng wrapper hay phải thay đổi wrapper khi cách trình bày thay đổi do trang web mẫu có thể lấy trực tiếp từ trang chủ và có cùng cách trình bày với trang cần rút trích Tuy nhiên, đối với mỗi domain, cần phải xác định được một trang web làm mẫu cho những trang khác Đây cũng là một hạn chế trong quá trình tự động hóa xác định nội dung chính của web
2.1.3 Xử lý ngôn ngữ tự nhiên
Đây là phương pháp sử dụng các kỹ thuật xử lý ngôn ngữ tự nhiên được áp dụng cho những tài liệu mà thông tin trên đó thường không có một cấu trúc nhất định (như truyện) Các kỹ thuật này xem xét sự ràng buộc về mặt cú pháp và ngữ nghĩa để nhận dạng ra các thông tin liên quan và rút trích ra thông tin cần thiết cho các bước xử lý nào đó Các công cụ sử dụng phương pháp này thích hợp cho việc rút trích thông tin trên những trang web có chứa những đoạn văn tuân theo quy luật văn phạm Một số công cụ sử dụng phương pháp xử lý ngôn ngữ tự nhiên trong việc bóc tách nội dung như: WHISK hay RAPIER
Đặc trưng của phương pháp này còn phụ thuộc vào ngôn ngữ trên trang web cần được bóc tách nội dung Đối với tiếng Việt có đề tài “Rút trích nội dung chính
Trang 28trang web dựa vào ngữ cảnh của trang web” của tác giả Hồ Anh Thư4 Đề tài tiến hành xác định nội dung chính của trang web dựa vào ngữ cảnh của nội dung, sau đó tiến hành rút trích bản tóm tắt của nội dung dựa trên phương pháp chọn câu trội Việc xác định nội dung chính được thực hiện qua các bước:
Loại bỏ thông tin định dạng
Tách vùng nội dung dựa vào cấu trúc, mà cụ thể là sử dụng tag TABLE để tách vùng văn bản
Xác định mức độ liên quan về mặt nội dung để ghép nối các vùng kế cận với nhau
Chọn vùng văn bản có kích thước lớn nhất để xử lý tiếp
Tuy nhiên phương pháp này có một số nhược điểm sau:
Tùy theo mức độ xử lý mà quá trình bóc tách phụ thuộc nhiều hoặc ít vào ngôn ngữ xử lý
Phương pháp dựa vào độ đo tương tự giữa các vùng để ghép nối từ đó xác định nội dung chính Những nếu các nội dung chính được chia trên nhiều table với các thông tin ít liên quan đến nhau thì sẽ khó khăn trong việc mở rộng và xác định vùng nội dung chính chứa tất cả chúng
Trường hợp thông tin trong một vùng (table) quá ít, sẽ ảnh hưởng đến quá trình tính tương đồng và mở rộng vùng nội dung chính
2.2 Phân tích nội dung thành các token
Token được dịch sang tiếng việt là “dấu hiệu” hay “biểu hiện” Khi rút trích được nội dung từ một trang WEB việc phân loại nội dung của trang web đó có thuộc web khiêu dâm hay không thì phải tiến hành tiền xử lý dữ liệu, tách câu, tách từ…
2.2.1 Tiền xử lý dữ liệu
Thông thường các bước tiền xử lý văn bản sẽ có trình tự sau:
Rút trích nội dung văn bản như lấy nội dung từ các trang web cần xử lý để loại bỏ các thẻ (tag) của html rồi rút trích nội dung của trang web
4
http://vietnam.usembassy.gov/educational_exchange.html
Trang 29 Tách ngữ: ứng với mỗi văn bản đã rút trích nội dung, ta tiến hành loại bỏ các
ký hiệu, các chữ số không cần thiết, phân tích văn bản thành các ngữ phân cách bởi dấu câu
Tách từ, trong đó bước tách từ có thể nói là rất quan trọng, ảnh hưởng đến kết quả phân loại văn bản
Loại bỏ Stopword (những từ xuất hiện hầu hết trong các văn bản, không có ý nghĩa trong phân loại văn bản): bằng cách sử dụng một danh sách các từ dừng thường là file lưu trữ các Stopword luôn gặp phải trong phân loại văn bản hoặc bằng cách thống kê từ chính trong tập huấn luyện
Mục đích của bước này là xử lý tương đối sạch dữ liệu đọc vào để các bước sau sẽ xử lý tốt hơn, do đó công việc của bước này sẽ chỉ là lấy dữ liệu từ các Webiste ghi dữ liệu vào file text thành chuỗi ký tự thuần túy (text) do đó nó sẽ có yêu cầu như sau:
Loại bỏ các dữ liệu là loại bỏ các thẻ tag định dạng, các link liên kết, các link hình ảnh
Loại bỏ các khoảng trắng nhiều hơn 1 khoảng trắng
Các dấu xuống dòng
Cách dòng trống
Các ký tự lạ
2.2.2 Tách câu dựa trên Maximum Entropy
Phuong H.L và Vinh H.T [4] mô hình hóa bài toán tách câu dưới dạng bài toán phân lớp trên Maximum Entropy Với mỗi chuỗi ký tự có thể là điểm phân cách câu (".", "?", hay "!"), ước lượng xác xuất đồng thời của ký tự đó cùng với ngữ cảnh xung quanh (biểu diễn bởi biến ngẫu nhiên c) và biến ngẫu nhiên thể hiện đó có
thực sự là điểm phân tách câu hay không (b \in {no, yes}) Xác xuất mô hình được
định nghĩa như sau:
Ở đây: j là các tham số chưa biết của mô hình, mỗi aj tương ứng với một hàm đặc trưng
fj Gọi B = {no, yes} là tập các lớp và C là tập của các ngữ cảnh Các đặc trưng là các hàm nhị phân fj: B x C {0, 1} dùng để mã hóa thông tin cần thiết Xác suất để quan sát
Trang 30được điểm phân tách câu trong ngữ cảnh c được đặc trưng bởi xác xuất p(yes, c) Tham số j được chọn là giá trị làm cực đại hàm likehook của dữ liệu huấn luyện với các
thuật toán GIS và IIS
Để phân lớp một ký tự tách câu tiềm năng vào một trong hai lớp {yes, no} - lớp yes nghĩa là đó thực sự là một ký tự phân tách câu, còn no thì là ngược lại, dựa vào luật
phân lớp như sau
p(yes|c) = p(yes,c)/p(c) = p (yes,c)/(p(yes,c) + p(no,c))
Ở đây c là ngữ cảnh xung quanh ký tự tách câu tiềm năng đó và bao gồm cả ký tự đang xem xét Sau đây là những lựa chọn hàm tiềm năng fj để phân tách câu trong
tiếng Việt
Lựa chọn đặc trưng
Các đặc trưng trong Maximum Entropy mã hóa các thông tin hữu ích cho bài toán tách câu Nếu đặc trưng xuất hiện trong tập đặc trưng, trọng số tương ứng của nó
dùng để hỗ trợ cho tính toán xác xuất p(b|c)
Các ký tự tách câu tiềm năng được xác định bằng cách duyệt qua văn bản, xác định các chuỗi ký tự được phân cách bởi dấu cách (còn gọi là token) và chứa một trong các ký tự ".", "?", hay "!" Thông tin về token và thông tin ngữ cảnh về token liền trái, phải của token hiện tại được xác định xác xuất phần lớn
Gọi các token chứa các ký tự kết thúc câu tiềm năng là "ứng viên" Phần ký tự đi trước ký tự kết thúc câu tiềm năng được gọi là "tiền tố", phần đi sau gọi là "hậu tố" Vị
trí của ký tự kết thúc câu tiềm năng cũng được mô tả trong tập đặc trưng Tập các ngữ cảnh được xem xét từ chuỗi ký tự được mô tả như dưới đây
1 Có/ không có 1 ký tự trống trước ký tự kết thúc câu tiềm năng
2 Có/ không có 1 ký tự trắng sau ký tự kết thúc câu tiềm năng
3 Ký tự kết thúc câu tiềm năng
4 Đặc trưng tiền tố
5 Độ dài tiền tố nếu nó có độ dài lớn hơn 0
6 Ký tự đầu tiên của tiền tố là ký tự
7 Tiền tố nằm trong danh sách các từ viết tắt
8 Đặc trưng hậu tố
9 Token đi trước token hiện tại
Trang 3110 Ký tự đầu tiên của token liền trước viết hoa/ không viết hoa
11 Token liền trước nằm trong danh sách các từ viết tắt
12 Token liền sau
13 Token ứng viên được viết hoa/ không viết hoa
"Hackers Zone" được tổ chức vào ngày 13/5/1999 tại Singapore."
Xem xét ký tự kết thúc câu tiềm năng "." Trong token "10.000 USD", từ vị trí này
Từ dữ liệu học này, có thể rút trích ra các đặc trưng như ví dụ dưới đây:
f{không có ký tự trắng trước ứng viên, no} = 1 Ý nghĩa của đặc trưng này là phát biểu: "token không có ký tự trắng trước ứng viên và nhãn là no" là đúng (đặc
trưng nhận giá trị 1)
Sau khi ước lượng trọng số đặc trưng ta dựa vào các tham số đó để tính giá trị
p(yes|c) Nếu giá trị này >50%, nhãn tương ứng với ký tự ứng viên được ghi nhận là
"yes" hay ký tự ứng viên thực sự là ký tự phân tách câu
Trang 32tương tự là các từ có nghĩa cách nhau bằng một khoảng trắng, do vậy việc tách từ trở nên rất đơn giản Trong khi đối với tiếng Việt, ranh giới từ không được xác định mặc định là khoảng trắng mà tùy thuộc vào ngữ cảnh dùng câu tiếng Việt Ví dụ: các từ trong tiếng Anh là “book”, “cat” thì trong tiếng Việt là “quyển sách”, “con mèo”, ví dụ “du dương’ nếu cắt bằng khoảng trắng thì ra các từ đơn vô nghĩa không biểu hiện nghĩa ban đầu của từ ghép Như vậy việc xác định từ có nghĩa bằng khoảng trắng để có một đơn vị từ (term) phục vụ cho mục đích tìm kiếm đối với tiếng Việt là không có giá trị, các công trình nghiên cứu về phân loại văn bản gần đây đã có một số kết quả ban đầu nhưng vẫn còn nhiều hạn chế Nguyên nhân là ngay ở bước đầu tiên, chúng ta đã gặp khó khăn trong việc xử lý văn bản để rút ra tần số xuất hiện của từ Trong khi đó, để phân loại văn bản thì có thể nói bước đầu tiên là quan trọng nhất bởi vì nếu ở bước tách từ đã sai thì việc phân loại hầu như không thể thành công được Phần lớn các phương pháp tách từ tiếng Việt đều dựa trên tập dữ liệu huấn luyện và từ điển trong khi hiện nay chưa có từ điển hay tập dữ liệu huấn luyện tiếng Việt được gán nhãn đủ lớn phục vụ việc này Cũng có các công trình nghiên cứu về việc tách từ cho tiếng Việt như vntokenizer của tác giả Lê Hồng Phương nhưng do tính chất đa nghĩa của câu tiếng Việt nên không phải đoạn văn bản nào cũng có thể tách từ một cách chuẩn xác, ví dụ cụm từ “con ngựa đá con ngựa đá” trong từng hoàn cảnh có ý nghĩa khác nhau
Các hướng tiếp cận dựa trên ký tự (dựa trên “tiếng” trong tiếng Việt):
Hướng tiếp cận này đơn thuần rút trích ra một số lượng nhất định các tiếng trong văn bản như rút trích từ 1 ký tự (unigram) hay nhiều ký tự (n-gram) và cũng mang lại một số kết qủa nhất định được minh chứng thông qua một số công trình nghiên cứu đã được công bố như của tác giả Lê An Hà [14] năm 2003, xây dựng tập ngữ liệu thô 10MB bằng cách sử dụng phương pháp qui hoạch động để cực đại hóa xác suất xuất hiện của các ngữ của các phân đọan được phân cách bởi các ký tự phân cách, với mỗi câu, sẽ xác định cách tách từ hợp lý nhất
Một phương pháp khác là tách tiếng Việt dựa trên thống kê từ Internet và thuật giải di truyền – IGATEC (Internet and Genetics Algorithm based Text Categorization for ngữ, cấu trúc khác nhau.Documents in Vietnamese) do tác giả H.Nguyễn [13] đề xuất năm 2005 làm theo hướng tiếp cận mới thay vì sử dụng ngữ liệu thô công trình tiếp cận theo hướng xem Internet như một kho ngữ liệu khổng lồ,
Trang 33sau đó tiến hành thống kê và sử dụng thuật giải di truyền để tìm cách tách từ tối ưu nhất, điểm mới của hướng tiếp cận này là thay vì phải sử dụng ngữ liệu huấn luyện
đã được gán nhãn hay lexicon vốn chưa có sẵn cho tiếng Việt, tác giả đã sử dụng thông tin thống kê rút trích trực tiếp từ search engine và dùng giải thuật di truyền để xác định những cách tách từ hợp lý nhất đối với văn bản tiếng Việt cho trước, điểm khác biệt của thuật toán là kết hợp giải thuật di truyền với việc trích xuất thông tin thống kê từ Internet thông qua một công cụ tìm kiếm thay vì lấy từ tập dữ liệu như các phương pháp khác Giải thuật di truyền cho phép xây dựng phương pháp tìm kiếm song song (tìm kiếm tiến hóa) trên quần thể mà trong đó mỗi cá thể tương ứng với một cách tách từ cho câu đang xét Hàm thích nghi sẽ đánh giá độ thích nghi của các tài liệu thống kê, rút trích từ Internet, thông tin rút trích bao gồm tần số các tài liệu và thông tin tương quan giữa các nhóm từ trong tài liệu Dựa vào nguyên lý tiến hóa và giải thuật di truyền thích hợp cho việc xác định xấp xỉ các lời giải tối ưu hóa toàn cục trong không gian tìm kiếm rất lớn thay vì các lời giải tối ưu cục bộ Giải thuật di truyền sẽ tiến hóa một quần thể qua nhiều thế hệ nhằm tối ưu hóa toàn cục thông quá quá trình chọn lọc, lai, biến dị và tái sinh Chất lượng của mỗi cá thể trong quần thể được xác định bằng hàm thích nghi và qua mỗi thế hệ, chúng ta sẽ chọn lại N cá thể tốt nhất sau khi thực hiện quá trình lai, biến dị và tái sinh Các kết quả thực nghiệm của tác giả Nguyễn Thanh Hùng [6] trong việc tìm hiểu hướng tiếp cận mới ứng dụng giải thuật di truyền và thống kê Internet đạt được những kết quả khả quan trong việc tách từ và phân loại văn bản tiếng Việt với độ đo micro-averaging F1 (Yang) đạt trên 90%
Khi so sánh kết qủa của tác giả Lê An Hà [14] và H.Nguyễn [13] thì thấy công trình của H.Nguyễn cho được kết qủa tốt hơn khi tiến hành tách từ, tuy nhiên
do tốc độ xử lý của giải thuật nên thời gian xử lý lâu hơn Ưu điểm nổi bật của hướng tiếp cận dựa trên nhiều ký tự là tính đơn giản, dễ ứng dụng, ngoài ra còn có thuận lợi là ít tốn chi phí cho thao tác tạo chỉ mục và xử lý nhiều câu truy vấn Qua nhiều công trình nghiên cứu của các tác giả đã được công bố, hướng tiếp cận tách từ dựa trên nhiều ký tự, cụ thể là cách tách từ hai ký tự được cho là sự lựa chọn thích hợp Tuy nhiên, không gian tìm kiếm sẽ rất lớn do có nhiều cách tổ hợp các tiếng thành từ
Các hướng tiếp cận dựa trên “từ”:
Trang 34Mục tiêu là tách được các từ hoàn chỉnh trong câu, hướng tiếp cận này được chia thành 3 nhóm
+ Hướng tiếp cận dựa trên thống kê: Các giải pháp theo hướng tiếp cận dựa vào thống kê cần phải dựa vào thông tin thống kê như term, từ hay tần số ký tự, hay xác suất cùng xuất hiện trong một tập dữ liệu cơ sở Ưu điểm của hướng tiếp cận này tỏ ra linh hoạt và hữu dụng trong nhiều lĩnh vực khác nhau Tuy nhiên, tính hiệu quả của các giải pháp loại này chủ yếu dựa vào ngữ liệu huấn luyện cụ thể được sử dụng Đáng tiếc đây lại là vấn đề khó khăn đối với bài toán tách từ tiếng Việt như đã trình bày ở phần trên Theo tác giả Đinh Điền [12] đã xây dựng ngữ liệu huấn luyện riêng (khoảng 10MB) dựa vào các tài nguyên, tin tức và sách điện
tử trên Internet Dĩ nhiên là bộ ngữ liệu này khá nhỏ và không toàn diện, không rộng để bao gồm đủ các lĩnh vực, chủ đề khác nhau
+ Hướng tiếp cận dựa trên từ điển: Ý tưởng của hướng tiếp cận này là những cụm từ được tách ra từ văn bản phải được so khớp với các từ trong từ điển Do đó trong hướng tiếp cận này đòi hỏi từ điển riêng cho từng lĩnh vực quan tâm Từ điển thành phần chỉ chứa các thành phần của từ và ngữ như hình vị và các từ đơn giản Hướng tiếp cận theo từ điển vẫn còn một số hạn chế trong việc tách từ vì thực hiện hoàn toàn dựa vào từ điển Nếu như thực hiện thao tác tách từ bằng cách sử dụng từ điển hoàn chỉnh thì trong thực tế việc xây dựng một bộ từ điển hoàn chỉnh là khó thực hiện vì đòi hỏi nhiều thời gian và công sức Nếu tiếp cận theo hướng sử dụng
từ điển thành phần thì sẽ giảm nhẹ hạn chế, nhưng khó khăn khi xây dựng từ điển vì khi đó sẽ sử dụng các hình vị từ, các từ đơn giản và các từ khác để hình thành nên
từ, cụm từ hoàn chỉnh Việc xây dựng từ điển các từ và ngữ tiếng Việt hoàn chỉnh là khó khả thi
+ Hướng tiếp cận theo Hybrid: Hướng tiếp cận lai này là sự kết hợp hai hướng dựa trên thống kê và dựa trên từ điển để thừa hưởng được các ưu điểm của nhiều kỹ thuật và các hướng tiếp cận khác nhau nhằm nâng cao kết qủa Tuy nhiên hướng tiếp cận Hybrid đòi hỏi có bộ lexicon tốt hay ngữ liệu huấn luyện đủ lớn và đáng tin cậy lại nhưng sẽ mất nhiều thời gian xử lý, bộ nhớ lưu trữ, đòi hỏi nhiều chi phí
Một số phương pháp tách từ Tiếng Việt được sử dụng hiện nay
Trang 352.2.3.1 Phương pháp Maximum Matching: Forward / Backward
Phương pháp so khớp cực đại (Maximum Matching - MM) hay còn gọi là LRMM - Left Right Maximum Matching, được trình bày bởi Chih-Hao Tsai [11] năm 2000 Phương pháp này sẽ duyệt một ngữ hoặc câu từ trái sang phải và chọn từ
có nhiều âm tiết nhất có mặt trong từ điển và cứ thực hiện lặp lại như vậy cho đến hết câu
Dạng đơn giản của phương pháp dùng để giải quyết nhập nhằng từ đơn Giả
sử chúng ta có một chuỗi ký tự C1, C2,…, Cn Chúng ta sẽ áp dụng phương pháp từ đầu chuỗi Đầu tiên kiểm tra xem C1 có phải là từ hay không, sau đó kiểm tra xem C1C2 có phải là từ hay không Tiếp tục thực hiện như thế cho đến khi tìm được từ dài nhất
Dạng phức tạp: Quy tắc của dạng này là phân đoạn từ Thông thường người
ta chọn phân đoạn ba từ có chiều dài tối đa Thuật toán bắt đầu từ dạng đơn giản, cụ thể là nếu phát hiện ra những cách tách từ gây nhập nhằng, như ở ví dụ trên, giả sử C1 là từ và C1C2 cũng là một từ, khi đó chúng ta kiểm tra ký tự kế tiếp trong chuỗi C1, C2 , … , Cn để tìm tất cả các đoạn ba từ có bắt đầu với C1 hoặc C1C2
Giả sử chúng ta có được các đoạn sau:
đủ và chính xác của từ điển
2.2.3.2 Phương pháp Transformation – based Learning – TBL:
Phương pháp TBL (Transformation-Based Learning) còn gọi là phương pháp học cải tiến, được Eric Brill giới thiệu lần đầu vào năm 1992 Ý tưởng của phương pháp này áp dụng cho bài toán phân đoạn như sau: đầu tiên gọi văn bản chưa được phân đoạn là D1 sẽ khởi tạo các xử lý cho chương trình phân đoạn ban đầu P1 Chương trình P1 có độ phức tạp tùy chọn, có thể chỉ là chú thích văn bản bằng cấu
Trang 36trúc ngẫu nhiên, hoặc phúc tạp hơn là phân đoạn văn bản một cách thủ công Sau khi qua chương trình P1, ta được văn bản D2 đã được phân đoạn Văn bản D2 được
so sánh với văn bản đã được phân đoạn trước một cách chính xác là D3 Chương trình P2 sẽ thực hiện học từng phép chuyển đổi (transformation) để khi áp dụng thì D2 sẽ giống với văn bản chuẩn D3 hơn Quá trình học được lặp đi lặp lại đến khi không còn phép chuyển đổi nào tốt hơn nữa và kết quả sẽ thu được bộ luật R dùng cho phân đoạn
Có thể hiểu cách tiếp cận này dựa trên tập ngữ liệu đã đánh dấu, hệ thống có thể nhận biết ranh giới giữa các từ để việc tách từ chính xác với phương pháp này sẽ cho máy học các câu mẫu trong tập ngữ liệu đã được đánh dấu ranh giới giữa các từ đúng Ưu điểm của phương pháp này là đơn giản vì chỉ cần cho máy học các tập câu mẫu và sau đó máy sẽ tự rút ra qui luật của ngôn ngữ để từ đó sẽ áp dụng chính xác khi có những câu đúng dựa theo luật mà máy đã rút ra Tuy nhiên nhược điểm là mất rất nhiều thời gian học và tốn nhiều không gian bộ nhớ do nó phải sinh ra các luật trung gian trong quá trình học Để tách từ được chính xác trong mọi trường hợp thì đòi hỏi phải có một tập ngữ liệu tiếng Việt đầy đủ và phải qua thời gian huấn luyện lâu để có thể rút ra các luật đầy đủ
2.2.3.3 Mô hình tách từ bằng WFST và mạng Neural
Mô hình mạng chuyển dịch trạng thái hữu hạn có trọng số WFST– Weighted Finit State Transducer, áp dụng WFST với trọng số là xác suất xuất hiện của mỗi từ trong kho ngữ liệu, dùng WFST để duyệt qua các câu cần xét, khi đó từ có trọng số lớn nhất là từ được chọn để tách Mô hình WFST đã được ứng dụng vào việc phân đoạn từ cho tiếng Trung Quốc được tác giả Richard Sproat và các cộng sự trình bày năm 1996 Năm 2001 tác giả Đinh Điền [12] đã công bố công trình sử dụng mô hình lai WFST kết hợp với mạng Neural để khử nhập nhằng khi tách từ, trong công trình này tác giả đã xây dựng hệ thống tách từ gồm tầng WFST để tách từ và xử lý các vấn đề liên quan đến một số đặc thù riêng của ngôn ngữ tiếng Việt như từ láy, tên riêng, và tầng mạng Neural dùng để khử nhập nhằng về ngữ nghĩa sau khi đã tách từ Mô hình WFST căn cứ trên các trọng số này để chọn ra một cách tách từ thích hợp Sau khi có được tất cả trạng thái tách từ có thể có của câu, với mỗi trạng thái, mô hình tính tổng trọng số và chọn trạng thái tách từ đúng nhất là câu có tổng trọng số nhỏ nhất