You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fatal error. System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Repeat 2 times:
at TorchSharp.PInvoke.LibTorchSharp.THSGenerator_manual_seed(Int64)
at TorchSharp.torch+random.manual_seed(Int64)
at Microsoft.ML.TorchSharp.NasBert.NasBertTrainer2+TrainerBase[[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].TrainStep(Microsoft.ML.DataViewRowCursor, Microsoft.ML.ValueGetter1<System.ReadOnlyMemory1<Char>>, Microsoft.ML.ValueGetter1<System.ReadOnlyMemory1<Char>>, Microsoft.ML.ValueGetter1, System.Collections.Generic.List1<Tensor> ByRef, System.Collections.Generic.List1 ByRef)
at Microsoft.ML.TorchSharp.NasBert.NasBertTrainer2+TrainerBase[[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Train(Microsoft.ML.IDataView) at Microsoft.ML.TorchSharp.NasBert.NasBertTrainer2[[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Fit(Microsoft.ML.IDataView)
at Microsoft.ML.Data.EstimatorChain`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Fit(Microsoft.ML.IDataView)
at Program.
$(System.String[])
in this line:
var model = pipeline.Fit(dataSplit.TrainSet);
the complete code is the following:
using Microsoft.ML.Data;
using Microsoft.ML.TorchSharp;
using MathNet.Numerics.Statistics;
using Microsoft.ML.Transforms;
// Initialize MLContext
var ctx = new MLContext();
// (Optional) Use GPU
ctx.GpuDeviceId = 0;
ctx.FallbackToCpu = false;
// Log training output
ctx.Log += (o, e) => {
if (e.Source.Contains("NasBertTrainer"))
Console.WriteLine(e.Message);
};
// Load data into IDataView
var columns = new[]
{
new TextLoader.Column("search_term",DataKind.String,3),
new TextLoader.Column("relevance",DataKind.Single,4),
new TextLoader.Column("product_description",DataKind.String,5)
};
var loaderOptions = new TextLoader.Options()
{
Columns = columns,
HasHeader = true,
Separators = new[] { ',' },
MaxRows = 1000 // Dataset has 75k rows. Only load 1k for quicker training
};
var dataPath = Path.GetFullPath(@"C:\Dropbox\Documents\Visual Studio 2019\source\repos\Machine Learning & AI\home-depot-sentence-similarity.csv");
var textLoader = ctx.Data.CreateTextLoader(loaderOptions);
var data = textLoader.Load(dataPath);
// Split data into 80% training, 20% testing
var dataSplit = ctx.Data.TrainTestSplit(data, testFraction: 0.2);
// Define pipeline
var pipeline =
ctx.Transforms.ReplaceMissingValues("relevance", replacementMode: MissingValueReplacingEstimator.ReplacementMode.Mean)
.Append(ctx.Regression.Trainers.SentenceSimilarity(labelColumnName: "relevance", sentence1ColumnName: "search_term", sentence2ColumnName: "product_description"));
// Train the model
var model = pipeline.Fit(dataSplit.TrainSet); // THIS IS THE LINE THAT PRODUCED THE ERROR
// Use the model to make predictions on the test dataset
var predictions = model.Transform(dataSplit.TestSet);
// Evaluate the model
Evaluate(predictions, "relevance", "Score");
// Save the model
ctx.Model.Save(model, data.Schema, "model.zip");
void Evaluate(IDataView predictions, string actualColumnName, string predictedColumnName)
{
var actual =
predictions.GetColumn<float>(actualColumnName)
.Select(x => (double)x);
var predicted =
predictions.GetColumn<float>(predictedColumnName)
.Select(x => (double)x);
var corr = Correlation.Pearson(actual, predicted);
Console.WriteLine($"Pearson Correlation: {corr}");
}
I used the same version of the packages that were used in the example:
MathNet.Numeric.Signed (5.00)
Microsoft.ML (2.0.0)
Microsoft.ML.TorchSharp (0.20.0)
TorchSharp-cuda-windows (0.98.3)
but the error persist.
Any idea?
The text was updated successfully, but these errors were encountered:
I was trying to reproduce the example of ML.Net: machinelearning-samples/samples/csharp/getting-started/MLNET2/SentenceSimilarity and I got the following error :
Fatal error. System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Repeat 2 times:
at TorchSharp.PInvoke.LibTorchSharp.THSGenerator_manual_seed(Int64)
at TorchSharp.torch+random.manual_seed(Int64)
$(System.String[])at Microsoft.ML.TorchSharp.NasBert.NasBertTrainer
2+TrainerBase[[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].TrainStep(Microsoft.ML.DataViewRowCursor, Microsoft.ML.ValueGetter
1<System.ReadOnlyMemory1<Char>>, Microsoft.ML.ValueGetter
1<System.ReadOnlyMemory1<Char>>, Microsoft.ML.ValueGetter
1, System.Collections.Generic.List1<Tensor> ByRef, System.Collections.Generic.List
1 ByRef)at Microsoft.ML.TorchSharp.NasBert.NasBertTrainer
2+TrainerBase[[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Train(Microsoft.ML.IDataView) at Microsoft.ML.TorchSharp.NasBert.NasBertTrainer
2[[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Single, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Fit(Microsoft.ML.IDataView)at Microsoft.ML.Data.EstimatorChain`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].Fit(Microsoft.ML.IDataView)
at Program.
in this line:
var model = pipeline.Fit(dataSplit.TrainSet);
the complete code is the following:
I used the same version of the packages that were used in the example:
MathNet.Numeric.Signed (5.00)
Microsoft.ML (2.0.0)
Microsoft.ML.TorchSharp (0.20.0)
TorchSharp-cuda-windows (0.98.3)
but the error persist.
Any idea?
The text was updated successfully, but these errors were encountered: