以下基于 TensorFlow Embedding Projector 的 widget 会将 10,000 个 word2vec
静态向量展平到 3D 空间中。这种维度合并可能会造成误导,因为在原始高维空间中彼此最接近的点在 3D 投影中可能会显得相距更远。最接近的 n 个点以紫色突出显示,n 由用户在 Isolate __ points 中设定。右侧的边栏会标识最近的近邻。
在这些实验中,您将使用上面的 widget 中的 word2vec
嵌入。
任务 1
尝试查找以下内容的 20 个最近邻,并查看这些组在云中的分布情况。
iii
、third
和three
tao
和way
orange
、yellow
和juice
您对这些结果有何发现?
点击此处查看我们的答案
尽管 iii
、third
和 three
在语义上相似,但它们在文本中出现的上下文不同,并且在该嵌入空间中似乎没有靠得很近。在 word2vec
中,iii
离 iv
比离 third
更近。
同样,虽然 way
是 tao
的直接翻译,但在所用数据集中,这两个字词最常与完全不同的字词组合在一起,因此这两个向量相差很大。
orange
的前几个最近邻是颜色,但与 orange
的水果含义相关的 juice
和 peel
分别显示为第 14 和第 18 个最近邻。与此同时,取自奥兰治亲王含义的 prince
排在第 17 位。在投影中,最接近 orange
的字词是 yellow
和其他颜色,而最接近 juice
的字词不包含 orange
。
任务 2
尝试找出训练数据的一些特征。例如,尝试查找以下内容的 100 个最近邻,并查看这些组在云中的所处位置:
boston
、paris
、tokyo
、delhi
、moscow
和seoul
(这道题有陷阱)jane
、sarah
、john
、peter
、rosa
和juan
点击此处查看我们的答案
boston
的许多最近邻都是美国的其他城市。paris
的许多最近邻都是欧洲的其他城市。tokyo
和 delhi
似乎没有类似的结果:一个与全球各地的旅行枢纽城市相关,另一个与 india
和相关字词相关。seoul
则完全没有出现在这个经过精简的字词向量集中。
该数据集似乎包含许多与美国国家地理位置相关的文档,一些文档与欧洲地区地理位置相关,但对其他国家/地区的覆盖范围不够精细。
同样,此数据集似乎包含许多男性英语名字、一些女性英语名字,而其他语言的名字数量要少得多。请注意,Don Rosa 曾为迪士尼创作过《Scrooge McDuck》漫画,这可能是“scrooge”和“mcduck”是“rosa”的最近邻的原因。
word2vec
提供的预训练字词向量实际上是基于截至 2013 年的 Google 新闻报道进行训练的。
任务 3
嵌入不限于字词。还可以嵌入图片、音频和其他数据。在此任务中:
- 打开 TensorFlow 的 Embedding Projector。
- 在标题为 Data 的左侧边栏中,选择 Mnist with images。系统随即会显示手写数字 MNIST 数据库的嵌入投影。
- 点击以停止轮播,然后选择一张图片。根据需要放大和缩小。
- 在右侧边栏中查找最近邻。有什么意外的发现吗?
- 为什么某些
7
的最近邻是1
?而某些8
的最近邻是9
? - 投影空间边缘的图片是否与投影空间中心的图片有所不同?
请注意,创建这些嵌入的模型会接收图片数据(即像素),并为每张图片选择一个数值向量表示法。该模型不会自动推测手写数字图片与数字本身之间的联系。
点击此处查看我们的答案
由于形状相似,一些较窄的 7
的向量表示法会更靠近手写 1
的向量。某些 8
和 9
,甚至某些 5
和 3
也会发生同样的情况。
投影空间外部的手写数字看起来是更容易辨认的九位数字之一,并且不易与其他数字混淆。