第1次课
计算机程序语言是上下文无关文法的,自然语言是上下文有关的。导致复杂度差了多个数量级。
NLP的一个重要特征,那就是序列性,不能孤立地看一个单词的含义,或者说一定要看上下文。
2.利用统计来Nlp处理
经过了长时间的摸索和碰壁之后,IBM华生实验室的Frederick Jelinek率先利用统计语言学的方法在语音识别领域做出了重大突破,语音识别率从70%上升到了90%;同时语音识别的规模从几百单词上升到了几万单词,推动语音识别从实验室走向应用。
如何基于统计进行NLP处理呢?
2.1-拼写纠正
比如判断哪一句是正确的?
我爱北京天安门。
北京天安门爱我。
我北京天安门爱。
S 表示一连串特定顺序排列的词 [公式] , [公式] ,…, [公式]
马尔科夫假设:假定任意一个词出现概率(在某个文本中)只同题前面的一个词有关,于是
2-gram
句子S出现的概率
条件概率公式(要记)
利用统计解决问题
拼写纠正的代码:纠正错误的单词是如何做到的?
贝叶斯后验概率
词表中出现该单词的次数除以总词数, P就做这个事情。
etdts1(word):强制拆分词,eg:
什么是编辑距离。
- 这里就涉及到一个概念编辑距离(edit distance),编辑距离是指从字符串A到字符串B,中间需要的最少操作次数。譬如 the 到 hte 只需要操作一次;they到 hte则需要操作两次。
贝叶斯条件概率公式:
有3个袋子,1个袋子2个白球,1个袋子,1个白球1个黑 ,1个袋子,2黑
拿出1个袋子,从中拿出了1个白球,问拿出的袋子是装了2个白球的概率是多少?
A:拿出了1个白球
B:拿出的袋子是装了2个白球的袋子
P(B|A) = P(B) * P(A|B)/P(A) = 1/3 * 1 / (1/2) = 2/3 ✔️
这里贝叶斯经常是笔试题(贝叶斯条件概率和条件概率是一回事吗?)
后半节课:后面这些应用只是介绍介绍,重点在上面。
2.2文本分类
文本分类本质的问题是判断文本之间的相似性。那到底怎么样定义文本的相似性,以及怎么让程序来计算这个相似性呢?
早期的技术:tf-idf,kmeas分类 分类后预测
打标签,标签就是一个关键字。
tf-idf很强的一个就是关键字提取。
tf-idf归根到底,是把文本转换成了一个向量,然后通过比较向量的相似性,来比较文本的相似性,从而对文本进行分类。这种算法的关键在于将文本转化为向量的时候,这个向量要能够尽可能地体现出文本的内容。
2.3机器翻译
2.4词向量
2.5自然语言生成
2.5人机对话系统
- 词向量可以体现词语的含义。
这门课假设大家没有基础。
神经网络的基础知识会过一遍。
这门课的主要内容:
- 了解自然语言处理发展的历程
- 了解自然语言处理的领域
- 掌握现代自然语言处理的模型和方法
- 搭建系统
这门课:
第一次课:
分词,数学概率方面的
然后:
神经网络 RNN
词向量
接下来
Transformer
讨论下 GPT2 BERT这些东西
考试肯定是理论方面的。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!