示例#1
0
        public void MulticlassMetricsNonPerfectTest()
        {
            var metrics = MetricsUtil.CreateMulticlassClassificationMetrics(0.1, 0.2, 0.3, 0.4, 0, new double[] { 0.5 }, new double[] { });

            Assert.False(IsPerfectModel(metrics, MulticlassClassificationMetric.MacroAccuracy));
            Assert.False(IsPerfectModel(metrics, MulticlassClassificationMetric.MicroAccuracy));
            Assert.False(IsPerfectModel(metrics, MulticlassClassificationMetric.LogLoss));
            Assert.False(IsPerfectModel(metrics, MulticlassClassificationMetric.LogLossReduction));
            Assert.False(IsPerfectModel(metrics, MulticlassClassificationMetric.TopKAccuracy));
        }
示例#2
0
        public void MulticlassMetricsPerfectTest()
        {
            var metrics = MetricsUtil.CreateMulticlassClassificationMetrics(1, 1, 0, 1, 0, new double[] { 1 }, new double[] { });

            Assert.True(IsPerfectModel(metrics, MulticlassClassificationMetric.MicroAccuracy));
            Assert.True(IsPerfectModel(metrics, MulticlassClassificationMetric.MacroAccuracy));
            Assert.True(IsPerfectModel(metrics, MulticlassClassificationMetric.LogLoss));
            Assert.True(IsPerfectModel(metrics, MulticlassClassificationMetric.LogLossReduction));
            Assert.True(IsPerfectModel(metrics, MulticlassClassificationMetric.TopKAccuracy));
        }
示例#3
0
        public void MulticlassMetricsGetScoreTest()
        {
            var metrics = MetricsUtil.CreateMulticlassClassificationMetrics(0.1, 0.2, 0.3, 0.4, 0, new double[] { 0.5 }, new double[] { });

            Assert.Equal(0.1, GetScore(metrics, MulticlassClassificationMetric.MicroAccuracy));
            Assert.Equal(0.2, GetScore(metrics, MulticlassClassificationMetric.MacroAccuracy));
            Assert.Equal(0.3, GetScore(metrics, MulticlassClassificationMetric.LogLoss));
            Assert.Equal(0.4, GetScore(metrics, MulticlassClassificationMetric.LogLossReduction));
            Assert.Equal(0.5, GetScore(metrics, MulticlassClassificationMetric.TopKAccuracy));
        }