NLP--自然语言处理与机器学习会议
http://blog.csdn.net/ice110956/article/details/17090061
整理至11月中旬在重庆参加的自然语言处理与机器学习会议,第一讲为自然语言处理。
由基本理论到实际运用,整理了基本的框架。
1. 自然语言处理基础
词性标注(POS):
为句子中的每个词语标注词性,可看做是句法分析的关键任务,也可以看做是句法分析的最低层次.对后续句法分析,语义消歧等任务非常有用.
POS集合,也就是基本词性规则:
常用的是PennTreebank set,包好45个tags
基本方法:
基于规则:人工基于词汇与其他语言知识构造标注规则
基于学习:基于人工语料进行训练
统计模型:HMM,Maximum EntropyMarkov(MEMM),conditional random field(CRF)
规则学习:transformation basedlearning(TBL)
序列POS:
POS问题可以看做最一个序列进行POS的问题.
基于分类的序列标注:
把每个词看做上下文的一个特征,如相邻的词,用分类算法来解决.
如:John saw thefish and decided to take it to the table.
Saw可以看成john + saw +fish的一个特征,用分类算法来POS.
缺点:
1.不容易集成来自左右两个方向上的词语标记信息.
2.难以表达与传递词语标签半段的不确定性,难以为序列中所有词语统一确定最可能的联合标签判断.
具体的算法有前向分类与后向分类.
基于概率的序列标注:概率序列标注模型允许集成序列中多个相互依赖的个体分类的不确定性,统一确定最可能的全局标签判断.
典型模型:HMM,MEMM,CRF
其中,HMM可使用监督学习与无监督学习,半监督学习等等.其中使用viterbi动态规划算法.
中文语法分析效果
总体F值为95%
主要错误为新词;命名实体识别效果偏低,效果跟文本类型有关.总体水品超过90%.
句法分析(句子结构)
类型:句法分析与依存关系分析;完全分析与浅层分析.
涉及知识:组块分析(chunking),Chomsky语法层次,Context Free Grammars(CFG)上下文无关语法,句法树(parsing)等.
句法结构分析(parsing):
1.给定一串终结符号和一个CFG,确定该符号是否能够被CFG所生成,同时为该符号串返回句法树.
2.搜索以获取句法树的推导
Top-down parsing:从初始符开始
Bottom-up parsing:从符号串中的终结符开始
3. 动态规划parsing方法
CKY(cocke-kasami-younger)算法;基于自底向上分析,需要对句法进行规范化
Enrley parser:自顶向下分析,不需要句法规范化,但更加复杂
Chart parser:融合自顶向下与自底向上搜索
统计句法分析
使用句法概率模型为每颗句法树计算概率值;允许使用有监督学习和无监督学习得到句法分析模型.
Probabilistic context freegrammar(PCFG):CFG的概率形式;以及概率话的CKY等.
已训练得到的树库:
见wiki:Treebank
中文句法分析效果:
短语结构总体水平F值>=80%,依存关系为90%
2. 互联网语义计算与信息总结
语义分析(句子含义):
获取语言单元的意义:不同层次,词汇级,句子级,篇章级
句法驱动的句子级语义分析:句子的语义分析由其组成成分的语义组合而得到.基于词汇和语法信息获取句子意义表达.
1.运用句法树生成一阶逻辑表达式.
2.语法角色标注:施事,受事,来源,目的,工具等.
语法分析效果:深层语义分析很困难,目前没有成熟的技术和系统;语义角色标注的总体水平(F值)在70%
篇章分析(discourseparsing)
篇章是一组连贯且具有结构的句子,如独白,对话.
主要任务:篇章分割(分段)句间关系识别,指代消解.
理想情况下需要深层文本理解技术来应对以上任务,但目前为止主要采用浅层分析方法.
1.篇章分割:
将文档分割成子话题的线性序列.如科技文章可分为:摘要,简介,方法,结果,结论等等.
应用:文档摘要:每个段落分别摘要;信息检索与信息抽取:在合适的段落上进行
相关任务:对于语音识别文本的段落分割.
方法:基于凝聚性的方法(Cohesion-based approach)
将文旦分割成子话题,每个子话题中的段落/句子之间相互凝聚子话题边界处的凝聚性较差
TextTiling算法.
2.篇章结构(discoursestructure):
基于连贯关系的篇章层次结构,类似于句法树的结构.树节点表示句子之间的连贯关系:discourse segment(notlinear)
应用:文摘系统:可以忽略或合并被elaboration关系连接的单元;问答系统:利用explanation关系进行回答;信息抽取系统:不需要对从没有连贯关系的单元上抽取的信息融合.
3.篇章解析
指代消除(referenceresolution):确定哪个实体被哪个语言表达所意指.
分类:
coreference resolution(共指消解):发现指向相同实体的指称表达式,也就是寻找共指链,如:{Mr.Obama,The president,he}
pronominal Anaphora Resolution(人称代词消解):如下一句的he指向Mr.Obama.
词汇语义计算
我想扁你->Ithink flat you.
研究意义:怎样表达词语的意义?词语之间是怎样关联的?同义词,反义词,上位词,下位词,相似不相似等等.
名词:词义(word senses):
一个词语的特定意义
一个词语可以有多个词义
一个词义能被一个注释所描述.如apple:水果,红色,黄色或者绿色,甜味.
词汇相似度(wordsimilarity)
同义词/反义词等二值关系
更宽松的准则:词汇相似度/词义距离(Word similarity or word semantic distance)
两种计算方法:
基于语义词典的方法(Thesaurus-based):构造一个wordnet,判断在wordnet中的关系
基于语料统计的方法(Distributional/Statisticalalgorithm):比较词语在语料库中的上下文.
基于Wordnet的词义相似度:
著名的英文词义关系计算资源,同义词库。
基本单元为一个synet,也就是一个同义词集合。
每个词条包含多个synet,用来注解。
不同的synets之间通过不同的词义关系相连。
语义词典方法的缺点:
许多语言没有好用的语义词典。许多新词不被包含。限于名词,对于形容词和动词并不完善。
基于语料统计的词汇相似度:
比如根据许多句话以及上下文,我们可以推断某个未知的英文单词的含义。语料统计也是相似的过程。通过互联网的语料,来统计某个词的语义。或者有机遇wiki百科的语义分析等。
词义消歧
计算完语义后,就可以通过语义来消歧。
互联网信息摘要
对海量的内容进行提炼与总结,以简洁,直观的摘要来概括用户所关注的主要内容。比如微博图谱,新闻摘要等等,是自然语言处理与篇章分析的一个主要运用。
NLP--自然语言处理与机器学习会议的更多相关文章
- NLP 自然语言处理实战
前言 自然语言处理 ( Natural Language Processing, NLP) 是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和 ...
- flask 第六章 人工智能 百度语音合成 识别 NLP自然语言处理+simnet短文本相似度 图灵机器人
百度智能云文档链接 : https://cloud.baidu.com/doc/SPEECH/index.html 1.百度语音合成 概念: 顾名思义,就是将你输入的文字合成语音,例如: from a ...
- 《转载》python/人工智能/Tensorflow/自然语言处理/计算机视觉/机器学习学习资源分享
本次分享一部分python/人工智能/Tensorflow/自然语言处理/计算机视觉/机器学习的学习资源,也是一些比较基础的,如果大家有看过网易云课堂的吴恩达的入门课程,在看这些视频还是一个很不错的提 ...
- 聊天机器人(chatbot)终极指南:自然语言处理(NLP)和深度机器学习(Deep Machine Learning)
在过去的几个月中,我一直在收集自然语言处理(NLP)以及如何将NLP和深度学习(Deep Learning)应用到聊天机器人(Chatbots)方面的最好的资料. 时不时地我会发现一个出色的资源,因此 ...
- NLP 自然语言处理
参考: 自然语言处理怎么最快入门:http://www.zhihu.com/question/ 自然语言处理简介:http://wenku.baidu.com/link?url=W6Mw1f-XN8s ...
- NLP 自然语言处理之综述
(1) NLP 介绍 NLP 是什么? NLP (Natural Language Processing) 自然语言处理,是计算机科学.人工智能和语言学的交叉学科,目的是让计算机处理或"理解 ...
- [NLP自然语言处理]谷歌BERT模型深度解析
我的机器学习教程「美团」算法工程师带你入门机器学习 已经开始更新了,欢迎大家订阅~ 任何关于算法.编程.AI行业知识或博客内容的问题,可以随时扫码关注公众号「图灵的猫」,加入”学习小组“,沙雕博主 ...
- NLP自然语言处理学习笔记二(初试)
前言: 用Python对自然语言处理有很好的库.它叫NLTK.下面就是对NLTK的第一尝试. 安装: 1.安装Pip 比较简单,得益于CentOS7自带的easy_install.执行一行命令就可以搞 ...
- NLP自然语言处理 jieba中文分词,关键词提取,词性标注,并行分词,起止位置,文本挖掘,NLP WordEmbedding的概念和实现
1. NLP 走近自然语言处理 概念 Natural Language Processing/Understanding,自然语言处理/理解 日常对话.办公写作.上网浏览 希望机器能像人一样去理解,以 ...
随机推荐
- Codeforces Round #258 (Div. 2) D. Count Good Substrings 水题
D. Count Good Substrings 题目连接: http://codeforces.com/contest/451/problem/D Description We call a str ...
- MongoDB简单使用 —— 安装
下载 MongoDB的下载路径为:MongoDB Download Center.Win.Linux.Mac平台的都有,光Win平台的就提供msi和zip绿色版本的,这里我下载的是zip版本的. 命令 ...
- ARM 非对齐的数据访问操作
I’m confused about unaligned memory accesses on ARM. My understanding was that they’re not allowed — ...
- C#实现的三种方式实现模拟键盘按键
1.System.Windows.Forms.SendKeys 组合键:Ctrl = ^ .Shift = + .Alt = % 模拟按键:A private void button1_Click(o ...
- SourceTree 的初次使用的两个小问题
菜鸟才开始使用SourceTree,出现了两个小问题,特此整理一下,希望对各位新手有帮助.刚开始以为装了SourceTree就不用装git了,其实不然,不装git就会出现下面第一个问题: 1.新手使用 ...
- .net连mysql数据库汇总
另外MySql官方出了一个在csharp里面连接MySql的Connector,可以试试 http://dev.mysql.com/downloads/#connector-net <add n ...
- RabbitMQ的应用场景以及基本原理介绍(转)
本文转自https://blog.csdn.net/whoamiyang/article/details/54954780 1.背景 RabbitMQ是一个由erlang开发的AMQP(Advanve ...
- C#编程(六十三)----------并行LINQ
并行LINQ .NET4在System.Linq命名空间中包含一个新类ParallelEnumerable,可以分解查询的工作使其分布在多个线程上.尽管Enumerable类给IEnumerable& ...
- git推送tag到远端服务器
git推送tag到远端服务器 默认情况下,git push并不会把tag标签传送到远端服务器上,只有通过显式命令才能分享标签到远端仓库.1.push单个tag,命令格式为:git push origi ...
- 【Android病毒分析报告】- 手机支付毒王“银行悍匪”的前世今生
from://http://blog.csdn.net/androidsecurity/article/details/18984165 2014年1月8日,央视曝光了一款名为“银行悍匪”的手机银行木 ...