Ich habe ein Problem mit Microsoft.ml in C# und ich hatte gehofft, dass jemand mir helfen kann. LightGbmBinaryTrainer modelTrainer = mlContext.BinaryClassification.Trainers.LightGbm(options);
var transformer = mlContext.Transforms
.CopyColumns("Label", nameof(TrainingDataPoint.Label))
.Append(mlContext.Transforms.CopyColumns("Weight", "Weight"))
.Append(mlContext.Transforms.Categorical.OneHotEncoding("Features", nameof(TrainingDataPoint.Features)))
.AppendCacheCheckpoint(mlContext);
var trainingPipeline = transformer.Append(modelTrainer);
IDataView dataView = mlContext.Data.LoadFromEnumerable(data, this._schema);
var dataSplit mlContext.Data.TrainTestSplit(dataView, testFraction: 0.2, null, SEED);
var model = trainingPipeline.Fit(dataSplit.TrainSet);
< /code>
Die LightGBMBMINYTRAINER -Klasse hat die Option, sowohl einen Test als auch einen Validierungssatz mit "Anpassung" zu "anpassen": < /p>
modelTrainer.Fit(dataSplit.TrainSet, dataSplit.TestSet);
< /code>
Ich habe dies an anderen Orten zu großer Wirkung verwendet, aber in meinem obigen Anwendungsfall muss ich eine komplexere TrainingPipeline erstellen. Das resultierende Objekt, auf das ich "Fit" nennen muss, hat diese Methode -Signatur des LGBM nicht zur Verfügung. Gibt es eine Möglichkeit, dass ich das zum Laufen bringen kann? Entweder durch Anhänge einer anderen Ebene an meine Pipeline oder auf andere Weise?>
ML.NET -Modelltraining unter Verwendung von Trainings- und Validierungssätzen ⇐ C#
-
- Similar Topics
- Replies
- Views
- Last post