我正在尝试构建一个神经网络作为生成模型,以预测一系列向量之后的下一个向量(每个向量都是长度实数的分布n
)。
我的想法是获取k
先前的序列并将它们连接起来以获得k
xn
输入向量。为了训练模型,我将序列中的下一个向量作为输出。当我正在寻找非确定性输出时,我将使用具有低梯度的 sigmoid 激活函数。
这个程序看起来合理吗?
希望它确实如此,我尝试在 R 中同时使用nnet
和neuralnet
库来实现它,但是在我遇到的文档和示例中,输入和输出向量的长度似乎必须相同。在这些模块中的任何一个中训练不同长度的输入/输出向量的语法是什么?
我的输入向量的样本是:
[,1]
[1,] 0
[2,] 0
[3,] 0.6
[4,] 0.4
[5,] 0
[6,] 0
[7,] 0.06666667
[8,] 0.6666667
[9,] 0
[10,] 0.2666667
[11,] 0
[12,] 0.4
[13,] 0
[14,] 0
[15,] 0.6
和输出向量:
[,1]
[1,] 0
[2,] 0
[3,] 0.8571429
[4,] 0
[5,] 0.1428571
注意 上面的示例有n=5
, k=3
,尽管我的实际数据集有n~200
. 在这两种情况下,各个向量都归一化为 1。
任何帮助深表感谢!