@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getContextFeatures(mention)); features.addAll(ResolverUtils.getStringMatchFeatures(mention,entity)); } return features; }
@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getContextFeatures(mention)); features.addAll(ResolverUtils.getStringMatchFeatures(mention,entity)); } return features; }
@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getContextFeatures(mention)); features.addAll(ResolverUtils.getStringMatchFeatures(mention,entity)); } return features; }
@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getContextFeatures(mention)); features.addAll(ResolverUtils.getStringMatchFeatures(mention,entity)); } return features; }
@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getContextFeatures(mention)); features.addAll(ResolverUtils.getStringMatchFeatures(mention,entity)); features.addAll(ResolverUtils.getDistanceFeatures(mention,entity)); } return (features); } }
@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getContextFeatures(mention)); features.addAll(ResolverUtils.getStringMatchFeatures(mention,entity)); features.addAll(ResolverUtils.getDistanceFeatures(mention,entity)); } return (features); } }
/** * Returns a list of features used to predict whether the specified mention is non-referential. * @param mention The mention under consideration. * @return a list of features used to predict whether the specified mention is non-referential. */ protected List<String> getNonReferentialFeatures(MentionContext mention) { List<String> features = new ArrayList<String>(); Parse[] mtokens = mention.getTokenParses(); //System.err.println("getNonReferentialFeatures: mention has "+mtokens.length+" tokens"); for (int ti = 0; ti <= mention.getHeadTokenIndex(); ti++) { Parse tok = mtokens[ti]; List<String> wfs = ResolverUtils.getWordFeatures(tok); for (int wfi = 0; wfi < wfs.size(); wfi++) { features.add("nr" + wfs.get(wfi)); } } features.addAll(ResolverUtils.getContextFeatures(mention)); return features; }
/** * Returns a list of features used to predict whether the specified mention is non-referential. * @param mention The mention under consideration. * @return a list of features used to predict whether the specified mention is non-referential. */ protected List<String> getNonReferentialFeatures(MentionContext mention) { List<String> features = new ArrayList<String>(); Parse[] mtokens = mention.getTokenParses(); //System.err.println("getNonReferentialFeatures: mention has "+mtokens.length+" tokens"); for (int ti = 0; ti <= mention.getHeadTokenIndex(); ti++) { Parse tok = mtokens[ti]; List<String> wfs = ResolverUtils.getWordFeatures(tok); for (int wfi = 0; wfi < wfs.size(); wfi++) { features.add("nr" + wfs.get(wfi)); } } features.addAll(ResolverUtils.getContextFeatures(mention)); return features; }
@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getPronounMatchFeatures(mention,entity)); List<String> contexts = ResolverUtils.getContextFeatures(mention); MentionContext cec = entity.getLastExtent(); if (mention.getHeadTokenTag().startsWith("PRP") && cec.getHeadTokenTag().startsWith("PRP")) { features.add(mention.getHeadTokenText() + "," + cec.getHeadTokenText()); } else if (mention.getHeadTokenText().startsWith("NNP")) { for (int ci = 0, cl = contexts.size(); ci < cl; ci++) { features.add(contexts.get(ci)); } features.add(mention.getNameType() + "," + cec.getHeadTokenText()); } else { List<String> ccontexts = ResolverUtils.getContextFeatures(cec); for (int ci = 0, cl = ccontexts.size(); ci < cl; ci++) { features.add(ccontexts.get(ci)); } features.add(cec.getNameType() + "," + mention.getHeadTokenText()); } } return (features); }
@Override protected List<String> getFeatures(MentionContext mention, DiscourseEntity entity) { List<String> features = new ArrayList<String>(); features.addAll(super.getFeatures(mention, entity)); if (entity != null) { features.addAll(ResolverUtils.getPronounMatchFeatures(mention,entity)); List<String> contexts = ResolverUtils.getContextFeatures(mention); MentionContext cec = entity.getLastExtent(); if (mention.getHeadTokenTag().startsWith("PRP") && cec.getHeadTokenTag().startsWith("PRP")) { features.add(mention.getHeadTokenText() + "," + cec.getHeadTokenText()); } else if (mention.getHeadTokenText().startsWith("NNP")) { for (int ci = 0, cl = contexts.size(); ci < cl; ci++) { features.add(contexts.get(ci)); } features.add(mention.getNameType() + "," + cec.getHeadTokenText()); } else { List<String> ccontexts = ResolverUtils.getContextFeatures(cec); for (int ci = 0, cl = ccontexts.size(); ci < cl; ci++) { features.add(ccontexts.get(ci)); } features.add(cec.getNameType() + "," + mention.getHeadTokenText()); } } return (features); }
MentionContext cec = entity.getLastExtent(); features.addAll(ResolverUtils.getDistanceFeatures(mention,entity)); features.addAll(ResolverUtils.getContextFeatures(cec)); features.add(ResolverUtils.getMentionCountFeature(entity));
MentionContext cec = entity.getLastExtent(); features.addAll(ResolverUtils.getDistanceFeatures(mention,entity)); features.addAll(ResolverUtils.getContextFeatures(cec)); features.add(ResolverUtils.getMentionCountFeature(entity));
if (entity != null) { MentionContext ant = entity.getLastExtent(); List<String> leftContexts = ResolverUtils.getContextFeatures(ant); for (int ci = 0, cn = leftContexts.size(); ci < cn; ci++) { features.add("l" + leftContexts.get(ci)); List<String> rightContexts = ResolverUtils.getContextFeatures(mention); for (int ci = 0, cn = rightContexts.size(); ci < cn; ci++) { features.add("r" + rightContexts.get(ci));
if (entity != null) { MentionContext ant = entity.getLastExtent(); List<String> leftContexts = ResolverUtils.getContextFeatures(ant); for (int ci = 0, cn = leftContexts.size(); ci < cn; ci++) { features.add("l" + leftContexts.get(ci)); List<String> rightContexts = ResolverUtils.getContextFeatures(mention); for (int ci = 0, cn = rightContexts.size(); ci < cn; ci++) { features.add("r" + rightContexts.get(ci));
features.addAll(ResolverUtils.getContextFeatures(cec)); features.addAll(ResolverUtils.getDistanceFeatures(mention,entity)); features.add(ResolverUtils.getMentionCountFeature(entity));
features.addAll(ResolverUtils.getContextFeatures(cec)); features.addAll(ResolverUtils.getDistanceFeatures(mention,entity)); features.add(ResolverUtils.getMentionCountFeature(entity));