.


:




:

































 

 

 

 


Cluster




Cluster (. 7) , , .

. 7. Cluster

1. static int [] Cluster(double [][] rawData, int numClusters,

2. int numAttributes, int maxCount)

3. {

4. bool changed = true;

5. int ct = 0;

6. int numTuples = rawData.Length;

7. int [] clustering = InitClustering(numTuples, numClusters, 0);

8. double [][] means = Allocate(numClusters, numAttributes);

9. double [][] centroids = Allocate(numClusters, numAttributes);

10. UpdateMeans(rawData, clustering, means);

11. UpdateCentroids(rawData, clustering, means, centroids);

12. while (changed == true && ct < maxCount)

13. {

14. ++ct;

15. changed = Assign(rawData, clustering, centroids);

16. UpdateMeans(rawData, clustering, means);

17. UpdateCentroids(rawData, clustering, means, centroids);

18. }

19. return clustering;

20. }

while , , . , . means , , , Cluster, UpdateMeans UpdateCentroids.

InitClustering clustering:

1. static int [] InitClustering(int numTuples,

2. int numClusters, int randomSeed)

3. {

4. Random random = new Random(randomSeed);

5. int [] clustering = new int [numTuples];

6. for (int i = 0; i < numClusters; ++i)

7. clustering[i] = i;

8. for (int i = numClusters; i < clustering.Length; ++i)

9. clustering[i] = random.Next(0, numClusters);

10. return clustering;

11. }

InitClustering 0 numClusters1 0 numClusters1 , . .

, k-, , , , . , k-, , .





:


: 2015-10-01; !; : 487 |


:

:

, , 1:10
==> ...

1502 - | 1447 -


© 2015-2024 lektsii.org - -

: 0.013 .