如果我有一个稀疏数据集,其中每个数据由1000个元素的向量描述,该向量的每个元素可以是0或1(很多0和1),你知道任何距离函数吗?帮我集中他们?在这种情况下,欧几里德的距离是否方便?我想知道这种情况是否有一个简单方便的距离指标,试试我的数据。
由于
答案 0 :(得分:12)
您的问题没有一个答案。根据域名,有最佳做法。
一旦确定了相似性度量,聚类通常通过平均或找到一个medoid来完成。有关算法示例,请参阅有关聚类二进制数据的这些文章:
有关相似性度量的建议,请参阅此在线"tool for measuring similarity between binary strings"。他们提到:Sokal-Michener,Jaccard,Russell-Rao,Hamann,Sorensen,antiDice,Sneath-Sokal,Rodger-Tanimoto,Ochiai,Yule,Anderberg,Kulczynski,Pearson's Phi和Gower2,Dot Product,Cosine Coefficient,Hamming Distance。 他们还引用了这些论文:
- Luke,B。T.,Clustering Binary Objects
- Lin,D。,相似性的信息 - 理论定义。
- Toit,du S.H.C。; Steyn,A.G.W。; Stumpf,R.H。;图形探索性数据分析;第3章,p。 77,1986;施普林格出版社。
(我个人喜欢余弦。还有KL-divergence和它的Jensen距离对应物。)
答案 1 :(得分:4)
查看用于稀疏文本向量的距离函数,例如余弦距离和比较集合,例如Jaccard距离。
答案 2 :(得分:0)
如果确实有很多0和几个1,你可以尝试聚类第一个或最后一个 - 见http://aggregate.org/MAGIC/#Least重要的1位
答案 3 :(得分:0)
已经提出了许多用于二元向量的距离/相似度函数。
在A Survey of Binary Similarity and Distance Measures - Choi, Cha, Tappert 2010中,作者列出了76个这样的函数。