草庐IT

EM距离

全部标签

python - 使用 nltk 的 2 个句子/字符串/文本之间的句法相似性/距离

这个问题在这里已经有了答案:Howtocomputethesimilaritybetweentwotextdocuments?(13个答案)关闭6年前。我有2个文本如下文本1:约翰喜欢苹果Text2:Mike讨厌橙色如果检查以上2个文本,它们在句法上相似,但在语义上具有不同的含义。我要找1)2个文本之间的句法距离2)2个文本之间的语义距离我是NLP的新手,有什么方法可以使用nltk来做到这一点吗?

python - 如何用 GeoDjango 计算两点之间的实际距离?

fromdjango.contrib.gis.geosimportPointp1=Point(36.74851779201058,-6.429006806692149,srid=4326)p2=Point(37.03254161520977,-8.98366068931684,srid=4326)p1.distance(p2)Out:2.5703941316759376但是这个float的单位是什么?如果你计算这个距离,这是229.88Km.您也可以使用geopy获取它:fromgeopy.distanceimportdistancedistance(p1,p2)Out:Distanc

python - 查找二维点组之间的最小距离(快速且不太消耗内存)

我在二维A和B中有两组点,我需要找到A中每个点的最小距离,以B中的一个点。到目前为止,我一直在使用SciPy的cdist使用下面的代码importnumpyasnpfromscipy.spatial.distanceimportcdistdefABdist(A,B):#DistancetoallpointsinB,foreachpointinA.dist=cdist(A,B,'euclidean')#Indexestominimumdistances.min_dist_idx=np.argmin(dist,axis=1)#Storeonlytheminimumdistancesfore

python - 无法重现通过 astropy 获得的源之间的距离值

我有两个源,其赤道坐标(ra,dec)和(ra_0,dec_0)位于距离r和r_0,我需要计算它们之间的3D距离。据我所知,我使用的两种方法应该给出相同的结果,但实际上没有。第一种方法是应用astropy的separation_3d功能。第二种方法是使用给出两个球坐标源之间距离的表达式:如图here.在下面的MCVE中,返回的值是:91.3427173002pc93.8470493776pc这两个值不应该相等吗?MCVE:fromastropy.coordinatesimportSkyCoordfromastropyimportunitsasuimportnumpyasnp#Defin

python - Networkx:获取节点之间的距离

我是使用NetworkX的初学者,我正在尝试找到一种方法来检测哪些节点彼此之间的距离为x。我已经开始使用这个算法来获取所有对path=nx.all_pairs_dijkstra_path(G)但我仍然不确定如何使用for循环检测节点之间的距离。如果有任何帮助,我将不胜感激。谢谢 最佳答案 NetworkX具有自动计算加权和未加权图的最短路径(或仅路径长度)的方法。确保针对您的用例使用正确的方法。networkx.all_pairs_shortest_path-计算未加权图中所有节点之间的最短路径networkx.all_pairs_

python - 给定两个整数列表,在彼此距离 < O(N^2) 的范围内找到每一对

我有两个排序的整数列表。我想分别从第一个和第二个列表中找到彼此之间一定距离内的所有整数对。天真的方法是检查每一对,导致O(N^2)时间。我确信有一种方法可以在O(N*logN)或更短的时间内完成。在python中,朴素的O(N^2)方法如下:deffind_items_within(list1,list2,within):forl1inlist1:forl2inlist2:ifabs(l1-l2)pythonic答案加分。应用说明我只是想指出这个小谜题的目的。我正在搜索一份文档,并希望在另一个术语的特定距离内找到一个术语的所有出现。首先,您找到两个项的项向量,然后您可以使用下面描述的算

python - 缩放 2D 坐标并保持它们的相对欧氏距离不变?

我有一组点,例如:pointA(3302.34,9392.32)、pointB(34322.32,11102.03)等我需要对它们进行缩放,以便每个x和y坐标都在(0.0-1.0)范围内。我尝试通过首先找到数据集中的最大x值(maximum_x_value)和该集中最大的y值(minimum_y_value)来做到这一点。然后我做了以下事情:pointA.x=(pointA.x-minimum_x_value)/(maximum_x_value-minimum_x_value)pointA.y=(pointA.y-minimum_y_value)/(maximum_y_value-mi

python - Python 的 difflib 中的 SequenceMatcher 是否有可能提供一种更有效的方法来计算 Levenshtein 距离?

这是计算Levenshtein距离的一般算法的教科书示例(我从MagnusHetland'swebite中提取):deflevenshtein(a,b):"CalculatestheLevenshteindistancebetweenaandb."n,m=len(a),len(b)ifn>m:#Makesuren不过,我想知道是否有使用difflib的SequenceManager的更高效(并且可能更优雅)的纯Python实现。在玩弄它之后,这就是我想出的:fromdifflibimportSequenceMatcherassmdeflev_using_difflib(s1,s2):a

算法leetcode|72. 编辑距离(rust重拳出击)

文章目录72.编辑距离:样例1:样例2:提示:分析:题解:rust:二维数组(易懂)滚动数组(更加优化的内存空间)go:c++:python:java:72.编辑距离:给你两个单词word1和word2,请返回将word1转换成word2所使用的最少操作数。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符样例1:输入: word1="horse",word2="ros" 输出: 3 解释: horse->rorse(将'h'替换为'r') rorse->rose(删除'r') rose->ros(删除'e')样例2:输入: word1="intention",wor

python - 二进制 numpy 数组之间的快速汉明距离计算

我有两个包含二进制值的相同长度的numpy数组importnumpyasnpa=np.array([1,1,1,1,1,1,0,1,1,0,1,1,1,0,0,0,0,1,1,1,0])b=np.array([1,1,1,1,0,1,1,0,1,0,1,0,1,0,1,0,0,1,1,0,1])我想尽快计算出它们之间的汉明距离,因为我要进行数百万次这样的距离计算。这是一个简单但缓慢的选项(取自维基百科):%timeitsum(ch1!=ch2forch1,ch2inzip(a,b))10000loops,bestof3:79usperloop我想出了更快的选项,灵感来自这里关于堆栈溢出