深度学习 DAY3:NLP发展史(全网最全)

NLP发展史

NLP发展脉络简要梳理如下:

(远古模型,上图没有但也可以算NLP)
1940 - BOW(无序统计模型)
1950 - n-gram(基于词序的模型)

(近代模型)
2001 - Neural language models(神经语言模型)
2008 - Multi-task learning(多任务学习)
2013 - Word embeddings(词嵌入)
2013 - Neural networks for NLP(NLP神经网络)
2014 - Sequence-to-sequence models

(现代模型)
2015 - Attention(注意力机制)
2017 - Transformer(自注意力网络)
2018 - Pretrained language models(预训练语言模型【Bert、Gpt等】)

1940 - 词袋模型(BOW)

首先解释一下什么是词袋模型:

词袋模型(Bag-of-Words, BOW) 是最早、最经典的文本表示方法之一(1940左右出现,甚至比n-gram还要早,我愿称之为原始祖师爷)。它将一段文本看作一个「袋子」:里面盛放了这个文本所含的所有单词,但忽略了单词的顺序、句法结构等信息,只关注单词是否出现以及出现次数(或频率)。这就好比把句子里的单词都抓出来扔进一个袋子,摇匀后再数一数这些单词都有什么、各出现几次。

              

1.1 典型示例

假设我们的词表是 "I","like","apples","banana",大小 V=4(指的就是一共有4个词)。
有两句话:

“I like apples”
“I like banana apples”
那么在词袋表示下:

对于 “I like apples”:

"I" 出现 1 次
"like" 出现 1 次
"apples"出现 1 次
"banana"出现 0 次
向量表示可写作 [1, 1, 1, 0]
对于 “I like banana apples”:

"I" 出现 1 次
"like" 出现 1 次
"apples"出现 1 次
"banana"出现 1 次
向量表示可写作 [1, 1, 1, 1]
可以看到,这种表示只管词的出现情况,不会去记录 “banana”是在“apples”前还是后出现,也不会记录它们之间的距离。这样就得到最纯粹的词袋表示。

1950 - N-Gram模型

n-gram算法的基本思想是将文本拆分成若干个连续的n个词的序列,并统计这些序列在文本中出现的频率。这里的n是一个正整数,表示词组中词的个数。

例如,在句子“我喜欢学习自然语言处理”中,

1-gram(unigram)是单个词,如“我”、“喜欢”等;
2-gram(bigram)是相邻的两个词组成的词组,如“我喜欢”、“喜欢学习”等;
3-gram(trigram)则是相邻的三个词组成的词组,如“我喜欢学习”等。
通过统计这些n-gram的频率,我们可以得到文本中各个词组的出现概率分布。这些概率信息对于后续的文本生成、语言模型构建、文本分类等任务具有重要的指导意义。

n-gram 的预测原理可以用一个 奶茶店点单预测 的类比来理解。我们通过实际场景拆解其核心机制:


一、基本原理:局部依赖的马尔可夫假设
1. 核心公式

                                

假设预测第n个词时,只需看前N-1个词(如同奶茶店员只需记住最近3位顾客的点单)

2. 实际案例

当顾客连续点单:

"珍珠奶茶" → "布丁奶茶" → "椰果奶茶"

使用 trigram(N=3) 预测时:

  • 新顾客点单序列:"珍珠奶茶" → "布丁奶茶" → ?

  • 预测逻辑:根据前两个饮品 "布丁奶茶" 预测下一个可能饮品

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值