整数 3 在以下代码行中指定了什么:tflite::MicroMutableOpResolver<3>



我对tensorflow/keras有点陌生,我正在arduino上部署我的神经网络,我在互联网上到处找,找不到以下整数的作用(指定):

static tflite::MicroMutableOpResolver**<3>** micro_mutable_op_resolver;
micro_mutable_op_resolver.AddFullyConnected();//
micro_mutable_op_resolver.AddLogistic();//
micro_mutable_op_resolver.AddRelu();

如果我把0,1,2放入这个语句,我的代码不能正常工作,只有当数字是3或更大的时候才能正常工作。

提前感谢您的帮助!乔纳森。

这是一个模板参数,指定可以注册到tflite::MicroMutableOpResolver对象的最大操作数。

您在该行后面使用了三个*.Add函数调用(即注册三个操作),因此您需要解析器的容量至少为3。

TensorFlow是开源的,所以你总是可以从代码中寻找答案。在这里检查头文件。注意类定义:

template <unsigned int tOpCount>
class MicroMutableOpResolver : public MicroOpResolver {
...

tOpCount是您在代码中设置为3的值。如果你想了解它是如何使用的详细信息,你可以在header中跟踪它。

如果模板参数对你来说是新的(从这个问题看来你对c++也相当陌生),你可以在cppreference上得到你需要的所有细节(你的情况是一个"非类型模板参数")。任何像样的c++教程都应该以一种对新手更友好的方式来涵盖这个主题。

相关内容

最新更新