1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Phân tích quan điểm cho các bài viết chính trị từ mạng xã hội

86 25 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 đề Phân Tích Quan Điểm Cho Các Bài Viết Chính Trị Từ Mạng Xã Hội
Tác giả Trang Mạch Hoàng Nguyên
Người hướng dẫn Tiến Sĩ. Huỳnh Ngọc Tín
Trường học Trường Đại Học Bà Rịa-Vũng Tàu
Chuyên ngành Công Nghệ Thông Tin
Thể loại luận văn thạc sĩ
Năm xuất bản 2021
Thành phố Bà Rịa-Vũng Tàu
Định dạng
Số trang 86
Dung lượng 2,62 MB

Cấu trúc

  • Chương 1 TỔNG QUAN ĐỀ TÀI (0)
    • 1.1. Dẫn nhập (15)
    • 1.2. Mục tiêu (20)
    • 1.3. Nội dung thực hiện (20)
    • 1.4. Phạm vi thực hiện (21)
    • 1.5. Kết quả đạt được (21)
    • 1.6. Bố cục báo cáo (22)
    • 1.7. Kết chương (22)
  • Chương 2 CÁC NGHIÊN CỨU LIÊN QUAN (23)
    • 2.1. Mở đầu (23)
    • 2.2. Bài toán Phân tích Quan điểm chính trị từ mạng xã hội (23)
      • 2.2.1. Thực trạng (23)
      • 2.2.2. Phát biểu bài toán (23)
    • 2.3. Một số phương pháp phân tích quan điểm (25)
      • 2.3.1. Phương pháp sử dụng từ điển (26)
      • 2.3.2. Phương pháp học máy giám sát (27)
      • 2.3.3. Phương pháp học máy kết hợp sử dụng từ điển (28)
      • 2.3.4. Một số nghiên cứu liên quan (29)
        • 2.3.4.1. Phân tích cảm xúc với dữ liệu từ mạng Twitter (29)
        • 2.3.4.2. Phân tích cảm xúc trong giáo dục đại học qua các thông tin tiếng Việt trên Web (29)
        • 2.3.4.3. Nghiên cứu kỹ thuật phân tích cảm xúc ứng dụng vào cải tiến chất lượng đào tạo đại học (30)
        • 2.3.4.4. Phân tích cảm xúc tiếng Việt trong viễn cảnh Big Data: Hướng tiếp cận Deep Learning (30)
        • 2.3.4.5. Phân lớp chủ đề và đánh giá cảm xúc cho tiếng Việt (31)
    • 2.4. Nhận định về các nghiên cứu và phương pháp phân loại quan điểm (31)
    • 2.5. Kết chương (32)
  • Chương 3 TIẾP CẬN DÙNG WORD EMBEDING (33)
    • 3.1. Mở đầu (33)
    • 3.2. Thu thập dữ liệu (35)
      • 3.2.1. Tổng quan về dữ liệu (35)
      • 3.2.2. Quá trình thu thập dữ liệu (36)
      • 3.2.3. Giới thiệu về Selenium (37)
      • 3.2.4. Sử dụng Selenium để thu thập dữ liệu (38)
    • 3.3. Gán nhãn dữ liệu (38)
      • 3.3.1. Tổng quan về các khía cạnh của dữ liệu (38)
      • 3.3.2. Các bước gán nhãn dữ liệu (39)
      • 3.3.3. Một số nguyên tắc để gán nhãn dữ liệu (40)
    • 3.4. Tiền xử lý (41)
      • 3.4.1. Tổng quan về quá trình tiền xử lý (41)
      • 3.4.2. Giới thiệu về các bộ từ điển (43)
    • 3.5. Mã hóa dữ liệu (46)
      • 3.5.1. Tổng quan về quá trình mã hóa dữ liệu (46)
      • 3.5.2. Tổng quan về Word2Vec (46)
      • 3.5.3. Sử dụng Word2Vec để mã hóa dữ liệu (49)
    • 3.6. Xây dựng mô hình áp dụng LSTM (49)
      • 3.6.1. Giới thiệu về RNN (50)
      • 3.6.2. Giới thiệu về mô hình LSTM (51)
      • 3.6.3. Quá trình huấn luyện của mạng LSTM (55)
    • 3.7. Sử dụng mô hình để huấn luyện phân tích quan điểm (58)
    • 3.8. Kết chương (60)
  • Chương 4 KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ (61)
    • 4.1. Mở đầu (61)
    • 4.2. Dữ liệu thực nghiệm (Dataset) (61)
      • 4.2.1. Tập huấn luyện cho mô hình đánh giá quan điểm (62)
      • 4.2.2. Tập kiểm thử cho mô hình đánh giá quan điểm (63)
    • 4.3. Thiết lập thực nghiệm (63)
    • 4.4. Phương pháp đánh giá (64)
      • 4.4.1. Phương pháp đánh giá (64)
      • 4.4.2. Các độ do sử dụng (65)
    • 4.5. Kết quả thực nghiệm (66)
    • 4.6. So sánh với một số phương pháp khác (73)
    • 4.7. Phân tích lỗi (75)
    • 4.8. Nhận định và bàn luận (76)
      • 4.8.1. Nhận định (76)
      • 4.8.2. Bàn luận (77)
    • 4.9. Kết chương (77)
  • TÀI LIỆU THAM KHẢO (80)

Nội dung

CÁC NGHIÊN CỨU LIÊN QUAN

Mở đầu

Để phân tích quan điểm chính trị, cần xác định rõ bài toán, yêu cầu và phương pháp giải quyết Việc hiểu rõ các yếu tố này sẽ giúp tiếp cận và giải quyết bài toán một cách hiệu quả.

Chương này cung cấp cái nhìn tổng quan về các công trình nghiên cứu liên quan đến bài toán Phân tích quan điểm, bao gồm cả những nghiên cứu đã được công bố trong và ngoài nước.

Bài toán Phân tích Quan điểm chính trị từ mạng xã hội

Phân tích quan điểm trong công nghệ thông tin không phải là một khái niệm mới, nhưng việc ứng dụng nó vào thực tế, đặc biệt trong lĩnh vực chính trị, vẫn còn hạn chế và thiếu nghiên cứu liên quan.

Hiện nay, các trang mạng xã hội của cơ quan, tổ chức đã trở thành kênh giao tiếp quan trọng bên cạnh các phương tiện truyền thông chính thống Kênh này giúp nhà nước thu thập ý kiến của người dân và doanh nghiệp về các vấn đề chính trị, từ đó điều chỉnh chính sách một cách phù hợp, phát huy tính dân chủ và cải thiện chính sách nhà nước.

Bài toán Phân tích quan điểm liên quan đến việc phân tích ngữ nghĩa nhằm xác định cách thức mà đoạn văn thể hiện quan điểm của người viết Để hiểu rõ ý nghĩa của đoạn văn, chúng ta cần xây dựng một mô hình phân tích hiệu quả.

Theo định nghĩa trong lĩnh vực máy học, chúng ta có thể định nghĩa đây là một bài toán phân lớp quan điểm dựa trên ngôn ngữ tự nhiên

Bài viết này tập trung vào việc xác định cảm xúc của văn bản, phân loại thành ba nhóm: tích cực, trung tính và tiêu cực Đầu vào là câu hoặc đoạn văn, trong khi đầu ra là xác suất thuộc về một trong ba lớp cảm xúc này: tích cực, trung tính hoặc tiêu cực.

Hình 2-1 Mô hình của bài toán phân tích quan điểm

Có nhiều phương pháp để xử lý bài toán Phân tích quan Mỗi phương pháp đều có những ưu nhược điểm riêng

Sử dụng công nghệ Học máy cùng các công cụ liên quan để phát triển mô hình phân loại giúp nhận diện và xác định các câu hoặc đoạn văn thể hiện quan điểm rõ ràng.

+ Phương pháp này thích hợp cho việc xử lý dữ liệu đầu vào bất kỳ câu văn hay đoạn văn

Để đạt được kết quả cao trong phương pháp này, việc xây dựng một bộ dữ liệu chất lượng là rất quan trọng, tuy nhiên, điều này đòi hỏi nhiều thời gian và nhân lực.

Hiện nay, ứng dụng các kỹ thuật Học sâu (Deep Learning) đang trở thành phương pháp phổ biến để triển khai mô hình học máy, nhờ vào khả năng xử lý hiệu quả các loại dữ liệu học đặc trưng.

Trong phương pháp này, chúng ta sẽ tiến hành đánh giá điểm số của các từ thể hiện quan điểm và từ đó tính toán tổng điểm để xác định quan điểm chung của câu văn hoặc đoạn văn.

Bằng cách này, chúng ta không cần chuẩn bị dữ liệu huấn luyện, nhưng nhiều từ trong văn bản có thể không nằm trong bộ từ vựng quan điểm, dẫn đến việc chúng không được chú ý và thứ tự của các từ cũng sẽ bị bỏ qua.

Phương pháp này kết hợp Học máy với cách tiếp cận dựa trên từ vựng để phân lớp quan điểm trong câu văn hoặc đoạn văn.

Phương pháp này áp dụng từ điển để trích xuất các đặc trưng quan trọng từ dữ liệu, sau đó đưa dữ liệu đã được rút trích vào mô hình phân tích Tuy nhiên, phương pháp này thường mang lại kết quả tốt nhất khi dữ liệu đầu vào là một câu văn.

Một số phương pháp phân tích quan điểm

2.3.1 Phương pháp sử dụng từ điển

Hình 2-2 Sơ đồ phân lớp quan điểm sử dụng từ điển

Dữ liệu sau khi được tiền xử lý sẽ được phân lớp dự trên từ điển liên quan đến khía cạnh nghiên cứu được xây dựng

Mô hình này sử dụng từ điển để xác định đặc trưng và điểm số cho từng quan điểm, từ đó tổng hợp lại để xác định văn bản thuộc quan điểm nào Phương pháp này không yêu cầu dữ liệu huấn luyện và kiểm tra, mà chỉ cần chuẩn bị bộ từ điển cho các quan điểm cần phân tích.

Ngoài ra, độ chính xác của phương pháp này còn phụ thuộc vào độ tốt của từ điển

Trong mô hình này, thứ tự các từ sẽ bị bỏ qua cũng như các từ chứa nội dung quan trọng có thể không được quan tâm tới

2.3.2 Phương pháp học máy giám sát

Hình 2-3 Sơ đồ phân lớp quan điểm sử dụng Học máy

Dữ liệu đầu vào là dữ liệu đã được xử lý ở các bước tiền xử lý

Trong mô hình học máy, quá trình học sẽ lưu lại những tham số, configure, chúng ta có thể gọi nôm na là kiến thức mà học máy được

Dựa trên kiến thức đã học, khi có dữ liệu mới, máy sẽ phân tích và đánh giá để xác định dữ liệu đó thuộc quan điểm nào.

Kết quả đầu ra là xác suất của từng quan điểm đã định nghĩa, cho phép xác định dữ liệu đầu vào thuộc về hoặc thiên về quan điểm nào Phương pháp này có ưu điểm là có thể xử lý dữ liệu đầu vào dưới dạng câu đơn hoặc đoạn văn, bảo toàn những nội dung quan trọng và đạt độ chính xác cao.

Tuy nhiên, để thực hiện phương pháp này phải chuẩn bị dữ liệu để huấn luyện và nguồn dữ liệu càng dồi dào càng tốt.

2.3.3 Phương pháp học máy kết hợp sử dụng từ điển

Hình 2-4 Sơ đồ phân lớp quan điểm sử dụng Học máy kết hợp từ điển

Phương pháp này còn được gọi ngắn gọn là Phương pháp lai

Phương pháp này sử dụng bộ từ điển để rút trích các từ quan trọng cần thiết cho quá trình xử lý dữ liệu, sau đó chuyển đổi chúng thành đầu vào cho quá trình học máy.

Nhược điểm của phương pháp này là thường chỉ thích hợp với dữ liệu đầu vào là các câu đơn

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

2.3.4.1 Phân tích cảm xúc với dữ liệu từ mạng Twitter

Alexander Park và cộng sự (2015) đã tiến hành thu thập dữ liệu từ Twitter để xây dựng một bộ phân lớp cảm xúc, nhằm xác định các cảm xúc tích cực, tiêu cực và trung lập.

+ Tác giả tự động thu thập dữ liệu cho việc phân tích cảm xúc và khai thác ý kiến

+ Trong đề tài này tác giả nghiên cứu hai mô hình: tree kernel và feature based models

+ Chưa có phân tích ngữ nghĩa và topic modeling

+ Chỉ hỗ trợ ngôn ngữ tiếng Anh.

2.3.4.2 Phân tích cảm xúc trong giáo dục đại học qua các thông tin tiếng

Nguyễn Đăng Thành (2016) đã tiến hành phân tích cảm xúc của độc giả thông qua các bình luận trên trang báo điện tử VNExpress Nghiên cứu này áp dụng phương pháp kết hợp giữa bộ từ điển cảm xúc và học máy giám sát để đánh giá cảm xúc trong các bình luận của độc giả.

- Ưu điểm: Hệ thống tìm được chủ đề ẩn của dữ liệu

- Nhược điểm: Hệ thống chỉ mới phân tích cảm xúc tổng quát, chưa phân tích cảm xúc theo từng chủ đề cụ thể

2.3.4.3 Nghiên cứu kỹ thuật phân tích cảm xúc ứng dụng vào cải tiến chất lượng đào tạo đại học

Trần Văn Tiến và Nguyễn Minh Trường (2017) đã áp dụng các phương pháp xử lý dữ liệu và rút trích đặc trưng từ phản hồi của sinh viên, kết hợp với phương pháp học máy để phân tích cảm xúc Đầu vào là phản hồi từ sinh viên, trong khi đầu ra là nhận định về sắc thái cảm xúc của những phản hồi đó, bao gồm tích cực, tiêu cực và trung tính.

+ Kết quả đầu ra chia thành ba lớp: tích cực, tiêu cực, trung tính

+ Tập trung so sánh các phương pháp để giải quyết bài toán và từ đó đưa ra lựa chọn phương pháp phù hợp nhất

+ Chỉ xử lý tập trung trong một lĩnh vực là những phản hồi, đánh giá của sinh viên UIT về quá trình giảng dạy của giảng viên

+ Chỉ phân tích cảm xúc, chưa phân loại cụ thể những khía cạnh của lĩnh vực nghiên cứu

2.3.4.4 Phân tích cảm xúc tiếng Việt trong viễn cảnh Big Data: Hướng tiếp cận Deep Learning

Quản Thành Thơ (2017) đã nhấn mạnh tầm quan trọng của Big Data từ truyền thông xã hội đối với các thương hiệu tại Việt Nam, đồng thời đề cập đến vai trò của phân tích cảm xúc trong việc khai thác Big Data Bài viết cũng chia sẻ về cách mà học máy có thể được áp dụng trong phân tích cảm xúc, mở ra hướng đi mới cho các doanh nghiệp trong việc hiểu và tương tác với khách hàng.

+ Trình bày cụ thể về cách tiếp cận và các bước để phân tích cảm xúc

+ Giải thích chi tiết về các công nghệ và thuật toán để tiến hành phân tích cảm xúc

- Nhược điểm: Đây chỉ là một bài chia sẻ hơn là nghiên cứu để cho ra một sản phẩm phần mềm.

2.3.4.5 Phân lớp chủ đề và đánh giá cảm xúc cho tiếng Việt

Hung T Vo và cộng sự (2016) đã tiến hành nghiên cứu về phản hồi của các công ty đối với sinh viên thực tập, nhằm phân loại chủ đề và đánh giá cảm xúc để nâng cao chất lượng đào tạo Nghiên cứu phân chia các chủ đề thành lập trình, thiết kế, giao tiếp, ngoại ngữ, thuyết trình, và phân loại cảm xúc thành hai loại: tích cực và tiêu cực.

- Tiến hành thực nghiệm các thuật toán Naive Bayes, IBk (K Nearest Neighbors), SMO (Support Vector Machine) và so sánh kết quả thực nghiệm

- Phương pháp đề xuất tập trung vào cụm tính từ và cụm động từ để trích xuất cấu trúc của nhận xét.

Nhận định về các nghiên cứu và phương pháp phân loại quan điểm

Việc phân tích quan điểm trong từng lĩnh vực cụ thể với các phương pháp tiếp cận đa dạng nhằm đạt kết quả tối ưu đang thu hút sự chú ý của giới chuyên môn Các nghiên cứu hiện nay chủ yếu tập trung vào việc phân tích tổng quát ngôn ngữ tiếng Việt hoặc chỉ xoay quanh những khía cạnh hạn chế như bình luận trong tin tức, thể thao, thương mại, văn hóa - giáo dục và du lịch.

Nghiên cứu tại phần 2.3.4.3 có nhiều điểm tương đồng với các bài toán trong luận văn này, nhưng hiện tại chỉ áp dụng cho mô hình ở trường đại học Trong bối cảnh quản lý hiện nay, lĩnh vực chính trị đang thu hút sự quan tâm lớn từ cả người dân và các nhà quản lý Do đó, việc phát triển mô hình phân tích quan điểm trong lĩnh vực chính trị là cần thiết và được cộng đồng chuyên môn cũng như các nhà quản lý chính trị chú ý đặc biệt.

Kết chương

Mỗi phương pháp phân tích đề tài đều có những ưu và nhược điểm riêng Mặc dù các nghiên cứu phân tích bằng tiếng Anh rất phổ biến và chính xác trong cộng đồng quốc tế, nhưng chúng không hoàn toàn phù hợp với ngôn ngữ tiếng Việt Các phương pháp phân tích tiếng Việt có hiệu quả tốt, nhưng chưa khai thác sâu vào khía cạnh chính trị mà đề tài quan tâm Phương pháp sử dụng từ điển có nhiều lợi thế, nhưng không phù hợp với các văn bản chính quy và dữ liệu từ mạng xã hội.

Việc xây dựng bộ từ điển cần được chứng thực bởi các tổ chức giám định ngôn ngữ để đảm bảo tính khách quan Phương pháp học máy giám sát được đánh giá cao và sẽ được ứng dụng trong đề tài này nhờ vào khả năng ứng dụng, cải thiện độ chính xác và tính mở rộng cao.

TIẾP CẬN DÙNG WORD EMBEDING

Mở đầu

Việc lựa chọn hướng tiếp cận trong Phân tích quan điểm là yếu tố quan trọng hàng đầu mà bất kỳ nhà nghiên cứu nào cũng cần cân nhắc Hướng tiếp cận này quyết định sự thành công hay thất bại của nghiên cứu.

Bài toán Phân tích quan điểm có nhiều phương pháp tiếp cận, nhưng trong bài viết này, chúng ta sẽ tập trung vào việc sử dụng RNN (Recurrent Neural Network) và mô hình LSTM (Long Short Term Memory) Các mô hình này rất phù hợp với dữ liệu đầu vào dạng văn bản hoặc chuỗi ký tự, như câu văn hoặc đoạn văn, và đã được chứng minh có độ chính xác cao trong các nghiên cứu trước đây.

Tổng quan về quá trình theo hướng tiếp cận sử dụng phương pháp học, gồm các bước được mô tả theo thứ tự như sau:

Việc thu thập dữ liệu được thực hiện thông qua sự kết hợp giữa thao tác thủ công và ứng dụng các framework tự động hóa như Selenium và Puppeteer Mục tiêu là thu thập bình luận từ các diễn đàn và mạng xã hội, đặc biệt là những trang chuyên về thông tin chính trị - xã hội Dữ liệu thu thập được sẽ được cô đọng và sử dụng hiệu quả hơn, giúp nâng cao chất lượng thông tin.

Gán nhãn dữ liệu là bước quan trọng sau khi thu thập dữ liệu, trong đó dữ liệu sẽ được kiểm tra và phân loại theo các nhãn như Tích cực, Tiêu cực và Trung lập, dựa trên phát biểu bài toán.

Tiền xử lý dữ liệu là giai đoạn quan trọng sau khi dữ liệu được gán nhãn và chia thành các tệp tin tương ứng Quá trình này bao gồm nhiều bước nhỏ như tách từ, loại bỏ hư từ và chuẩn hóa, nhằm tối ưu hóa chất lượng dữ liệu trước khi đưa vào phân tích.

Mã hóa dữ liệu là quá trình cần thiết để máy tính có thể hiểu được dữ liệu ngôn ngữ, mặc dù dữ liệu đã được tiền xử lý và gán nhãn đầy đủ Một trong những phương pháp mã hóa hiệu quả và được ưa chuộng là Word2Vec, cho phép ánh xạ từng từ vựng vào không gian vector Qua mô hình Word2Vec, các từ được biểu diễn dưới dạng vector số thực, giúp duy trì ngữ nghĩa và mối quan hệ với các từ khác trong ngữ cảnh.

Xây dựng mô hình học sâu với LSTM là một ứng dụng quan trọng trong xử lý ngôn ngữ tự nhiên Mạng LSTM, một phiên bản cải tiến của RNN, đã chứng minh hiệu quả trong việc xử lý các câu và đoạn văn dài Đầu vào của mô hình LSTM bao gồm các vector từ vựng được tạo ra từ Word2Vec cùng với nhãn tương ứng Qua quá trình huấn luyện, mô hình sẽ rút trích và phân tích đặc trưng của dữ liệu, từ đó tạo ra một mô hình học sâu có khả năng dự đoán nhãn quan điểm cho các câu đầu vào đã được mã hóa.

Hình 3-1 Các bước thực hiện

Chương này sẽ trình bày chi tiết các bước thực hiện bài toán Phân tích quan điểm, bao gồm từ giai đoạn thu thập dữ liệu đến xử lý và đánh giá kết quả Mỗi bước sẽ được mô tả cụ thể và rõ ràng trong các đề mục tiếp theo.

Thu thập dữ liệu

3.2.1 Tổng quan về dữ liệu

Dữ liệu huấn luyện đóng vai trò quan trọng trong ảnh hưởng đến quá trình chuẩn hóa dữ liệu và xây dựng mô hình học máy Khái niệm “Trash in – Trash out” trong lĩnh vực học máy nhấn mạnh tầm quan trọng của dữ liệu đầu vào Dữ liệu đầu vào chất lượng, bao quát và có giá trị cao sẽ cải thiện đáng kể kết quả đầu ra của mô hình.

Hiện nay, chưa có bộ dữ liệu tiếng Việt công khai nào đặc thù liên quan đến quan điểm chính trị để phục vụ cho việc phân tích Do đó, việc thu thập dữ liệu liên quan là cần thiết để xây dựng bộ dữ liệu huấn luyện cho nghiên cứu luận văn.

Để thu thập dữ liệu có ý nghĩa cho luận văn về quan điểm chính trị, cần lựa chọn nguồn từ các trang mạng xã hội và website phù hợp với tiêu chí của bộ dữ liệu yêu cầu Các nguồn dữ liệu tiềm năng bao gồm fanpage, trang viết về chính trị trên các nền tảng mạng xã hội, và các diễn đàn nội bộ cũng như công khai trên Internet Dữ liệu có thể sử dụng bao gồm bài viết, bài đăng trên mạng xã hội, phản hồi của cộng đồng về các bài viết đó, và các đánh giá về quan điểm chính trị từ các bài viết chia sẻ thông tin.

3.2.2 Quá trình thu thập dữ liệu

Quá trình thu thập dữ liệu bao gồm việc lấy thông tin từ các kênh truyền thông, mạng xã hội và trang web, chẳng hạn như fanpage chính trị trên Facebook, diễn đàn và các trang web chuyên về chính trị.

Các Crawler sẽ thu thập dữ liệu từ các nguồn trên và lưu vào cơ sở dữ liệu phục vụ cho các bước tiếp theo

Bài luận này sẽ tập trung vào việc thu thập dữ liệu liên quan đến hai khía cạnh chính trị trong các bài viết trên mạng xã hội.

Selenium là một framework miễn phí và mã nguồn mở, được thiết kế để tự động hóa các thao tác trên trình duyệt web trên nhiều nền tảng khác nhau Framework này bao gồm bốn thành phần chính, giúp tối ưu hóa quy trình kiểm thử và phát triển ứng dụng web.

- Selenium Integrated Development Environment (IDE): là một phần mở rộng của Firefox Nó có thể tự động hóa trình duyệt bằng các tính năng ghi lại và phát lại

Selenium Remote Control (RC) hoạt động như một máy chủ, đóng vai trò là proxy HTTP, giúp trình duyệt nhận diện rằng Selenium Core và ứng dụng web đang được kiểm tra đến từ cùng một tên miền.

- WebDriver: giúp việc thực thi các hành động lên trang web một cách tự động và có thể điều khiển trình duyệt từ cấp hệ điều hành

Selenium Grid được phát triển để tối ưu hóa thời gian thực hiện thử nghiệm, cho phép chụp ảnh màn hình của trình duyệt trong các giai đoạn khác nhau Nó cũng hỗ trợ gửi lệnh Selenium đồng thời đến nhiều máy, giúp tăng hiệu quả trong quá trình kiểm thử.

Selenium là công cụ mạnh mẽ hỗ trợ tự động hóa thao tác trên trình duyệt, đặc biệt trong lĩnh vực kiểm thử tự động Nó tương thích với nhiều trình duyệt như Chrome, Firefox, IE, Safari và hoạt động trên nhiều nền tảng khác nhau, bao gồm cả macOS.

Selenium hỗ trợ nhiều hệ điều hành như Windows và Linux, cùng với nhiều ngôn ngữ lập trình như Java, C#, và Ruby Việc sử dụng Selenium giúp tiết kiệm thời gian và nhân lực trong việc thực hiện các bước lặp đi lặp lại có quy tắc.

3.2.4 Sử dụng Selenium để thu thập dữ liệu Để sử dụng Selenium IDE phục vụ cho việc thu thập dữ liệu trước hết cần cài đặt Selenium trên trình duyệt Firefox Sau đó, mở extension trên trình duyệt Firefox và tiến hành tái hiện hành động phù hợp với mong muốn

Với một số website yêu cầu đăng nhập, hoặc có kiến trúc HTML tương đối phức tạp hơn (Ví dụ: Facebook.com - yêu cầu đăng nhập tài khoản, hay

Đánh giá Google Map về vị trí, việc sử dụng Selenium IDE không phải là đơn giản, vì vậy chúng tôi đã áp dụng thư viện Selenium WebDriver kết hợp với ngôn ngữ Java để phát triển một ứng dụng đơn giản giúp thu thập dữ liệu từ các website thông qua đường dẫn URL Ứng dụng này có thể dễ dàng tìm thấy trên Google.

Dữ liệu thu thập được ở bước này chỉ là dữ liệu thô và chưa được sắp xếp Để tạo ra một tập dữ liệu hoàn chỉnh cho việc huấn luyện, chúng ta cần thực hiện gán nhãn dữ liệu Quy trình này sẽ được mô tả chi tiết trong phần tiếp theo.

Gán nhãn dữ liệu

3.3.1 Tổng quan về các khía cạnh của dữ liệu

Nội dung được gán nhãn “Chính trị” khi chứa các từ ngữ liên quan đến chính trị, chẳng hạn như “Thông tin Chính phủ”, hoặc khi chúng ta thực hiện tìm kiếm trên các trang mạng xã hội có chủ đề chính trị.

Trong luận văn này, dữ liệu chính trị sẽ được phân loại dựa trên các trang và bài viết từ mạng xã hội có nguồn gốc từ các cơ quan nhà nước hoặc các chuyên mục chuyên về chính trị Tập trung vào phản hồi và bình luận của người đọc, chúng ta có thể thấy rõ các quan điểm khác nhau đối với những bài viết này.

Nội dung được gán nhẵn “Tích cực” khi thể hiện quan điểm đồng tình, tích cực, cùng với những cảm xúc tốt đẹp, thể hiện sự khen thưởng và ngưỡng mộ.

Ví dụ: “đồng ý với dự Luật”; “Nội dung, chủ trương góp phần đẩy mạnh phát triển xã hội, nhận thức người dân”…

Dữ liệu gán nhãn “Tiêu cực” được sử dụng khi nội dung thể hiện quan điểm tiêu cực, bất đồng, không ủng hộ, cùng với những cảm xúc chỉ trích, chê bai hoặc mang tính bóc đồng.

Ví dụ: “Chưa đọc qua nhưng thấy không phù hợp”; “Không ủng hộ”;

“nhà nước chưa quan tâm đến người dân”…

Dữ liệu gán nhãn "Trung lập" được sử dụng khi nội dung thể hiện quan điểm chung chung, không có ý nghĩa rõ ràng, hoặc khi các ký tự biểu tượng không truyền đạt cảm xúc rõ rệt về các vấn đề chính trị.

3.3.2 Các bước gán nhãn dữ liệu Đây là quá trình gán nhãn dữ liệu đã thu thập được thành các tập đặc trưng theo từng khía cạnh, quan điểm

Dữ liệu được phân loại theo chủ đề, trong đó tập dữ liệu cụ thể cho luận văn này là “Chính trị” Quá trình phân loại dựa trên mức độ liên quan và nội dung - ngữ nghĩa của các câu, nhằm xác định những thông tin có liên quan đến khía cạnh “Chính trị” hoặc các tiêu chí đã được chỉ định trước.

Dữ liệu liên quan đến chủ đề "Chính trị" có thể được phân loại thành ba nhóm chính: Tích cực, Trung tính/Trung lập và Tiêu cực Việc phân chia này giúp hiểu rõ hơn về các quan điểm và thái độ khác nhau trong lĩnh vực chính trị.

3.3.3 Một số nguyên tắc để gán nhãn dữ liệu

Với chủ đề chính trị đã được chỉ định ra, việc cần thực hiện là gán nhãn dữ liệu cho quan điểm của chủ đề chính trị:

- Quan điểm được gán nhãn Tích cực khi:

Nội dung bài viết thể hiện cái nhìn tích cực và cảm xúc lạc quan của người bình luận về một vấn đề, với những sắc thái như tình yêu thương, tình cảm tốt đẹp và sự đồng thuận Những cảm xúc này không chỉ mang lại sự bổ ích mà còn tạo ra sự gắn kết, khuyến khích sự chia sẻ và thấu hiểu lẫn nhau trong cộng đồng.

+ Nội dung thể hiện quan điểm của người bình luận khi so sánh với nhiều đối tượng, phạm trù khác và kết quả cao hơn ở khía cạnh tích cực

- Quan điểm được gán nhãn Tiêu cực khi:

Nội dung bài viết thể hiện cái nhìn tiêu cực của người bình luận về một vấn đề, với những sắc thái như thù ghét, thù địch, bất công, bất mãn, sự giả dối và những lời phủ định chê bai Những cảm xúc này phản ánh sự không hài lòng và chỉ trích sâu sắc đối với tình hình hiện tại.

Nội dung thường sử dụng các từ ngữ thể hiện cảm xúc tích cực, nhưng lại đi kèm với những từ phủ định như "không", "chẳng", "không có", "không thể", nhằm tạo ra sự đối lập rõ rệt.

- Quan điểm được gán nhãn Trung lập khi:

Bình luận không thể hiện cái nhìn và cảm xúc của người viết về nội dung, đồng thời không phản ánh quan điểm cá nhân hoặc không liên quan đến chủ đề đang thảo luận.

Các ví dụ liên quan:

Ví dụ 1: chủ đề chính trị về phát biểu của Thủ tướng về “Chống suy thoái như chống giặc”

Bình luận Tích cực 1: “Chính xác Giờ thấy suy thoái nhiều quá.”

Bình luận Tích cực 2: “Chống lợi ích nhóm triệt để hết suy thoái mọi cái ”

Bình luận Tích cực 3: “Cả nước chung tay cùng chính phủ Việt Nam phát triển kinh tế mở rộng quan hệ quốc tế”

Bình luận Tiêu cực 1: “Việc này rất mâu thuẫn và nghiên cứu thực tế mà nhanh nhẹn hơn”

Tình hình Covid-19 đã có những chuyển biến tích cực, khi đến ngày thứ 67 không ghi nhận ca mắc mới trong cộng đồng Chính phủ đang xem xét việc mở lại các đường bay thương mại, tuy nhiên, cần phải thận trọng và không được chủ quan trong công tác phòng chống dịch.

Bình luận Tích cực 1: “Chúng cháu rất mong chính phủ sớm mở đường bay thương mại ạ!”

Bình luận Tích cực 2: “Chẳng kẻ thù nào ngăn nổi bước ta đi , chúng ta đã chiến thắng covid”

Bình luận Tiêu cực 1: “Việc này rất mâu thuẫn”

Bình luận mang tính Trung lập: “Chúc bạn một ngày bình an”

Tiền xử lý

3.4.1 Tổng quan về quá trình tiền xử lý

Tiền xử lý dữ liệu là bước quan trọng trong việc thu thập thông tin từ các bài viết và chuyên mục trên mạng xã hội thông qua Crawler Quá trình này bao gồm việc chuẩn hóa dữ liệu theo một quy chuẩn cụ thể, loại bỏ các ký tự đặc biệt, dữ liệu rác, và các thẻ HTML không cần thiết Đặc biệt, dữ liệu sẽ được tách thành các cụm từ ghép, giúp đảm bảo rằng các bước xử lý tiếp theo diễn ra chính xác và hiệu quả hơn.

Hình 3-2 Các bước xử lý ngôn ngữ tự nhiên

Quá trình tiền xử lý đối với bài toán này, các công đoạn và các phương pháp như sau:

- Loại bỏ các thẻ html Ví dụ: , , Phương pháp thực hiện: sử dụng bộ từ điển Social Language

- Loại bỏ các icon, sticker Ví dụ: :v, :D, :), Phương pháp thực hiện: sử dụng bộ từ điển hư từ

Tách từ là phương pháp gom nhóm các từ đơn liền kề thành cụm từ có ý nghĩa rõ ràng, giúp khử sự nhập nhằng về ngữ nghĩa Để thực hiện việc này, bạn có thể sử dụng công cụ Underthesea.

Để tối ưu hóa quá trình phân tích, việc loại bỏ hư từ là cần thiết nhằm giảm thiểu thông tin nhiễu Các hư từ như “bấy nhiêu”, “nhé” thường không mang lại giá trị thông tin và có thể gây khó khăn trong việc xử lý dữ liệu Phương pháp thực hiện việc này là sử dụng bộ từ điển hư từ để xác định và loại bỏ chúng.

- Chuẩn hóa dữ liệu: chuẩn hóa các từ viết tắt, sai chính tả, tiếng lóng, v.v… Phương pháp thực hiện: sử dụng bộ từ điển Social Language

Trong quá trình tiền xử lý dữ liệu, có nhiều phương pháp khác nhau được áp dụng, bao gồm việc sử dụng từ điển và các công cụ lập trình Các phương pháp này sẽ được giới thiệu tổng quát trong các phần tiếp theo.

3.4.2 Giới thiệu về các bộ từ điển

Phương pháp sử dụng từ điển là một cách đơn giản để triển khai kiểm tra các đối tượng Bằng cách tham khảo một hoặc nhiều từ điển, chúng ta có thể xác định sự xuất hiện của các đối tượng cần kiểm tra Nếu đối tượng có trong từ điển, hệ thống sẽ thực hiện các hành động tiếp theo phù hợp Phương pháp này cũng giúp giới hạn sự xuất hiện của các đối tượng đặc biệt hoặc hiếm gặp, đưa chúng về các trường hợp phổ biến và cụ thể hơn.

Trong giai đoạn tiền xử lý dữ liệu, việc xác định từ ngữ trong môi trường mạng xã hội và hư từ là rất quan trọng Bài luận văn đã tổng hợp các bộ từ điển từ nhiều dự án khác nhau, đồng thời bổ sung từ vựng để tạo ra bộ từ điển phù hợp cho nghiên cứu.

- Giới thiệu từ điển Social Language

Từ điển Social Language là một tập hợp các từ teen code, tiếng lóng, tiếng địa phương và từ viết tắt, cung cấp phiên bản chính xác về chính tả và ngữ pháp tiếng Việt cho mỗi từ.

Từ điển Vietnamese Social Language: được lưu dưới dạng tập tin json, mỗi dòng là một từ có dạng: {"incorrect": , "correct":

- Giới thiệu từ điển hư từ:

Từ điển hư từ được lưu dưới dạng tập tin txt, bao gồm cả hư từ dưới dạng văn bản thuần và emoji nhằm làm sạch dữ liệu, giúp quá trình xử lý sau này hiệu quả hơn Mỗi dòng trong từ điển chứa một hư từ và đây là một công trình mã nguồn mở được nhóm sử dụng phát triển.

Hình 3-3 Một vài ví dụ Từ điển hư từ

Mã hóa dữ liệu

3.5.1 Tổng quan về quá trình mã hóa dữ liệu

Mã hóa dữ liệu là quá trình chuyển đổi văn bản thành dạng vector, giúp sắp xếp tài liệu theo mức độ liên quan đến câu truy vấn Mục tiêu của việc này là biểu diễn tập từ của ngôn ngữ tự nhiên trong không gian vector, từ đó hiểu mối liên hệ giữa các từ thông qua độ tương đồng Phương pháp phổ biến để tính độ tương đồng là sử dụng cosine similarity, bằng cách tính cos của góc giữa vector câu truy vấn và vector văn bản Việc mã hóa dữ liệu rất quan trọng vì máy tính dễ dàng xử lý dữ liệu dạng vector hơn là văn bản thô Hệ thống sẽ tiếp nhận dữ liệu dưới dạng không gian vector, với các tham chiếu thể hiện từ vựng trong ngôn ngữ tự nhiên Để mã hóa dữ liệu văn bản cho các bước tiếp theo, chương trình sử dụng mô hình Word2Vec.

3.5.2 Tổng quan về Word2Vec

Trong xử lý ngôn ngữ tự nhiên, việc chuyển đổi từ thành vector là rất quan trọng, giúp thể hiện sự tương đồng và đối lập về ngữ nghĩa giữa các từ Điều này hỗ trợ trong việc mô hình hóa vector cho câu hoặc đoạn văn, cũng như tìm kiếm các câu có nghĩa tương đồng.

Word2Vec là một phương pháp học vector từ, hoạt động bằng cách dự đoán các từ xung quanh mỗi từ trong một corpus lớn Phương pháp này nổi bật với tốc độ nhanh và khả năng dễ dàng tích hợp câu hoặc văn bản mới vào từ vựng Nó sử dụng một mạng neural hai lớp với một tầng ẩn duy nhất, tạo ra không gian vector với số chiều khoảng vài trăm, trong đó mỗi từ trong corpus được gán với một vector tương ứng.

Các vector từ được xác định trong không gian vector, với những từ có ngữ cảnh tương tự được xếp gần nhau Điều này cho phép dự đoán chính xác ý nghĩa của một từ dựa trên các lần xuất hiện trước đó.

Có 2 cách xây dựng word2vec:

Hình 3-4 Mô hình Word2Vec

Mô hình CBOW sử dụng các từ ngữ cảnh xung quanh để dự đoán từ trung tâm, tức là dựa vào ngữ cảnh để xác định mục tiêu Lợi thế của CBOW là tốc độ huấn luyện nhanh hơn so với mô hình skip-gram và 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.

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

Cả hai kiến trúc đều nhằm mục đích đoán từ, nhưng chức năng của chúng khác nhau Do đó, việc lựa chọn kiến trúc phù hợp nhất sẽ phụ thuộc vào từng tình huống cụ thể.

Mô hình Word2Vec mang lại lợi thế nổi bật là khả năng đo lường độ tương đồng giữa các từ Để xác định độ tương đồng này, chúng ta sử dụng chỉ số cosine, với giá trị của cosine nằm trong khoảng từ 0 đến 1.

Trong không gian vectơ của các từ, sự tương đồng giữa chúng được thể hiện qua giá trị cosine Các từ có sự tương đồng cao sẽ có giá trị cosine lớn và nằm gần nhau trong không gian biểu diễn, trong khi các từ ít tương đồng sẽ có giá trị cosine nhỏ và cách xa nhau.

Có 3 cải tiến cơ bản cho mô hình Word2Vec truyền thống:

- Xử lý các cặp từ thông dụng hoặc cụm từ như là một từ đơn

- Loại bỏ các từ thường xuyên lặp lại để giảm số lượng các ví dụ huấn luyện

- Sửa đổi mục tiêu tối ưu hóa bằng một kỹ thuật gọi là “Negative Sampling”

3.5.3 Sử dụng Word2Vec để mã hóa dữ liệu

Hình 3-5 Mô hình sử dụng Word2Vec mã hóa dữ liệu

Dữ liệu đầu vào là văn bản đã xử lý ở bước tách từ

Dữ liệu đầu ra là mô hình Word2Vec

Trong mô hình này chúng ta sử dụng một vài tham số sau:

- minWordFrequency = 5 Nghĩa là nếu từ đó xuất hiện ít hơn 5 lần thì từ đó sẽ không được học

- layerSize = 300 Nghĩa là số chiều của vector từ là 300

- windowSize= 5 Nghĩa là số lượng token mỗi lần “trượt” sẽ gom nhóm lại.

Xây dựng mô hình áp dụng LSTM

Phương pháp học máy giám sát nổi bật với nhiều ưu điểm, mà cụ thể hơn chính là mô hình dùng RNN và LSTM

Phương pháp mô hình RNN và LSTM nổi bật với khả năng xử lý đầu vào là câu hoặc đoạn văn bản, rất phù hợp với dữ liệu từ mạng xã hội không theo quy luật cụ thể Đầu vào của mô hình được biểu diễn trong không gian vector của Word2Vec RNN và LSTM đặc biệt hiệu quả trong việc xử lý ngôn ngữ giàu ngữ cảnh như tiếng Việt nhờ vào khả năng “ghi nhớ” thông tin trước đó và truy xuất các từ phụ thuộc hiệu quả, giúp xử lý chuỗi từ trong câu hoặc đoạn văn một cách tối ưu.

RNN (Recurrent Neural Network) được biết đến là mạng nơ-ron hồi quy

Nó thực hiện cùng một tác vụ cho tất cả các phần tử của chuỗi, với đầu ra phụ thuộc vào các phép tính trước đó Điều này cho thấy khả năng nhớ thông tin đã được tính toán, một tính năng mà các mạng nơ-ron truyền thống không có.

Một mạng nơ-ron hồi quy có thể được xem như nhiều bản sao của cùng một mạng, trong đó đầu ra của mỗi mạng là đầu vào cho một mạng sao chép khác.

- Có nhiều loại bài toán RNN như: one-to-one, one-to-many, many-to- one, many-to-many Ví dụ:

+ one-to-one: xác định cảm xúc của câu nói,

+ one-to-many: tìm chủ đề cho một bức ảnh,

+ many-to-one: xác định hành động trong video,

+ many-to-many: bài toán dịch văn bản,

Hình 3-6 Một mạng RNN và mở ra thời gian tính toán liên quan chuyển tiếp – (nguồn: Internet sites.google.com/site/vncoder95/machine-learning/rnn-la- gi)

Trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP), RNN đã đạt được nhiều thành công trong việc giải quyết các vấn đề khác nhau Mặc dù lý thuyết cho rằng RNN có khả năng nhớ dữ liệu trước đó, nhưng thực tế cho thấy nó chỉ có thể ghi nhớ thông tin gần kề do hiện tượng mất mát đạo hàm Để khắc phục nhược điểm này, LSTM được phát triển dựa trên cấu trúc của RNN.

3.6.2 Giới thiệu về mô hình LSTM

Mô hình phổ biến nhất của RNN là LSTM

- LSTM (Long Short Term Memory) ra đời nhằm khắc phục yếu điểm của RNN là có thể nhớ xa hơn

- Thành phần chính của LSTM là cell state

Hình 3-7 Mô hình LSTM – nguồn Internet

LSTM có khả năng điều chỉnh thông tin trong cell state thông qua cấu trúc cổng, với mỗi cổng được thiết kế dưới dạng một tầng sigmoid Mỗi mạng LSTM bao gồm ba cổng khác nhau.

+ Xác định xem thông tin có được lưu vào cell state hay không

+ Nếu kết quả tính toán là 0 thì thông tin đầu ra của state trước sẽ bị bỏ qua không được lưu vào cell state

+ Ngược lại, nếu là 1 thì thông tin đầu ra của state trước sẽ được lưu vào cell state.

+ Xác định xem thông tin mới nào sẽ được lưu vào cell state

+ Trong gate này, ngoài tầng sigmoid còn có thêm một hàm tanh để hỗ trợ tính toán

- Gate thứ ba: Xác định xem thông tin nào sẽ tác động tới đầu ra của state

- Áp dụng mô hình LSTM: Ở state thứ t của mô hình LSTM:

Output: c t ,h t , ta gọi c là cell state, h là hidden state

Input: c t−1 , h t−1, x t Trong đó x t là input ở state thứ t của model c t−1 ,h t−1 là output của layer trước h đóng vai trò khá giống như s ở RNN, trong khi c là điểm mới của LSTM

The symbols σ and tanh represent the sigma and tanh activation functions, respectively In this context, element-wise multiplication is performed, while matrix addition is applied to the vectors f, i, and o, corresponding to the forget gate, input gate, and output gate.

Mô hình LSTM có cấu trúc tương tự như RNN, với các hệ số bias bf, bi, bo và các hệ số W, U Quá trình tính toán trong LSTM bao gồm các bước như tính s t trong RNN, với forget gate quyết định lượng thông tin cần lấy từ cell state, input gate xác định lượng thông tin từ input và hidden layer trước, và output gate quyết định lượng thông tin từ cell state để tạo ra output cho hidden state Hơn nữa, h t được sử dụng để tính output y t cho state t LSTM có khả năng lưu trữ cả short term memory và long term memory, nhờ vào cơ chế giống như băng chuyền của c t, cho phép thông tin quan trọng được lưu trữ và sử dụng khi cần thiết.

Hình 3-9 Mô hình xử lý vanishing gradient

Ta cũng áp dụng thuật toán back propagation through time cho LSTM tương tự như RNN

Thành phần chính gây là vanishing gradient trong RNN là:

Trong LSTM, vấn đề vanishing gradient vẫn tồn tại nhưng ở mức độ nhẹ hơn so với RNN Điều này là do thông tin trên cell state thường không cần phải quên giá trị cell cũ, dẫn đến f t gần bằng 1, giúp giảm thiểu hiện tượng vanishing gradient.

Do đó, LSTM được dùng phổ biến hơn RNN cho các bài toán thông tin dạng chuỗi phù hợp với yêu cầu của luận văn

3.6.3 Quá trình huấn luyện của mạng LSTM

Trong phần 3.6.2, chúng tôi đã trình bày kiến trúc và lý do tại sao LSTM có khả năng tránh hiện tượng vanishing gradient Trong mục này, chúng tôi sẽ mô tả quá trình huấn luyện của mạng LSTM.

- Hàm chi phí (cost function):

 Cost function được sử dụng là một hàm L2-norm có công thức như sau:

 Hàm L2-norm cost function là tổng bình phương của của giá trị dự đoán và giá trị nhãn

 Đạo hàm của cost function là:

Quá trình forward trong mạng LSTM được thể hiện qua hình ảnh, trong đó các thông tin về các cổng như output, hidden, và forget đã được loại bỏ để tạo điều kiện quan sát dễ dàng hơn.

 Vào mỗi thời điểm T, một cell state 𝑐 𝑇 nhận giá trị 𝑥 𝑇 và hidden state

ℎ 𝑇−1 và đảm nhận tính toán hidden state ℎ 𝑇 và cell state tiếp theo 𝑐 𝑇+1

Hidden state ℎ 𝑇 lúc này được đưa qua một (activation) layers để tính toán giá trị cost function 𝐶 𝑇

 Các giá trị của các gate được tính toán dựa trên các công thức sau:

Quá trình Backpropagation trong mạng LSTM được minh họa qua hình ảnh, cho thấy sự tương đồng với quá trình Forward, nhưng với tất cả các mũi tên được đảo ngược.

Tại thời điểm T, trạng thái ô 𝑐 𝑇 nhận giá trị tích lũy từ đạo hàm của hàm chi phí của trạng thái ẩn ở thời điểm T+1 và giá trị của trạng thái đầu ra T+1 Dựa trên đó, các đạo hàm của các cổng trong trạng thái ô T sẽ được tính toán lại theo các công thức nhất định Đầu ra của trạng thái ô 𝑐 𝑇 là giá trị  𝑇−1, và giá trị này sẽ được lặp lại như đầu vào của trạng thái ô 𝑐 𝑇−1 trong lần tiếp theo Các giá trị của các cổng sẽ được cập nhật theo các công thức đã nêu.

 Sau tính toán, các trọng số W, U, b được tính toán bằng cách tính tổng thay đổi:

 Sau cùng, các trọng số được cập nhật thông qua hàm Stochastic Gradient Descent (SGD) với trọng số learning rate :

Sử dụng mô hình để huấn luyện phân tích quan điểm

Quá trình huấn luyện này nhằm xác định dữ liệu đầu vào theo ba lớp quan điểm chính: Tích cực, Trung lập và Tiêu cực.

Mô hình học máy sẽ được áp dụng để phân tích quan điểm trong khóa luận này Chúng tôi sử dụng Deep Learning như một phương pháp chính để xác định các khía cạnh, vì đây là phương pháp phổ biến và phù hợp với các đặc trưng của dữ liệu học hiện nay.

Để huấn luyện mô hình, tập dữ liệu huấn luyện được phân chia thành ba loại: tích cực, trung lập và tiêu cực Các tập con này sẽ được sử dụng để đào tạo mô hình một cách hiệu quả.

Dựa trên kết quả học được, tập dữ liệu thử nghiệm sẽ được sử dụng để kiểm tra hiệu quả học của mô hình, từ đó đánh giá độ chính xác của nó.

Hình 3-10 Cấu trúc để huấn luyện và kiểm thử mô hình phân tích quan điểm

Kết chương

Bài viết này trình bày các phương pháp cụ thể để giải quyết bài toán phân tích quan điểm trong các bài viết chính trị từ mạng xã hội, áp dụng phương pháp học máy giám sát Nội dung bao gồm các giai đoạn xử lý bài toán và cách sử dụng các công cụ, thư viện để thực hiện từng giai đoạn Ngoài ra, chương này cũng cung cấp kiến thức tổng quát về các công cụ và thư viện liên quan.

Để áp dụng và hiện thực hóa các quan điểm thành một chương trình cụ thể, chúng ta cần phân tích hệ thống quan điểm cho các bài viết chính trị trên mạng xã hội Nội dung chi tiết và cụ thể về vấn đề này sẽ được trình bày trong chương tiếp theo.

KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ

Mở đầu

Trong chương này, chúng ta sẽ thực hiện các thí nghiệm để đánh giá hiệu quả của các phương pháp và thuật toán đã được trình bày trong chương trước về bài toán Phân tích quan điểm Những kết quả thu được sẽ là nền tảng quan trọng cho các nghiên cứu tiếp theo.

Dữ liệu thực nghiệm (Dataset)

Sau khi phân loại các bài viết chính trị trên mạng xã hội, chúng ta tiến hành thu thập và xử lý dữ liệu Tiếp theo, chúng ta thực hiện thí nghiệm phân loại mô hình đánh giá quan điểm theo ba hướng: Tích cực (Positive), Trung lập (Neutral) và Tiêu cực (Negative).

4.2.1 Tập huấn luyện cho mô hình đánh giá quan điểm

Tập huấn luyện Tổng cộng Tích cực Trung lập Tiêu cực

Tập huấn luyện Quan điểm chính trị

Bảng 4-1 Bảng thống kê tập huấn luyện

Tập huấn luyện Quan điểm chính trị Tích cực Trung lập Tiêu cực

4.2.2 Tập kiểm thử cho mô hình đánh giá quan điểm Áp dụng vào nguồn dữ liệu đã thu thập được tra tiến hành kiểm thử cho Tập dữ liệu quan điểm chính trị

Tập kiểm thử Tổng cộng Tích cực Trung lập Tiêu cực

Bảng 4-2 Bảng thống kê tập kiểm thử

Thiết lập thực nghiệm

Chương trình được tiến hành thực nghiệm trên máy tính có cấu hình: CPUs: i5-7300HQ 2.50GHz; Ram: 8Gb GPU: GeForce GTX1050; Hệ điều hành: Ubuntu 18.04 LTS

Ngôn ngữ lập trình được sử dụng: Python; Jupyter Notebook

- Các thư viện xử lý ngôn ngữ tiếng Việt :

Tập kiểm thử Quan điểm chính trị Tích cực Trung lập Tiêu cực

+ Thư viện xử lý ngôn ngữ tự nhiên Underthesea sử dụng cho giai đoạn tiền xử lý

+ Thư viện và mô hình ngôn ngữ tiếng Việt Fasttex sử dụng cho giai đoạn Embedd dữ liệu ngôn ngữ tự nhiên

+ Thư viện Numpy, thư viện Pandas

- Triển khai môi trường và hệ thống

+ Cài đặt môi trường Python

+ Cài đặt Preferred Installer Program (PIP)

+ Cài đặt môi trường ảo (virtual environment)

+ Cài đặt mô hình Word2Vec fastText

+ Cài đặt package Keras sử dụng Tensorflow Backend

+ Cài đặt các required package còn lại bằng file requirements.txt

+ Cài đặt Flask (để thực hiện UI demo).

Phương pháp đánh giá

Khi xây dựng mô hình, việc đánh giá hiệu quả là rất quan trọng để so sánh với các mô hình khác Các phương pháp đánh giá thường được sử dụng bao gồm Accuracy score, Confusion matrix, ROC curve, Precision, Recall và F1-Score.

Trong các bài toán phân loại, sau khi xử lý dữ liệu và áp dụng mô hình học máy, đầu ra sẽ là một vector xác suất cho từng lớp Để đánh giá độ chính xác của mô hình, chúng ta sử dụng chỉ số accuracy, tính bằng phần trăm số lớp phân loại đúng so với tổng số dự đoán Tuy nhiên, chỉ số này không phản ánh đầy đủ mối quan hệ giữa các lớp đúng và sai khi có sự phân loại không chính xác.

Để đánh giá kết quả của các bài toán phân loại, ngoài độ chính xác (accuracy), chúng ta còn sử dụng độ đo Confusion Matrix Phương pháp này xem xét cả chỉ số về độ chính xác và độ bao quát của các dự đoán cho từng lớp Một confusion matrix bao gồm 4 chỉ số quan trọng cho mỗi lớp phân loại.

4.4.2 Các độ do sử dụng

Predicted as Positive Predicted as Negative

Bảng 4-3 Thể hiện Confusion Matrix

Một số ký hiệu được sử dụng trong tính toán các độ đo:

Accuracy: kết quả độ chính xác

TP: số lượng mẫu tích cực đúng

TN: số lượng mẫu tiêu cực đúng

FP: số lượng mẫu tích cực sai

FN: số lượng mẫu tiêu cực sai

Kết quả thực nghiệm

Từ kết quả của mô hình trên tập kiểm thử, tập Confusion Matrix như sau:

Hình 4-1 Confusion Matrix của mô hình trên tập kiểm thử

Hình 4-2 Normalized Confusion Matrix của mô hình trên tập kiểm thử

- Accuracy Score tính toán được dựa trên Confusion Matrix: 0.75010

- Công thức tính Accuracy: Dùng tổng đường chéo của confusion matrix (tổng các trường hợp phân lớp đúng) chia tổng tất cả các trường hợp kiểm thử

Dựa trên quan sát của bảng Normalized Confusion Matrix trên, ta có thể nhận thấy kết quả phân lớp của các lớp đều ở mức chấp nhận được (>0.7)

- Những mẫu thuộc lớp Trung lập có thể bị mô hình nhầm lẫn thành nhãn tích cực và nhãn tiêu cực (là 0.13 và 0.16)

- Những mẫu lớp Tích cực vẫn có một tỉ lệ không nhỏ (0.25) bị phân lớp sai thành mẫu tiêu cực

- Những mẫu lớp Tiêu cực có tỉ lệ phân lớp chính xác cao hơn (0.83) và hiệu quả hơn so với 02 lớp còn lại

- Chương trình được xây dựng thực nghiệm tại hệ thống sau: http://35.213.175.182:5005/ (Qua năm 2021 hệ thống này có thể thay đổi)

Hình 4-3 Giao diện của Chương trình

Bình luận tích cực về bài viết của Chính phủ trên trang Facebook liên quan đến công tác phòng, chống dịch Covid-19 có thể nhấn mạnh sự kịp thời và hiệu quả của các biện pháp được triển khai, góp phần nâng cao nhận thức cộng đồng Ngược lại, bình luận tiêu cực có thể chỉ trích việc thông tin chưa đầy đủ hoặc chưa đáp ứng được nhu cầu thực tế của người dân trong bối cảnh dịch bệnh.

Hình 4-4 Bài viết về liên quan phòng chống dịch bệnh Covid – 19

Hình 4-5 Một số bình luận liên quan đến bài viết

Khi đưa vào chương trình phân tích quan điểm chính trị từ mạng xã hội

Đầu vào của chương trình cho phép người dùng nhập trực tiếp câu văn hoặc đoạn văn cần phân tích Sau khi nhấn nút phân tích, người dùng sẽ nhận được kết quả phân tích ngay lập tức.

Hình 4-7 Kết quả của đoạn bình luận được chương trình phân tích

Giao diện chương trình hiển thị kết quả tiền xử lý đầu vào của đoạn văn, cho thấy kết quả xử lý khi áp dụng bộ từ điển vnTokenize Đặc biệt, chương trình phân tích quan điểm bình luận và cho ra kết quả là POSITIVE, xác nhận rằng bình luận này mang tính tích cực.

Cũng ở ví dụ này nhưng dữ liệu đầu vào có chiều hướng Tiêu cực

Hình 4-8 Đầu vào của chương trình với bình luần có hướng Tiêu cực

Sau khi phân tích, ta sẽ có kết quả như sau:

Hình 4-9 Kết quả của chương trình sau khi phân tích mang quan điểm Tiêu cực

Ta thấy kết quả của chương trình phân tích được quan điểm bình luận đã cho kết quả NEGATIVE tức là bình luận ở quan điểm Tiêu cực.

So sánh với một số phương pháp khác

Để đánh giá một cách khách quan việc áp dụng phương pháp LSTM kết hợp với Word2Vec, chúng tôi đã thực hiện các thí nghiệm với một số phương pháp khác nhau.

Tên phương pháp Accuracy Score

Bảng 4-4 Bảng so sánh một số phương pháp

Nghiên cứu đã thực hiện nhiều tiếp cận khác nhau để so sánh kết quả thực nghiệm, bao gồm Support Vector Machine (SVM), mạng RNN và mạng LSTM Các phương pháp này được kết hợp với Word Embedding, cụ thể là TF-IDF và Word2Vec Kết quả cho thấy mô hình sử dụng Word2Vec đạt hiệu suất cao hơn so với mô hình dùng TF-IDF nhờ khả năng biểu diễn ngữ cảnh phong phú hơn.

Mặc dù LSTM và RNN đều là mô hình học sâu, nhưng LSTM đã cải tiến đáng kể bằng cách giải quyết vấn đề Vanishing/Exploding gradients mà RNN gặp phải Kết quả cho thấy LSTM vượt trội hơn RNN trong nhiều ứng dụng, nhấn mạnh hiệu quả của phương pháp này.

Phương pháp SVM kết hợp với TF-IDF đạt kết quả ấn tượng (0.83), vượt trội hơn so với các phương pháp RNN và LSTM kết hợp với Word2Vec Điều này có thể được giải thích bởi SVM thường hoạt động tốt hơn trên các tập dataset nhỏ và đơn giản Dữ liệu huấn luyện còn hạn chế và không đa dạng, trong khi câu Input từ mạng xã hội thường ngắn gọn, làm giảm khả năng tận dụng sức mạnh của LSTM Tuy nhiên, với việc cung cấp thêm dữ liệu phù hợp và quy mô lớn hơn, hiệu suất của các mô hình học sâu như RNN và LSTM chắc chắn sẽ được cải thiện.

Phân tích lỗi

Dữ liệu huấn luyện và kiểm thử hoàn toàn được thu thập từ mạng xã hội, mặc dù đã được tiền xử lý, nhưng vẫn tồn tại những mẫu không tuân theo chuẩn mực cú pháp, dẫn đến các điểm nhiễu cho mô hình học Những vấn đề này có thể bao gồm câu quá ngắn, câu không có dấu, hoặc câu sử dụng tiếng nước ngoài.

Sự đa nghĩa trong tiếng Việt là một thách thức lớn cho nghiên cứu, đặc biệt trên mạng xã hội, nơi xuất hiện nhiều trào lưu sử dụng từ mới, từ lóng và những câu hàm ý mỉa mai Những yếu tố này kết hợp với các từ bình thường làm cho dữ liệu trở nên nhiễu loạn.

Chủ đề chính trị bao hàm nhiều lĩnh vực con như cách vận hành của nhà nước, đường lối ngoại giao, bổ nhiệm nhân sự và các hoạt động, chính sách khác Sự đa dạng này dẫn đến tập từ vựng rộng và chưa cô đọng, ảnh hưởng đến độ chính xác của mô hình trong quá trình học.

- Một số hướng giải quyết với các lỗi trên:

Tiếp cận các nguồn dữ liệu đa dạng và có cấu trúc từ các đơn vị như viện dư luận xã hội, ban tuyên giáo trung ương và cổng dữ liệu quốc gia là rất quan trọng Những nguồn dữ liệu này không chỉ phong phú về hình thức mà còn có thể được bổ sung thêm trọng số như đánh giá và thang điểm, mang lại giá trị cao cho nghiên cứu nếu được thu thập hiệu quả.

Kết hợp các phương pháp phân tích quan điểm là xu hướng đang được nhiều nghiên cứu theo đuổi, trong đó mô hình học lai nổi bật với khả năng kết hợp nhiều phương pháp để đạt được kết quả tốt hơn Điều này hứa hẹn sẽ mang lại những kết quả đáng mong đợi trong các nghiên cứu tiếp theo.

Nhận định và bàn luận

Mô hình phân tích quan điểm và cảm xúc (tích cực, trung lập, tiêu cực) đã được áp dụng để nghiên cứu các bài viết tiếng Việt liên quan đến chính trị, giúp hiểu rõ hơn về cách thức các quan điểm được thể hiện trong nội dung Nghiên cứu này cung cấp cái nhìn sâu sắc về sự phân bố cảm xúc trong các bài viết, từ đó góp phần làm rõ hơn bối cảnh chính trị hiện tại.

- Tìm hiểu, nghiên cứu về thực trạng vấn đề hiện tại, từ đó đưa ra được phát biểu của bài toán và lộ trình nghiên cứu thực hiện

Nghiên cứu và tìm hiểu các công trình trong và ngoài nước liên quan giúp chúng ta tiếp thu nhiều kiến thức và kinh nghiệm quý giá trong các lĩnh vực như học máy, xử lý ngôn ngữ tự nhiên và dữ liệu lớn Những kiến thức này sẽ được áp dụng hiệu quả vào chương trình của chúng ta.

Chúng tôi đã phát triển hai bộ từ điển, bao gồm từ điển Social Language và từ điển hư từ, nhằm hỗ trợ quá trình tiền xử lý dữ liệu Tuy nhiên, việc xây dựng chủ yếu dựa vào kiến thức chủ quan và tìm kiếm trên Internet, do đó vẫn còn nhiều hạn chế và thiếu sót về từ vựng.

- Thu thập dữ liệu liên quan đến các khía cạnh đề tài sử dụng, lên đến khoản 21 nghìn tài liệu bằng các công cụ lập trình

Tiến trình tiền xử lý dữ liệu sử dụng hai bộ từ điển bao gồm các bước quan trọng như chuẩn hóa dữ liệu, tách từ và loại bỏ hư từ, được thực hiện qua thư viện xử lý.

- Thực hiện mã hóa dữ liệu vào không gian vector theo mô hình Word2Vec

Xây dựng và phát triển mô hình mạng nơ-ron hồi tiếp (RNN), đặc biệt là mô hình LSTM, để ứng dụng trong phân tích quan điểm Mô hình này được thiết kế nhằm xác định và phân loại quan điểm thành ba loại: Tích cực, Trung lập và Tiêu cực.

- Thực hiện đánh giá các kết quả đạt được dựa trên dữ liệu ta có kết quả:

+ Những mẫu thuộc lớp Trung lập có thể bị mô hình nhầm lẫn thành nhãn tích cực và nhãn tiêu cực (là 0.13 và 0.16)

+ Những mẫu lớp Tích cực vẫn có một tỉ lệ không nhỏ (0.25) bị phân lớp sai thành mẫu tiêu cực

+ Những mẫu lớp Tiêu cực có tỉ lệ phân lớp chính xác cao hơn (0.83) và hiệu quả hơn so với 02 lớp còn lại

Theo kết quả đạt được thì định hướng phát triển về sau sẽ tốt hơn về giải thuật, dữ liệu và ứng dụng

Chương trình không chỉ tập trung vào lĩnh vực chính trị mà còn có khả năng mở rộng sang các lĩnh vực khác như văn hóa, thể thao và xã hội, hoặc kết hợp nhiều lĩnh vực với nhau.

Khả năng thu thập dữ liệu sẽ được cải thiện, tạo ra nguồn dữ liệu lớn hơn cho các hệ thống từ điển phân tích tiếng Việt Điều này sẽ giúp nâng cao độ chính xác và khả năng phân tích sâu cho các chương trình liên quan trong tương lai.

Kết chương

Các số liệu trên phản ánh kết quả của quá trình thực nghiệm mô hình huấn luyện đã được phát triển Mặc dù kết quả đạt được có thể chưa hoàn toàn như kỳ vọng, nhưng đây là bước quan trọng trong việc xây dựng chương trình.

Hệ thống phân tích quan điểm trong lĩnh vực chính trị đã đạt độ chính xác khoảng 75%, đáp ứng yêu cầu phân tích từ mạng xã hội Mục tiêu chính là xây dựng một hệ thống hiệu quả để phân tích quan điểm chính trị.

Với kinh nghiệm tích lũy trong lĩnh vực Machine Learning và Deep Learning, tôi đã đề xuất các hướng phát triển để áp dụng công nghệ này vào nhiều lĩnh vực khác nhau, không chỉ giới hạn trong chính trị của chương trình.

KẾT LUẬN VÀ KIẾN NGHỊ

Qua quá trình thực hiện đề tài, tôi nhận thấy đã thu được nhiều kiến thức quý giá và có tính ứng dụng cao trong công việc hiện tại.

Mặc dù thời gian thực hiện hạn chế và dữ liệu thu thập chỉ tập trung vào lĩnh vực chính trị với khoảng 21 nghìn từ từ mạng xã hội Facebook, nhưng việc làm quen với nguyên tắc gán nhãn cho ba phân lớp dữ liệu chính trị vẫn rất quan trọng Tuy nhiên, các mẫu kết quả phân loại hiện tại vẫn còn tồn tại một số nhầm lẫn giữa các lớp.

Trung lập có thể bị mô hình nhầm lẫn thành nhãn tích cực và nhãn tiêu cực (là

0.13 và 0.16); Những mẫu lớp Tích cực vẫn có một tỉ lệ không nhỏ (0.25) bị phân lớp sai thành mẫu tiêu cực; Những mẫu lớp Tiêu cực có tỉ lệ phân lớp chính xác cao hơn (0.83) và hiệu quả hơn so với 02 lớp còn lại Nhưng kết quả của chương trình cũng nằm trong ngưỡng mong muốn Chương trình sẽ tiếp tục được bỗ sung cơ sở dữ liệu cung như nâng cấp hơn nữa các thuật toán tăng khả năng training để đạt được kết quả ngày càng tốt hơn

Đề tài đã tổng hợp các nghiên cứu liên quan, đồng thời mang đến những điểm độc đáo cho thực tiễn chương trình và ngôn ngữ tiếng Việt Với tính ứng dụng cao, chương trình sẽ được mở rộng ra nhiều lĩnh vực hơn, thu thập dữ liệu từ Facebook và các mạng xã hội khác, nhằm xây dựng một chương trình có tính ứng dụng vượt trội trong tương lai gần.

Ngày đăng: 22/07/2021, 14:55

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[6] Thor Pham Blog, Published: April 24, 2018 by Categories: Deep-learning, Tags: machine learning, python from:<https://thorpham.github.io/blog/2018/04/24/word2vec/>Các tài liệu từ internet/website Sách, tạp chí
Tiêu đề: Published: April 24, 2018 by Categories: "Deep-learning, Tags: machine learning, python from
[3] Trần Văn Tiến, Nguyễn Minh Trường (2017). Nghiên cứu kỹ thuật phân tích Cảm xúc ứng dụng vào cải tiến chất lượng đào tạo đại học, http://thuvien.uit.edu.vn/DigitalDocument/Detail?treeId=660&fileId=9266 Link
[4] Quản Thành Thơ (2017). Phân tích cảm xúc tiếng Việt trong viễn cảnh Big Data: Hướng tiếp cận Deep Learning, https://www.slideshare.net/GrokkingVN/grokking-techtalk-18a-vietnamese-sentime nt-analysis-in-a-big-data-scenario-the-deep-learning-approach Link
[5] Hung T. Vo et al (2016). Topic classification and sentiment analysis for Vietnamese Education survey system, 92 https://www.researchgate.net/publication/303786096_Topic_classification_and_sen timent_analysis_for_Vietnamese_education_survey_system Link
[1] Alexander Park et al (2015). Twitter as a Corpus for Sentiment Analysis and Opinion Mining, European Language Resources Association Khác
[2] Nguyễn Đăng Thành (2016). Phân tích cảm xúc trong giáo dục đại học qua các hông tin tiếng Việt trên web Khác

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

TÀI LIỆU LIÊN QUAN

w