Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,6 @@ dotnet_diagnostic.VSTHRD200.severity = none
# MSML_GeneralName: This name should be PascalCased
dotnet_diagnostic.MSML_GeneralName.severity = none

# MSML_PrivateFieldName: Private field name not in: _camelCase format
dotnet_diagnostic.MSML_PrivateFieldName.severity = none

# MSML_NoBestFriendInternal: Cross-assembly internal access requires referenced item to have Microsoft.ML.BestFriendAttribute attribute.
dotnet_diagnostic.MSML_NoBestFriendInternal.severity = none

Expand Down
6 changes: 3 additions & 3 deletions test/Microsoft.ML.AutoML.Tests/ConversionTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ namespace Microsoft.ML.AutoML.Test

public class ConversionTests
{
private readonly ITestOutputHelper output;
private readonly ITestOutputHelper _output;

public ConversionTests(ITestOutputHelper output)
{
this.output = output;
this._output = output;
}

[Fact]
Expand All @@ -34,7 +34,7 @@ public void ConvertFloatMissingValues()
{
float value;
var success = Conversions.Instance.TryParse(missingValue.AsMemory(), out value);
output.WriteLine($"{missingValue} parsed as {value}");
_output.WriteLine($"{missingValue} parsed as {value}");
Assert.True(success);
//Assert.Equal(float.NaN, value);
}
Expand Down
12 changes: 6 additions & 6 deletions test/Microsoft.ML.AutoML.Tests/UserInputValidationTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ namespace Microsoft.ML.AutoML.Test

public class UserInputValidationTests
{
private static readonly IDataView Data = DatasetUtil.GetUciAdultDataView();
private static readonly IDataView _data = DatasetUtil.GetUciAdultDataView();

[Fact]
public void ValidateExperimentExecuteNullTrainData()
Expand All @@ -25,7 +25,7 @@ public void ValidateExperimentExecuteNullTrainData()
[Fact]
public void ValidateExperimentExecuteNullLabel()
{
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(Data,
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(_data,
new ColumnInformation() { LabelColumnName = null }, null, TaskKind.Regression));

Assert.Equal("Provided label column cannot be null", ex.Message);
Expand All @@ -36,7 +36,7 @@ public void ValidateExperimentExecuteLabelNotInTrain()
{
foreach (var task in new[] { TaskKind.Recommendation, TaskKind.Regression })
{
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(Data,
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(_data,
new ColumnInformation() { LabelColumnName = "L" }, null, task));

Assert.Equal("Provided label column 'L' not found in training data.", ex.Message);
Expand All @@ -51,7 +51,7 @@ public void ValidateExperimentExecuteNumericColNotInTrain()

foreach (var task in new[] { TaskKind.Recommendation, TaskKind.Regression })
{
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(Data, columnInfo, null, task));
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(_data, columnInfo, null, task));
Assert.Equal("Provided label column 'Label' was of type Boolean, but only type Single is allowed.", ex.Message);
}
}
Expand All @@ -62,7 +62,7 @@ public void ValidateExperimentExecuteNullNumericCol()
var columnInfo = new ColumnInformation();
columnInfo.NumericColumnNames.Add(null);

var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(Data, columnInfo, null, TaskKind.Regression));
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(_data, columnInfo, null, TaskKind.Regression));
Assert.Equal("Null column string was specified as numeric in column information", ex.Message);
}

Expand All @@ -72,7 +72,7 @@ public void ValidateExperimentExecuteDuplicateCol()
var columnInfo = new ColumnInformation();
columnInfo.NumericColumnNames.Add(DefaultColumnNames.Label);

var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(Data, columnInfo, null, TaskKind.Regression));
var ex = Assert.Throws<ArgumentException>(() => UserInputValidationUtil.ValidateExperimentExecuteArgs(_data, columnInfo, null, TaskKind.Regression));
}

[Fact]
Expand Down
26 changes: 13 additions & 13 deletions test/Microsoft.ML.AutoML.Tests/Utils/TaskAgnosticAutoFit.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,17 @@ public enum TaskType
/// </summary>
internal class TaskAgnosticAutoFit
{
private TaskType taskType;
private MLContext context;
private TaskType _taskType;
private MLContext _context;

internal interface IUniversalProgressHandler : IProgress<RunDetail<RegressionMetrics>>, IProgress<RunDetail<MulticlassClassificationMetrics>>
{
}

internal TaskAgnosticAutoFit(TaskType taskType, MLContext context)
{
this.taskType = taskType;
this.context = context;
this._taskType = taskType;
this._context = context;
}

internal IEnumerable<TaskAgnosticIterationResult> AutoFit(
Expand All @@ -46,7 +46,7 @@ internal IEnumerable<TaskAgnosticIterationResult> AutoFit(
{
var columnInformation = new ColumnInformation() { LabelColumnName = label };

switch (this.taskType)
switch (this._taskType)
{
case TaskType.Classification:

Expand All @@ -58,7 +58,7 @@ internal IEnumerable<TaskAgnosticIterationResult> AutoFit(
MaxModels = maxModels
};

var classificationResult = this.context.Auto()
var classificationResult = this._context.Auto()
.CreateMulticlassClassificationExperiment(mcs)
.Execute(
trainData,
Expand All @@ -80,7 +80,7 @@ internal IEnumerable<TaskAgnosticIterationResult> AutoFit(
MaxModels = maxModels
};

var regressionResult = this.context.Auto()
var regressionResult = this._context.Auto()
.CreateRegressionExperiment(rs)
.Execute(
trainData,
Expand All @@ -102,7 +102,7 @@ internal IEnumerable<TaskAgnosticIterationResult> AutoFit(
MaxModels = maxModels
};

var recommendationResult = this.context.Auto()
var recommendationResult = this._context.Auto()
.CreateRecommendationExperiment(recommendationSettings)
.Execute(
trainData,
Expand All @@ -115,7 +115,7 @@ internal IEnumerable<TaskAgnosticIterationResult> AutoFit(
return iterationResults;

default:
throw new ArgumentException($"Unknown task type {this.taskType}.", "TaskType");
throw new ArgumentException($"Unknown task type {this._taskType}.", "TaskType");
}
}

Expand All @@ -135,11 +135,11 @@ internal ScoreResult Score(

result.ScoredTestData = model.Transform(testData);

switch (this.taskType)
switch (this._taskType)
{
case TaskType.Classification:

var classificationMetrics = context.MulticlassClassification.Evaluate(result.ScoredTestData, labelColumnName: label);
var classificationMetrics = _context.MulticlassClassification.Evaluate(result.ScoredTestData, labelColumnName: label);

//var classificationMetrics = context.MulticlassClassification.(scoredTestData, labelColumnName: label);
result.PrimaryMetricResult = classificationMetrics.MicroAccuracy; // TODO: don't hardcode metric
Expand All @@ -149,15 +149,15 @@ internal ScoreResult Score(

case TaskType.Regression:

var regressionMetrics = context.Regression.Evaluate(result.ScoredTestData, labelColumnName: label);
var regressionMetrics = _context.Regression.Evaluate(result.ScoredTestData, labelColumnName: label);

result.PrimaryMetricResult = regressionMetrics.RSquared; // TODO: don't hardcode metric
result.Metrics = TaskAgnosticIterationResult.MetricValuesToDictionary(regressionMetrics);

break;

default:
throw new ArgumentException($"Unknown task type {this.taskType}.", "TaskType");
throw new ArgumentException($"Unknown task type {this._taskType}.", "TaskType");
}

return result;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ internal class TaskAgnosticIterationResult
internal Pipeline Pipeline;
internal int PipelineInferenceTimeInSeconds;

private string primaryMetricName;
private string _primaryMetricName;

private TaskAgnosticIterationResult(RunDetail baseRunDetail, object validationMetrics, string primaryMetricName)
{
Expand All @@ -34,7 +34,7 @@ private TaskAgnosticIterationResult(RunDetail baseRunDetail, object validationMe
this.PipelineInferenceTimeInSeconds = (int)baseRunDetail.PipelineInferenceTimeInSeconds;
this.RuntimeInSeconds = (int)baseRunDetail.RuntimeInSeconds;

this.primaryMetricName = primaryMetricName;
this._primaryMetricName = primaryMetricName;
this.PrimaryMetricValue = -1; // default value in case of exception. TODO: won't work for minimizing metrics, use nullable?

if (validationMetrics == null)
Expand All @@ -44,7 +44,7 @@ private TaskAgnosticIterationResult(RunDetail baseRunDetail, object validationMe

this.MetricValues = MetricValuesToDictionary(validationMetrics);

this.PrimaryMetricValue = this.MetricValues[this.primaryMetricName];
this.PrimaryMetricValue = this.MetricValues[this._primaryMetricName];
}

public TaskAgnosticIterationResult(RunDetail<RegressionMetrics> runDetail, string primaryMetricName = "RSquared")
Expand Down
16 changes: 8 additions & 8 deletions test/Microsoft.ML.Benchmarks.Tests/BenchmarksTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -73,31 +73,31 @@ public void BenchmarksProjectIsNotBroken(Type type)

public class OutputLogger : AccumulationLogger
{
private readonly ITestOutputHelper testOutputHelper;
private string currentLine = "";
private readonly ITestOutputHelper _testOutputHelper;
private string _currentLine = "";

public OutputLogger(ITestOutputHelper testOutputHelper)
{
this.testOutputHelper = testOutputHelper ?? throw new ArgumentNullException(nameof(testOutputHelper));
this._testOutputHelper = testOutputHelper ?? throw new ArgumentNullException(nameof(testOutputHelper));
}

public override void Write(LogKind logKind, string text)
{
currentLine += text;
_currentLine += text;
base.Write(logKind, text);
}

public override void WriteLine()
{
testOutputHelper.WriteLine(currentLine);
currentLine = "";
_testOutputHelper.WriteLine(_currentLine);
_currentLine = "";
base.WriteLine();
}

public override void WriteLine(LogKind logKind, string text)
{
testOutputHelper.WriteLine(currentLine + text);
currentLine = "";
_testOutputHelper.WriteLine(_currentLine + text);
_currentLine = "";
base.WriteLine(logKind, text);
}
}
Expand Down
28 changes: 14 additions & 14 deletions test/Microsoft.ML.Benchmarks/FeaturizeTextBench.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,35 +16,35 @@ namespace Microsoft.ML.Benchmarks
[Config(typeof(TrainConfig))]
public class FeaturizeTextBench
{
private MLContext mlContext;
private IDataView dataset;
private static int numColumns = 1000;
private static int numRows = 300;
private static int maxWordLength = 15;
private MLContext _mlContext;
private IDataView _dataset;
private static int _numColumns = 1000;
private static int _numRows = 300;
private static int _maxWordLength = 15;

[GlobalSetup]
public void SetupData()
{
Path.GetTempFileName();
mlContext = new MLContext(seed: 1);
_mlContext = new MLContext(seed: 1);
var path = Path.GetTempFileName();
Console.WriteLine($"Created dataset in temporary file:\n{path}\n");
path = CreateRandomFile(path);

var columns = new List<TextLoader.Column>();
for(int i = 0; i < numColumns; i++)
for(int i = 0; i < _numColumns; i++)
{
columns.Add(new TextLoader.Column($"Column{i}", DataKind.String, i));
}

var textLoader = mlContext.Data.CreateTextLoader(new TextLoader.Options()
var textLoader = _mlContext.Data.CreateTextLoader(new TextLoader.Options()
{
Columns = columns.ToArray(),
HasHeader = false,
Separators = new char[] { ',' }
});

dataset = textLoader.Load(path);
_dataset = textLoader.Load(path);
}

[Benchmark]
Expand All @@ -59,7 +59,7 @@ public ITransformer TrainFeaturizeText()
var featurizers = new List<TextFeaturizingEstimator>();
foreach (var textColumn in textColumns)
{
var featurizer = mlContext.Transforms.Text.FeaturizeText(textColumn, new TextFeaturizingEstimator.Options()
var featurizer = _mlContext.Transforms.Text.FeaturizeText(textColumn, new TextFeaturizingEstimator.Options()
{
CharFeatureExtractor = null,
WordFeatureExtractor = new WordBagEstimator.Options()
Expand All @@ -77,7 +77,7 @@ public ITransformer TrainFeaturizeText()
pipeline = pipeline.Append(featurizer);
}

var model = pipeline.Fit(dataset);
var model = pipeline.Fit(_dataset);

// BENCHMARK OUTPUT
// * Summary *
Expand Down Expand Up @@ -126,8 +126,8 @@ public static string CreateRandomFile(string path)

using (StreamWriter file = new StreamWriter(path))
{
for(int i = 0; i < numRows; i++)
file.WriteLine(CreateRandomLine(numColumns, random));
for(int i = 0; i < _numRows; i++)
file.WriteLine(CreateRandomLine(_numColumns, random));
}
return path;
}
Expand Down Expand Up @@ -155,7 +155,7 @@ public static string CreateRandomColumn(Random random, int numwords)

for(int i = 0; i < numwords; i++)
{
wordLength = random.Next(1, maxWordLength);
wordLength = random.Next(1, _maxWordLength);
for(int j = 0; j < wordLength; j++)
columnSB.Append(characters[random.Next(characters.Length)]);

Expand Down
8 changes: 4 additions & 4 deletions test/Microsoft.ML.Benchmarks/Harness/ProjectGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ namespace Microsoft.ML.Benchmarks.Harness
/// </summary>
public class ProjectGenerator : CsProjGenerator
{
private readonly string runtimeIdentifier = string.Empty;
private readonly string _runtimeIdentifier = string.Empty;

public ProjectGenerator(string targetFrameworkMoniker) : base(targetFrameworkMoniker, null, null, null)
{
#if NETFRAMEWORK
runtimeIdentifier = "win-x64";
_runtimeIdentifier = "win-x64";
#endif
}

Expand All @@ -41,7 +41,7 @@ protected override void GenerateProject(BuildPartition buildPartition, Artifacts
<OutputType>Exe</OutputType>
<OutputPath>bin\{buildPartition.BuildConfiguration}</OutputPath>
<TargetFramework>{TargetFrameworkMoniker}</TargetFramework>
<RuntimeIdentifier>{runtimeIdentifier}</RuntimeIdentifier>
<RuntimeIdentifier>{_runtimeIdentifier}</RuntimeIdentifier>
<AssemblyName>{artifactsPaths.ProgramName}</AssemblyName>
<AssemblyTitle>{artifactsPaths.ProgramName}</AssemblyTitle>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
Expand All @@ -61,7 +61,7 @@ protected override void GenerateProject(BuildPartition buildPartition, Artifacts

// This overrides the .exe path to also involve the runtimeIdentifier for .NET Framework
protected override string GetBinariesDirectoryPath(string buildArtifactsDirectoryPath, string configuration)
=> Path.Combine(buildArtifactsDirectoryPath, "bin", configuration, TargetFrameworkMoniker, runtimeIdentifier);
=> Path.Combine(buildArtifactsDirectoryPath, "bin", configuration, TargetFrameworkMoniker, _runtimeIdentifier);

private string GenerateNativeReferences(BuildPartition buildPartition, ILogger logger)
{
Expand Down
Loading