使用Stanford Corenlp对中文进行词性标注

语言为Scala,使用的jar的版本是3.6.0,而且是手动添加jar包,使用sbt添加其他版本的时候出现了各种各样的问题

添加的jar包有5个

代码

import edu.stanford.nlp.pipeline.{Annotation, StanfordCoreNLP}

/**
* Created by common on 17-5-13.
*/
object NLPLearning { def main(args: Array[String]): Unit = {
val props="StanfordCoreNLP-chinese.properties"
val pipeline = new StanfordCoreNLP(props) val annotation = new Annotation("这家酒店很好,我很喜欢。") pipeline.annotate(annotation)
pipeline.prettyPrint(annotation, System.out) } }

关于词性标记

动词,形容词(4种):VA,VC,VE,VV

1、谓词性形容词:VA

谓词性形容词大致上相当于英语中的形容词和中文语法中、文学作品里的静态动词。我们的谓词性形容词包括两类:

第一类:没有宾语且能被“很”修饰的谓语。

第二类:源自第一类的、通过重叠(如红彤彤)或者通过名词加形容词模式意味着“像N一样A”(如雪白)的谓语。这个类型的谓词性形容词没有宾语,但是有一些不能被“很”修饰,因为这些词的强调意思已经内嵌在词内了。

注意:当集合(VA)中的一个词修饰名词但没有用“的”,那么它被标注为JJ(名作定)或是一个名词,而不是VA。当集合(VA)中的一个词有一个宾语,那么它被标注为VV,而不是VA。譬如,这 项/M 活动 丰富/VV 了/AS 他 的/DEG 生活。

2、系动词:VC

“是”和“为”被标记为VC。如果“非”的意思是“不是”并且句子里没有其他动词时,“非”也被标注为VC。

“是”有几种用法:

·连接两个名词短语或者主语:他 是/VC 学生。

·在分裂句中:他 是/VC 昨天 来 的/SP。

·为了强调:他 是/VC 喜欢 看 书。

现在,在所有这些情况中,“是”被标注为VC。

3 、“有”作为主要动词:VE

只有当“有,没{有}”和“无”作为主要动词时(包括占有的“有”和表存在的“有”等等),被标注为VE。

4、其他动词:VV

VV包括其他动词,诸如情态动词,提升谓词(如“可能”),控制动词(如“要”、“想”),行为动词(如“走”),心理动词(如“喜欢”、“了解”、“怨恨”),等等。

名词(3种):NR,NT,NN

1、专有名词:NR

专有名词是名词的子集。一个专有名词可以是一个特定的人名,政治或地理上定义的地方(城市、国家、河流、山脉等),或者是一种组织(企业、政府或其他组织实体)。一个专有名词通常是独一无二,并且不能被Det+M所修饰的。

·以下名字是专有名词:

地区/国家/村庄/城市,山脉/河流,报纸/杂志, 组织/公司,学校/联盟/基金会,个人/家庭。

·以下名字不是专有名词:

国籍(如中国人),种族(如白人),职称(如教授),疾病,职业,器官(如肺),乐器(如钢琴),游戏(如足球),花(如玫瑰),等等。

2、时间名词:NT

时间名词可以是介词的宾语,譬如在、从、到、等到。它们可以被问及,如“这个时候”,也可以被用以提问“什么时候”。它们也可以直接修饰VP(动词短语)或者S(主语)。像其他名词一样,时间名词可以是某些动词的论元。

时间名词可以是时间的名称(如1990年、一月、汉朝)或是由“PN+LC,N+LC,DT+N”等结构组成。

例子:一月、汉朝、当今、何时、今后

3、其他名词:NN

其他名词包括所有其他名词。其他名词NN,除了地方名词,一般不能修饰动词短语(有“地/DEV”或者没“地/DEV”)。

定位(1):LC

方位词:LC

很多名词单独使用时不能作为介词如“在”、“到”的论元,也不能直接修饰VP(动词短语)或者S(主语)。方位词的一个功能是连接前述的名词短语或者主语,从而使整个短语可以作为这些介词的论元或者来修饰动词短语或主语。

一些方位词可以独立使用作为介词或动词的论元。一些方位词可以被“最”修饰。方位词不能被Det+M所修饰。

方位词分为两类:

·方位词:这类方位词表示方向、位置等。它们来自名词。一些可以单独使用作为介词或动词的论元。一些可以被“最”修饰。它们不能被Det+M所修饰。

—单音节方位词:如:前,后,里,外,内,北,东,边,侧,底,间,末,旁。

—双音节方位词:它们由以下部分组成:

*单音节方位词加上诸如“以、之”等的语素。

例子:之间,以北。

*两个单音节方位词。

例子:前后,左右,上下,东北。

·其他:我们把以下情况标注为LC。

. 为止:到 目前 为止。

. 开始:从 四月 开始。

. 来:5年 来。

. 以来: 1998年 以来。

. 起: 一九九三年 起。

. 在内:包括 他 在内。

代词(1种):PN

代词的功能是作为名词短语的替代物或者表示事先详细说明的或者从上下文可知晓的被叫的人或事。它们一般不受Det+M或者形容词性短语修饰。

代词包括人称代词(如我、你),当作为名词短语单独使用时为指示代词(如这、那),所有格代名词(如其)以及反身代词(如我自己、自己)。

限定词和数词(3种):DT,CD,OD

1、限定词:DT

限定词包括指示词(如这、那、该)和诸如“每、各、前、后”等词。限定词不包括基数词和序列词。

参见限定词部分。

2、基数词:CD

CD包括基数词并随意与一些概数词连用,如“来、多、好几”和诸如“好些、若干、半、许多、很多(如很多 学生)”等词。

例子:1245,一百。

3、序列词:OD

序列词被标注为OD。我们把第+CD看做一个词,并标注它为OD。

例子:第一百。

度量词(1):M

度量词跟在数字后形成Det+M结构修饰名词或动词,包括类词(如“个”),表示一群的度量词,如“群”,以及公里、升等度量词。

一些度量词可以被有限的形容词(如一/CD小/JJ瓶/M水/NN),临时量词可以被名词和形容词修饰(如:一/CD铁/NN箱子/M书/NN)。

副词(1):AD

副词包括情态副词、频率副词、程度副词、连接副词等,大部分副词的功能是修饰动词短语或主语。

如:仍然、很、最、大大、又、约

介词(1):P

介词可以把名词短语或从句作为论元。

注释:把和被不标注为P,详见2.11部分。

如:从、对

连词(2):CC,CS

1、并列连接词:CC

CC的主要模式是:XP{,},CC XP。

如:与、和、或、或者、还是(or)

2、从属连词:CS

从属连词连接两个句子,一个句子从属于另一个,这样的连词标记为CS。CS模式是:CS S1,S2和S2 CS,S1。

如:如果/CS,……就/AD……

助词(8):DEC,DEG,DER,DEV,SP,AS,ETC,SP,MSP

1、“作为补语标记/名词化标记:DEC(的,之)

如:吃的DEC

模式是:S/VP DEC{NP}

注:的还有其他标记

·DEC 他的/DEG车

·SP   他是/VC一定要来的/SP。

·AS   他是/VC在这里下的/AS车。

2、“的”作为关联标记或所有格标记:DEG

模式:NP/PP/JJ/DT DEG{NP}。

3、 补语短语 得:DER

在V-得-R和V-得结构中,“得”标记为DER。

注:有些以“得”结尾的搭配不是V-得结构,如记得,获得是动词。

4、方式“地”:DEV

当“地”出现在“XP地VP”,XP修饰VP。在一些古典文学中,“的”也用于这种情景,此时“的”也标注为DEV。

5、动态助词:AS

动态助词仅包括“着,了,过,的”。

6、句末助词:SP

SP经常出现在句末,如:他好吧[SP]?

有时,句末助词用于表停顿,如:他吧[SP],人很好。

如:了,呢,吧,啊,呀,吗

7、 ETC

ETC用于标注等,等等。

8、其他助词:MSP

“所,以,来,而”,当它们出现在VP前时,标注为MSP。

所:他所[MSP]需要的/DEC

以或来:用……以/MSP(或来)维持

而:为……而[MSP]奋斗

其他(8):IJ,ON,PU,JJ,FW,LB,SB,BA

1、感叹词:IJ

出现在句首位置的感叹词,如:啊。

2、拟声词:ON

① 修饰“ON地V”中的VP:雨哗哗[ON]地[DEV]下了[AS]一夜

② 修饰“ON中的N”中的NP:砰[ON]的/DEG一声!

③ 自行成句:砰砰[ON]!

④ 一般不能被副词修饰,如:哗啦啦,咯吱。

 3、长“被”结构:LB

仅包括“被,叫,给,为(口语中)”,当它们出现在被字结构NP0+LB+NP1+VP中

如:他被/LB 我训了/AS 一顿/M .

注:当叫作为兼语动词时,“叫”标注为VV。

如:他叫/VV你去。

4、短“被”结构:SB(仅包括口语中的“被,给”)

NP0+SB+VP,他被/SB 训了/AS一顿/M。

注:“给”有其他标记:LB,VV和P。

如:你给/P他写封/M信。

5、把字结构:BA

仅包括“把,将”,当它们出现在把字结构中(NP0+BA+NP1+VP)。

如:他把/BA你骗了/AS。

注:“将”有其他标记:AD和VV,如:他将/VV了[AS]我的[DEG]军。

6、其他名词修饰语:JJ

包括三种类型:

①区别词 只修饰模式JJ+的+{N}或JJ+N中的名词,且一定要有“的”,它们不能被程度副词修饰。

如:共同/JJ的/DEG目标/NN,她是[VC]女/JJ的/DEG。

②带有连字符的复合词

通常为双音节词 JJ+N 如留美/JJ学者/NN

③形容词:新/JJ消息/NN

模式:JJ+N

注:当“的/DEC”在形容词和名词中间时,形容词标记为VA。

7、外来词:FW

FW仅被用于:当词性标注标记在上下文中不是很清楚时。外来词不包括外来词的翻译,不包括混合中文的词(如卡拉OK/NN,A型/NN),不包括词义和词性在文中都是清楚的词。

8、标点:PU

当标点是词的一部分时,不用标注为PU,如123,456/CD。

Stanford Corenlp学习笔记——词性标注的更多相关文章

  1. Stanford NLP学习笔记1:课程介绍

    Stanford NLP课程简介 1. NLP应用例子 问答系统: IBM Watson 信息提取(information extraction) 情感分析 机器翻译 2. NLP应用当前进展 很成熟 ...

  2. Stanford NLP学习笔记:7. 情感分析(Sentiment)

    1. 什么是情感分析(别名:观点提取,主题分析,情感挖掘...) 应用: 1)正面VS负面的影评(影片分类问题) 2)产品/品牌评价: Google产品搜索 3)twitter情感预测股票市场行情/消 ...

  3. Stanford NLP 学习笔记2:文本处理基础(text processing)

    I. 正则表达式(regular expression) 正则表达式是专门处理文本字符串的正式语言(这个是基础中的基础,就不再详细叙述,不了解的可以看这里). ^(在字符前): 负选择,匹配除括号以外 ...

  4. Stanford CS20学习笔记

    Lecture Note 2 Tensorboard P3 Data Structures P4 Math Operations P6 Data Types P7 tf native &&am ...

  5. stanford NLP学习笔记3:最小编辑距离(Minimum Edit Distance)

    I. 最小编辑距离的定义 最小编辑距离旨在定义两个字符串之间的相似度(word similarity).定义相似度可以用于拼写纠错,计算生物学上的序列比对,机器翻译,信息提取,语音识别等. 编辑距离就 ...

  6. 【Stanford Machine Learning Open Course】学习笔记目录

    这里是斯坦福大学机器学习网络课程的学习笔记. 课程地址是:https://class.coursera.org/ml-2012-002/lecture/index 课程资料百度网盘分享链接:https ...

  7. stanford corenlp的TokensRegex

    最近做一些音乐类.读物类的自然语言理解,就调研使用了下Stanford corenlp,记录下来. 功能 Stanford Corenlp是一套自然语言分析工具集包括: POS(part of spe ...

  8. (转) OpenCV学习笔记大集锦 与 图像视觉博客资源2之MIT斯坦福CMU

          首页 视界智尚 算法技术 每日技术 来打我呀 注册     OpenCV学习笔记大集锦 整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的 ...

  9. Deep Learning(深度学习)学习笔记整理系列之(八)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

随机推荐

  1. php curl请求https 返回无结果|false|errno:35

    1 SSL: certificate subject name 'WMSvc-GWAMSERVER02' does not match target host name 把curl_setopt($c ...

  2. Python3练习题系列(02)

    题目: 思考循环结构,看看它是怎样运行的,对我们认识程序有何益处. 知识点: list, for-loop, range 练习代码: 练习1 the_count = [1, 2, 3, 4, 5] # ...

  3. mysql 时间类型精确到毫秒、微秒及其处理

    一.MySQL 获得毫秒.微秒及对毫秒.微秒的处理 MySQL 较新的版本中(MySQL 6.0.5),也还没有产生微秒的函数,now() 只能精确到秒. MySQL 中也没有存储带有毫秒.微秒的日期 ...

  4. 计算请假天数JavaScript方法

    前言 最近,有这么个需求,给用户做个请假审批系统,要输入请假开始时间和结束时间,同时计算出请假天数,如果年假数量不够提示不能提交,如果年假数量够的话,就走审批工作流,审批通过以后,自动在年假上减去这个 ...

  5. 阿里云ecs 增加虚拟网卡

    cd /etc/sysconfig/network-scripts/   #进入网卡目录 cp ifcfg-eth0 ifcfg-eth0:1   # 复制出ifcfg-eth0:1虚拟网卡 vi i ...

  6. Markdown 语法手册 - 完整版(下)

    6. 引用 语法说明: 引用需要在被引用的文本前加上>符号. 代码: > 这是一个有两段文字的引用, > 无意义的占行文字1. > 无意义的占行文字2. > > 无 ...

  7. 树莓派3中编译Opencv3.4.10

    一.命令 -dev libv4l-dev libavcodec-dev libavformat-dev libswscale-dev cd wget http://sourceforge.net/pr ...

  8. PCA实现

    代码实现分成好多种层级,有的代码只使用标准库实现,有的代码基于其它库实现,有的代码直接调用库中现有的实现. 在本文中,按照不同的层级分别实现PCA 对于分类问题基本任务可以描述如下 x11 x12 x ...

  9. 【Linux】top命令

    top命令经常用来监控linux的系统状况,比如cpu.内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解.本文通过一个运行中的W ...

  10. 文件批量上传-统一附件管理器-在线预览文件(有互联网和没有两种)--SNF快速开发平台3.0

    实际上在SNF里使用附件管理是非常简单的事情,一句代码就可以搞定.但我也要在这里记录一下统一附件管理器能满足的需求. 通用的附件管理,不要重复开发,调用尽量简洁. 批量文件上传,并对每个文件大小限制, ...