頻度の重み付けを変える
これまで、DocumentTermMatrix や TermDocumentMatrix では、ドキュメント内の用語を単純にカウントしてきました。この演習では、単純な出現頻度ではなく、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[___, ___]