深度学习基础与分布式表示:原理、实践与应用
1. 深度学习基础
在深度学习领域,自动编码器的输出结果值得关注。输入示例的解码输出样本展示了不同训练轮次下自动编码器对输入的重建情况。例如,在训练数据上经过不同轮次训练后,自动编码器的输出会有所变化。在第1个训练轮次后和第100个训练轮次后,输入的重建结果呈现出不同的特征。观察这些重建的输入,可以发现它们似乎不如某些示例那样清晰,这主要是由于均方误差(MSE)损失函数的作用。MSE损失函数在计算平方误差时,倾向于将所有值拉向均值,更注重输入的平均值而非特定区域。
受限玻尔兹曼机(RBM)在训练过程中学习无监督特征。学习到这些无监督特征后,可以使用这些特征创建低维、有标签的数据集,用于监督分类器。以下是定义RBM的代码:
class RBM(nn.Module):
def __init__(self, nvis=3072, nhin=128, k=5):
super(RBM, self).__init__()
self.W = nn.Parameter(torch.randn(nhin, nvis) * 1e-2)
self.vbias = nn.Parameter(torch.zeros(nvis))
self.hbias = nn.Parameter(torch.zeros(nhin))
self.k = k
def sample_from_p(self, p):
return F.relu(torch.sign(p - Variable(torch.rand
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



