YACSI 1.0 for NLPIR/ICTCLAS2015

armstrong

高级会员
#2
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

谢谢吴博分享!
YACSI 1.0 for NLPIR/ICTCLAS2015速度较之前的0.96版分词速度明显变慢,而且稍长的语料不能彻底分完,只能分一部分.
 

iCasino

普通会员
#3
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

1)速度方面麻烦你将Data文件夹下Configure.xml的<Sentiment>On</Sentiment>改成<Sentiment>Off</Sentiment>,<adaptive>true</adaptive>改成<adaptive>false</adaptive>。试试看有效果没有。

2)文件大小限制可能是ICTCLAS2015的限制。你能说说你遇到的具体情况吗?
 

armstrong

高级会员
#4
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

改过了,速度没有什么变化。一直显示如下图:

一个有6万多汉字的语料,分词时拦腰截断,只能处理2万左右。
 

附件

armstrong

高级会员
#5
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

找到原因了,语料应为纯汉语。否则就截断。我刚才将语料中的英语删除掉,速度很快,完成所有语料的分词。
 

iCasino

普通会员
#6
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

是吗?那是好消息。

谢谢armstrong提出的问题,同时也欢迎大家测试,发现有什么其他问题,能解决的尽量解决。

新版主要是增加了微博分词,如果语料里没有微博文本,不使用YACSI 1.0也没有问题。
 
Last edited:

iCasino

普通会员
#7
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

再次感谢armstrong。

我们用语料库Torch2009进行了测试,发现当一个文本的一行文字全部为英语和数字的时候,程序就会停止分词。

目前的解决方案是在这些行前(或行尾)加一个特殊符号,如“【”,这样程序就可以继续运行了,运行完毕再批量清除这些特殊符号。

这应该是ICTCLAS2015的一个bug,我们已向张华平博士提交了一份报告。
 

armstrong

高级会员
#8
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

谢谢吴博士的解决方案!其实假如不对微博文本进行分词的话,用YACSI 0.96还是很好的。
 
#9
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

顺带问下 ICTCLAS 2015 中的关键词计算出的数字是怎么来的?能依据这些关键词数值做什么判断?多谢。很好奇这个功能。 请方家不吝赐教。
 

iCasino

普通会员
#10
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

NLPIR/ICTCLAS2015的用户文档提到“采用交叉信息熵的算法自动计算关键词,包括新词与已知词”和“权重分别为信息熵权重与词频权重”。

但其计算方法和一般的交叉信息熵的算法又有所不同,具体计算方法可参考张华平博士在“第16届全国科学计算与信息化会议暨科研大数据论坛”上作的报告《微博用户特征与行为的大数据挖掘》。

从该报告来看,NLPIR/ICTCLAS(2013版)关键词的计算方法不同于语料库语言学中的一般方法,不依赖参照语料库,仅参照文本本身的特征,且看上去同时对unigram, bigram, trigram进行了分析。

不知2015版的算法是否延续了前例还是有所变化,所以不方便解读,同时也欢迎方家赐教。
 
#11
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

NLPIR/ICTCLAS2015的用户文档提到“采用交叉信息熵的算法自动计算关键词,包括新词与已知词”和“权重分别为信息熵权重与词频权重”。

但其计算方法和一般的交叉信息熵的算法又有所不同,具体计算方法可参考张华平博士在“第16届全国科学计算与信息化会议暨科研大数据论坛”上作的报告《微博用户特征与行为的大数据挖掘》。

从该报告来看,NLPIR/ICTCLAS(2013版)关键词的计算方法不同于语料库语言学中的一般方法,不依赖参照语料库,仅参照文本本身的特征,且看上去同时对unigram, bigram, trigram进行了分析。

不知2015版的算法是否延续了前例还是有所变化,所以不方便解读,同时也欢迎方家赐教。
好的,多谢,我也曾在去年初问过张博士,但是语焉不详,不得要领。多谢icasino 赐教。个人感觉这个关键词功能更多是面向大规模中文文本基础上的数据挖掘和分析,特别是社交媒体,舆情分析的。但是具体这个功能里所罗列的字词和相应的数字还是不知道应该如何理解的好。
 
#12
除了 "发现当一个文本的一行文字全部为英语和数字的时候,程序就会停止分词"以外,我还碰到以下情况:
1. 电影字幕每三行成一行:
分词前:
68
00 : 05 : 06,700 - - > 00 : 05 : 11,700
本公司全体同仁都为许大同骄傲

分词后:
68 00 : 05 : 06,700 - - > 00 : 05 : 11,700 本 公司 全体 同仁 都 为 许 大同 骄傲

2. 有的ANSI 和UTF-8文件分词后成乱码,我要先将英文 Windows 7 Professional 语言 Non-Unicode 设成 Chinese(Simplified, PRC),打开再次存为UTF-8, 甚至,要从 Microsoft Word 存为 UTF-8, 有点糊涂了。
 

iCasino

普通会员
#13
回复: YACSI 1.0 for NLPIR/ICTCLAS2015

第1个问题:在行前行后都加一个特殊符号试试,如下面形式是可以分词且不并行的(yes, not beautiful but workable:eek:)。
【68】
【00 : 05 : 06,700 - - > 00 : 05 : 11,700】
本公司全体同仁都为许大同骄傲

第2个问题:
只要有一个系统能分词,则问题很可能在于操作系统配置差异,请您问问系统使用方面的专家。
 
#14
Re: 回复: YACSI 1.0 for NLPIR/ICTCLAS2015

谢谢您的回复。

我只是想试一试最新的YACSI 1.0 for NLPIR/ICTCLAS2015, 把发现的问题提出来,看看是否有更好的解决办法。在每行首尾各加刮号或符号可行,但若对几十个文件且每个文件5000到8000行添符号, 多了一道处理过程。 其实,几年前我用 YACSI 9.x 分过词了。由于用YACSI 1.0 出现乱码,我又用 YACSI 9.x 试一次,原文没有问题, 不需再转换或重开重存一次,不知为什么用YACSI 1.0回出现问题, 要是别人没问题,我要多试试或等后续版本了。
 

iCasino

普通会员
#16
回复: Re: 回复: YACSI 1.0 for NLPIR/ICTCLAS2015

谢谢您的回复。

我只是想试一试最新的YACSI 1.0 for NLPIR/ICTCLAS2015, 把发现的问题提出来,看看是否有更好的解决办法。在每行首尾各加刮号或符号可行,但若对几十个文件且每个文件5000到8000行添符号, 多了一道处理过程。
YACSI 1.0标注UTF-8文件后换行不准确,是因为ICTCLAS 2015将输出文件的换行符默认为Macintosh格式了,所以用Window的记事本打开会断行错误。在不修改程序也不添加特殊符号的情况下,目前有一个批处理方法,你可以试试。

1. 下载http://waterlan.home.xs4all.nl/dos2unix/dos2unix-7.2.1-win32.zip
2. 解压得到四个文件dos2unix.exe、mac2unix.exe、unix2dos.exe、unix2mac.exe
3. 把解压缩的四个文件放入语料库根目录(如c:\corpus)
4. 在 c:\corpus>的目录下运行 mac2unix.exe *
5. 在 c:\corpus>的目录下运行unix2dos.exe *

YACSI 1.0标注的UTF-8文件换行不准确的问题应该可以解决。如果你有其他Mac转Windows格式的工具也可以。只是记得转换前保存一份分词结果,以免转换过程中出现的意外情况。
 
顶部