NLP--2 语言结构和传统pipeline

四个阶段

自然语言是复杂的符号(词,短语,句子)系统 比ordinary符号更多的内部结构, 以下四层:

  • phonological,individual sounds,书写语言,符号,字母;(最低)词素
  • morphological,morphemes级别,最小意思语言单元,或者组成词;
  • syntactic,词组成句子
  • semantic,meaning级,(前三个都不涉及meaning,只是sign),例如语言符号的表示
    以上四种linguistic sign不全面,
    传统的语义不涉及非文字的,上下文依赖的意思成分,这都留给语用学(pragmatics);
    discourse analysis(篇章分析):分析关系,在比句子大的单元(段落,整个对话等)。
    例如,字母为phonological,字母组合为morphological,词组成句子为syntactic,最后是语义结构。

语法

依赖语言符号(sign),定义更重要的概念:
语言是一组符号,语法包含:一组signs,语言的词典(lexicon)和有限的操作使一个sign映射到另一个;
语法生成语言,当操作了一定数量次数的语法在他的词典上;
语法操作分为 上一章说的四个部分,同时进行;也有一些严格在morphology和syntax或者只是syntax。

描述语法

语言的中心目标是描述语法生成自然语言:
explicitly,通过描述字典和定义operation生成语言元素;
implicitly,通过提供已经由语法生成的例子表示集合(带有morphology,syntactic标签)。

解析和生成(语法相关的任务)

1 parsing 解析:

  • 描述是否一系列手写字符属于给定语法生成的语言:是否包含语言词汇,well-formed和有意义;
  • 定义音韵,语法,语义结构根据手写字符,由给定语法生成的语言。
    使大部分的NLP task能通过解析text输入和根据特定的语法生成他们的表示结构;用结果分析作为特征为以后的处理;
    传统的NLP pipeline就是解析pipeline for一个或多个语法。每个成分生成输入表示结构的一部分

2 生成 Generation:

  • 无条件的:生成语法语言元素(实践上没用)
  • 有条件的:生成满足一定条件的语法语言元素(有意义,chatbot)

传统pipeline的处理人任务

1 形态和语法:
句子层面:

  • tokenization,得到word 边界
  • 句子 splitting

子结构:

  • 形态分析,uncover subword结构

语法结构层面:

  • 部分标签
  • 深浅语法解析

2 语义

  • 定义 entity recognition
  • word sense 去歧义
  • coreference resolution/ entity linking
  • 语义角色标签(浅语义解析)
  • 深度语义解析

pipepline task

tokenization:

1
切分输入字符系列,给tokens分配类型,分成word-like 单元
不仅有词,还有标点,emoticons,不是词但时对分割有用的单元
表明这些分割是特定类型的实例组成vocabulary。(大小写属于同一个type)
什么算做一个token?
task and model-dependent(一些标点不相关,一些相关)

2 分配类型和归一化

tokenization确定token类型的过程中归一化,忽略大小写,
归一化方法:

  • 改正typos,
  • 标准化数字或日期表示方式
  • 标点(!!->!)

更radical 的策略包含分配所有的数字表述或者字典没有的都为一个type. 对于tokenization的挑战,不仅依赖方法,还依赖输入的书写,语言,domain,noise(typos)欧洲语言的缩写,数字表示,一词多义

句子分割

分割输入字符为一些句子

  • 挑战是句子的interdependence和token segmentation
  • 不正确的或者缺失的标点

形态学

1
最小的有意义单元,word包含一些morphemes(词素)

  • bound/affixes->affixes可被替换,bound词素(前后缀)只能和其他词素一起组词;
  • free/roots-> free词素可以独立作为word,root是词最有意义的内容,大部分的root都是free的。
    affixes可以分为词尾的(ing)和派生的(able)

2 词干和lemma

次干包含主要部分(太粗鲁),在所有变形的词中的base部分,有时候不是有意义的词(produc)
lemma相反,是个完整的词,是在所有的变形词中不发生变形的词(produce)

3 形态学分析任务

  • 确定一个str 是不是well-formed word
  • stemming-确定stem
  • lemmatization-确定lamma
  • 形态学tagging-给输入贴标签根据变形的语法信息(apples-plural)
  • 形态学分割-分割输入词到不同的词素
  • 完整形态学分析-分割到不同的词素并归类(根据类型和语法信息),通常包含lemmentization

4 形态学分析挑战

  • 歧义/上下文依赖
  • 复合词(两三个简单词组成)
  • 形态丰富的语言(相似的)

PoS tagging

  • part of speech 根据基本的语法角色归类(名词动词…)
  • PoS类别是上下文依赖的

open和closed PoS 类别:

  • closed:不变的那些词,语义不强,通常为没有独立意义的功能词
  • open:例如动词,经常有更新和新的词加入,通常open类别的都是内容词(有语义内容特点)

Syntactic parsing 句法分析

  • 描述well-formed sequences of words,最重要的是句子 重要的句法分析任务就是找到描述语言well-formed 句子的结构原理规则
  • 输入的是sequence of words(句子),输出的是二值化输出,well or not
  • well-formed 意味着他有满足syntactic 条件的结构描述或者syntactic 约束
  • well-formdness并不保证有意义或者coherence

1 Constituency(aka phrase 结构)和dependency based syntactic 理论对NLP很重要
2 constituent是一个词或者一组consecutive·连续的词形成了一个自然单元

  • 可以放到多种句子中
  • 可以是问句的答案
  • 可以用代词代替

3 constituency-based syntax语法

  • 分类constituent
  • 形成规则根据哪些constituent能放在一起变成更大的词,eventually形成一整个句子
    句法结构的好坏取决于它的constituency结构
  • 其树结构(有向图)几个fragment

4 dependency-based 语法(有向关系 词词依赖)
treat 词之间的dependency 关系作为基础
通常是d word 依赖 h word (h head d)在一个句子,if

  • d改变了h的含义,使其更具体,eat->eat bread(吃?具体吃什么?)
  • 省略的非对称关系 d省略,h保持它的含义;但反过来就不同了

5 什么时候dependency?

  • exactly一个独立的词(root)
  • all其他的词都依赖这个词,
  • 结果是有向依赖graph of 句子是个树
    大部分的依赖语法work with typed邮箱依赖(有限的list of邮箱依赖types 带有特定约束)
    6
    和constituency树相比,node更少(每个word一个点) 但是边被带上相应的依赖类型标签

NER(named entity recognition)

任务是找到输入text的表达中的那些naming 实体,再给这些实体贴上标签。name一些typical 的词,分出类别。
通常这些实体是person,组织,地点,也有一些是data,event,…

coreference resolution 消除指代

决定实体命名的指代,确定referring表达的边界范围,包含常见名词代词,cluster 他们,根据谁的成员都属于一个实体来分组。

实体联系linking

也与实体reference 相关,但从以下两方面不同:

  • as NER,局限于name-like 表达
  • 通过外部知识base连接名字和实体记录,来确定实体的身份

WSD(所有content词)

word sense disambiguation
连接表达与meanings/senses 在外部inventory

  • 主要是关于常见名词和其他content word 的其他类型,动词,adj。 adv.
  • sense collections是主要目标,建立lexical 词汇资源
    WSD系统可以分出一词多义,例如mouse

semantic role labelling(SRL)

identify predicate 和 argument 表达(谓语和宾语)

  • predicate:表达event或者situation
  • argument 指的是这些event 的参与者
    role标签是确定participant的类别和角色,根据宾语在时间表达的角色,参考所用谓语
    I give you a present

semantic 解析

full or deep 语义解析,不仅包括coreference resolution,WSD he 谓语宾语结构,还打算提供完整的formal 语义表示

  • 正式结构表示输入文字的含义
  • 表示词义
  • 去歧义
  • canonical inthe sense ,text有独自的表示
  • 有很多有效的算法可以找到逻辑和语义关系 与其他语义和知识表示
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 自然语言处理(Natural Language Processing,简称NLP)是计算机科学与人工智能领域的一个重要研究方向,目的是让计算机能够理解、处理和生成人类的自然语言NLP-100例是一份经典的NLP问题集合,包含了各种与自然语言处理相关的问题和挑战。 这份NLP-100例涵盖了从基础的文本处理到更高级的自然语言理解和生成的问题。例如,其中包括了文本预处理、词频统计、语法分析、词性标注、实体识别、情感分析、机器翻译等任务。 NLP-100例的目的是帮助研究者和开发者更好地理解NLP领域的核心问题和技术,同时提供一些典型的案例和数据集供实践和研究使用。通过完成这些例题,可以锻炼自己在NLP领域的能力和技术,提高对自然语言的处理和理解能力。 此外,NLP-100例也为研究者提供了一个可以与其他人交流和探讨的平台。研究者可以使用相同的数据集和问题进行实验和评估,从而更好地了解NLP技术的优劣和进展。 总之,NLP-100例是一个对NLP进行实践和研究的重要资源。通过解决这些例题,可以深入理解自然语言处理的基础和技术,掌握各种NLP任务的方法和技巧。同时,它也是一个促进交流和合作的平台,为NLP研究者提供了一个共同的基础和语言。 ### 回答2: 自然语言处理(Natural Language Processing,简称NLP)是研究计算机与人类自然语言之间的交互的一门学科。NLP-100例指的是日本的一个NLP入门教程,包含了100个常见的NLP问题和对应的解答。 NLP-100例涵盖了从文本处理到语义理解等多个方面的问题。其中,一些例子包括:文本的分词、词性标注、句法分析、语义角色标注和文本分类等。 以分词为例,分词是将一段连续的文本分割成词语的过程。在NLP-100例中,可以通过使用Python中的分词工具NLTK(Natural Language Toolkit)来实现分词功能。 另外,对于文本的词性标注,NLP-100例提供了使用POS(Part-Of-Speech)标记对文本中的每个词进行词性标注的方法。可以使用NLTK提供的POS标注工具来实现。 此外,NLP-100例还包括了语义角色标注的问题,语义角色标注是为了确定句子中的谓语动词所承担的语义角色,如施事者、受事者、时间等。可以使用Stanford CoreNLP工具包来实现语义角色标注。 最后,NLP-100例还介绍了文本分类的问题,文本分类是将文本划分到预定义的类别中。可以使用机器学习算法,如朴素贝叶斯或支持向量机(SVM)等来进行文本分类。 通过学习NLP-100例,我们可以了解到自然语言处理的基本方法和技术,并且可以利用这些技术来解决相关的自然语言处理问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值