Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New ranking feature based on word embeddings Word2Vec based on cosinus value #34

Open
martinreynaert opened this issue Jan 21, 2019 · 2 comments
Assignees

Comments

@martinreynaert
Copy link
Collaborator

We currently have ranking feature:
(skip[12]?0:(*vit)->cosine_rank);

This is based on the top 20 semantic nearest neighbours as returned on the basis of word2vec word embeddings and a further check on the cosine values. This works, but is too slow for production work. Perhaps the current request will warrant this earlier feature to be renamed.

I would like a new feature that for each pair of variant and particular CC retrieves the cosine value (as does ticcltool W2V-dist). Given all the values for all the CCs for a variant, the smallest value should then be ranked 'best', i.e. being assigned 1. Larger values then get assigned ranks 2, 3 ,4, etc. Possible draws get the same rank.

Many thanks!

@kosloot kosloot self-assigned this Jan 22, 2019
@kosloot
Copy link
Collaborator

kosloot commented Feb 28, 2019

As mentioned in a private message, a test implementation is installed on black:
it replaces the old cosine result with the new variant.

testing/evaluation is needed!

@kosloot
Copy link
Collaborator

kosloot commented Feb 28, 2019

To be clear an excerpt from the IRC conversation:

Jan 22 11:41:43 <Kobus_home>	mre: ?
Jan 22 11:41:57 <mre>	Kobus?
Jan 22 11:42:16 <Kobus_home>	heb je ergens een woordvector om te testen?
Jan 22 11:42:26 <mre>	ah, dat is een goeie
Jan 22 11:42:33 <mre>	ja
Jan 22 11:42:40 <mre>	even kijken waar
Jan 22 11:43:05 <Kobus_home>	en: ik ga er van uit dat het een vervanging van cosine ranking is, geen nieuwe/extra kolom
Jan 22 11:43:26 <Kobus_home>	en: kan ik het op black setten om te testen?
Jan 22 11:43:30 <Kobus_home>	zetten
Jan 22 11:48:18 <Kobus_home>	hmm
Jan 22 11:48:36 <Kobus_home>	misschien eerst maar ff shoppen voordat ik insneeuw
Jan 22 11:53:15 *	proycon heeft nog geen sneeuwvlokje gezien
Jan 22 11:53:41 <Kobus_home>	gevirtualiseerd
Jan 22 11:54:38 <proycon>	!dpkg xsnow
Jan 22 11:54:38 <f00f>	xsnow: brings Christmas to your desktop
Jan 22 11:55:11 <Kobus_home>	:)
Jan 22 11:55:30 <proycon>	oh, correctie, ik zie zojuist de eerste fijne sneeuwvlokjes vallen
Jan 22 11:55:36 <proycon>	!weeralarm
Jan 22 11:55:36 *	f00f weeralarmt, ofzo.
Jan 22 11:55:49 <Kobus_home>	!paniek proycon 
Jan 22 11:55:49 <f00f>	Moord! Brand! HET INTARWEB IS FTUK!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!BBQ!!!!!!!!!!!!!11!11!!!!WTF!~
Jan 22 11:55:57 <Kobus_home>	mre: ik ben dus ff weg
Jan 22 11:55:59 <Kobus_home>	!afk
Jan 22 11:56:08 <mre>	dexe: /opensonar/SoNaRCurated/W2V/UctoNorm/SoNaR500.TRAIN.Dim100CBOW.vec
Jan 22 11:56:12 <mre>	deze
Jan 22 11:56:58 <mre>	ik wou cosine ranking ook nog meer gaan evalueren, eigenlijk
Jan 22 11:57:18 <mre>	maar als je die liever vervangt, goed dan
Jan 22 11:57:42 <mre>	en het mag op Black, ja
Jan 22 12:24:06 <Kobus_home>	re
Jan 22 12:24:15 <Kobus_home>	ook weer overleefd
Jan 22 12:33:09 <mre>	Kobus, ik zoek nog verder. Die vectoren daar hebben de meeste testwoorden niet.
Jan 22 12:33:15 <mre>	Waarop ga je testen?
Jan 22 12:33:33 <Kobus_home>	geen idee
Jan 22 12:33:40 <mre>	Ik moet ergens vectoren voor DPO35 hebben
Jan 22 12:33:53 <mre>	Heb geen Engelse
Jan 22 12:34:03 <Kobus_home>	zitten daar ook ngrammen in
Jan 22 12:34:05 <Kobus_home>	?
Jan 22 12:34:18 <Kobus_home>	met _ scheiders
Jan 22 12:53:12 <mre>	nee, dat zal niet
Jan 22 12:53:21 <mre>	deze werkt:
Jan 22 12:53:23 <mre>	reynaert@black:/opensonar/EDBO$ /exp/sloot/usr/local/bin/W2V-dist --vectors /opensonar/NUTICCL/W2V/NORM/EDBO/VEC/EDBO.SemNorm37.20150505.ALL.concat.vec bla
Jan 22 12:53:23 <mre>	filled with 13856002 vectors
Jan 22 12:53:24 <mre>	results in: bla.out
Jan 22 12:53:25 <mre>	reynaert@black:/opensonar/EDBO$ cat bla.out
Jan 22 12:53:26 <mre>	hont	hond	0.391911
Jan 22 12:53:27 <mre>	paerd	paard	0.918824
Jan 22 12:54:35 <mre>	dit is een unigram feature
Jan 22 12:56:55 <Kobus_home>	hmm
Jan 22 12:57:02 <Kobus_home>	!negeer voor nu ff
Jan 22 12:57:02 <f00f>	Laten we in plaats daarvan over lars gaan praten.
Jan 22 12:57:05 <Kobus_home>	eerts werken
Jan 22 12:57:08 <Kobus_home>	eerst
Jan 22 13:00:41 *	iris (~irishendric@145.118.84.28) has joined #lst
Jan 22 13:20:50 <Kobus_home>	mre: je kunt testen op black 
Jan 22 13:21:15 <Kobus_home>	rank aaanroepen met extra parameter --wordvec  /opensonar/NUTICCL/W2V/NORM/EDBO/VEC/EDBO.SemNorm37.20150505.ALL.concat.vec 
Jan 22 13:21:57 <Kobus_home>	maar doe dus niks met ngrammen
Jan 22 13:22:09 <Kobus_home>	moeten we nog bedenken wat je wil
Jan 22 13:22:39 <Kobus_home>	moet JIJ nog..
Jan 22 13:25:22 <mre>	ik zie het probleem, Kobus
Jan 22 13:25:34 <mre>	ik zie alleen nog niet hoe groot het is
Jan 22 13:25:37 <Kobus_home>	ja, is niet simpel
Jan 22 13:26:01 <Kobus_home>	vectoren kun je ook trainen op de ngramen natuurlijk
Jan 22 13:26:03 <mre>	bi- of trigramvectoren bestaan bij mijn weten niet
Jan 22 13:26:20 *	mre weet niet alles
Jan 22 13:26:36 <Kobus_home>	een ngram bij jou is een unigram, met _
Jan 22 13:26:48 <Kobus_home>	dus trainen daarop
Jan 22 13:26:53 <mre>	zo werkt word2vec bv. niet
Jan 22 13:27:10 <mre>	die leest tekst in
Jan 22 13:27:46 <mre>	maar goed, in mijn nieuwe project in Tilburg kan ik me daarin verdiepen ;0)
Jan 22 13:29:13 <Kobus_home>	W2V-dist kan ook op tekstfragmenten werken
Jan 22 13:29:23 <Kobus_home>	maar weet kwaliteit niet
Jan 22 13:29:31 <mre>	ik ook niet
Jan 22 13:29:47 <mre>	ik test dit al eens
Jan 22 13:30:02 <Kobus_home>	dist( "jan klaassen", "jan klaasen")
Jan 22 13:30:17 <mre>	ergens beginnen...
Jan 22 13:30:32 <mre>	dus geen underscore daar of kan dat ook?
Jan 22 13:30:47 <Kobus_home>	dan worden het unigrammen
Jan 22 13:30:53 <Kobus_home>	en moet je ze trainen
Jan 22 13:31:13 <Kobus_home>	't is dus niet simpel
Jan 22 13:32:16 <Kobus_home>	al zo versus alzo is dan ook niet opgelost. Hoe ziet W2v dat?
Jan 22 13:32:27 <mre>	dan zou je toch de underscores voor dit feature kunnen vervangen door spaties en alsnog de dist berekenen voor bi/trigrammen?
Jan 22 13:32:29 <Kobus_home>	!clue
Jan 22 13:32:29 *	f00f heeft geen idee.
Jan 22 13:32:53 <mre>	op dit moment ook geen idee, Kobus

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants