1

いくつかの単語をクラスタ化しようとしています。
私のデータの一部は以下のとおりです(これは単なる例です)。

    cat dog horse ostrich 
cat  8   2.3  3.4  4.7
dog  7   8    3   2.4
horse 3.4 2.5 8  1.5
ostrich 3.4 3.2 4.4 8

数値が大きいほど、2 つの単語の類似度が高いことを意味します。このような形式のデータをもとにクラスター(例えば(猫、犬)、(馬)、(ダチョウ)の合計3つのクラスター)を作りたいと思っています。

最初に、CLUTO... を使用して、いくつかのクラスターと (非常に美しい) グラフを以下のように作成しようとしました。 ここに画像の説明を入力

しかし、私はできません... 私はすでにマニュアルを見ましたが、それほど簡単ではありません。そこで、k-means などの nltk でいくつかのクラスタリング ライブラリを使用しようとしました。しかし、上記のようなグラフを作成する方法がわかりません。(また、入力データに基づいていくつかのクラスターを作成する必要があります)

4

1 に答える 1

1

あなたが提示する画像は、階層クラスターのものです。「典型的な」クラスター分析とは異なり、データをクラスター化する 1 つの方法ではなく、考えられるすべての数のクラスターについて、可能なすべての方法を示します。階層イメージ内の任意の水平線と階層の交点を数えることで、1 つの "クラスター セット" が得られます。

K-meansアルゴリズム、OTOHは、必要な数のクラスターを提供することに依存しているため、そこから階層を生成することはできません。NLTKは、階層クラスター分析のためのツールを提供していないようです。

必要な出力を決定する前に、基本的なクラスタリングの概念を理解しておく必要があります。

于 2013-12-26T14:17:10.260 に答える