ModelOperationsCatalog.CreatePredictionEngine ModelOperationsCatalog.CreatePredictionEngine ModelOperationsCatalog.CreatePredictionEngine Method

Definition

Overloads

CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema) CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema) 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, Boolean, SchemaDefinition, SchemaDefinition) CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition) CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition)

Create a prediction engine for one-time prediction (default usage).

CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema) CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema) 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 ITransformer ITransformer

The transformer to use for prediction.

inputSchema
DataViewSchema DataViewSchema DataViewSchema

Input schema.

Returns

CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition) CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition) 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 = null, Microsoft.ML.Data.SchemaDefinition outputSchemaDefinition = null) 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 = null, Optional outputSchemaDefinition As SchemaDefinition = null) 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 ITransformer ITransformer

The transformer to use for prediction.

ignoreMissingColumns
Boolean Boolean Boolean

Whether to throw an exception if a column exists in outputSchemaDefinition but the corresponding member doesn't exist in TDst.

inputSchemaDefinition
SchemaDefinition SchemaDefinition SchemaDefinition

Additional settings of the input schema.

outputSchemaDefinition
SchemaDefinition SchemaDefinition 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; }
        }
    }
}

Applies to