Skip to content

Commit 1066191

Browse files
authored
Samples: exceptions / nits (dotnet#124)
1 parent 1dc5ba2 commit 1066191

5 files changed

+17
-20
lines changed

src/Samples/AutoTrainBinaryClassification.cs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,11 @@ public class AutoTrainBinaryClassification
1515
private static string TrainDataPath = $"{BaseDatasetsLocation}/wikipedia-detox-250-line-data.tsv";
1616
private static string TestDataPath = $"{BaseDatasetsLocation}/wikipedia-detox-250-line-test.tsv";
1717
private static string ModelPath = $"{BaseDatasetsLocation}/SentimentModel.zip";
18-
private static string LabelColumnName = "Label";
18+
private static string LabelColumnName = "Sentiment";
1919

2020
public static void Run()
2121
{
22-
//Create ML Context with seed for repeteable/deterministic results
23-
MLContext mlContext = new MLContext(seed: 0);
22+
MLContext mlContext = new MLContext();
2423

2524
// STEP 1: Infer columns
2625
var columnInference = mlContext.Data.InferColumns(TrainDataPath, LabelColumnName, '\t');
@@ -32,16 +31,16 @@ public static void Run()
3231

3332
// STEP 3: Auto featurize, auto train and auto hyperparameter tuning
3433
Console.WriteLine($"Invoking BinaryClassification.AutoFit");
35-
var autoFitResults = mlContext.BinaryClassification.AutoFit(trainDataView, timeoutInSeconds: 60);
34+
var autoFitResults = mlContext.BinaryClassification.AutoFit(trainDataView, LabelColumnName, timeoutInSeconds: 60);
3635

3736
// STEP 4: Print metric from the best model
3837
var best = autoFitResults.Best();
39-
Console.WriteLine($"Accuracy of best model from validation data {best.Metrics.Accuracy}");
38+
Console.WriteLine($"Accuracy of best model from validation data: {best.Metrics.Accuracy}");
4039

4140
// STEP 5: Evaluate test data
4241
IDataView testDataViewWithBestScore = best.Model.Transform(testDataView);
43-
var testMetrics = mlContext.Regression.Evaluate(testDataViewWithBestScore, label: DefaultColumnNames.Label, DefaultColumnNames.Score);
44-
Console.WriteLine($"Accuracy of best model from test data {best.Metrics.Accuracy}");
42+
var testMetrics = mlContext.BinaryClassification.EvaluateNonCalibrated(testDataViewWithBestScore, label: LabelColumnName, DefaultColumnNames.Score);
43+
Console.WriteLine($"Accuracy of best model from test data: {best.Metrics.Accuracy}");
4544

4645
// STEP 6: Save the best model for later deployment and inferencing
4746
using (var fs = File.Create(ModelPath))

src/Samples/AutoTrainMulticlassClassification.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ public class AutoTrainMulticlassClassification
1919

2020
public static void Run()
2121
{
22-
//Create ML Context with seed for repeteable/deterministic results
23-
MLContext mlContext = new MLContext(seed: 0);
22+
MLContext mlContext = new MLContext();
2423

2524
// STEP 1: Infer columns
2625
var columnInference = mlContext.Data.InferColumns(TrainDataPath, LabelColumnName, '\t');
@@ -32,16 +31,16 @@ public static void Run()
3231

3332
// STEP 3: Auto featurize, auto train and auto hyperparameter tuning
3433
Console.WriteLine($"Invoking MulticlassClassification.AutoFit");
35-
var autoFitResults = mlContext.MulticlassClassification.AutoFit(trainDataView, timeoutInSeconds: 1);
34+
var autoFitResults = mlContext.MulticlassClassification.AutoFit(trainDataView, timeoutInSeconds: 60);
3635

3736
// STEP 4: Print metric from the best model
3837
var best = autoFitResults.Best();
39-
Console.WriteLine($"AccuracyMacro of best model from validation data {best.Metrics.AccuracyMacro}");
38+
Console.WriteLine($"AccuracyMacro of best model from validation data: {best.Metrics.AccuracyMacro}");
4039

4140
// STEP 5: Evaluate test data
4241
IDataView testDataViewWithBestScore = best.Model.Transform(testDataView);
43-
var testMetrics = mlContext.Regression.Evaluate(testDataViewWithBestScore, label: DefaultColumnNames.Label, DefaultColumnNames.Score);
44-
Console.WriteLine($"AccuracyMacro of best model from test data {best.Metrics.AccuracyMacro}");
42+
var testMetrics = mlContext.MulticlassClassification.Evaluate(testDataViewWithBestScore, label: DefaultColumnNames.Label, DefaultColumnNames.Score);
43+
Console.WriteLine($"AccuracyMacro of best model from test data: {best.Metrics.AccuracyMacro}");
4544

4645
// STEP 6: Save the best model for later deployment and inferencing
4746
using (var fs = File.Create(ModelPath))

src/Samples/AutoTrainRegression.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ static class AutoTrainRegression
1919

2020
public static void Run()
2121
{
22-
//Create ML Context with seed for repeteable/deterministic results
23-
MLContext mlContext = new MLContext(seed: 0);
22+
MLContext mlContext = new MLContext();
2423

2524
// STEP 1: Common data loading configuration
2625
var columnInference = mlContext.Data.InferColumns(TrainDataPath, LabelColumnName, ',');
@@ -32,16 +31,16 @@ public static void Run()
3231

3332
// STEP 3: Auto featurize, auto train and auto hyperparameter tuning
3433
Console.WriteLine($"Invoking Regression.AutoFit");
35-
var autoFitResults = mlContext.Regression.AutoFit(trainDataView, LabelColumnName, timeoutInSeconds:1);
34+
var autoFitResults = mlContext.Regression.AutoFit(trainDataView, LabelColumnName, timeoutInSeconds: 60);
3635

3736
// STEP 4: Compare and print actual value vs predicted value for top 5 rows from validation data
3837
var best = autoFitResults.Best();
39-
Console.WriteLine($"RSquared of best model from validation data {best.Metrics.RSquared}");
38+
Console.WriteLine($"RSquared of best model from validation data: {best.Metrics.RSquared}");
4039

4140
// STEP 5: Evaluate test data
4241
IDataView testDataViewWithBestScore = best.Model.Transform(testDataView);
4342
var testMetrics = mlContext.Regression.Evaluate(testDataViewWithBestScore, label: DefaultColumnNames.Label, DefaultColumnNames.Score);
44-
Console.WriteLine($"RSquared of best model from test data {best.Metrics.RSquared}");
43+
Console.WriteLine($"RSquared of best model from test data: {best.Metrics.RSquared}");
4544

4645
// STEP 6: Save the best model for later deployment and inferencing
4746
using (var fs = File.Create(ModelPath))

src/Samples/Data/iris-test.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#Label Sepal length Sepal width Petal length Petal width
1+
Label Sepal length Sepal width Petal length Petal width
22
0 5.1 3.5 1.4 0.2
33
0 4.9 3.0 1.4 0.2
44
0 4.7 3.2 1.3 0.2

src/Samples/Data/iris-train.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#Label Sepal length Sepal width Petal length Petal width
1+
Label Sepal length Sepal width Petal length Petal width
22
0 5.4 3.7 1.5 0.2
33
0 4.8 3.4 1.6 0.2
44
0 4.8 3.0 1.4 0.1

0 commit comments

Comments
 (0)