始める無料で始める

頻度の重み付けを変える

これまで、DocumentTermMatrixTermDocumentMatrix では、ドキュメント内の用語を単純にカウントしてきました。この演習では、単純な出現頻度ではなく、TfIdf の重み付けについて学びます。TfIdf は「term frequency-inverse document frequency(用語頻度–逆文書頻度)」の略で、語彙の多様性が限られた大きなコーパスに対して用いられます。

TfIdf は用語をカウント(すなわち Tf)し、文書長で正規化したうえで、その語が多くの文書に現れるほど値にペナルティを課します。これは直感的です。一般的に出現する語は重要かもしれませんが、洞察にはつながりにくいからです。このペナルティの側面を表すのが逆文書頻度(すなわち Idf)です。

たとえば、カスタマーサービスのメモでは「customer」を「cu」と略しているかもしれません。あるメモには「the cu has a damaged package」、別のメモには「cu called with question about delivery」と書かれているとします。文書頻度の重み付けでは「cu」は2回出現するため有益だとみなされます。しかし TfIdf では、「cu」はすべての文書に現れるためペナルティを受けます。その結果、「cu」は新規性がないと判断され、値は 0 に近づき、他の語が分析でより高い値を取れるようになります。

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

Rで学ぶBag-of-Wordsによるテキストマイニング

コースを見る

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

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

# Create a TDM
tdm <- ___

# Convert it to a matrix
tdm_m <- ___

# Examine part of the matrix
tdm_m[___, ___]
コードを編集して実行