NLP算法-词性标注
词性标注
- 什么是词性标注?
- 词性标注规范
- Jieba 分词中的词性标注
- 测试说明
- demo
什么是词性标注?
在自然语言分析中,机器需要模拟理解语言。为了实现这一点,自然语言处理过程中必须在一定程度上能够了解自然语言的规则。首先需要理解的是词,特别是每一个词的性质,判断它是一个名词还是一个形容词?如果它是一个动词的屈折形式,那么它的不定形式是什么,以及该屈折形式使用了什么对应的时态、人称和数?这个任务被称为词性标注。
词性标注的目标是用一个单独的标签标记每一个词,该标签表示了用法和其句法作用,比如名词、动词、形容词等。词性标注的正确与否将会直接影响到后续的句法分析、语义分析,它是中文信息处理的基础性课题之一。
常用的词性标注模型有 N 元模型、隐马尔可夫模型、最大熵模型、基于决策树的模型等。其中,隐马尔可夫模型是应用较广泛且效果较好的模型之一。
词性标注规范
词性标注需要有一定的标注规范,如将词分为名词、形容词、动词,然后用 n 、 adj 、 v 等来进行表示。中文领域中尚无统一的标注标准,较为主流的主要为北大的词性标注集和宾州词性标注集两大类。两类标注方式各有千秋,一般我们任选一种。如图下表所示,即为目前常用的词性标注规范表。
标记 | 词性 | 说明 |
---|---|---|
ag | 形语素 | 形容词性语素。形容词代码为 a ,语素代码 g 前面置以 a |
a | 形容词 | 取英语形容词 adjective 的第1个字母 |
ad | 副形词 | 直接作状语的形容词。形容词代码 a 和副词代码 d 并在一起 |
b | 区别词 | 取汉字“别”的声母 |
z | 状态词 | 取汉字“状”的前一个字母 |
v | 动词 | 取英语动词 verb 的第一个字母 |
Jieba 分词中的词性标注
类似 Jieba 分词的分词流程, Jieba 的词性标注同样是结合规则和统计的方式,具体为在词性标注的过程中词典匹配和 HMM 共同作用。
词性标注流程如下:
- 首先基于正则表达式进行汉字判断;
- 若符合汉字正则表达式,则基于前缀词典构建有向无环图,再基于有向无环图计算最大概率路径,同时在前缀词典中找出它所分出的词性,若在词典中未找到,则赋予词性为 x (代表未知)。当然,若在这个过程中,设置使用 HMM ,且待标注词为未登录词,则会通过 HMM 方式进行词性标注;
- 若不符合上面的正则表达式,那么将继续通过正则表达式进行类型判断,分别赋予 x 、 m (数词)和 eng (英文)。
示例:
import jieba.posseg as pseg
words = pseg.cut("我爱北京天安门") # 进行分词
for word, flag in words:print('%s %s' % (word, flag))
对应输出为:
我 r
爱 v
北京 ns
天安门 ns
测试说明
测试输入:
还有什么是比jieba更好的中文分词工具呢?
预期输出:
还有/v 什么/r 是/v 比/p jieba/eng 更好/d 的/uj 中文/nz 分词/n 工具/n 呢/y ?/x
demo
import jieba.posseg as psg
text=input()
#任务:使用jieba模块的函数对text完成词性标注并将结果存储到result变量中words = list(psg.cut(text))
result = ''
for word, flag in words:result += word + '/' + flag + ' 'print(result)
NLP算法-词性标注相关推荐
- 暑期实习NLP算法岗面经总结
写文章 暑期实习NLP算法岗面经总结 呜呜哈 做一个有思想的码农 关注他 488 人赞同了该文章 写在前面,从三月份开始找实习到现在正好两个月,这期间大大小小投了竹简智能.阿里.滴滴.美团.腾讯. ...
- NLP算法学习路线-自己整理
目录 第一阶段 机器学习全栈GitHub - 经典算法 吴恩达机器学习视频 - 113课时,每课时8-20分 第二阶段 吴恩达深度学习视频: 176课时,每课时十分钟左右,以前的官方链接被哔哩哔哩下线 ...
- 《Python自然语言处理-雅兰·萨纳卡(Jalaj Thanaki)》学习笔记:05 特征工程和NLP算法
05 特征工程和NLP算法 5.1 理解特征工程 5.1.1 特征工程的定义 5.1.2 特征工程的目的 5.1.3 一些挑战 5.2 NLP中的基础特征 5.2.1 句法解析和句法解析器 5.2.2 ...
- Interview之NLP:人工智能领域求职岗位—自然语言处理NLP算法工程师职位的简介、薪资介绍、知识结构之详细攻略
Interview之NLP:人工智能领域求职岗位-自然语言处理NLP算法工程师职位的简介.薪资介绍.知识结构之详细攻略 目录 自然语言处理NLP算法工程师的职位简介 1.资讯指数 2.各大公司的具体职 ...
- 【资源】NLP 算法工程师相关的面试题
点击上方,选择星标或置顶,每天给你送干货! 阅读大概需要4分钟 跟随小博主,每天进步一丢丢 作者 | songyingxin https://github.com/songyingxin/NLPer- ...
- 收藏 | 700页NLP算法在百度、阿里、腾讯等一线大厂的最佳实践!PDF限时领!
NLP算法在百度.阿里.腾讯等一线大厂的最佳实践? NLP以及知识图谱在业界的进展? 下阶段我们的发展方向有哪些? 今天,2020 DataFunTalk 精选: <NLP算法在业界的应用实践合 ...
- 深圳内推 | 粤港澳大湾区数字经济研究院招聘NLP算法研究员(可实习)
合适的工作难找?最新的招聘信息也不知道? AI 求职为大家精选人工智能领域最新鲜的招聘信息,助你先人一步投递,快人一步入职! IDEA研究院 粤港澳大湾区数字经济研究院(简称"IDEA&qu ...
- 深圳内推 | IDEA数字经济研究院招聘NLP算法工程师/算法实习生
合适的工作难找?最新的招聘信息也不知道? AI 求职为大家精选人工智能领域最新鲜的招聘信息,助你先人一步投递,快人一步入职! IDEA数字经济研究院 粤港澳大湾区数字经济研究院(Internation ...
- 北京/苏州内推 | 微软STCA搜索广告算法团队招聘NLP算法工程师
合适的工作难找?最新的招聘信息也不知道? AI 求职为大家精选人工智能领域最新鲜的招聘信息,助你先人一步投递,快人一步入职! 微软亚洲互联网工程院 微软搜索广告算法团队隶属微软亚洲互联网工程院,我们与 ...
- 北京内推 | 微软亚洲互联网工程院(STCA)招聘NLP算法实习生
合适的工作难找?最新的招聘信息也不知道? AI 求职为大家精选人工智能领域最新鲜的招聘信息,助你先人一步投递,快人一步入职! 微软亚洲互联网工程院 微软 STCA CPC Intelligence T ...
最新文章
- 为了追求更快,CPU、内存、I/O都做了哪些努力?
- 精确微妙计时minicom 源码节选
- Python导入模块(包)的两种方式 TypeError: 'module' object is not callable
- 向一个无法连接的网络尝试了一个套接字操作_python3从零学习-5.8.1、socket—底层网络接口...
- 一个让我魂牵梦萦的地方——婺源
- 20160828_第4周周报
- struts.properties文件
- fork与vfork的区别
- 重装linux服务器简易流程
- 上楼梯算法的java实现(转)
- 第二次扩大会议(3.19)
- Python网络编程【客户端与服务器通信】
- 2019年安大计算机专业分数线,2019年安徽
- 《别输在不会表达上》— 综合素质提升书籍
- Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2”
- mysql 正则 捕获_在mysql中模拟正则表达式捕获组
- php清空session值_删除与销毁session
- 汉诺塔递归算法python详细解析图_python实现汉诺塔递归算法经典案例
- 派森诺细菌完成图+转录组+蛋白组+实验端验证高分文章
- 材质允许png格式的图片透明
热门文章
- 2018-2-13-windows-10预览版升级win10-7月29-10240.16384
- html有序列表标签圆点,什么是无序列表、有序列表 、定义列表?html列表标签学习笔记...
- tomcat10 实例化servlet 500错误解决办法
- Chrome 网上应用店- FaWave(发微)
- FaWave(发微)多微博版内测
- 未授权访问漏洞测试方法及修复方案
- Python多进程 struct.error: ‘i‘ format
- flask上传图片解决方案
- Android 体系架构/四层
- 《Openwrt开发》第四章:newifi3 实现内网穿透(n2n)