轉換未見過的資料
當你從文字建立向量時,任何在訓練機器學習模型前做過的轉換,也都需要同樣套用到新的未見(測試)資料。為了達成這點,請沿用上一章的做法:只在訓練資料上擬合向量器,然後把它套用到測試資料。
在本練習中,speech_df DataFrame 已被分成兩部分:
train_speech_df:訓練集,包含前 45 篇演說。test_speech_df:測試集,包含其餘的演說。
本練習屬於課程
Feature Engineering for Machine Learning in Python
練習說明
- 建立
TfidfVectorizer實例。 - 擬合向量器並將其套用到
text_clean欄位。 - 在測試資料的
text_clean欄位上使用同一個向量器。 - 以測試集產生的這些新特徵建立一個 DataFrame。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Instantiate TfidfVectorizer
tv = ____(max_features=100, stop_words='english')
# Fit the vectroizer and transform the data
tv_transformed = ____
# Transform test data
test_tv_transformed = ____
# Create new features for the test set
test_tv_df = pd.DataFrame(test_tv_transformed.____,
columns=tv.____).add_prefix('TFIDF_')
print(test_tv_df.head())