主頁 >  其他 > 人臉識別損失函式疏理與分析

人臉識別損失函式疏理與分析

2020-09-19 20:30:18 其他

目錄

  • 寫在前面
  • Cross-Entropy Loss (softmax loss)
  • Contrastive Loss - CVPR2006
  • Triplet Loss - CVPR2015
  • Center Loss - ECCV2016
  • L-Softmax Loss - ICML2016
  • A-Softmax Loss - CVPR2017
  • AM-Softmax Loss-CVPR2018
  • ArcFace Loss - CVPR2019
  • 歐氏距離or角度距離與歸一化
  • 參考

博客:博客園 | CSDN | blog

寫在前面

Closed-set 和 Open-set 人臉識別的對比如下,

Comparison-of-open-set-and-closed-set-face-recognition.png

兩張人臉影像,分別提取特征,通過計算特征向量間的距離(相似度)來判斷它們是否來自同一個人,選擇與問題背景相契合的度量方式很重要,人臉識別中一般有兩種,歐氏距離余弦距離(角度距離)

訓練階段和測驗階段采用的度量方式要一致,如果想在測驗階段使用歐氏距離,自然在訓練階段就要基于歐氏距離來構造損失進行優化,

實際上,不同度量方式間存在著一定的內在聯系,

  • 歐氏距離與向量的模和角度都有關,模固定,角度越大歐氏距離也越大,角度固定,模同比增大歐式距離也增大,模分別增大情況會比較復雜;
  • 余弦距離和角度距離有單調關系(負相關),但兩者分布的“密度”不同,觀察余弦函式曲線可知,在角度從0向\(\pi\)勻速(線性)前進時,余弦值在0和\(\pi\)附近緩慢變化,在\(\frac{\pi}{2}\)附近近似線性變化
  • 當向量模長歸一化后,歐氏距離和余弦距離有單調關系,所以,在預測階段,歸一化后的特征選取哪種度量進行判別均可

可對不同損失函式按度量方式進行劃分,

  • 歐氏距離:Contrastive Loss,Triplet Loss,Center Loss……
  • 余弦距離(角度距離):Large-Margin Softmax Loss,Angular-Softmax Loss,Large Margin Cosine Loss,Additive Angular Margin Loss……

先從最基本的Softmax Loss開始,

Cross-Entropy Loss (softmax loss)

交叉熵損失,也稱為softmax損失,是深度學習中應用最廣泛的損失函式之一,

\[\mathcal{L}_{\mathrm{s}}=-\frac{1}{N_b} \sum_{i=1}^{N_b} \log \frac{e^{W_{y_{i}}^{T} x_{i}+b_{y_{i}}}}{\sum_{j=1}^{n} e^{W_{j}^{T} x_{i}+b_{j}}} \]

其中,

  • \(n\)個類別,\(N_b\)為batch size
  • \(x_{i} \in \mathbb{R}^{d}\),第\(i\)個樣本的特征,特征有\(d\)維,屬于\(y_i\)
  • \(W \in \mathbb{R}^{d \times n}\)為權重矩陣,\(W_j\)表示\(W\)的第\(j\)列,\(b_{j} \in \mathbb{R}^{n}\)為bias

特征\(x\)經全連接層的權重矩陣\(W\)得到與類別數相同的\(n\)\((-\infty, +\infty)\)實數,相對越大的實數代表越像某一個類別,Softmax的作用是將\((-\infty, +\infty)\)\(n\)個實數通過指數映射到\((0, +\infty)\),然后歸一化,使和為1,以獲得某種概率解釋,

指數操作會將映射前的小差異指數放大,Softmax Loss希望label對應的項越大越好,但因為指數操作的存在,只需要映射前差異足夠大即可,并不需要使出“全力”,

在人臉識別中,可通過對人臉分類來驅動模型學習人臉的特征表示,但該損失追求的是類別的可分性,并沒有顯式最優化類間和類內距離,這啟發了其他損失函式的出現,

Contrastive Loss - CVPR2006

Contrastive Loss由LeCun在《Dimensionality Reduction by Learning an Invariant Mapping》CVPR2006中提出,起初是希望降維后的樣本保持原有距離關系,相似的仍相似,不相似的仍不相似,如下所示,

\[\begin{array}{c} L\left(W, Y, \vec{X}_{1}, \vec{X}_{2}\right)= (1-Y) \frac{1}{2}\left(D_{W}\right)^{2}+(Y) \frac{1}{2}\left\{\max \left(0, m-D_{W}\right)\right\}^{2} \end{array} \]

其中,\(\vec{X}_{1}\)\(\vec{X}_{2}\)為樣本對,\(Y=\{0, 1\}\)指示樣本對是否相似,\(Y=0\)相似,\(Y=1\)不相似,\(D_W\)為樣本對特征間的歐氏距離,\(W\)為待學習引數,相當于歐氏距離損失+Hinge損失

Graph-of-Contrastive-Loss.png

類內希望距離越小越好,類間希望越大越好(大于margin),這恰與人臉識別特征學習的目的相一致,Contrastive Loss在DeepID2中得以使用,作為Verification Loss,與Softmax Loss形式的Identification Loss構成聯合損失,如下所示,

\[\operatorname{Ident}\left(f, t, \theta_{i d}\right)=-\sum_{i=1}^{n}-p_{i} \log \hat{p}_{i}=-\log \hat{p}_{t} \\ \operatorname{Verif}\left(f_{i}, f_{j}, y_{i j}, \theta_{v e}\right)=\left\{\begin{array}{ll} \frac{1}{2}\left\|f_{i}-f_{j}\right\|_{2}^{2} & \text { if } y_{i j}=1 \\ \frac{1}{2} \max \left(0, m-\left\|f_{i}-f_{j}\right\|_{2}\right)^{2} & \text { if } y_{i j}=-1 \end{array}\right. \]

這種Softmax Loss + 其他損失 構成的聯合損失比較常見,通過引入Softmax Loss可以讓訓練更穩定,更容易收斂,

Triplet Loss - CVPR2015

Contrastive Loss的輸入是一對樣本,

Triplet Loss的輸入是3個樣本,1對正樣本(同一個人),1對負樣本(不同人),希望拉近正樣本間的距離,拉開負樣本間的距離,Triplet Loss出自《FaceNet: A Unified Embedding for Face Recognition and Clustering》,

triplet-loss.png

損失函式如下,

\[\mathcal{L}_t = \sum_{i}^{N}\left[\left\|f\left(x_{i}^{a}\right)-f\left(x_{i}^{p}\right)\right\|_{2}^{2}-\left\|f\left(x_{i}^{a}\right)-f\left(x_{i}^{n}\right)\right\|_{2}^{2}+\alpha\right]_{+} \]

該損失希望在拉近正樣本、拉開負樣本的同時,有一個margin,

\[\left\|f\left(x_{i}^{a}\right)-f\left(x_{i}^{p}\right)\right\|_{2}^{2}+\alpha<\left\|f\left(x_{i}^{a}\right)-f\left(x_{i}^{n}\right)\right\|_{2}^{2} \]

Softmax Loss最后的全連接層引數量與人數成正比,在大規模資料集上,對顯存提出了挑戰,

Contrastive Loss和Triplet Loss的輸入為pair和triplet,方便在大資料集上訓練,但pair和triplet挑選有難度,訓練不穩定難收斂,可與Softmax Loss搭配使用,或構成聯合損失,或一前一后,用Softmax Loss先“熱身”,

Center Loss - ECCV2016

因為人臉表情和角度的變化,同一個人的類內距離甚至可能大于不同人的類間距離,Center Loss的出發點在于,不僅希望類間可分,還希望類內緊湊,前者通過Softmax loss實作,后者通過Center Loss實作,如下所示,為每個類別分配一個可學習的類中心,計算每個樣本到各自類中心的距離,距離之和越小表示類內越緊湊,

\[\mathcal{L}_{c e}=\frac{1}{2} \sum_{i=1}^{N}\left\|x_{i}-c_{y_{i}}\right\|_{2}^{2} \]

聯合損失如下,通過超引數\(\lambda\)來平衡兩個損失,并給兩個損失分配不同的學習率,

\[\begin{aligned} L_{c} &=L_{s}+\lambda L_{c e} \\ &=-\sum_{i=1}^{N_{b}} \log \frac{e^{W_{y_{i}}^{T} x_{i}+b_{y_{i}}}}{\sum_{j=1}^{n} e^{W_{j}^{T} x_{i}+b_{j}}}+\frac{\lambda}{2} \sum_{i=1}^{N_b}\left\|x_{i}-c_{y_{i}}\right\|_{2}^{2} \end{aligned} \]

center-loss-algorithm.png

希望達成的效果如下,

center-loss-distribution-of-features.png

以上損失在歐氏距離上優化,下面介紹在余弦距離上優化的損失函式,

L-Softmax Loss - ICML2016

L-Softmax 即 large-margin softmax,出自《Large-Margin Softmax Loss for Convolutional Neural Networks》,

若忽略bias,FC+softmax+cross entropy可寫成如下形式,

\[L_{i}=-\log \left(\frac{e^{\left\|\boldsymbol{W}_{y_{i}}\right\|\left\|\boldsymbol{x}_{i}\right\| \cos \left(\theta_{y_{i}}\right)}}{\sum_{j} e^{\left\|\boldsymbol{W}_{j}\right\|\left\|\boldsymbol{x}_{i}\right\| \cos \left(\theta_{j}\right)}}\right) \]

可將\(\boldsymbol{W}_{j}\)視為第\(j\)類的類中心向量,對\(x_i\),希望\(\left\|\boldsymbol{W}_{y_{i}}\right\|\left\|\boldsymbol{x}_{i}\right\| \cos \left(\theta_{y_{i}}\right)\)相比\(\left\|\boldsymbol{W}_{j}\right\|\left\|\boldsymbol{x}_{i}\right\| \cos \left(\theta_{j}\right), j \neq y_i\)越大越好,有兩個影響因素,

  • \(\boldsymbol{W}\)每一列的模
  • \(\boldsymbol{x}_i\)\(\boldsymbol{W}_j\)的夾角

L-Softmax主要關注在第2個因素 夾角上,相比Softmax,希望\(\boldsymbol{x}_i\)\(\boldsymbol{W}_{y_i}\)靠得更近,于是對\(\cos \left(\theta_{y_{i}}\right)\)施加了更強的約束,對角度\(\theta_{y_i}\)乘上個因子\(m\)如果想獲得與Softmax相同的內積值,需要\(\theta_{y_i}\)更小

\[L_{i}=-\log \left(\frac{e^{\left\|\boldsymbol{W}_{y_{i}}\right\|\left\|\boldsymbol{x}_{i}\right\| \psi\left(\theta_{y_{i}}\right)}}{e^{\left\|\boldsymbol{W}_{y_{i}}\right\|\left\|\boldsymbol{x}_{i}\right\| \psi\left(\theta_{y_{i}}\right)}+\sum_{j \neq y_{i}} e^{\left\|\boldsymbol{W}_{j}\right\|\left\|\boldsymbol{x}_{i}\right\| \cos \left(\theta_{j}\right)}}\right) \]

為此,需要構造\(\psi(\theta)\),需滿足如下條件

  • \(\psi(\theta) < cos(\theta)\)
  • 單調遞減

文中構造的\(\psi(\theta)\)如下,通過\(m\)調整margin大小

\[\psi(\theta)=(-1)^{k} \cos (m \theta)-2 k, \quad \theta \in\left[\frac{k \pi}{m}, \frac{(k+1) \pi}{m}\right], k \in [0, m-1] \]

\(m=2\)時,如下所示,

L-Softmax-phi.png

二分類情況下,結合解釋如下,

L-Softmax-Geometric-Interpretation.png

為了梯度計算和反向傳播,將\(\cos(\theta)\)替換為僅包含\(W\)\(w_i\)的運算式\(\frac{\boldsymbol{W}_{j}^{T} \boldsymbol{x}_{i}}{\left\|\boldsymbol{W}_{j}\right\|\left\|\boldsymbol{x}_{i}\right\|}\),通過倍角公式計算\(\cos(m \theta)\)

\[\begin{aligned} \cos \left(m \theta_{y_{i}}\right) &=C_{m}^{0} \cos ^{m}\left(\theta_{y_{i}}\right)-C_{m}^{2} \cos ^{m-2}\left(\theta_{y_{i}}\right)\left(1-\cos ^{2}\left(\theta_{y_{i}}\right)\right) \\ &+C_{m}^{4} \cos ^{m-4}\left(\theta_{y_{i}}\right)\left(1-\cos ^{2}\left(\theta_{y_{i}}\right)\right)^{2}+\cdots \\ &(-1)^{n} C_{m}^{2 n} \cos ^{m-2 n}\left(\theta_{y_{i}}\right)\left(1-\cos ^{2}\left(\theta_{y_{i}}\right)\right)^{n}+\cdots \end{aligned} \]

同時,為了便于訓練,定義超引數\(\lambda\),將\(\left\|\boldsymbol{W}_{y_{i}}\right\|\left\|\boldsymbol{x}_{i}\right\| \psi\left(\theta_{y_{i}}\right)\)替換為\(f_{y_i}\)

\[f_{y_{i}}=\frac{\lambda\left\|\boldsymbol{W}_{y_{i}}\right\|\left\|\boldsymbol{x}_{i}\right\| \cos \left(\theta_{y_{i}}\right)+\left\|\boldsymbol{W}_{y_{i}}\right\|\left\|\boldsymbol{x}_{i}\right\| \psi\left(\theta_{y_{i}}\right)}{1+\lambda} \]

訓練時,從較大的\(\lambda\)開始,然后逐漸減小,近似于用Softmax“熱身”,

A-Softmax Loss - CVPR2017

A-Softmax即Angular-Softmax,出自《SphereFace: Deep Hypersphere Embedding for Face Recognition》,

L-Softmax中,在對\(x_i\)歸類時,會同時考慮類中心向量的模夾角

A-Softmax的最大差異在于對每個類中心向量進行歸一化,即令\(||W_j|| = 1\),同時令bias為0,在分類時只考慮\(x_i\)\(W_j\)的夾角,并引入和L-Softmax相同的margin,如下所示,

\[\mathcal{L}_{\mathrm{AS}}=-\frac{1}{N} \sum_{i=1}^{N} \log \left(\frac{e^{\left\|\boldsymbol{x}_{i}\right\| \psi\left(\theta_{y_{i}, i}\right)}}{e^{\left\|\boldsymbol{x}_{i}\right\| \psi\left(\theta_{y_{i}, i}\right)}+\sum_{j \neq y_{i}} e^{\left\|\boldsymbol{x}_{i}\right\| \cos \left(\theta_{j, i}\right)}}\right) \\ \psi(\theta_{y_i, i})=(-1)^{k} \cos (m \theta_{y_i, i})-2 k, \quad \theta_{y_i, i} \in\left[\frac{k \pi}{m}, \frac{(k+1) \pi}{m}\right], k \in [0, m-1] \]

\(m=1\)時,即不引入margin時,稱之為 modified softmax loss

Softmax Loss、Modified Softmax Loss和A-Softmax Loss,三者的決策面如下,

A-Softmax-decision-boundaries.png

可視化如下,

A-Softmax-Geometry-Interpretation.png

AM-Softmax Loss-CVPR2018

AM-Softmax即Additive Margin Softmax,出自論文《Additive Margin Softmax for Face Verification》,同CosFace 《CosFace: Large Margin Cosine Loss for Deep Face Recognition》,CosFace中損失名為LMCL(Large Margin Cosine Loss),

與A-Softmax相比,有2點變化,

  • \(x_i\)也做歸一化,同時保留對\(W\)每一列的歸一化以及bias為0
  • \(\cos(m \theta)\)變成\(s \cdot (\cos \theta - m)\)

\[\mathcal{L}_{\mathrm{AM}}=-\frac{1}{N} \sum_{i=1}^{N} \log \frac{e^{s \cdot\left(\cos \theta_{y_{i}}-m\right)}}{e^{s \cdot\left(\cos \theta_{y_{i}}-m\right)}+\sum_{j=1, j \neq y_{i}}^{c} e^{s \cdot \cos \theta_{j}}} \]

相比Softmax,希望獲得更大的類間距離和更小類內距離,如果采用的是余弦距離,意味著,要想獲得與Softmax相同的\(y_i\)對應的分量,需要更小的夾角\(\theta\),為此需要構建\(\psi(\theta)\),如前所述,需要

  • \(\psi(\theta) < cos(\theta)\)
  • 單調遞減

前面構建的\(\psi(\theta)\),始于\(\cos(m \theta)\)\(m\)\(\theta\)是乘的關系,這里令\(\varphi(\theta)= s(\cos (\theta)-m)\)

  • \(\cos(\theta) - m\)\(m\)變乘法為加法,\(\cos(m\theta)\)將margin作用在角度上,\(\cos(\theta) - m\)直接作用在余弦距離上,前者的問題在于對類中心向量夾角較小的情況懲罰較小,夾角小則margin會相對更小,同時計算復雜,后者可以看成是Hard Margin Softmax,希望在保證類間“硬”間距的情況下學習特征映射,

    Additive-Margin.png

  • \(s\):將\(x_i\)也歸一化后,相當于將特征嵌入到單位超球上,表征空間有限,特征和權重歸一化后\(\mid \boldsymbol{W}_{j}\|\| \boldsymbol{x}_{i} \| \cos \left(\theta_{ij}\right)=cos(\theta_{ij})\)的值域為\([-1, 1]\),即\(x_i\)到每個類中心向量的余弦距離,最大為1,最小為-1,Softmax 指數歸一化前,各類的分量差異過小,所以要乘個因子\(s\),將特征映射到半徑為\(s\)的超球上,放大表征空間,拉開各分量的差距,

AM-Softmax-visualization.png

ArcFace Loss - CVPR2019

ArcFace Loss 即 Additive Angular Margin Loss,出自《ArcFace: Additive Angular Margin Loss for Deep Face Recognition》,

AM-Softmax Loss將margin作用在余弦距離上,與之不同的是,ArcFace將margin作用在角度上,其損失函式如下,

\[\mathcal{L}_{\mathrm{AF}}=-\frac{1}{N} \sum_{i=1}^{N} \log \frac{e^{s \cdot\left(\cos \left(\theta_{y_{i}}+m\right)\right)}}{e^{s \cdot\left(\cos \left(\theta_{y_{i}}+m\right)\right)}+\sum_{j=1, j \neq y_{i}}^{n} e^{s \cdot \cos \theta_{j}}} \]

ArcFace.png

把margin是加在余弦距離(CosFace)還是加在角度(ArcFace)上,在《Additive Margin Softmax for Face Verification》中有這樣一段分析,

Angular-Margin-or-Cosine-Margin.png

ArcFace中并沒有求取arccos,所以計算并不復雜,而是把margin加在了角度上,但優化的仍是余弦距離,

還有一點需要注意的是,無論margin是加在余弦距離上還是加在角度上,單純看示意圖,很容易看出減少了類內距離,那類間距離增加呢?

文中,給出了類內距離和類間距離的數學描述,如下:

\[L_{Intra}=\frac{1}{\pi N} \sum_{i=1}^{N} \theta_{y_{i}} \\ L_{Inter}=-\frac{1}{\pi N(n-1)} \sum_{i=1}^{N} \sum_{j=1, j \neq y_{i}}^{n} \arccos \left(W_{y_{i}}^{T} W_{j}\right) \]

\(W\)是待學習的引數,特征\(x_i\)也是通過前面層的權重學習得到,在訓練程序中\(x_i\)\(W\)都會發生變化,都會被梯度驅使著向Loss減小的方向移動,margin的引入有意壓低了類標簽對應分量的值,去盡量“壓榨”模型的潛力,在softmax中原本可以收斂的位置還需要繼續下降,下降可以通過提高類標簽對應分量的值,也可以通過降低其他分量的值,所以,\(x_i\)在向\(W_{y_i}\)靠近的同時,\(W_j, j\neq y_i\)也可能在向遠離\(x_i\)的方向移動,最終達成的效果就可能是\(x_i\)盡可能地靠近\(W_{y_i}\),而\(W_j, j\neq y_i\)遠離了\(W_{y_i}\)

歐氏距離or角度距離與歸一化

這里,再討論下為什么對\(W\)\(x\)的模進行歸一化,主觀思考偏多,未經驗證,

在文章為什么要做特征歸一化/標準化?中,我們提到,

歸一化/標準化的目的是為了獲得某種“無關性”——偏置無關、尺度無關、長度無關……當歸一化/標準化方法背后的物理意義和幾何含義與當前問題的需要相契合時,其對解決該問題就有正向作用,反之,就會起反作用,

特征\(x\)\(W\)每個類中心向量內積的結果,取決于\(x\)的模、\(W_j\)的模以及它們的夾角,模的大小和夾角的大小都將影響內積結果的大小,

  • \(W_j\)歸一化:如果訓練集存在較嚴重的類別不均衡,網路將傾向于把輸入影像劃分到圖片數量多的類別,這種傾向將反映在類中心向量的模上,即圖片數量多的類別其類中心向量的模將偏大,這一點論文One-shot Face Recognition by Promoting Underrepresented Classes中有實驗驗證,所以,\(W_j\)的模歸一化相當于強迫網路同等看待每一個類別,相當于把同等看待每一個人的先驗做進網路,來緩解類別不均衡問題,

  • \(x\)歸一化:對某一個具體的\(x_i\),其與每個類中心的內積 為 \(x_i \cdot W_j = |x_i||W_j|\cos \theta_{ij} = |x_i|\cos \theta_{ij}\),因為每個類別的內積結果都含\(x_i\)的模,\(x_i\)的模是否歸一化似乎并不影響內積結果間的大小關系,但會影響損失的大小,比如內積結果分別為\([4,1,1,1]\),模同時放大1倍,變成\([8,2,2,2]\),經過Softmax的指數歸一化后,后者的損失更小,在卷積神經網路之卷積計算、作用與思想中,我們知道模式蘊含在卷積核的權重當中,特征代表著與某種模式的相似程度,越相似回應越大,什么樣的輸入影像容易得到模小的特征,首先是數值尺度較小的輸入影像,這點可以通過對輸入影像做歸一化解決(如果輸入影像的歸一化不夠,對特征進行歸一化可能可以緩解這個問題),然后是那些模糊的、大角度的、有遮擋的人臉影像其特征的模會較小,這些圖在訓練集中相當于困難樣本,如果他們的數量不多,就可能會被簡單樣本淹沒掉,從這個角度看,對\(x\)進行歸一化,可能可以讓網路相對更關注到這些困難樣本,去找到更細節的特征,專注在角度上進行判別,進一步壓榨網路的潛能,有點Focal Loss思想的感覺,

網路會利用它可能利用上的一切手段來降低損失,有些手段可能并不是你所期望的,此時,通過調整資料、融入先驗、添加正則等方式抑制那些你不希望網路采取的手段,修正網路進化的方式,以此讓網路朝著你期望的方向成長,

以上,

參考

  • A Performance Comparison of Loss Functions for Deep Face Recognition
  • InsightFace: 2D and 3D Face Analysis Project
  • 人臉識別的LOSS(上)
  • 人臉識別的LOSS(下)
  • 深度挖坑:從資料角度看人臉識別中Feature Normalization,Weight Normalization以及Triplet的作用

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/83551.html

標籤:其他

上一篇:5個步驟實作目標檢測

下一篇:【目標檢測】:SPP-Net深入理解(從R-CNN到SPP-Net)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more