Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用COSADD、COSMUL和欧氏距离测试word2vec模型的准确性_Python_Machine Learning_Nlp_Word2vec - Fatal编程技术网

Python 使用COSADD、COSMUL和欧氏距离测试word2vec模型的准确性

Python 使用COSADD、COSMUL和欧氏距离测试word2vec模型的准确性,python,machine-learning,nlp,word2vec,Python,Machine Learning,Nlp,Word2vec,我已经用word2vec训练了一个模型,想用谷歌的类比测试集来测试它的准确性。我想用COSADD,COSMUL,还有欧几里德距离 要使用COSADD,我只需使用以下代码: model.wv.accurity('questions-words.txt') 我不知道如何使用其他的。精度方法具有以下可选参数 准确性(.txt文件,限制声音=…,最相似=…) 我觉得我应该能够写出最相似的=COSMUL 但这是行不通的:( 有人知道如何使用COSMUL或euclidean距离(或两者)进行精度测试吗?精度

我已经用word2vec训练了一个模型,想用谷歌的类比测试集来测试它的准确性。我想用COSADD,COSMUL,还有欧几里德距离

要使用COSADD,我只需使用以下代码: model.wv.accurity('questions-words.txt')

我不知道如何使用其他的。精度方法具有以下可选参数 准确性(.txt文件,限制声音=…,最相似=…)

我觉得我应该能够写出最相似的=COSMUL

但这是行不通的:(


有人知道如何使用COSMUL或euclidean距离(或两者)进行精度测试吗?

精度()的
最相似的
参数采用python函数,因此您需要提供一个函数,该函数具有与执行替代计算相同的方法签名

类似的内容可能适用于cosmul计算


但是,您应该查看源代码,以查看预期的内容,以及代码中某些默认选项的使用方式(如单元是否规范化字向量)将影响您的结果。

我正在努力编写一个可接受的函数……即使我编写了他们说的默认参数most\u similor=most\u similor,我也会遇到以下错误:NameError:name'most\u similor'未定义。当我尝试编写keyedVector时。most\u similor\u cosmul(),我得到了相同的错误。源代码可以使用
最相似的
,因为它是在该上下文中定义的函数名。如果您想从自己的代码模块中指定相同的函数,您必须指定
WordEmbeddingSkeyedVector.most\u相似的
。另外,请注意,在我上面的回答中,我建议
WordEmbeddingSkeyedVector.most_-cosmul()
出于同样的原因:如果您导入了
WordEmbeddingsKeyedVectors
,这是函数的全名。它没有在
KeyedVectors
本身上定义。好的,谢谢,我没有从gensim.models.KeyedVectors导入WordEmbeddingsKeyedVectors。我的代码现在告诉我这个错误:大多数类似的cosmul()缺少1个必需的位置参数:“self”。有什么想法吗?如果您只提供函数对象,请不要使用
()
括号-这意味着“执行函数”,在这种情况下,您需要提供所有必要的参数,然后是
精度()
方法正在接收该执行的结果,而不是函数本身。请尝试作为参数:
most\u-similure=wordembeddingskeyevectors.most\u-similure\u-cosmul
。我现在通过覆盖most\u-similure\u-cosmul方法以包含restrict\u-vocab参数使其工作。非常感谢您的帮助,非常感谢。