大快HanLP自然语言处理技术介绍
大快HanLP自然语言处理技术介绍
这段时间一直在接触学习hadoop方面的知识,所以说对自然语言处理技术也是做了一些了解。网络上关于自然语言处理技术的分享文章很多,今天就给大家分享一下HanLP方面的内容。
自然语言处理技术其实是所有与自然语言的计算机处理相关联的技术的统称,自然语言处理技术应用的目的是为了能够让计算机理解和接收我们用自然语言输入的指令,实现从将我们人类的语言翻译成计算机能够理解的并且不会产生歧义的一种语言。接合目前的大数据以及人工智能,自然语言处理技术的快速发展能够很好的助力人工智能的发展。
(大快DKhadoop技术架构图)
这里要分享的HanLP是我在学习使用大快DKhadoop大数据一体化平台时使用到的自然语言处理技术,使用这个组建可以很高效的进行自然语言的处理工作,比如进行文章摘要,语义判别以及提高内容检索的精确度和有效性等。
本想找个通俗的案例来介绍一下HanLP,一时间也没想到什么好的案例,索性就从HanLp数据结构HE 分词简单介绍下吧。
首先我们来看了解下HanLP的数据结构:
二分tire树:Tire树是一种前缀压缩结构,可以压缩存大量字符串,并提供速度高于Map的get操作。HanLP中的trie树采用有序数组储存子节点,通过二分搜索算法检索,可以提供比TreeMap更快的查询速度。
不同于父节点储存子节点引用的普通trie树,双数组trie树将节点的从属关系转化为字符内码的加法与校验操作
对于一个接收字符c从状态s移动到t的转移,需满足条件是:
base[s] + c = t
check[t] = s比如:base[一号] + 店 = 一号店
check[一号店] = 一号
相较于trie树的前缀压缩(success表),AC自动机还实现了后缀压缩(output表)
在匹配失败时,AC自动机会跳转到最可能成功的状态(fail指针)
关于HanLP分词
1、词典分词
基于双数组trie树或ACDAT的词典最长分词(即从词典中找出所有可能的词,顺序选择最长的词语)
输出:[HanLP/名词, 是不是/null, 特别/副词, 方便/形容词, ?/null]
2、NGram分词
统计语料库中的BiGram,根据转移概率,选出最可能的句子,达到排除歧义的目的
3、HMM2分词
这是一种由字构词的生成式模型,由二阶隐马模型提供序列标注
被称为TnT Tagger,特点是利用低阶事件平滑高阶事件,弥补高阶模型的数据稀疏问题
4、CRF分词
这是一种由字构词的生成式模型,由CRF提供序列标注
相较于HMM,CRF的优点是能够利用更多特征、对OOV分词效果好,缺点是占内存大、解码慢。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
因为AI,上海正迎来第二代科技公司的创业浪潮
在上海,一名沿着海滨大道,穿梭在城市的摩天大楼之间的普通京东摩托车快递员,每天大约可以完成100个包裹的配送,这似乎已经是一个令人印象深刻的成绩了,但京东并不满足于此,仍希望通过新技术来提高摩托车的交付效率——其中新技术大部分是人工智能驱动的。 上海拥有2400万人口以及约200万家企业,在这些企业中很多是竞争激烈的科技公司。在这种环境下,初创公司要么必须快速崭露头角,要么就会面临被抛在后面的风险。举个例子,最新崛起的拼多多只用了三年的时间就达到了1000亿的销售总额,而对第一代电商科技巨头阿里巴巴和京东来说,达到这一里程碑,两家公司分别用了五年和十年的时间。 上海张江高科技园区,距离市中心人民广场仅有半小时的地铁车程,很多上海科技产业都聚集在这里。该地区培育了中国第一代科技公司:游戏开发商第九城市(the9)、旅游预订网站携程(Ctrip)、电子商务平台易趣(Eachnet)、求职网站前程无忧(51job)以及盛大游戏、网络文学门户网站榕树下等等。但随着技术的进步,第二代科技公司也在迅速崛起。 第二代科技公司的创业浪潮 如今,超过三分之一的中国AI人才都在上海,包括计算机视觉、语音识...
- 下一篇
中文分词工具比较
五款中文分词工具的比较,尝试的有jieba,SnowNLP,thulac(清华大学自然语言处理与社会人文计算实验室),StanfordCoreNLP,pyltp(哈工大语言云),环境是Win10,anaconda3.7 1.安装 Jieba: pip install jieba SnowNLP: pip install snownlp thulac: pip install thulac StanfordCoreNLP: pip install stanfordcorenlp 下载 CoreNLP 并解压,将中文包下载并解压至 CoreNLP 文件夹 pyltp: pip install pyltp,安装失败提示c++14 missing,手动编译失败,换成centos安装依然失败 2. 运行 a = 'Jimmy你怎么看' import jieba.posseg as pseg ws = pseg.cut(a) for i in ws: print(i) import thulac thu1 = thulac.thulac() text = thu1.cut(a) print(te...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Hadoop3单机部署,实现最简伪集群