亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? segment.java

?? 基于java語言的分詞系統(tǒng)
?? JAVA
字號(hào):
package org.ictclas4j.segment;

import java.util.ArrayList;

import org.apache.log4j.Logger;
import org.ictclas4j.bean.Atom;
import org.ictclas4j.bean.Dictionary;
import org.ictclas4j.bean.MidResult;
import org.ictclas4j.bean.SegNode;
import org.ictclas4j.bean.SegResult;
import org.ictclas4j.bean.Sentence;
import org.ictclas4j.utility.DebugUtil;
import org.ictclas4j.utility.POSTag;
import org.ictclas4j.utility.Utility;


public class Segment {
	private Dictionary coreDict;

	private Dictionary bigramDict;

	private PosTagger personTagger;

	private PosTagger transPersonTagger;

	private PosTagger placeTagger;

	private PosTagger lexTagger;

	private int segPathCount = 1;// 分詞路徑的數(shù)目

	static Logger logger = Logger.getLogger(Segment.class);

	public Segment(int segPathCount) {
		this.segPathCount = segPathCount;
		logger.info("Load coreDict  ...");
		coreDict = new Dictionary("data\\coreDict.dct");

		logger.info("Load bigramDict ...");
		bigramDict = new Dictionary("data\\bigramDict.dct");

		logger.info("Load tagger dict ...");
		personTagger = new PosTagger(Utility.TAG_TYPE.TT_PERSON, "data\\nr", coreDict);
		transPersonTagger = new PosTagger(Utility.TAG_TYPE.TT_TRANS_PERSON, "data\\tr", coreDict);
		placeTagger = new PosTagger(Utility.TAG_TYPE.TT_TRANS_PERSON, "data\\ns", coreDict);
		lexTagger = new PosTagger(Utility.TAG_TYPE.TT_NORMAL, "data\\lexical", coreDict);
		logger.info("Load dict is over");
	}

	public SegResult split(String src) {
		SegResult sr = new SegResult(src);// 分詞結(jié)果
		String finalResult = null;

		if (src != null) {
			finalResult = "";
			int index = 0;
			String midResult = null;
			sr.setRawContent(src);
			SentenceSeg ss = new SentenceSeg(src);
			ArrayList<Sentence> sens = ss.getSens();
			
			for (Sentence sen : sens) {
				logger.debug(sen);
				long start=System.currentTimeMillis();
				MidResult mr = new MidResult();
				mr.setIndex(index++);
				mr.setSource(sen.getContent());
				if (sen.isSeg()) {

					// 原子分詞
					AtomSeg as = new AtomSeg(sen.getContent());
					ArrayList<Atom> atoms = as.getAtoms();
					mr.setAtoms(atoms); 
					System.err.println("[atom time]:"+(System.currentTimeMillis()-start));
					start=System.currentTimeMillis();
					
					// 生成分詞圖表,先進(jìn)行初步分詞,然后進(jìn)行優(yōu)化,最后進(jìn)行詞性標(biāo)記
					SegGraph segGraph = GraphGenerate.generate(atoms, coreDict);
					mr.setSegGraph(segGraph.getSnList());
					// 生成二叉分詞圖表
					SegGraph biSegGraph = GraphGenerate.biGenerate(segGraph, coreDict, bigramDict);
					mr.setBiSegGraph(biSegGraph.getSnList());
					System.err.println("[graph time]:"+(System.currentTimeMillis()-start));
					start=System.currentTimeMillis();
					
					// 求N最短路徑
					NShortPath nsp = new NShortPath(biSegGraph, segPathCount);
					ArrayList<ArrayList<Integer>> bipath = nsp.getPaths();
					mr.setBipath(bipath);
					System.err.println("[NSP time]:"+(System.currentTimeMillis()-start));
					start=System.currentTimeMillis();
					
					for (ArrayList<Integer> onePath : bipath) {
						// 得到初次分詞路徑
						ArrayList<SegNode> segPath = getSegPath(segGraph, onePath);
						ArrayList<SegNode> firstPath = AdjustSeg.firstAdjust(segPath);
						String firstResult = outputResult(firstPath);
						mr.addFirstResult(firstResult);
						System.err.println("[first time]:"+(System.currentTimeMillis()-start));
						start=System.currentTimeMillis();

						// 處理未登陸詞,進(jìn)對(duì)初次分詞結(jié)果進(jìn)行優(yōu)化
						SegGraph optSegGraph = new SegGraph(firstPath);
						ArrayList<SegNode> sns = clone(firstPath);
						personTagger.recognition(optSegGraph, sns);
						transPersonTagger.recognition(optSegGraph, sns);
						placeTagger.recognition(optSegGraph, sns);
						mr.setOptSegGraph(optSegGraph.getSnList());
						System.err.println("[unknown time]:"+(System.currentTimeMillis()-start));
						start=System.currentTimeMillis();

						// 根據(jù)優(yōu)化后的結(jié)果,重新進(jìn)行生成二叉分詞圖表
						SegGraph optBiSegGraph = GraphGenerate.biGenerate(optSegGraph, coreDict, bigramDict);
						mr.setOptBiSegGraph(optBiSegGraph.getSnList());

						// 重新求取N-最短路徑
						NShortPath optNsp = new NShortPath(optBiSegGraph, segPathCount);
						ArrayList<ArrayList<Integer>> optBipath = optNsp.getPaths();
						mr.setOptBipath(optBipath);

						// 生成優(yōu)化后的分詞結(jié)果,并對(duì)結(jié)果進(jìn)行詞性標(biāo)記和最后的優(yōu)化調(diào)整處理
						ArrayList<SegNode> adjResult = null;
						for (ArrayList<Integer> optOnePath : optBipath) {
							ArrayList<SegNode> optSegPath = getSegPath(optSegGraph, optOnePath);
							lexTagger.recognition(optSegPath);
							String optResult = outputResult(optSegPath);
							mr.addOptResult(optResult);
							adjResult = AdjustSeg.finaAdjust(optSegPath, personTagger, placeTagger);
							String adjrs = outputResult(adjResult);
							System.err.println("[last time]:"+(System.currentTimeMillis()-start));
							start=System.currentTimeMillis();
							if (midResult == null)
								midResult = adjrs;
							break;
						}
					}
					sr.addMidResult(mr);
				} else
					midResult = sen.getContent();
				finalResult += midResult;
				midResult = null;
			}

			sr.setFinalResult(finalResult);
			DebugUtil.output2html(sr);
			logger.info(finalResult);
		}

		return sr;
	}

	private ArrayList<SegNode> clone(ArrayList<SegNode> sns) {
		ArrayList<SegNode> result = null;
		if (sns != null && sns.size() > 0) {
			result = new ArrayList<SegNode>();
			for (SegNode sn : sns)
				result.add(sn.clone());
		}
		return result;
	}

	// 根據(jù)二叉分詞路徑生成分詞路徑
	private ArrayList<SegNode> getSegPath(SegGraph sg, ArrayList<Integer> bipath) {

		ArrayList<SegNode> path = null;

		if (sg != null && bipath != null) {
			ArrayList<SegNode> sns = sg.getSnList();
			path = new ArrayList<SegNode>();

			for (int index : bipath)
				path.add(sns.get(index));

		}
		return path;
	}

	// 根據(jù)分詞路徑生成分詞結(jié)果
	private String outputResult(ArrayList<SegNode> wrList) {
		String result = null;
		String temp=null;
		char[] pos = new char[2];
		if (wrList != null && wrList.size() > 0) {
			result = "";
			for (int i = 0; i < wrList.size(); i++) {
				SegNode sn = wrList.get(i);
				if (sn.getPos() != POSTag.SEN_BEGIN && sn.getPos() != POSTag.SEN_END) {
					int tag = Math.abs(sn.getPos());
					pos[0] = (char) (tag / 256);
					pos[1] = (char) (tag % 256);
					temp=""+pos[0];
					if(pos[1]>0)
						temp+=""+pos[1];
					result += sn.getSrcWord() + "/" + temp + " ";
				}
			}
		}

		return result;
	}

	public void setSegPathCount(int segPathCount) {
		this.segPathCount = segPathCount;
	}

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
婷婷综合另类小说色区| 五月婷婷激情综合网| 国产精品久久久久婷婷二区次| 国产精品视频在线看| 久久99精品国产.久久久久 | 精品国产乱码久久久久久图片 | 99国产欧美另类久久久精品| 美女久久久精品| 中文字幕一区二区三区在线播放| 国产成人免费视频| 欧美男女性生活在线直播观看| 国产精品高潮呻吟| 99riav一区二区三区| 亚洲成人激情av| 一区二区三区四区蜜桃| 国产精品夜夜嗨| 欧美二区三区91| 91网站最新网址| 国产精品香蕉一区二区三区| 亚洲欧美国产高清| 久久婷婷国产综合精品青草| 6080yy午夜一二三区久久| 91在线观看污| 成人av一区二区三区| 舔着乳尖日韩一区| 亚洲国产日韩av| 中文字幕一区二区视频| 国产欧美日韩在线看| 日韩欧美国产不卡| 欧美电影免费观看高清完整版| 欧美日韩你懂的| 日本道免费精品一区二区三区| 成人小视频在线| 国产大陆精品国产| 亚洲va国产天堂va久久en| 亚洲人被黑人高潮完整版| 国产精品免费久久久久| 欧美极品美女视频| 国产欧美中文在线| 久久亚洲影视婷婷| 国产亚洲一区二区在线观看| 欧美岛国在线观看| 欧美一级欧美三级| 91久久一区二区| 成人在线综合网| 粉嫩欧美一区二区三区高清影视| 男女性色大片免费观看一区二区| 亚洲色图丝袜美腿| 一区二区三区中文在线观看| 亚洲欧美色综合| 中文字幕一区三区| 一区2区3区在线看| 亚洲h动漫在线| 七七婷婷婷婷精品国产| 国内精品伊人久久久久av影院| 国产乱一区二区| 成人18视频日本| 在线视频一区二区免费| 欧美精品丝袜中出| 26uuu亚洲| 国产清纯白嫩初高生在线观看91| 日韩视频中午一区| 国产精品色在线观看| 99国产精品国产精品久久| 97久久超碰精品国产| 欧美日韩免费观看一区二区三区 | 蜜桃视频免费观看一区| 激情综合网最新| www.亚洲色图.com| 91久久精品一区二区| 欧美一级日韩一级| 在线日韩av片| 欧美伊人久久久久久久久影院| 色激情天天射综合网| 91麻豆精品国产91久久久使用方法| 在线观看中文字幕不卡| 91精品国产福利| 国产色产综合产在线视频| 久久综合久久鬼色中文字| 国产精品美女久久久久aⅴ| 亚洲日本在线看| 午夜精品久久久久久久久久| 亚洲日本电影在线| 三级在线观看一区二区| 国产一区二区三区四| 91丨porny丨国产| 欧美激情资源网| 最新热久久免费视频| 色欧美88888久久久久久影院| 成人一区二区三区中文字幕| 色88888久久久久久影院按摩| 久久无码av三级| 在线观看日韩av先锋影音电影院| 夜夜夜精品看看| 亚洲欧美日韩国产手机在线| 日韩毛片精品高清免费| 久久精品久久综合| 日本电影欧美片| 国产亚洲女人久久久久毛片| 亚洲成人动漫在线观看| 成人h动漫精品一区二| 日韩免费视频线观看| 中文字幕亚洲电影| 欧美午夜免费电影| 1000部国产精品成人观看| 久久99精品国产.久久久久久 | 日本va欧美va精品| www.亚洲色图.com| 久久免费电影网| 秋霞午夜鲁丝一区二区老狼| 丁香天五香天堂综合| 精品捆绑美女sm三区| 性感美女极品91精品| 色网综合在线观看| 亚洲欧美一区二区视频| 国产成人av资源| 欧美tk—视频vk| 日本成人在线不卡视频| 欧美中文字幕不卡| 亚洲精品国产精华液| 成人一二三区视频| 国产日产精品一区| 国产一区二区调教| 亚洲精品一区二区三区99| 亚洲妇熟xx妇色黄| 欧美日韩免费电影| 亚洲男人都懂的| 91传媒视频在线播放| 亚洲精品国产视频| 欧美性受xxxx黑人xyx性爽| 一区二区在线观看免费视频播放| 成人a级免费电影| 中文字幕一区免费在线观看| 99久久精品国产精品久久| 国产精品乱码一区二区三区软件 | 91网站黄www| 亚洲精品国产无套在线观| 91免费版pro下载短视频| 中文字幕一区二区三区视频| 色综合视频一区二区三区高清| 国产精品久久久久久久久晋中| www.亚洲激情.com| 亚洲免费伊人电影| 亚洲成人福利片| 国产一区视频网站| 国产亚洲精品福利| av成人老司机| 亚洲激情校园春色| 欧美婷婷六月丁香综合色| 图片区日韩欧美亚洲| 欧美一区二区三区在线看| 国产综合久久久久久久久久久久| 久久一日本道色综合| 97久久久精品综合88久久| 亚洲人成在线观看一区二区| 欧美在线观看18| 欧美性感一区二区三区| 国产精品视频一二三区| 99久久777色| 午夜影视日本亚洲欧洲精品| 日韩欧美二区三区| 国产1区2区3区精品美女| 亚洲精品伦理在线| 日韩写真欧美这视频| 国产ts人妖一区二区| 亚洲老妇xxxxxx| 欧美大片国产精品| 成人av在线资源网| 亚洲国产一二三| 久久亚洲精品小早川怜子| 99久久综合99久久综合网站| 亚洲图片欧美综合| 欧美日本韩国一区| 国产成人一区在线| 亚洲成人精品在线观看| 久久―日本道色综合久久| 一道本成人在线| 久久精品72免费观看| 国产精品高潮久久久久无| 7777精品伊人久久久大香线蕉完整版 | 91九色02白丝porn| 婷婷丁香久久五月婷婷| 国产日产欧产精品推荐色| 欧美日韩亚洲国产综合| 精品一区二区三区免费毛片爱| 亚洲欧美另类久久久精品| 欧美成人猛片aaaaaaa| 一本色道久久综合亚洲aⅴ蜜桃| 欧美a级理论片| 亚洲欧美福利一区二区| 欧美成人欧美edvon| 欧美亚洲国产bt| 国产精品996| 麻豆精品新av中文字幕| 亚洲视频一区在线| 久久久精品国产免大香伊 | 欧美少妇bbb| 国产成人亚洲精品青草天美 | 国产精品一级在线| 亚洲成人av免费|