Esempio n. 1
0
        public void InferColumnsColumnInfoParam()
        {
            var columnInfo = new ColumnInformation()
            {
                LabelColumnName = DatasetUtil.MlNetGeneratedRegressionLabel
            };
            var result = new MLContext().Auto().InferColumns(DatasetUtil.DownloadMlNetGeneratedRegressionDataset(),
                                                             columnInfo);
            var labelCol = result.TextLoaderOptions.Columns.First(c => c.Name == DatasetUtil.MlNetGeneratedRegressionLabel);

            Assert.Equal(DataKind.Single, labelCol.DataKind);
            Assert.Equal(DatasetUtil.MlNetGeneratedRegressionLabel, result.ColumnInformation.LabelColumnName);
            Assert.Single(result.ColumnInformation.NumericColumnNames);
            Assert.Equal(DefaultColumnNames.Features, result.ColumnInformation.NumericColumnNames.First());
            Assert.Null(result.ColumnInformation.ExampleWeightColumnName);
        }
Esempio n. 2
0
        public void AutoFitRegressionTest()
        {
            var context         = new MLContext();
            var dataPath        = DatasetUtil.DownloadMlNetGeneratedRegressionDataset();
            var columnInference = context.Auto().InferColumns(dataPath, DatasetUtil.MlNetGeneratedRegressionLabel);
            var textLoader      = context.Data.CreateTextLoader(columnInference.TextLoaderOptions);
            var trainData       = textLoader.Load(dataPath);
            var validationData  = context.Data.TakeRows(trainData, 20);

            trainData = context.Data.SkipRows(trainData, 20);
            var result = context.Auto()
                         .CreateRegressionExperiment(0)
                         .Execute(trainData, validationData,
                                  new ColumnInformation()
            {
                LabelColumnName = DatasetUtil.MlNetGeneratedRegressionLabel
            });

            Assert.True(result.RunDetails.Max(i => i.ValidationMetrics.RSquared > 0.9));
        }