加载模型

重要

Windows 机器学习需要 ONNX 模型 1.2 或更高版本。

获得经过训练的 ONNX 模型后,你将使用应用分发 .onnx 模型文件。 你可以在 APPX 包中包含 .onnx 文件,或者对于桌面应用程序,它们可以位于应用程序可以访问的硬盘上的任何位置。

可通过多种方式在 LearningModel 类上使用静态方法加载模型:

LoadFromStream* 方法允许应用程序更好地控制模型的来源。 例如,应用可以选择在磁盘上加密模型,并在调用 LoadFromStream* 方法之一之前仅在内存中解密该模型。 其他选项包括从网络共享或其他媒体加载模型流。

小窍门

加载模型可能需要一些时间,因此请注意不要从 UI 线程调用 Load* 方法。

以下示例演示如何将模型加载到应用程序中:

private async LearningModel LoadModelAsync(string modelPath)
{
    // Load and create the model
    var modelFile = await StorageFile.GetFileFromApplicationUriAsync(
        new Uri(modelPath));

    LearningModel model =
        await LearningModel.LoadFromStorageFileAsync(modelFile);

    return model;
}

另请参阅

注释

使用以下资源获取有关 Windows ML 的帮助:

  • 若要询问或回答有关 Windows ML 的技术问题,请使用 Stack Overflow 上的 windows-machine-learning 标记。
  • 若要报告 bug,请在 GitHub 上提出问题。