ModelOperationsCatalog.CreatePredictionEngine Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema) |
Create a prediction engine for one-time prediction. It's mainly used in conjunction with Load(Stream, DataViewSchema), where input schema is extracted during loading the model. |
CreatePredictionEngine<TSrc,TDst>(ITransformer, PredictionEngineOptions) |
Create a prediction engine for one-time prediction. It's mainly used in conjunction with Load(Stream, DataViewSchema), where input schema is extracted during loading the model. |
CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition) |
Create a prediction engine for one-time prediction (default usage). |
CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema)
Create a prediction engine for one-time prediction. It's mainly used in conjunction with Load(Stream, DataViewSchema), where input schema is extracted during loading the model.
public Microsoft.ML.PredictionEngine<TSrc,TDst> CreatePredictionEngine<TSrc,TDst> (Microsoft.ML.ITransformer transformer, Microsoft.ML.DataViewSchema inputSchema) where TSrc : class where TDst : class, new();
member this.CreatePredictionEngine : Microsoft.ML.ITransformer * Microsoft.ML.DataViewSchema -> Microsoft.ML.PredictionEngine<'Src, 'Dst (requires 'Src : null and 'Dst : null and 'Dst : (new : unit -> 'Dst))> (requires 'Src : null and 'Dst : null and 'Dst : (new : unit -> 'Dst))
Public Function CreatePredictionEngine(Of TSrc As Class, TDst As Class) (transformer As ITransformer, inputSchema As DataViewSchema) As PredictionEngine(Of TSrc, TDst)
Type Parameters
- TSrc
The class that defines the input data.
- TDst
The class that defines the output data.
Parameters
- transformer
- ITransformer
The transformer to use for prediction.
- inputSchema
- DataViewSchema
Input schema.
Returns
Applies to
CreatePredictionEngine<TSrc,TDst>(ITransformer, PredictionEngineOptions)
Create a prediction engine for one-time prediction. It's mainly used in conjunction with Load(Stream, DataViewSchema), where input schema is extracted during loading the model.
public Microsoft.ML.PredictionEngine<TSrc,TDst> CreatePredictionEngine<TSrc,TDst> (Microsoft.ML.ITransformer transformer, Microsoft.ML.PredictionEngineOptions options) where TSrc : class where TDst : class, new();
member this.CreatePredictionEngine : Microsoft.ML.ITransformer * Microsoft.ML.PredictionEngineOptions -> Microsoft.ML.PredictionEngine<'Src, 'Dst (requires 'Src : null and 'Dst : null and 'Dst : (new : unit -> 'Dst))> (requires 'Src : null and 'Dst : null and 'Dst : (new : unit -> 'Dst))
Public Function CreatePredictionEngine(Of TSrc As Class, TDst As Class) (transformer As ITransformer, options As PredictionEngineOptions) As PredictionEngine(Of TSrc, TDst)
Type Parameters
- TSrc
The class that defines the input data.
- TDst
The class that defines the output data.
Parameters
- transformer
- ITransformer
The transformer to use for prediction.
- options
- PredictionEngineOptions
Advanced configuration options.
Returns
Applies to
CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition)
Create a prediction engine for one-time prediction (default usage).
public Microsoft.ML.PredictionEngine<TSrc,TDst> CreatePredictionEngine<TSrc,TDst> (Microsoft.ML.ITransformer transformer, bool ignoreMissingColumns = true, Microsoft.ML.Data.SchemaDefinition inputSchemaDefinition = default, Microsoft.ML.Data.SchemaDefinition outputSchemaDefinition = default) where TSrc : class where TDst : class, new();
member this.CreatePredictionEngine : Microsoft.ML.ITransformer * bool * Microsoft.ML.Data.SchemaDefinition * Microsoft.ML.Data.SchemaDefinition -> Microsoft.ML.PredictionEngine<'Src, 'Dst (requires 'Src : null and 'Dst : null and 'Dst : (new : unit -> 'Dst))> (requires 'Src : null and 'Dst : null and 'Dst : (new : unit -> 'Dst))
Public Function CreatePredictionEngine(Of TSrc As Class, TDst As Class) (transformer As ITransformer, Optional ignoreMissingColumns As Boolean = true, Optional inputSchemaDefinition As SchemaDefinition = Nothing, Optional outputSchemaDefinition As SchemaDefinition = Nothing) As PredictionEngine(Of TSrc, TDst)
Type Parameters
- TSrc
The class that defines the input data.
- TDst
The class that defines the output data.
Parameters
- transformer
- ITransformer
The transformer to use for prediction.
- ignoreMissingColumns
- Boolean
Whether to throw an exception if a column exists in
outputSchemaDefinition
but the corresponding member doesn't exist in
TDst
.
- inputSchemaDefinition
- SchemaDefinition
Additional settings of the input schema.
- outputSchemaDefinition
- SchemaDefinition
Additional settings of the output schema.
Returns
Examples
using System;
using System.Collections.Generic;
using System.IO;
using Microsoft.ML;
namespace Samples.Dynamic.ModelOperations
{
public class SaveLoadModel
{
public static void Example()
{
// Create a new ML context, for ML.NET operations. It can be used for
// exception tracking and logging, as well as the source of randomness.
var mlContext = new MLContext();
// Generate sample data.
var data = new List<Data>()
{
new Data() { Value="abc" }
};
// Convert data to IDataView.
var dataView = mlContext.Data.LoadFromEnumerable(data);
var inputColumnName = nameof(Data.Value);
var outputColumnName = nameof(Transformation.Key);
// Transform.
ITransformer model = mlContext.Transforms.Conversion
.MapValueToKey(outputColumnName, inputColumnName).Fit(dataView);
// Save model.
mlContext.Model.Save(model, dataView.Schema, "model.zip");
// Load model.
using (var file = File.OpenRead("model.zip"))
model = mlContext.Model.Load(file, out DataViewSchema schema);
// Create a prediction engine from the model for feeding new data.
var engine = mlContext.Model
.CreatePredictionEngine<Data, Transformation>(model);
var transformation = engine.Predict(new Data() { Value = "abc" });
// Print transformation to console.
Console.WriteLine("Value: {0}\t Key:{1}", transformation.Value,
transformation.Key);
// Value: abc Key:1
}
private class Data
{
public string Value { get; set; }
}
private class Transformation
{
public string Value { get; set; }
public uint Key { get; set; }
}
}
}