Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Word[] kSimilarity(String w, int k) {
- Word[] kSimilarWords = new Word[k];
- Word bestCandidate = this.vocab[0];
- for (int r = 0; r < k; r++) {
- kSimilarWords[r] = this.vocab[0];
- }
- Word mainWord = this.searchString(w);
- Vector vecRep = mainWord.getVectorialRep();
- int f = 0;
- while (f < k) {
- bestCandidate = this.vocab[0];
- for (int i = 0; i < nbWordsInVocab; i++) {
- if (w.compareTo(this.vocab[i].getWord()) != 0) {
- if (vecRep.similariteCosinus(this.vocab[i].getVectorialRep()) > vecRep.similariteCosinus(bestCandidate.getVectorialRep())) {
- if (this.isIn(this.vocab[i].getWord(), kSimilarWords)) {
- f = f;
- }
- else {
- bestCandidate = this.vocab[i];
- }
- }
- }
- }
- kSimilarWords[f] = bestCandidate;
- f++;
- }
- return kSimilarWords;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement