C++元编程——DBN实现
1、多层RBM堆叠,最后采用罗杰斯特回归进行分类选择;2、采用RBM堆叠,然后采用BP神经网络进行梯度下降训练,得到最终的权重;3、多层堆叠RBM,在最后一层加上标志位输入;4、多层堆叠RBM,采用睡醒方式训练;5、多层堆叠RBM,每层RBM上行和下行的权重不同,非首尾层RBM的上行权重为下行权重2倍。由于说法太多,又没有时间一一证明,就用1实现了一个。但是第5种实现方法好像理论依据比较充足,后期有时间再实现吧。下面是多层RBM堆叠,最后采用softmax激活函数的BP神经网络进行模式判别。