Skip to content

Commit 24c8274

Browse files
authored
Changed all MLContext creation to include a fixed seed (#4736)
* Changed all MLContext creation to include a fixed seed * Reverted fixed seed related changes from the code generator tests
1 parent 69b55d2 commit 24c8274

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+149
-149
lines changed

test/Microsoft.ML.AutoML.Tests/AutoFitTests.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public class AutoFitTests
2020
[Fact]
2121
public void AutoFitBinaryTest()
2222
{
23-
var context = new MLContext();
23+
var context = new MLContext(1);
2424
var dataPath = DatasetUtil.DownloadUciAdultDataset();
2525
var columnInference = context.Auto().InferColumns(dataPath, DatasetUtil.UciAdultLabel);
2626
var textLoader = context.Data.CreateTextLoader(columnInference.TextLoaderOptions);
@@ -37,7 +37,7 @@ public void AutoFitBinaryTest()
3737
[Fact]
3838
public void AutoFitMultiTest()
3939
{
40-
var context = new MLContext();
40+
var context = new MLContext(1);
4141
var columnInference = context.Auto().InferColumns(DatasetUtil.TrivialMulticlassDatasetPath, DatasetUtil.TrivialMulticlassDatasetLabel);
4242
var textLoader = context.Data.CreateTextLoader(columnInference.TextLoaderOptions);
4343
var trainData = textLoader.Load(DatasetUtil.TrivialMulticlassDatasetPath);
@@ -79,7 +79,7 @@ public void AutoFitImageClassification()
7979
// This test executes the code path that model builder code will take to get a model using image
8080
// classification API.
8181

82-
var context = new MLContext();
82+
var context = new MLContext(1);
8383
context.Log += Context_Log;
8484
var datasetPath = DatasetUtil.GetFlowersDataset();
8585
var columnInference = context.Auto().InferColumns(datasetPath, "Label");
@@ -102,7 +102,7 @@ private void Context_Log(object sender, LoggingEventArgs e)
102102
[Fact]
103103
public void AutoFitRegressionTest()
104104
{
105-
var context = new MLContext();
105+
var context = new MLContext(1);
106106
var dataPath = DatasetUtil.DownloadMlNetGeneratedRegressionDataset();
107107
var columnInference = context.Auto().InferColumns(dataPath, DatasetUtil.MlNetGeneratedRegressionLabel);
108108
var textLoader = context.Data.CreateTextLoader(columnInference.TextLoaderOptions);
@@ -125,7 +125,7 @@ public void AutoFitRecommendationTest()
125125
string userColumnName = "User";
126126
string itemColumnName = "Item";
127127
string scoreColumnName = "Score";
128-
MLContext mlContext = new MLContext();
128+
MLContext mlContext = new MLContext(1);
129129

130130
// STEP 1: Load data
131131
var reader = new TextLoader(mlContext, GetLoaderArgs(labelColumnName, userColumnName, itemColumnName));

test/Microsoft.ML.AutoML.Tests/ColumnInferenceTests.cs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class ColumnInferenceTests
1313
public void UnGroupReturnsMoreColumnsThanGroup()
1414
{
1515
var dataPath = DatasetUtil.DownloadUciAdultDataset();
16-
var context = new MLContext();
16+
var context = new MLContext(1);
1717
var columnInferenceWithoutGrouping = context.Auto().InferColumns(dataPath, DatasetUtil.UciAdultLabel, groupColumns: false);
1818
foreach (var col in columnInferenceWithoutGrouping.TextLoaderOptions.Columns)
1919
{
@@ -28,20 +28,20 @@ public void UnGroupReturnsMoreColumnsThanGroup()
2828
public void IncorrectLabelColumnThrows()
2929
{
3030
var dataPath = DatasetUtil.DownloadUciAdultDataset();
31-
var context = new MLContext();
31+
var context = new MLContext(1);
3232
Assert.Throws<ArgumentException>(new System.Action(() => context.Auto().InferColumns(dataPath, "Junk", groupColumns: false)));
3333
}
3434

3535
[Fact]
3636
public void LabelIndexOutOfBoundsThrows()
3737
{
38-
Assert.Throws<ArgumentOutOfRangeException>(() => new MLContext().Auto().InferColumns(DatasetUtil.DownloadUciAdultDataset(), 100));
38+
Assert.Throws<ArgumentOutOfRangeException>(() => new MLContext(1).Auto().InferColumns(DatasetUtil.DownloadUciAdultDataset(), 100));
3939
}
4040

4141
[Fact]
4242
public void IdentifyLabelColumnThroughIndexWithHeader()
4343
{
44-
var result = new MLContext().Auto().InferColumns(DatasetUtil.DownloadUciAdultDataset(), 14, hasHeader: true);
44+
var result = new MLContext(1).Auto().InferColumns(DatasetUtil.DownloadUciAdultDataset(), 14, hasHeader: true);
4545
Assert.True(result.TextLoaderOptions.HasHeader);
4646
var labelCol = result.TextLoaderOptions.Columns.First(c => c.Source[0].Min == 14 && c.Source[0].Max == 14);
4747
Assert.Equal("hours-per-week", labelCol.Name);
@@ -51,7 +51,7 @@ public void IdentifyLabelColumnThroughIndexWithHeader()
5151
[Fact]
5252
public void IdentifyLabelColumnThroughIndexWithoutHeader()
5353
{
54-
var result = new MLContext().Auto().InferColumns(DatasetUtil.DownloadIrisDataset(), DatasetUtil.IrisDatasetLabelColIndex);
54+
var result = new MLContext(1).Auto().InferColumns(DatasetUtil.DownloadIrisDataset(), DatasetUtil.IrisDatasetLabelColIndex);
5555
Assert.False(result.TextLoaderOptions.HasHeader);
5656
var labelCol = result.TextLoaderOptions.Columns.First(c => c.Source[0].Min == DatasetUtil.IrisDatasetLabelColIndex &&
5757
c.Source[0].Max == DatasetUtil.IrisDatasetLabelColIndex);
@@ -62,15 +62,15 @@ public void IdentifyLabelColumnThroughIndexWithoutHeader()
6262
[Fact]
6363
public void DatasetWithEmptyColumn()
6464
{
65-
var result = new MLContext().Auto().InferColumns(Path.Combine("TestData", "DatasetWithEmptyColumn.txt"), DefaultColumnNames.Label, groupColumns: false);
65+
var result = new MLContext(1).Auto().InferColumns(Path.Combine("TestData", "DatasetWithEmptyColumn.txt"), DefaultColumnNames.Label, groupColumns: false);
6666
var emptyColumn = result.TextLoaderOptions.Columns.First(c => c.Name == "Empty");
6767
Assert.Equal(DataKind.Single, emptyColumn.DataKind);
6868
}
6969

7070
[Fact]
7171
public void DatasetWithBoolColumn()
7272
{
73-
var result = new MLContext().Auto().InferColumns(Path.Combine("TestData", "BinaryDatasetWithBoolColumn.txt"), DefaultColumnNames.Label);
73+
var result = new MLContext(1).Auto().InferColumns(Path.Combine("TestData", "BinaryDatasetWithBoolColumn.txt"), DefaultColumnNames.Label);
7474
Assert.Equal(2, result.TextLoaderOptions.Columns.Count());
7575

7676
var boolColumn = result.TextLoaderOptions.Columns.First(c => c.Name == "Bool");
@@ -88,7 +88,7 @@ public void DatasetWithBoolColumn()
8888
[Fact]
8989
public void WhereNameColumnIsOnlyFeature()
9090
{
91-
var result = new MLContext().Auto().InferColumns(Path.Combine("TestData", "NameColumnIsOnlyFeatureDataset.txt"), DefaultColumnNames.Label);
91+
var result = new MLContext(1).Auto().InferColumns(Path.Combine("TestData", "NameColumnIsOnlyFeatureDataset.txt"), DefaultColumnNames.Label);
9292
Assert.Equal(2, result.TextLoaderOptions.Columns.Count());
9393

9494
var nameColumn = result.TextLoaderOptions.Columns.First(c => c.Name == "Username");
@@ -104,7 +104,7 @@ public void WhereNameColumnIsOnlyFeature()
104104
[Fact]
105105
public void DefaultColumnNamesInferredCorrectly()
106106
{
107-
var result = new MLContext().Auto().InferColumns(Path.Combine("TestData", "DatasetWithDefaultColumnNames.txt"),
107+
var result = new MLContext(1).Auto().InferColumns(Path.Combine("TestData", "DatasetWithDefaultColumnNames.txt"),
108108
new ColumnInformation()
109109
{
110110
LabelColumnName = DefaultColumnNames.Label,
@@ -124,7 +124,7 @@ public void DefaultColumnNamesInferredCorrectly()
124124
[Fact]
125125
public void DefaultColumnNamesNoGrouping()
126126
{
127-
var result = new MLContext().Auto().InferColumns(Path.Combine("TestData", "DatasetWithDefaultColumnNames.txt"),
127+
var result = new MLContext(1).Auto().InferColumns(Path.Combine("TestData", "DatasetWithDefaultColumnNames.txt"),
128128
new ColumnInformation()
129129
{
130130
LabelColumnName = DefaultColumnNames.Label,
@@ -141,7 +141,7 @@ public void DefaultColumnNamesNoGrouping()
141141
public void InferColumnsColumnInfoParam()
142142
{
143143
var columnInfo = new ColumnInformation() { LabelColumnName = DatasetUtil.MlNetGeneratedRegressionLabel };
144-
var result = new MLContext().Auto().InferColumns(DatasetUtil.DownloadMlNetGeneratedRegressionDataset(),
144+
var result = new MLContext(1).Auto().InferColumns(DatasetUtil.DownloadMlNetGeneratedRegressionDataset(),
145145
columnInfo);
146146
var labelCol = result.TextLoaderOptions.Columns.First(c => c.Name == DatasetUtil.MlNetGeneratedRegressionLabel);
147147
Assert.Equal(DataKind.Single, labelCol.DataKind);

test/Microsoft.ML.AutoML.Tests/DatasetDimensionsTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class DatasetDimensionsTests
1515
[Fact]
1616
public void TextColumnDimensionsTest()
1717
{
18-
var context = new MLContext();
18+
var context = new MLContext(1);
1919
var dataBuilder = new ArrayDataViewBuilder(context);
2020
dataBuilder.AddColumn("categorical", new string[] { "0", "1", "0", "1", "0", "1", "2", "2", "0", "1" });
2121
dataBuilder.AddColumn("text", new string[] { "0", "1", "0", "1", "0", "1", "2", "2", "0", "1" });
@@ -35,7 +35,7 @@ public void TextColumnDimensionsTest()
3535
[Fact]
3636
public void FloatColumnDimensionsTest()
3737
{
38-
var context = new MLContext();
38+
var context = new MLContext(1);
3939
var dataBuilder = new ArrayDataViewBuilder(context);
4040
dataBuilder.AddColumn("NoNan", NumberDataViewType.Single, new float[] { 0, 1, 0, 1, 0 });
4141
dataBuilder.AddColumn("Nan", NumberDataViewType.Single, new float[] { 0, 1, 0, 1, float.NaN });
@@ -55,7 +55,7 @@ public void FloatColumnDimensionsTest()
5555
[Fact]
5656
public void FloatVectorColumnHasNanTest()
5757
{
58-
var context = new MLContext();
58+
var context = new MLContext(1);
5959
var dataBuilder = new ArrayDataViewBuilder(context);
6060
var slotNames = new[] { "Col1", "Col2" };
6161
var colValues = new float[][]

test/Microsoft.ML.AutoML.Tests/DatasetUtil.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public static IDataView GetUciAdultDataView()
2828
{
2929
if (_uciAdultDataView == null)
3030
{
31-
var context = new MLContext();
31+
var context = new MLContext(1);
3232
var uciAdultDataFile = DownloadUciAdultDataset();
3333
var columnInferenceResult = context.Auto().InferColumns(uciAdultDataFile, UciAdultLabel);
3434
var textLoader = context.Data.CreateTextLoader(columnInferenceResult.TextLoaderOptions);

test/Microsoft.ML.AutoML.Tests/EstimatorExtensionTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class EstimatorExtensionTests
1515
[Fact]
1616
public void EstimatorExtensionInstanceTests()
1717
{
18-
var context = new MLContext();
18+
var context = new MLContext(1);
1919
var pipelineNode = new PipelineNode()
2020
{
2121
InColumns = new string[] { "Input" },
@@ -35,7 +35,7 @@ public void EstimatorExtensionInstanceTests()
3535
[Fact]
3636
public void EstimatorExtensionStaticTests()
3737
{
38-
var context = new MLContext();
38+
var context = new MLContext(1);
3939
var inCol = "Input";
4040
var outCol = "Output";
4141
var inCols = new string[] { inCol };

test/Microsoft.ML.AutoML.Tests/GetNextPipelineTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public class GetNextPipelineTests
1616
[Fact]
1717
public void GetNextPipeline()
1818
{
19-
var context = new MLContext();
19+
var context = new MLContext(1);
2020
var uciAdult = DatasetUtil.GetUciAdultDataView();
2121
var columns = DatasetColumnInfoUtil.GetDatasetColumnInfo(context, uciAdult, new ColumnInformation() { LabelColumnName = DatasetUtil.UciAdultLabel });
2222

@@ -40,7 +40,7 @@ public void GetNextPipeline()
4040
[Fact]
4141
public void GetNextPipelineMock()
4242
{
43-
var context = new MLContext();
43+
var context = new MLContext(1);
4444
var uciAdult = DatasetUtil.GetUciAdultDataView();
4545
var columns = DatasetColumnInfoUtil.GetDatasetColumnInfo(context, uciAdult, new ColumnInformation() { LabelColumnName = DatasetUtil.UciAdultLabel });
4646

test/Microsoft.ML.AutoML.Tests/InferredPipelineTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class InferredPipelineTests
1414
[Fact]
1515
public void InferredPipelinesHashTest()
1616
{
17-
var context = new MLContext();
17+
var context = new MLContext(1);
1818
var columnInfo = new ColumnInformation();
1919

2020
// test same learners with no hyperparams have the same hash code

test/Microsoft.ML.AutoML.Tests/PurposeInferenceTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ public class PurposeInferenceTests
1010
[Fact]
1111
public void PurposeInferenceHiddenColumnsTest()
1212
{
13-
var context = new MLContext();
13+
var context = new MLContext(1);
1414

1515
// build basic data view
1616
var schemaBuilder = new DataViewSchema.Builder();

test/Microsoft.ML.AutoML.Tests/SplitUtilTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public class SplitUtilTests
2020
[Fact]
2121
public void CrossValSplitThrowsWhenNotEnoughData()
2222
{
23-
var mlContext = new MLContext();
23+
var mlContext = new MLContext(1);
2424
var dataViewBuilder = new ArrayDataViewBuilder(mlContext);
2525
dataViewBuilder.AddColumn("Number", NumberDataViewType.Single, 0f);
2626
dataViewBuilder.AddColumn("Label", NumberDataViewType.Single, 0f);

test/Microsoft.ML.AutoML.Tests/SuggestedPipelineBuilderTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ namespace Microsoft.ML.AutoML.Test
1010

1111
public class SuggestedPipelineBuilderTests
1212
{
13-
private static MLContext _context = new MLContext();
13+
private static MLContext _context = new MLContext(1);
1414

1515
[Fact]
1616
public void TrainerWantsCaching()

test/Microsoft.ML.AutoML.Tests/SweeperTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public void SmacQuickRunTest()
2323
var longLogValueGenerator = new LongValueGenerator(new LongParamArguments() { Name = "longLog", Min = 1, Max = 1000, LogBase = true });
2424
var discreteValueGeneator = new DiscreteValueGenerator(new DiscreteParamArguments() { Name = "discrete", Values = new[] { "200", "400", "600", "800" } });
2525

26-
var sweeper = new SmacSweeper(new MLContext(), new SmacSweeper.Arguments()
26+
var sweeper = new SmacSweeper(new MLContext(1), new SmacSweeper.Arguments()
2727
{
2828
SweptParameters = new IValueGenerator[] {
2929
floatValueGenerator,
@@ -80,7 +80,7 @@ public void SmacQuickRunTest()
8080
[Fact(Skip = "This test is too slow to run as part of automation.")]
8181
public void Smac4ParamsConvergenceTest()
8282
{
83-
var sweeper = new SmacSweeper(new MLContext(), new SmacSweeper.Arguments()
83+
var sweeper = new SmacSweeper(new MLContext(1), new SmacSweeper.Arguments()
8484
{
8585
SweptParameters = new INumericValueGenerator[] {
8686
new FloatValueGenerator(new FloatParamArguments() { Name = "x1", Min = 1, Max = 1000}),
@@ -133,7 +133,7 @@ public void Smac4ParamsConvergenceTest()
133133
[Fact(Skip = "This test is too slow to run as part of automation.")]
134134
public void Smac2ParamsConvergenceTest()
135135
{
136-
var sweeper = new SmacSweeper(new MLContext(), new SmacSweeper.Arguments()
136+
var sweeper = new SmacSweeper(new MLContext(1), new SmacSweeper.Arguments()
137137
{
138138
SweptParameters = new INumericValueGenerator[] {
139139
new FloatValueGenerator(new FloatParamArguments() { Name = "foo", Min = 1, Max = 5}),

test/Microsoft.ML.AutoML.Tests/TrainerExtensionsTests.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public class TrainerExtensionsTests
1616
[Fact]
1717
public void TrainerExtensionInstanceTests()
1818
{
19-
var context = new MLContext();
19+
var context = new MLContext(1);
2020
var columnInfo = new ColumnInformation();
2121
var trainerNames = Enum.GetValues(typeof(TrainerName)).Cast<TrainerName>()
2222
.Except(new[] { TrainerName.Ova });
@@ -45,7 +45,7 @@ public void TrainerExtensionInstanceTests()
4545
[TensorFlowFact]
4646
public void TrainerExtensionTensorFlowInstanceTests()
4747
{
48-
var context = new MLContext();
48+
var context = new MLContext(1);
4949
var columnInfo = new ColumnInformation();
5050
var extension = TrainerExtensionCatalog.GetTrainerExtension(TrainerName.ImageClassification);
5151
var instance = extension.CreateInstance(context, null, columnInfo);
@@ -359,15 +359,15 @@ public void PublicToPrivateTrainerNamesNullTest()
359359
[Fact]
360360
public void AllowedTrainersWhitelistNullTest()
361361
{
362-
var trainers = RecipeInference.AllowedTrainers(new MLContext(), TaskKind.BinaryClassification, new ColumnInformation(), null);
362+
var trainers = RecipeInference.AllowedTrainers(new MLContext(1), TaskKind.BinaryClassification, new ColumnInformation(), null);
363363
Assert.True(trainers.Any());
364364
}
365365

366366
[Fact]
367367
public void AllowedTrainersWhitelistTest()
368368
{
369369
var whitelist = new[] { TrainerName.AveragedPerceptronBinary, TrainerName.FastForestBinary };
370-
var trainers = RecipeInference.AllowedTrainers(new MLContext(), TaskKind.BinaryClassification, new ColumnInformation(), whitelist);
370+
var trainers = RecipeInference.AllowedTrainers(new MLContext(1), TaskKind.BinaryClassification, new ColumnInformation(), whitelist);
371371
Assert.Equal(whitelist.Count(), trainers.Count());
372372
}
373373
}

test/Microsoft.ML.AutoML.Tests/TransformInferenceTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -756,7 +756,7 @@ private static void TransformInferenceTestCore(
756756
string expectedJson,
757757
TaskKind task = TaskKind.BinaryClassification)
758758
{
759-
var transforms = TransformInferenceApi.InferTransforms(new MLContext(), task, columns);
759+
var transforms = TransformInferenceApi.InferTransforms(new MLContext(1), task, columns);
760760
TestApplyTransformsToRealDataView(transforms, columns);
761761
var pipelineNodes = transforms.Select(t => t.PipelineNode);
762762
Util.AssertObjectMatchesJson(expectedJson, pipelineNodes);

test/Microsoft.ML.AutoML.Tests/TransformPostTrainerInferenceTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ private static void TransformPostTrainerInferenceTestCore(
6262
DatasetColumnInfo[] columns,
6363
string expectedJson)
6464
{
65-
var transforms = TransformInferenceApi.InferTransformsPostTrainer(new MLContext(), task, columns);
65+
var transforms = TransformInferenceApi.InferTransformsPostTrainer(new MLContext(1), task, columns);
6666
var pipelineNodes = transforms.Select(t => t.PipelineNode);
6767
Util.AssertObjectMatchesJson(expectedJson, pipelineNodes);
6868
}

0 commit comments

Comments
 (0)