iOS|iOS CoreML 模型转换工具coremltools(三)

翻译自:http://pythonhosted.org/coremltools/coremltools.utils.html

Utilities

coremltools.models.utils.evaluate_classifier(model,data,target='target',verbose=False)
评估 CoreML 分类器模型同时 同原始的模型做比较 (用于测试转换后的正确性).
Parameters:filename: [str | MLModel]
模型文件或者 MLModel.
data: [str | Dataframe]
评估模型的测试数据 (dataframe 或者 csv文件路径).
target: str
目标列名称
verbose: bool
设置为 true 可以输出更多信息.
参考
evaluate_regressor,evaluate_classifier_with_probabilities
例:
>>>metrics=coremltools.utils.evaluate_classifier(spec,'data_and_predictions.csv','target')>>>printmetrics{"samples": 10, num_errors: 0}
coremltools.models.utils.evaluate_classifier_with_probabilities(model,data,probabilities='probabilities',verbose=False)
评估 CoreML 分类器模型.
Parameters:filename: [str | Model]
模型文件或者 MLModel.
data: [str | Dataframe]
评估模型的测试数据 (dataframe 或者 csv文件路径).
probabilities: str
目标列名称
verbose: bool
设置为 true 可以输出更多信息.
coremltools.models.utils.evaluate_regressor(model,data,target='target',verbose=False)
评估 CoreML 回归模型同时 同原始的模型做比较 (用于测试转换后的正确性)
Parameters:filename: [str | MLModel]
模型文件或者 MLModel.
data: [str | Dataframe]
评估模型的测试数据 (dataframe 或者 csv文件路径).
target: str
目标列名称.
verbose: bool
设置为 true 可以输出更多信息.
参考
evaluate_classifier
例:
>>>metrics=coremltools.utils.evaluate_regressor(spec,'data_and_predictions.csv','target')>>>printmetrics{"samples": 10, "rmse": 0.0, max_error: 0.0}
coremltools.models.utils.evaluate_transformer(model,input_data,reference_output,verbose=False)
【iOS|iOS CoreML 模型转换工具coremltools(三)】Evaluate a transformer specification for testing.
Parameters:spec: [str | MLModel]
模型文件或者 MLModel.
input_data: list[dict]
评估模型的测试数据.
reference_output: list[dict]
模型的预期结果.
verbose: bool
设置为 true 可以输出更多信息.
参考
evaluate_regressor,evaluate_classifier
例:
>>>input_data=https://www.it610.com/article/[{'input_1':1,'input_2':2},{'input_1':3,'input_2':3}]>>>expected_output=[{'input_1':2.5,'input_2':2.0},{'input_1':1.3,'input_2':2.3}]>>>metrics=coremltools.utils.evaluate_transformer(scaler_spec,input_data,expected_output)
coremltools.models.utils.load_spec(filename)
从文件中加载protobuf 模型规范
Parameters:filename: str
能够加载到protobuf文件的磁盘位置 (合法的文件路径) .
Returns:model_spec: Model_pb
模型的Protobuf 表示
See also
save_spec
Examples
>>>spec=coremltools.utils.load_spec('HousePricer.mlmodel')
coremltools.models.utils.rename_feature(spec,current_name,new_name,rename_inputs=True,rename_outputs=True)
重命名规范中的特征名.
Parameters:spec: Model_pb
包含将要将要命名的特征的规范.
current_name: str
当前特征名称. 如果特征不存在, 此次调用不做任何操作.
new_name: str
修改后的特征名称.
rename_inputs: bool
只修改输入中的特征 (忽略输出特征)
rename_outputs: bool
只修改输出中的特征 (忽略输入特征)
例:
# In-place rename of spec>>>coremltools.utils.rename_feature(spec,'old_feature','new_feature_name')
coremltools.models.utils.save_spec(spec,filename)
将 protobuf 模型说明保存到文件.
Parameters:spec: Model_pb
Protobuf 模型
filename: str
保存路径.
参考
load_spec
例:
>>>coremltools.utils.save_spec(spec,'HousePricer.mlmodel')

    推荐阅读