おそらくExpectation-maximization algorithmを使用できます。あなたのポイントは(value, position)
です。 EMアルゴリズムで
、結果は(手で)ようなものになるだろう:あなたの例では、これは何かのようになります
この所望の出力があり、これを使用することを検討し、すべてのシナリオで実際に機能するかどうかを検討することができます。注釈は、必要なクラスタ数を事前に割り当てる必要がありますが、質問を設定しているので、問題はないと思います。
が、これは働いていた場合、私に教えてください;)
編集:
この絵を参照してください、あなたはについて語ったものです。 k-meansを使用すると、delta value
を制御する必要があります。これは、ポジションのインクリメントによって、その値は値と同じスケールになります。しかし、E-Mではこれは問題ではありません。
編集2:
[OK]を私はあなたがdelta value
を制御する必要が、正しくありませんでした。あなたが言ったように、このアルゴリズムは、その位置であれば隣人でないポイントをクラスタ化することを決定することができ、
したがって(2つのクラスタ):あなたが1または3で位置をインクリメントする場合、それは同じではありませんはるかに近いものの、その価値は近いです。 delta
の高いインクリメントでこれが起こらないことを保証する必要があります。私はあなたのシーケンスの2 *(最大 - 最小)値の増加でこれは起こらないと思います。
あなたのポイントは、(value, delta * position)
の形式になります。
提案していただきありがとうございます。 K-は私が始めたものですが、位置(デルタは1)に比べて値が小さい(私の例では0〜3)ことを確認しなければなりません。実際、k-手段は、その位置が遠いがその値が近い場合には、近傍でない点をクラスタリングすることを決定することができる。 – VeilleData
入力値と結果値には異なる値があります。第3部で –
が解決しました、感謝Santi Gil – VeilleData