Поделиться через


LearningModel Класс

Определение

Представляет обученную модель машинного обучения.

public ref class LearningModel sealed : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.AI.MachineLearning.MachineLearningContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class LearningModel final : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.AI.MachineLearning.MachineLearningContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class LearningModel : System.IDisposable
Public NotInheritable Class LearningModel
Implements IDisposable
Наследование
Object Platform::Object IInspectable LearningModel
Атрибуты
Реализации

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

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

Примеры

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

private async Task LoadModelAsync(string _modelFileName)
{
    LearningModel _model;
    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 the evaluation session with the model
        _session = new LearningModelSession(_model);

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

Комментарии

Это main объект, используемый для взаимодействия с Windows ML. Его можно использовать для загрузки, привязки и оценки обученных моделей ONNX:

  1. Загрузите модель с помощью одного из конструкторов Load*.
  2. Перечислите InputFeatures и OutputFeatures и привяжите их к модели.
  3. Создайте LearningModelSession и evalaute.

Windows Server

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

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

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

Свойства

Author

Имя автора модели.

Description

Описание модели.

Domain

Домен модели.

InputFeatures

Список входных функций модели.

Metadata

Необработанные <строковые> метаданные из модели ONNX.

Name

Имя модели

OutputFeatures

Список выходных возможностей модели.

Version

Версия модели.

Методы

Close()

Освобождает модель ONNX в памяти. После вызова этого метода невозможно создать больше объектов LearningModelSession .

Dispose()

Выполняет определяемые приложением задачи, связанные с удалением, высвобождением или сбросом неуправляемых ресурсов.

LoadFromFilePath(String, ILearningModelOperatorProvider)

Загружает модель ONNX из файла на диске.

LoadFromFilePath(String)

Загружает модель ONNX из файла на диске.

LoadFromStorageFileAsync(IStorageFile, ILearningModelOperatorProvider)

Загружает модель ONNX из IStorageFile асинхронно.

LoadFromStorageFileAsync(IStorageFile)

Загружает модель ONNX из IStorageFile асинхронно.

LoadFromStream(IRandomAccessStreamReference, ILearningModelOperatorProvider)

Загружает модель ONNX из потока.

LoadFromStream(IRandomAccessStreamReference)

Загружает модель ONNX из потока.

LoadFromStreamAsync(IRandomAccessStreamReference, ILearningModelOperatorProvider)

Загружает модель ONNX из потока асинхронно.

LoadFromStreamAsync(IRandomAccessStreamReference)

Загружает модель ONNX из потока асинхронно.

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

См. также раздел