内容简介:最近需要从文本中抽取结构化信息,用到了很多github上的包,遂整理了一下,后续会不断更新。 详见很多包非常有趣,值得收藏,满足大家的收集癖! 如果觉得有用,请分享并star,谢谢!涉及内容包括:
最近需要从文本中抽取结构化信息,用到了很多github上的包,遂整理了一下,后续会不断更新。 详见 fighting41love/funNLP
很多包非常有趣,值得收藏,满足大家的收集癖! 如果觉得有用,请分享并star,谢谢!
涉及内容包括: 中英文敏感词、语言检测、中外手机/电话归属地/运营商查询、名字推断性别、手机号抽取、身份证抽取、邮箱抽取、中日文人名库、中文缩写库、拆字词典、词汇情感值、停用词、反动词表、暴恐词表、繁简体转换、英文模拟中文发音、汪峰歌词生成器、职业名称词库、同义词库、反义词库、否定词库、汽车品牌词库、汽车零件词库、连续英文切割、各种中文词向量、公司名字大全、古诗词库、IT词库、财经词库、成语词库、地名词库、历史名人词库、诗词词库、医学词库、饮食词库、法律词库、汽车词库、动物词库、中文聊天语料、中文谣言数据 。
1. textfilter: 中英文敏感词过滤 observerss/textfilter
>>> f = DFAFilter() >>> f.add("sexy") >>> f.filter("hello sexy baby") hello **** baby 复制代码
敏感词包括政治、脏话等话题词汇。其原理主要是基于词典的查找(项目中的keyword文件),内容很劲爆。。。
2. langid:97种语言检测 github.com/saffsd/lang…
pip install langid
>>> import langid >>> langid.classify("This is a test") ('en', -54.41310358047485) 复制代码
3. langdetect:另一个语言检测 code.google.com/archive/p/l…
pip install langdetect
from langdetect import detect from langdetect import detect_langs s1 = "本篇博客主要介绍两款语言探测工具,用于区分文本到底是什么语言," s2 = 'We are pleased to introduce today a new technology' print(detect(s1)) print(detect(s2)) print(detect_langs(s3)) # detect_langs()输出探测出的所有语言类型及其所占的比例 复制代码
输出结果如下: 注:语言类型主要参考的是ISO 639-1语言编码标准,详见ISO 639-1百度百科
跟上一个语言检测比较,准确率低,效率高。
4. phone 中国手机归属地查询: ls0f/phone
from phone import Phone p = Phone() p.find(18100065143) #return {'phone': '18100065143', 'province': '上海', 'city': '上海', 'zip_code': '200000', 'area_code': '021', 'phone_type': '电信'} 复制代码
支持号段: 13*,15*,18*,14[5,7],17[0,6,7,8]
记录条数: 360569 (updated:2017年4月)
作者提供了数据 phone.dat 方便非 python 用户Load数据。
5. phone国际手机、电话归属地查询: AfterShip/phone
npm install phone
import phone from 'phone'; phone('+852 6569-8900'); // return ['+85265698900', 'HKG'] phone('(817) 569-8900'); // return ['+18175698900, 'USA'] 复制代码
6. ngender 根据名字判断性别: observerss/ngender
pip install ngender # 基于朴素贝叶斯计算的概率
>>> import ngender >>> ngender.guess('赵本山') ('male', 0.9836229687547046) >>> ngender.guess('宋丹丹') ('female', 0.9759486128949907) 复制代码
7. 抽取email的正则表达式
email_pattern = '^[*#\u4e00-\u9fa5 a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$' emails = re.findall(email_pattern, text, flags=0) 复制代码
8. 抽取phone_number的正则表达式
cellphone_pattern = '^((13[0-9])|(14[0-9])|(15[0-9])|(17[0-9])|(18[0-9]))\d{8}$' phoneNumbers = re.findall(cellphone_pattern, text, flags=0) 复制代码
9. 抽取身份证号的正则表达式
IDCards_pattern = r'^([1-9]\d{5}[12]\d{3}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])\d{3}[0-9xX])$' IDs = re.findall(IDCards_pattern, text, flags=0) 复制代码
10. 人名语料库: wainshine/Chinese-Names-Corpus
中文(现代、古代)名字、日文名字、中文的姓和名、称呼(大姨妈、小姨妈等)、英文->中文名字(李约翰)、成语词典 复制代码
(可用于中文分词、姓名识别)
11. 中文缩写库: github
全国人大: 全国/n 人民/n 代表大会/n 中国: 中华人民共和国/ns 女网赛: 女子/n 网球/n 比赛/vn 复制代码
12. 汉语拆字词典: kfcd/chaizi
漢字 拆法 (一) 拆法 (二) 拆法 (三) 拆 手 斥 扌 斥 才 斥 复制代码
13. 词汇情感值: rainarch/SentiBridge
山泉水 充沛 0.400704566541 0.370067395878 视野 宽广 0.305762728932 0.325320747491 大峡谷 惊险 0.312137906517 0.378594957281 复制代码
14. 中文词库、停用词、敏感词 dongxiexidian/Chinese
此package的敏感词库分类更细:
反动词库 , 敏感词库表统计 , 暴恐词库 , 民生词库 , 色情词库
15. 汉字转拼音: mozillazg/python-pinyin
文本纠错会用到
16. 中文繁简体互转: skydark/nstools
17. 英文模拟中文发音引擎funny chinese text to speech enginee: tinyfool/ChineseWithEnglish
say wo i ni #说:我爱你 复制代码
相当于用英文音标,模拟中文发音。
18. 汪峰歌词生成器: phunterlau/wangfeng-rnn
我在这里中的夜里 就像一场是一种生命的意旪 就像我的生活变得在我一样 可我们这是一个知道 我只是一天你会怎吗 复制代码
19. 同义词库、反义词库、否定词库: guotong1988/chinese_dictionary
20. 无空格英文串分割、抽取单词: wordinja
>>> import wordninja >>> wordninja.split('derekanderson') ['derek', 'anderson'] >>> wordninja.split('imateapot') ['im', 'a', 'teapot'] 复制代码
21. IP地址正则表达式:
(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d) 复制代码
22. 腾讯QQ号正则表达式:
[1-9]([0-9]{5,11}) 复制代码
23. 国内固话号码正则表达式:
[0-9-()()]{7,18} 复制代码
24. 用户名正则表达式:
[A-Za-z0-9_\-\u4e00-\u9fa5]+ 复制代码
25. 汽车品牌、汽车零件相关词汇:
见本repo的data文件 [data](https://github.com/fighting41love/funNLP/tree/master/data) 复制代码
26. 时间抽取:
在2016年6月7日9:44执行測試,结果如下 Hi,all。下周一下午三点开会 >> 2016-06-13 15:00:00-false 周一开会 >> 2016-06-13 00:00:00-true 下下周一开会 >> 2016-06-20 00:00:00-true 复制代码
27. 各种中文词向量: github repo
中文词向量大全
28. 公司名字大全: github repo
29. 古诗词库: github repo
30. THU整理的词库: link
已整理到本repo的data文件夹中.
IT词库、财经词库、成语词库、地名词库、历史名人词库、诗词词库、医学词库、饮食词库、法律词库、汽车词库、动物词库 复制代码
31. 中文聊天语料 link
该库搜集了包含:豆瓣多轮, PTT八卦语料, 青云语料, 电视剧对白语料, 贴吧论坛回帖语料,微博语料,小黄鸡语料 复制代码
32. 中文谣言数据 github
该数据文件中,每一行为一条json格式的谣言数据,字段释义如下: rumorCode: 该条谣言的唯一编码,可以通过该编码直接访问该谣言举报页面。 title: 该条谣言被举报的标题内容 informerName: 举报者微博名称 informerUrl: 举报者微博链接 rumormongerName: 发布谣言者的微博名称 rumormongerUr: 发布谣言者的微博链接 rumorText: 谣言内容 visitTimes: 该谣言被访问次数 result: 该谣言审查结果 publishTime: 该谣言被举报时间 复制代码
以上所述就是小编给大家介绍的《有趣的自然语言处理资源集锦》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
人人都是架构师:分布式系统架构落地与瓶颈突破
高翔龙 / 电子工业出版社 / 2017-5 / 69
《人人都是架构师:分布式系统架构落地与瓶颈突破》并没有过多渲染系统架构的理论知识,而是切切实实站在开发一线角度,为各位读者诠释了大型网站在架构演变过程中出现一系列技术难题时的解决方案。《人人都是架构师:分布式系统架构落地与瓶颈突破》首先从分布式服务案例开始介绍,重点为大家讲解了大规模服务化场景下企业应该如何实施服务治理;然后在大流量限流/消峰案例中,笔者为大家讲解了应该如何有效地对流量实施管制,避......一起来看看 《人人都是架构师:分布式系统架构落地与瓶颈突破》 这本书的介绍吧!