コード例 #1
0
def template_clustering(path_sample,
                        eps,
                        minpts,
                        amount_clusters=None,
                        visualize=True,
                        ccore=False):
    sample = read_sample(path_sample)

    optics_instance = optics(sample, eps, minpts, amount_clusters, ccore)
    (ticks, _) = timedcall(optics_instance.process)

    print("Sample: ", path_sample, "\t\tExecution time: ", ticks, "\n")

    if (visualize is True):
        clusters = optics_instance.get_clusters()
        noise = optics_instance.get_noise()

        visualizer = cluster_visualizer()
        visualizer.append_clusters(clusters, sample)
        visualizer.append_cluster(noise, sample, marker='x')
        visualizer.show()

        ordering = optics_instance.get_ordering()
        analyser = ordering_analyser(ordering)

        ordering_visualizer.show_ordering_diagram(analyser, amount_clusters)
コード例 #2
0
 def testClusteringOrderVisualizer(self):
     sample = read_sample(SIMPLE_SAMPLES.SAMPLE_SIMPLE4);
     
     optics_instance = optics(sample, 6.0, 3, 5);
     optics_instance.process();
     
     analyser = ordering_analyser(optics_instance.get_ordering());
     ordering_visualizer.show_ordering_diagram(analyser);
コード例 #3
0
ファイル: ut_optics.py プロジェクト: annoviko/pyclustering
 def testClusteringOrderVisualizer(self):
     sample = read_sample(SIMPLE_SAMPLES.SAMPLE_SIMPLE4);
        
     optics_instance = optics(sample, 6.0, 3, 5);
     optics_instance.process();
        
     analyser = ordering_analyser(optics_instance.get_ordering());
     ordering_visualizer.show_ordering_diagram(analyser, 5);
コード例 #4
0
def main():
    output_dir = 'plots_OPTICS'
    if not os.path.exists(output_dir): os.makedirs(output_dir)

    # OPTICS demo with SDRs
    radius = 10.0
    neighbors = 2
    epsilon_cutoff = 0.3
    file_path = os.path.join(
        os.getcwd(), 'htm_traces', 'binary_ampl=10.0_mean=0.0_noise=0.0_'
        'sp=True_tm=True_tp=False_SDRClassifier.csv')
    sdrs, cluster_ids = load_sdrs(file_path)
    (cluster_assignments,
     sdr_slices) = find_cluster_assignments(sdrs,
                                            cluster_ids,
                                            ignore_noise=True)
    sdr_cluster_centroids = get_sdr_cluster_centroids(sdr_slices)

    # Project SDRs in 2D for visualization purposes
    distance_mat = distance_matrix(sdr_cluster_centroids, euclidian_distance)
    sdr_projections = project_in_2D(distance_mat, method='mds')

    # OPTICS SDR results
    sample_sdr = sdr_projections  # or: sdr_cluster_centroids
    ordering_sdr, clusters_sdr, noise_sdr = analyze(sample_sdr, radius,
                                                    neighbors)

    # Plot OPTICS results
    sample_sdr = sdr_projections
    plot_results(sample_sdr, ordering_sdr, clusters_sdr, noise_sdr, 'SDR',
                 epsilon_cutoff, output_dir)

    # Plot SDR 2D projections
    title = '2d_projections'
    output_file = os.path.join(output_dir, '%s' % ('%s.png' % title))
    plt = plot_2D_projections(title, output_file, cluster_assignments,
                              sdr_projections)
    plt.show()

    # OPTICS demo with 2D vectors
    radius = 2.0
    neighbors = 2
    epsilon_cutoff = 0.5
    sample_2d = read_sample(
        FCPS_SAMPLES.SAMPLE_LSUN)  # or: gaussian_clusters(3)
    ordering_2d, clusters_2d, noise_2d = analyze(sample_2d, radius, neighbors)
    plot_results(sample_2d, ordering_2d, clusters_2d, noise_2d, '2D',
                 epsilon_cutoff, output_dir)

    # Plot input data and clustering structure
    ordering_visualizer.show_ordering_diagram(ordering_sdr)
    ordering_visualizer.show_ordering_diagram(ordering_2d)
コード例 #5
0
ファイル: optics.py プロジェクト: marionleborgne/optics-demo
def main():
    # OPTICS demo with 2D vectors
    radius = 2.0
    neighbors = 2
    epsilon_cutoff = 0.5
    sample_2d = read_sample(
        FCPS_SAMPLES.SAMPLE_LSUN)  # or: gaussian_clusters(3)
    ordering_2d, clusters_2d, noise_2d = analyze(sample_2d, radius, neighbors)
    plot_results(sample_2d, ordering_2d, clusters_2d, noise_2d, '2D',
                 epsilon_cutoff)

    # Plot input data and clustering structure
    ordering_visualizer.show_ordering_diagram(ordering_2d)
コード例 #6
0
ファイル: demo_optics.py プロジェクト: dubing12/htmresearch
def main():
  output_dir = 'plots_OPTICS'
  if not os.path.exists(output_dir): os.makedirs(output_dir)

  # OPTICS demo with SDRs
  radius = 10.0
  neighbors = 2
  epsilon_cutoff = 0.3
  file_path = os.path.join(os.getcwd(), 'htm_traces',
                           'binary_ampl=10.0_mean=0.0_noise=0.0_'
                           'sp=True_tm=True_tp=False_SDRClassifier.csv')
  sdrs, cluster_ids = load_sdrs(file_path)
  (cluster_assignments,
   sdr_slices) = find_cluster_assignments(sdrs, cluster_ids, ignore_noise=True)
  sdr_cluster_centroids = get_sdr_cluster_centroids(sdr_slices)

  # Project SDRs in 2D for visualization purposes 
  distance_mat = distance_matrix(sdr_cluster_centroids, euclidian_distance)
  sdr_projections = project_in_2D(distance_mat, method='mds')

  # OPTICS SDR results  
  sample_sdr = sdr_projections  # or: sdr_cluster_centroids
  ordering_sdr, clusters_sdr, noise_sdr = analyze(sample_sdr,
                                                  radius,
                                                  neighbors)

  # Plot OPTICS results
  sample_sdr = sdr_projections
  plot_results(sample_sdr, ordering_sdr, clusters_sdr, noise_sdr,
               'SDR', epsilon_cutoff, output_dir)

  # Plot SDR 2D projections
  title = '2d_projections'
  output_file = os.path.join(output_dir, '%s' % ('%s.png' % title))
  plt = plot_2D_projections(title, output_file, cluster_assignments,
                            sdr_projections)
  plt.show()

  # OPTICS demo with 2D vectors
  radius = 2.0
  neighbors = 2
  epsilon_cutoff = 0.5
  sample_2d = read_sample(FCPS_SAMPLES.SAMPLE_LSUN)  # or: gaussian_clusters(3)
  ordering_2d, clusters_2d, noise_2d = analyze(sample_2d, radius, neighbors)
  plot_results(sample_2d, ordering_2d, clusters_2d, noise_2d, '2D',
               epsilon_cutoff, output_dir)

  # Plot input data and clustering structure
  ordering_visualizer.show_ordering_diagram(ordering_sdr)
  ordering_visualizer.show_ordering_diagram(ordering_2d)
コード例 #7
0
    def optics_temp(self, point_list):
        # data = np.array( point_list)
        sample = point_list
        start = time.time()
        optics_instance = optics(sample, 0.5, 6, ccore=True)
        optics_instance.process()
        clusters = optics_instance.get_clusters()
        end = time.time()
        print("imte", end - start)

        noise = optics_instance.get_noise()
        visualizer = cluster_visualizer()
        visualizer.append_clusters(clusters, sample)
        visualizer.append_cluster(noise, sample, marker='x')
        visualizer.show()
        ordering = optics_instance.get_ordering()
        analyser = ordering_analyser(ordering)
        ordering_visualizer.show_ordering_diagram(analyser, amount_clusters)