問題タブ [hierarchical-clustering]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cluster-analysis - クラスターの数を決定するためのspssの階層的クラスタリング出力?
SPSS で 100 レコードのデータセットに階層 (凝集) クラスタリングを適用しました。ルールは、「距離係数がより大きなジャンブを作る場所で、そのポイントがクラスターの数を決定する」と述べています。
式: ケースの数 - エルボのステップ = クラスターの数 このチュートリアル ' http://www.mvsolution.com/wp-content/uploads/SPSS-Tutorial-Cluster-Analysis.pdf ' に従っています。問題は、私の出力では距離係数に大きなジャンブがないことです。次に、これからkの値をどのように決定できますか?
距離係数の変化を計算すると、次のようになります。
640-609=31
671-640=31
711-671=40
755-711=44
800-755=45
846-800=46
900-846=54
962-900=62
1025-962=63
1091-1025=66
1160-1091=69
1233-1160=73
1305-1233=72
1379-1305=74
1460-1379=81
1543-1460=83
1630-1543=87
1728-1630=98
kmeans を適用するには、k の値が必要です。
cluster-analysis - カスタム オブジェクトで ELKI を使用し、結果を理解する
プログラムで ELKI の階層的クラスタリングの SLINK 実装を使用しようとしています。
クラスター化する必要がある (自分のタイプの) オブジェクトのセットがあります。そのために、クラスタリングの前にそれらを特徴ベクトルに変換します。
これは、現在実行して結果を生成する方法です(コードはScalaにあります):
これで、結果はClustering
type の要素を含む になりますModel
。それらを出力することはできますが、特にパラメータ化できないと思われるSLINK
タイプのモデルを返すため、この結果を理解する方法がわかりません。DendrogramModel
featureVectors
具体的には、結果を元の要素 (以前に変数を作成した元の要素) にリンクするにはどうすればよいですか?
結果から取得するアルゴリズムの初期化と実行を通じて、ある種のカスタム モデルを作成するか、何らかの方法で元の要素へのリンクを維持する必要があると思います。ただし、これをどこから始めればよいかわかりません。
ELKI を独自のプログラムに埋め込むことはお勧めできません。ただし、他の方法で ELKI を呼び出す場合も同じようです。プログラムの実行時に、クラスター化して結果をオブジェクトにマップする必要があります。
python - Pythonによるテキストのクラスタリング
類似性とクラスタリング テキストで少し遊ぶことにしました。
類似性の tf-idf と symmatrix マトリックスを既に作成しています。ここで、グループにクラスタリングするための何かを実装したいと考えています。
私は調査を行い、hcluster および k-means ライブラリを見つけました。
精度の点でどちらが優れていますか? 準備が整ったライブラリがなくても、もっと良い方法を知っていますか? アルゴリズムを知っていれば、コードを書くことができました。
また、この方法は O(n^2) です。計算時間に勝つために少し精度を犠牲にしたい場合は、何か提案はありますか?
r - Rのヒートマップ/クラスタリングのデフォルトの違い(ヒートプロットとヒートマップ.2)?
R のデンドログラムを使用してヒートマップを作成する 2 つの方法を比較しています。1 つは で、made4
もうheatplot
1 つはgplots
ofheatmap.2
です。適切な結果は分析によって異なりますが、デフォルトが非常に異なる理由と、両方の関数が同じ結果 (または非常に類似した結果) を与える方法を理解しようとしています。これに。
これはデータとパッケージの例です:
heatmap.2 を使用してデータをクラスター化すると、次のようになります。
を使用すると、次のようになりheatplot
ます。
最初は非常に異なる結果とスケーリング。heatplot
この場合、結果はより合理的に見えるので、使用したい他の利点/機能があり、不足している成分を理解したいのでheatmap.2
、同じことを行うためにどのパラメーターにフィードするかを理解したいと思います.heatmap.2
heatplot
相関距離との平均リンケージを使用するため、同様のクラスタリングが使用されるようにフィードできます( https://stat.ethz.ch/pipermail/bioconductor/2010-August/034757.htmlheatmap.2
に基づく) 。
その結果:
これにより、行側のデンドログラムはより似たものになりますが、列は依然として異なり、スケールも異なります。デフォルトでは列をheatplot
スケーリングheatmap.2
しないように見えます。行スケーリングを heatmap.2 に追加すると、次のようになります。
これはまだ同一ではありませんが、より近いものです。heatplot
で の結果を再現するにはどうすればよいheatmap.2
ですか? 違いは何ですか?
edit2 : 主な違いはheatplot
、次を使用して、行と列の両方でデータを再スケーリングすることです。
これは、への呼び出しにインポートしようとしているものですheatmap.2
。私が気に入っている理由は、低い値と高い値の間のコントラストが大きくなるためです。一方、に渡すだけzlim
でheatmap.2
は無視されます。列に沿ったクラスタリングを維持しながら、この「デュアルスケーリング」を使用するにはどうすればよいですか? 私が望むのは、あなたが得るコントラストの増加だけです:
heatplot(..., dualScale=TRUE, scale="none")
得られる低コントラストと比較して:
heatplot(..., dualScale=FALSE, scale="row")
これに関するアイデアはありますか?
d3.js - D3 の階層的クラスタリングからのデンドログラム
私はD3を初めて使用するので、これが非常に基本的な質問である場合は申し訳ありません. 階層的クラスタリング アルゴリズムの結果を示すデンドログラムを実装したいと考えています。このレイアウトは、私が見つけた例とは大きな点で異なります。ツリーの葉を除いて、ノードにはアイデンティティがなく、類似性に関連する特定の高さでサブツリーを結合するだけです。
例として、次を見てください。
http://r.789695.n4.nabble.com/file/n2293207/Dendrogram.jpeg
http://bl.ocks.org/mbostock/4063570と比較すると、このデンドログラムには「n-partite nature」(ノードのレベルごとに定義されたレイヤー) がありません。
したがって、問題は、サブツリーの任意の結合位置を持つデンドログラムをどのように定義するかです。
ありがとう
トーマス
編集:
予想していたほど難しくはなかったようで、新しいレイアウトの開発も必要ありませんでした。私の入力データには、結合の計算された高さを持つ追加のパラメーターが含まれていました。json ファイルの例は次のようになります。
次に、ノード オブジェクトを計算するときに、マップを使用して y 値を変換します。
ここで、cluster はクラスター レイアウト オブジェクトで、scale は樹形図の高さに適したスケールです。
matlab - matlab の cell 配列のデンドログラム
このデータのデンドログラムが欲しい:
1列目から5列目
6 列目から 7 列目
私はmatlabでコードを使用します:
しかし、それはこのエラーを与えます:
リンケージの使用エラー (137 行目)
最初の入力は、そのサイズが PDIST 関数の出力と互換性がないため、距離行列ではないようです。データ行列入力には複数の行が必要です。
何が問題
で、出力を間隔にしたいのですが、デンドログラムの出力間隔ですか?