(X, R, M)
| 18 | |
| 19 | |
| 20 | def cost(X, R, M): |
| 21 | cost = 0 |
| 22 | for k in range(len(M)): |
| 23 | # method 1 |
| 24 | # for n in range(len(X)): |
| 25 | # cost += R[n,k]*d(M[k], X[n]) |
| 26 | |
| 27 | # method 2 |
| 28 | diff = X - M[k] |
| 29 | sq_distances = (diff * diff).sum(axis=1) |
| 30 | cost += (R[:,k] * sq_distances).sum() |
| 31 | return cost |
| 32 | |
| 33 | |
| 34 | def plot_k_means(X, K, max_iter=20, beta=3.0, show_plots=False): |
no outgoing calls
no test coverage detected