Exemplo n.º 1
0
        public void TestDiffBasicVSOptimized()
        {
            for (int i = 0; i < 1000; i++)
            {
                var x               = Randoms.WellBalanced.Next(10000);
                var n               = Randoms.WellBalanced.Next(10000);
                var resultBasic     = RisingFactorialBI(x, n);
                var resultOptimized = TBSampler.RisingFactorialBIOptimized(x, 0, n - 1);

                Assert.AreEqual(resultBasic, resultOptimized);
            }
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            Config config = TryExtractConfig(args);

            if (config == null)
            {
                return;
            }

            var saveModel = !string.IsNullOrEmpty(config.Paths.OutModel);

            // Create Labeled Trees
            // Perform Needed transformations
            var labeledTrees = CreateLabeledTrees(config.Paths.InData, config.Paths.OutModel);

            // Calculate and save PCFG to file
            var pCFGComposer = new LabeledTreePCFGComposer(labeledTrees.ToList(), config);

            pCFGComposer.CalculateProbabilities();


            ToCSWriter writer = new ToCSWriter(config.Paths.OutIdioms);

            var sampler = new TBSampler(writer, config);

            sampler.Initialize(pCFGComposer, labeledTrees);
            sampler.Train();

            if (saveModel)
            {
                foreach (var tree in sampler.Trees)
                {
                    tree.Serialize();
                }
            }
            Console.ReadKey();
        }