始める無料で始める

はじめてのBOW

bag-of-words は、テキストを数値に変換する手法です。

この演習では、次の演習でより大きなデータセットに進む前に、annak リストに BOW を適用します。

このリストを使って CountVectorizer() により BOW を作成します。この変換は、テキストの感情を理解するための最初の一歩です。強い感情を帯びる可能性のある単語に注目してください。

CountVectorizer() の出力はゼロでない要素だけを保存する疎行列です。行列の実際の中身を確認するには、.toarray() メソッドで密な配列に変換します。

今回のテキストは短いので、max_features 引数を指定する必要はありません。

この演習はコースの一部です

Pythonで学ぶSentiment Analysis

コースを見る

演習の手順

  • sklearn.feature_extraction.text から count vectorizer の関数をインポートします。
  • 小さなデータセットに対してベクタイザーを作成してフィットします。
  • transform() メソッドを呼び出して、anna_bow という名前の BOW 表現を作成します。
  • BOW の結果を密な配列として出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import the required function
____

annak = ['Happy families are all alike;', 'every unhappy family is unhappy in its own way']

# Build the vectorizer and fit it
anna_vect = ____
____.____(annak)

# Create the bow representation
anna_bow = anna_vect.____(annak)

# Print the bag-of-words result 
print(anna_bow.toarray())
コードを編集して実行