全鏈接的話權重太多git
padding的存在是由於咱們作卷積操做的時候會引起數據急劇減小,padding能夠解決github
步長的設置問題
p = (n*s - n + f - s) / 2
When s = 1 ==> P = (f-1) / 2算法
卷積層也有長、寬和通道數,其中卷基層的通道數須要和圖像一致windows
一個探測器在某個部分有用那麼在另外一個部分也極可能有用網絡
每一層中,每一個輸出值只和部分的輸入有關ide
爲了識別32321
Conv ==> Pool ==> Conv ==> Pool ==> FC ==> FC ==> softmaxsvg
Conv => Max-pool => Conv => Max-pool => Conv => Conv => Conv => Max-pool ==> Flatten ==> FC ==> FC ==> Softmax函數
如上圖,實際上就是在網絡中加入了一些shortcut性能
這個是保持不變的學習
就是用了殘差單元的網絡
加入了易於學到的線性映射
1*1的卷積單元,也叫network in network
這種結構在如下狀況下有用:
Inception的基本思想是:在網絡的構造中,咱們不是去選擇使用什麼層(好比說是11的卷積仍是33的卷積仍是pooling等),而是把它們都用上,讓算法本身選
很容易想到這個時候計算量會很大,因此通常會採用1*1的卷積層來下降計算量。而且實踐代表這種對於性能影響很小。
圖像可使用翻轉、截取、顏色變換等技巧進行數據加強
作object detection咱們不光要在標籤給出類別,還要給出bounding box的位置
Y = [ Pc # Probability of an object is presented bx # Bounding box by # Bounding box bh # Bounding box bw # Bounding box c1 # The classes c2 … ]
L(y',y) = { (y1'-y1)^2 + (y2'-y2)^2 + … if y1 = 1 (y1'-y1)^2 if y1 = 0 }
對於某些應用,如人臉檢測的時候,你但願把眼睛位置一塊兒標記出來,這時候就能夠在label中把這些座標也加進去
簡單的說就是你選個窗口大小,而後按照必定重複進行劃窗,選用分類器對這些進行分類,而後合併一些有物體重複的窗,最後選出來最佳的窗格。
對於傳統算法通常選擇線性分類器,這樣的話速度纔夠。可是這樣精度不太好,深度學習則複雜度會過高。因此通常有兩種方案:
本質上就是將傳統卷積網的最後的全鏈接層也換成是卷積層,而後其實就能夠一塊兒把移動窗口作了
先把圖像分塊,而後每一個地方用上面的卷積滑動窗口預測獲得窗口
IoU,即評價detection的方式,等於交集除以並集
如上圖,紅色的是真實值,紫色的是預測值,而後能夠計算
若是IoU> 0.5就說明表現還不錯
用前面的方法咱們能夠會屢次檢測到同一個物體,這個方法能夠解決這個問題
若是有多個類別,咱們就須要重複以上屢次
上面的技巧只能解決單個物體,若是有多個重合的物體就會比較難辦。
anchor box感受上就是把多個單個的box鏈接起來。也可使用聚類的方式來作
YOLO算法其實就是綜合用了上面的這些技巧
首先用基於卷積的移動窗口
移除預測機率低的
移除IoU低的
YOLO在識別小物體時效果不是太好
其餘的檢測算法還有R-CNN、SSD等
verification就是給你一我的和他的id,判斷是否是這我的。recognition就是給一我的的圖片,若是他是庫中k我的之一就輸出其id
從這我的的一張圖片就可以學習出識別他的系統。這個實際上是基於類似度函數。即我經過一個網絡抽取特徵(這個網絡是提早訓練好的),而後比較新來的人的特徵和這裏的是否是吻合。也能夠直接預訓練一個分類器
給定三個圖片A(目標圖片)、P(正樣本)、N(負樣本)
L(A, P, N) = max (||f(A) - f(P)||2 - ||f(A) - f(N)||2 + alpha , 0)
獲得特徵算距離
這個問題其實有兩方面意義:
這裏的損失函數是經過style cost function和content cost function
用來衡量生成的圖像G和原始內容提供圖像C之間的不一樣,這裏經過訓練好的神經網絡來衡量兩個圖像content的類似度。其基本想法是,神經網絡的每一層能夠提取圖像的一些特徵,那麼我用圖片在某一層的激活值就能夠表示圖像的內容。而後兩個圖像C和G都通過這個神經網絡取同一層就能夠了(這裏通常是取中間層的結果,我猜想是太淺的話不能抓住足夠的信息,太深的話就過於細節化了而不會和風格遷移;而後最終通常也是算幾層取個加權平均,而在content裏面則不會取平均)。最後loss表示爲:
用來衡量生成的圖像G和風格提供圖像S之間的風格的不一樣。基本思想是首先對於每一幅圖構建一個 style matrix(數學上叫作Gram matrix),而後比較這兩個matrix的差距,計算公式以下
模型的構建遵循:Create->Compile->Fit/Train->Evaluate/Test
https://github.com/mbadry1/DeepLearning.ai-Summary