PointNet学习笔记(二)——支撑材料(理论证明)

PointNet学习笔记(二)——支撑材料(理论证明)

这一部分记录了PointNet中两个定理的证明和博主的学习笔记。具体的定理可以参见论文学习笔记,这里仅给出证明。更新于2018.10.12。

Theorem 1

定理1要证明的是设计的网络结构能够模拟任意一个连续(依照具体定义)的函数,且最差的情况是将空间内等分成立方体。

X = { S : S ⊆ [ 0 , 1 ]    and    ∣ S ∣ = n } \mathcal X = \{S:S\subseteq [0,1] \;\text{and}\; \vert S\vert =n\} X={S:S[0,1]andS=n}
如果满足下列条件, f : → R f:\mathcal \to \mathbb R f:R是一个 X \mathcal X X上对于Hausdorff距离 d H ( ⋅ , ⋅ ) d_H(\cdot,\cdot) dH(,)连续的函数:
∀ ϵ > 0 ,   ∃ δ > 0 ,   使 得 任 意 S , S ′ ∈ X , 若 d H ( S , S ′ ) < δ , 有 ∣ f ( S ) − f ( S ′ ) ∣ < ϵ \forall \epsilon \gt 0, \ \exists\delta\gt 0,\ 使得任意S,S'\in \mathcal X, 若d_H(S,S')\lt\delta,有\vert f(S)-f(S')\vert \lt \epsilon ϵ>0, δ>0, 使S,SX,dH(S,S)<δ,f(S)f(S)<ϵ

这里需要证明的是 f f f可以被任意一个对称函数和连续函数近似。

证:
f f f的连续性,取 δ ϵ \delta_{\epsilon} δϵ使得若 d H ( S , S ′ ) < δ ϵ d_H(S,S')\lt\delta_{\epsilon} dH(S,S)<δϵ,那么对于任意 S , S ′ ∈ X S,S'\in\mathcal X S,SX都有 ∣ f ( S ) − f ( S ′ ) ∣ < ϵ \vert f(S) - f(S')\vert \lt \epsilon f(S)f(S)<ϵ
定义 K = ⌈ 1 / δ ϵ ⌉ K=\lceil 1/\delta\\_{\epsilon}\rceil K=1/δϵ,将区间 [ 0 , 1 ] [0,1] [0,1]等分成 K K K份;再定义一个辅助函数,其作用是将一个点映射到它所在区间的左侧端点处:
σ ( x ) = ⌊ K x ⌋ K \sigma(x)=\frac{\lfloor Kx \rfloor}{K} σ(x)=KKx
S ~ = { σ ( x ) : x ∈ S } \tilde S=\{\sigma(x):x\in S\} S~={σ(x):xS},那么由于 d H ( S , S ~ ) < 1 / K ≤ δ ϵ d_H(S,\tilde S)\lt1/K\leq\delta_{\epsilon} dH(S,S~)<1/Kδϵ,因此有:
∣ f ( S ) − f ( S ~ ) ∣ < ϵ \vert f(S)-f(\tilde S)\vert\lt\epsilon f(S)f(S~)<ϵ

h k ( x ) = e − d ( x , [ k − 1 K , k K ] ) h_k(x)=e^{-d(x,[ \frac{k-1}{K},\frac{k}{K}] )} hk(x)=ed(x,[Kk1,Kk])为一个软指示函数(soft indicator function),其中 d ( x , I ) d(x,I) d(x,I)是点到集合(间隔)的距离。令 h ( x ) = [ h 1 ( x ) ; ⋯   ; h K ( x ) ] \mathbf{h}(x)=[h_1(x);\cdots;h_K(x)] h(x)=[h1(x);;hK(x)],则 h : R → R K \mathbf{h}:\mathbb R \to \mathbb R^K h:RRK

博主注:指示函数(indicator function)是用来标注一个点是否属于集合,如果属于值为1,反之值为0。 h k ( x ) h_k(x) hk(x)的含义就是 x x x是否属于集合 k k k的指示函数。

v j ( x 1 , ⋯   , x n ) = max ⁡ { h ~ j ( x 1 ) , ⋯   , h ~ j ( x n ) } v_j(x_1,\cdots ,x_n)=\max\{\tilde h_j(x_1),\cdots , \tilde h_j(x_n)\} vj(x1,,xn)=max{h~j(x1),,h~j(xn)},用于指示 S S S中的点对于第 j j j个间隔的占用。令 v = [ v 1 ; ⋯   ; v K ] \mathbf{v}=[v_1;\cdots ; v_K] v=[v1;;vK];那么 v : R × ⋯ × R ⏟ n → { 0 , 1 } K \mathbf v:\underbrace{\mathbb R \times \cdots \times \mathbb R}_n \to \{0,1\}^K v:n R××R{0,1}K就是一个对称函数,记录了 S S S中的点对所有间隔的占用。

博主注:对称函数(symmetric function)是指输出不会随输入的顺序改变,比如对称矩阵就可以看作是行序号与列序号的对称函数。

定义 τ : { 0 , 1 } K → X \tau:\{0,1\}^K\to\mathcal X τ:{0,1}KX其中 τ ( v ) = { k − 1 K : v k ≥ 1 } \tau(\mathcal v)=\{\frac{k-1}{K}:\mathcal v_k\geq 1\} τ(v)={Kk1:vk1},其将占用向量(occupancy vector)映射到每个所占用的区间的左端点。不难得到:
τ ( v ( x 1 , ⋯   , x n ) ) ≡ S ~ \tau(\mathbf v(x_1,\cdots,x_n))\equiv\tilde S τ(v(x1,,xn))S~
其中 x 1 , ⋯   , x n x_1,\cdots,x_n x1,,xn是从 S S S中按照某种特定顺序提取出来的元素。

γ : R K → R \gamma : \mathbb R^K\to\mathbb R γ:RKR是一个连续函数使得 γ ( v ) = f ( τ ( v ) ) \gamma(\mathbf v)=f(\tau(\mathbf v)) γ(v)=f(τ(v)) v ∈ { 0 , 1 } K \mathcal v\in \{0,1\}^K v{0,1}K成立。那么,
∣ γ ( v ( x 1 , ⋯   , x n ) ) − f ( S ) ∣ = ∣ f ( τ ( v ( x 1 , ⋯   , x n ) ) ) − f ( S ) ∣ < ϵ \vert\gamma(\mathbf v(x_1,\cdots,x_n))-f(S)\vert\\ =\vert f(\tau (\mathbf v(x_1,\cdots,x_n)))-f(S)\vert \lt \epsilon γ(v(x1,,xn))f(S)=f(τ(v(x1,,xn)))f(S)<ϵ

由于 γ ( v ( x 1 , ⋯   , x n ) ) \gamma(\mathbf v(x_1,\cdots,x_n)) γ(v(x1,,xn))可以写成如下形式:
γ ( v ( x 1 , ⋯   , x n ) ) = γ ( MAX ( h ( x 1 ) , ⋯   , h ( x n ) ) ) = ( γ ∘ MAX ) ( h ( x 1 ) , ⋯   , h ( x n ) ) \gamma(\mathbf v(x_1,\cdots,x_n))=\gamma(\textbf {MAX}(\mathbf h(x_1),\cdots,\mathbf h(x_n)))\\ =(\gamma \circ \textbf{MAX})(\mathbf h(x_1),\cdots,\mathbf h(x_n)) γ(v(x1,,xn))=γ(MAX(h(x1),,h(xn)))=(γMAX)(h(x1),,h(xn))

显然 γ ∘ MAX \gamma\circ\textbf{MAX} γMAX是一个对称函数。
得证。

Theorem 2

下面给出定理2的证明。定义 u = MAX x i ∈ S { h ( x i ) } \mathbf u = \mathop{\textbf{MAX}}\limits_{x_i\in S}\{h(x_i)\} u=xiSMAX{h(xi)} f f f的一个子网络,其中 f f f将区间 [ 0 , 1 ] m [0,1]^m [0,1]m中的点映射成 K K K维的向量。定理2证明了小的扰动或多余的噪声点不太可能引起网络的输出变化。

证:

显然, ∀ S ∈ X \forall S \in \mathcal X SX f ( S ) f(S) f(S)都由 u ( S ) \mathbf u(S) u(S)决定。因此,只需要证明 ∀ S , ∃ C S , N S ⊆ X \forall S, \exists \mathcal C_S, \mathcal N_S \subseteq \mathcal X S,CS,NSX,使得如果 C S ⊆ T ⊆ N S \mathcal C_S\subseteq T\subseteq \mathcal N_S CSTNS,有 f ( T ) = f ( S ) f(T)=f(S) f(T)=f(S)

对于 u \mathbf u u的第 j j j维输出,总存在至少一个 x j ∈ X x_j\in \mathcal X xjX,使得 h j ( x j ) = u j h_j(x_j)=\mathbf u_j hj(xj)=uj,其中 h j h_j hj h h h对应输出的第 j j j维。

博主注:这是因为,从定理1的证明中我们可以看出, u \mathbf u u是对 h ( x ) h(x) h(x)取最大值得到的,也就是说,至少应该有一个 h j ( x j ) h_j(x_j) hj(xj)对应了该最大值,因此存在至少一个 x j x_j xj使得上式成立。此时,这个 x j x_j xj恰好也就对应了占用该段 S S S的最大值。

C S \mathcal C_S CS视作所有 x j x_j xj的集合,其中 j = 1 , ⋯   , K j=1,\cdots,K j=1,,K。那么, C S \mathcal C_S CS满足上述条件。

C S \mathcal C_S CS中的所有维度增加满足 h ( x ) ≤ u ( S ) h(x)\leq\mathbf u(S) h(x)u(S)条件的点 x x x都不会改面 u \mathbf u u,因此也不会改变 f f f。因此,将所有这样的点集合进 N S \mathcal N_S NS就可以得到 T S \mathcal T_S TS

得证。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值