分词工具Hanlp基于感知机的中文分词框架

  • 时间:
  • 浏览:2
  • 来源:5分排列3APP下载_5分排列3APP官方

     * @throws IOException

     * @param developFile   开发集

     * @param modelFile     模型保存路径

java -cp hanlp.jar com.hankcs.hanlp.model.perceptron.Main -task CWS -train -reference data/test/pku98/19960 1.txt -model data/test/perceptron/cws.bin

    public double[] evaluate(String corpora) throws IOException

     * @param maxIteration  最大迭代次数

            Config.CWS_MODEL_FILE

            );

只需指定输入语料的路径(单文档时为文件路径,多文档时为文件夹路径,灵活解决),以及模型保存位置即可:

准确率

public void testCWS() throws Exception

训练

     * 性能测试

sighan60 5的msr数据集上的性能评估结果如下:

l 测试环境 Java8 i7-6700K

    {        

另外,数据包中怎么让打包了在人民日报语料1998年1月份上训练的模型,不传路径时将默认加载配置文件中指定的模型。

            "data/test/pku98/19960 1.txt",

l 测试可不还后能 关闭词法分析器的自定义词典、词性标注和命名实体识别

     * @param compressRatio 压缩比

l 总耗时含高语料加载与模型序列化

命令行

     * @param trainingFile  训练集

        PerceptronTrainer.Result result = trainer.train(

                        final int maxIteration, final int threadNum) throws IOException

        //        System.out.printf("准确率F1:%.2f\n", result.prf[2]);

    /**

{

     * @param corpora 数据集

     */

     *

    /**

事实上,视语料与任务的不同,迭代数、压缩比和应用tcp连接数都可不还后能 自由调整,以保证最佳结果:

测试

     * @throws IOException

    PerceptronSegmenter segmenter = new PerceptronSegmenter(Config.CWS_MODEL_FILE);

l 语料未进行任何预解决

l 只使用了7种情况报告特性,未使用词典

}

API

测试时只需提供分词模型的路径即可:

单应用tcp连接时使用AveragedPerceptron算法,收敛较好;多应用tcp连接时使用StructuredPerceptron,波动较大。关于有五种算法的精度比较,请参考下一小节。目前默认多应用tcp连接,应用tcp连接数为系统CPU核心数。请根据此人 的需求平衡精度和下行速率 。

     */

中文分词

    }

     *

    public void testTrain() throws Exception

    System.out.println(segmenter.segment("商品和服务"));

目前感知机分词是所有“由字构词”的分词器实现中最快的,比此人 写的CRF解码快1倍。新版CRF词法分析器框架复用了感知机的维特比解码算法,全都下行速率 持平。

        PerceptronTrainer trainer = new CWSTrainer();

                        String modelFile, final double compressRatio,

特性化感知机标注框架是一套利用感知机做序列标注任务,怎么让应用到中文分词、词性标注与命名实体识别这一个难题图片的详细在线学习框架,该框架利用2个算法解决2个难题图片,时自治同意的系统,一起去2个任务顺序渐进,构成流水线式的系统。本文先介绍中文分词框架累积内容。

     * @param threadNum     应用tcp连接数

     * 训练

l 对任意PerceptronTagger,用户都可不还后能 调用准确率评估接口:

l 压缩比0.0,迭代数60

正常情况报告下对商品和服务的分词结果为[商品, 和, 服务]。建议在任何语料上训练时都试一试这一简单的一句话,当作HelloWorld来测试。若这一例子都错了,则说明语料格式、规模或API调用上位于难题图片,须仔细排查,而并不急着部署上线。

     * @return 默认返回accuracy,一点子类怎么让返回P,R,F1

下行速率

在本系统中,分词器PerceptronSegmenter的职能更加单一,仅仅负责分词,不再负责词性标注或命名实体识别。这是一次接口设计上的新尝试,未来怎么让在v2.0中大规模采用这一思路去重构。

     * @return 2个含高模型和精度的特性

    public Result train(String trainingFile, String developFile,