| File: TrainerEstimators\OnlineLinearTests.cs | Web Access |
| Project: src\test\Microsoft.ML.Tests\Microsoft.ML.Tests.csproj (Microsoft.ML.Tests) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using Microsoft.ML; using Microsoft.ML.Data; using Microsoft.ML.TestFrameworkCommon; using Microsoft.ML.Trainers; using Xunit; namespace Microsoft.ML.Tests.TrainerEstimators { public partial class TrainerEstimators { [Fact] public void OnlineLinearWorkout() { var dataPath = GetDataPath(TestDatasets.breastCancer.trainFilename); var regressionData = ML.Data.LoadFromTextFile(dataPath, new[] { new TextLoader.Column("Label", DataKind.Single, 0), new TextLoader.Column("Features", DataKind.Single, 1, 10) }); var regressionPipe = ML.Transforms.NormalizeMinMax("Features"); var regressionTrainData = regressionPipe.Fit(regressionData).Transform(regressionData); var ogdTrainer = ML.Regression.Trainers.OnlineGradientDescent(); TestEstimatorCore(ogdTrainer, regressionTrainData); var ogdModel = ogdTrainer.Fit(regressionTrainData); ogdTrainer.Fit(regressionTrainData, ogdModel.Model); var binaryData = ML.Data.LoadFromTextFile(dataPath, new[] { new TextLoader.Column("Label", DataKind.Boolean, 0), new TextLoader.Column("Features", DataKind.Single, 1, 10) }); var binaryPipe = ML.Transforms.NormalizeMinMax("Features"); var binaryTrainData = binaryPipe.Fit(binaryData).Transform(binaryData); var apTrainer = ML.BinaryClassification.Trainers.AveragedPerceptron( new AveragedPerceptronTrainer.Options { LearningRate = 0.5f }); TestEstimatorCore(apTrainer, binaryTrainData); var apModel = apTrainer.Fit(binaryTrainData); apTrainer.Fit(binaryTrainData, apModel.Model); var svmTrainer = ML.BinaryClassification.Trainers.LinearSvm(); TestEstimatorCore(svmTrainer, binaryTrainData); var svmModel = svmTrainer.Fit(binaryTrainData); svmTrainer.Fit(binaryTrainData, apModel.Model); Done(); } } }