Tổng quan
Với sự phát triển như vũ bão của các công nghệ truyền thông và internet, việc giao tiếp trực tuyến đã trở thành điều quen thuộc diễn ra trong cuộc sống hằng ngày. Các trang web và mạng xã hội không chỉ là nơi chia sẻ thông tin, kết nối bạn bè, mà còn là nền tảng để bày tỏ ý kiến và quan điểm cá nhân. Vì vậy, việc phân tích cảm xúc trong các cuộc thảo luận trực tuyến đã và đang trở thành một yếu tố then chốt giúp các doanh nghiệp điều chỉnh chiến lược kinh doanh và xây dựng thương hiệu hiệu quả hơn.
Khóa luận tập trung vào việc xây dựng hệ thống ứng dụng Social Scope, sử dụng các kỹ thuật xử lý ngôn ngữ tự nhiên (NLP) để phân tích các nội dung được đăng trên mạng xã hội Reddit, từ đó xác định cảm xúc của người dùng đối với nhiều sản phẩm và dịch vụ khác nhau. Chúng tôi đã thiết kế một hệ thống cho phép thu thập dữ liệu từ các diễn đàn công nghệ và sản phẩm lớn trên Reddit nhằm tạo ra một cái nhìn tổng quát về xu hướng và tâm lý của người tiêu dùng.
Ngoài ra, chúng tôi cũng tích hợp MLOps (Machine Learning Operations) vào quy trình phát triển ứng dụng để giám sát và cải thiện hiệu suất của mô hình phân tích cảm xúc. MLOps giúp chúng tôi theo dõi các chỉ số hiệu suất, quản lý phiên bản mô hình, và tự động hóa quy trình triển khai, từ đó đảm bảo độ chính xác cao cho mô hình.
Đây là đề tài mang tính thực tiễn cao trong việc ứng dụng trí tuệ nhân tạo và học máy trong lĩnh vực tiếp thị số. Social Scope không chỉ cung cấp những phân tích sâu sắc về cảm xúc người dùng mà còn cho phép các nhãn hàng điều chỉnh kịp thời các chiến lược tiếp thị. Ngoài ra, việc áp dụng MLOps giúp cải thiện đáng kể độ tin cậy của hệ thống, tạo điều kiện thuận lợi cho việc tối ưu hóa mô hình theo thời gian.
Mục tiêu nghiên cứu
Phát triển ứng dụng phân tích cảm xúc
Xây dựng một ứng dụng có khả năng thu thập, tổng hợp và phân tích dữ liệu từ các diễn đàn liên quan đến các nhãn hàng cụ thể. Ứng dụng sử dụng các kỹ thuật xử lý ngôn ngữ tự nhiên (NLP) để xác định và phân loại cảm xúc của người dùng (tích cực, tiêu cực, trung tính) dựa trên nội dung bình luận. Ứng dụng sở hữu giao diện trực quan, chuyên nghiệp, giúp dễ dàng tìm kiếm và theo dõi xu hướng cảm xúc của các nhãn hàng.
Tích hợp MLOps
Thiết lập một quy trình MLOps để giám sát, quản lý và tối ưu hóa mô hình tr tuệ nhân tạo. Mục tiêu là đảm bảo rằng ứng dụng có thể tự động hóa quy trình cập nhật mô hình, theo dõi hiệu suất và cải thiện độ chính xác của mô hình.
Đánh giá hiệu suất của ứng dụng
Thực hiện các thử nghiệm và phân tích để đánh giá hiệu suất của ứng dụng trong việc phân tích cảm xúc của người dùng. Các chỉ số đánh giá sẽ bao gồm độ chính xác, độ nhạy, độ đặc hiệu và khả năng xử lý dữ liệu.
Đối tượng và phạm vi nghiên cứu
1. Đối tượng nghiên cứu
Các đối tượng nghiên cứu trong khóa luận này bao gồm:
Công nghệ học sâu và phân tích cảm xúc
- Nghiên cứu các kỹ thuật xử lý ngôn ngữ tự nhiên để phân tích cảm xúc như tokenization, lemmatization và embedding.
- Thiết kế và triển khai data pipeline để xây dựng mô hình học sâu.
- Nghiên cứu về hiện tượng lệch dữ liệu (data drift) và lệch mô hình (model drift) khiến các mô hình bị giảm độ chính xác, đặc biệt là những mô hình sử dụng dữ liệu đầu vào từ mạng xã hội.
Hệ thống MLOps
- Nghiên cứu các công cụ và nền tảng MLOps như MLflow và Evidently AI.
- Thiết kế và triển khai các quy trình tự động hóa huấn luyện, triển khai và giám sát mô hình NLP.
Hệ thống ứng dụng Social Scope
Phát triển ứng dụng giám sát thương hiệu sử dụng công nghệ phân tích cảm xúc bằng mô hình học sâu đã huấn luyện.
Triển khai hệ thống với khả năng mở rộng và chịu lỗi cao trên môi trường Kubernetes.
2. Phạm vi nghiên cứu
Phạm vi nghiên cứu của khóa luận này sẽ được giới hạn trong những khía cạnh sau:
- Phân tích cảm xúc: Các bình luận được phân loại theo 3 nhãn cảm xúc: Tích cực, tiêu cực, trung tính.
- Giải pháp kỹ thuật: Sử dụng các mô hình học máy/học sâu để phân tích cảm xúc, đồng thời áp dụng quy trình MLOps để triển khai và giám sát mô hình.
Phạm vi ứng dụng: Hệ thống được xây dựng hướng tới 2 đối tượng chính:
- Người tiêu dùng: Những người muốn tìm hiểu và tham khảo các nhãn hàng để nắm thông tin.
- Doanh nghiệp: Các tổ chức và công ty có nhu cầu theo dõi và đánh giá mức độ hài lòng của khách hàng đối với sản phẩm của chính họ, cũng như so sánh với các sản phẩm của đối thủ cạnh tranh.
Đề tài không đi sâu vào các nội dung như xử lý dữ liệu phi văn bản (hình ảnh, video), các yếu tố xã hội học trong hành vi người dùng, hay việc tích hợp hệ thống vào nền tảng thương mại điện tử cụ thể.
Thiết kế hệ thống
Kiến trúc ứng dụng

Hệ thống ứng dụng theo dõi sản phẩm bằng phân tích cảm xúc được triển khai trên môi trường Amazon EKS (Elastic Kubernetes Service) nhằm đảm bảo bảo khả năng mở rộng và quản lý tài nguyên hiệu quả.
Ứng dụng phân tích cảm xúc gồm 4 nhóm thành phần chính:
Dashboard Application
Đây là nơi người dùng tương tác và sử dụng Social Scope, gồm 2 phần:
- Front-end: Giao diện người dùng, cung cấp chức năng tìm kiếm, theo dõi xu hướng cảm xúc và gửi yêu cầu phân tích sản phẩm.
- Back-end: Đảm nhiệm việc tiếp nhận yêu cầu, xử lý dữ liệu và truy vấn dữ liệu từ cơ sở dữ liệu hoặc Redis cache. Back-end sẽ gửi yêu cầu phân tích sản phẩm cụ thể đến thành phần Sentiment Analyzer, đồng thời phản hồi kết quả cho người dùng sau khi xử lý xong.
Sentiment Analyzer
Đây là nhóm thực hiện công việc thu thập bài viết và bình luận từ Reddit, sau đó phân tích cảm xúc và lưu kết quả vào cơ sở dữ liệu. Nhóm gồm 3 thành phần:
- Data crawler: Gồm nhiều pod chạy song song, có nhiệm vụ thu thập dữ liệu từ Reddit thông qua API. Dữ liệu sau khi được crawl sẽ được đẩy vào Kafka.
- Apache Kafka: Hệ thống hàng đợi tin nhắn (message broker), lưu trữ tạm thời dữ liệu từ các crawler và truyền đến Spark để xử lý một cách không đồng bộ.
- Apache Spark: Thực hiện xử lý dữ liệu. Spark sử dụng mô hình NLP đã huấn luyện để phân tích cảm xúc các bình luận, sau đó lưu kết quả vào CSDL.
Database
Hệ thống sử dụng kết hợp giữa hai hệ quản trị dữ liệu:
- MongoDB: Lưu trữ kết quả phân tích cảm xúc, thông tin người dùng, báo cáo hiệu suất mô hình. MongoDB được triển khai thành cụm (replica set) – gồm 1 CSDL chính (primary) và 2 CSDL thứ cấp (secondary) có khả năng thay thế primary khi gặp sự cố. Dữ liệu sẽ được sao chép giữa các CSDL để đảm bảo tính sẵn có và chịu lỗi.
- Redis: Bộ nhớ đệm lưu trữ các dữ liệu được truy vấn thường xuyên để giảm thời gian phản hồi.
Monitoring
Giám sát cụm và các ứng dụng được triển khai lên cụm, gồm có:
- Prometheus: Thu thập số liệu thời gian thực từ các container/pod.
- Grafana: Trực quan hóa các chỉ số như thông lượng, độ trễ, CPU, RAM.
- Loki: Thu thập log của container/pod trong hệ thống.
Mô hình phân rã chức năng
Mô hình phân rã chức năng có nhiệm vụ chia nhỏ ứng dụng thành các thành phần đơn giản và dễ quản lý, nhờ đó giúp người xem hình dung được vai trò và nhiệm vụ của từng chức năng.




HIỆN THỰC HÓA HỆ THỐNG

Mục tiêu: Đây là giao diện đầu tiên mà người dùng nhìn thấy khi truy cập vào trang web. Trang đích (landing page) sẽ giới thiệu Social Scope và các tính năng mà ứng dụng mang lại.

Mục tiêu: Cho phép người dùng đăng nhập vào tài khoản đã tạo, hoặc chuyển hướng đến trang Đăng ký nếu chưa có tài khoản.





Kết luận
Trong khóa luận này, nhóm chúng tôi đã ứng dụng thành công nhiều công nghệ tiên tiến để xây dựng nên ứng dụng Social Scope – hệ thống giám sát thương hiệu dựa trên công nghệ phân tích cảm xúc bằng trí tuệ nhân tạo, có thể hỗ trợ người tiêu dùng và các doanh nghiệp nắm bắt ý kiến cộng đồng thông qua dữ liệu mạng xã hội. Bên cạnh đó, nhóm còn thiết kế và triển khai thành công hệ thống MLOps gồm nhiều quy trình phức tạp được tự động hóa, từ quản lý cơ sở hạ tầng, xử lý dữ liệu, đến huấn luyện mô hình và giám sát hiện tượng drift – một vấn đề nhức nhối trong lĩnh vực xử lý ngôn ngữ tự nhiên.
Trong thời gian thực hiện đề tài, nhóm chúng tôi đã có cơ hội được thực hành và làm chủ được nhiều công nghệ hiện đại như Spark NLP, MLflow và Evidently AI. Nhóm cũng tích lũy được nhiều kiến thức, kinh nghiệm về lập trình, phát triển và triển khai mô hình trí tuệ nhân tạo trong môi trường thực tế. Những khó khăn mà nhóm gặp phải cũng trở thành chất xúc tác để chúng tôi cải thiện kĩ năng giải quyết vấn đề, kĩ năng quản lý thời gian và làm việc nhóm. Đây chắc chắn sẽ là những kinh nghiệm quý giá mà mọi kĩ sư công nghệ thông tin đều cần tới.
Kết quả đạt được
Đối với hệ thống ứng dụng giám sát thương hiệu, nhóm đã phát triển hệ thống thu thập dữ liệu trực tiếp từ mạng xã hội, phân tích cảm xúc bằng công nghệ AI và hiển thị những thông tin phân tích được với giao diện thân thiện và biểu đồ trực quan. Với người dùng là doanh nghiệp, ứng dụng cung cấp thêm tính năng phân tích theo yêu cầu, cho phép họ chủ động lựa chọn sản phẩm hoặc thương hiệu để theo dõi thay vì chỉ giới hạn trong danh sách cố định. Thông qua kết quả phân tích, người tiêu dùng sẽ có thêm một nguồn tham khảo đáng tin cậy để đưa ra quyết định mua sắm thông minh hơn, còn các doanh nghiệp sẽ hiểu rõ hơn về nhu cầu khách hàng, từ đó đánh giá hiệu quả truyền thông cho sản phẩm của mình.
Hạ tầng ứng dụng được triển khai trên môi trường Kubernetes, với khả năng chịu lỗi và mở rộng, hướng tới các yêu cầu thực tế của một hệ thống hoạt động lâu dài và phục vụ lượng người dùng đồng thời lớn. Đối với hệ thống MLOps, nhóm đã thiết kế pipeline chuyên biệt để phân tích cảm xúc với Spark NLP, áp dụng các bước xử lý ngôn ngữ như tokenization, lemmatization và embedding, giúp xử lý dữ liệu văn bản chính xác hơn. Các quy trình như huấn luyện, kiểm thử, đánh giá và triển khai mô hình cũng được tự động hóa bằng Github Actions để giảm sự can thiệp thủ công và hạn chế tối đa rủi ro.
Bên cạnh đó, nhóm còn ứng dụng MLflow và Evidently AI để thiết lập hệ thống giám sát liên tục nhằm phát hiện những thay đổi trong dữ liệu đầu vào hay hiệu suất mô hình. Nhờ đó trực tiếp giải quyết vấn đề lệch dữ liệu (data drift) và lệch mô hình (model drift), 2 hiện tượng phổ biến làm giảm chất lượng các mô hình NLP.
Những hạn chế
Bên cạnh những kết quả tích cực, khóa luận của nhóm vẫn còn tồn tại một số hạn chế nhất định:
- Độ chính xác của mô hình vẫn còn chịu ảnh hưởng bởi các đặc điểm phức tạp của ngôn ngữ trên mạng xã hội, như từ viết tắt, từ lóng hay
kiểu nói mỉa mai mà mô hình chưa xử lý tốt. - Nguồn dữ liệu chưa đủ lớn về quy mô, chưa bao quát hết đầy đủ các ngữ cảnh và lĩnh vực để huấn luyện cho mô hình.
- Ứng dụng giám sát thương hiệu tuy đáp ứng được những chức năng cơ bản, nhưng vẫn cần cải tiến thêm để cung cấp nhiều tính năng chuyên nghiệp hơn đối với người dùng là doanh nghiệp.
Hướng phát triển
Nhóm chúng tôi nhận thấy vẫn còn nhiều tiềm năng để nâng cấp và mở rộng đề tài trong tương lai. Các hướng phát triển cụ thể bao gồm:
- Nâng cao chất lượng mô hình phân tích cảm xúc: Bổ sung tập dữ liệu lớn hơn, đa dạng hơn, đặc biệt là từ nhiều lĩnh vực như công nghệ, mỹ phẩm, giáo dục.
- Phát triển mô hình đa nhiệm, không chỉ phân tích cảm xúc mà còn xác định được chủ đề mà bình luận đề cập đến. Nhờ đó doanh nghiệp có thể nắm được khách hàng đang thích hoặc bất mãn với điều gì ở sản phẩm.
- Mở rộng nguồn dữ liệu đầu vào, không chỉ diễn đàn và mạng xã hội, mà còn từ các sàn thương mại điện tử, blog đánh giá, trang báo điện tử, nhờ đó gia tăng độ tổng quát của dữ liệu sản phẩm.
- Với tính năng phân tích theo yêu cầu, phát triển thêm tính năng thu thập và phân tích tự động theo định kỳ, thay vì phải kích hoạt thủ công.
- Cung cấp thêm tính năng so sánh xu hướng giữa nhiều sản phẩm, giúp các doanh nghiệp nắm được lợi thế cạnh tranh so với công ty đối thủ.


