我正在使用Azure认知服务(又名CustomVision网站)来创建,训练和测试模型。我了解该站点的主要目标是创建一个可以在生产环境中运行模型的API。我应该提到我正在使用它来进行对象检测。
有时候,您必须支持脱机运行(这意味着您没有与Azure的连接,等等...)。我相信Microsoft知道并理解这一点,因为它们具有一项功能,可让您以多种不同的格式(例如TensorFlow,ONNX等)导出模型。
我遇到的问题尤其是当您导出到TensorFlow时,这正是我所需要的,它只会下载冻结的模型图(model.pb)。但是,有时您需要模型附带的.pbtxt文件或配置文件。我知道您可以生成一个pbtxt文件,但是为此您需要.config。
此外,一旦导出模型,关于模型的信息很少,甚至没有,例如输入图像的大小。我希望在某个地方看到更好的记录。例如,是否为300x300等?在不获取模型的配置或pbtxt的情况下,您必须通过将模型加载到TensorBoard或类似的方法来弄清楚输入信息(大小,名称等),以解决此问题。 ..)。此外,我们甚至不知道模型的基线是什么,是ResNet,SSD等吗?
因此,有人知道我在导出模型时如何获取这些丢失的文件吗?或者,有人知道当冻结的.pb文件全部保存后,如何生成pbtxt?
如果没有,我建议将它们作为Azure认知服务团队的改进。由于所有这些丢失的数据或信息,真的很难使用导出的模型。
谢谢!
答案 0 :(得分:0)
Custom Vision Service仅导出紧凑域。对于对象检测导出,在已下载的zip文件(model.pb,labels.txt)中有用于加载和运行对象检测模型的代码。除了导出模型,您还将找到用于执行该模型的Python代码。
答案 1 :(得分:0)
许多模型体系结构允许您更改网络输入大小,例如Yolo,这是从Custom Vision导出的体系结构。在这种情况下,在某处包含固定的输入大小是没有意义的。
Netron将是您的好朋友,并且非常易于使用,可以了解有关模型的详细信息。