自定义运算符

Windows 机器学习自定义运算符 Win32 API 位于 MLOperatorAuthor.h 中。

API

下面是自定义运算符 API 及其语法和说明的列表。

枚举

名称 描述
MLOperatorAttributeType 指定属性的类型。 每个属性类型在数值上与相应的 ONNX 类型匹配。
MLOperatorEdgeType 指定运算符输入或输出边缘的类型。
MLOperatorExecutionType 指定内核是使用 CPU 还是 GPU 进行计算。
MLOperatorKernelOptions 指定注册自定义运算符内核时将使用的选项。
MLOperatorParameterOptions 指定运算符输入和输出边缘的选项标志。
MLOperatorSchemaEdgeTypeFormat 指定描述输入和输出边缘类型的方式。
MLOperatorTensorDataType 指定张量的数据类型。 每个数据类型在数值上与相应的 ONNX 类型匹配。

函数

名称 描述
MLCreateOperatorRegistry 创建可用于注册自定义运算符内核和自定义运算符架构的 IMLOperatorRegistry 实例。

接口

名称 描述
IMLOperatorAttributes 表示通过使用该运算符的模型确定的运算符属性的值。
IMLOperatorKernel 由自定义运算符内核实现。
IMLOperatorKernelContext 提供有关计算内核时运算符使用情况的信息。
IMLOperatorKernelCreationContext 提供有关创建内核时运算符使用情况的信息。
IMLOperatorKernelFactory 由自定义运算符内核的作者实现,以创建该内核的实例。
IMLOperatorRegistry 表示自定义运算符内核和架构的注册表实例。
IMLOperatorShapeInferenceContext 提供有关调用形状推理器时的运算符使用情况的信息。
IMLOperatorShapeInferrer 由形状推理器实现,用于推断运算符的输出张量边缘的形状。
IMLOperatorTensor 在计算自定义运算符内核期间使用的张量表示形式。
IMLOperatorTensorShapeDescription 表示运算符的输入和输出张量形状集。
IMLOperatorTypeInferenceContext 提供有关调用类型推理器时的运算符使用情况的信息。
IMLOperatorTypeInferrer 由类型推理器实现,用于推断运算符的输出边缘类型。

结构

名称 描述
MLOperatorAttribute 指定自定义运算符的属性名称和属性。
MLOperatorAttributeNameValue 指定自定义运算符的属性名称和值。
MLOperatorEdgeDescription 指定运算符输入或输出边缘的属性。
MLOperatorEdgeTypeConstraint 指定自定义运算符内核和架构中支持的边缘类型约束。
MLOperatorKernelDescription 用于注册该架构的自定义运算符内核的说明。
MLOperatorSchemaDescription 用于注册该架构的自定义运算符架构的说明。
MLOperatorSchemaEdgeDescription 指定有关运算符输入或输出边缘的信息。
MLOperatorSetId 指定运算符集的标识。

注意

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

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