4

さまざまな NLP 機能を使用して KNN 学習をしようとしています。たとえば、bag-of-words とローカル POS タグを使用したいと考えています。

それとは別に、単一の機能で類似度を計算する方法についていくつかのアイデアがあります。カウントでコサイン類似度を使用したり (bag-of-words ベクトルの場合)、POS タグにハミング距離を使用したりします。

ただし、2つを組み合わせる方法がわかりません。この地域の人々は通常、どのようにこれを行っていますか? 誰でもそれを手伝ってもらえますか?

前もって感謝します。

4

1 に答える 1

2

両方の機能の単純な線形結合を使用します。したがって、コサイン類似度と POS タグのハミング距離を使用して bag-of-words ベクトルを個別に比較し、両方の結果の平均をとります。したがって、コサイン比較とハミング距離の結果が次のランクになるとします。

rank score    cosine    Hamming
-------------------------------
1             red       blue
2             blue      yellow
3             yellow    orange
4             orange    red

次に、最終的なランキング (上位のラベルをより強調したい場合は、指数スケールなどに変更できるランキング スコアが与えられた場合) は次のようになります (スコアが低いほど良い)。

label    total score
--------------------
blue     3
red      5
yellow   5
orange   7

したがって、出力ラベルは になりますblue。この場合、線形結合はコサイン類似度出力に 50% の重みを置き、ハミング距離出力に 50% の重みを置きます。異なる重み (コサイン 70%、ハミング 30% など) でテストを実行して、両方の測定値の最適なバランスを見つけることができます。

于 2012-08-17T11:25:04.410 に答える