是否有相当于图像的word2vec?

Is there an equivalent of word2vec for images?

我想知道是否可以为图像创建密集的矢量表示,类似于使用 Word2Vec 等算法创建词嵌入的方式?

我知道文本和图像数据之间存在一些很大的差异——特别是 word2vec 使用单词的上下文来训练这一事实——但我希望找到类似的图像数据。

如果 w2v (from Allison Parrish's GitHub Gist) 的一个简单例子是:

            | cuteness (0-100) | size (0-100) |
|–––––––––––|––––––––––––––––––|––––––––––––––|
| kitten    |        95        |     15       |
| tarantula |         8        |      3       |
| panda     |        75        |     40       |
| mosquito  |         1        |      1       |
| elephant  |        65        |     90       |

另一个例子是king - man + woman = queen

是否有一些类似的图像(或创建某种类型的模拟的方法),您可能会在这些图像中大致得到一些东西(带有一些虚构的数字):

                             | amount of people | abstract-ness |
                             | in image (0-100) |    (0-100)    |
|––––––––––––––––––––––––––––|––––––––––––––––––|–––––––––––––––|
| Starry Night               |         0        |       75      |
| Mona Lisa                  |         1        |        9      |
| American Gothic            |         2        |        7      |
| Garden of Earthly Delights |        80        |       50      |
| Les Demoiselles d'Avignon  |         5        |       87      |

(只是为了澄清,知道由像 Word2Vec 这样的算法创建的实际向量不会完全适合人类可解释的类别,但我只是想对 Word2Vec 示例进行类比。)

(starry night) - (landscape) + (man) = (van Gogh self portrait)= (abstract self portrait) 或类似的东西。

这些可能不是最好的例子,但只是回顾一下,我正在寻找某种算法来为图像创建抽象的 n 维学习表示,该图像可以分组或与表示其他图像的向量进行比较。

感谢您的帮助!

当然!但是...

此类模型往往需要显着更大更深的神经网络来学习表征。

Word2vec 使用非常浅的网络,并通常从严格限制的词汇表中执行简单的相邻词预测,作为训练目标(作为有益的副作用)抛出每个词的紧凑向量单词。

以图像为中心的算法尝试解决 labeling/classification 任务,或在压缩表示(或对抗分类器)约束下重新生成原始图像。他们使用 'convolutions' 或其他多层结构来解释更大的 space 可能像素值,并且一些中间神经网络层可以解释为输入图像的紧凑向量。

请注意,即使在文本 word2vec 中,以无监督方式学习的单个 "dense embedding" 维度,也不 具有良好的人类可解释性(如 "bigness"、"cuteness",等等)。通常,某些 directions/neighborhood 的高维 space 是模糊可解释的,但它们既不精确也不与主要维度轴完全对齐。

类似地,来自深度神经网络图像建模的任何紧凑表示本身不会具有具有明确含义的单独维度(除非针对这些目标设计了特定的额外限制)——但同样,某些 directions/neighborhood 的高维 space 往往是有意义的("crowds"、"a car"、"smiles" 等)。

关于基于深度学习的图像分析的一些关键论文的一个很好的概述——我刚刚发现的那些算法会丢弃紧凑和有意义的图像矢量摘要:

https://adeshpande3.github.io/The-9-Deep-Learning-Papers-You-Need-To-Know-About.html