真不能再挖坑了,前面挖聊很多坑都没来得及填,从今往后,能写多少就是多少。Sequential projection learning for hashing这篇文章去年就阅读了,当时阅读完没来得及做笔记,这一段时间又重新拿来品读了一年天,并对其中的公式进行了推导,这篇文章作者主页上有slide,讲得挺好的。下面是自己的一些推导,由于公式编辑起来不急手写得快,所以就用笔记代替了。

这里标号为1推导的是paper目标函数项中的第一项,目标函数第二项是通过最大化信息熵而来的,关于到最后为神马转化为了求信息熵最大化,仍本小子一一道来。

有了第一项,还远远不够,因为第一项只保持能够在带标记的样本上获得很高的准确率,当不能保证在未标记的样本上也能获得较高的准确率,也就是过拟合问题,即在训练样本上performance很well,但是在测试样本上很bad。所以为了避免出现这个问题,作者对spectral hashing中要求的编码位求和相加得为0进行了分析与证明,最后得出要要求编码位求和相加为0就是要求信息熵最大。paper中的一个图很好的说明了上面这个情况:

为便于理解,假设上面就是简单的二维平面,在左图中,虽然对于带标记的样本,其编码位(这里只有一位)相加求和为0,但对于未标记的样本,其编码位相加求和显然不会等于0,而且,可以看到,落入分类面右边的可能性要远比左边的要大;而对于右图,其划分相比比较均匀,不仅满足了标记样本的要求,而且也满足了非标记样本的要求(编码位求和相加为0),而且,大概的示意出了落入两边的概率为50%。由此,对于右图,其包含的信息熵相比与左图,要更大。用一句话概括上面第二项为神马要进行这样的约束,其实就是要求编码位求和相加为0,并经过转换,化为信息熵最大的约束。

再回到上面手写笔记那幅图,标号2对应位置有关于S更新过程的推导,推导过程还算简单,对其求微分便可。本小子不太理解的地方还是这个S更新过程的物理意义

Reference:

1:Sequential Projection Learning for Hashing with Compact Codes

from: http://yongyuan.name/blog/sequential-projection-learning-for-hashing.html

Sequential projection learning for hashing阅读笔记的更多相关文章

  1. Who Am I? Personality Detection based on Deep Learning for Texts 阅读笔记

    文章目录 源代码github地址 摘要 2CLSTM 过程 1. 词嵌入 2. 2LSTM处理 3. CNN学习LSGCNN学习LSG 4. Softmax分类 源代码github地址 https:/ ...

  2. 个性探测综述阅读笔记——Recent trends in deep learning based personality detection

    目录 abstract 1. introduction 1.1 个性衡量方法 1.2 应用前景 1.3 伦理道德 2. Related works 3. Baseline methods 3.1 文本 ...

  3. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要系列文章索引

    从发表第一篇文章到最后一篇文章,时间间隔有整整一个月,虽只有5篇文章,但每一篇文章都是我吸收<LEARNING HARD C#学习笔记>这本书的内容要点及网上各位大牛们的经验,没有半点废话 ...

  4. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要三

    最近工作较忙,手上有几个项目等着我独立开发设计,所以平时工作日的时候没有太多时间,下班累了就不想动,也就周末有点时间,今天我花了一个下午的时间来继续总结与整理书中要点,在整理的过程中,发现了书中的一些 ...

  5. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要二

    今天继续分享我的阅读<LEARNING HARD C#学习笔记>知识点总结与摘要二,仍然是基础知识,但可温故而知新. 七.面向对象 三大基本特性: 封装:把客观事物封装成类,并隐藏类的内部 ...

  6. 阅读《LEARNING HARD C#学习笔记》知识点总结与摘要一

    本人有幸在Learning Hard举行的整点抢书活动<Learninghard C#学习笔记>回馈网友,免费送书5本中免费获得了一本<LEARNING HARD C#学习笔记> ...

  7. 论文阅读笔记 Improved Word Representation Learning with Sememes

    论文阅读笔记 Improved Word Representation Learning with Sememes 一句话概括本文工作 使用词汇资源--知网--来提升词嵌入的表征能力,并提出了三种基于 ...

  8. Deep Learning of Graph Matching 阅读笔记

    Deep Learning of Graph Matching 阅读笔记 CVPR2018的一篇文章,主要提出了一种利用深度神经网络实现端到端图匹配(Graph Matching)的方法. 该篇文章理 ...

  9. 【转载】 《Human-level concept learning through probabilistic program induction》阅读笔记

    原文地址: https://blog.csdn.net/ln1996/article/details/78459060 --------------------- 作者:lnn_csdn 来源:CSD ...

随机推荐

  1. 【POJ】2449.Remmarguts' Date(K短路 n log n + k log k + m算法,非A*,论文算法)

    题解 (搬运一个原来博客的论文题) 抱着板题的心情去,结果有大坑 就是S == T的时候也一定要走,++K 我发现按照论文写得\(O(n \log n + m + k \ log k)\)算法没有玄学 ...

  2. 将C++ IplImage 图像用C#读取

    如何将C++ IplImage 图像用C#读取  ? 将opencv 的C++程序做成 dll 动态链接库 用C#调用 当然这里需要安装emgucv  ,也可以自己实现这个类. 下面我把实现贴出来给大 ...

  3. Bootstrap入门七:按钮

    1.可作为按钮使用的标签或元素 为 <a>.<button> 或 <input> 元素添加按钮类(button class)即可使用 Bootstrap 提供的样式 ...

  4. Qt Creator在Windows上的调试器安装与配置

    如果安装Qt时使用的是Visual Studio的预编译版,那么很有可能就会缺少调试器(Debugger),而使用MSVC的Qt对应的原生调试器是CDB(对应MinGW的Qt使用GDB调试器).本文介 ...

  5. Spring Boot使用Log4j Implemented Over SLF4J生成日志并在控制台打印

    Spring Boot设置切面,执行方法的时候在控制台打印出来,并生成日志文件 引入依赖: <!--日志--> <dependency> <groupId>org. ...

  6. bs和cs

    CS(Client/Server):客户端----服务器结构.C/S结构在技术上很成熟,它的主要特点是交互性强.具有安全的存取模式.网络通信量低.响应速度快.利于处理大量数据.因为客户端要负责绝大多数 ...

  7. leetcode 算法 Excel表列序号 python实现

    这道题给我感觉就像一个26进制数一样. A 就是1 B是2 .... Z 是26 如果AB 两位,那就是  1 * 26 + 2   就是A 的数值*26 + B的数值 如果是MNP 三位数   那就 ...

  8. HDU 5517 【二维树状数组///三维偏序问题】

    题目链接:[http://acm.split.hdu.edu.cn/showproblem.php?pid=5517] 题意:定义multi_set A<a , d>,B<c , d ...

  9. IE7 css兼容问题

    1,float:right; 在IE错位问题 : 使用position:absolute:right:0px; 2,汉字在float状态下 折行 ,可能是因为父级宽度不够, 改用 display:in ...

  10. OpenGL ES 3.0 帧缓冲区对象基础知识

    最近在帧缓冲区对象这里卡了一下,不过前面已经了解了相关的OpenGL ES的知识,现在再去了解就感觉轻松多了.现在就进行总结. 基础知识 我们知道,在应用程序调用任何的OpenGL ES命令之前,需要 ...