智能时代-知识图谱-机器人

223.192.192.166讨论2019年11月19日 (二) 13:21的版本 安装方式
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

作者:Yener

发布于:开源软件仓库 Github :https://github.com/ownthink/Jiagu

演示网址:https://www.ownthink.com/

安装方式

pip安装

pip install -U jiagu

如果比较慢,可以使用清华的pip源:-i https://pypi.tuna.tsinghua.edu.cn/simple

源码安装

git clone https://github.com/ownthink/Jiagu
cd Jiagu
python3 setup.py install

注意:深度学习模型使用1.6训练的,不支持tensorflow 2.0

使用方式

快速上手:分词、词性标注、命名实体识别

import jiagu
#jiagu.init() # 可手动初始化,也可以动态初始化
text = '厦门明天会不会下雨'
words = jiagu.seg(text) # 分词
print(words)
pos = jiagu.pos(words) # 词性标注
print(pos)
ner = jiagu.ner(text) # 命名实体识别
print(ner)

中文分词

自定义分词模型(将单独提供msr、pku、cnc等分词标准)

import jiagu
# 独立标准模型路径
# msr:test/extra_data/model/msr.model
# pku:test/extra_data/model/pku.model
# cnc:test/extra_data/model/cnc.model
jiagu.load_model('test/extra_data/model/cnc.model') # 使用国家语委分词标准
words = jiagu.cut('结婚的和尚未结婚的')
print(words)
分词各种模式使用方式
import jiagu
text = '汉服和服装、知识图谱机器人'
words = jiagu.cut(text) # 深度学习分词
print(words)
words = jiagu.seg(text) # 字典分词
print(words)
# jiagu.load_userdict('dict/user.dict') # 加载自定义字典,支持字典路径、字典列表形式。
jiagu.load_userdict(['知识图谱'])
words = jiagu.seg(text) # 自定义分词,字典分词模式有效
print(words)

知识图谱关系抽取

import jiagu
# 吻别是由张学友演唱的一首歌曲。
# 苏州大学(Soochow University),简称“苏大”,坐落于历史文化名城苏州。
# 《盗墓笔记》是2014年欢瑞世纪影视传媒股份有限公司出品的一部网络季播剧,改编自南派三叔所著的同名小说,由郑保瑞和罗永昌联合导演,李易峰、杨洋、唐嫣、刘天佐、张智尧、魏巍等主演。
text = '姚明(Yao Ming),1980年9月12日出生于上海市徐汇区,祖籍江苏省苏州市吴江区震泽镇,前中国职业篮球运动员,司职中锋,现任中职联公司董事长兼总经理。'
knowledge = jiagu.knowledge(text)
print(knowledge)

关键词提取

import jiagu
text = 
该研究主持者之一、波士顿大学地球与环境科学系博士陈池(音)表示,“尽管中国和印度国土面积仅占全球陆地的9%,但两国为这一绿化过程贡献超过三分之一。考虑到人口过多的国家一般存在对土地过度利用的问题,这个发现令人吃惊。”
NASA埃姆斯研究中心的科学家拉玛·内曼尼(Rama Nemani)说,“这一长期数据能让我们深入分析地表绿化背后的影响因素。我们一开始以为,植被增加是由于更多二氧化碳排放,导致气候更加温暖、潮湿,适宜生长。”
“MODIS的数据让我们能在非常小的尺度上理解这一现象,我们发现人类活动也作出了贡献。”
NASA文章介绍,在中国为全球绿化进程做出的贡献中,有42%来源于植树造林工程,对于减少土壤侵蚀、空气污染与气候变化发挥了作用。
据观察者网过往报道,2017年我国全国共完成造林736.2万公顷、森林抚育830.2万公顷。其中,天然林资源保护工程完成造林26万公顷,退耕还林工程完成造林91.2万公顷。京津风沙源治理工程完成造林18.5万 
公顷。三北及长江流域等重点防护林体系工程完成造林99.1万公顷。完成国家储备林建设任务68万公顷。

keywords = jiagu.keywords(text, 5) # 关键词
print(keywords)

文本摘要

import jiagu
fin = open('input.txt', 'r')
text = fin.read()
fin.close()
summarize = jiagu.summarize(text, 3) # 摘要
print(summarize)

新词发现

import jiagu
jiagu.findword('input.txt', 'output.txt') # 根据文本,利用信息熵做新词发现。

情感分析

import jiagu
text = '很讨厌还是个懒鬼'
sentiment = jiagu.sentiment(text)
print(sentiment)

文本聚类

import jiagu
docs = [
       "百度深度学习中文情感分析工具Senta试用及在线测试",
       "情感分析是自然语言处理里面一个热门话题",
       "AI Challenger 2018 文本挖掘类竞赛相关解决方案及代码汇总",
       "深度学习实践:从零开始做电影评论文本情感分析",
       "BERT相关论文、文章和代码资源汇总",
       "将不同长度的句子用BERT预训练模型编码,映射到一个固定长度的向量上",
       "自然语言处理工具包spaCy介绍",
       "现在可以快速测试一下spaCy的相关功能,我们以英文数据为例,spaCy目前主要支持英文和德文"
   ]
cluster = jiagu.text_cluster(docs)	
print(cluster)

评价标准

msr测试结果(旧版本)

Ownthink01.png

附录说明

词性标注说明

n   普通名词
nt   时间名词
nd   方位名词
nl   处所名词
nh   人名
nhf  姓
nhs  名
ns   地名
nn   族名
ni   机构名
nz   其他专名
v   动词
vd  趋向动词
vl  联系动词
vu  能愿动词
a   形容词
f   区别词
m   数词  
q   量词
d   副词
r   代词
p   介词
c   连词
u   助词
e   叹词
o   拟声词
i   习用语
j   缩略语
h   前接成分
k   后接成分
g   语素字
x   非语素字
w   标点符号
ws  非汉字字符串
wu  其他未知的符号

命名实体说明(采用BIO标记方式)

B-PER、I-PER   人名
B-LOC、I-LOC   地名
B-ORG、I-ORG   机构名

加入我们

思知人工智能群QQ群:90780053,微信群联系作者微信:Yener,作者邮箱联系方式:help@ownthink.com

捐赠作者(您的鼓励是作者开源最大的动力!!!):捐赠致谢

Ownthink收款码.jpg

贡献者:

Yener
zengbin93
dirtdust
frankchen7788