1

同じ初期設定で同じデータセットにK-means法とシーケンシャルK-means法を適用した場合、同じ結果が得られますか?理由を説明してください。

個人的には答えはノーだと思います。シーケンシャルK-meansによって得られる結果は、データポイントの表示順序によって異なります。そして、終了条件は同じではありません。

ここに、2つのクラスタリングアルゴリズムの擬似コードを添付します。

K-means

Make initial guesses for the means m1, m2, ..., mk
Until there is no change in any mean
    Assign each data point to the cluster whose mean is the nearest.
    Calculate the mean of each cluster.
    For i from 1 to k
        Replace mi with the mean of all examples for cluster i.
    end_for
end_until

シーケンシャルK-means

Make initial guesses for the means m1, m2, ..., mk
Set the counts n1, n2, ..., nk to zero
Until interrupted
    Acquire the next example, x
    If mi is closest to x
        Increment ni
        Replace mi by mi + (1/ni)*(x - mi)
    end_if
end_until
4

1 に答える 1

6

正解です。結果が異なる場合があります。

ポイント:x1 =(0,0)、x2 =(1,1)、x3 =(0.75,0)、x4 =(0.25,1); m1 =(0,0.5)、m2 =(1,0.5)。K-meansは、x1とx4をm1-クラスターに割り当て、x2とx3をm2-クラスターに割り当てます。新しい平均はm1'=(0.125,0.5)およびm2' =(0.875,0.5)であり、再割り当ては行われません。シーケンシャルK-meansでは、x1が割り当てられた後、m1は(0,0)に移動し、x2はm2を(1,1)に移動します。次に、m1はx3に最も近い平均であるため、m1は(0.375,0)に移動します。最後に、m2はx4に最も近いため、m2は(0.625,1)に移動します。これも安定した構成です。

于 2011-12-02T03:33:10.340 に答える