0%

忙里偷闲,写几篇长文,从 YOLO 的 v1 到 v5。没想到时隔多年会回来重新看 YOLO 系列的东西,相比两阶段检测,YOLO 真的太快了,加上一些训练的 trick,mAP 也不会很低。网上看了好多教程不明所以,索性还是直接去读原论文了,读了原论文有些东西还是不理解,索性又去读了源程序。不过为了便于理解,有的地方不会按照论文顺序进行整理。少问问题,读论文产生的疑问在代码里都有解答,不看代码永远不能被称为学会了。

rush 项目的时候,有些地方可以并行化,可以借助 C++ 的多线程来加速程序的执行。多线程的基本概念在一年前整过了,这里只是来看一下 C++ 的多线程该怎么写,顺便查漏补缺。

在做对抗样本的时候,我发现对抗防御和 GAN 在某种程度上很像:

  • 对抗防御:内部生成对抗样本攻击分类器,分类器更新参数防御攻击;
  • GAN:生成器 $G$ 生成样本欺骗判别器,判别器更新防御 $G$ 的欺骗。

所以说,这俩在某种程度上真的很像,所以决定整理一下 GAN 的知识,开拓一下思路,视频内容来自这里。警告:里面有大量数学公式的推导,而我就不一样了,不仅有公式推导还有代码。

忙完了其它的,还是要回归科研做好整理,相当于论文笔记吧。对抗样本去噪算法算是告以段落,或者说叫对抗样本提纯。本文总结了一些近几年的、思路还行结果也还好的对抗样本去噪算法,就相当于写个类似的综述了,注意,并非详解。优缺点仅是个人分析,其实论文读多了或者看了代码,总会有一些想法。包含以下论文:

  1. Comdefend: An efficient image compression model to defend adversarial examples, CVPR 2019
  2. Feature denoising for improving adversarial robustness, CVPR 2019
  3. Defense against adversarial attacks using high-level representation guided denoiser, CVPR 2018
  4. A Self-supervised Approach for Adversarial Robustness, CVPR 2020
  5. Denoised Smoothing: A Provable Defense for Pretrained Classifiers, NIPS 2020
  6. Stochastic Security: Adversarial Defense Using Long-Run Dynamics of Energy-Based Models, ICLR 2021
  7. Online Adversarial Purification based on Self-Supervision, ICLR 2021
  8. Adversarial Purification with Score-based Generative Models, ICML 2021

因为开发图像检索系统的需要,需要学习局部敏感哈希算法。我在网上看了很多局部敏感哈希算法的讲解,也没有一个能讲清楚的。什么打乱表格、计数 1 最开始出现的索引、minHash 等没啥用的东西把人说的云里雾里。

而如何设计哈希函数、如何把相似内容放到同一个桶中、计算相似度则闭口不谈。所以,关于数学理论推导,本文就不描述了,网上其他博客多的是,本文从代码的角度来理解局部敏感哈希算法,相对更清晰,附 C++ 程序实现。

想来想去,以壮士断腕的决心决定抛弃垃圾 windows 了,实在是 TMD 卡的要死,但是以我电脑的配置,不可能卡的。加上 C 盘的无理由暴增,TMD 空间锐减,加上每次系统动不动更新,每次更新都 TMDbug 直接卡死。我宁肯花一周的时间打造一款我的主力 Arch Linux ,再 TMD 也不向 windows 低头了。以本文记录 Arch Linux 的折腾全记录。

包括:代理、终端、字体、换源更新、软件、甚至是博客迁移等。最重要的是,关于向这个世界的妥协,如何使安装 QQ、微信和 word 等非必要但深入人心的软件。毕竟老板让你微信给他发文件还是很常见的,毕竟老板没手没脚,发一次不接收必须发第 $N$ 次,毕竟他用 LaTeX 也要手动编号。

我是练习时长一年的 C++ 个人练习生,喜欢野指针、模板报错和未定义行为(undefined behavior)。之前在写设计模式的『工厂模式』时,一脚踩到了构造、继承和 new 组合起来的坑,现在也有时间来整理一下了。