Túi từ (Bag-of-words)

Phân tích cảm xúc với Python

Violeta Misheva

Data Scientist

Bag-of-words (BOW) là gì?

 

  • Mô tả tần suất xuất hiện của từ trong một tài liệu hoặc tập tài liệu (corpus)

  • Xây dựng từ vựng và đo lường mức độ xuất hiện của chúng

Phân tích cảm xúc với Python

Đánh giá sản phẩm Amazon

10 hàng đầu của tập dữ liệu đánh giá sản phẩm Amazon

Phân tích cảm xúc với Python

Phân tích cảm xúc với BOW: Ví dụ

Đây là cuốn sách hay nhất. Tôi rất thích và cực kỳ khuyến nghị!!!

{'This': 1, 'is': 1, 'the': 2 , 'best': 1 , 'book': 2, 
'ever': 1, 'I':1 , 'loved':1 , 'and': 1  , 'highly': 1,
'recommend': 1 , 'it': 1 }
  • Mất trật tự từ và ngữ pháp!
Phân tích cảm xúc với Python

Kết quả cuối của BOW

  • Đầu ra sẽ trông như sau:

5 hàng đầu của tập dữ liệu, hiển thị đầu ra của cách tiếp cận BOW

Phân tích cảm xúc với Python

Hàm CountVectorizer

import pandas as pd
from sklearn.feature_extraction.text import CountVectorizer
vect = CountVectorizer(max_features=1000) 
vect.fit(data.review)
X = vect.transform(data.review)
Phân tích cảm xúc với Python

Đầu ra CountVectorizer

X
<10000x1000 sparse matrix of type '<class 'numpy.int64'>' 
  with 406668 stored elements in Compressed Sparse Row format>

Phân tích cảm xúc với Python

Biến đổi từ bộ vector hóa

# Chuyển thành mảng
my_array = X.toarray()
# Chuyển lại thành DataFrame, gán tên cột
X_df = pd.DataFrame(my_array, columns=vect.get_feature_names())
Phân tích cảm xúc với Python

Ayo berlatih!

Phân tích cảm xúc với Python

Preparing Video For Download...