我正在尝试构建一个神经网络作为生成模型,以预测一系列向量之后的下一个向量(每个向量都是长度实数的分布n)。
我的想法是获取k先前的序列并将它们连接起来以获得kxn输入向量。为了训练模型,我将序列中的下一个向量作为输出。当我正在寻找非确定性输出时,我将使用具有低梯度的 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。
任何帮助深表感谢!