我正在尝试使用从神经网络工具箱生成的神经网络和 simulink 模型。
NN 是倒立摆的控制器。每当我构建一个网络时,它总是会生成一个带有单个输入的网络。我的问题需要用两个输入一个输出来解决,然后,我必须把那个网络放在一个 simulink 块上,但我找不到正确的工具。我看到的唯一一个需要两个网络模型,因为我不知道为什么。
有人可以帮我吗?
我正在尝试使用从神经网络工具箱生成的神经网络和 simulink 模型。
NN 是倒立摆的控制器。每当我构建一个网络时,它总是会生成一个带有单个输入的网络。我的问题需要用两个输入一个输出来解决,然后,我必须把那个网络放在一个 simulink 块上,但我找不到正确的工具。我看到的唯一一个需要两个网络模型,因为我不知道为什么。
有人可以帮我吗?
在您尝试转换为 simulink 模块之前,您应该确保您训练的 NN 在 matlab 中正常工作。你是什么意思有一个单一的输入?所有输入都应位于相同的数据结构(例如矩阵)中,其中行数 = “输入”的数量。
这是一个使用 house_dataset 的示例。您只需在 matlab 命令行中键入“help house_dataset”即可获取此示例代码。
[x,t] = house_dataset;
net = fitnet(10);
net = train(net,x,t);
view(net)
y = net(x);
无论如何,x 是一个 13 x 506 的向量。训练好的网络有一个大小为 13 的输入:
网络输入{1}.size
答案=
13
您对训练有素的网络有何看法?你给它一个二维输入向量吗?
一旦您的网络经过训练并且您拥有正确的输入大小,您就可以使用 gensim 函数将网络传输到 simulink。进入 simulink 后,您可以通过使用诸如 mux 之类的东西构建输入向量并将其作为单个信号连接到网络来将输入发送到 NN。当然,您可以通过多种方式生成向量,而不必使用多路复用器。