dlib mlp::kernel_1a_c 内部成员初始化 class

dlib mlp::kernel_1a_c member initialization inside a class

我在神经网络示例中使用 dlib。 dlib neural network

我收到错误:

错误:没有匹配函数来调用‘dlib::mlp_kernel_c::mlp_kernel_c()

我正在尝试初始化

"mlp::kernel_1a_c net(2,5);"

class 中的变量,但我遇到了各种错误。这是与我的问题相关的代码 :

#ifndef MYCLASS_H
#define MYCLASS_H
#include <dlib/mlp.h>
typedef dlib::mlp::kernel_1a_c mlp_trainer_type;
Class MyClass:
 public:
  MyClassConstructure()
  {
     /// After declaration, how do I initialize my_neural_network_ here?
     // my_neural_network_(5, 5);  ????
  }
 private:
  /* this part fails, even without using the typedef. */
  mlp_trainer_type mouth_neural_network_;
 #end

即使我这样做也不起作用:

private:
  mlp_trainer_type mouth_neural_network_(2,5);

或者如果我将其声明并定义为 public 变量。 我该如何解决这个问题?我不需要全局变量。

我还使用 dlib 中的 SVM 库,它可以在我的 class 中使用。只是MLP不行。

该程序仅使用 dlib 的 SVM 即可运行,直到我今天包含该神经私有变量。

您尝试使用的 class mlp_kernel_c 没有默认构造函数。进入构造函数体之前需要先初始化成员变量:

MyConstructor() : mouth_neural_network_(2,5)
{
     //Other stuff
}