QuangDiy / ABSA

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Aspect-Based Sentiment Analysis for Hotels

Introduction

Phân tích tình cảm dựa trên khía cạnh (Aspect-Based Sentiment Analysis - ABSA) là một kỹ thuật phân tích dữ liệu văn bản theo khía cạnh và xác định tình cảm cho từng khía cạnh. Phân tích tình cảm dựa trên khía cạnh có thể được sử dụng để phân tích phản hồi của khách hàng với các khía cạnh khác nhau của sản phẩm hoặc dịch vụ.

Chi tiết các khía cạnh về khách sạn.

Dataset

Bộ dữ liệu được xây dựng với quy trình nghiêm ngặt nhằm tạo ra một bộ dữ liệu chất lượng cao để tiến hành phân tích tình cảm dựa trên khía cạnh, với hơn 8,000 bình luận được thu thập từ nền tảng đặt phòng traveloka cùng với hơn 36,000 khía cạnh được xác định. Được chúng tôi chia ngẫu nhiên thành các tập Train, Dev, Test theo tỉ lệ 6:2:2. Quy trình xây dựng dữ liệu được mô tả như hình dưới.

  • Data tidy/Full_data.json: Chứa toàn bộ data trước khi được chia thành 3 file train, dev, test dưới dạng csv.
    • Data tidy/train.csv
    • Data tidy/dev.csv
    • Data tidy/test.csv

Thống kê các khía cạnh phổ biến nhất

Thống kê các khía cạnh ít xuất hiện nhất

Training and Evaluation

  • Src: Chứa toàn bộ các thử nghiệm.
  • Result data & eval/SAEvaluate.java: Dùng để tính F1-Score, Pre., Recall.

Results

Method Hotel
Precision Recall F1-score
LR + Tfidf 59.53 72.74 65.47
Multi NB + Tfidf 76.54 33.38 46.48
LinearSVC + Tfidf 76.41 38.07 50.82
LR + CV 71.54 66.67 69.02
Multi NB + Cv 54.26 54.75 54.50
LinearSVC + Cv 76.95 64.13 69.96
LSTM + fastText 76.98 65.31 70.67
Bi-LSTM + fastText 75.20 67.61 71.21

About


Languages

Language:Jupyter Notebook 95.1%Language:Java 4.9%