LearningModelSession Конструкторы

Определение

Перегрузки

LearningModelSession(LearningModel)

Создает сеанс с использованием устройства по умолчанию.

LearningModelSession(LearningModel, LearningModelDevice)

Создает сеанс с использованием указанного устройства.

LearningModelSession(LearningModel, LearningModelDevice, LearningModelSessionOptions)

Создает сеанс с использованием указанного устройства и дополнительных параметров вывода.

LearningModelSession(LearningModel)

Создает сеанс с использованием устройства по умолчанию.

public:
 LearningModelSession(LearningModel ^ model);
 LearningModelSession(LearningModel const& model);
public LearningModelSession(LearningModel model);
function LearningModelSession(model)
Public Sub New (model As LearningModel)

Параметры

model
LearningModel

Обученная модель машинного обучения для этого сеанса.

Примеры

В следующем примере загружается модель и создается сеанс оценки с ней.

private async Task LoadModelAsync(LearningModel _model, string _modelFileName, LearningModelSession _session)
{
    // Only load the model one time.
    if (_model != null) return;

    try
    {
        // Load and create the model
        var modelFile = 
            await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///Assets/{_modelFileName}"));
        _model = await LearningModel.LoadFromStorageFileAsync(modelFile);

        // Create the evaluation session with the model and device.
        _session = new LearningModelSession(_model);
    }
    catch (Exception ex)
    {
        StatusBlock.Text = $"error: {ex.Message}";
        _model = null;
    }
}

Комментарии

Windows Server

Чтобы использовать этот API в Windows Server, необходимо использовать Windows Server 2019 с возможностями рабочего стола.

Потокобезопасность

Этот API является потокобезопасным.

Применяется к

LearningModelSession(LearningModel, LearningModelDevice)

Создает сеанс с использованием указанного устройства.

public:
 LearningModelSession(LearningModel ^ model, LearningModelDevice ^ deviceToRunOn);
 LearningModelSession(LearningModel const& model, LearningModelDevice const& deviceToRunOn);
public LearningModelSession(LearningModel model, LearningModelDevice deviceToRunOn);
function LearningModelSession(model, deviceToRunOn)
Public Sub New (model As LearningModel, deviceToRunOn As LearningModelDevice)

Параметры

model
LearningModel

Обученная модель машинного обучения для этого сеанса.

deviceToRunOn
LearningModelDevice

Устройство оценки сеанса.

Примеры

В следующем примере загружается модель, выбирается устройство, на котором будет оцениваться модель, и создается сеанс оценки.

private async Task LoadModelAsync(string _modelFileName, bool _useGPU, LearningModelSession _session)
{
    LearningModel _model;

    try
    {
        // Load and create the model
        var modelFile = 
            await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///Assets/{_modelFileName}"));
        _model = await LearningModel.LoadFromStorageFileAsync(modelFile);

        // Select the device to evaluate on
        LearningModelDevice device = null;
        if (_useGPU)
        {
            // Use a GPU or other DirectX device to evaluate the model.
            device = new LearningModelDevice(LearningModelDeviceKind.DirectX);
        }
        else
        {
            // Use the CPU to evaluate the model.
            device = new LearningModelDevice(LearningModelDeviceKind.Cpu);
        }

        // Create the evaluation session with the model and device.
        _session = new LearningModelSession(_model, device);

    }
    catch (Exception ex)
    {
        StatusBlock.Text = $"error: {ex.Message}";
        _model = null;
    }
}

Комментарии

Windows Server

Чтобы использовать этот API в Windows Server, необходимо использовать Windows Server 2019 с возможностями рабочего стола.

Потокобезопасность

Этот API является потокобезопасным.

Применяется к

LearningModelSession(LearningModel, LearningModelDevice, LearningModelSessionOptions)

Создает сеанс с использованием указанного устройства и дополнительных параметров вывода.

public:
 LearningModelSession(LearningModel ^ model, LearningModelDevice ^ deviceToRunOn, LearningModelSessionOptions ^ learningModelSessionOptions);
 LearningModelSession(LearningModel const& model, LearningModelDevice const& deviceToRunOn, LearningModelSessionOptions const& learningModelSessionOptions);
public LearningModelSession(LearningModel model, LearningModelDevice deviceToRunOn, LearningModelSessionOptions learningModelSessionOptions);
function LearningModelSession(model, deviceToRunOn, learningModelSessionOptions)
Public Sub New (model As LearningModel, deviceToRunOn As LearningModelDevice, learningModelSessionOptions As LearningModelSessionOptions)

Параметры

model
LearningModel

Обученная модель машинного обучения для этого сеанса.

deviceToRunOn
LearningModelDevice

Устройство оценки сеанса.

learningModelSessionOptions
LearningModelSessionOptions

Параметры, используемые для настройки создания и оценки сеанса.

Требования к Windows

Семейство устройств
Windows 10, version 1903 (появилось в 10.0.18362.0)
API contract
Windows.AI.MachineLearning.MachineLearningContract (появилось в v2.0)

Примеры

В следующем примере загружается модель и настраивается сеанс оценки с помощью LearningModelSessionOptions.

private LearningModelSessionOptions CreateSessionOptions()
{
    var options = new LearningModelSessionOptions();

    // Disable constant batch size optimizations
    options.BatchSizeOverride = 0;

    return options;
}

private async Task LoadModelAsync(string modelFileName)
{
    LearningModel model;
    LearningModelDevice device;
    LearningModelSession session;

    try
    {
        // Load and create the model.
        var modelFile = 
            await StorageFile.GetFileFromApplicationUriAsync(new Uri($"ms-appx:///Assets/{modelFileName}"));
        model = await LearningModel.LoadFromStorageFileAsync(modelFile);

        // Create default LearningModelDevice.
        device = new LearningModelDevice(LearningModelDeviceKind.Default);

        // Create LearningModelSessionOptions with necessary options set.
        LearningModelSessionOptions options = CreateSessionOptions();

        // Create the evaluation session with the model and LearningModelSessionOptions.
        session = new LearningModelSession(model, device, options);

    }
    catch (Exception ex)
    {
        StatusBlock.Text = $"error: {ex.Message}";
        model = null;
    }
}

Применяется к