python数据分析与自然语言处理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
那么该如何理解上述话语到底表达什么意思?
NLP-自然语言处理 NLP实际问题(分析过程)
词意
句意
语义(语境)
语义处理相对比较难,需要联系上下文,语境,还有一些情感色彩,这 是自然语言处理中的难点
NLP-自然语言处理
为什么研究自然语言处理?
NLP有难度,那为什么还要研究?
从科学研究的角度: 探寻人类通过语言来交互信息的奥秘,更好地理解语言本身的内在 规律
NLP-自然语言处理 TF-IDF结合余弦相似度做相似度分析
计算结果:
余弦相似度计算结果区间:[-1 , 1]
NLP-自然语言处理
TF-IDF结合余弦相似度做相似度分析
总结思路: • (1)使用TF-IDF,找出两篇文章的关键词; • (2)每篇文章各取出若干个关键词(比如20个),合并成一个集合,并包含了
NLP-自然语言处理 NLP方法论之争
基于规则 VS 基于统计
基于规则: 大量人工操作,人类总结的规则有限,难以对抗复杂语言现象 基于统计: 对没有见过的语言现象进行估计 规则+统计 数学理论:概率统计、信息论、线性代数
NLP-自然语言处理
谢谢观看!
• 来自百度文库重系数 • 逆文档频率IDF( Inverse Document Frequency基于统计): • 它的大小与一个词的常见程度成反比。 • 最小权重:是 的 在 …… • 较小权重:中国 • 较大权重:蜜蜂 养殖 蜂蜜
NLP-自然语言处理 TF-IDF
某个词对文章的重要性越高,它的TF-IDF值就越大。所以,排在最 前面的几个词,就是这篇文章的关键词。
NLP-自然语言处理 NLP的历史
NLP的发展趋势:
基于规则
基于统计
自然语言中词的多义性很难用规则来描述,而是严重依赖于上下文, 语境,甚至是常识,基于统计理论避开了一些技术难题
NLP-自然语言处理 编程语言和自然语言
相同点:表达的都是想法
不同点: 编程语言基于人构建的一些规则,有语法规则,规则性强
比如编程中的if else ()之类的,必须按照其规定语法来写,机器 才能识别,而自然语言很多时候你表达意思,规则性弱
NLP-自然语言处理 NLP实际问题(语义)
句子一: 我们把香蕉给猴子,因为它们饿了
句子二: 我们把香蕉给猴子,因为它们熟透了
在第一句中指的是“猴子” 在第二句中指的是“香蕉”。 如果不了解猴子和香蕉的属性,无法区分它们指的是谁。
从实际应用的角度: 并非每一样语言处理的应用都需要深层理解语义,情感分析,NLP 的发展过程中的很多中间技术产物已经广泛应用构建更加有效的人 机交互方式
NLP-自然语言处理 应用场景
智能语音、聊天机器人、文本分析、搜索引擎、语音助手、 机器翻译、问答系统等等
“人工智能之父” 艾伦.图灵
图灵(1950)
NLP-自然语言处理 百度NLP-词语相似度
维度:
NLP-自然语言处理 百度NLP-短文本相似度
NLP-自然语言处理 百度NLP-情感分析
NLP-自然语言处理
百度NLP-文章分类
针对网络各类媒体文章进行快速的内容理解,根据输入含有标题的 文章,输出多个内容标签以及对应的置信度,用于给用户文章推荐 、文章分类等场景。 iphone手机出现“白苹果”原因及解决办法,用苹果手机的可以 看下
NLP-自然语言处理 NLP实际问题(歧义)
Time flies like an arrow 怎么翻译?
time 名词:“时间” 动词:“测定、拨准”
flies 单数第三人称动词“飞” 名词复数“苍蝇”
like 动词“喜欢” 介词“像”
NLP-自然语言处理 NLP实际问题(歧义)
基于上述得出的含义分别为: ① 时间像箭一样飞驰; ② 测量那些像箭一样的苍蝇;
去掉停用词后: 中国"、"蜜蜂"、"养殖"这三个词的出现次数一样多。这是不是意味 着,作为关键词,它们的重要性是一样的?
NLP-自然语言处理
TF-IDF
• 答案:重要性不一样,蜜蜂、养殖的权重大于中国
• 如果某个词比较少见,但是它在这篇文章中多次出现,那么它很 可能就反映了这篇文章的特性,正是我们所需要的关键词,对应 权重就高
自然语言处理
NLP-自然语言处理
目录
• NLP的概念 • NLP发展历程 • 编程语言与自然语言 • NLP实际应用 • NLP技术要点 • 结巴分词 • TF-IDF • 相似度计算 • NLP相关开源API • NLP技术难点总结 • 方法论之争和前景
NLP-自然语言处理
什么是自然语言处理
NLP, Natural Language Processing 用机器处理人类语言的理论和技术研究在人与人交际中以及人与计算机 交际中的语言问题的一门学科。
NLP-自然语言处理 Synonyms词语近义词
NLP-自然语言处理 Synonyms短句相似度
NLP-自然语言处理 NLP研究困难总结
歧义 (ambiguity) 病构 (ill-formedness) 复述 (paraphrasing)
NLP-自然语言处理
NLP研究困难总结
歧义
[咬死猎人] 的狗 咬死 [猎人的狗]
NLP要研制表示语言能力和语言应用的模型,建立计算框架来实现这样 的语言模型,提出相应的方法来不断完善这样的模型,并根据语言模型 设计各种实用系统,以及对这些系统的评测技术。
--Bill Manaris, 《从人机交互的角度看自然语言处理》
其它名称
– 自然语言理解(Natural Language Understanding) – 计算语言学(CL, Computational Linguistics) – 人类语言技术(Human Language Technology)
NLP-自然语言处理 TF-IDF
文章用TF-IDF计算达到的结果:
NLP-自然语言处理 TF-IDF结合余弦相似度做相似度分析
TF-IDF 优点:简单快速,结果比较符合实际情况。
缺点:以“词频”“权重”衡量一个词的重要性,仍不够全面
可能一话的词的先后顺序也会影响词语句的表达,TF-IDF无法体现 词的位置信息,出现位置靠前的词与出现位置靠后的词,都被视为 重要性相同,这是不正确的
NLP-自然语言处理 NLP的历史
20世纪50年代起步--机器翻译
利用计算机自动地将一种自然语言翻译为另外一种自然语言
“I like Beijing Tiananmen Square”
“我爱北京天安门”
“我爱北京天安门”
“I like Beijing Tiananmen Square”
NLP-自然语言处理 NLP的历史
有些词我们需要自己定义构造
NLP-自然语言处理 TF-IDF
提取文章特征词 网上一篇文章《中国的蜜蜂养殖》,怎么提取我们想要的一些关键 词汇(特征词)?
思路:哪些词的出现频率高?我们认为是关键词?这样提取是否合理?
NLP-自然语言处理 TF-IDF
答案:不合理 停用词:不 是 在 的 …….. 这些词频率出现会很高,但是属于文章中普遍存在的词,没有实际 意义,所以我们需要先处理掉这些词
计算词频
• 句子A:我 1,喜欢 2,看 2,电视 1,电影 1,不 1,也 0。 • 句子B:我 1,喜欢 2,看 2,电视 1,电影 1,不 2,也 1。
NLP-自然语言处理 TF-IDF结合余弦相似度做相似度分析
构造词向量(包含了位置信息)
• 句子A:[1, 2, 2, 1, 1, 1, 0] • 句子B:[1, 2, 2, 1, 1, 2, 1] • 向量
NLP-自然语言处理
TF-IDF结合余弦相似度做相似度分析
两个句子
• 句子A:我喜欢看电视,不喜欢看电影。 • 句子B:我不喜欢看电视,也不喜欢看电影。
分词
• 句子A:我/喜欢/看/电视,不/喜欢/看/电影。 • 句子B:我/不/喜欢/看/电视,也/不/喜欢/看/电影。
提取特征词
我,喜欢,看,电视,电影,不,也。
50-70年代—模式匹配
例如计算机答疑系统
用户输入
题库查找答案
返回结果
缺点:用户输入的信息,题库中没有匹配出来,就没有答案 改进:增加同义词、反义词等等 缺点:效率低,不灵活
NLP-自然语言处理 NLP的历史
90年代至今—基于统计
有一定时代背景,互联网的发展提供海量的自然语言供研究应(社 交对话、邮件、文章等等),方便学者和研究人员基于大量语料基 础之上构建自然语言处模型 又称“经验主义”语言模型,使用大规模真实语料库训练,得出结 果,避开一些歧义、语境等导致的技术难题
NLP-自然语言处理
降维
通过某种数学变换将原始高维属性空间转变为一个低维子空间。 最简单例子:拍照。
降维有什么作用呢?
1. 数据在低维下更容易处理、更容易使用; 2. 相关特征,特别是重要特征更能在数据中明确的显示出来; 3. 如果只有两维或者三维的话,更便于可视化展示; 4. 去除数据噪声 5. 降低算法开销
NLP-自然语言处理 NLP研究困难总结
病构
真实文本的语言现象非常复杂,不规范 例子:他非常男人。(名词不能受程度副词修饰)
NLP-自然语言处理
NLP研究困难总结
复述
在与原句表达相同的语义内容,同一种语言下的原句的替代形式
– 毛泽东出生于1893年 – 毛泽东出生在1893年 – 毛泽东诞生于1893年 – 毛泽东同志是1893年出生的 – 毛主席生于1893年 – 毛泽东生于光绪6年(虚拟的)
位置信息,计算每篇文章对于这个集合中的词的词频;(也可以引入权重) • (3)生成两篇文章各自的词频向量; • (4)计算两个向量的余弦相似度,值越大就表示越相似。
NLP-自然语言处理 百度NLP-词语相似度
输入两个词,得到两个词的相似度结果
意义: 构建词向量时候,为了避免词向量维度过高,可以用相似 词语进行代替
NLP-自然语言处理 微信接入图灵机器人应用
NLP-自然语言处理 微信接入图灵机器人应用
NLP-自然语言处理
二、NLP技术应用
1、分词(结巴分词) 2、TF-IDF 3、余弦相似度 4、词语相似度 5、句子相似度
NLP-自然语言处理
二、NLP技术应用-分词
分词:
中文词与词之间没有明显的分隔符,使得计算机对于词的准确识别变得 非常困难。 因此,分词就成了中文处理中所要解决的最基本的问题,分词的性能对 后续的语言处理如机器翻译、信息检索等有着至关重要的影响。
NLP-自然语言处理
二、NLP技术应用-分词
NLP-自然语言处理
中文结巴分词实例
对绕口令进行分词
NLP-自然语言处理 中文结巴分词实例 –自定义词典
有些词我们需要自己定义构造
NLP-自然语言处理
结巴分词实例 –自定义词典
有些词我们需要自己定义构造
NLP-自然语言处理
2. 中文结巴分词实例 –自定义词典
NLP-自然语言处理 NLP实际问题(分析过程)
词意
句意
语义(语境)
语义处理相对比较难,需要联系上下文,语境,还有一些情感色彩,这 是自然语言处理中的难点
NLP-自然语言处理
为什么研究自然语言处理?
NLP有难度,那为什么还要研究?
从科学研究的角度: 探寻人类通过语言来交互信息的奥秘,更好地理解语言本身的内在 规律
NLP-自然语言处理 TF-IDF结合余弦相似度做相似度分析
计算结果:
余弦相似度计算结果区间:[-1 , 1]
NLP-自然语言处理
TF-IDF结合余弦相似度做相似度分析
总结思路: • (1)使用TF-IDF,找出两篇文章的关键词; • (2)每篇文章各取出若干个关键词(比如20个),合并成一个集合,并包含了
NLP-自然语言处理 NLP方法论之争
基于规则 VS 基于统计
基于规则: 大量人工操作,人类总结的规则有限,难以对抗复杂语言现象 基于统计: 对没有见过的语言现象进行估计 规则+统计 数学理论:概率统计、信息论、线性代数
NLP-自然语言处理
谢谢观看!
• 来自百度文库重系数 • 逆文档频率IDF( Inverse Document Frequency基于统计): • 它的大小与一个词的常见程度成反比。 • 最小权重:是 的 在 …… • 较小权重:中国 • 较大权重:蜜蜂 养殖 蜂蜜
NLP-自然语言处理 TF-IDF
某个词对文章的重要性越高,它的TF-IDF值就越大。所以,排在最 前面的几个词,就是这篇文章的关键词。
NLP-自然语言处理 NLP的历史
NLP的发展趋势:
基于规则
基于统计
自然语言中词的多义性很难用规则来描述,而是严重依赖于上下文, 语境,甚至是常识,基于统计理论避开了一些技术难题
NLP-自然语言处理 编程语言和自然语言
相同点:表达的都是想法
不同点: 编程语言基于人构建的一些规则,有语法规则,规则性强
比如编程中的if else ()之类的,必须按照其规定语法来写,机器 才能识别,而自然语言很多时候你表达意思,规则性弱
NLP-自然语言处理 NLP实际问题(语义)
句子一: 我们把香蕉给猴子,因为它们饿了
句子二: 我们把香蕉给猴子,因为它们熟透了
在第一句中指的是“猴子” 在第二句中指的是“香蕉”。 如果不了解猴子和香蕉的属性,无法区分它们指的是谁。
从实际应用的角度: 并非每一样语言处理的应用都需要深层理解语义,情感分析,NLP 的发展过程中的很多中间技术产物已经广泛应用构建更加有效的人 机交互方式
NLP-自然语言处理 应用场景
智能语音、聊天机器人、文本分析、搜索引擎、语音助手、 机器翻译、问答系统等等
“人工智能之父” 艾伦.图灵
图灵(1950)
NLP-自然语言处理 百度NLP-词语相似度
维度:
NLP-自然语言处理 百度NLP-短文本相似度
NLP-自然语言处理 百度NLP-情感分析
NLP-自然语言处理
百度NLP-文章分类
针对网络各类媒体文章进行快速的内容理解,根据输入含有标题的 文章,输出多个内容标签以及对应的置信度,用于给用户文章推荐 、文章分类等场景。 iphone手机出现“白苹果”原因及解决办法,用苹果手机的可以 看下
NLP-自然语言处理 NLP实际问题(歧义)
Time flies like an arrow 怎么翻译?
time 名词:“时间” 动词:“测定、拨准”
flies 单数第三人称动词“飞” 名词复数“苍蝇”
like 动词“喜欢” 介词“像”
NLP-自然语言处理 NLP实际问题(歧义)
基于上述得出的含义分别为: ① 时间像箭一样飞驰; ② 测量那些像箭一样的苍蝇;
去掉停用词后: 中国"、"蜜蜂"、"养殖"这三个词的出现次数一样多。这是不是意味 着,作为关键词,它们的重要性是一样的?
NLP-自然语言处理
TF-IDF
• 答案:重要性不一样,蜜蜂、养殖的权重大于中国
• 如果某个词比较少见,但是它在这篇文章中多次出现,那么它很 可能就反映了这篇文章的特性,正是我们所需要的关键词,对应 权重就高
自然语言处理
NLP-自然语言处理
目录
• NLP的概念 • NLP发展历程 • 编程语言与自然语言 • NLP实际应用 • NLP技术要点 • 结巴分词 • TF-IDF • 相似度计算 • NLP相关开源API • NLP技术难点总结 • 方法论之争和前景
NLP-自然语言处理
什么是自然语言处理
NLP, Natural Language Processing 用机器处理人类语言的理论和技术研究在人与人交际中以及人与计算机 交际中的语言问题的一门学科。
NLP-自然语言处理 Synonyms词语近义词
NLP-自然语言处理 Synonyms短句相似度
NLP-自然语言处理 NLP研究困难总结
歧义 (ambiguity) 病构 (ill-formedness) 复述 (paraphrasing)
NLP-自然语言处理
NLP研究困难总结
歧义
[咬死猎人] 的狗 咬死 [猎人的狗]
NLP要研制表示语言能力和语言应用的模型,建立计算框架来实现这样 的语言模型,提出相应的方法来不断完善这样的模型,并根据语言模型 设计各种实用系统,以及对这些系统的评测技术。
--Bill Manaris, 《从人机交互的角度看自然语言处理》
其它名称
– 自然语言理解(Natural Language Understanding) – 计算语言学(CL, Computational Linguistics) – 人类语言技术(Human Language Technology)
NLP-自然语言处理 TF-IDF
文章用TF-IDF计算达到的结果:
NLP-自然语言处理 TF-IDF结合余弦相似度做相似度分析
TF-IDF 优点:简单快速,结果比较符合实际情况。
缺点:以“词频”“权重”衡量一个词的重要性,仍不够全面
可能一话的词的先后顺序也会影响词语句的表达,TF-IDF无法体现 词的位置信息,出现位置靠前的词与出现位置靠后的词,都被视为 重要性相同,这是不正确的
NLP-自然语言处理 NLP的历史
20世纪50年代起步--机器翻译
利用计算机自动地将一种自然语言翻译为另外一种自然语言
“I like Beijing Tiananmen Square”
“我爱北京天安门”
“我爱北京天安门”
“I like Beijing Tiananmen Square”
NLP-自然语言处理 NLP的历史
有些词我们需要自己定义构造
NLP-自然语言处理 TF-IDF
提取文章特征词 网上一篇文章《中国的蜜蜂养殖》,怎么提取我们想要的一些关键 词汇(特征词)?
思路:哪些词的出现频率高?我们认为是关键词?这样提取是否合理?
NLP-自然语言处理 TF-IDF
答案:不合理 停用词:不 是 在 的 …….. 这些词频率出现会很高,但是属于文章中普遍存在的词,没有实际 意义,所以我们需要先处理掉这些词
计算词频
• 句子A:我 1,喜欢 2,看 2,电视 1,电影 1,不 1,也 0。 • 句子B:我 1,喜欢 2,看 2,电视 1,电影 1,不 2,也 1。
NLP-自然语言处理 TF-IDF结合余弦相似度做相似度分析
构造词向量(包含了位置信息)
• 句子A:[1, 2, 2, 1, 1, 1, 0] • 句子B:[1, 2, 2, 1, 1, 2, 1] • 向量
NLP-自然语言处理
TF-IDF结合余弦相似度做相似度分析
两个句子
• 句子A:我喜欢看电视,不喜欢看电影。 • 句子B:我不喜欢看电视,也不喜欢看电影。
分词
• 句子A:我/喜欢/看/电视,不/喜欢/看/电影。 • 句子B:我/不/喜欢/看/电视,也/不/喜欢/看/电影。
提取特征词
我,喜欢,看,电视,电影,不,也。
50-70年代—模式匹配
例如计算机答疑系统
用户输入
题库查找答案
返回结果
缺点:用户输入的信息,题库中没有匹配出来,就没有答案 改进:增加同义词、反义词等等 缺点:效率低,不灵活
NLP-自然语言处理 NLP的历史
90年代至今—基于统计
有一定时代背景,互联网的发展提供海量的自然语言供研究应(社 交对话、邮件、文章等等),方便学者和研究人员基于大量语料基 础之上构建自然语言处模型 又称“经验主义”语言模型,使用大规模真实语料库训练,得出结 果,避开一些歧义、语境等导致的技术难题
NLP-自然语言处理
降维
通过某种数学变换将原始高维属性空间转变为一个低维子空间。 最简单例子:拍照。
降维有什么作用呢?
1. 数据在低维下更容易处理、更容易使用; 2. 相关特征,特别是重要特征更能在数据中明确的显示出来; 3. 如果只有两维或者三维的话,更便于可视化展示; 4. 去除数据噪声 5. 降低算法开销
NLP-自然语言处理 NLP研究困难总结
病构
真实文本的语言现象非常复杂,不规范 例子:他非常男人。(名词不能受程度副词修饰)
NLP-自然语言处理
NLP研究困难总结
复述
在与原句表达相同的语义内容,同一种语言下的原句的替代形式
– 毛泽东出生于1893年 – 毛泽东出生在1893年 – 毛泽东诞生于1893年 – 毛泽东同志是1893年出生的 – 毛主席生于1893年 – 毛泽东生于光绪6年(虚拟的)
位置信息,计算每篇文章对于这个集合中的词的词频;(也可以引入权重) • (3)生成两篇文章各自的词频向量; • (4)计算两个向量的余弦相似度,值越大就表示越相似。
NLP-自然语言处理 百度NLP-词语相似度
输入两个词,得到两个词的相似度结果
意义: 构建词向量时候,为了避免词向量维度过高,可以用相似 词语进行代替
NLP-自然语言处理 微信接入图灵机器人应用
NLP-自然语言处理 微信接入图灵机器人应用
NLP-自然语言处理
二、NLP技术应用
1、分词(结巴分词) 2、TF-IDF 3、余弦相似度 4、词语相似度 5、句子相似度
NLP-自然语言处理
二、NLP技术应用-分词
分词:
中文词与词之间没有明显的分隔符,使得计算机对于词的准确识别变得 非常困难。 因此,分词就成了中文处理中所要解决的最基本的问题,分词的性能对 后续的语言处理如机器翻译、信息检索等有着至关重要的影响。
NLP-自然语言处理
二、NLP技术应用-分词
NLP-自然语言处理
中文结巴分词实例
对绕口令进行分词
NLP-自然语言处理 中文结巴分词实例 –自定义词典
有些词我们需要自己定义构造
NLP-自然语言处理
结巴分词实例 –自定义词典
有些词我们需要自己定义构造
NLP-自然语言处理
2. 中文结巴分词实例 –自定义词典