ここで混乱を招きたくない。各リストに値を付ける理由は、各リスト内のコンテンツをクラスタリング アルゴリズムの特徴値として使用したいからです。元のアイデアは、会社名のリストを持つ 1000 個のアイテムをそれぞれ持っているというものです。このリストの内容を値に変換したい。そのため、このアイテムの機能の 1 つとして、各リストに各値を添付したいと考えています.. ありがとう.. (これが、ベース リストを使用する理由でもあります..)
Python を使用していくつかのテキストを分析しようとしていますが、今では 1000 個のリストがあり、それぞれに会社名のリストが含まれています。例えば:
list1 = ['google', 'facebook' 'twitter', 'IBM']
list2 = ['microsoft', 'bloomberg', '1010Data']
list3 = ['google', 'microsoft', '1010Data']
これらのリストの類似性を測定したいと思います。list1
とlist2
は類似点がありませんが、list1
とlist3
、list2
と にlist3
はいくつかの類似点があります。しかし、それをどのように測定するのですか?
最初に、これらのリストのすべての単語を含む 1 つの基本ベクトルを使用することを考えました。ここで、この基本リストは次のようになります。
base_list = ['google', 'facebook', 'twitter', 'IBM', 'microsoft', 'bloomberg','1010Data']
そのベクトル値は次のとおりです。
base_vector = [1, 1, 1, 1, 1, 1, 1]
次に、これらの各リストには、単語の出現とその位置の両方に応じたベクトル値があります。(ここではbase_list
、list1
、list2
、list3
はすべてソートされています)
list1 = [1, 1, 1, 1, 0, 0, 0]
list2 = [0, 0, 0, 0, 1, 1, 1]
list3 = [1, 0, 0, 0, 1, 0, 1]
それぞれの違い (または類似点) を base_vector と比較して角度の値を取得したいと考えています。
しかし!大きな問題になる可能性があります
list1 = [1, 1, 1, 0, 0, 0]
list2 = [0, 0, 0, 1, 1, 1]
次に、基本ベクトルとの角度値は同じです!
そして提案?リスト内のコンテンツの類似性を測定する方法について教えてください。つまり、このベクトル メソッドを使用する必要はありません。ブロックされただけです。
ありがとう!