sklearn 相似度矩阵_scikit-learn – 在sklearn.manifold中的余弦相似度TSNE

我使用余弦相似性在我的数据集上执行TSNE有一个小问题.

我已经计算了所有向量的余弦相似度,所以我有一个包含余弦相似度的方阵:

A = [[ 1 0.7 0.5 0.6 ]

[ 0.7 1 0.3 0.4 ]

[ 0.5 0.3 1 0.1 ]

[ 0.6 0.4 0.1 1 ]]

然后,我正在使用TSNE:

A = np.matrix([[1, 0.7,0.5,0.6],[0.7,1,0.3,0.4],[0.5,0.3,1,0.1],[0.6,0.4,0.1,1]])

model = manifold.TSNE(metric="precomputed")

Y = model.fit_transform(A)

但我不确定使用预先计算的度量标准来保持我的余弦相似度:

#[documentation][1]

If metric is “precomputed”, X is assumed to be a distance matrix

但是当我尝试使用余弦指标时,我收到了一个错误:

A = np.matrix([[1, 0.7,0.5,0.6],[0.7,1,0.3,0.4],[0.5,0.3,1,0.1],[0.6,0.4,0.1,1]])

model = manifold.TSNE(metric="cosine")

Y = model.fit_transform(A)

raise ValueError("All distances should be positive, either "

ValueError: All distances should be positive, either the metric or

precomputed distances given as X are not correct

所以我的问题是,如何在现有数据集(相似度矩阵)上使用余弦度量来执行TSNE?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值