人脸识别-损失函数:概述【Softmax loss→Center Loss→L-Softmax Loss→SphereFace→CosFace→ArcFace】
一、Softmax Loss
L = − ∑ j = 1 T y j l o g ( S j ) = − 1 N ∑ i log ( e w y i T x i ∑ j e w j T x i ) L = -\sum_{j=1}^{T}y_{j} log (S_{j})= -\cfrac{1}{N} \sum_i \log \left (\cfrac{e^{\mathbf{w}_{y_i}^T \mathbf{x}_i}}{\sum_{j} e^{\mathbf{w}_{j}^T \mathbf{x}_i}} \right) L=−j=1∑Tyjlog(Sj)=−N1i∑log(∑jewjTxiewyiTxi)
- 首先 L L L 是损失。
- S j S_j Sj 是 Softmax的输出向量 S S S 的第 j j j 个值,前面已经介绍过了,表示的是这个样本属于第 j j j 个类别的概率。
- y j y_j yj 前面有个求和符号, j j j 的范围也是 1 1 1 到类别数 T T T,因此 y y y 是一个 1 × T 1×T 1×T 的向量,里面的 T T T 个值,而且只有 1 1 1 个值是 1 1 1,其他 T − 1 T-1 T−1 个值都是 0 0 0。那么哪个位置的值是 1 1 1 呢?答案是真实标签对应的位置的那个值是 1 1 1,其他都是 0 0 0。
1、单个样本 x i \textbf{x}^i xi 的 Softmax Loss公式
l o s s i = − ∑ j = 1 K y j l o g ( y ^ j i ) = 样本 i 只属于一个类别 j − l o g ( y ^ j i ) loss^i = -\sum_{j=1}^{K}y_{j} log (\hat{y}_j^i)\xlongequal[]{样本i只属于一个类别j}- log (\hat{y}_j^i) lossi=−j=1∑Kyjlog(y^ji)样本i只属于一个类别j−log(y^ji)
- 首先 l o s s i loss^i lossi 表示样本 i i i 的损失。
- y ^ j \hat{y}_j y^j 表示的是样本 i i i 属于类别 j j j 的预测概率。
- y j y_j yj 表示的是样本 i i i 属于类别 j j j 的真实概率;前面有个求和符号, j j j 的范围也是 1 1 1 到类别数 K K K,因此 y y y 是一个 1 × K 1×K 1×K 的向量,里面的 K K K 个值,
- 多分类任务:如果每个样本只属于一个类别,则只有 1 1 1 个值是 1 1 1,其他 K − 1 K-1 K−1 个值都是 0 0 0。那么哪个位置的值是 1 1 1 呢?答案是真实标签对应的位置的那个值是 1 1 1,其他都是 0 0 0。

比如:假设类别总数为5类,样本3真实类别为 c 5 c_5 c5 (多分类任务),则样本3的损失函数:
l o s s 3 = − ∑ j = 1 K y j 3 ⋅ l o g ( y ^ j 3 ) = − [ y 1 3 ⋅ l o g ( y ^ 1 3 ) + y 2 3 ⋅ l o g ( y ^ 2 3 ) + y 3 3 ⋅ l o g ( y ^ 3 3 ) + y 4 3 ⋅ l o g ( y ^ 4 3 ) + y 5 3 ⋅ l o g ( y ^ 5 3 ) ] = − [ 0 ⋅ l o g ( y ^ 1 3 ) + 0 ⋅ l o g ( y ^ 2 3 ) + 0 ⋅ l o g ( y ^ 3 3 ) + 0 ⋅ l o g ( y ^ 4 3 ) + 1 ⋅ l o g ( y ^ 5 3 ) ] = − [ 1 ⋅ l o g ( y ^ 5 3 ) ] = − l o g ( y ^ 5 3 ) \begin{aligned} loss^3=-\sum_{j=1}^Ky_j^3·log(\hat{y}_j^3) &=-[y_1^3·log(\hat{y}_1^3)+y_2^3·log(\hat{y}_2^3)+y_3^3·log(\hat{y}_3^3)+y_4^3·log(\hat{y}_4^3)+y_5^3·log(\hat{y}_5^3)]\\[1ex] &=-[0·log(\hat{y}_1^3)+0·log(\hat{y}_2^3)+0·log(\hat{y}_3^3)+0·log(\hat{y}_4^3)+1·log(\hat{y}_5^3)]\\[1ex] &=-[1·log(\hat{y}_5^3)]\\[1ex] &=-log(\hat{y}_5^3) \end{aligned} loss3=−j=1∑Kyj3⋅log(y^j3)=−[y13⋅log(y^13)+y23⋅log(y^23)+y33⋅log(y^33)+y43⋅log(y^43)+y53⋅log(y^53)]=−[0⋅log(y^13)+0⋅log(y^23)+0⋅log(y^33)+0⋅log(y^43)+1⋅log(y^53)]=−[1⋅log(y^53)]=−log(y^53) - 多标签分类任务:如果每个样本可以属于多个类别(多标签分类),则可以由 t t t 个值为 1 1 1,其他 K − t K-t K−t 个值为 0 0 0。

比如:假设类别总数为5类,样本3真实类别为 c 1 c_1 c1, c 5 c_5 c5 (多标签分类任务),则样本3的损失函数:
l o s s 3 = − ∑ j = 1 K y j 3 ⋅ l o g ( y ^ j 3 ) = − [ y 1 3 ⋅ l o g ( y ^ 1 3 ) + y 2 3 ⋅ l o g ( y ^ 2 3 ) + y 3 3 ⋅ l o g ( y ^ 3 3 ) + y 4 3 ⋅ l o g ( y ^ 4 3 ) + y 5 3 ⋅ l o g ( y ^ 5 3 ) ] = − [ 1 ⋅ l o g ( y ^ 1 3 ) + 0 ⋅ l o g ( y ^ 2 3 ) + 0 ⋅ l o g ( y ^ 3 3 ) + 0 ⋅ l o g ( y ^ 4 3 ) + 1 ⋅ l o g ( y ^ 5 3 ) ] = − [ 1 ⋅ l o g ( y ^ 1 3 ) + 1 ⋅ l o g ( y ^ 5 3 ) ] = − [ l o g ( y ^ 1 3 ) + l o g ( y ^ 5 3 ) ] \begin{aligned} loss^3=-\sum_{j=1}^Ky_j^3·log(\hat{y}_j^3) &=-[y_1^3·log(\hat{y}_1^3)+y_2^3·log(\hat{y}_2^3)+y_3^3·log(\hat{y}_3^3)+y_4^3·log(\hat{y}_4^3)+y_5^3·log(\hat{y}_5^3)]\\[1ex] &=-[1·log(\hat{y}_1^3)+0·log(\hat{y}_2^3)+0·log(\hat{y}_3^3)+0·log(\hat{y}_4^3)+1·log(\hat{y}_5^3)]\\[1ex] &=-[1·log(\hat{y}_1^3)+1·log(\hat{y}_5^3)]\\[1ex] &=-[log(\hat{y}_1^3)+log(\hat{y}_5^3)] \end{aligned} loss3=−j=1∑Kyj3⋅log(y^j3)=−[y13⋅log(y^13)+y23⋅log(y^23)+y33⋅log(y^33)+y43⋅log(y^43)+y53⋅log(y^53)]=−[1⋅log(y^13)+0⋅log(y^23)+0⋅log(y^33)+0⋅log(y^43)+1⋅log(y^53)]=−[1⋅log(y^13)+1⋅log(y^53)]=−[log(y^13)+log(y^53)]
- 多分类任务:如果每个样本只属于一个类别,则只有 1 1 1 个值是 1 1 1,其他 K − 1 K-1 K−1 个值都是 0 0 0。那么哪个位置的值是 1 1 1 呢?答案是真实标签对应的位置的那个值是 1 1 1,其他都是 0 0 0。
2、样本集 x \textbf{x} x 的 Softmax Loss公式(多分类任务,非多标签任务)
L o s s = − 1 N ∑ i = 1 N l o s s i = − 1 N ∑ i = 1 N ∑ k = 1 K y k i ⋅ l o g ( y ^ k i ) = 样本 i 只属于一个类别 k − 1 N ∑ i = 1 N l o g y ^ k i = − 1 N ∑ i = 1 N l o g [ f ( z k i ) ] = − 1 N ∑ i = 1 N l o g e z k i ∑ j = 1 K e z j i = − 1 N ∑ i = 1 N l o g e w k T x i ∑ j = 1 K e w j T x i = 样本 i 的真实类别 k 记为 y i − 1 N ∑ i = 1 N l o g e w y i T x i ∑ j = 1 K e w j T x i \color{red}{\begin{aligned} Loss&=-\cfrac{1}{N}\sum_{i=1}^Nloss^i\\ &=-\cfrac{1}{N}\sum_{i=1}^N\sum_{k=1}^Ky_k^i·log(\hat{y}_k^i)\\ &\xlongequal[]{样本i只属于一个类别k}-\cfrac{1}{N}\sum_{i=1}^Nlog\hat{y}_k^i\\ &=-\cfrac{1}{N}\sum_{i=1}^Nlog[f(z_k^i)]\\ &=-\cfrac{1}{N}\sum_{i=1}^Nlog\cfrac{e^{z_k^i}}{\sum^K_{j=1}e^{z_j^i}}\\[1ex] &=-\cfrac{1}{N}\sum_{i=1}^Nlog\cfrac{e^{\textbf{w}_k^T\textbf{x}^i}}{\sum^K_{j=1}e^{\textbf{w}_j^T\textbf{x}^i}}\\ &\xlongequal[]{样本i的真实类别k记为y_i}-\cfrac{1}{N}\sum_{i=1}^Nlog\cfrac{e^{\textbf{w}_{y_i}^T\textbf{x}^i}}{\sum^K_{j=1}e^{\textbf{w}_j^T\textbf{x}^i}} \end{aligned}} Loss=−N1i=1∑Nlossi=−N1i=1∑Nk=1∑Kyki⋅log(y^ki)样本i只属于一个类别k−N1i=1∑Nlogy^ki=−N1i=1∑Nlog[f(zki)]=−N1i=1∑Nlog∑j=1Kezjiezki=−N1i=1∑Nlog∑j=1KewjTxiewkTxi样本i的真实类别k记为yi−N1i=1∑Nlog∑j=1KewjTxiewyiTxi
其中:
- N N N:表示样本总数量;
- K K K:表示总的类别数量为 K K K;
- k k k:表示样本 x i \textbf{x}^i xi 的真实标签类别,记为 y i y_i yi;
- y ^ k i \hat{y}_k^i y^ki:表示第 i i i 号样本 x i \textbf{x}^i xi 属于类别 k k k 的预测概率;所有 K K K 个 y ^ k i \hat{y}_k^i y^ki 的总和恒等于 1 1 1;
- x i \textbf{x}^i xi:表示样本 i i i;
- w k T \textbf{w}_k^T wkT:表示第 k k k 类的权重向量; w k T = [ w k , 1 w k , 2 w k , 3 ⋯ w k , n ⋯ w k , N ] \textbf{w}_k^T=\begin{bmatrix}w_{k,1} & w_{k,2} & w_{k,3} & \cdots & w_{k,n} & \cdots & w_{k,N}\end{bmatrix} wkT=[wk,1wk,2wk,3⋯wk,n⋯wk,N]; N N N 表示样本的数据维度;
- w j T \textbf{w}_j^T wjT:表示第 j j j 类的权重向量,其中 j = 1 , 2 , . . . , K j=1,2,...,K j=1,2,...,K;
Center Loss
二、L-Softmax Loss(Large Margin Softmax Loss)
相比较Softmax Loss:
- 增加Margin项:角度分类边界之间的空白角度区域
- 增大Margin来提高分类精度
- 缺陷:无法处理W_i≠W_j的情况
L i = − log ( e ∥ w y i ∥ ∥ x i ∥ ψ ( θ y i ) e ∥ w y i ∥ ∥ x i ∥ ψ ( θ y i ) + ∑ j e ∥ w j ≠ y i ∥ ∥ x i ∥ cos ( θ j ) ) (4) L_i = - \log \left (\cfrac{e^{\lVert \mathbf{w}_{y_i} \rVert \lVert \mathbf{x}_i \rVert \psi (\theta_{y_i})}}{e^{\lVert \mathbf{w}_{y_i} \rVert \lVert \mathbf{x}_i \rVert \psi (\theta_{y_i})} + \sum_{j} e^{\lVert \mathbf{w}_{j \neq y_i} \rVert \lVert \mathbf{x}_i \rVert \cos(\theta_j)}} \right) \tag4 Li=−log(e∥wyi∥∥xi∥ψ(θyi)+∑je∥wj=yi∥∥xi∥cos(θj)e∥wyi∥∥xi∥ψ(θyi))(4)
其中
ψ ( θ ) = { cos ( m θ ) , 0 ≤ θ ≤ π m D ( θ ) , π m < θ ≤ π (5) \psi(\theta) = \begin{cases} \cos (m \theta), 0 \le \theta \le \cfrac{\pi}{m} \\ \mathcal{D} (\theta), \cfrac{\pi}{m} \lt \theta \le \pi \tag5 \end{cases} ψ(θ)=⎩
⎨
⎧cos(mθ),0≤θ≤mπD(θ),mπ<θ≤π(5)
- 公式(5)要保证 D ( θ ) D(\theta) D(θ) 要单调递减,并且 D ( π m ) = c o s ( π ) D(\cfrac{\pi}{m}) = cos(\pi) D(mπ)=cos(π) ,为了保证随着 θ y i \theta_{yi} θyi 的增大,样本的损失也增大,需要让 ψ ( θ ) \psi(\theta) ψ(θ) 在 [ 0 , π ] [0,\pi] [0,π] 单调递减,可以这么理解,如果要让损失函数在样本上递减,必须使得分母 ∣ ∣ W y i ∣ ∣ ∣ ∣ x i ∣ ∣ ψ ( θ y i ) \left| \left| W_{yi} \right| \right| \left| \left| x_{i} \right|\right|\psi(\theta_{yi}) ∣∣Wyi∣∣∣∣xi∣∣ψ(θyi) 递增,因为 c o s ( θ y i ) ≥ c o s ( m θ y i ) > D ( θ y i ) cos(\theta_{yi})\geq cos(m\theta_{yi})>D(\theta_{yi}) cos(θyi)≥cos(mθyi)>D(θyi) ,随着 ψ ( θ y i ) \psi(\theta_{yi}) ψ(θyi) 的递增,可以保证 θ y i \theta_{yi} θyi 越来越小。
- 总的来说,其实有点类似数学里面的不等式放缩,让原始的Softmax一定小于L-softmax损失,如果L-Softmax损失收敛到一个很小值,那么原始的Softmax损失会比原来更小,这样解决了原始的Softmax损失收敛出现瓶颈的问题
但是为了简化上述(5)的函数,可以改造函数 ψ ( θ ) \psi(\theta) ψ(θ) 在 [ 0 , π ] [0,\pi] [0,π] 这段区间,因为 c o s ( θ ) cos(\theta) cos(θ) 是周期为 π \pi π 函数,可以这么如下分析:
- 当 0 ≤ θ ≤ π m 0\leq \theta \leq\cfrac{\pi}{m} 0≤θ≤mπ 时, ψ ( θ ) = c o s ( m θ ) \psi(\theta)=cos(m\theta) ψ(θ)=cos(mθ)
- 当 π m < θ ≤ 2 π m \cfrac{\pi}{m}<\theta\leq \cfrac{2\pi}{m} mπ<θ≤m2π , ψ ( θ ) = − c o s ( m θ ) − 2 \psi(\theta)= -cos(m\theta)-2 ψ(θ)=−cos(mθ)−2 也就是 c o s ( m θ ) cos(m\theta) cos(mθ) 在区间 [ π m , 2 π m ] [\cfrac{\pi}{m}, \cfrac{2\pi}{m}] [mπ,m2π] 对称反转,在向下平移2个单位,与 [ 0 , π m ] [0, \cfrac{\pi}{m}] [0,mπ] 这段曲线的右端点相接。
- 当 2 π m < θ ≤ 3 π m \cfrac{2\pi}{m}<\theta\leq \cfrac{3\pi}{m} m2π<θ≤m3π , ψ ( θ ) = c o s ( m θ ) − 4 \psi(\theta)= cos(m\theta)-4 ψ(θ)=cos(mθ)−4 ,自己画图就可以分析出来;
最终得出论文中 ψ ( θ ) \psi(\theta) ψ(θ) 的一般形式:
ψ ( θ ) = ( − 1 ) k cos ( m θ ) − 2 k , θ ∈ [ k π m , ( k + 1 ) π m ] (6) \psi(\theta) = (-1)^k \cos(m\theta) - 2k, \theta \in [\cfrac{k\pi}{m}, \cfrac{(k+1) \pi}{m}] \tag6 ψ(θ)=(−1)kcos(mθ)−2k,θ∈[mkπ,m(k+1)π](6)
- 其中 k + 1 ≤ m k+1\leq m k+1≤m ,所以 k ∈ [ 0 , m − 1 ] k∈[0,m−1] k∈[0,m−1] 同时 k k k 是整数。下图是不同 m m m 对应的 ψ ( θ ) ψ(θ) ψ(θ)曲线

在正向传播和反向传播中,我们要计算 c o s ( θ y i ) = W y i x i ∣ ∣ W y i ∣ ∣ ∣ ∣ x i ∣ ∣ cos(\theta_{yi})=\cfrac{W_{yi}x_{i}}{\left| \left| W_{yi} \right| \right|\left| \left| x_{i}\right| \right|} cos(θyi)=∣∣Wyi∣∣∣∣xi∣∣Wyixi ,然后计算 c o s ( m θ y i ) cos(m\theta_{yi}) cos(mθyi),
cos ( m θ i ) \cos (m\theta_i) cos(mθi)由下面公式计算
当 m = 1 m=1 m=1 时,L-Softmax Loss就是原来的Softmax Loss。
三、SphereFace(Angular Softmax Loss)
在 L-Softmax Loss 的基础上添加了两个限制条件:
- ∣ ∣ W ∣ ∣ = 1 ||W||=1 ∣∣W∣∣=1
- b = 0 b=0 b=0,
使得预测仅取决于 W W W 和 x x x 之间的角度。
L ang = 1 N ∑ i − log ( e ∥ x i ∥ ψ ( θ y i , i ) e ∥ x i ∥ ψ ( θ y i , i ) + ∑ j ≠ y i e ∥ x i ∥ cos ( θ j , i ) ) {{L}_{\text{ang}}}=\cfrac{1}{N}\sum\limits_{i}{-\log (\cfrac{{{e}^{\left\| {{x}_{i}} \right\|\psi ({{\theta }_{y_i,i}})}}}{{{e}^{\left\| {{x}_{i}} \right\|\psi ({{\theta }_{y_i,i}})}}+\sum\nolimits_{j\ne y_i}{{{e}^{\left\| {{x}_{i}} \right\|\cos ({{\theta }_{j}},i)}}}}}) Lang=N1i∑−log(e∥xi∥ψ(θyi,i)+∑j=yie∥xi∥cos(θj,i)e∥xi∥ψ(θyi,i))
其中: ψ ( θ y i , i ) = ( − 1 ) k cos ( m θ y i , i ) − 2 k \psi ({{\theta }_{y_i,i}})={{(-1)}^{k}}\cos (m{{\theta }_{y_i,i}})-2k ψ(θyi,i)=(−1)kcos(mθyi,i)−2k
代码中引入了超参数 λ λ λ,为:
λ = max ( λ min , λ max 1 + 0.1 × i t e r a t o r ) \lambda =\max ({{\lambda }_{\min }},\cfrac{{{\lambda }_{\max }}}{1+0.1\times iterator}) λ=max(λmin,1+0.1×iteratorλmax)
其中, λ min = 5 {{\lambda }_{\min }}=5 λmin=5, λ max = 1500 {{\lambda }_{\max }}=1500 λmax=1500为程序中预先设定的值。
实际的 ψ ( θ ) ψ(θ) ψ(θ) 为
ψ ( θ y i ) = ( − 1 ) k cos ( m θ y i ) − 2 k + λ cos ( θ y i ) 1 + λ \psi ({{\theta }_{y_i}})=\frac{{{(-1)}^{k}}\cos (m{{\theta }_{y_i}})-2k+\lambda \cos ({{\theta }_{y_i}})}{1+\lambda } ψ(θyi)=1+λ(−1)kcos(mθyi)−2k+λcos(θyi)
四、CosFace(Large Margin Cosine Loss)
SphereFace中只对 W W W 进行归一化。
CosFace的改进:
- 对 W W W 及 X X X 均进行了归一化,
- 为了使得训练能收敛,增加了一个参数 s = 30 s=30 s=30,
L L M C = − 1 N ∑ i = 1 N log e s ⋅ [ cos ( θ y i , i ) − m ] e s ⋅ [ cos ( θ y i , i ) − m ] + ∑ j = 1 , j ≠ y i c e s ⋅ cos ( θ j , i ) (4) \begin{aligned}{{L}_{LMC}}=-\frac{1}{N}\sum\limits_{i=1}^{N}{\log \frac{{{e}^{s· [\cos ({{\theta }_{y_i},i})-m]}}}{{{e}^{s·[\cos ({{\theta }_{y_i},i})-m]}}+\sum\nolimits_{j=1,j\ne yi}^{c}{{{e}^{s· \cos {{(\theta }_{j},i)}}}}}} \tag4 \end{aligned} LLMC=−N1i=1∑Nloges⋅[cos(θyi,i)−m]+∑j=1,j=yices⋅cos(θj,i)es⋅[cos(θyi,i)−m](4)
约束条件有:
- W = W ∗ ∣ ∣ W ∗ ∣ ∣ W=\cfrac{W^*}{||W^*||} W=∣∣W∗∣∣W∗
- x = x ∗ ∣ ∣ x ∗ ∣ ∣ x=\cfrac{x^*}{||x^*||} x=∣∣x∗∣∣x∗
- c o s ( θ j , i ) = W j T x i cos(θ_j,i)=W_j^Tx_i cos(θj,i)=WjTxi
其中:
- N N N:训练样本数,
- x i x_i xi:与 y i y_i yi 的 ground-truth类对应的第 i i i 个特征向量;
- W j W_j Wj: W j W_j Wj 是第 j j j 类的权重向量;
- θ j θ_j θj: W j W_j Wj 与 x i x_i xi的夹角;
五、ArcFace(Additive Angular Margin Loss)
L A r c = − 1 N ∑ i = 1 N l o g e s [ c o s ( θ y i , i + m ) ] e s [ c o s ( θ y i , i + m ) ] + ∑ j ≠ y i e s c o s ( θ j , i ) \begin{aligned}L_{Arc}=-\frac{1}{N}\sum\limits_{i=1}^{N}log\frac{e^{s[cos(\theta_{y_i,i}+m)]}}{e^{s[cos(\theta_{y_i,i}+m)]}+\sum_{j\neq y_i}e^{s\ cos(\theta_j,i)}} \end{aligned} LArc=−N1i=1∑Nloges[cos(θyi,i+m)]+∑j=yies cos(θj,i)es[cos(θyi,i+m)]
约束条件有:
- W = W ∗ ∣ ∣ W ∗ ∣ ∣ W=\cfrac{W^*}{||W^*||} W=∣∣W∗∣∣W∗
- x = x ∗ ∣ ∣ x ∗ ∣ ∣ x=\cfrac{x^*}{||x^*||} x=∣∣x∗∣∣x∗
- c o s ( θ j , i ) = W j T x i cos(θ_j,i)=W_j^Tx_i cos(θj,i)=WjTxi
其中:
- N N N:训练样本数,
- x i x_i xi:与 y i y_i yi 的 ground-truth类对应的第 i i i 个特征向量;
- W j W_j Wj: W j W_j Wj 是第 j j j 类的权重向量;
- θ j θ_j θj: W j W_j Wj 与 x i x_i xi的夹角;
可以看到和CosFace非常类似,只是将 m m m 作为角度加上去了,这样就强行拉大了同类之间的角度,使得神经网络更努力地将同类收得更紧。
There are two main lines of research to train DCNNs for face recognition.
- Those that train a multi-class clas- sifier which can separate different identities in the training set, such by using a softmax classifier [33, 24, 6],
- those that learn directly an embedding, such as the triplet loss[29].
Based on the large-scale training data and the elaborate DCNN architectures, both the softmax-loss-based methods [6] and the triplet-loss-based methods [29] can obtain excellent performance on face recognition.
For the softmax loss:
- (1) the size of the linear transformation matrix W ∈ Rd×n increases linearly with the identities number n; (线性变换矩阵W的大小∈ Rd×n随分类数n线性增加;)
- (2) the learned features are separable for the closed-set classification problem but not discriminative enough for the open-set face recognition problem. (对于闭集分类问题,学习的特征是可分离的,但对于开集人脸识别问题,学习到的特征识别能力不够。)
For the triplet loss:
- (1) there is a combinatorial explosion in the number of face triplets especially for large-scale datasets, leading to a significant increase in the number of iteration steps; (面部三元祖的数量呈组合爆炸式增长,尤其是对于大型数据集,导致迭代步骤的数量显著增加)
- (2) semi-hard sample mining is a quite difficult prob- lem for effective model training.(半硬样本挖掘对于有效的模型训练来说是一个相当困难的问题。)
参考资料:
[6] Q. Cao, L. Shen, W. Xie, O. M. Parkhi, and A. Zisserman. Vggface2: A dataset for recognising faces across pose and age. In FG, 2018. 1, 2, 4, 5, 7, 8
[24] O. M. Parkhi, A. Vedaldi, and A. Zisserman. Deep face recognition. In BMVC, 2015. 1, 2, 6
[29] F. Schroff, D. Kalenichenko, and J. Philbin. Facenet: A unified embedding for face recognition and clustering. In CVPR, 2015. 1, 4, 6, 7
[33] Y. Taigman, M. Yang, M. Ranzato, and L. Wolf. Deepface: Closing the gap to human-level performance in face verifica- tion. In CVPR, 2014. 1, 6
ArcFace
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)