以前已经提到过使用FudanNLP进行新闻关键词提取,无奈组长不满意因而换成了ictclas,在个人ubuntu13.04上面ictclas跑得很好,惋惜到别人的机器上就报错,没办法,只好再一次换工具,通过晓阳童鞋推荐,此次换成了ANSJ,听说这个工具就是早先ictclas的JAVA版本。java
这个工具的Github地址是这里:https://github.com/ansjsun/ansj_seg 须要看源码的本身前往。下面说说如何使用这个工具提取关键词。git
1-下载JAR包github
显然下载JAR包是最省事的方法,固然你也能够把Github上面的工程加进来,无奈JAR包找了很久未找到,最后只好向做者索取,目前已经上传到CSDN了,欢迎下载:http://download.csdn.net/detail/jj12345jj198999/6020541ubuntu
2-自定义keyword类网络
虽然ANSJ中已经实现了关键词提取,不过输出时并无给出每个关键词的权重,因而只好手动修改keyword类,好在Github上面的源码中已经定义了权重成员,咱们只须要增长一个Get函数便可。app
publicclassKeywordimplementsComparable {
privateString name;
privatedoublescore;
privatedoubleidf;
privateintfreq;
publicKeyword(String name,intdocFreq,intweight) {
this.name = name;
this.idf = Math.log(10000+10000.0/ (docFreq +1));
this.score = idf * weight;
freq++;
}
publicvoidupdateWeight(intweight) {
this.score += weight * idf;
freq++;
}
publicintcompareTo(Keyword o) {
if(this.score
return1;
} else{
return-1;
}
}
publicbooleanequals(Objec