Tfidf และ BOW บนข้อมูลชุดเดียวกัน
ในแบบฝึกหัดนี้ จะได้แปลงคอลัมน์ review ของสินค้า Amazon ใน reviews โดยใช้ทั้ง bag-of-words และ tfidf
สร้างตัวแปลงเวกเตอร์ทั้งสอง โดยกำหนดเฉพาะจำนวนฟีเจอร์สูงสุดให้เท่ากับ 100 จากนั้นสร้าง DataFrame จากผลลัพธ์ที่ได้ และแสดง 5 แถวแรกของแต่ละ DataFrame
ควรระมัดระวังในการกำหนดจำนวนฟีเจอร์สูงสุด เนื่องจากขนาด vocabulary ที่ใหญ่เกินไปอาจทำให้ session ถูกตัดการเชื่อมต่อได้
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Sentiment Analysis ด้วย Python
คำแนะนำการฝึกหัด
- นำเข้าตัวแปลงเวกเตอร์แบบ BOW และ Tfidf
- สร้างและ fit ตัวแปลงเวกเตอร์แบบ BOW และ Tfidf จากคอลัมน์
reviewพร้อมจำกัดจำนวนฟีเจอร์ที่สร้างไว้ที่ 100 - สร้าง DataFrame จากผลลัพธ์ที่แปลงเป็นเวกเตอร์แล้ว
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import the required packages
____
# Build a BOW and tfidf vectorizers from the review column and with max of 100 features
vect1 = ____(____=100).____(____.____)
vect2 = ____(____=100).____(____.____)
# Transform the vectorizers
X1 = vect1.transform(reviews.review)
X2 = vect2.transform(reviews.review)
# Create DataFrames from the vectorizers
X_df1 = pd.DataFrame(X1.____, columns=____.____)
X_df2 = pd.DataFrame(X2.____, columns=____.____)
print('Top 5 rows using BOW: \n', X_df1.head())
print('Top 5 rows using tfidf: \n', X_df2.head())