lucene Ngram 划分词语
来源:互联网 发布:长虹老年机淘宝 编辑:程序博客网 时间:2024/04/27 19:55
最近在做一个有关文本挖掘的项目,需要用到Ngram模型已经相对应的向量匹配相似度的技术
Ngram分词的程序
有位网友在问我,想了想写在这里吧,至于那些jar包也很好找,lucene jar ,在百度搜索都能找到
package edu.fjnu.huanghong;import java.io.IOException;import java.io.StringReader;import org.apache.lucene.analysis.Tokenizer;import org.apache.lucene.analysis.ngram.NGramTokenizer;import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;import org.apache.lucene.analysis.tokenattributes.PositionLengthAttribute;import org.apache.lucene.analysis.tokenattributes.TermToBytesRefAttribute;import org.apache.lucene.analysis.tokenattributes.TypeAttribute;import org.apache.lucene.util.Version;/* * * import org.apache.lucene.analysis.ngram.Lucene43EdgeNGramTokenizer; import org.apache.lucene.analysis.ngram.Lucene43NGramTokenizer; * */public class Ngram {public static void main(String[] args) {String s = "捡 白色 iphone6 手机 壳 透明 失主 方式 15659119418 ";String[] str = s.split(" ");StringBuilder sb = new StringBuilder();for(int i = 0; i < str.length; i++){sb.append(str[i]);}System.out.println(sb.toString());StringReader sr = new StringReader(sb.toString());//N-gram模型分词器Tokenizer tokenizer = new NGramTokenizer(Version.LUCENE_45,sr);testtokenizer(tokenizer);}private static void testtokenizer(Tokenizer tokenizer) {try {tokenizer.reset();while(tokenizer.incrementToken())<span style="white-space:pre"></span>{CharTermAttribute charTermAttribute=tokenizer.addAttribute(CharTermAttribute.class);)System.out.print(charTermAttribute.toString()+"|");}tokenizer.end();tokenizer.close();} catch (IOException e) {e.printStackTrace();}}}
不知道有没有 哪位前辈有关于qgram的相关知识- - ,翻墙了都找不到,如有希望能私信我,不胜感激
0 0
- lucene Ngram 划分词语
- lucene-NGram中文分词
- 基于Lucene shingle英文单词NGram Analyzer的实现
- lucene检索,按词语比重查询
- Ngram模型
- Ngram折扣平滑算法
- Ngram 算法原理
- Count Ngram in NLP
- 解释词语
- 词语解释
- 模式词语
- 一些词语
- Oracle 词语
- 词语洁癖
- 词语输入法
- 几个词语
- 词语辨析
- 专业词语
- C++ vector用法
- java 通过System.getProperties()获取系统参数
- UI 16 数据持久化
- c++ assert() 使用方法
- 题目1389:变态跳台阶 简单DP
- lucene Ngram 划分词语
- 洗脑的胃口
- Windows OS
- Android中消息系统模型和Handler Looper
- 文件重命名小程序(适用于unix系c++)
- PHP set_error_handler() 函数与 trigger_error() 函数的配合使用
- LintCode -合并两个排序链表
- C语言_为什么字符串可以赋值给字符指针变量,字符串的属性及存放位置
- hiho coder 字符串处理