使用成员概率的一组质心的成本函数

Cost function for a set of centroids using membership probabilities

我正在做这个练习,我需要使用 MATLAB 的 fminunc 函数来聚类数据点。

我已经有了计算成员概率的实现

所以我需要编写一个 objective 函数,我将调用 calculatemembershipProbs(data, X) 函数,其中数据包含所有数据点,X 是包含质心的变量。

问题是:我该怎么做?或者我应该在 objective 函数中使用哪个公式?

是否已经为您提供了质心? 如果不是,您应该如何获得质心,您是否尝试过使用 k-means? 在 MatLab 中,k-means 可以用作 [idx, C] = kmeans(X, k) 在这种情况下 C 是一个包含您需要的所有质心的向量。

我知道怎么做了。

我需要使用的公式是:

所以我在我的 objective 函数中使用了它,然后我调用了

obj=@(X)ObjFunction(X, data);
[XX, fval] = fminunc(obj, X, opts);

它给我的结果与 k-means 相同!