美文网首页CoreML
iOS CoreML 模型转换工具coremltools(三)

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

作者: RichardLH | 来源:发表于2017-06-13 08:55 被阅读116次

    翻译自: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)

    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=[{'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')

    相关文章

      网友评论

        本文标题:iOS CoreML 模型转换工具coremltools(三)

        本文链接:https://www.haomeiwen.com/subject/vozrqxtx.html