NLP学习------HanLP使用实验

在之前的实验中得到了不在词向量里的词与分词结果,结果有500多个词不在词向量里,解决方案就是重新分词,或再追加训练这些词到词向量里。但后者相对麻烦且目前样本量不大。我跟据词向量的作者[6]所使用的分词工具来分词,会比不同工具(jieba)的效果要好,因为都是同一模式的分词,分出来的词应该都会存在于大型语料库中。实验证明思路是对的,最后结果是只有60几个词不在词向量里,其中大部分为名词,还有些为因语音翻译问题所造成的出错连词,所有这些词也只出现一次,这部分可以考虑最后删去也不会影响结果。改善未出现词是个关键步骤,因为此后模型会用到词向量,如果未出现词过多,会影响词向量效果。

问题:不过最后HANLP分词影响了实验判断结果,准确率从93%(jieba分词,同模型同参数)下降到90%。

实验:使用HanLP分词[1][2]

1,前期准备,(环境ubuntu,python3)安装JAVA-10[3](hanlp是JAVA开发的,即使使用python调用pyhanlp需要借助java), jpype(python中虚拟java环境),hanlp(开源中文处理工具,不只是分词还有各种工具),hanlp的root路径配置及data数据包放置[4]

2,主要程序[5]

使用的是HANLP的普通分词功能,另外需注意,hanlp.segment()不能直接输出或赋值给python,因为其是java环境中数据,所以只有转为str()后,再进行处理,否则会报错#A fatal error。(另外还有其他java与python数据对应问题,在这里没遇到,请参考其他)

词向量选用的是“Mixed-large综合”[6],其包括百度wiki百科、人民日报等,总共1293214个词。

Hanlp的中部份功能没法使用,例如精确分词CRF。另外,要先加载词向量再加载java虚拟环境。#A fatal error has been detected by the Java Runtime Environment

3,实验结果

model

num_topic

limit

F1

accuracy

precision

recall

tflsi

3

0.45

0.888888889

0.902173913

0.9

0.87804878

(模型使用的是特征为tfidf的lsi模型, 参数:num_topics=3, 判断是否相似阀值为0.45,即大于0.45为true相似 )

同模型同参数下,jieba分词结果

jieba分词未出现在词向量的约500多,有些词出现了好几次,而hanlp分词只有60几个未出现,且多数为名词,只出现过一次。

4,分析

在样本中,所有样本分词结果jieba比hanlp要多分出100个词左右。所以推测因hanlp分词细粒度大,分出词少,导致较少的共现词出现(也可能是hanlp分词精度更高,分出很多虚词被停止词表过滤造成),也就是说,lsi+tfidf模型对词细粒度大、分词少的分词器不友好,所以最后hanlp出错率更大。

jieba与hanlp都是很不错的分词器,结巴使用更方便。hanlp准确度要高一些(感觉),而且与文中提到的词向量相匹配。

(我免贵姓AI,jieba:我免/贵姓/AI,hanlp:我/免/贵姓/AI,实际:我/免贵/姓AI)

参考引用:

自然语言处理 中文分词 词性标注 命名实体识别 依存句法分析 关键词提取 新词发现 短语提取 自动摘要 文本分类 拼音简繁请添加链接描述

本文来自 gladosAI 的CSDN 博客

原文链接:http://blog.51cto.com/13993767/2296190

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CDA数据分析师

机器学习实战:8大分类器识别树叶带源码

今天我想送给大家两句话:1:在这个浮躁的社会中,每个人都想找到捷径,那么我想认真踏实地做好一件事也便是最大的捷径了。2:不要管别人做什么,有自己的目标,可能你现...

2395
来自专栏企鹅号快讯

R实战——大众点评-汉拿山评论情感浅析

有实际的需求才有行动的动力,因为一个朋友开了一家烤肉店,在大众点评上线了团购套餐,遭遇了几次中差评,朋友第一次接触这个,也不知道怎么回复和处理,于是向我寻求帮助...

2849
来自专栏算法+

音频自动增益 与 静音检测 算法 附完整C代码

静音检测 在WebRTC中 是采用计算GMM (Gaussian Mixture Model,高斯混合模型)进行特征提取的。

1.1K10
来自专栏大数据文摘

LSTM之父最新力作:手把手教你训练一个有世界观的AI赛车手 | 论文+代码

1173
来自专栏AI科技大本营的专栏

假期充电 | 10大机器学习开源项目推荐(Github平均star为1385)

本文推荐的10大机器学习开源项目是由Mybridge从250个机器学习开源项目中挑选出来的,Github 平均 star为 1385,主题包含:Tensorfl...

1132
来自专栏机器之心

Keras 2发布:实现与TensorFlow的直接整合

选自 The Keras Blog 作者:Francois Chollet 机器之心编译 参与:晏奇、黄小天、吴攀 ? Keras 在 2015 年 3 月首次...

2764
来自专栏机器学习人工学weekly

机器学习人工学weekly-2018/7/22

链接:https://cn.udacity.com/course/self-driving-car-fundamentals-featuring-apollo-...

721
来自专栏WOLFRAM

打造自动化数据科学家:新的分类和预测函数

1083
来自专栏程序生活

斯坦福tensorflow教程(一) tensorflow概述Tensorflow简介为什么选择tensorflow基于Tensorflow的框架资源Tensorflow基础数据流图 Data Flo

2635
来自专栏瓜大三哥

Scrambling/Descrambling

信道加扰 加扰原因 在通信中,如果出现连"0"和连"1",则 l产生交调串音。连续具有单频分量,与载波或者已调信号产生交调,对临近信道带来干扰。 l可能丢失同步...

3187

扫码关注云+社区

领取腾讯云代金券