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

LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội

75 35 0

Đ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 đề Xây Dựng Hệ Thống Phát Hiện Tự Động Tin Giả Mạo Trên Các Kênh Mạng Xã Hội
Tác giả Trần Trọng Nghĩa
Người hướng dẫn TS. Lê Thanh Long
Trường học Trường Đại Học Duy Tân
Chuyên ngành Khoa Học Máy Tính
Thể loại Luận Văn Thạc Sĩ
Năm xuất bản 2021
Thành phố Đà Nẵng
Định dạng
Số trang 75
Dung lượng 4,28 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • LỜI CẢM ƠN

  • LỜI CAM ĐOAN

  • MỤC LỤC

  • DANH MỤC CÁC TỪ VIẾT TẮT

  • DANH MỤC CÁC BẢNG BIỂU

  • PHẦN MỞ ĐẦU

    • 1. Lý do chọn đề tài

    • 2. Mục đích nghiên cứu

    • 3. Nhiệm vụ nghiên cứu

    • 4. Đối tượng và phạm vi nghiên cứu

    • 5. Phương pháp nghiên cứu

    • 6. Tổng quan vấn đề nghiên cứu

  • Chương 1. BÀI TOÁN TỰ ĐỘNG PHÁT HIỆN TIN GIẢ MẠO TRÊN CÁC KÊNH MẠNG XÃ HỘI

    • 1.1 Tổng quát

    • 1.2 Bài toán thu thập dữ liệu

    • 1.3 Lưu trữ và truy xuất dữ liệu

    • 1.4 Bài toán xử lí ngôn ngữ tự nhiên

  • Chương 2. CÁC CÔNG NGHỆ SỬ DỤNG TRONG HỆ THỐNG PHÁT HIỆN TIN GIẢ MẠO

    • 2.1 Mạng nơron nhân tạo và mô hình nơron LSTM

      • 2.1.1 Deep Learning

      • 2.1.2 Mạng nơron nhân tạo

      • 2.1.3 Mạng nơron hồi quy

      • 2.1.4 Mạng bộ nhớ dài-ngắn LSTM

    • 2.2 Word2Vec

    • 2.3 Công nghệ sử dụng trong thu thập dữ liệu

  • Chương 3. XÂY DỰNG HỆ THỐNG THỬ NGHIỆM PHÁT HIỆN TIN GIẢ MẠO – NEWS DETECT

    • 3.1 Quy trình thu thập dữ liệu

      • 3.1.1 Quy trình lấy thông tin từ bài báo

      • 3.1.2 Quy trình lấy thông tin từ facebook

    • 3.2 Dữ liệu thử nghiệm

      • 3.2.1 Huấn luyện mô hình

      • 3.2.2 Dữ liệu huấn luyện

      • 3.2.3 Dữ liệu kiểm tra

    • 3.3 Kiểm tra kết quả và đánh giá hệ thống

      • 3.3.1 Kiểm tra kết quả

      • 3.3.2 Một số nghiên cứu liên quan

      • 3.3.3 Đánh giá kết quả

      • Tập học

      • Tập kiểm tra

      • Độ chính xác 99,12%

      • Độ chính xác 70,35%

  • KẾT LUẬN

    • Kết luận

    • Hạn chế

    • Một số hướng mở rộng đề tài

  • TÀI LIỆU THAM KHẢO

Nội dung

TRƯỜNG ĐẠI HỌC DUY TÂN BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DUY TÂN (( TRẦN TRỌNG NGHĨA XÂY DỰNG HỆ THỐNG PHÁT HIỆN TỰ ĐỘNG TIN GIẢ MẠO TRÊN CÁC KÊNH MẠNG XÃ HỘI LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH ĐÀ NẴNG – 2021 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DUY TÂN (( TRẦN TRỌNG NGHĨA XÂY DỰNG HỆ THỐNG PHÁT HIỆN TỰ ĐỘNG TIN GIẢ MẠO TRÊN CÁC KÊNH MẠNG XÃ HỘI Chuyên ngành Khoa học máy tính Mã số 848 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học TS Lê Thanh Long ĐÀ NẴNG – 2021 LỜI CẢM.

Mục đích nghiên cứu

Truyền thông trong thời đại số cho phép mọi người thảo luận về các vấn đề xã hội một cách thường xuyên Tuy nhiên, chính quyền địa phương vẫn gặp khó khăn trong việc nắm bắt tâm lý người dân và xác định các vấn đề họ quan tâm, cũng như thái độ tích cực hay tiêu cực đối với những vấn đề đó Điều này ảnh hưởng đến khả năng đưa ra các chủ trương kịp thời và đúng đắn nhằm nâng cao chất lượng xã hội Đề tài này giúp chính quyền hiểu rõ hơn về nhu cầu và ý kiến của người dân, từ đó dễ dàng nắm bắt các vấn đề quan trọng, phản hồi về các chính sách đang triển khai và dự đoán xu hướng quan tâm của cộng đồng trong tương lai.

Trong bối cảnh triển khai chủ trương mới, thông tin trái chiều từ mạng xã hội đang gây ảnh hưởng đến dư luận Việc ứng dụng đề tài này sẽ hỗ trợ chính quyền địa phương trong việc thu thập phản hồi từ người dân, giúp phân tích các thái độ tích cực và tiêu cực để đưa ra giải pháp kịp thời và hiệu quả.

Nghiên cứu đề tài giúp nhà quản lý thiết lập các tham số liên quan đến Tỉnh/Thành phố, từ đó có cái nhìn tổng quát về thông tin trên báo chí, mạng xã hội và blog Hệ thống cho phép nhà quản lý theo dõi các thông tin dư luận đang và sẽ phát triển mạnh mẽ trong tương lai Với giao diện dễ sử dụng và trực quan, hệ thống đảm bảo đáp ứng các yêu cầu về quản lý người dùng và an toàn bảo mật.

Nhiệm vụ nghiên cứu

- Đánh giá hiện trạng tin giả, tin tích cực, tin tiêu cực trên các nguồn thông tin từ các hệ thống mạng xã hội.

- Đề xuất giải pháp nhằm phát hiện tin giả một cách nhanh nhất, phục vụ lãnh đạo các cấp phân tích xu hướng của dư luận.

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

Sử dụng máy học/ học sâu để phát triển hệ thống dò tìm tự động.

Xây dựng tập dữ liệu bao gồm hai phương pháp chính: đầu tiên, tập dữ liệu được tạo ra thông qua sự kết hợp giữa các phương pháp chú thích thủ công và sự đóng góp từ cộng đồng; thứ hai, tập dữ liệu được thu thập trực tiếp từ các nguồn trên web.

Tiến hành một số phân tích thăm dò để xác định các thuộc tính ngôn ngữ chủ yếu hiện diện trong nội dung tin tức giả mạo.

Tuy nhiên các công việc trên có thể phân chia thành nhiều giai đoạn và lặp lại tùy theo mô hình phát triển được chọn.

Tổng quan vấn đề nghiên cứu

Ngoài phần mở đầu, kết luận, mục lục, danh mục tài liệu tham khảo, Luận văn gồm 3 chương:

Chương 1 trình bày về bài toán tự động phát hiện tin giả mạo trên các kênh mạng xã hội, nhấn mạnh tầm quan trọng của việc nhận diện thông tin sai lệch trong môi trường số hiện nay Chương 2 giới thiệu các công nghệ tiên tiến được áp dụng trong hệ thống phát hiện tin giả mạo, giúp nâng cao hiệu quả và độ chính xác trong việc xác thực thông tin.

Chương 3: Xây dựng hệ thống thử nghiệm phát hiện tin giả mạo – NewsDetect.

BÀI TOÁN TỰ ĐỘNG PHÁT HIỆN TIN GIẢ MẠO TRÊN CÁC KÊNH MẠNG XÃ HỘI

Tổng quát

Thực trạng việc sử dụng mạng xã hội

Theo báo cáo của ComScore, trong số hơn 30 triệu người sử dụng internet tại Việt Nam, khoảng 87,5% đã sử dụng mạng xã hội, chủ yếu là trong độ tuổi 15-34 Giới trẻ Việt Nam sử dụng các nền tảng như Facebook, Instagram, và Youtube cho nhiều mục đích khác nhau như học tập, giải trí và kinh doanh, trong đó Facebook là mạng xã hội phổ biến nhất với khoảng 35 triệu người dùng, tương đương hơn 1/3 dân số Một khảo sát tại TP Hồ Chí Minh cho thấy 89,3% thanh thiếu niên từ 11-35 tuổi sử dụng Facebook Youtube đứng thứ hai với 56,3% người dùng, tiếp theo là Instagram với 24,5% Các mạng xã hội khác như Zingme, Viber và Zalo cũng có sự hiện diện đáng kể Phần lớn thanh thiếu niên đã sử dụng mạng xã hội trên 4 năm (43,8%), trong khi 34,2% sử dụng từ 2-4 năm.

Trong một năm, tỷ lệ tìm kiếm thông tin chiếm thấp nhất là 4,5% Năm mục đích tìm kiếm phổ biến nhất bao gồm: cập nhật thông tin xã hội (66,3%), làm quen và giữ liên lạc với bạn bè (60%), liên lạc với gia đình (59%), chia sẻ thông tin như hình ảnh và video (54,0%), và giải trí (49,5%) Ngoài ra, các mục đích khác như công cụ hỗ trợ học tập và làm việc (44,7%), mua sắm online (30,7%), tìm kiếm việc làm (21,7%), và bán hàng online (13,7%) cũng được người dùng quan tâm.

Theo khảo sát năm 2017, giới trẻ có xu hướng kết nối chủ yếu với bạn cùng lớp cùng quê (90,2%) và gia đình, họ hàng (81,3%), trong khi những người bạn trong các nhóm xã hội khác chiếm 48,2% Điều này cho thấy giới trẻ hiện nay rất cẩn trọng trong việc lựa chọn bạn bè.

Với sự phát triển của công nghệ wifi, giới trẻ hiện nay có thể sử dụng internet một cách linh hoạt ở nhiều nơi, chủ yếu là tại nhà (95,8%), tại nơi làm việc và trường học (17,3%), cũng như quán net (9,5%) Tần suất sử dụng mạng xã hội trong giới trẻ ngày càng gia tăng nhờ vào khả năng truy cập mọi lúc, mọi nơi thông qua các thiết bị công nghệ hiện đại như smartphone (85,3%), máy tính xách tay (24%), máy tính để bàn (20,5%) và máy tính bảng (6,8%).

Kết quả khảo sát cho thấy giới trẻ hiện nay dành nhiều thời gian cho mạng xã hội, với 35,7% sử dụng từ 1-3 tiếng mỗi ngày, 25,7% từ 3-5 tiếng, và 22,6% trên 5 tiếng Tình trạng này dẫn đến việc gia tăng “nghiện” mạng xã hội Trong giao tiếp, 45,7% giới trẻ sử dụng tiếng Việt, 38,8% sử dụng tiếng Anh, và 29,7% sử dụng các ký hiệu khác nhau Theo cơ quan tiếp thị truyền thông xã hội Úc, việc sử dụng chữ viết tắt giúp tăng tốc độ giao tiếp và tạo ra mật mã mà người lớn khó hiểu.

Mạng xã hội hiện nay đóng vai trò quan trọng trong đời sống của giới trẻ, phục vụ nhiều mục đích khác nhau Sự đơn giản và tiện lợi trong việc đăng ký tham gia đã thu hút không chỉ thanh niên ở các thành phố lớn mà còn cả những người ở vùng nông thôn.

Mặc dù mang lại nhiều lợi ích cho con người, nhưng việc sử dụng thông tin cũng có thể dẫn đến những hậu quả không mong muốn Để giảm thiểu những tác động tiêu cực, trách nhiệm này thuộc về cá nhân, gia đình và xã hội Người sử dụng cần phải có định hướng rõ ràng, lựa chọn thông tin một cách cẩn thận và chịu trách nhiệm với những thông tin mà mình truyền tải, nhằm tránh ảnh hưởng xấu đến công việc, các mối quan hệ xã hội và đời sống cá nhân.

Mạng xã hội mang lại nhiều tiện ích với nội dung phong phú, nhưng cũng tiềm ẩn nhiều rủi ro do thông tin khó kiểm chứng, đặc biệt là những nội dung kích động bạo lực và chia rẽ Nếu người dùng không có định hướng, họ dễ bị cuốn vào "biển" thông tin hỗn loạn, ảnh hưởng đến năng suất lao động và học tập, gây ra tính cách cáu gắt, tinh thần uể oải, và sức khỏe tâm lý suy giảm, đặc biệt ở giới trẻ Lạm dụng mạng xã hội có thể dẫn đến những tác hại nghiêm trọng về nhân cách và sức khỏe.

Thiếu sự tương tác trong cuộc sống hàng ngày khiến chúng ta có ít thời gian dành cho người thân và bạn bè, dẫn đến sự rạn nứt trong các mối quan hệ và khó khăn trong việc tìm kiếm sự đồng cảm.

Nhiều bạn trẻ gặp khó khăn trong việc đạt được mục tiêu cá nhân do lãng phí thời gian vào mạng xã hội Họ thường quên đi những mục tiêu thực sự cần đạt được trong cuộc sống và thay vì tập trung vào việc học hỏi kỹ năng cần thiết cho sự nghiệp, lại chú trọng vào thông tin giật gân để thu hút sự chú ý và nổi tiếng trên mạng.

- Dễ mắc bệnh trầm cảm: Dấu hiệu nhận biết là hay mệt mỏi, khó ngủ, mất tinh thần.

Thiếu sự sáng tạo là hệ quả của việc dành quá nhiều thời gian truy cập thông tin, khiến não bộ không có thời gian nghỉ ngơi, dẫn đến suy giảm hoạt động và hạn chế khả năng sáng tạo.

Bạo lực trên mạng là hiện tượng mà nhiều người thường phát biểu những điều mà họ không dám nói trong cuộc sống thực Hành vi này có thể dẫn đến việc đe dọa, tra tấn tinh thần, phán xét vô căn cứ và phát ngôn sai sự thật, gây ra những hậu quả nghiêm trọng cho nạn nhân.

Giới trẻ hiện nay gặp khó khăn trong việc diễn đạt cảm xúc, dẫn đến việc họ thường mất khả năng kiểm soát hành vi Khi xảy ra xung đột, nhiều bạn trẻ có xu hướng sử dụng bạo lực, chịu ảnh hưởng từ những nội dung tiêu cực trên mạng.

Thiếu tự tin do thường xuyên so sánh bản thân với người khác là một vấn đề phổ biến Mỗi cá nhân đều sở hữu những thế mạnh riêng biệt, và việc nâng cao trình độ chuyên môn chính là phương pháp thực tiễn nhất để đạt được thành công.

Thông tin cá nhân dễ bị đánh cắp, dẫn đến nguy cơ bị mạo danh để thực hiện các hành vi trái pháp luật hoặc lừa đảo bạn bè và người thân.

Bài toán thu thập dữ liệu

Thu thập dữ liệu là bước khởi đầu quan trọng trong nghiên cứu truyền thông xã hội, yêu cầu các công cụ lắng nghe mạng xã hội xây dựng tổ hợp dữ liệu cho từng quốc gia, quá trình này có thể kéo dài từ vài tháng đến nhiều năm Mỗi chiến dịch cũng đòi hỏi các agency bổ sung các kênh như microsite và fanpage mới, mà công cụ lắng nghe cần phải đáp ứng Việc thu thập dữ liệu toàn bộ thị trường là thiết yếu, giúp nhà nghiên cứu phát triển các nghiên cứu về xu hướng và ngành hàng.

Hiện nay có 2 phương pháp chính để thu thập dữ liệu: Từ khóa (Keywords) và Trang (Sites).

Thu thập dữ liệu bằng từ khóa

This method is applied to global social networks such as Facebook, Google Plus, YouTube, Twitter, and Instagram Social listening tools connect with the APIs (Application Programming Interfaces) of these networks to request access to data containing specific keywords The advantage of this approach is that it allows for the retrieval of data from the entire social network, including personal profiles.

Nhược điểm của việc sử dụng API để thu thập dữ liệu từ các mạng xã hội là sự phụ thuộc vào các hạn chế của chúng, tương tự như công cụ tìm kiếm hashtag của Facebook API có thể không ổn định và thường xuyên thay đổi, dẫn đến việc dữ liệu trả về có thể không đầy đủ và không nhất quán theo thời gian Hiện tại, chưa có thống kê rõ ràng về tỷ lệ phần trăm thảo luận có thể thu thập được thông qua API.

Thu thập dữ liệu bằng theo trang

Việc thu thập dữ liệu theo trang (page) là phương pháp liệt kê các trang cần thu thập trong hệ thống, giúp thu thập toàn bộ dữ liệu từ các kênh đã được xác định Hệ thống sẽ truy cập vào các website, nhấp vào các liên kết bài viết, đọc và ghi nhận thông tin nghiên cứu một cách hiệu quả, đồng thời không ảnh hưởng đến hoạt động của các website đó.

Phương pháp thu thập dữ liệu bằng cách sử dụng các trang web cho phép hệ thống thực hiện các thao tác giống như một người dùng thực thụ Sau khi nhấp vào một chủ đề (Thread), hệ thống sẽ sao chép toàn bộ nội dung hiển thị, bao gồm tiêu đề (Title), số phản hồi (Replies), tác giả (Authors), và URL Tiếp theo, hệ thống sẽ quay lại từng trang nhanh chóng để phát hiện các chủ đề mới và các phản hồi mới cho các chủ đề cũ.

Mỗi reply và mỗi thread đều được tính là một mention, vì vậy một thread với 100 replies sẽ tương đương với 101 mentions, tức là 101 ý kiến từ người tiêu dùng Ưu điểm của hệ thống này là đảm bảo 100% dữ liệu trên trang được ghi nhận.

Nhược điểm: Việc lấy dữ liệu theo trang có thể dẫn đến tình trạng thiếu dữ liệu tạm thời vì các lý do sau:

- Cấu trúc site thay đổi.

- Site blocking: việc thu thập dữ liệu tự động nếu lạm dụng tài nguyên của các website sẽ bị chặn bởi admin.

- Site down: Không thể truy cập để thu thập dữ liệu khi trang đang bảo trì hoặc xảy ra vấn đề.

Các vấn đề về đường truyền internet gây khó khăn trong việc xây dựng danh sách các trang forum, báo điện tử và fanpage tại Việt Nam Quá trình này tốn thời gian và công sức, dẫn đến việc các công cụ social listening nước ngoài thường thiếu dữ liệu do không thu thập đủ danh sách trang Hơn nữa, khi gặp sự cố, thiếu nhân sự để xử lý ngay lập tức càng làm tình hình trở nên phức tạp hơn.

Để đảm bảo dữ liệu đầy đủ cho các chiến dịch và thương hiệu, công cụ social listening như Buzzmetrics cần một đội ngũ nhân lực áp dụng nhiều phương pháp hỗ trợ bởi máy tính nhằm kiểm tra tính đầy đủ của dữ liệu trên các kênh quan trọng Sự khác biệt giữa các công cụ miễn phí và giải pháp social listening trọn gói nằm ở việc đảm bảo dữ liệu đầy đủ cho khách hàng.

Công nghệ social listening tương tự như công nghệ tìm kiếm, đóng vai trò là một mô hình tổng hợp dữ liệu thị trường Để phục vụ cho nghiên cứu, một công cụ social listening cần lưu trữ dữ liệu tối thiểu trong 2 năm Tuy nhiên, áp lực trong việc lưu trữ và xử lý dữ liệu ngày càng gia tăng theo thời gian, dẫn đến yêu cầu đầu tư lớn và liên tục vào hệ thống cơ sở hạ tầng phần cứng.

Bài toán sử dụng từ khóa để thu thập dữ liệu yêu cầu người dùng khai báo các từ khóa liên quan Chỉ những người dùng được phân quyền mới có quyền thao tác với dữ liệu này Bên cạnh đó, còn có các từ khóa liên kết và danh sách từ khóa loại trừ để tối ưu hóa quá trình thu thập dữ liệu.

Lưu trữ và truy xuất dữ liệu

MongoDB là một hệ quản trị cơ sở dữ liệu không quan hệ, được thiết kế để đáp ứng nhu cầu truy xuất dữ liệu nhanh chóng, đảm bảo bảo mật cao và có khả năng chịu lỗi tốt.

MongoDB là cơ sở dữ liệu mã nguồn mở, sử dụng mô hình dữ liệu tài liệu và ngôn ngữ truy vấn không cấu trúc Đây là một trong những hệ thống NoSQL mạnh mẽ nhất hiện nay.

Cơ sở dữ liệu NoSQL không sử dụng hàng và cột như trong các hệ quản trị cơ sở dữ liệu quan hệ, mà thay vào đó, nó dựa trên kiến trúc gồm các bộ sưu tập (collections) và tài liệu (documents) Đơn vị dữ liệu cơ bản trong NoSQL là các cặp key-value, cho phép các tài liệu có cấu trúc và các trường khác nhau, mang lại sự linh hoạt trong việc quản lý dữ liệu.

Cơ sở dữ liệu này sử dụng định dạng BSON, một kiểu nhị phân của tài liệu JSON, mang lại mô hình dữ liệu linh hoạt cho MongoDB Mô hình này cho phép kết hợp và lưu trữ dữ liệu đa dạng mà không cần thỏa hiệp về khả năng lập chỉ mục, truy cập dữ liệu và quy tắc xác thực Đặc biệt, quá trình thay đổi lược đồ diễn ra tự động mà không gây ra thời gian ngừng hoạt động.

Kiến trúc của MongoDB bao gồm:

Cơ sở dữ liệu (database) có thể được hiểu đơn giản là một không gian lưu trữ vật lý cho dữ liệu Mỗi cơ sở dữ liệu có một tập hợp các tệp riêng biệt trên hệ thống tệp, và nhiều cơ sở dữ liệu có thể tồn tại trên một máy chủ MongoDB duy nhất.

Một collection là một nhóm các database document, tương đương với một table trong RDBMS, và tất cả các collection đều nằm trong một single database Không giống như các table có schema cố định, các collection không yêu cầu schema, cho phép các document bên trong có thể có các trường khác nhau Tuy nhiên, hầu hết các document trong một collection thường có cùng một mục đích hoặc phục vụ một mục tiêu chung.

Document là một tập hợp các cặp key - value, được kết nối với dynamic schema, cho phép các document trong một collection không cần phải có cùng cấu trúc hoặc các trường Lợi ích của dynamic schema là các trường phổ biến trong document có thể chứa nhiều loại dữ liệu khác nhau, mang lại tính linh hoạt cao cho việc quản lý dữ liệu trong MongoDB.

- Tính sẵn sàng cao – Nhân rộng

- Khả năng mở rộng cao – Sharding

- Năng động – Không có lược đồ cứng nhắc.

- Linh hoạt – thêm / xóa trường có ít hoặc không ảnh hưởng đến ứng dụng

- Dữ liệu không đồng nhất

- Biểu diễn dữ liệu trong JSON hoặc BSON

- Hỗ trợ không gian địa lý (Geospatial)

- Tích hợp dễ dàng với Big Data Hadoop

- Ngôn ngữ truy vấn dựa trên tài liệu mạnh mẽ như SQL

Các dịch vụ đám mây như AWS, Microsoft, RedHat, dotCloud và SoftLayer đều hỗ trợ MongoDB, một cơ sở dữ liệu được thiết kế đặc biệt cho môi trường đám mây Kiến trúc mở rộng quy mô tự nhiên của MongoDB, nhờ vào tính năng sharding, giúp tối ưu hóa hiệu suất và tính linh hoạt, phù hợp với yêu cầu của điện toán đám mây.

Bài toán xử lí ngôn ngữ tự nhiên

Yêu cầu đặt ra là gán nhãn hành vi cho các bài viết đã được thu thập, sử dụng các phương pháp trong ML và Deep learning.

Python là ngôn ngữ lập trình mã nguồn mở đa mục đích, một loại ngôn ngữ bậc cao, thông dịch và hướng đối tượng Ưu điểm của Python

- Tốc độ xử lý khá nhanh: Python có thể tạo ra những chương trình từ những script siêu nhỏ tới những phần mềm cực lớn.

- Chất lượng: Thư viện có tiêu chuẩn cao, Python có khối cơ sở dữ liệu khá lớn nhằm cung cấp giao diện cho tất cả các CSDL thương mại.

Python là một ngôn ngữ lập trình tiện lợi, có khả năng biên dịch và chạy trên tất cả các nền tảng lớn, bao gồm UNIX, MS-DOS, Mac OS, Windows, Linux và các hệ điều hành khác thuộc họ Unix.

Tương thích mạnh mẽ với Unix, hardware, third-party software với số lượng thư viện khổng lồ (400 triệu người sử dụng)

Python cung cấp tính năng mở rộng, cho phép lập trình viên thêm hoặc tùy chỉnh các công cụ để tối ưu hóa hiệu quả công việc.

- GUI Programming: Giúp cho việc thực hiện ảnh minh họa di động một cách tự nhiên và sống động hơn.

Xử lý ngôn ngữ tự nhiên NLP (Natural language processing):

Một nhánh của trí tuệ nhân tạo (AI) tập trung vào việc xử lí dữ liệu văn bản ngôn ngữ tự nhiên.

NLP có nhiệm vụ thu thập và gán nhãn trạng thái cho dữ liệu.

CÁC CÔNG NGHỆ SỬ DỤNG TRONG HỆ THỐNG PHÁT HIỆN TIN GIẢ MẠO

Mạng nơron nhân tạo và mô hình nơron LSTM

Có ít nhất 5 định nghĩa nói về khái niệm deep learning, deep learning là một nhánh nghiên cứu của machine learning.

Deep learning là một mô hình máy học lấy cảm hứng từ cấu trúc não bộ con người, cho phép tiếp nhận và phân tích dữ liệu qua nhiều tầng biểu đạt Công nghệ này được áp dụng rộng rãi trong các lĩnh vực như nhận diện hình ảnh, nhận diện giọng nói và xử lý ngôn ngữ tự nhiên.

Deep learning được phát triển dựa trên mạng lưới nơ-ron nhân tạo, được sắp xếp thành các lớp Mỗi lớp trong mạng này thể hiện các thuộc tính (features) của lớp phía trước, tạo ra một cấu trúc phân cấp cho việc học và nhận diện thông tin.

Mạng nơ-ron, theo nghĩa sinh học, là một tập hợp các dây thần kinh liên kết với nhau Trong lĩnh vực deep learning, thuật ngữ này đề cập đến mạng nơ-ron nhân tạo, được cấu tạo từ các lớp nơ-ron khác nhau.

Hình 2.1 Mạng nơ-ron nhân tạo 4 lớp

Mạng nơron nhân tạo là công cụ mạnh mẽ để giải quyết các bài toán phi tuyến và phức tạp, đặc biệt khi mối quan hệ giữa các quá trình khó xác định Trong số nhiều loại mạng nơron, mạng nơron truyền thẳng nhiều lớp được sử dụng phổ biến nhất.

Mạng nơron nhân tạo (Artificial Neural Networks) là mô hình mô phỏng mạng nơron sinh học, bao gồm các đơn vị tính toán đơn giản liên kết chặt chẽ Các liên kết giữa các nơron quyết định chức năng của mạng, cho phép nó được cấu hình cho các ứng dụng cụ thể như nhận dạng mẫu và phân loại dữ liệu thông qua quá trình học từ tập mẫu huấn luyện.

Về bản chất học chính là quá trình hiệu chỉnh trọng số liên kết giữa các nơron.

Cấu trúc của một nơron được mô tả như hình dưới:

Các thành phần cơ bản của một nơron nhân tạo:

+Tín hiệu đầu vào: Là các tín hiệu vào (input signals) của nơron, các tín hiệu này thường được đưa vào dưới dạng một vectơ n chiều.

Trong mạng nơ-ron, mỗi liên kết giữa tín hiệu vào thứ j và nơron k được thể hiện bằng một trọng số gọi là trọng số liên kết (Synaptic weight), ký hiệu là w kj Các trọng số này thường được khởi tạo ngẫu nhiên khi mạng bắt đầu và được cập nhật liên tục trong quá trình học.

+Bộ tổng (Summing function): Thường dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó.

+Ngưỡng (còn gọi là một độ lệch - bias): Ngưỡng này thường được đưa vào như một thành phần của hàm truyền.

Hàm truyền (Transfer function) là công cụ dùng để giới hạn đầu ra của mỗi nơron, nhận đầu vào từ hàm tổng và ngưỡng đã cho Phạm vi đầu ra của nơron thường nằm trong khoảng [0,1] hoặc [1,1] Các hàm truyền có thể là hàm tuyến tính hoặc phi tuyến, và việc lựa chọn hàm truyền phù hợp phụ thuộc vào từng bài toán cụ thể cũng như kinh nghiệm của người thiết kế mạng.

+Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa là một đầu ra.

Tóm lại, nơron nhân tạo hoạt động tương tự như nơron sinh học, nhận tín hiệu đầu vào, xử lý chúng bằng cách nhân với trọng số liên kết, tính tổng các tích và cuối cùng gửi tín hiệu đầu ra thông qua hàm truyền.

Mô hình mạng nơron nhân tạo

Mặc dù mỗi nơron đơn lẻ có khả năng xử lý thông tin, sức mạnh của tính toán nơron chủ yếu đến từ sự kết hợp các nơron trong một kiến trúc thống nhất Một mạng nơron được xác định qua các tham số như kiểu nơron, kiến trúc kết nối giữa các nơron và thuật toán học sử dụng để huấn luyện mạng.

Mạng nơron hoạt động như một hàm ánh xạ F: X → Y, trong đó X đại diện cho không gian trạng thái đầu vào và Y là không gian trạng thái đầu ra Chức năng chính của mạng là ánh xạ các vectơ đầu vào x thuộc X sang các vectơ đầu ra y thuộc Y thông qua việc sử dụng các trọng số trong "bộ lọc" Cụ thể, quá trình này được biểu diễn bằng công thức y = F(x) = s(W, x), với W là ma trận trọng số liên kết Các phép toán của mạng thường liên quan đến các tính toán số thực trên các ma trận.

Mô hình mạng nơron phổ biến nhất hiện nay là mạng nhiều tầng truyền thẳng (MLP - Multi Layer Perceptron) Một mạng MLP tổng quát bao gồm n lớp (với n≥2), trong đó có một lớp đầu ra (lớp thứ n) và (n-1) lớp ẩn, không tính lớp đầu vào.

Hình 2.3 Mạng MLP tổng quát

Cấu trúc của một mạng MLP tổng quát có thể mô tả như sau:

Đầu vào của bài toán là các vectơ (x1, x2, , xp) trong không gian p chiều, trong khi đầu ra là các vectơ (y1, y2, , yq) trong không gian q chiều Đối với các bài toán phân loại, p đại diện cho kích thước mẫu đầu vào và q là số lớp cần phân loại Ví dụ trong bài toán nhận dạng chữ số, mỗi mẫu lưu tọa độ (x,y) của 8 điểm trên chữ số, với nhiệm vụ phân loại các mẫu này vào 10 lớp tương ứng với các chữ số từ 0 đến 9 Tại đây, p có kích thước 16 (tính từ 8 x 2) và q là 10.

Mỗi nơron trong lớp sau đều kết nối với tất cả nơron của lớp trước, trong khi đầu ra của nơron lớp trước trở thành đầu vào cho nơron của lớp liền sau.

Mạng MLP hoạt động bằng cách các nơron ở lớp đầu vào nhận tín hiệu, xử lý thông qua việc tính tổng trọng số và gửi đến hàm truyền để tạo ra kết quả Kết quả này được chuyển tiếp đến các nơron ở lớp ẩn đầu tiên, nơi chúng tiếp nhận tín hiệu, xử lý và gửi kết quả đến lớp ẩn tiếp theo Quá trình này tiếp diễn cho đến khi các nơron ở lớp ra cho ra kết quả cuối cùng.

Một số kết quả đã được chứng minh:

+Bất kì một hàm Boolean nào cũng có thể biểu diễn được bởi một mạng MLP

2 lớp trong đó các nơron sử dụng hàm truyền sigmoid.

Tất cả các hàm liên tục có thể được xấp xỉ bởi mạng MLP 2 lớp, trong đó sử dụng hàm truyền sigmoid cho các nơron ở lớp ẩn và hàm truyền tuyến tính cho các nơron ở lớp ra, với sai số nhỏ tùy ý.

Word2Vec

Word Embedding là phương pháp biểu diễn từ ngữ dưới dạng vector số thực, trong đó Word2Vec là một trong những mô hình tiên phong sử dụng mạng neural để vector hóa từng từ dựa trên tập từ chính và từ văn cảnh Về mặt toán học, Word2Vec ánh xạ từ một tập từ (vocabulary) sang không gian vector, với mỗi từ tương ứng với một vector cố định Sau khi huấn luyện mô hình bằng thuật toán back propagation, trọng số của các vector sẽ được cập nhật liên tục Điều này cho phép thực hiện các phép toán khoảng cách như euclide, cosine, hay manhattan, cho thấy rằng những từ có khoảng cách gần nhau thường là các từ xuất hiện cùng nhau trong văn cảnh, từ đồng nghĩa, hoặc thuộc cùng một trường từ vựng.

Hình 2.17 Ảnh minh họa tập hợp các từ vựng sang không gian véc tơ

Trước khi có Word2Vec cũng có khá nhiều các phương pháp khác về WordRepresentation như:

- Giảm kích thước ma trận đồng xuất hiện (Dimension Reduction, SVD, )

Hình 2.18 Ảnh minh họa ma trận từ vựng

Hình 2.19 Ảnh minh họa dữ liệu về wordnet

- Biểu diễn từ bằng One-hot encoding

Hình 2.20 Ví dụ về các cặp từ đích, từ ngữ cảnh

Các phương pháp hiện tại đều gặp phải một số hạn chế như thiếu sắc thái, không thể thể hiện mối quan hệ giữa các từ, tốn nhiều công sức thực hiện, và kích thước embedding quá lớn gây tốn kém về chi phí tính toán, đặc biệt với các phương pháp giảm chiều dữ liệu Word2Vec cung cấp hai cách tiếp cận chính để khắc phục những vấn đề này.

Mô hình Word2Vec, bao gồm cả CBOW và Skip-gram, sử dụng một mạng neural network đơn giản với tập từ V chứa n từ khác nhau Layer đầu vào được biểu diễn bằng one-hot encoding với n node tương ứng, trong khi hàm kích hoạt duy nhất ở layer cuối là softmax function Hàm mất mát áp dụng là cross entropy loss, tương tự như trong các bài toán phân loại thông thường Giữa layer đầu vào và đầu ra, có một layer trung gian với kích thước k, tạo ra vector dùng để biểu diễn các từ sau khi mô hình được huấn luyện.

Hình 2.21 Một mô hình CBOW đơn giản với chỉ một từ trong ngữ cảnh

Trong quá trình huấn luyện mô hình, hai khái niệm quan trọng cần chú ý là từ mục tiêu (target word) và từ ngữ ngữ cảnh (context words) Từ mục tiêu, hay còn gọi là từ trung tâm, sẽ được sử dụng kết hợp với các từ ngữ xung quanh để tạo ra ngữ cảnh, từ đó giúp mô hình học hỏi và phát triển hiệu quả hơn.

Hình 2.22 Ảnh minh họa về target word

Quy định tham số c hay window xác định số lượng từ xung quanh, bao gồm cả hai bên trái và phải của từ mục tiêu, tương tự như cách biểu diễn n-grams cho từ.

CBOW và Skip-grams model

Hình 2.23 Minh họa CBOW và Skip-Ngram

Mô hình CBOW hoạt động dựa trên việc sử dụng các từ ngữ xung quanh (context words) để dự đoán từ trung tâm (center word) Một trong những ưu điểm của CBOW là quá trình huấn luyện mô hình diễn ra nhanh chóng hơn so với mô hình skip-gram, đồng thời thường mang lại kết quả tốt hơn cho các từ có tần suất xuất hiện cao trong văn cảnh.

Hình 2.24 Một mô hình CBOW đơn giản với chỉ một từ trong ngữ cảnh

Hình 2.25 Ảnh minh họa áp dụng mô hình CBOW phân tích từ

Hình 2.26 Ảnh minh họa mô hình Skip-gram

Hình 2.27 Ảnh minh họa kiến trúc mô hình Skip-gram

Skip-gram là một phương pháp ngược lại với CBOW, sử dụng từ mục tiêu để dự đoán các từ xung quanh Mặc dù quá trình huấn luyện của skip-gram diễn ra chậm hơn, nhưng nó thường hoạt động hiệu quả với các tập dữ liệu nhỏ Đặc biệt, nhờ vào đặc trưng của mô hình, skip-gram có khả năng vector hóa tốt hơn cho những từ ít xuất hiện so với CBOW.

Word2vec với bài toán Recommender System

Word2Vec hoạt động dựa trên giả thuyết rằng các từ thường xuất hiện cùng nhau trong nhiều ngữ cảnh sẽ có ý nghĩa tương đương Trong đó, phương pháp CBOW sử dụng các từ xung quanh để dự đoán từ ở giữa, trong khi phương pháp Skip-gram sử dụng một từ để dự đoán các từ xung quanh.

Hình 2.28 Ảnh minh họa Word2vec với bài toán Recommender System

Hệ thống gợi ý dựa trên phiên (session-based recommender system) sử dụng mô hình Word2Vec để phân tích dữ liệu dạng chuỗi và ngữ cảnh liên tiếp theo dấu thời gian Chẳng hạn, khi xây dựng một hệ thống gợi ý bài nhạc, dữ liệu sẽ là chuỗi các bài nhạc mà người dùng nghe liên tiếp Giả định rằng các bài nhạc được chọn phát gần nhau có mức độ quan tâm tương đương, mô hình này có khả năng tổng quát hóa từ dữ liệu của nhiều người dùng, từ đó thực hiện gợi ý hiệu quả.

Hoặc 1 ví dụ khác: Xây dựng 1 hệ thống recommend sản phẩm (item) cho 1 trang thương mại điện tử (eCommerce) Khi đó, dữ liệu cần có là các clicking session xem chi tiết từng sản phẩm của từng người dùng, kèm theo đó là dữ liệu về searching, check-out, Giả sử 1 người dùng khi tiến hành truy cập vào trang web sẽ có 1 session_id nhất định ứng với phiên làm việc đó Lúc đó, bất kì khi nào người dùng thực hiện click để xem 1 sản phẩm cụ thể, hệ thống đều thực hiện logging lại Mỗi session cụ thể sẽ ứng với 1 dãy các sản phẩm được click liên tiếp(theo thời gian), với giả định rằng các sản phẩm được chọn "gần nhau" đó sẽ là các sản phẩm nhận được mức độ quan tâm từ người dùng tương đương nhau, hoặc các sản phẩm thường được mua cùng nhau sẽ đi liền với nhau (ví dụ khi bạn mua bếp ga thì gợi ý thêm về máy hút mùi chẳng hạn, mua cái áo A này thì thường được mua kèm cùng với cái chân váy B chẳng hạn, , ).

Mô hình sử dụng là Skip-gram model, thay vì CBOW Dưới đây là 1 vài lí do lựa chọn Skip-gram:

Skip-gram hoạt động hiệu quả hơn với các sản phẩm ít phổ biến, mặc dù quá trình huấn luyện mô hình sẽ chậm hơn so với phương pháp CBOW Theo nguyên lý Pareto, trong hệ thống gợi ý, 80% lợi nhuận đến từ 20% sản phẩm phổ biến Trong khi số lượng bài nhạc rất lớn, chỉ khoảng 20% số bài hát được nghe thường xuyên.

CBOW (Continuous Bag of Words) sử dụng các từ xung quanh để dự đoán từ trung tâm, bằng cách lấy trung bình các vector ngữ cảnh trước khi dự đoán từ mục tiêu Ngược lại, skip-gram không thực hiện bước trung bình này, dẫn đến việc CBOW có xu hướng vector hóa cho các từ ít xuất hiện kém hơn so với skip-gram.

- Model skip-gram còn sử dụng thêm 1 kĩ thuật nữa gọi là negative sampling.

Việc layer cuối cùng có kích thước bằng kích thước từ vựng và phải tính giá trị hàm softmax cho toàn bộ tập từ gây ra thời gian tính toán lâu dài và không cần thiết Do đó, một giải pháp hiệu quả là chọn ngẫu nhiên n từ để tính toán thay vì phải xử lý toàn bộ tập từ vựng.

Công nghệ sử dụng trong thu thập dữ liệu

Regex, hay biểu thức chính quy, là các mẫu được sử dụng để tìm kiếm và thay thế chuỗi trong lập trình, đặc biệt mạnh mẽ trong PHP và JavaScript Công cụ này thường được áp dụng để kiểm tra tính hợp lệ của các thông tin như email và số điện thoại.

Các cú pháp cơ bản Regular Expression

Regex là một công cụ mạnh mẽ với nhiều ứng dụng hữu ích, được hiểu đơn giản là một chuỗi ký tự mô tả một tập hợp các chuỗi ký tự khác, tuân theo các quy tắc và cú pháp cụ thể.

Bảng 2.2 Các cú pháp cơ bản Regular Expression

Requests là một thư viện Python cho phép gửi các yêu cầu HTTP một cách dễ dàng Thư viện này hỗ trợ nhiều tính năng như truyền tham số trong URL, gửi header tùy chỉnh và xác minh SSL Hướng dẫn này sẽ giúp bạn nắm vững cách sử dụng thư viện requests để thực hiện các yêu cầu HTTP đơn giản bằng Python.

Beautiful Soup là một thư viện Python mạnh mẽ dùng để phân tích cú pháp tài liệu HTML và XML, bao gồm cả các tài liệu có đánh dấu không đúng định dạng Thư viện này tạo ra một cây phân tích cú pháp cho phép người dùng dễ dàng trích xuất dữ liệu từ HTML, rất hữu ích cho việc tìm kiếm thông tin trên web Trong bài viết này, chúng ta sẽ khám phá cách sử dụng Beautiful Soup 4.

Có hai cách chủ yếu để trích xuất dữ liệu từ một trang web:

Sử dụng API của trang web, như Facebook Graph API, giúp truy xuất dữ liệu đã đăng trên Facebook Thư viện BeautifulSoup có những ưu điểm như dễ sử dụng và hỗ trợ phân tích cú pháp HTML, nhưng cũng tồn tại nhược điểm như khả năng xử lý chậm hơn so với một số thư viện khác và không hỗ trợ JavaScript.

Bảng 2.3 Phân tích ưu, nhược điểm trong thư viện BeautifulSoup

Cách sử dụng điển hình Ưu điểm Nhược điểm html.parser của python

Tốc độ tốt Hoạt động như nhau trong Python 2.7.3 và Python 3.2

Không nhanh như lxml, ít hỗ trợ hơn html5lib html.parser của lxml

External C dependency Xml parser của lxml

Rất nhanh Chỉ hỗ trợ duy nhất cú pháp xml

Selenium là công cụ kiểm thử phần mềm tự động mã nguồn mở hàng đầu cho kiểm thử ứng dụng Web Nó cho phép chạy các script trên hầu hết các trình duyệt như IE, Mozilla Firefox, Chrome, Safari, Opera, và tương thích với nhiều hệ điều hành như Windows, Mac, và Linux.

Selenium WebDriver (Selenium 2): là thư viện cho phép người dùng lập trình(scripting) test script trên các ngôn ngữ lập trình khác nhau như Python, Java, C#,Ruby…

Chương 3 XÂY DỰNG HỆ THỐNG THỬ NGHIỆM PHÁT HIỆN TIN GIẢ

Trong phần thực nghiệm này sẽ tập trung kiểm tra độ chính xác của hệ thống bằng kỹ thuật học sâu qua các phần sau:

 Quy trình thu thập cơ sở dữ liệu

 Chuẩn bị tập dữ liệu cho việc huấn luyện và kiểm tra độ chính xác

 Kiểm tra độ chính xác của mô hình

Quy trình thu thập dữ liệu

3.1.1 Quy trình lấy thông tin từ bài báo Để thực hiện lấy thông tin cho hệ thống cần phải cài đặt các thư viện bao gồm request Và cập nhật pip Sau đó sẽ thực hiện lấy ra thông tin trang HTML bằng request.

Để lấy nội dung của các thuộc tính từ đường dẫn biến truyền vào, cần cài đặt thư viện BeautifulSoup4, vì nó giúp trích xuất giá trị “content” một cách hiệu quả.

Hình 3.2 Cài đặt và sử dụng thư viện beautifulsoup4

Chuyển response trả về thành đối tượng trong beautifulsoup sau đó sẽ thực hiện tìm thẻ tiêu đề trang bằng phương thức findAll();

Hình 3.3 Lấy nội dung các thuộc tính trong class

Sau khi có nội dung sẽ thực lấy các thông tin địa chỉ links của từng bài viết:

Hình 3.4 Lấy nội dung chi tiết trong danh sách các nội dung

Thư viện sẽ cung cấp một mạng lưới các đường link, từ đó tôi sẽ tiến hành crawl dữ liệu từng link để thu thập các thông tin cần thiết như tiêu đề, mô tả và nội dung, nhằm phục vụ cho việc huấn luyện và kiểm thử mô hình.

Hình 3.5 Ảnh minh họa kết quả khi crawl dữ liệu 3.1.2 Quy trình lấy thông tin từ facebook

- Login facebook: sử dụng thư viện selenium pip install selenium

Hình 3.6 Tìm phần từ Bình luận theo xpath trên facebook

- Lấy từng bình luận và lưu vào cơ sở dữ liệu:

Hình 3.7 Lấy và phân tích từng potter và comment

Dữ liệu thử nghiệm

- Đọc dữ liệu huấn luyện từ file CSV:

- Thực hiện load dữ liệu và phân chia tập train và tập test:

- Thực hiện chuẩn hóa lại đầu vào của hai tập dữ liệu:

- Thực hiện training dữ liệu và lưu tập tin trọng số:

- Hàm fit() – Huấn luyện mô hình:

+ Bao gồm data train, test đưa vào training.

+ Batch_size thể hiện số lượng mẫu mà Mini-batch GD sử dụng cho mỗi lần cập nhật trọng số.

+ Epoch là số lần duyệt qua hết số lượng mẫu trong tập huấn luyện.

- Đánh giá mô hình – evaluate: Sử dụng dữ liệu test để đánh giá dữ liệu.

- Import các thông tin thư viện cần thiết:

- Khai báo lại thông tin model và lấy ra trọng số đã được hiện huấn luyện trước đó phục vụ cho việc nhận dạng:

- Thêm các thông tin cần thiết để thực hiện cấu hình sử dụng activation là

- Khởi tạo mô hình models Sequential();

Lớp 1: Các lớp nhúng (Embedding Layers) được sử dụng trong nhiều mục đích xử lý ngôn ngữ tự nhiên (NLP) nhằm chuyển đổi dữ liệu sang một không gian mới có kích thước nhỏ hơn Thay vì sử dụng mã hóa one-hot cứng nhắc, lớp nhúng cho phép học từ dữ liệu, giúp cải thiện hiệu quả và tính chính xác trong các mô hình.

+ input_dim: kích thước của vocabulary.

+ output_dim: kích thước của embbding.

+ input_length: chiều dài mỗi sequence.

- Lớp 2,3: Recurrent Layers chứa các layers dùng trọng mạng RNN

+ RNN: Layer RNN cơ bản.

+ GRU: Khắc phục hạn chế RNN tránh vanish gradient.

+ LSTM: Long Short-Term Memory layer.

- Lớp 4: Dense() – Layer này cũng như một layer neural network bình thường, với các tham số sai:

+ units: số chiều output, như số class sau khi train.

+ activation: chọn activation đơn giản với sigmoid thì output có 1 class; softmax dùng trong multi classifier.

+ use_bias: có sử dụng bias hay không.

Trong lớp 5 của biên dịch mô hình, hàm compile được sử dụng để huấn luyện các mô hình thông qua các thuật toán tối ưu hóa như Adam, SGD và RMSprop Tham số learning_rate, dạng float, quyết định tốc độ học và cần được chọn một cách hợp lý để hàm số hội tụ nhanh chóng Đối với các bài toán phân loại hai lớp, hàm mất mát binary_crossentropy được áp dụng để đánh giá hiệu suất của mô hình.

+ metrics: là thước đo để đánh giá accuracy của model

- Thực hiện dùng model để phân tích nếu tỉ lệ trên 70% thì là tích cực ngược lại là tiêu cực:

- predict − Dự đoán kết quả với dữ liệu đầu vào mới.

- Hàm phân tích cảm xúc dựa vào nội dung cần kiểm tra:

Hàm kiểm tra thu thập dữ liệu thô từ năm trang tin tức hiện tại: vnexpress.net, tuoitre.vn, baoquocte.vn, tintuc.vn và tinmoi.vn Mặc dù mỗi nguồn tin có các cặp thẻ khác nhau, nhưng chúng đều có cùng cấu trúc dữ liệu, vì vậy dữ liệu được gộp thành một mảng thống nhất.

+ Giá trị 1: Lưu trữ địa chỉ trang web phục vụ cho viết lấy mã nguồn của trang web

+ Giá trị 2: Lưu trữ thông tin url cần thực hiện crawl data

+ Các giá trị còn lại chưa nội dung các cặp thẻ chứa nội dung cần crawl dữ liệu

- Dữ liệu sau khi được craw thành công sẽ trả về một mảng đối tượng chứa tiêu đề và nội dung phục vụ cho việc đánh giá bài viết.

Kiểm tra kết quả và đánh giá hệ thống

Hàm đánh giá nội dung hệ thống đầu tiên sẽ thu thập bài báo, bao gồm tiêu đề và nội dung, để xác định xem thông tin đó mang tính tích cực hay tiêu cực Sau khi phân tích, hàm sẽ đóng gói lại nội dung và trả về cho người dùng.

Thông tin các bài báo sau khi được đánh giá sẽ được hiển thị với nội dung tiêu đề và nội dung đã được đánh giá Các thông tin và nội dung này được lấy từ bản tin mới nhất của các trang tin tức.

- Menu thống kê báo cáo: tỷ lệ tích cực, tiêu cực theo nội dung và tiêu đề của các bài báo, facebook.

3.3.2 Một số nghiên cứu liên quan

-https://www.miai.vn/2020/06/27/chi-tiet-cach-login-va-crawl-du-lieu-tu- facebook-bang-python/

- https://mcivietnam.com/huong-dan-lay-du-lieu-tu-web-bang-python/

Tập học Tập kiểm tra Độ chính xác 99,12% Độ chính xác 70,35% a Kiểm tra kết quả

Kết quả với dữ liệu huấn luyện, tập học

Việc huấn luyện mô hình bao gồm 994 mẫu câu đã được gán nhãn sẵn, với tổng cộng 1,777,794 tham số Mô hình sử dụng 681,600 Layer Embedding, 570,368 Layer LSTM và 514 Layer desense Sau khi điều chỉnh các tham số để đạt được độ lỗi thấp nhất, chúng tôi thu được kết quả huấn luyện của mô hình như mong đợi.

Hình 3.8 Mô hình huấn luyện

Bảng 3.1 Bảng dữ liệu sau khi fit 25 epoch

STT Epoch Thời gian (s) Loss Accuracy

Evaluate 70.35 Độ chính xác của mô hình sau khi huấn luyện là 70.35% với độ lỗi 0.0261% và thời gian học là 8 giây.

Kết quả với dữ liệu kiểm tra

Sau khi tiến hành kiểm tra với các trường hợp khác nhau ta thu được kết quả như sau:

Kết quả từ bảng trên cho thấy độ chính xác của mô hình và hệ thống đạt mức cao khi áp dụng trên dữ liệu khác với dữ liệu huấn luyện trước đó.

Sau khi thực hiện kiểm thử hệ thống cũng cho thấy độ chính xác mô hình sau khi huấn luyện là 75.38% với độ lỗi 0.58%

Kết quả cho thấy việc huấn luyện mô hình máy học phụ thuộc vào độ chuẩn hóa dữ liệu đầu vào và tính bao quát của tập dữ liệu Mặc dù các mô hình đã đạt được độ chính xác cao, nhưng do dữ liệu chưa được chuẩn hóa tốt, nên kết quả huấn luyện vẫn chưa đạt yêu cầu, dẫn đến tỷ lệ chính xác của hệ thống giảm.

Ngày đăng: 19/04/2022, 16:27

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[14] Jan Koutník, Klaus Greff, Faustino Gomez,Jurgen Schmidhuber, 2014,"A Clockwork RNN", in arXiv:1402.3511v1 [cs.NE] 14 Feb 2014 Sách, tạp chí
Tiêu đề: A Clockwork RNN
[15] Klaus Greff, Rupesh K. Srivastava, Jan Koutník, Bas R. Steunebrink, Jurgen Schmidhuber, 2017, "LSTM: A Search Space Odyssey", in arXiv:1503.04069v2 [cs.NE] 4 Oct 2017 Sách, tạp chí
Tiêu đề: LSTM: A Search Space Odyssey
Tác giả: Klaus Greff, Rupesh K. Srivastava, Jan Koutník, Bas R. Steunebrink, Jurgen Schmidhuber
Nhà XB: arXiv
Năm: 2017
[16] Rafal Jozefowicz, Wojciech Zaremba, Ilya Sutskever, 2015, "An Empirical Exploration of Recurrent Network Architectures&#34 Sách, tạp chí
Tiêu đề: An Empirical Exploration of Recurrent Network Architectures
Tác giả: Rafal Jozefowicz, Wojciech Zaremba, Ilya Sutskever
Năm: 2015
[17] Cootes, T.F., G.J. Edwards and C.J. Taylor, 2001. Active Appearance Models. IEEE transactions on pattern analysis and machine intelligence, 23 (6):681-685 Sách, tạp chí
Tiêu đề: Active Appearance Models
Tác giả: Cootes, T.F., G.J. Edwards, C.J. Taylor
Nhà XB: IEEE transactions on pattern analysis and machine intelligence
Năm: 2001
[18] Verónica Pérez-Rosas, Bennett Kleinberg, Alexandra Lefevre, and Rada Mihalcea. Automatic detection of fake news. arXivarXiv:1708.07104, 201 Sách, tạp chí
Tiêu đề: Automatic detection of fake news
Tác giả: Verónica Pérez-Rosas, Bennett Kleinberg, Alexandra Lefevre, Rada Mihalcea
Nhà XB: arXiv
Năm: 2017
[19] Hannah Rashkin, Eunsol Choi, Jin Yea Jang, Svitlana Volkova, and Yejin Choi. Truth of varying shades: Analyzing language in fake news and political fact- checking. In Proc. Empirical Methods in Natural Language Processing, pages 2931–2937, 2017 Sách, tạp chí
Tiêu đề: Truth of varying shades: Analyzing language in fake news and political fact- checking
Tác giả: Hannah Rashkin, Eunsol Choi, Jin Yea Jang, Svitlana Volkova, Yejin Choi
Nhà XB: Empirical Methods in Natural Language Processing
Năm: 2017
[20] Victoria Rubin, Niall Conroy, Yimin Chen, and Sarah Cornwell. Fake news or truth? using satirical cues to detect potentially misleading news. In Proc.Computational Approaches to Deception Detection, pages 7–17, 2016 Sách, tạp chí
Tiêu đề: Fake news or truth? using satirical cues to detect potentially misleading news
Tác giả: Victoria Rubin, Niall Conroy, Yimin Chen, Sarah Cornwell
Nhà XB: Proc.Computational Approaches to Deception Detection
Năm: 2016
[24] Liu, Huan; Tang, Jiliang; Wang, Suhang; Sliva, Amy; Shu, Kai (ngày 7 tháng 8 năm 2017). "Fake News Detection on Social Media: A Data Mining Perspective". ACM SIGKDD Explorations Newsletter. arXiv:1708.01967v3.Bibcode:2017arXiv170801967S. Lưu trữ 2020-07-31 tại Wayback Machine Sách, tạp chí
Tiêu đề: Fake News Detection on Social Media: A Data MiningPerspective
[25] "Is 'fake news' a fake problem?". Columbia Journalism Review. Truy cập 19/02/2017 Sách, tạp chí
Tiêu đề: Is 'fake news' a fake problem
[26] Binns, Amy (August 2012). "Don't Feed the Trolls!" (PDF). Journalism Practice. 6 (4): 547–562. doi:10.1080/17512786.2011.648988 – via EBSCOhost Sách, tạp chí
Tiêu đề: Don't Feed the Trolls
Tác giả: Amy Binns
Nhà XB: Journalism Practice
Năm: 2012
[27] Wei Wei and Xiaojun Wan (2016), "Learning to Identify Ambiguous and Misleading News Headlines". Institute of Computer Science and Technology, Peking University, Truy cập ngày 13/5/2020 Sách, tạp chí
Tiêu đề: Learning to Identify Ambiguous and Misleading News Headlines
Tác giả: Wei Wei, Xiaojun Wan
Nhà XB: Institute of Computer Science and Technology, Peking University
Năm: 2016
[28] Soll, Jacob (ngày 18 tháng 12 năm 2016). “The Long and Brutal History of Fake News”. POLITICO Magazine (bằng tiếng Anh). Truy cập ngày 25 tháng 3 năm 2019 Sách, tạp chí
Tiêu đề: The Long and Brutal History of Fake News
Tác giả: Jacob Soll
Nhà XB: POLITICO Magazine
Năm: 2016
[29] "The Real Story of 'Fake News': The term seems to have emerged around the end of the 19th century". Merriam-Webster. Truy cập ngày 13 tháng 10 năm 2017 Sách, tạp chí
Tiêu đề: The Real Story of 'Fake News': The term seems to have emerged aroundthe end of the 19th century
[30] Michael M. Bronstein, 10 Feb 2019, “Fake News Detection on Social Media using Geometric Deep Learning” in ArXiv:1902.06673v1 [cs.SI] 10 Feb 2019 Sách, tạp chí
Tiêu đề: Fake News Detection on SocialMedia using Geometric Deep Learning
[31] Kai Shu, Amy Sliva, Suhang Wang, Jiliang Tang, Huan Liu, 06/2017,“ACM SIGKDD Explorations Newsletter”, Fake News Detection on Social Media:A Data Mining Perspective, Tập 19, Trang 22-36 Sách, tạp chí
Tiêu đề: Fake News Detection on Social Media:A Data Mining Perspective
Tác giả: Kai Shu, Amy Sliva, Suhang Wang, Jiliang Tang, Huan Liu
Nhà XB: ACM SIGKDD Explorations Newsletter
Năm: 2017
[32] Sadia Afroz, Michael Brennan, and Rachel Greenstadt. Detecting hoaxes, frauds, and deception in writing style online. In ISSP'12 Sách, tạp chí
Tiêu đề: Detecting hoaxes, frauds, and deception in writing style online
Tác giả: Sadia Afroz, Michael Brennan, Rachel Greenstadt
Nhà XB: ISSP
Năm: 2012
[34] Michele Banko, Michael J. Cafarella, Stephen Soderland, Matthew Broadhead, and Oren Etzioni. Open information extraction from the web. In IJCAI'07 Sách, tạp chí
Tiêu đề: Open information extraction from the web
Tác giả: Michele Banko, Michael J. Cafarella, Stephen Soderland, Matthew Broadhead, Oren Etzioni
Nhà XB: IJCAI
Năm: 2007
[35] Paul R Brewer, Dannagal Goldthwaite Young, and Michelle Morreale.The impact of real news about fake news: Intertextual processes and political satire.International Journal of Public Opinion Research, 25(3):323--343, 2013 Sách, tạp chí
Tiêu đề: The impact of real news about fake news: Intertextual processes and political satire
Tác giả: Paul R Brewer, Dannagal Goldthwaite Young, Michelle Morreale
Nhà XB: International Journal of Public Opinion Research
Năm: 2013
[36] Niall J. Conroy, Victoria L. Rubin, and Yimin Chen. Automatic deception detection: Methods for finding fake news. Proceedings of the Association for Information Science and Technology, 52(1):1--4, 2015 Sách, tạp chí
Tiêu đề: Automatic deception detection: Methods for finding fake news
Tác giả: Niall J. Conroy, Victoria L. Rubin, Yimin Chen
Nhà XB: Proceedings of the Association for Information Science and Technology
Năm: 2015
[37] Michela Del Vicario, Gianna Vivaldo, Alessandro Bessi, Fabiana Zollo, Antonio Scala, Guido Caldarelli, and Walter Quattrociocchi. Echo chambers:Emotional contagion and group polarization on facebook. Scientific Reports, 6, 2016 Sách, tạp chí
Tiêu đề: Echo chambers: Emotional contagion and group polarization on facebook
Tác giả: Michela Del Vicario, Gianna Vivaldo, Alessandro Bessi, Fabiana Zollo, Antonio Scala, Guido Caldarelli, Walter Quattrociocchi
Nhà XB: Scientific Reports
Năm: 2016

HÌNH ẢNH LIÊN QUAN

DANH MỤC CÁC BẢNG BIỂU - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
DANH MỤC CÁC BẢNG BIỂU (Trang 7)
2.1 Mạng nơron nhân tạo và mô hình nơron LSTM - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
2.1 Mạng nơron nhân tạo và mô hình nơron LSTM (Trang 31)
Hình 2.4. Mạng nơron hồi quy có vòng lặp - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.4. Mạng nơron hồi quy có vòng lặp (Trang 37)
Bảng 2.1. Một số ký hiệu trong mô hình mạng nơron hồi quy - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Bảng 2.1. Một số ký hiệu trong mô hình mạng nơron hồi quy (Trang 37)
Hình 2.5. Mô đun lặp lại trong mạng RNN chứa một tầng - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.5. Mô đun lặp lại trong mạng RNN chứa một tầng (Trang 39)
Hình 2.6. Mô đun lặp lại trong mạng LSTM chứa 4 tầng tương tác - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.6. Mô đun lặp lại trong mạng LSTM chứa 4 tầng tương tác (Trang 40)
Hình 2.9. Ảnh minh họa cổng, tầng mạng và phép toán véc tơ - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.9. Ảnh minh họa cổng, tầng mạng và phép toán véc tơ (Trang 41)
Hình 2.11. Ảnh minh họa cổng và oi - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.11. Ảnh minh họa cổng và oi (Trang 43)
Hình 2.13. Ảnh minh họa Véc tơ khi áp dụng tanh - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.13. Ảnh minh họa Véc tơ khi áp dụng tanh (Trang 44)
Hình 2.15. Ảnh minh họa nối 2 cổng loại trừ và đầu vào với nhau - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.15. Ảnh minh họa nối 2 cổng loại trừ và đầu vào với nhau (Trang 45)
Hình 2.16. Ảnh minh họa cổng cập nhật - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.16. Ảnh minh họa cổng cập nhật (Trang 45)
Hình 2.17. Ảnh minh họa tập hợp các từ vựng sang không gian véc tơ - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.17. Ảnh minh họa tập hợp các từ vựng sang không gian véc tơ (Trang 46)
Hình 2.19. Ảnh minh họa dữ liệu về wordnet - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.19. Ảnh minh họa dữ liệu về wordnet (Trang 47)
Hình 2.18. Ảnh minh họa ma trận từ vựng - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.18. Ảnh minh họa ma trận từ vựng (Trang 47)
Hình 2.21. Một mô hình CBOW đơn giản với chỉ một từ trong ngữ cảnh - LUẬN văn THẠC sĩ xây DỰNG hệ THỐNG PHÁT HIỆN tự ĐỘNG TIN GIẢ mạo TRÊN các KÊNH MẠNG xã hội
Hình 2.21. Một mô hình CBOW đơn giản với chỉ một từ trong ngữ cảnh (Trang 49)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w