Share via


ModelOperationsCatalog.CreatePredictionEngine 方法

定義

多載

CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema)

建立一次性預測的預測引擎。 它主要與 搭配 Load(Stream, DataViewSchema) 使用,其中會在載入模型期間擷取輸入架構。

CreatePredictionEngine<TSrc,TDst>(ITransformer, PredictionEngineOptions)

建立一次性預測的預測引擎。 它主要與 搭配 Load(Stream, DataViewSchema) 使用,其中會在載入模型期間擷取輸入架構。

CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition)

建立一次性預測的預測引擎, (預設使用方式) 。

CreatePredictionEngine<TSrc,TDst>(ITransformer, DataViewSchema)

建立一次性預測的預測引擎。 它主要與 搭配 Load(Stream, DataViewSchema) 使用,其中會在載入模型期間擷取輸入架構。

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)

類型參數

TSrc

定義輸入資料的類別。

TDst

定義輸出資料的類別。

參數

transformer
ITransformer

要用於預測的轉換器。

inputSchema
DataViewSchema

輸入架構。

傳回

適用於

CreatePredictionEngine<TSrc,TDst>(ITransformer, PredictionEngineOptions)

建立一次性預測的預測引擎。 它主要與 搭配 Load(Stream, DataViewSchema) 使用,其中會在載入模型期間擷取輸入架構。

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)

類型參數

TSrc

定義輸入資料的類別。

TDst

定義輸出資料的類別。

參數

transformer
ITransformer

要用於預測的轉換器。

options
PredictionEngineOptions

進階組態選項。

傳回

適用於

CreatePredictionEngine<TSrc,TDst>(ITransformer, Boolean, SchemaDefinition, SchemaDefinition)

建立一次性預測的預測引擎, (預設使用方式) 。

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)

類型參數

TSrc

定義輸入資料的類別。

TDst

定義輸出資料的類別。

參數

transformer
ITransformer

要用於預測的轉換器。

ignoreMissingColumns
Boolean

如果資料行存在, outputSchemaDefinition 但對應的成員不存在於 中 TDst ,是否擲回例外狀況。

inputSchemaDefinition
SchemaDefinition

輸入架構的其他設定。

outputSchemaDefinition
SchemaDefinition

輸出架構的其他設定。

傳回

範例

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

適用於