コード例 #1
0
        public void Constructor_CalculateTruePositivesAndFalseNegative()
        {
            var inputs = new double[] { 1.0, 2.0, 3.0, 4.0 };

            var oftc = new ObjectFromTargetClass(inputs, ComparisonKind.GreaterThanOrEqual, 3.0);

            Assert.AreEqual(2, oftc.FalseNegatives);
            Assert.AreEqual(2, oftc.TruePositives);
        }
コード例 #2
0
        public SplitInformation(double[] inputs, double[] validateInputs, int validationInputsTotalCount, ComparisonKind comparisonKind, double splitValue, int learn)
        {
            var validationPositives = validateInputs.GetVeryfiedCount(comparisonKind, splitValue);

            ConfusionMatrix = new ObjectFromTargetClass(inputs, comparisonKind, splitValue);
            if (ConfusionMatrix.TruePositives == 0 || validationPositives == 0)
            {
                RecallValue  = 0;
                Probability  = 0;
                MeasureValue = 0;
                return;
            }

            RecallValue
                = (double)ConfusionMatrix.TruePositives / learn;
            Probability
                = (double)validationPositives / validationInputsTotalCount;
            MeasureValue
                = StatisticsCalculator.CalculateObjectiveFunction(RecallValue, Probability);
        }