2

我最近了解了自动编码器,并计划构建一个作为具有隐式反馈的推荐系统的一部分。

根据经典自动编码器的工作原理,它们似乎可用于重构分量不一定为 0 或 1 的向量。然而,所有介绍性材料似乎都表明自动编码器对二进制向量进行操作,x = [0,1] ^d,如此处,或本文第 2.2 节。

为了将自动编码器用于非二进制向量,在我看来唯一的区别是应该使用 L2 误差函数而不是适用于二进制情况的交叉熵。

如果有人可以为我澄清这一点,我将不胜感激。

4

1 回答 1

3

你混淆了符号

x e [0, 1]^d

表示“x 属于作为 d 维单位超立方体的空间”。要说“x 是长度为 d 的二进制向量”,你会写

x e {0, 1}^d

注意不同的括号。[0, 1]一个区间,而不是一组 2 个元素。

因此,没有人声称自动编码器需要二进制输入但它不需要,它是在整个 R^d 空间中定义的(但是由于各种原因,使用来自某个有限子集的值更容易,因此 [0, 1] 超立方体,我们有很好的初始化启发式方法)。

于 2016-07-01T19:31:27.933 回答