Example usage for org.apache.mahout.clustering.fuzzykmeans SoftCluster SoftCluster

List of usage examples for org.apache.mahout.clustering.fuzzykmeans SoftCluster SoftCluster

Introduction

In this page you can find the example usage for org.apache.mahout.clustering.fuzzykmeans SoftCluster SoftCluster.

Prototype

public SoftCluster(Vector center, int clusterId, DistanceMeasure measure) 

Source Link

Document

Construct a new SoftCluster with the given point as its center

Usage

From source file:DisplayFuzzyKMeans.java

License:Apache License

private static void runSequentialFuzzyKClassifier(Configuration conf, Path samples, Path output,
        DistanceMeasure measure, int numClusters, int maxIterations, float m, double threshold)
        throws IOException {
    Collection<Vector> points = Lists.newArrayList();
    for (int i = 0; i < numClusters; i++) {
        points.add(SAMPLE_DATA.get(i).get());
    }/*from w ww.j  av a2 s  . c o m*/
    List<Cluster> initialClusters = Lists.newArrayList();
    int id = 0;
    for (Vector point : points) {
        initialClusters.add(new SoftCluster(point, id++, measure));
    }
    ClusterClassifier prior = new ClusterClassifier(initialClusters,
            new FuzzyKMeansClusteringPolicy(m, threshold));
    Path priorPath = new Path(output, "classifier-0");
    prior.writeToSeqFiles(priorPath);

    ClusterIterator.iterateSeq(conf, samples, priorPath, output, maxIterations);
    loadClustersWritable(output);
}

From source file:io.github.thushear.display.DisplayFuzzyKMeans.java

License:Apache License

private static void runSequentialFuzzyKClassifier(Configuration conf, Path samples, Path output,
        DistanceMeasure measure, int numClusters, int maxIterations) throws IOException {
    Collection<Vector> points = new ArrayList<Vector>();
    for (int i = 0; i < numClusters; i++) {
        points.add(SAMPLE_DATA.get(i).get());
    }/*from  www . j  av a 2 s.  c o  m*/
    List<Cluster> initialClusters = new ArrayList<Cluster>();
    int id = 0;
    for (Vector point : points) {
        initialClusters.add(new SoftCluster(point, id++, measure));
    }
    ClusterClassifier prior = new ClusterClassifier(initialClusters);
    Path priorClassifier = new Path(output, "classifier-0");
    writeClassifier(prior, conf, priorClassifier);

    ClusteringPolicy policy = new FuzzyKMeansClusteringPolicy();
    new ClusterIterator(policy).iterate(samples, priorClassifier, output, maxIterations);
    for (int i = 1; i <= maxIterations; i++) {
        ClusterClassifier posterior = readClassifier(conf, new Path(output, "classifier-" + i));
        CLUSTERS.add(posterior.getModels());
    }
}

From source file:org.aksw.tsoru.textmining.mahout.plot.Display.java

License:Apache License

private static void runSequentialFuzzyKClassifier(Configuration conf, Path samples, Path output,
        DistanceMeasure measure, int numClusters, int maxIterations, float m, double threshold)
        throws IOException {
    Collection<Vector> points = Lists.newArrayList();
    for (int i = 0; i < numClusters; i++) {
        points.add(SAMPLE_DATA.get(i).get());
    }/*from   ww w .  j ava  2 s  .  c  o  m*/
    List<Cluster> initialClusters = Lists.newArrayList();
    int id = 0;
    for (Vector point : points) {
        initialClusters.add(new SoftCluster(point, id++, measure));
    }
    ClusterClassifier prior = new ClusterClassifier(initialClusters,
            new FuzzyKMeansClusteringPolicy(m, threshold));
    Path priorPath = new Path(output, "classifier-0");
    prior.writeToSeqFiles(priorPath);

    ClusterIterator.iterateSeq(conf, samples, priorPath, output, maxIterations);
    loadClustersWritable(output);

    prior.close();
}