多模态大模型基础--知识表示

举报
剑指南天 发表于 2026/04/14 16:25:02 2026/04/14
【摘要】 人类认知的知识形式(语言文本,图像等)经过处理,embedding输入transformer模型,经过训练后,模型将同时理解并融合多种不同类型信息的能力.

1.1 概述

知识表示是将人类认知的知识形式(语言文本,图像等)转化为计算机理解的数值形式,这种转化过程对应着模型的输入.

针对不同的认知任务,认知表示主要分为文本表示和图像表示等.

1.2 文本表示

文本表示主要针对的语言文本的处理,主要分为三个部分.

1.2.1 第一部分通常是分词和词表构建

分词(Tokenization)是将原始文本切分为若干具有独立语义的词元(token)的过程.

词表(Vocabulary)是由语料库构建出的、包含所有词元的集合.词表中每个token都有唯一的 ID,token与 ID 之间具有双向和一对一的映射.

1.2.1.1 分词

按照分词粒度的大小,可分为词级(Word-Level)分词、字符级(Character-Level)分词和子词级(Subword‑Level)分词.

词级分词是指将文本按词语进行切分,是最传统、最直观的分词方式. jieba是中文分词领域中应用广泛的开源工具之一,英文可以使用NLTK分词工具.

字符级分词(Character-level Tokenization)是以单个字符为最小单位进行分词的方法,文本中的每一个字母、数字、标点甚至空格,都会被视作一个独立的 token.字符是中文最小单元,并且中文没有新造的字符,没有OOV问题,天然的字粒度分词.

子词级分词是一种介于词级分词与字符级分词之间的分词方法,它将词语切分为更小的单元——子词(subword),例如词根、前缀、后缀或常见词片段.与词级分词相比,子词分词可以显著缓解OOV问题;与字符级分词相比,它能更好地保留一定的语义结构.

子词分词的基本思想是:即使一个完整的词没有出现在词表中,只要它可以被拆分为词表中存在的子词单元,就可以被模型识别和表示,从而避免整体被替换为<UNK>. BERT、GPT、通义千问、DeepSeek等模型均采用了基于子词的分词机制.

BPE是最早被广泛应用的子词分词方法.其基本思想是,在训练阶段,首先将语料中的词汇拆分为单个字符,构建初始词表;然后迭代地统计语料中出现频率最高的相邻字符对,将其合并为新的子词单元,并加入词表.这个过程持续进行,直到词表大小达到预设上限.

虽然中文没有英文中的子词结构(如前缀、后缀、词根等),但子词分词算法(如 BPE)仍可直接应用于中文。它们以汉字为基本单位,通过学习语料中高频的字组合(如“自然”、“语言”、“处理”),自动构建子词词表。这种方式无需人工词典,具有较强的适应能力.

目前市面上可用于中文分词的工具种类繁多,按照实现方式大致可以分为如下两类:

一类是基于词典或模型的传统方法,主要以“词”为单位进行切分;

另一类是基于子词建模算法(如BPE)的方式,从数据中自动学习高频字组合,构建子词词表.

前者的代表工具包括 jieba、HanLP等,这些工具广泛应用于传统 NLP 任务中. 

后者的代表工具包括 Hugging Face Tokenizer、SentencePiece、tiktoken等,常用于大规模预训练语言模型中.

1.2.2 第二部分是词表示

文本经过分词后,被转换为一系列有序的token.为了提高token在表达能力、语义建模、上下文适应性等方面的能力,对token进一步建模的过程叫做词表示(word representation).

词表示从稀疏的one-hot编码,到稠密的词向量,再到上下文相关的词表示。不同的方法在表达能力、语义建模、上下文适应性等方面存在显著差异。

one-hot无法体现词与词之间的语义关系,且因为词表规模庞大,向量维度也会庞大,导致计算效率低下.

为了解决这个问题,研究者提出了Word2Vec模型,它通过对大规模语料的学习,根据词和相邻的词的关系,为每个词生成一个具有语义意义的稠密向量表示.

                                     

Word2Vec为每个词生成独有唯一的语义,因为其训练的窗口很窄,捕获语意有限.并且只为每个词分配一个固定的向量表示,忽略了其出现的语境如何.所以也称为静态词向量(static embeddings).但是Word2Vec不依赖人工标注,利用大规模原始文本作为数据源,通过邻位置建模来反应语义关系的远近,具有历史性的进步意义.

考虑到语言的表达极其灵活,一个词在不同上下文中可能有完全不同的含义.例如:

这时,使用同一个静态词向量去表示“苹果”,显然无法区分这两种语义.这就推动了上下文相关的词表示的发展.

上下文相关词表示(Contextual Word Representations),是指词语的向量表示会根据它所在的句子上下文动态变化,从而更好地捕捉其语义.一个具有代表性的模型是——ELMo.

该模型全称为 Embeddings from Language Models,发表于2018年2月.其基于LSTM 语言模型,使用上下文动态生成每个词的表示,每个词的向量由其前文和后文共同决定,是第一个被广泛应用于下游任务的上下文词向量模型.

基于LSTM,所以具有LSTM的缺点,难以并行,训练速度慢,且长上下文语义捕捉能力弱.

Transformer使用注意力机制直接建模序列中各位置之间的语义关系。使用多头注意力机制增强了复杂性语义的理解.而且显著提升了训练效率,也增强了模型对长距离依赖的建模能力。

如果把transformer生成的向量看做词向量,词向量在提取特征上,仍发挥着极其重要的作用.

词向量现今主要通过Embedding层生成,主要作用变成了将离散的索引映射到连续向量空间的可训练的工具.所以也可以将图片信息映射到这个向量空间,就可以实现多模态模型.

1.3 图像表示

图像表示主要针对图像数据的处理,主要分为两个部分.

1.3.1 第一部分图像数字化

计算机眼中的图像是由像素(Pixel)组成的网格.每个像素点需要用一个或者多个数值的组合来表示颜色.这部分技术已经相当成熟,不需赘述.

1.3.2 第二部分补丁嵌入

将图像平面拆分为补丁,并创建这些补丁的线性嵌入序列.线性嵌入序列就可以结合transformer进行模型构建. 2021年,Dosovitsky等人在他们的论文《An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale》中引入了将Transformer用于计算机视觉任务(例如图像分类)的想法。


1.4 人类认知的知识形式(语言文本,图像等)经过处理,embedding输入transformer模型,经过训练,机器将同时理解并融合多种不同类型信息的能力.

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。