跳转至

词向量建模

省流

词向量是将词语表示为低维实数向量的技术,能够捕捉词语的语义和语法特征。以下是词向量的简要介绍及其在不同场景中的应用:

### 词向量的作用

1. **语义表示**:词向量能够将词语的语义信息转化为数值形式,使得语义相似的词语在向量空间中距离更近。
2. **语法捕捉**:可以捕捉词语的语法特征,如词性、时态、单复数等。
3. **知识表示**:通过词向量可以表示词语之间的关系和知识结构。

### 词向量能干什么

4. **文本分类**:如情感分析、新闻分类等,通过词向量将文本转化为数值表示,再进行分类。
5. **机器翻译**:在不同语言的词向量空间中进行映射,实现语言之间的翻译。
6. **信息检索**:通过词向量计算查询和文档的相似度,提高检索的准确性和相关性。
7. **问答系统**:理解问题和答案的语义,提高问答的准确性和智能性。
8. **文本生成**:如自动写作、对话系统等,通过词向量生成符合语义和语法的文本。

### 词向量的应用场景

9. **自然语言处理任务**:包括词性标注、命名实体识别、语义角色标注等。
10. **文本挖掘**:如文本聚类、文本相似度计算等。
11. **智能应用**:如智能客服、智能助手等,理解用户输入的语义并生成合适的回答。

词向量技术在自然语言处理和文本分析领域有着广泛的应用,能够将文本数据转化为可计算的数值形式,为各种文本分析和处理任务提供基础。

一、词向量建模基础

  • 词向量的定义:词向量是将词汇表示为多维空间中的向量,每个维度代表词汇的某种特征。例如,“国王”可能被表示为[0.2, -0.5, 0.7,…],通过这些数值体现词汇的语义、语法等特征。

  • 词向量的原理:基于词的分布假设,即语义相似的词在文本中出现的上下文环境相似。例如,“国王”和“王后”常与“宫殿”、“皇室”等词共现,它们的词向量在向量空间中距离较近。

  • 词向量的作用:词向量将词汇转化为数值型数据,便于计算机处理和分析,是自然语言处理任务的基础,如文本分类、情感分析和机器翻译。

  • 主要思想: 语义相似的词语在词向量空间中位置更接近

二、词向量建模的表示方法

  • One-Hot编码:这是最基础的词向量表示方法,将每个词表示为一个独热向量。例如,词汇表中有1000个词,每个词对应一个1000维的向量,其中该词的位置为1,其余位置为0。但这种方法 维度高、稀疏 且无法体现词间 语义关系。向量长度等于词汇表的大小。

  • 分布式表示(Distributed Representation):与One-Hot编码不同,分布式表示将词表示为 低维、密集 的向量,每个维度代表词的某种特征。这种方法能够有效捕捉词间的语义和语法关系,是现代词向量建模的主要方法。

  • 词向量是一种稠密的向量表示方法,每个单词被映射到一个较低维度的连续向量空间中。通过机器学习方法(如Word2Vec等)学习得到的,词向量是一种稠密的向量表示方法,每个单词被映射到一个较低维度的连续向量空间中。通过机器学习方法(如Word2Vec等)学习得到的,语义相似的词在向量空间中会有相近的表示。。

Tip

词向量和分布式表示之间的关系在于,词向量是分布式表示的一种应用实例,而分布式表示是词向量表示的理论基础和方法论。

分布式表示是一种将符号或概念表示为向量的方法,这些向量的每个维度代表某种语义特征,通过在语料库中统计词的共现关系等信息形成。词向量就是将词汇以向量形式表示,每个词对应一个向量,向量的维度通常较低,能够有效捕捉词的语义信息和词与词之间的关系。

例如,“国王”和“王后”的词向量在性别维度上可能相反,在地位维度上相似。这种表示方法使得词向量在自然语言处理任务中具有强大的表达能力和计算效率,能够有效提升模型性能。

三、算法

分词

分词: 是将一段连续的文本拆分成若干个较小的单位,通常是 单词或词组(称为“词汇单元”或“Token”)。

文本都是一些“非结构化数据”,我们需要先将这些数据转化为“结构化数据”,结构化数据就可以转化为数学问题了,而分词就是转化的第一步。

分词的粒度:词是表达完整含义的最小单位

字的粒度太小,无法表达完整含义,比如"鼠"可以表示为"老鼠",也可以是"鼠标"。而句子的粒度又太大,承载的信息量太多,难以复用。

Word2Vec静态词向量算法

是一种用于 学习词向量 的模型。通过学习词的 上下文关系,将词映射到一个连续向量空间,捕捉词汇之间的语义和语法特性。

模型仅包括 输入层、隐藏层和输出层,模型框架根据输入输出的不同,主要包括CBOW和Skip-gram模型。

  • CBOW模型:CBOW(Continuous Bag of Words)模型通过上下文词来预测目标词。它将上下文词的向量平均后输入隐藏层,再通过输出层计算目标词的概率。例如,在句子“我爱自然语言处理”中,给定“我”和“自然语言”,预测“爱”。该模型适合大规模数据,能有效捕捉常见词的语义。

  • Skip-Gram模型:与CBOW相反,Skip-Gram模型通过目标词来预测其上下文词。它将目标词向量输入隐藏层,通过输出层计算上下文词的概率。例如,给定“爱”,预测“我”和“自然语言”。该模型适合小规模数据和罕见词的处理。

方式 输入 输出 适用场景 训练速度 数据需求
CBOW 上下文词语 预测中心词 适合小数据集 需要较多上下文
Skip-gram 中心词 预测上下文词 适合大数据集 适合稀疏数据

image-20250315215328370

ELMo

1、通过多层的stack LSTM去学习词的复杂用法

对于 词义消歧 有需求的任务,第2层会有较大的权重; 对于词性、句法有需求的任务,对第1层会有比较大的权重

2、通过 pre-train+fine tuning 的方式实现,先在大语料库上进行pre-train,再在下游任务的语料库上进行fine tuning。