AI的句子嵌入,揭秘

AI句子嵌入揭秘

弥合计算机与语言之间的鸿沟:AI句子嵌入如何革新自然语言处理

Photo by Steve Johnson on Unsplash

在这篇博客文章中,让我们揭开计算机如何理解句子和文档的神秘面纱。为了开始这个讨论,我们将从最早的使用n-gram向量和TF-IDF向量来表示句子的方法开始。后面的部分将讨论从神经词袋到我们今天看到的句子转换器和语言模型的方法。有很多有趣的技术需要介绍。让我们从简单而优雅的n-gram开始我们的旅程。

1. N-gram向量

计算机不理解单词,但它们理解数字。因此,在计算机处理时,我们需要将单词和句子转换为向量。句子作为向量的最早表示之一可以追溯到信息论之父Claude Shanon在1948年的一篇论文中。在这个里程碑式的工作中,句子被表示为单词的n-gram向量。这意味着什么呢?

图1:从句子生成n-gram向量。(作者提供的图像)

考虑句子“这是一个好日子”。我们可以将这个句子分解为以下n-gram:

  • Unigram:This, is, a, good, day
  • Bigram:This is, is a, a good, good day
  • Trigram:this is a, is a good, a good day
  • 以及更多…

通常,一个句子可以被分解成其组成的n-gram,从1到n进行迭代。在构建向量时,向量中的每个数字表示该n-gram是否在句子中存在。有些方法可能会使用n-gram在句子中出现的次数。上面的图1显示了句子的一个示例向量表示。

2. TF-IDF

另一种早期但流行的表示句子和文档的方法是确定句子或“词频-逆文档频率”向量的TF-IDF向量。在这种情况下,我们将计算单词在句子中出现的次数…