嵌入:互动练习

以下基于 TensorFlow Embedding Projector 的 widget 会将 10,000 个 word2vec 静态向量展平到 3D 空间中。这种维度合并可能会造成误导,因为在原始高维空间中彼此最接近的点在 3D 投影中可能会显得相距更远。最接近的 n 个点以紫色突出显示,n 由用户在 Isolate __ points 中设定。右侧的边栏会标识最近的近邻。

在这些实验中,您将使用上面的 widget 中的 word2vec 嵌入。

任务 1

尝试查找以下内容的 20 个最近邻,并查看这些组在云中的分布情况。

  • iiithirdthree
  • taoway
  • orangeyellowjuice

您对这些结果有何发现?

点击此处查看我们的答案

尽管 iiithirdthree 在语义上相似,但它们在文本中出现的上下文不同,并且在该嵌入空间中似乎没有靠得很近。在 word2vec 中,iiiiv 比离 third 更近。

同样,虽然 waytao 的直接翻译,但在所用数据集中,这两个字词最常与完全不同的字词组合在一起,因此这两个向量相差很大。

orange 的前几个最近邻是颜色,但与 orange 的水果含义相关的 juicepeel 分别显示为第 14 和第 18 个最近邻。与此同时,取自奥兰治亲王含义的 prince 排在第 17 位。在投影中,最接近 orange 的字词是 yellow 和其他颜色,而最接近 juice 的字词不包含 orange

任务 2

尝试找出训练数据的一些特征。例如,尝试查找以下内容的 100 个最近邻,并查看这些组在云中的所处位置:

  • bostonparistokyodelhimoscowseoul(这道题有陷阱)
  • janesarahjohnpeterrosajuan

点击此处查看我们的答案

boston 的许多最近邻都是美国的其他城市。paris 的许多最近邻都是欧洲的其他城市。tokyodelhi 似乎没有类似的结果:一个与全球各地的旅行枢纽城市相关,另一个与 india 和相关字词相关。seoul 则完全没有出现在这个经过精简的字词向量集中。

该数据集似乎包含许多与美国国家地理位置相关的文档,一些文档与欧洲地区地理位置相关,但对其他国家/地区的覆盖范围不够精细。

同样,此数据集似乎包含许多男性英语名字、一些女性英语名字,而其他语言的名字数量要少得多。请注意,Don Rosa 曾为迪士尼创作过《Scrooge McDuck》漫画,这可能是“scrooge”和“mcduck”是“rosa”的最近邻的原因。

word2vec 提供的预训练字词向量实际上是基于截至 2013 年的 Google 新闻报道进行训练的。

任务 3

嵌入不限于字词。还可以嵌入图片、音频和其他数据。在此任务中:

  1. 打开 TensorFlow 的 Embedding Projector
  2. 在标题为 Data 的左侧边栏中,选择 Mnist with images。系统随即会显示手写数字 MNIST 数据库的嵌入投影。
  3. 点击以停止轮播,然后选择一张图片。根据需要放大和缩小。
  4. 在右侧边栏中查找最近邻。有什么意外的发现吗?
  • 为什么某些 7 的最近邻是 1?而某些 8 的最近邻是 9
  • 投影空间边缘的图片是否与投影空间中心的图片有所不同?

请注意,创建这些嵌入的模型会接收图片数据(即像素),并为每张图片选择一个数值向量表示法。该模型不会自动推测手写数字图片与数字本身之间的联系。

点击此处查看我们的答案

由于形状相似,一些较窄的 7 的向量表示法会更靠近手写 1 的向量。某些 89,甚至某些 53 也会发生同样的情况。

投影空间外部的手写数字看起来是更容易辨认的九位数字之一,并且不易与其他数字混淆。