public IWord getSenseFromSenseKey(final String sensekey) { final String lemma = sensekey.split("%")[0]; final Set<IWord> senses = new HashSet<IWord>(); for (POS pos : POS.values()) senses.addAll(getSenses(lemma, pos)); for (IWord sense : senses) if (sense.getSenseKey().toString().equals(sensekey)) return sense; return null; }
public void cacheWordByKey(IWord word){ checkOpen(); if(!isEnabled()) return; keyCache.put(word.getSenseKey(), word); reduceCacheSize(keyCache); }
private HashMap<IWordID, Double> getProbs(List<IWordID> senses) { HashMap<IWordID,Double> probs = new HashMap<IWordID,Double>(); double total = 0; for(IWordID iw: senses) { total += dict.getSenseEntry(dict.getWord(iw).getSenseKey()).getTagCount(); } for(IWordID iw: senses) { double val = dict.getSenseEntry(dict.getWord(iw).getSenseKey()).getTagCount() / total; if(Double.isNaN(val)) { val = 0.; } probs.put(iw, val); } return probs; }
private HashMap<IWordID, Double> getProbs(List<IWordID> senses) { HashMap<IWordID, Double> probs = new HashMap<IWordID, Double>(); double total = 0; for (IWordID iw : senses) { total += dict.getSenseEntry(dict.getWord(iw).getSenseKey()).getTagCount(); } for (IWordID iw : senses) { double val = dict.getSenseEntry(dict.getWord(iw).getSenseKey()).getTagCount() / total; if (Double.isNaN(val)) { val = 0.; } probs.put(iw, val); } return probs; }
synset = i.next(); synsets.put(synset.getID(), synset); for(IWord word : synset.getWords()) result.words.put(word.getSenseKey(), word); entry = i.next(); word = result.words.get(entry.getSenseKey()); result.senses.put(word.getSenseKey(), makeSenseEntry(word.getSenseKey(), entry));
ISenseKey key = word.getSenseKey(); if(key.needsHeadSet()){ ISenseKey oldKey = old.getSenseKey(); key.setHead(oldKey.getHeadWord(), oldKey.getHeadID());
if(synset != null) for(IWord synonym : synset.getWords()) if(synonym.getSenseKey().equals(key)) return synonym; if(possibleWord != null) for(IWord synonym : possibleWord.getSynset().getWords()){ if(synonym.getSenseKey().equals(key)){ word = synonym; if(synonym.getLemma().equals(key.getLemma())) return synonym;
if(word.getSenseKey().needsHeadSet()) word.getSenseKey().setHead(headLemma, headWord.getLexicalID());