【发布时间】:2015-12-21 15:06:09
【问题描述】:
我正在努力学习深度学习。
在火炬教程中,
https://github.com/torch/tutorials/blob/master/2_supervised/2_model.lua
https://github.com/torch/tutorials/blob/master/3_unsupervised/2_models.lua
监督模型
-- Simple 2-layer neural network, with tanh hidden units
model = nn.Sequential()
model:add(nn.Reshape(ninputs))
model:add(nn.Linear(ninputs,nhiddens))
model:add(nn.Tanh())
model:add(nn.Linear(nhiddens,noutputs))
无监督模型
-- encoder
encoder = nn.Sequential()
encoder:add(nn.Linear(inputSize,outputSize))
encoder:add(nn.Tanh())
encoder:add(nn.Diag(outputSize))
-- decoder
decoder = nn.Sequential()
decoder:add(nn.Linear(outputSize,inputSize))
-- complete model
module = unsup.AutoEncoder(encoder, decoder, params.beta)
为什么无监督模型需要实现 nn.Diag ?
提前致谢。
【问题讨论】:
-
您实际上应该在torch mailing group 上问这个问题。你更有可能在那里得到答案。 (我也对这个问题很好奇,所以请在那里发帖)
-
只是按比例缩放,也许...
标签: deep-learning torch unsupervised-learning