嵌入

嵌入是一种相对低维的空间,您可以将高维向量转换为这种低维空间。借助嵌入,可以更轻松地对表示字词的稀疏向量等大型输入进行机器学习。理想情况下,嵌入会将语义上相似的输入置于嵌入空间中彼此靠近的位置,以捕获输入的一些语义。嵌套可以跨模型学习和重复使用。

嵌入

  • 输入:50 万个用户已经选择观看的 100 万部影片
  • 任务:向用户推荐影片

为了解决此问题,您需要使用一些方法来确定哪些影片彼此相似。

按一行从左到右排序的电影列表。从左侧开始,《怪物史莱克》、《超人总动员》、《哈利·波特》、《哈利·波特》和《黑与明星》

同一张幻灯片列出了同一影片,但按两个维度排列,例如《怪物史莱克》就位于《超人总动员》的左侧和上方

与上图类似,但每个象限都有轴和标签。电影排列如下:右上第一象限是成人大片,包括《星球大战》、《黑暗骑士崛起》、《英雄》和《卧虎藏龙》右下方的第二个象限是成人艺术片,包含《电影》和《记忆碎片》,并添加到“成人艺术片”象限中。左下第三象限是儿童艺术片,它添加了电影《疯狂约会美丽都》和《华莱士与大杂物》的“儿童艺术片”象限。左上角的第四个象限是儿童大片,包括《怪物史莱克》、《超人总动员》和《哈利·波特》,并且《摇滚学校》已经添加到《儿童大片》象限中。

与上一张幻灯片的排列方式相同。'《怪物史莱克》和《蓝》突出显示了其二维嵌入平面中的坐标示例。

  • 假设用户对电影的兴趣可以通过 d 个方面大致解释
  • 每部电影都变成一个 d 维点,其中维度 d 中的值表示影片与该方面相符的程度
  • 可以从数据中学习嵌入
  • 不需要单独的训练过程 - 嵌入层只是一个隐藏层,每个维度一个单元
  • 监督式信息(例如,用户观看了两部相同的电影)针对期望的任务定制学习的嵌入
  • 隐藏的单元直观地探索了如何整理 d 维空间中的各项,从而以最佳方式优化最终目标
  • 每个样本(此矩阵中的一行)都是用户已观看的特征(影片)的稀疏矢量
  • 此示例的密集表示形式为:(0, 1, 0, 1, 0, 0, 0, 1)

从空间和时间的角度而言,效率并不高。

一个表格,其中每个列标题都是一部电影,每一行代表一个用户及其观看过的电影。
  • 构建一个字典,将每个特征映射到一个整数,范围为 0、...、# 部电影 - 1
  • 将稀疏向量有效地表示为用户观看过的电影。这可以表示为: 根据影片右侧稀疏矢量中的列位置,《疯狂约会美丽都》、《华尔兹与格罗米特》和《记忆碎片》能高效表示为 (0,1,999999)
以表格形式表示的稀疏向量,每一列表示一部电影,每一行代表一个用户。该表包含前面图表中的影片,编号为 1 到 999999。如果用户已观看电影,则勾选表格中的每个单元格。

预测房屋售价的回归问题:

用于预测房屋售价的深度神经网络示意图

预测房屋售价的回归问题:

用于预测房屋售价的深度神经网络图(突出显示稀疏矢量编码)

预测房屋售价的回归问题:

用于预测房屋售价的深度神经网络图(突出显示的隐藏三维嵌入层)

预测房屋售价的回归问题:

用于预测房屋售价的深度神经网络图(突出显示更多纬度和经度输入功能)

预测房屋售价的回归问题:

深度神经网络用于预测房屋售价的深度神经网络(突出显示了输入到多个隐藏层中的输入特征)

预测房屋售价的回归问题:

用于预测房屋售价的深度神经网络图(突出显示深度神经网络的输出)

用于预测手写数字的多类别分类:

用于预测手写数字的深度神经网络示意图

用于预测手写数字的多类别分类:

用于预测手写数字的深度神经网络(突出显示输入稀疏向量编码)的示意图

用于预测手写数字的多类别分类:

用于预测手写数字的深度神经网络的示意图(突出显示的其他功能)

用于预测手写数字的多类别分类:

用于预测手写数字的深度神经网络(突出显示三维嵌入)示意图

用于预测手写数字的多类别分类:

用于预测手写数字的深度神经网络图(突出显示的隐藏层)

用于预测手写数字的多类别分类:

用于预测手写数字的深度神经网络的示意图(突出显示对数层)

用于预测手写数字的多类别分类:

用于预测手写数字的深度神经网络的示意图(突出显示目标类别层)

协同过滤以预测推荐的电影:

深度神经网络用于预测要推荐哪些电影的示意图

协同过滤以预测推荐的电影:

深度神经网络用于预测要推荐的影片的示意图(突出显示目标类层)

协同过滤以预测推荐的电影:

深度神经网络用于预测要推荐哪部电影的图(突出显示了稀疏向量编码)

协同过滤以预测推荐的电影:

深度神经网络用于预测推荐的电影的图示(突出显示三维嵌入)

协同过滤以预测推荐的电影:

深度神经网络用于预测要推荐哪部电影的图(突出显示了其他功能)

协同过滤以预测推荐的电影:

深度神经网络用于预测要推荐哪些电影的深度图(突出显示的隐藏层)

协同过滤以预测推荐的电影:

用于预测推荐的电影的深度神经网络图(突出显示了对数层)

深度网络

  • 每个隐藏单元都对应一个维度(潜在功能)
  • 影片和隐藏层之间的边缘权重是坐标值
  • 深度神经网络的树形图,其中最低层中的某个节点连接到了下一层中的三个点

单个影片嵌入的几何视图

三维空间中的一个点,对应于深度神经网络示意图中的较低层节点。
  • 高维度嵌入可以更准确地表示输入值之间的关系
  • 但维度越多,过拟合的可能性就越高,训练速度也会越慢
  • 经验法则(一个不错的起点,但应使用验证数据进行调整):
  • $$ dimensions \approx \sqrt[4]{possible\;values} $$
  • 嵌入会以相似项彼此靠近的方式将项(例如影片、文本等)映射到低维实向量
  • 嵌套也可应用于密集数据(如音频),以创建有意义的相似度指标
  • 联合嵌入多种数据类型(例如文本、图片、音频等)以定义它们之间的相似性