0%

Swin Transformer


I. Intros

​ Swin Transformer获ICCV best paper之后,就总有很多人提起它。个人在前段时间复现了一个与ViT相关的工作(Compact Convolution Transformer),感觉实现太简单(训练难),遂想尝试一些更加复杂的工作。同时我当然也想看看best paper到底是什么水平。此论文写得很清晰,实验做得非常漂亮,思想也很有趣,不过可以说是一篇typical神经网络文章:一个公式都没有(attention公式以及复杂度计算公式不算)。个人虽然惊叹于其SOTA表现,但由于存在不可解释的魔法,也始终觉得很膈应。本文是我在复现过程中的整理的一些思路和我觉得本论文中疑难之处及其理解。复现见:Github/Maevit(这实际是ViT的复现repo)

​ 论文原文:Liu, Ze, et al. "Swin transformer: Hierarchical vision transformer using shifted windows." arXiv preprint arXiv:2103.14030 (2021).

Figure 1. 艺术之国:还有一个XJTU的(MSRA nb)[1]
Read more »

Front-End


I. Intros

​ 某天我回过头来看自己大一写的游戏,越玩越觉得制作尽量细节拉满(确实,不过估计是因为我大一非常闲,可以整天泡在写游戏里)。虽然如此,我还是觉得Pygame不适合做这个游戏,并且我觉得大一时的代码设计思想还不成熟,非常乱,想重构这个游戏。思来想去,用Unity(写了个弹珠打砖块游戏)觉得不爽,并且C#语言风格与C++类似,不想重复,遂想用一些(感觉上)完全不一样的语言去做这件事,最后确定用前端写网页游戏。前端说有趣,也还挺有趣的(毕竟我之前一直想当建筑设计师,搞设计的热情还是有的),但总感觉少了点深度思考(可能因为我接触的太简单)。为了在实践中学习前端,我将之前用Pygame实现的用户登录界面用JS升级了一下(只是功能升级,并没有更好看,见Github:Enigmatisms/JSen),本文记录在做这个小小项目过程中遇到的一些问题。

Ethians Alpha 1.0 主菜单 一个(个人认为的)人性化的登录/注册网页
Figure 1. 目标 与 现阶段 发展不平衡之间的矛盾
Read more »

ViT


I. Intros

​ 去年的一个工作[1],Vision Transformer的成功带动了变形金刚在视觉邻域的应用。CNN-based的backbone可能就快败在NAS以及ViT衍生模型手下了。为了回顾transformer以及加深理解,我复现了这篇论文[2](其中的ViT-Lite以及CCT)。这个工作是对ViT进行轻型化,并且作者也提出了使用卷积加入inductive bias的方法。论文提出的网络复现起来很简单,毕竟不是什么大型网络以及复杂架构,但是要复现其结果感觉还是挺吃经验的。复现见:[Github🔗:Enigmatisms/Maevit]

最终(无mixup)训练集准确率(约99.8%) 最终(无mixup)测试集准确率(约94.5%)
Figure 1. CIFAR-10实验,官方实现显示的最终acc约为94.7%
Read more »

Ampere Pytorch


I. Introduction

​ 近日训练神经网络花了五六十块钱,在智星云平台上。这个云平台总的来说还是很便宜的,RTX 3090大概4元/h,之前训练胶囊网络的时候还狠吹了这个平台一波。但我最近感觉,该平台貌似有点坑:

  • RTX 2080Ti的训练速度比我的MX 150(比GTX 960更差一点的卡)更慢,RTX 3090没有3090的样子
  • 环境非常迷惑:比如其1080 Ti的环境,CUDA10.0 + Torch 1.4.0,直接没办法跑

​ 于是乎我在办公室一个同事的电脑上装了整个深度学习环境。很不幸(又幸运)的是,他的显卡是RTX 3060,对应架构为安培(Ampere sm_86),不兼容低版本torch,使用不了CUDA加速。考虑到我之前有装显卡驱动搞爆系统的经历,我决定记录一下本次环境工程的过程。

Figure 1. 看起来很便宜 黄仁勋Yes
Read more »

Duality


I. Introduction

In a slide talking about 3D geometry and deep learning, I found something interesting: one question, of which I can not get rid. This is a duality question about representations:

Figure 1. Duality problem formulation

These problems lingered in my head:

  • Why and how we can regard probability distribution and particle filters as dual counterparts to each other?
  • Same question for occupancy map and point clouds, as they seem to be, according to the figure above, the representations under different specifications?

So I took some time to sink in this problem. This post is therefore the summarization of my thoughts.

Read more »

Distance Metrics


I. Introduction

​ 近期的研究有探究一个好的尺度的需求:判断配准是否完成。针对这个问题,我脑子里想的第一件事就是:判定两个点云在某个尺度上是否相近。带着这个目的,我结合之前看过的文献,在解决这个问题的方案中补充了一些新的内容。本文主要包括一下几个内容:

低维的最邻近点并不意味着结果能很好地适用于任务,高维的最邻近才是最终的追求。就像你和你异地的(男)女朋友,你们地理上不是最邻近,但是在某个高维空间中,确实是最邻近的,这就是为什么我们需要变换尺度与维度看问题。--- 哲♂学家 千越 · 让 · 德 · 叠buff · 何

Read more »

CRF & MRF


I. Introduction

​ 本文是早期被挂在Github🔗: Enigmatisms/Algorithm Plus上的一篇学习总结。写这篇学习笔记的时候博客还没有诞生,也刚刚熟练掌握Typora。本文相当于是考古post,虽然古老,但我发现当年的我学习热情也还是挺高的,这篇笔记可以说是写得不错的一个概率图模型入门文章了(开始自夸,尽管UGM部分没写完)。

​ 可能我最近还是要重新学一下概率图模型:

一个概率图模型,上面的所有结点构成了所有随机变量的联合分布。需要表达的就是联合分布。--早期HQY的理解

​ 之前应该只是清楚了其中的一些概念,但是并没有产生深入的理解,比如MRF与置信传播的原理以及具体的应用方式等等(虽然已经是很老的传统方法了)。方法老归老,思想本质有启发意义就是好的。

Read more »

Axis6


​ 稚晖君牛逼。看了他的六轴机器人之后,我感觉自己没学过自动化。为了证明自己是自动化专业的学生,我尝试学习以及手推了一下正逆运动学公式,手写了一个六轴机器人的控制、仿真(rviz以及Gazebo: for those who doesn't know how to pronounce: ɡəˈziːboʊ,重音在前),代码放在了[Github🔗:Enigmatisms/Axis6]。本文包含如下内容:

  • 位姿变换/正逆运动学的一些基本知识
  • Gazebo的配置使用
  • 仿真效果视频(高清无码

​ 这里放两张图:

rviz仿真结果 Gazebo仿真结果
Figure 1. 仿真效果图
Read more »

骷髅融合者


I. Intros

​ 想看看CVPR2021上都有关于点云配准或者点云处理都有什么样的文章,网上搜刮了几篇,骷髅融合者就是其中一篇。这篇论文的作者貌似是上海交大的本科生,嗯 本科CVPR一作,卢策吾老师团队,可以说是很nb了。本论文提出的思想,个人认为比较简单(可能是因为比较复杂的部分被PointNet++掩盖了,文中也没有使用时下最为流行的【变形金刚】)。并且看完Introduction之后,我就觉得这个思想好像在哪里见过:嗷,原来是我的灯条检测中含有这个方法的弱弱化版。

​ 本短篇博客只做该论文的一个简单分析,并不附带复现(如果要带复现的话,一是需要时间,二是需要了解PointNet++)。论文的地址是:arXiv: Skeleton Merger: an Unsupervised Aligned Keypoint Detector

Figure 1. Skeleton Merger 论文效果
Read more »

特龙智慧


​ 我在大二上学期购买了《概率机器人》一书,当时还没有学概率论,所以我看不懂(但是我大受震撼)。大二下的暑假曾经学了一段时间,但是没有深入,到第五章就结束了。直到现在,大四了,项目有这方面的需求了,才重新开始看特龙(Sebstian Thrun)这本口碑很好的书。尽管这本书是2006年出版的,其中的很多思想在现在的我看来,都还很有指导意义。非常后悔,自己没能在之前花精力啃下这本SLAM以及移动机器人著作。

​ GMapping(以及相关的粒子滤波SLAM方法)或多或少都有他的参与,最近也刚好读了相关的论文,并且仔细研读了其代码(OpenSLAM上的💩山,literally),故我把这些笔记整理成了一篇文章:

Figure 1. 这人有一个以自己名字命名的实验室,还曾拒绝过出任Google副总裁...
Read more »