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가 없는 경우 예외를 throw할지 여부입니다.

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

적용 대상