ML.NET Erstellen Sie die Vorhersage -Engine mithilfe der dynamischen KlasseC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 ML.NET Erstellen Sie die Vorhersage -Engine mithilfe der dynamischen Klasse

Post by Anonymous »

Ich habe eine ML.NET -Anwendung, in der ich nach der Kompilierung der Zeit für das Training dynamisch Schnittstellen -Idataview erstellen muss. Ich habe diesen Thread gefunden und konnte erfolgreich eine dynamische Schnittstelle für den Trainingsdatensatz erstellen und dann ein Modell trainieren. Mein Problem kommt, wenn ich versuche, dieselbe Schnittstelle zu verwenden, um eine Vorhersage mit diesem geschulten Modell zu erstellen. Die Dokumente zeigen, dass Sie eine Vorhersage -Engine erstellen sollten, in der Sie sowohl die Eingangs- als auch die Ausgangsklassentypen definieren müssen, um die Engine zu erstellen. So etwas wie: < /p>

Code: Select all

mlContext.Model.CreatePredictionEngine(ITransformer, DataViewSchema)
wobei tsrc und tdst Klassentypen sind Zeit kompilieren. Mein Problem ist, dass ich die Struktur des Eingabetyps zur Kompilierungszeit nicht kenne und eine dynamische Schnittstelle für die Eingabedatenquelle erstellen muss. Das Output -Class -Objekt kann definiert werden, da die Parameter bekannt sind, aber ich bin mir nicht sicher, wie ich mit einem dynamischen Eingang fortfahren kann. < /P>
Ich dachte, ich könnte vielleicht versuchen, etwas wie zu verwenden GettType () auf der Schnittstelle, aber es heißt, dass "implizit typische Variablen nicht mehrere Deklaratoren haben können". Mein vereinfachtes Beispiel sieht so aus: < /p>

Code: Select all

public class ModelOutput
{
public string PredictedLabel { get; set; }
public float[] Score { get; set; }
}

public class MakePrediction
{
protected void Solve(IDataView data, ITransformer model)
{
var mlContext = new MLContext();
var engine = mlContext.Model.CreatePredictionEngine(model, data.Schema);
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post