NLP 之词的表示与语言模型

表示的基本原理:

机器无法理解文字,却能进行复杂的数学运算------神经网络只要够深、够复杂,就能拟合足够复杂的数学模式。把文字嵌入(embed)到一个向量空间中去。

词表示(Word Representation)分为4代

1.独热(One hot)编码

基本原理:

假设中文字典有n个词元,那么第i(i=1,2,3,...,n)个词元的编码为一个长度为n的向量,它的第i位为1,其他为0。独热编码实现了对文本的向量化嵌入。

问题:

第一,向量的维度太长了,文本的表示过于稀疏;

第二,词向量与词向量之间完全正交,不具有相关性。

2.词频-逆文档词频(Term Frequency-Inverse Term Frequency, TF-IDF)

根据Zipf's Law,在给定的自然语言语料库中,任何一个词的频率与它在频率表中的排名成反比。

3.语境无关(Context-free/Non-contextual)的词表示:Word2vec

它对每一个词生成一个相同的词表示,不考虑同一个词在不同语境下含义的差别。

连续词袋法:

用一个浅层神经网络,依次遮住句子中的每一个词,然后用它的上下文来预测它

跳元法:

我们用一个k元词组来预测它的上下文

自监督预训练:

通过"破坏"句子的一部分,让模型预测它,从而实现对词的更精确的表示.

4.语境相关(Context-dependent/Contextual)的词表示:BERT

语言的多义性是人类自然语言的重要特点。

BERT考虑了三层嵌入:词嵌入、位置嵌入(词在句子中的位置)和句子嵌入,并把它们加起来作为最后的嵌入表示。

BERT使用WordPiece分词器(tokenizer),借鉴了自监督训练的思想,在两个任务上进行预训练:下句预测(Next Sentence Prediction)和掩码语言建模(Masked Language Modeling)。

下句预测是一个二分类任务:给定一个句子,判定另一个句子是否是它的下一句;

掩码语言建模任务随机掩盖其中15%的单词,并训练模型来预测被掩盖的单词,为了预测被掩盖的单词,模型从两个方向阅读该句并进行预测。

相关推荐
chools5 分钟前
Java后端拥抱AI开发之个人学习路线 - - Spring AI【第一期】
java·人工智能·学习·spring·ai
IT_陈寒11 分钟前
Vite热更新坑了我三天,原来配置要这么写
前端·人工智能·后端
子兮曰33 分钟前
CLI正在吞掉GUI:不是替代,是统治,AI时代的入口争夺战
人工智能·github·命令行
星星也在雾里1 小时前
Dify Agent + FastAPI + PostgreSQL实现数据库查询
数据库·人工智能·fastapi
Maschera961 小时前
openclaw-lark 的 Bot@Bot 跨Bot提及功能 - 开发经验分享
人工智能·node.js
TDengine (老段)1 小时前
以事件为核心 + 以资产为核心:工业数据中缺失的关键一环
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据
阿里云大数据AI技术1 小时前
欣和大数据阿里云上升级,打造湖仓一体平台
大数据·人工智能
CC数分1 小时前
大模型时代的数据分析:AI会取代数据分析师吗?
人工智能·数据挖掘·数据分析
PHOSKEY1 小时前
直面消费电子检测新挑战——光子精密3D工业相机折叠屏铰链检测应用方案
人工智能
guslegend1 小时前
RAG系统的需求分析
人工智能·大模型