草庐IT

相似性

全部标签

python - Python 中 Dataframe 中每一行之间的余弦相似度

我有一个包含多个向量的DataFrame,每个向量有3个条目。在我的表示中,每一行都是一个向量。我需要计算每个向量之间的余弦相似度。将其转换为矩阵表示更好,还是DataFrame本身有更简洁的方法?这是我试过的代码。importpandasaspdfromscipyimportspatialdf=pd.DataFrame([X,Y,Z]).Tsimilarities=df.values.tolist()forxinsimilarities:foryinsimilarities:result=1-spatial.distance.cosine(x,y) 最佳答

python - 使用 NLTK 和 Python 检查两个单词之间的相似性

我有两个列表,我想检查两个列表中每个单词之间的相似度并找出最大相似度。这是我的代码,fromnltk.corpusimportwordnetlist1=['Compare','require']list2=['choose','copy','define','duplicate','find','how','identify','label','list','listen','locate','match','memorise','name','observe','omit','quote','read','recall','recite','recognise','record','

python - 分离图像中的相似对象 - opencv python

我正在尝试检测图像中看起来与引用图像相似的对象。这是我试图完成它的方式:这是示例图片:这是带有SURF关键点的图像:矩形是基于像“层次聚类”这样的聚类方法绘制的。主要问题是,在这种情况下,它不会单独检测对象,而是将所有对象都检测为一个对象。有没有办法分离这些关键点,从而分别检测每辆车?这是检测物体的好方法吗?如果有更好的方法,请提出建议。 最佳答案 SURF关键点可用于检测相似图像或从不同角度拍摄的同一地点的图像。尽管您可以使用Haarclassifiers用于物体检测的目的。它也是OpenCV库的一部分。Here是另一个关于使用O

python - 用 nltk 搜索相似的意思短语

我有一堆不相关的段落,我需要遍历它们以找到类似的事件,例如,在我寻找objectfalls的地方进行搜索,我为包含以下内容的文本找到一个bool值True:箱子从架子上掉下来灯泡在地上碎了一block石膏从天花板上掉下来并且False用于:责任落在莎拉身上温度突然下降我可以使用nltk来标记、标记并获得Wordnetsynsets,但我发现很难弄清楚如何将nltk的移动部件组合在一起以达到预期的结果。在寻找同义词集之前我应该​​chunk吗?我应该写一个上下文无关语法吗?从treebank标签翻译成Wordnet语法标签时是否有最佳实践?nltkbook中均未对此进行解释,我在nltk

python - 如何使用 FastText 查找相似词?

我正在玩弄FastText,https://pypi.python.org/pypi/fasttext,这与Word2Vec非常相似。由于它似乎是一个相当新的库,内置函数还不多,我想知道如何提取形态相似的词。例如:model.similar_word("dog")->狗。但是没有内置函数。如果我输入模型[“狗”]我只得到向量,可以用来比较余弦相似度。model.cosine_similarity(model["dog"],model["dogs"]])。我是否必须进行某种循环并对文本中所有可能的对执行cosine_similarity?这需要时间......!!!

python - 在python脚本中检测相似文档的算法

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。我需要编写一个模块来检测相似文档。我已经阅读了很多文件技术指纹等论文,但我不知道如何编写代码或实现这样的解决方案。该算法应适用于中文、日文、英文和德文或与语言无关。我怎样才能做到这一点?

python - 快速检查大型数据库的编辑距离相似性

我有一个包含350,000字符串的数据库,平均长度约为500。字符串不是由单词组成,它们基本上是字符的随机组合。我需要确保没有两个字符串过于相似,相似度定义为编辑距离除以字符串的平均长度。划分是因为较小的编辑距离更适合较小的字符串。如果出于性能原因使用不同的指标,这很好,但编辑距离是首选的基线指标。天真地,我们计算editdistance使用运行时O(a*b),其中a,b是两个字符串的长度。我们对所有n^2对执行此操作,这给出了O(n^2*a*b)的总体运行时间,对于n=显然太大了350,000,a,b=500。数据库采用从csv文件读取的Python列表形式。如果可能的话,我想以Py

python - 计算 250k 列表成对相似度的最有效方法

我有250,000个列表,每个列表平均包含100个字符串,存储在10个词典中。我需要计算所有列表的成对相似性(相似性度量在这里不相关;但是,简而言之,它涉及获取两个列表的交集并通过某个常数对结果进行归一化)。我为成对比较编写的代码非常简单。我只是使用itertools.product将每个列表与其他列表进行比较。问题是以高效的方式对250,000个列表执行这些计算。对于处理过类似问题的任何人:根据以下标准,哪种常用选项(scipy、PyTables)最适合此问题:支持python数据类型巧妙地存储一个非常稀疏的矩阵(大约80%的值将为0)高效(可以在10小时内完成计算)

python - 如何在 pymongo 中使用 "group"对相似行进行分组?

我是mongodb/pymongo的新手。我已经成功地将我的数据导入到mongo中,并且想使用group函数将相似的行分组在一起。例如,如果我的数据集如下所示:data=[{uid:1,event:'a',time:1},{uid:1,event:'b',time:2},{uid:2,event:'c',time:2},{uid:3,event:'d',time:4}]如何使用group函数将上述行按照uid字段进行分组,输出如下?{{uid:1}:[{uid:1,event:'a',time:1},{uid:1,event:'b',time:2}],{uid:2}:[{uid:2,e

python - 如何从 pandas 数据帧计算 jaccard 相似度

我有一个数据框如下:框的形状是(1510,1399)。列代表产品,行代表用户为给定产品分配的值(0或1)。如何计算jaccard_similarity_score?我创建了一个占位符数据框,列出产品与产品data_ibs=pd.DataFrame(index=data_g.columns,columns=data_g.columns)我不确定如何遍历data_ibs来计算相似度。foriinrange(0,len(data_ibs.columns)):#Loopthroughthecolumnsforeachcolumnforjinrange(0,len(data_ibs.column