嘿,我有一个.pth格式的模型,我决定将这个模型转换成.pth -> .onnx -> .mlmodel的apple .mlmodel
我使用coremltools将输入转换为图像,但我需要将输出转换为双精度。现在我有了MultiArray (Float32) MultiArray of shape (1,1,1,1,1)之类的东西。第一和第二维度分别对应于序列和批次大小
我试着做这样的东西
import coremltools
from coremltools.proto import FeatureTypes_pb2 as ft
spec = coremltools.utils.load_spec("ios.mlmodel")
output = spec.description.output[0]
output.type = ft.DoubleFeatureType
model.save('testowymodel2.mlmodel')发布于 2020-01-12 06:44:45
定义此函数:
import coremltools.proto.FeatureTypes_pb2 as ft
def update_multiarray_to_double(feature):
if feature.type.HasField("multiArrayType"):
feature.type.multiArrayType.dataType = ft.ArrayFeatureType.DOUBLE然后这样叫它:
for feature in spec.description.output:
update_multiarray_to_double(feature)
coremltools.utils.save_spec(spec, "woot.mlmodel")https://stackoverflow.com/questions/59698274
复制相似问题