English Version -> Click Here

在语言学中,最古老的一种关于“意义(meaning)”的思考方式,通常可以用“能指(signifier)”和“所指(signified)”的关系来描述:

  1. 能指(signifier):指符号的形式部分,比如一个词的拼写、读音或文字形态。
  2. 所指(signified):指该符号所代表的概念或事物,即词所关联的“意义”或“意指对象”。

当人们使用“能指”与“所指”来解释词义时,就是在使用外延语义学(denotational semantics)的思维范式。它的意思是每一个符号(如“树”这个词)直接指向一个概念或实物(现实中的“树”或脑海中的“树”这个概念)。这种观点认为“符号—概念”之间是相对固定的对应关系,体现了语言如何把具体的或抽象的客观事物(所指)用一个可感知的符号(能指)来表示,从而构成最基础的语言意义表达。

外延语义学 是 词汇语义学(lexical semantics)中最基础且最简单的一种语义解释方式。基于外延语义学的词汇语义分析,一般需要判断:

  1. Synonym(同义词)
    • 指含义相同或非常相似的一组词。例如,“快速”和“迅速”在中文中就可以被视为同义词。
    • 同义词之间并不一定在所有情境下都可以互换使用,有时会存在程度或使用场景上的差别,但它们的核心语义非常接近。
  2. Hypernym(上位词)
    • 指涵义更宽泛、可以作为一系列具体词(下位词,hyponyms)的统称。
    • 举个例子:
      • “水果”是“苹果、香蕉、梨”等的上位词;
      • “交通工具”是“汽车、火车、飞机”等的上位词。
    • 上位词和下位词(hyponym)的关系体现了语义层级(taxonomy)结构:上位词表示更一般、更抽象的概念,下位词则表示更具体、更细分的概念。

计算机对于所有数据的表示都是二进制,那么我们如何表达文字的含义和它们之间的关系呢?

最早的思想就是把词汇编排为字典,它们是离散的单个符号,一种典型的词汇编码方法称作“One Hot”编码,把词汇表达成向量,其某个位置是1,其它位置是0。

这种编码方式很难储存词汇之间的关系,比如同义词,上位词。Bank作为银行,金融机构是它的上位词,作为河岸,地理领域是它的上位词。一个词具有多个含义,多个上位词,如何使用计算机表达?如果再加上象征,隐喻,讽刺,那么我们会很难理解一个词汇的准确含义,或者准确选择某一个词汇用来表达我们想要表达的特定含义。尤其是上下文相关的场合。不同文字的含义在不同的上下文之间有区别,这些特定的含义并不是取决于文字本身,而是取决于其上下文。在这种场合外延语义学就不再适用。

计算科学家有好几种方法来应对这个问题,比如基于上下文消除歧义(Word Sense Disambiguation)透过查找Bank周围的词汇,判断它是银行还是河岸,语义网络(Semantic Networks)使用图结构来表示词汇之间的语义关系,例如同义词、上位词、下位词等。还有知识图谱,试图存储不同的实体、概念和它们之间的关系。但是,外延语义学是一个根本性的思维范式,它主导的One Hot编码不发生变化的话,这些都是死胡同。

因此,几位开创性的语言学家,比如乌克兰语言学家Zellig Harris(语言学家赵元任的导师),试图用统计学来表示词汇。尤其是英国语言学家J.R Firth于1957年提出的名言:

You shall know a word by the company it keeps

你应该根据文字的上下文来确定它的含义。

这些主张,发展成为依存语义学 (Contextual Semantics)。这是对外延语义学的补充,强调上下文对词义的影响。词义依赖上下文,同一个词在不同语境中可能有 不同含义。关注 言外之意 (Implied Meaning) 和 语境影响。强调 语境、文化、语用因素 对词义的影响。但是它不易形式化和标准化,难以进行逻辑分析。

这些先行者相当于语言学的理论科学家,其对于语言学的洞察力由计算机科学家(实验科学家)进行实施和验证。其中的连接环节就是数学。这些形式化和标准化的任务就需要寻找数学方法来完成。

有些计算机科学家发明了创新性的向量编码,不再是“One Hot”单一编码,而是把上下文一起编码进去。比如Scott Deerwester,把词汇在某些上下文里共同出现的频率记录下来,做成“共现矩阵”。因为词汇的总体数量很多,导致矩阵非常稀疏,然后就必须用数学方法降低其维度,采用的方法是奇异值分解 – Singular Value Decomposition(SVD),把大型矩阵表示成三个矩阵的乘积,这三个矩阵就是两个正交方阵和一个矩形对角矩阵,相当于用时间换了空间。其中矩形对角矩阵的奇异值是按照对原始大型矩阵的贡献度排序的,因此,舍弃不那么重要的部分可以让矩阵变小,却仍然保留最主要的数据。

后续的计算机科学家,比如2003年的 David Blei 和 Andrew Ng 论文,基于统计学思想进一步研究,把词汇的出现频率和文本的含义建立概率关联。这就是隐含狄利克雷分配 Latent Dirichlet Allocation,一段文本的含义有很多种可能的主题的混合概率,其中每一个主题,又是一系列词汇的混合概率。这种思想本质上是一种基于贝叶斯统计的生成式概率模型,通过观测值寻找条件概率。其计算过程非常类似于隐马尔可夫模型(HMM),通过观察到的数据,推测隐藏的数据的概率。当然HMM 处理的是序列数据,隐藏状态随着时间(或序列位置)而变化。LDA 处理的是“词袋”数据,忽略词汇的顺序,关注词汇的共现模式。尽管 LDA 和其他基于概率统计的方法 在 主题建模 (Topic Modeling) 和 词汇关系分析 等任务上表现良好,但它们存在 本质上的局限性,无法突破 自然语言的复杂语义,文字顺序和上下文依赖问题。这些方法都是进步,但无法取得重大成果。

与此同时,另一条赛道上的图灵奖得主Geoffrey Hinton,在他1986年的论文中提出了分布式语义表示的思想。分布式表示 (Distributed Representation):用 稠密实值向量来表示词或概念,向量的每一个维度并无明确含义,而是通过组合在一起来表达语义。一个“概念 (Concept)”就是在高维空间中的一个点,而相似概念在空间中更为接近,这样就可以针对同义词,反义词进行数学运算。通过把稀疏的One Hot向量改为稠密向量,相似语义的词汇在向量空间中距离更近。Hinton同时还发展了循环神经网络(RNN)。他的想法都很超前,很激进,而且非常美好。计算机应该能够自主学习,不需要人工赋予词汇意义,但是当初受限于计算机科学的发展,无法实现。

2003年,与Hinton同获图灵奖的Yoshua Bengio 率团队首次提出了基于神经网络的语言模型 (NNLM),将 Word Embedding 与 神经网络结合。RNN在80年代就应用于处理序列化信息,比如数字信号处理,1997年的LSTM等技术在RNN的基础上添加了记忆单元,能够捕捉长距离的依赖关系。Bengio等人使用多层前馈神经网络联合学习词向量和语言模型,不仅将词表示为稠密实值向量 (Dense Vector),并通过上下文窗口建模词与词之间的关系。首次在神经网络中学习词向量,并通过非线性激活函数 (Tanh) 和 Softmax 进行概率建模。传统方法依赖于手工特征工程,而且只能进行线性分类,而神经网络模型能够自动学习输入表示,并且具有非线性决策边界,从而捕捉复杂的模式。根据上下文的神经网络训练,能够对每一个当前的中心词得出一个权重向量,指出周围的哪些词对确定中心词的含义最为重要。虽然NLP是一个巨大又非常艰难的领域,具有极高的不规则特性,取得这个进展仍然是极其重要的一小步。不过这种方法需要大量计算能力,直到近10年后,大规模运用GPU进行神经网络训练才得以发挥潜力。

出于对这个领域的信心,看到了相关技术的发展,Tomas Mikolov和他的团队于2013年发明了一种突破性的把文字转化成向量的算法。Word2Vec 本质是对词汇的归类和表示。它通过向量空间的线性关系,让文字在数学上可以运算。这个重大发现,彻底改变了 NLP 的发展方向,当这些博士们看到训练出来的文字向量的加减运算能够实现含义的类比关系的时候,想必激动不已:

为了实行这一目标,Mikolov引入负面采样 Negative Sampling 和 多层次的归一化算法 Hierarchical Softmax,显著降低计算复杂度,使 Word Embedding 可以在 大规模语料 (如Google News,10 亿词汇) 上进行高效训练。

打个比方,假设不存在杜威编码这种东西,图书馆里新到了大批未分类书籍,那么应该如何整理成多个分类让相关的书籍摆在一起?

文字本身是符号,就像书籍标题一样。书的分类和摆放位置好比是抽象的含义,需要通过发现书籍的关联性才能理解。邻近的书籍彼此有点神秘联系,比如有可能是同一作者,同一系列,相似主题,但是未必按顺序,也不一定紧邻。Mikolov发明的Skip-Gram模型,判断根据当前文字预测周围文字(上下文),就像通过一本书的标题,推测它会和哪些书摆在一起。CBOW 模型根据周围书籍 (上下文) 预测当前书籍,然后用大规模语料库来训练,对比这些预测是否准确,如果不准确,就使用偏微分来更新算法权重,让它越来越准。

在训练词向量模型时,使用负采样可以大大提高效率。与其翻阅每一本书和它周围的十余本书来对比相似度,不如查看这本书是不是和随机挑选的离得很远的三本书有何不同。因为离得远的书籍之间是续集或者有关联的可能性很低。按照相似度或者相反度,我们把书籍移动到不同的书架上。这就是小批量负采样。同时,Mikolov的算法使用稀疏矩阵更新,每次只修改一小部分数据。就像我们不需要每次阅读和移动所有的书,我们只需要移动一小部分书。至于使用哈希表来查找词向量,就像给图书添加标签。RNN配合Word Embedding如虎添翼,很快在机器翻译,情感分析,对话系统中取得良好的效果。

第二年,斯坦福大学教授Manning的团队,提出了GloVe模型,改进全局文字联系,取代word2vec霸了榜。大约7年后,在2021年冬季学期,Manning主讲CS224N自然语言处理课程的时候表示,当年GloVe上榜的原因是因为训练数据更好。(维基百科胜过谷歌新闻)

2014 年,Bengio 团队首次提出在RNN上添加Attention 机制,它模仿人类的阅读和理解方式,通过 计算当前词汇与句子中其他词汇的相关性 (Relevance),来判断 哪些上下文信息更重要。Attention Score (相关性分数) 用于 为上下文信息分配不同权重,即 赋予更高概率给更相关的上下文。这种机制使得模型在进行 词汇预测、翻译或文本生成 时,能够 更精确地捕捉语义和上下文依赖关系。旨在减轻循环神经网络RNN带来的偏差放大问题。立刻就被成功的运用在机器翻译领域。数十人的团队几个月训练的seq2seq结构的神经网络机器翻译,效果超过数百人开发好几年的统计模型,所有的翻译软件公司都开始转向神经网络机器翻译。

2017年,谷歌Brain团队提出放弃RNN,仅使用Self Attention 机制设计出了Transformer架构,它仍是一种seq2seq模型,但是摆脱了RNN,LSTM等等模型进行循环处理序列化信息的束缚,使 所有词汇可以同时计算,从而实现 大规模并行训练 (Massive Parallel Training)。它带来的创新有:

  1. 位置编码。注入了词在序列中的位置信息,使模型能够 捕捉顺序关系。自注意力机制可以 捕捉长距离依赖关系,同时保留 序列顺序 (Positional Encoding) 信息,使模型在 长文本和复杂语义结构 中表现更优。
  2. 无监督预训练,因此不再依赖大规模标注数据,降低训练成本。
  3. 自注意力机制拓展为多头,因此,可以捕获文字中不同层次的信息,既包括语法,又包括语义,甚至包含一些逻辑推演。

基于Transformer的神经机器翻译相比带有注意力机制的RNN进一步提高了翻译准确率。我们现在把基于Transformer的语言模型称之为大语言模型。

2018年,OpenAI发明了GPT单向解码器,这是一个突破性的文本生成的大语言模型。他的突破在于把Transformer运用于文本生成 (Text Generation) ,建立了一个新的范式:无监督预训练+有监督微调。使得模型能够生成 连贯且自然的长文本。同年,谷歌发明了BERT双向编码器,这是一个突破性的语义理解和上下文建模的大语言模型。大幅提升了语义理解能力,特别是在 问答系统 (QA)、情感分析、阅读理解、文本分类 等任务中表现突出。在 GLUE、SQuAD 等多项基准测试中取得 SOTA 性能。

2022年,诞生了基于GPT-3.5的ChatGPT,引发了极大的公众热情。它通过 RLHF (人类反馈强化学习),优化了对话策略和上下文衔接。对话微调 使 ChatGPT 更擅长多轮对话和情感交流,并且能够 动态调整上下文中的语义一致性。成为了对话 AI 和生成式 AI 的里程碑。

当前,Pragmatics (语用学) 是进一步研究的热点。它扩展语义学的边界,考虑说话者意图、文化背景、社会关系 对词义的影响。比如:问题:“你能开窗吗?”
语义学解释: 这个问题询问的是“能力”。语用学解释: 请求 (Request) 对方开窗。

相比语义学,语用学强调言外之意 (Implicature) 和 隐含意义 (Implied Meaning),比如隐喻 (Metaphor)、讽刺 (Irony)、双关 (Pun)、委婉语 (Euphemism) 等现象。这些现象依赖上下文、文化背景、社会关系。说话者意图 (Speaker’s Intention) 和 对话逻辑 (Dialogue Coherence)。大语言模型之所以引发社会关注,正是因为他们不仅解决了语义学的问题,甚至表现出一些语用学的特性。

比如,意图识别 (Intent Recognition) 是 自然语言理解 (NLU) 的关键问题。再比如,对话逻辑涉及 上下文一致性、前后呼应、逻辑推理。现有模型的实现方式相对简单,比如ChatGPT,就是把所有的对话上下文重新发回给模型,造成长距离逻辑关系损失。也许,我们能够发回一些“最重要的”对话概念,而避免损失长距离逻辑关系。

针对语用学的进一步发展,我们寄希望于大语言模型的涌现特性,涌现特性 (Emergence) 是 复杂系统中,简单规则的相互作用 导致 整体系统表现出更高级、复杂的行为 的现象。比如,游离氨基酸如何变成蛋白质,最终变成能够自我复制的有机分子。蜂群的智力,远远超过单一的蜜蜂。大量的人类神经元相互连接,涌现出复杂的意识和思维活动。整体行为和现象,无法通过简单的个体叠加而实现。但是,如果有巨大数量的反复尝试,最终极低概率的事件也一定会发生。这是复杂系统科学和非线性动力学的研究热点。

大规模参数和训练数据使模型表现出非线性、复杂的语言理解和生成能力;涌现出复杂的推理、类比、对话逻辑、常识推理 等能力。根据多个基准测试,我们认为至少70亿参数才能出现涌现特性。但是,我们对大语言模型的内部还知之甚少,解释能力很弱,基本上靠推测,期待着新一代的NLP学者能够取得进一步的突破。目前最大的LLM模型大约有万亿参数,这个规模的模型非常昂贵又难以训练,但是人类大脑神经元轴突的连接数量比最大的模型还要高出1000倍,而且人类有出色的创造能力,不必担心AI很快会取代人类。

阶段提出时间主要贡献者代表方法核心思想
早期思想1950sZellig Harris, J.R. FirthDistributional Hypothesis词的语义由上下文决定
统计方法1988Scott DeerwesterLSA共现矩阵 + SVD 降维
概率模型2003David BleiLDA主题建模,概率分布表示
分布式表示1986Geoffrey HintonDistributed Representation稠密实值向量表示
神经网络表示2003Yoshua BengioNNLM联合学习词向量和语言模型
高效训练与类比推理2013Tomas MikolovWord2VecCBOW 和 Skip-gram,高效计算与线性关系
自注意力机制与深度学习2017Vaswani et al.Transformer自注意力机制(Self-Attention),全并行训练,取代 RNN/CNN
双向编码与上下文学习2018Devlin et al. (Google)BERT预训练 + 微调,双向 Transformer 进行上下文学习
超大规模预训练模型2020OpenAIGPT-3175B 参数,极强的 Few-shot 学习能力
扩散模型生成式 AI2021Ho et al. (Google)DDPM/DALLE通过扩散反向过程生成高质量图像
多模态大模型2023OpenAI, DeepMindGPT-4/Vision
及后续4o
文本+图像+代码多模态理解,提高泛化能力
推理模型2024年9月OpenAIo1及后续o3模拟人类分步解决复杂推理任务

ray

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注