当前位置:   article > 正文

OpenNLP ngram n元语法模型(简介)_opennlp模型扩展

opennlp模型扩展

n元语法模型在这里不进行介绍,大家可以根据这两篇博客了解下:关于N-Gram模型或者自然语言处理中的N-Gram

写这篇博客主要是要用到OpenNLP中的ngram模型(我用的opennlp-tools-1.7.0,版本,opennlp.tools.ngram包中),在这里对里面的类和方法的功能简要介绍。


一、NGramGenerator 类

1.功能:对给定的序列使用自定义的分隔符生成一个ngram,并将所有的ngram存储在String类型的List中

2.方法:

(1)public static List<String> generate(List<String> input, int n, String separator){...}

String类型的List作为输入input,用户根据n自定义要生成几元语法类型(n = 2,3 为bigram或者trigram),并且根据separator自定义字符分割标签

(2)public static List<String> generate(char[] input, int n, String separator){...}

该方法除了输入类型为char型数组外,与上一方法用法一样


3.例子:

  1. public class App
  2. {
  3. public static void main( String[] args )
  4. {
  5. String setence = "我爱自然语言处理。";
  6. char[] ch = setence.toCharArray();
  7. List<String> trigram = NGramGenerator.generate(ch, 3, "/");
  8. System.out.println(trigram);
  9. }
  10. }

该程序运行的结果为:[我/爱/自, 爱/自/然, 自/然/语, 然/语/言, 语/言/处, 言/处/理, 处/理/。]


二、NGramModel类

1.功能:用来生成ngrams 和 character ngrams


2.方法:

(1࿰

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/703082
推荐阅读
  

闽ICP备14008679号