テキスト分類の問題を考えてみましょう。したがって、ドキュメントが Bag of words として表される場合、n 次元の特徴が得られます。ここで、n はドキュメント内の単語数です。ここで、ドキュメントの長さも feature として使用することにした場合、この機能だけの次元 ( length ) は 1 になります。では、両方の機能 (長さと言葉の袋) を組み合わせて使用するにはどうすればよいでしょうか。機能を 2 次元 (n 次元ベクトル (BOW) および 1 次元機能 (長さ) と見なす必要があります。これが機能しない場合、機能を組み合わせるにはどうすればよいですか。これに関するポインタも役立ちますか?
1 に答える
このステートメントは少しあいまいです。「したがって、ドキュメントが Bag of words として表される場合、n 次元の特徴が得られます。ここで、ドキュメント内の単語数は n です。」
私の解釈では、コーパスに出現する各単語 (おそらく関心のある辞書に限定されている) ごとに列があり、各ドキュメントについてその単語の出現回数を数えているということです。列の数は、ドキュメントのいずれかに表示される辞書内の単語の数と等しくなりました。また、ドキュメント内の単語数のカウントである「長さ」機能もあり、それを分析に組み込む方法を知りたいと考えています。
簡単な方法は、単語の出現回数をドキュメント内の単語の総数で割ることです。
これには、ドキュメントのサイズに基づいて単語の出現をスケーリングする効果があり、新しい機能は「用語頻度」と呼ばれます。次の自然なステップは、用語の頻度に重みを付けて、コーパスでより一般的な (したがって重要度の低い) 用語を補うことです。あまり一般的でない用語に高い重みを与えるため、これは「逆ドキュメント頻度」と呼ばれ、プロセス全体は「用語頻度×逆ドキュメント頻度」、または tf-idf と呼ばれます。詳細については、これを Google で検索できます。
別の方法で単語カウントを行っている可能性があります。たとえば、(各ドキュメントではなく) 各段落での単語の出現数をカウントするなどです。その場合、ドキュメントごとに各段落の単語数があり、典型的なアプローチは、特異値分解などのプロセスを使用してこれらの段落数をマージすることです。