私のプログラムでは、クラスタリングを使用して類似アイテムのサブセットを生成し、クラスターの類似度を判断する方法としてコサイン類似度を使用しています。たとえば、ユーザー1に3つのクラスターがあり、ユーザー2に3つのクラスターがある場合、すべてのクラスターが相互に比較されます。コサイン類似度を使用した9つの結果が生成されます。たとえば、[0.3、0.1、0.4、0.12、0.0、0.6、0.8、 1.0、0.22]
私の問題は、これらの結果に基づいて、これらの値を具体的な結果に変換して、これら2人のユーザーがどれほど類似しているかを示すにはどうすればよいかということです。
私が作成した簡単な方法は、すべての値を比較の数で割り、それらを合計して1つの値を取得することでしたが、これは非常に単純なアプローチです。
ありがとう、
なので
私が達成しようとしていることの基本的な説明は、ソーシャルブックマークWebサービスDelicious.comから、ブックマークとタグから、2人のユーザーがどれほど似ているかを判断できるかどうかです。
これまで、ユーザーのブックマークのタグと各タグの共起からクラスターを作成しました。たとえば、1つのクラスターは次のようになります。
fruit: (apple, 15), (orange, 9), (kiwi, 2)
また、別のユーザーが、タグから作成された同様のクラスターを持っている場合があります。
fruit: (apple, 12), (strawberry, 7), (orange, 3)
この数字は、保存されたブックマークで、この例では「fruit」というタグとタグが共起した回数を表します。
コサイン類似度を使用してこれらのクラスターを比較し、それらがどの程度類似しているかを判断しました。最初の質問から、多くのクラスター比較結果(すべてのユーザークラスターを別のユーザークラスターと比較)を使用して、結果を集計して意味のある結果。
コサイン類似性を不適切に使用している可能性が非常に高いですが、