Cụ thể, Điều 101 quy định phạt tiền từ 10 - 20triệu đồng đối với hành vi lợi dụng mạng xã hội để cung cấp, chia sẻ thông tin giảmạo, thông tin sai sự thật, xuyên tạc, vu khống, xúc phạm
Trang 1TRƯỜNG ĐẠI HỌC ĐỒNG THÁP
KHOA SƯ PHẠM TOÁN - TIN
VĂNG CÔNG TÍN – 0021411832
NGUYN NHỰT THỊNH – 0021413224 PHẠM THẾ HỌC – 0021410253
BÁO CÁO KẾT THÚC MÔN KHAI PHÁ DỮ LIỆU
XÂY DỰNG ỨNG DỤNG WEB DỰ ĐOÁN TIN TỨC GIẢ MẠO
NGÀNH: KHOA HỌC MÁY TÍNH
LỚP: ĐHCNTT21A, ĐHCNTT21B
Đồng Tháp, ngày 26 tháng 01 năm 2024
Trang 2TRƯỜNG ĐẠI HỌC ĐỒNG THÁP
KHOA SƯ PHẠM TOÁN - TIN
VĂNG CÔNG TÍN – 0021411832
NGUYN NHỰT THỊNH – 0021413224 PHẠM THẾ HỌC – 0021410253
BÁO CÁO KẾT THÚC MÔN KHAI PHÁ DỮ LIỆU
XÂY DỰNG ỨNG DỤNG WEB DỰ ĐOÁN TIN TỨC GIẢ MẠO
NGÀNH: KHOA HỌC MÁY TÍNH
LỚP: ĐHCNTT21A, ĐHCNTT21B
Giảng viên hướng dẫn: ThS Huỳnh Lê Uyên Minh
Đồng Tháp, ngày 26 tháng 01 năm 2024
Trang 3LỜI CẢM ƠN
Chúng em xin bày tỏ lòng biết ơn chân thành đến quý Thầy Cô trong bộ môn CôngNghệ Thông Tin, thuộc khoa Sư phạm Toán – Tin, vì sự hỗ trợ và chia sẻ kiến thứcquý báu, giúp chúng em hoàn thành bài báo cáo môn học khai phá dữ liệu một cáchxuất sắc
Đặc biệt, chúng em muốn bày tỏ lòng biết ơn đặc biệt đến cô Huỳnh Lê UyênMinh, người đã dành thời gian và tâm huyết để hỗ trợ chúng em suốt quá trình thựchiện môn học Cô không chỉ là người giáo viên nhiệt tình, mà còn là người đồng hành,sẵn sàng giải đáp mọi thắc mắc và khuyến khích chúng em vượt qua những khó khăn.Với kiến thức còn hạn chế và sự tiếp thu hạn hẹp, chúng em đã gặp khá nhiều khókhăn khi tìm hiểu, đánh giá và trình bày về đề tài Mong rằng sự quan tâm và đóng gópcủa Thầy Cô sẽ giúp bài báo cáo của chúng em trở nên hoàn thiện hơn, phản ánh đúngtinh thần và nội dung của môn học
Chúng em chân thành cảm ơn sự giúp đỡ và sự quan tâm tận tâm của Thầy Cô,điều này thật sự là nguồn động viên lớn để chúng em phát triển và hoàn thiện kỹ năngcủa mình
Đồng Tháp, ngày 26 tháng 01 năm 2024
Nhóm sinh viên thực hiện
Văng Công TínNguyễn Nhựt Thịnh Phạm Thế Học
Trang 4LỜI DẪN
Hiện nay tin giả đang lan tràn khắp nơi và đi vào từng ngõ ngách của cuộcsống, ảnh hưởng đến từng cá nhân, từng doanh nghiệp, từng cơ quan tổ chức Cácchuyên gia nói rằng tin giả thậm chí có thể gây tác động tiêu cực đến cả xã hội, đếnnền kinh tế và thậm chí đối với cả thể chế Dự đoán trong thời gian tới, khi công nghệcao, kể cả sử dụng trí tuệ nhân tạo (AI), được lợi dụng nhiều hơn nữa trong quá trìnhsản xuất tin giả, thì khối lượng tin giả sẽ còn tăng với tốc độ khủng khiếp hơn nhiều.Tin giả và đối phó tin giả giống như trò đuổi bắt vô định mà mỗi bên đều cố gắng sửdụng những công cụ tinh vi nhất Kết quả là người đuổi càng nhanh thì người chạy cònnhanh hơn
Việt Nam luôn nằm trong nhóm quốc gia bị tấn công mạng nhiều nhất trên thếgiới, tội phạm phát triển nhanh, tình trạng nhiễu loạn thông tin trên không gian mạng,thông tin xuyên tạc, bôi nhọ, vu khống, xúc phạm nhân phẩm trên mạng Luật An ninhmạng ra đời và chính thức có hiệu lực từ ngày 01/01/2019 nhằm khắc phục những tồntại, hạn chế trong công tác bảo vệ an ninh mạng nói trên Nhưng vừa qua đã có hàngloạt tin giả được tung lên không gian mạng, gây xôn xao dư luận Đặc biệt là dịchCOVID-19, trên không gian mạng Việt Nam bùng nổ số lượng tin tức giả mạo Nhiềutài khoản cá nhân đã bị xử phạt hành chính, tuy nhiên mức xử phạt thấp và chưa đủsức răn đe Ngày 15/4/2020, với việc Nghị định 15/2020/NĐ-CP chính thức có hiệulực đã bổ sung thêm chế tài để ngăn chặn vấn nạn tin giả tại Việt Nam
Một nội dung đáng chú ý trong Nghị định 15/2020/NĐ- CP đó là quy định rõmức xử phạt vi phạm hành chính đối với các hành vi tung thông tin giả mạo, gâyhoang mang dư luận trên mạng xã hội Cụ thể, Điều 101 quy định phạt tiền từ 10 - 20triệu đồng đối với hành vi lợi dụng mạng xã hội để cung cấp, chia sẻ thông tin giảmạo, thông tin sai sự thật, xuyên tạc, vu khống, xúc phạm uy tín của cơ quan, tổ chức,danh dự, nhân phẩm của cá nhân; cung cấp, chia sẻ thông tin bịa đặt, gây hoang mangtrong nhân dân, kích động bạo lực, tội ác, tệ nạn xã hội, đánh bạc hoặc phục vụ đánhbạc.Các hành vi lợi dụng mạng xã hội để cung cấp, chia sẻ thông tin cổ xúy các hủ tục,
mê tín, dị đoan, dâm ô, đồi trụy, không phù hợp với thuần phong, mỹ tục của dân
tộc.Xuất phát từ các lý do trên, em chọn đề tài: “XÂY DỰNG ỨNG DỤNG WEB
DỰ ĐOÁN TIN TỨC GIẢ MẠO”.
Trang 5MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ KHAI PHÁ DỮ LIỆU 1
1.1 Đặt vấn đề 1
1.2 Tổng quan về khai phá dữ liệu 1
1.2.1 Khái niệm 1
1.2.2 Quy trình khai phá tri thức 1
- Tìm hiểu lĩnh vực của bài toán (ứng dụng): Các mục đích của bài toán,các tri thức cụ thể của lĩnh vực 1
- Tạo nên (thu thập) một tập dữ liệu phù hợp 1
- Làm sạch và tiền xử lý dữ liệu 1
1.3 Lợi ích của khai phá dữ liệu 2
1.4 Ứng dụng của khai phá dữ liệu 3
Kinh doanh và Tiếp thị: 3
- Dự đoán xu hướng: Phân tích dữ liệu để dự đoán xu hướng thị trường và ưu thế cạnh tranh 3
- Xác định đối tượng khách hàng: Tìm hiểu về hành vi của khách hàng để tạo ra chiến lược tiếp thị hiệu quả 3
Tài chính và Ngân hàng: 3
- Phân tích rủi ro: Dự đoán và quản lý rủi ro tài chính 3
- Phát hiện gian lận: Nhận diện mô hình gian lận trong giao dịch tài chính 3
Y tế: 3
- Điều tra dữ liệu y tế: Tìm kiếm mối quan hệ giữa các yếu tố để cải thiện chẩn đoán và điều trị 3
- Phân loại bệnh: Phân loại bệnh dựa trên dữ liệu lâm sàng và y tế 3
Chăm sóc khách hàng: 3
- Tổ chức dữ liệu khách hàng: Phân loại và phân đoạn khách hàng để cung cấp dịch vụ tốt hơn 3
- Dự đoán hành vi khách hàng: Dự đoán nhu cầu và mong muốn của khách hàng để tối ưu hóa trải nghiệm 3
Nghiên cứu khoa học: 3
- Phân tích dữ liệu khoa học: Tìm hiểu mối quan hệ giữa các biến và thực hiện phân tích thống kê 3
- Phát hiện mô hình mới: Khai phá dữ liệu để phát hiện mô hình mới và hiểu sâu về hiện tượng nghiên cứu 3
Chính trị và Xã hội: 3
Trang 6- Dự đoán kết quả chính trị: Phân tích dữ liệu bầu cử để dự đoán kết quả và xu
hướng chính trị 3
- Phân tích xã hội: Khám phá mối quan hệ và ảnh hưởng giữa các yếu tố xã hội.3 - Sản xuất và Chuỗi cung ứng: 3
- Quản lý chuỗi cung ứng: Dự đoán nhu cầu và tối ưu hóa quy trình sản xuất 3
- Phân loại sản phẩm: Tự động phân loại sản phẩm dựa trên mẫu và đặc điểm 3
Giáo dục: 3
- Đánh giá học sinh: Phân tích dữ liệu học sinh để đánh giá hiệu suất và cung cấp hỗ trợ cá nhân hóa 3
- Dự đoán xu hướng giáo dục: Dự đoán xu hướng và nhu cầu trong lĩnh vực giáo dục 4 1.5 Tiền xử lý dữ liệu 4
1.5.1 Khái niệm 4
1.5.2 Làm sạch dữ liệu(data cleaning/cleansing) 4
1.5.3 Tích hợp dữ liệu(data integration) 4
1.5.4 Biến đổi dữ liệu (data transformation) 4
1.5.5 Thu giảm dữ liệu(data reduction) 5
CHƯƠNG 2: GIỚI THIỆU DỮ LIỆU VÀ GIẢI THUẬT SỬ DỤNG TRONG ĐỀ TÀI 6
2.1 Bài toán dự đoán tin tức giả mạo 6
2.1.1 Khái niệm 6
2.1.2 Yêu cầu: 6
2.1.3 Bộ dữ liệu 6
2.2 Giải thuật sử dụng trong đề tài 7
CHƯƠNG 3: CÀI ĐẶT ỨNG DỤNG WEB/LOCAL 11
3.1 Xây dựng ứng dụng web dự đoán tin tức giả mạo 11
3.1.1 Cấu trúc ứng dụng web 11
3.1.2 Cấu trúc chương trình chính: 13
3.1.3 Cài đặt ứng dụng web: 15
CHƯƠNG 4: HẠN CHẾ, HƯỚNG PHÁT TRIỂN 20
4.1 Kết quả đạt được 20
Những kết quả cụ thể mà chúng em đã thực hiện được như sau: 20
4.2 Hạn chế 20
4.3 Hướng phát triển 20
TÀI LIỆU THAM KHẢO 21
Trang 72 Các website tham khảo 21
DANH MỤC HÌNH Hình 1: Bộ dữ liệu Fake news detection 7
Hình 2:Dữ liệu minh họa phân loại tin tức 8
Hình 3:Cây quyết định cho bài toán phân loại tin tức 10
Hình 4:Cấu trúc chung của chương trình 13
Hình 5: demo website 13
Hình 6: khai báo thư viện 14
Hình 7: chuẩn bị và tiền sử lý 14
Hình 8: chuẩn hóa văn bản 14
Hình 9: chuẩn hóa nội dung cột content 15
Hình 10: chuyển đổi chuỗi văn bản 15
Hình 11: chuẩn bị huấn luyện và đánh giá mô hình 15
Hình 12: tạo giao diện web 16
Hình 13: vùng hiển thị kết quả 17
Hình 14: thiết lập router 17
Trang 8CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ KHAI PHÁ DỮ LIỆU
Khai phá dữ liệu (Data Mining) là quá trình phân tích tự động của tập dữ liệu lớn
để khám phá mô hình, thông tin mới và mối quan hệ tiềm ẩn giữa các biến Mục tiêuchính của khai phá dữ liệu là trích xuất thông tin có giá trị từ dữ liệu, giúp hiểu rõ hơn
về các xu hướng, mô hình hóa hành vi và tìm ra các mối quan hệ không rõ ràng
1.2.2 Quy trình khai phá tri thức
- Tìm hiểu lĩnh vực của bài toán (ứng dụng): Các mục đích của bài toán,các trithức cụ thể của lĩnh vực
- Tạo nên (thu thập) một tập dữ liệu phù hợp
- Lựa chọn/ Phát triển (các) giải thuật khai phá dữ liệu phù hợp
- Tiến hành khai phá dữ liệu
- Đánh giá mẫu thu được và biểu diễn tri thức: Hiển thị hóa, chuyển đổi, bỏ đicác mẫu dư thừa,…
- Sử dụng tri thức được khai phá
Trang 9Hình 1 Các bước liên quan Data Mining
Quá trình khám phá tri thức là một chuỗi lặp gồm các bước:
- Data cleaning (làm sạch dữ liệu)
- Data integration (tích hợp dữ liệu)
- Data selection (chọn lựa dữ liệu)
- Data transformation (biến đổi dữ liệu
- Data mining (khai phá dữ liệu)
- Pattern evaluation (đánh giá mẫu)
- Knowledge presentation (biểu diễn tri thức)
1.3 Lợi ích của khai phá dữ liệu
Lợi ích trong quá trình phân tích dữ liệu
- Chọn lọc, loại bỏ tất cả các dữ liệu không liên quan và dữ liệu bị trùng
- Xác định các mẫu dữ liệu, dữ liệu có liên quan và dữ liệu trùng lặp trong tập dữliệu
- Với data mining, chúng ta có thể phân tích khối lượng lớn dữ liệu trong thờigian ngắn và sau đó chuyển đổi dữ liệu đó thành thông tin, kiến thức
Lợi ích sau cùng của Data mining
- Hỗ trợ ra quyết định tự động
- Hỗ trợ đưa ra dự báo chính xác
- Hỗ trợ giảm thiểu chi phí
- Hỗ trợ khả năng thấu hiểu khách hàng
2
Trang 101.4 Ứng dụng của khai phá dữ liệu
Kinh doanh và Tiếp thị:
- Dự đoán xu hướng: Phân tích dữ liệu để dự đoán xu hướng thị trường và ưu thế cạnh tranh
- Xác định đối tượng khách hàng: Tìm hiểu về hành vi của khách hàng để tạo rachiến lược tiếp thị hiệu quả
Trang 11Tài chính và Ngân hàng:
- Phân tích rủi ro: Dự đoán và quản lý rủi ro tài chính
- Phát hiện gian lận: Nhận diện mô hình gian lận trong giao dịch tài chính
- Dự đoán hành vi khách hàng: Dự đoán nhu cầu và mong muốn của khách hàng
để tối ưu hóa trải nghiệm
Nghiên cứu khoa học:
- Phân tích dữ liệu khoa học: Tìm hiểu mối quan hệ giữa các biến và thực hiệnphân tích thống kê
- Phát hiện mô hình mới: Khai phá dữ liệu để phát hiện mô hình mới và hiểu sâu
về hiện tượng nghiên cứu
Chính trị và Xã hội:
- Dự đoán kết quả chính trị: Phân tích dữ liệu bầu cử để dự đoán kết quả và xuhướng chính trị
- Phân tích xã hội: Khám phá mối quan hệ và ảnh hưởng giữa các yếu tố xã hội
- Sản xuất và Chuỗi cung ứng:
- Quản lý chuỗi cung ứng: Dự đoán nhu cầu và tối ưu hóa quy trình sản xuất
- Phân loại sản phẩm: Tự động phân loại sản phẩm dựa trên mẫu và đặc điểm
Trang 12Chất lượng dữ liệu (data quality)
- Tính chính xác (accuracy): giá trị được ghi nhận đúng với giá trị thực
- Tính hiện hành (currency/timeliness): giá trị được ghi nhận không bị lỗi thời
- Tính toàn vẹn (completeness): tất cả các giá trị dành cho một biến/thuộc tínhđều được ghi nhận
- Tính nhất quán (consistency): tất cả giá trị dữ liệu đều được biểudiễn như nhautrong tất cả các trường hợp
Các kỹ thuật tiền xử lý dữ liệu
- Làm sạch dữ liệu (data cleaning/cleansing)
- Tích hợp dữ liệu (data integration)
- Biến đổi dữ liệu (data transformation)
- Thu giảm dữ liệu(data reduction)
1.5.2 Làm sạch dữ liệu(data cleaning/cleansing)
Data cleaning hay làm sạch dữ liệu là quy trình chuẩn bị dữ liệu trước khi phântích thông qua xử lý hay loại bỏ những dữ liệu không chính xác, không đầy đủ, khôngphù hợp về định dạng, bị trùng lặp, không có giá trị, không đủ thông tin, không liênquan,…những dữ liệu có thể ảnh hưởng đến kết quả phân tích sau cùng
1.5.3 Tích hợp dữ liệu(data integration)
Là quá trình trộn dữ liệu từ các nguồn khác nhau vào một kho dữ liệu sẵnsàng choquá trình khai phá dữ liệu
1.5.4 Biến đổi dữ liệu (data transformation)
Là quá trình biến đổi hay kết hợp dữ liệu vào những dạng thích hợp cho quá trìnhkhai phá dữ liệu
Làm trơn dữ liệu (smoothing)
Kết hợp dữ liệu (aggregation)
Tổng quát hoá (generalization)
Xây dựng thuộc tính/đặc tính (attribute/feature construction)
Chuẩn hoá (normalization)
Trang 131.5.5 Thu giảm dữ liệu(data reduction)
Tập dữ liệu được biến đổi đảm bảo các toàn vẹn, nhưng nhỏ/ít hơn nhiều về sốlượng so với ban đầu
Các chiến lược thu giảm:
- Kết hợp khối dữ liệu (data cube aggregation)
- Chọn một số thuộc tính (attribute subset selection)
- Thu giảm chiều (dimensionality reduction)
- Thu giảm lượng (numerosity reduction)
- Rời rạc hóa (discretization)
- Tạo phân cấp ý niệm (concept hierarchy generation)
6
Trang 14CHƯƠNG 2: GIỚI THIỆU DỮ LIỆU VÀ GIẢI THUẬT SỬ DỤNG
- Tiến hành phân loại theo nhãn bằng cây quyết định
Dự đoán một bài báo được đưa ra là tin tức giả mạo hay tin tức thật
Đầu vào:
Nội dung bài báo: văn bản của bài báo, tiêu đề, tác giả
Dữ liệu meta: thông tin về bài báo, chẳng hạn như tác giả, nguồn, ngày xuấtbản, v.v
Dữ liệu ngữ cảnh: thông tin về bối cảnh của bài báo, chẳng hạn như các bài báoliên quan, sự kiện hiện tại, v.v
Đầu ra:
Nhãn dự đoán: "0"(thật) hoặc "1"(giả)
Điểm tin cậy: một số điểm cho biết mức độ tin cậy của dự đoán
Phương pháp để dự đoán tin tức giả mạo là học máy(machine learning): sử dụngthuật toán học máy để phân biệt giữa tin tức giả mạo và tin tức thật dựa trên các đặctrưng được trích xuất từ dữ liệu đầu vào
Trang 15- author : tác giả của bài báo.
- text : nội dung của bài viết; có thể không đầy đủ
- label : nhãn đánh dấu bài viết có khả năng không đáng tin cậy
Trong đó label chứa 2 giá trị:
1: không đáng tin cậy(tin giả mạo)
0: đáng tin cậy(tin thật)
Hình 2 Tập dữ liệu Fake news detection
Bộ dữ liệu Fake news detection gồm có 20800 dòng và 5 cột
2.2 Giải thuật sử dụng trong đề tài
Cây quyết định(Decision Tree) là một trong những thuật toán máy học phổ biếnnhất hiện nay Nó được dùng trong cả bài toán phân lớp và hồi quy.Nó có cấu trúcgiống như cây, với các nút biểu thị các quyết định và các nhánh biểu thị các kết quả cóthể xảy ra
Cấu trúc của cây quyết định bao gồm:
- Nút gốc: Đỉnh trên cùng của cây, biểu thị quyết định đầu tiên cần thực hiện.
- Nút trong: Biểu thị các quyết định trung gian.
- Nút lá: Biểu thị kết quả cuối cùng của một chuỗi quyết định.
Các bước xây dựng cây quyết định:
Bước 1: Chuẩn bị dữ liệu
Chuẩn bị tập dữ liệu huấn luyện, trong đó mỗi mẫu dữ liệu phải có các đặctrưng (features) và nhãn (label) tương ứng, ở đây các đặc trưng sẽ là id dùng để xácđịnh một bài báo, tác giả, tên bài báo, nội dung và nhãn gán để phân loại bài báothật hay giả
Bước 2: Chọn thuộc tính chia nhánh
8
Trang 16Chọn thuộc tính tốt nhất để chia dữ liệu thành các nhánh Một số phương phápthông dụng bao gồm Gini impurity hoặc Entropy tùy thuộc vào mục tiêu của môhình (phân loại hoặc hồi quy).
Bước 3: Tạo nhánh cây
Tạo nhánh của cây bằng cách sử dụng thuộc tính được chọn để chia dữ liệu.Lặp lại quy trình trên từng nhánh con cho đến khi một điều kiện dừng được đạtđược.(ví dụ:số lượng mẫu tối thiểu cho mỗi nút)
Bước 4: Điều kiện dừng
Xác định điều kiện dừng để ngăn chặn quá trình tạo cây và tránh tình trạng quámức đào tạo Điều kiện dừng xảy ra khi số lượng mẫu tối thiểu cho mỗi nút hoặckhi không còn thuộc tính nào để chia
Bước 5: Gán nhãn cho nút cuối cùng
Khi một nút không thể được chia tiếp, gán nhãn cho nút này dựa trên phân phối nhãn của các mẫu trong nút
Bước 6: Lặp lại bước 3
Lặp lại bước trên cho mỗi nhánh con mới cho tới khi tạo ra một cây quyết địnhhoàn chỉnh
Ví dụ minh họa trong việc xây dựng cây quyết định:
Hình 3 Tập dữ liệu minh họa phân loại tin tức
Đầu tiên sẽ xác định các thuộc tính đầu vào: tên, tác giả, nội dung
Trường hợp cho bài toán này thì nên sử dụng thuật toán ID3 Trong ID3, sử dụngInformation Gain như một chỉ số để chọn thuộc tính phân tách Tại mỗi nút, thuộc tínhđược chọn được xác định là thuộc tính khiến cho Information Gain đạt giá trị lớn nhất.Sau đó áp dụng thuật toán ID3 để giải quyết:
Bước 1: Tính Entropy cho tập dữ liệu ban đầu.