ComputeModel
返回包含核心 ML 模型评估结果的 JSON 对象。
格式
对于常规模型:
ComputeModel (模型名称;参数名称1;值1)
对于视觉模型:
ComputeModel (模型名称;"image";值1;"confidenceLowerLimit";returnAtLeastOne)
参数
模型名称
- 要解析的模型的名称。该值必须与先前加载的模型的名称相匹配。
参数名称1
- 模型设计者定义的输入参数的名称。在使用模型之前,您必须知道每一个参数的名称。
值1
- 模型输入参数的值。
image
(仅限于视觉模型)- 模型将要解析的数据类型。
confidenceLowerLimit
(仅限于视觉模型)(可选)- 通过排除小于指定值的结果来限制视觉模型返回的结果数量。该必须介于 0.0 和 1.0 之间。
returnAtLeastOne
(仅限于视觉模型)- 真(非零)或假(零)值。如果 confidenceLowerLimit
的值排除了所有结果,并且:
- 如果
returnAtLeastOne
为真,则返回最高置信度的结果 - 如果
returnAtLeastOne
为假或者未指定,则返回空字符串
返回的数据类型
文本
原始版本
19.0
说明
返回的对象可以一组名称-值对,也可以是单个名称-值对,具体取决于所解析模型的定义。
注释
- 在使用 ComputeModel 之前,必须先使用配置机器学习模型脚本步骤加载 Core ML 模型。
- 输入参数后必须紧跟其各自的值,并且可以使用多个输入参数-值对。
- 如果结果包含两个具有相同置信度的匹配项,则仅返回第一个值。
- 仅 iOS、iPadOS 和 macOS 上支持此功能。
示例 1
假定已经加载了一个名为 MobileNet
的模型,并且一个名为 myImageField
的容器字段位于当前布局上(或者可用于计算):
ComputeModel ( "MobileNet"; "image"; myImageField )
使用给定的模型评估 myImageField
中的图像并返回以下 JSON 字符串(为了清晰,已进行格式化;并且为了简洁,已删除一些行):
[
{
"classification" : "grand piano, grand",
"confidence" :0.998073041439056
},
{
"classification" : "upright, upright piano",
"confidence" :0.00192673446144909
},
{
"classification" : "pool table, billiard table, snooker table",
"confidence" :8.34678601790984e-08
},
{
"classification" : "dining table, board",
"confidence" :2.60599577472931e-08
},
{
"classification" : "puffer, pufferfish, blowfish, globefish",
"confidence" :5.19516656696278e-18
}
]
示例 2
使用示例 1 中的相同模型、容器字段和图像,进行以下计算:
ComputeModel ("MobileNet"; "image"; myImageField; "confidenceLowerLimit"; 1.0; "returnAtLeastOne"; 1)
返回 JSON 字符串:
为 confidenceLowerLimit
传递 1.0 的值将排除所有结果。但是,由于 returnAtLeastOne
设置为非零值,因此将返回具有最高置信度的结果。