/// <summary> /// Returns a list of features used to predict whether the specified mention is non-referential. /// </summary> /// <param name="mention"> /// The mention under considereation. /// </param> /// <returns> /// a list of featues used to predict whether the specified mention is non-referential. /// </returns> protected internal virtual List <string> GetNonReferentialFeatures(Mention.MentionContext mention) { var features = new List <string>(); var mentionTokens = mention.TokenParses; for (var tokenIndex = 0; tokenIndex <= mention.HeadTokenIndex; tokenIndex++) { var token = mentionTokens[tokenIndex]; var wordFeatureList = MaximumEntropyResolver.GetWordFeatures(token); for (var wordFeatureIndex = 0; wordFeatureIndex < wordFeatureList.Count; wordFeatureIndex++) { features.Add("nr" + (wordFeatureList[wordFeatureIndex])); } } features.AddRange(MaximumEntropyResolver.GetContextFeatures(mention)); return(features); }
/// <summary> /// Returns a list of features used to predict whether the specified mention is non-referential. /// </summary> /// <param name="mention"> /// The mention under considereation. /// </param> /// <returns> /// a list of featues used to predict whether the specified mention is non-referential. /// </returns> protected internal virtual List <string> GetNonReferentialFeatures(Mention.MentionContext mention) { List <string> features = new List <string>(); Mention.IParse[] mentionTokens = mention.TokenParses; //System.err.println("getNonReferentialFeatures: mention has "+mtokens.length+" tokens"); for (int tokenIndex = 0; tokenIndex <= mention.HeadTokenIndex; tokenIndex++) { Mention.IParse token = mentionTokens[tokenIndex]; List <string> wordFeatureList = MaximumEntropyResolver.GetWordFeatures(token); for (int wordFeatureIndex = 0; wordFeatureIndex < wordFeatureList.Count; wordFeatureIndex++) { features.Add("nr" + (wordFeatureList[wordFeatureIndex])); } } features.AddRange(MaximumEntropyResolver.GetContextFeatures(mention)); return(features); }