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--自然语言处理与机器学习会议的更多相关文章

  1. NLP 自然语言处理实战

    前言 自然语言处理 ( Natural Language Processing, NLP) 是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和 ...

  2. flask 第六章 人工智能 百度语音合成 识别 NLP自然语言处理+simnet短文本相似度 图灵机器人

    百度智能云文档链接 : https://cloud.baidu.com/doc/SPEECH/index.html 1.百度语音合成 概念: 顾名思义,就是将你输入的文字合成语音,例如: from a ...

  3. 《转载》python/人工智能/Tensorflow/自然语言处理/计算机视觉/机器学习学习资源分享

    本次分享一部分python/人工智能/Tensorflow/自然语言处理/计算机视觉/机器学习的学习资源,也是一些比较基础的,如果大家有看过网易云课堂的吴恩达的入门课程,在看这些视频还是一个很不错的提 ...

  4. 聊天机器人(chatbot)终极指南:自然语言处理(NLP)和深度机器学习(Deep Machine Learning)

    在过去的几个月中,我一直在收集自然语言处理(NLP)以及如何将NLP和深度学习(Deep Learning)应用到聊天机器人(Chatbots)方面的最好的资料. 时不时地我会发现一个出色的资源,因此 ...

  5. NLP 自然语言处理

    参考: 自然语言处理怎么最快入门:http://www.zhihu.com/question/ 自然语言处理简介:http://wenku.baidu.com/link?url=W6Mw1f-XN8s ...

  6. NLP 自然语言处理之综述

    (1) NLP 介绍 NLP 是什么? NLP (Natural Language Processing) 自然语言处理,是计算机科学.人工智能和语言学的交叉学科,目的是让计算机处理或"理解 ...

  7. [NLP自然语言处理]谷歌BERT模型深度解析

    我的机器学习教程「美团」算法工程师带你入门机器学习   已经开始更新了,欢迎大家订阅~ 任何关于算法.编程.AI行业知识或博客内容的问题,可以随时扫码关注公众号「图灵的猫」,加入”学习小组“,沙雕博主 ...

  8. NLP自然语言处理学习笔记二(初试)

    前言: 用Python对自然语言处理有很好的库.它叫NLTK.下面就是对NLTK的第一尝试. 安装: 1.安装Pip 比较简单,得益于CentOS7自带的easy_install.执行一行命令就可以搞 ...

  9. NLP自然语言处理 jieba中文分词,关键词提取,词性标注,并行分词,起止位置,文本挖掘,NLP WordEmbedding的概念和实现

    1. NLP 走近自然语言处理 概念 Natural Language Processing/Understanding,自然语言处理/理解 日常对话.办公写作.上网浏览 希望机器能像人一样去理解,以 ...

随机推荐

  1. 再谈JavaScript中的闭包

    一.什么是闭包 闭包就是有权访问另一个函数作用域中变量的函数,因此,闭包的本质是一个函数.当一个内部函数被保存到外部时,就会生成闭包. 二.闭包的作用 1.实现公有变量,即通过局部变量实现全局变量的效 ...

  2. ThinkPHP 模型方法 getField() 和 select() 使用技巧

    getField() 使用技巧 getField() 方法是 ThinkPHP 中用来获取字段值的方法,区别于 select() 和 find() 方法,通常仅用于获取个别字段的值.但是事实上并没有那 ...

  3. 使用position:relative制作下边框下的小三角

    在制作tab选项卡的时候,有时会有下边框,且下边框下另一个头向下的小三角,这全然能够用css来实现,而不必使用背景图片. 由于使用背景图片时会有一个问题,选项卡内容字数不同.导致使用背景图片时无法控制 ...

  4. User Agent Strings列表 — Kejun's Blog

    曾经,ME 就需要这里的东西了. http://www.useragentstring.com/pages/All/

  5. react-router 从 v2/v3 to v4 迁移(翻译)

    react-router v4 是完全重写的,所以没有简单的迁移方式,这份指南将为您提供一些步骤,以帮助您了解如何升级应用程序. 注意: 这份迁移指南适用于react-router v2和v3,但为简 ...

  6. Java基础加强总结(三)——代理(Proxy)

    一.代理的概念 动态代理技术是整个java技术中最重要的一个技术,它是学习java框架的基础,不会动态代理技术,那么在学习Spring这些框架时是学不明白的. 动态代理技术就是用来产生一个对象的代理对 ...

  7. 使用Edge模式通知Internet Explorer以最高级别的可用模式显示内容

    一.EasyUI$的window('open')在IE8下兼容性问题 今天在公司使用EasyUI的$('#win').window('open');方法打开一个window窗体时发现EaysUI的脚本 ...

  8. AngularJS自定义Directive不一定返回对象

    AngularJS中,当需要自定义Directive时,通常返回一个对象,就像如下的写法: angular.module('modulename') .directive('myDirective', ...

  9. WCF X.509证书双向认证小结

    最近在学习WCF X.509证书验证,想实现使用证书实现服务端和客户端的双向认证,实现原理是利用了数字证书包含的一对非对称密钥来实现数字签名及加密.所谓非对称密钥是采用两个密钥将加密和解密能力分开:一 ...

  10. android:活动的最佳实践

    2.6.1    知晓当前是在哪一个活动 这个技巧将教会你,如何根据程序当前的界面就能判断出这是哪一个活动.可能你会觉 得挺纳闷的,我自己写的代码怎么会不知道这是哪一个活动呢?很不幸的是,在你真正进入 ...