⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 thereexistsmatch.java

📁 mallet是自然语言处理、机器学习领域的一个开源项目。
💻 JAVA
字号:
/* Copyright (C) 2002 Univ. of Massachusetts Amherst, Computer Science Dept.   This file is part of "MALLET" (MAchine Learning for LanguagE Toolkit).   http://www.cs.umass.edu/~mccallum/mallet   This software is provided under the terms of the Common Public License,   version 1.0, as published by http://www.opensource.org.  For further   information, see the file `LICENSE' included with this distribution. */package edu.umass.cs.mallet.projects.seg_plus_coref.condclust.pipe;import edu.umass.cs.mallet.projects.seg_plus_coref.condclust.types.*;import edu.umass.cs.mallet.projects.seg_plus_coref.coreference.*;import edu.umass.cs.mallet.base.types.*;import edu.umass.cs.mallet.base.pipe.*;import java.util.*;import com.wcohen.secondstring.StringDistance;import com.wcohen.secondstring.NeedlemanWunsch;/** More specific "does there exist a node such that" questions */public class ThereExistsMatch extends Pipe{	StringDistance distanceMeasure;		public ThereExistsMatch (StringDistance _distanceMeasure)		{		this.distanceMeasure = _distanceMeasure;		if (!(distanceMeasure instanceof NeedlemanWunsch)) {			throw new IllegalArgumentException ("Only NeedlemanWunsch supported now");		}	}	public Instance pipe (Instance carrier) {		NodeClusterPair pair = (NodeClusterPair)carrier.getData();		Citation node = (Citation)pair.getNode();		String nodeString = node.getUnderlyingString();		Collection cluster = (Collection)pair.getCluster();		Iterator iter = cluster.iterator ();		boolean exactMatch = false;		boolean approxMatch = false;		while (iter.hasNext()) {			Citation member = (Citation) iter.next();			String wholeString = member.getUnderlyingString ();			if (wholeString.equals (nodeString)) 				exactMatch = true;			if (exactMatch)				break;			/*double dist = 1 - ((Math.abs(distanceMeasure.score(wholeString, nodeString)) / (double)(wholeString.length() + nodeString.length())));			if (dist >= 0.8)			approxMatch = true;			if (exactMatch && approxMatch)				break;			*/		}		if (exactMatch)				pair.setFeatureValue ("ThereExistsExactMatch", 1.0);						if (approxMatch)				pair.setFeatureValue ("ThereExistsHighApproxMatch", 1.0);									return carrier;	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -