topN 相似度 torch实现

server/2025/2/25 0:09:58/

目录

优化版,去重相似度

topN 欧式距离版

没有去重复,


优化版,去重相似度


import torch
import torch.nn.functional as F
torch.manual_seed(42)
# 假设 10 条数据,每条数据的特征维度是 128
data = torch.randn(10, 128)# 计算所有数据对之间的余弦相似度
cosine_similarities = F.cosine_similarity(data.unsqueeze(0), data.unsqueeze(1), dim=2)# 通过设置对角线为负无穷,排除自身相似度
cosine_similarities.fill_diagonal_(-float('inf'))# 生成上三角掩码(i < j 的位置为True)
mask = torch.triu(torch.ones_like(cosine_similarities, dtype=torch.bool), diagonal=1)# 过滤掉下三角和对角线,仅保留

http://www.ppmy.cn/server/170429.html

相关文章

(网络安全)渗透测试

1、渗透测试种类 2、网络安全渗透测试分类 1&#xff09;网络安全渗透测试&#xff0c; 根据事先对测试目标系统信息的了解程度&#xff0c;可以分为 a.黑盒测试&#xff1a; 只知道要测试的目标系统&#xff0c;但系统内部的任何信息&#xff0c;都不清楚。这种测试最真实&am…

【多模态处理篇八】【DeepSeek增强现实:AR导航实时推理优化】

一、AR导航的「地狱级难度」挑战 搞AR导航就像在钢丝上跳街舞——既要实时感知环境,又得丝滑渲染虚拟指引,还得防着手机发烫罢工。具体难点包括: 1. 算力饥渴症 手机端要同时处理: 摄像头画面(30fps+)SLAM定位(每秒百次坐标计算)3D箭头渲染(每帧万级三角形) 这相当…

Qt 中的线程池QRunnable和QThreadPool

Qt 中的线程池QRunnable和QThreadPool 一、QThreadPool类介绍 QThreadPool 是 Qt 框架中用于管理线程池的类&#xff0c;它提供了一种高效的方式来管理和复用线程&#xff0c;避免频繁创建和销毁线程带来的开销。 1. 基本概念 QThreadPool 是一个全局的线程池&#xff0c;它…

解决github验证问题

The authenticity of host ‘github.com’ can’t be established.ED25519 key fingerprint is SHA256 首先&#xff0c;生成 SSH key&#xff1a; ssh-keygen -t ed25519 -C "your_emailexample.com"启动 ssh-agent&#xff1a; eval "$(ssh-agent -s)"…

DevOps自动化部署详解:从理念到实践

在软件开发日益快速迭代的今天&#xff0c;如何以高效、稳定且可重复的方式将代码变更从开发环境自动部署到生产环境成为企业竞争的重要因素。DevOps 正是在这一背景下应运而生&#xff0c;它打破开发、测试、运维之间的壁垒&#xff0c;通过自动化工具和流程&#xff0c;实现持…

基于ffmpeg+openGL ES实现的视频编辑工具-添加转场(九)

在视频编辑的广阔领域中,转场效果无疑是提升视频流畅性与观赏性的关键要素。巧妙运用转场,能够让不同视频片段之间的衔接更为自然,同时赋予视频独特的创意魅力。本文将深入探讨如何借助 ffmpeg 和 openGL ES 技术,在视频编辑工具中实现丰富多样的转场效果。 一、转场技术原…

Spring BOOT 启动参数

Spring BOOT 启动参数 在Java Web的开发完成后&#xff0c;以前我们都会打包成war文件&#xff0c;然后放大web容器&#xff0c;比如tomcat、jetty这样的容器。现在基于SpringBoot开发的项目&#xff0c;我们直接打包成jar文件&#xff0c;基于内嵌的tomcat来实现一样的效果。…

高级应用:使用 p-retry 处理 Node.js 中的重试逻辑

在现代的分布式系统和网络应用中,失败是不可避免的。无论是网络请求、数据库操作还是外部 API 调用,都可能因为各种原因(如网络波动、服务不可用、资源限制等)而失败。为了增强应用的健壮性,我们通常需要实现重试逻辑。p-retry 是一个强大的 Node.js 库,专门用于处理异步…