Exemplo n.º 1
0
        private static void TimelessDenStreamTest()
        {
            var filePath   = $"{Environment.CurrentDirectory}/Data/Synthesis/DataSteamGenerator/data.synthetic.json";
            var dataStream = ContinuousDataReader.ReadSyntheticEuclidean(filePath);
            var denStream  = new TimelessDenStream <EuclideanPoint>(
                Similarity.EuclideanDistance,
                Similarity.EuclideanDistance);

            var terminate = denStream.MaintainClusterMap();

            foreach (var p in dataStream)
            {
                denStream.Add(p);
            }

            Thread.Sleep(2000);

            foreach (var p in dataStream.TakeLast(110))
            {
                denStream.Remove(p);
            }

            var clusters = denStream.Cluster();

            terminate();

            Console.WriteLine(clusters.Pretty());
            Console.WriteLine(clusters.Length);
        }
Exemplo n.º 2
0
        private static void DbScanTest()
        {
            var filePath   = $"{Environment.CurrentDirectory}/Data/Synthesis/DataSteamGenerator/data.synthetic.json";
            var dataStream = ContinuousDataReader.ReadSyntheticEuclidean(filePath);
            var denStream  = new TimelessDenStream <EuclideanPoint>(
                Similarity.EuclideanDistance,
                Similarity.EuclideanDistance);

            foreach (var p in dataStream)
            {
                denStream.Add(p);
            }



            var scClustersAll = new List <dynamic>();
            var clusters      = denStream.Cluster();
            var numClusters   = 0;

            foreach (var cluster in clusters)
            {
                var k = numClusters;
                scClustersAll.AddRange(cluster.Select(p => new { x = p.X, y = p.Y, c = k }));
                numClusters++;
            }

            File.WriteAllText(
                $"{Environment.CurrentDirectory}/Data/Synthesis/ClusterVisualization/dbscanVisu/dbscan.json",
                JsonConvert.SerializeObject(scClustersAll));
        }
Exemplo n.º 3
0
        private static void TimelessDenStreamMCTest()
        {
            var filePath   = $"{Environment.CurrentDirectory}/Data/Synthesis/DataSteamGenerator/data.synthetic.json";
            var dataStream = ContinuousDataReader.ReadSyntheticEuclidean(filePath);
            var denStream  = new TimelessDenStream <EuclideanPoint>(
                Similarity.EuclideanDistance,
                Similarity.EuclideanDistance);

            foreach (var p in dataStream)
            {
                denStream.Add(p);
            }

            denStream.Cluster();

//            foreach (var p in dataStream.TakeLast(110))
//            {
//                denStream.Remove(p);
//            }
//
//            denStream.Cluster();

            var mcs      = denStream.MicroClusters;
            var mcPoints = new List <EuclideanPoint>();

            mcs.ForEach(mc => mcPoints.AddRange(mc.Points));
            File.WriteAllText($"{Environment.CurrentDirectory}/Data/Synthesis/ClusterVisualization/mcs.json", JsonConvert.SerializeObject(mcs));
            File.WriteAllText($"{Environment.CurrentDirectory}/Data/Synthesis/ClusterVisualization/mcPoints.json", JsonConvert.SerializeObject(mcPoints));
        }
        private const bool TEST_ENV = true;  //TODO: Remove this when we push to prod, its a quick debug bool

        public ClusteringController(IHostingEnvironment env, TimelessDenStream <Streamer> denStream)
        {
            _env                 = env;
            _denStream           = denStream;
            _shrinkageClustering = new ShrinkageClustering <Streamer>(100, 100,
                                                                      Similarity.Cosine);
        }
Exemplo n.º 5
0
 public StatefulDenStream(TimelessDenStream <Streamer> denStream)
 {
     _denStream           = denStream;
     _shrinkageClustering = new ShrinkageClustering <Streamer>(100, 100,
                                                               Similarity.Cosine);
 }