- 博客(108)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 CCAH: A CLIP-Based Cycle Alignment Hashing Method for Unsupervised Vision-Text Retrieval
存在问题:图片通常附有相应的文字描述而不是标签。然而,由于模态划分(modal divide)和语义差异(semantic differences),现有的无监督方法不能充分弥合模态差距,导致检索结果不理想。文本提出: 基于CLIP的循环对齐哈希算法 用于无监督视觉文本检索(CCAH其目的是利用模态原始特征与重构特征之间的语义联系。首先,我们设计了一种模态循环交互方法(modal cyclic interaction method)
2023-07-11 11:12:44 1153 1
原创 Learning From Expert: Vision-Language Knowledge Distillation for Unsupervised Cross-Modal Hashing检索
无监督跨模态哈希的现有方法存在一些瓶颈:1)现有的无监督方法由于缺乏不同模态特征之间的相关性,简单的特征不能完全描述多模态数据的细粒度关系,导致相似性度量不准确。2)现有的方法很少探索视觉-语言知识蒸馏方案,以提取这些视觉-语言模型的多模态知识来指导学生网络的学习。无监督跨模态哈希检索的视觉-语言知识蒸馏 Vision-Language Knowledge Distilation for Unsupervised Cross-Modal Hashing Retrieval(VLKD)
2023-07-05 09:23:39 899
原创 Deep Hash Distillation for Image Retrieval
提出动机/现有方法存在问题:在基于哈希的图像检索系统中,图像退化(衰减)或变换 (degraded or transformed)通常会产生与原始图像不同的编码,从而降低检索精度。为了缓解上述问题,可以在训练期间应用数据增强(data augmentation)。然而,即使图像的增强样本在真实特征空间中是相似的,量化(quantization)也会使它们在汉明空间中分散的很远。这将导致表示差异,从而阻碍训练并降低性能。本文提出:一种新的。
2023-06-25 16:01:42 982
原创 Semantic Structure Enhanced Contrastive Adversarial Hash Network for 跨媒体表示学习
现有方法存在问题/提出动机现有的方法没有同时考虑细粒度的语义特征和语义结构来挖掘隐含的跨媒体语义关联,这导致跨媒体表示的语义判别性和一致性较弱。文本提出 一种新的用于跨媒体表示学习的语义结构增强的对比对抗性哈希网络(SCAHN)。1)首先,为了捕捉更细粒度的跨媒体语义关联,构建了细粒度的跨媒体注意力特征学习网络,从而使学习到的不同模态的显著性特征更有利于跨媒体语义对齐和融合。2)其次,为了进一步提高隐含跨媒体语义关联的学习能力,构建了一个语义标签关联图,并利用图卷积网络。
2023-06-17 20:15:39 921
原创 Unsupervised Contrastive Cross-Modal Hashing
本文主要研究了如何通过克服两个挑战,使无监督跨模态哈希(CMH)从对比学习(CL)中受益。确切来说,1)为了解决哈希二值优化导致的性能下降问题,我们提出了一种新的,该优化器在CL中执行可学习的哈希运算,从而使现有的深度跨模态哈希成为可能。换句话说,我们的方法不像现有的大多数方法那样涉及二值连续松弛,因此具有更好的检索性能。2)为了减轻假负对(FNP)带来的影响【FNP指的是被错误地视为负对的类内对】,提出了一种,它利用了所有对而不是仅对困难负对的区分。
2023-06-13 20:53:45 790
原创 Self-Attentive CLIP Hashing for Unsupervised Cross-Modal Retrieval
本文提出的动机/现有方法存在问题:1)大多数现有研究在有效利用原始图像-文本对raw image-text pairs来生成判别特征表示方面 存在困难。2)这些方法忽略了不同模态之间的潜在关系不能构建稳健的相似性矩阵,导致检索性能次优。自注意CLIP哈希(SACH)利用预训练的CLIP模型构建特征提取网络,该模型在零样本任务中表现出了优异的性能。此外,为了充分利用语义关系,引入了注意力模块来减少冗余信息的干扰,并将注意力集中在重要信息上。在此基础上,构造了一个语义融合相似度矩阵。
2023-06-12 20:40:40 542
原创 Aggregation-Based Graph Convolutional Hashing for Unsupervised Cross-Modal Retrieval
本文的提出动机/现存的问题:1)尽管监督方法取得了巨大的成功,但现有的无监督哈希方法仍然存在缺乏可靠的学习指导(learning guidance)和跨模态异构(cross-modal discrepancy)的问题。2)单个相似性度量很难全面地表示数据关系。基于聚合的图卷积哈希(AGCH)1)考虑到单个相似性度量很难全面地表示数据关系,开发了一种高效的聚合策略,利用多个度量来构建更精确的亲和矩阵(affinity matrix)用于学习。具体来说,
2023-06-08 21:36:37 463
原创 Python基础——元组
文章目录元组简介创建和访问一个元组更新和删除元组常用操作符元组简介前一篇文章介绍了Python中的列表,元组和列表最大的区别就是你可以任意修改列表中的元素,可以任意插入或删除一个元素,而对元组是不行的,元组是不可改变的。创建和访问一个元组列表和元组,除了不可改变这个显著特征外,还有一个明显区别是,创建列表用的是中括号[],而创建元组大部分时候用的是小括号()。访问元组的方式与列表无异:也使用分片的方式来复制一个元组:此外,从一开始也强调过,不能修改元组中的元素:关于创
2022-05-31 21:28:02 1057
原创 Python基础——列表
文章目录列表列表有的时候需要把一堆东西暂时存储起来,因为它们有某种直接或间接的联系,需要把它们放在某种“组”或者“集合”中。
2022-05-31 10:13:06 813
原创 Python基础——分支和循环
文章目录if - else语句Python有效避免“悬挂else”条件表达式(三元操作符)断言assertwhile循环语句for循环语句range()break语句continue语句if - else语句条件分支,也就是判断,习惯用到的是if-else的搭配。if 条件: 条件为真(True)执行的操作else: 条件为假(False)执行的操作e.g. 按照100分制,92分以上成绩为A,80~ 90成绩为B,60~80成绩为C,60以下为D。要求写一个程序,当用户输入分数,自动转换
2022-05-25 22:27:18 922
原创 Python基础——常用操作符
文章目录算数操作符算数操作符Python的算数操作符大部分和我们理解的一样,但尤其要注意一些特别的操作符。一般常用的操作符有:+−∗/%∗∗// +\quad -\quad *\quad /\quad \%\quad **\quad //\quad+−∗/%∗∗//前四个不用过多介绍了,加减乘除。此外,Python和其他大多数编程语言一样,可以简化写法。例如:a = a+1 可以写成 a += 1 等。...
2022-05-25 11:08:35 1561
原创 Python基础——数据类型
文章目录Python的数据类型整型浮点型布尔类型复数类型类型转换Python的数据类型有些人可能已经听说过,Python的变量是没有类型的。没错,前面我们也介绍过,Python的变量更像是名字标签,想贴在哪就贴在哪。通过这个标签,就可以轻易找到变量在内存中对应的存放位置了。但绝不是说Python中就没有数据类型这回事。比如5和’5’,在上节字符串中已经讲过,带了引号的,无论是单引号还是双引号或者是三引号,都是字符串,而不带引号的,就是数字。字符串的相加就叫作字符串的拼接:Python中有许多重要
2022-01-09 17:30:11 1215 1
原创 Python基础——变量及字符串简介
变量当把一个值赋给一个名字时,它就会存储在内存中,我们把这块内存称为变量(variable)。在大多数语言中,都把这种行为称为"给变量赋值"或"把值存储在变量中"。不过,Python与大多数其他语言不同,它并不是把值存储在变量中,而更像把名字贴在值上面。所以,有些人会说Python没有变量,只有名字。变量就是一个名字,通过这个名字,我们可以找到想要的东西。......
2022-01-07 18:31:55 3341 1
原创 Python的安装及用一个小游戏简单了解Python
文章目录前言从IDLE启动Python第一个小游戏缩进BIF(内置函数)前言Python的语法相较于其他语言来说是非常精简的,因此许多人会选择使用Python语言。学习Python,要做的第一件事就是要下载一个Python的安装程序并成功地将它安装到计算机上。安装Python非常容易,只需要在Python官网找找最新的版本并下载即可,官网地址为https://www.python.org/。如下图所示,进入Python官网后找到Downloads字样,下载最新版本的Python即可。然后打开下
2021-12-30 16:36:59 555
原创 线索二叉树的基本概念
文章目录线索二叉树的基本概念线索二叉树的构造线索二叉树的基本概念在二叉树的学习中,我们知道,在有nnn个结点的二叉树中,有n−1n-1n−1个空指针。这是因为每个叶结点有2个空指针,而每个度为1的结点有1个空指针,总的空指针数为2n0+n12n_0+n_12n0+n1,又n0=n2+1n_0=n_2+1n0=n2+1,所以总的空指针数为n0+n1+n2+1=n+1n_0+n_1+n_2+1=n+1n0+n1+n2+1=n+1。为此,可以改造二叉树的结点,在结点的空指针域中存放该结点在某
2021-12-02 16:17:23 911
原创 奇偶交换排序
文章目录题目描述实现代码题目描述奇偶交换排序是一种交换排序。它的第一趟对序列中的所有奇数项iii扫描,第二趟对序列中的所有偶数项iii扫描,若A[i]>A[i+1]A[i]>A[i+1]A[i]>A[i+1],则交换它们。第三趟对序列中的所有奇数项iii扫描,第四趟对序列中的所有偶数项iii扫描,……,如此反复,直至整个序列全部排好序为止。写出奇偶交换排序的算法。实现代码#include<bits/stdc++.h>using namespace std;vo
2021-12-01 16:44:46 2679
原创 特殊矩阵的压缩存储
文章目录数组的存储结构特殊矩阵的压缩存储对称矩阵数组的存储结构一个数组的所有元素在内存中是占用一段连续的存储空间的。<1>一维数组以一维数组A[0...n−1]A[0...n-1]A[0...n−1]为例,其存储结构关系式为:LOC(ai)=LOC(a0)+(i)×L(0≤i<n)LOC(a_i) = LOC(a_0)+(i)×L \quad(0≤i<n)LOC(ai)=LOC(a0)+(i)×L(0≤i<n)其中,LLL是每个数组元素所占的存储单元。例如,对一个一维数组A[
2021-12-01 13:28:28 953
原创 广义表的概念及存储表示
文章目录广义表的概念广义表的特性广义表的表头和表尾广义表的链接存储表示头尾表示法扩展线性链表表示法广义表的概念广义表的定义:广义表是 n (n≥0)n\ (n≥0)n (n≥0) 个表元素组成的有限序列。广义表的表示:L={e1, e2,..., en}L=\{e_1,\ e_2,...,\ e_n\}L={e1, e2,..., en},其中LLL为表名eie_iei是表元素nnn是表长,n=0n=0n=0是空表,n≠0n
2021-11-30 21:13:50 3751
原创 内排序方法的比较
内部排序{插入排序{直接插入排序折半插入排序希尔排序交换排序{冒泡排序快速排序选择排序{简单选择排序堆排序归并排序基数排序内部排序\begin{cases}插入排序\begin{cases}直接插入排序\\折半插入排序\\希尔排序\\\end{cases}\\\\交换排序\begin{cases}冒泡排序\\快速排序\\\end{cases}\\\\选择排序\begin{cases}简单选择排序\\堆排序\\\end{cases}\\\\归并排序\\\\...
2021-11-27 16:34:29 197
原创 基数排序的算法思想及性能分析
文章目录基数排序基数排序的基本思想基数排序的性能分析基数排序基数排序的基本思想基数排序是一种很特别的排序方法,它不基于比较进行排序,而是采用多关键字排序思想(即基于关键字各位的大小及逆行排序),借助“分配”和“收集”两种操作对单逻辑关键字进行排序。基数排序又分为最高位优先(MSD)排序和最低位优先(LSD)排序。以rrr为基数的最低位优先基数排序的过程:假设线性表由结点序列 a0,a1,...,an−1a_0,a_1,...,a_{n-1}a0,a1,...,an−1 构成,每个结点
2021-11-26 21:43:57 1695
原创 排序之归并排序的算法思想及实现代码
文章目录归并排序归并排序的基本思想归并排序的实现代码归并排序的性能分析完整代码归并排序归并排序的基本思想归并排序与前面讲到的基于交换、选择等排序的思想不一样,“归并”的含义是将两个或两个以上的有序表组合成一个新的有序表。二路归并的基本思想:假定待排序表含有 nnn 个记录,可将其视为 nnn 个有序的子表,每个子表的长度为1,然后两两归并,得到⌈n/2⌉\lceil n/2 \rceil⌈n/2⌉个长度为2或1的有序表;再两两归并……如此重读,直到合并成一个长度为 nnn 的有序表为止。这种排
2021-11-26 21:09:59 2213
原创 选择排序(简单选择排序、堆排序的算法思想及代码实现)
文章目录选择排序简单选择排序简单选择排序的基本思想简单选择排序的实现代码简单选择排序的性能分析堆排序堆排序的基本思想堆排序的实现代码堆排序的性能分析完整代码简单选择排序堆排序选择排序选择排序的基本思想是:在由nnn个元素组成的序列中,选择一个具有最小(或最大)关键字的元素,把它加入到有序序列中,然后在剩余的元素序列中再选一个具有最小(或最大)关键码的元素,把它加入到有序序列中。如此继续,直到元素序列中只剩下一个元素为止,排序结束。简单选择排序简单选择排序的基本思想根据选择排序的思想,可以得出
2021-11-26 20:06:28 1133
原创 堆的定义及其基本操作(存储、建立、插入、删除)
文章目录堆的定义堆的存储堆的建立建立小根堆建立大根堆堆的插入小根堆的插入大根堆的插入堆的删除小根堆的删除大根堆的删除说明堆的定义堆的定义如下:nnn个关键字序列L[1...n]L[1...n]L[1...n]称为堆,当且仅当该序列满足:L[i]≤L[2i]L[i]≤L[2i]L[i]≤L[2i] 且 L[i]≤L[2i+1]L[i]≤L[2i+1]L[i]≤L[2i+1] (小根堆)或者 L[i]≥L[2i]L[i]≥L[2i]L[i]≥L[2i] 且 L[i]≥L[2i]L[i]≥L[2i]L
2021-11-26 18:16:34 1825 3
原创 交换排序(冒泡排序、快速排序的算法思想及代码实现)
文章目录交换排序的基本思想冒泡排序冒泡排序的基本思想冒泡排序的实现代码冒泡排序的性能分析快速排序快速排序的基本思想快速排序的实现代码快速排序的性能分析完整代码交换排序的基本思想所谓交换,是根据序列中两个元素关键字的比较结果来对换这两个记录在序列中的位置。所谓交换排序就是指,两两比较待排序的元素,交换不满足顺序要求的那些元素对,直到所有的元素次序都满足顺序要求为止。基于交换的排序算法有很多,这里主要介绍冒泡排序和快速排序。冒泡排序冒泡排序的基本思想冒泡排序又称起泡排序,其基本思想是:假设待
2021-11-25 21:37:27 1533
原创 插入排序(直接插入排序、折半插入排序、希尔排序的算法思想及代码实现)
文章目录插入排序的基本思想直接插入排序直接插入排序的算法思想直接插入排序的实现代码直接插入排序的性能分析折半插入排序折半插入排序的算法思想折半插入排序的实现代码折半插入排序的性能分析希尔排序希尔排序的算法思想希尔排序的实现代码希尔排序的性能分析完整代码插入排序的基本思想插入排序是一种简单直观的排序方法,其基本思想是:每一次将一个待排记录按其关键字大小插入到前面已经排好序的有序子序列中,直到全部记录插入完成。由插入排序的思想可以引申出三个重要的排序算法:直接插入排序折半插入排序希尔排序
2021-11-25 19:39:29 3387
链表经典编程题.zip
2021-04-19
平时我们能感受到线程吗?
2022-03-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人