PointMixer论文阅读笔记

MLP-mixer是最近很流行的一种网络结构,比起Transformer和CNN的节构笨重,MLP-mixer不仅节构简单,而且在图像识别方面表现优异。但是MLP-mixer在点云识别方面表现欠佳,PointMixer就是在保留了MLP-mixer优点的同时,还可以很好的处理点云问题。PointMixer可以很好的处理intra-set, inter-set, hierarchical-set的点云。PointMixer这偏论文还很好的证明了chanel-mixing MLP是比token-mixing MLP效果更好,对称encoder和decoder结构能够更好的处理点云问题。

为了方便论文阐述,做以下规定:

P是点云的总和

X是点云特性的总和

Y是output特性的总和

pi是i点云的位置

xi是i点云相关的特性

yi是i点云output的特性

Mi是pi点周围邻居点的集合,常表示为Mi = kNN(P, pi)

PointNet++: 使用kNN和最远点sampling算法,使用不对称的encoder和decoder。PointNet++网络不对整个点云直接分析,而是locally的处理然后再整合在一起。

yi = maxpooling(MLP(concat(xi, pi - pj)));j是Mi的成员

PointTransformer: 也是使用了kNN的方法

yi = sum(softmax(MLP(W1(xi) - W2(xj) + δ(pi - pj)))(W3(xj) + δ(pi - pj)))

W为linear transformer metric,δ为positional encoding vector。

MLP-Mixer: MLP-mixer分为token-mix MLP和channel-mix MLP, MLP-Mixer使用K个tokens有C维features, tokens是将图片分割成小块。 第一步是token-mixing MLPs, 第二步时channel-mixing MLP, token mixing是混合空间轴和维度轴到空间轴,channel-mixing是将空间信息转为维度和空间信息。

MLP-Mixer将CNN的两个任务切割开来,不同位置的mix叫token-mixing,同一位置不同channel的mix叫做channel-mixing。

X' = X + (W2ρ(W1(Layernorm(X))T))T

Y = X' + W4ρ(W3Layernorm(X'))

W是MLP,ρ是GELU

token-mix MLPs具有转置同变性,所以点云的输入顺序特别重要。需要在token-mix前再加一层转置不变的网络。

并且MLP-mixer只能处理inter-set的点云,还有很大的提升空间。

https://zhuanlan.zhihu.com/p/372692759

PointMixer:

sj = g2(concat(g1(xj); δ(pi - pj))); j属于Mi, g是channel-mix MLP, δ是positional encoding vector

yi = sum(softmax(sj) * g(xj)); 这里的乘法的element-wise

PointMixer的主要创新点是使用了positional embedding, 使用了softmax,不使用token-mix MLP

为什么不使用token-mix? token-mix MLP具有转置同变性的缺点,而且token-mix只能使用固定数量的输入,但是对于点云来说,neighbor不是固定的,要用聚类算法。

intra-set mixing 使用最传统的kNN

inter-set mixing 使用变种的query-kNN

hierarchical-set mixing 使用变种的hierarchical-kNN

对称性也表现在kNN的集合里面,encoder和decoder的M集是完全颠倒的。

相关推荐
_Kayo_4 小时前
node.js 学习笔记3 HTTP
笔记·学习
星星火柴9368 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
Cx330❀11 小时前
【数据结构初阶】--排序(五):计数排序,排序算法复杂度对比和稳定性分析
c语言·数据结构·经验分享·笔记·算法·排序算法
小幽余生不加糖11 小时前
电路方案分析(二十二)适用于音频应用的25-50W反激电源方案
人工智能·笔记·学习·音视频
..过云雨12 小时前
01.【数据结构-C语言】数据结构概念&算法效率(时间复杂度和空间复杂度)
c语言·数据结构·笔记·学习
岑梓铭13 小时前
考研408《计算机组成原理》复习笔记,第五章(3)——CPU的【数据通路】
笔记·考研·408·计算机组成原理·计组
Blossom.11819 小时前
把 AI 推理塞进「 8 位 MCU 」——0.5 KB RAM 跑通关键词唤醒的魔幻之旅
人工智能·笔记·单片机·嵌入式硬件·深度学习·机器学习·搜索引擎
草莓熊Lotso19 小时前
《吃透 C++ 类和对象(中):const 成员函数与取地址运算符重载解析》
c语言·开发语言·c++·笔记·其他
玖別ԅ(¯﹃¯ԅ)20 小时前
PID学习笔记6-倒立摆的实现
笔记·stm32·单片机
想学全栈的菜鸟阿董1 天前
Django5个人笔记
笔记