廣義網路結構:
前饋神經網路
卷積神經網路
迴圈神經網路lstm gru
雙向迴圈神經網路bi-lstm bi-gru(了解)
網路中的特殊單元:
bn(為什麼可以加快學習)
用1x1的感受域來減少變數數(為什麼可以加快學習)
用兩2層3x3的感受域的卷積,代替5x5感受域的卷積(為什麼可以優化網路)
用1x3感受域的卷積加上3x1感受域的卷積來代替3x3感受域的卷積(為什麼可以優化網路)
residual block(為什麼可以加快學習,為什麼可以優化網路)
狹義網路結構:
不同的結構和單元的堆疊
主流網路結構有vgg,resnet,densenet,inception v4,xception
聲音的轉化方法:
傅利葉變換,cqt,mfcc
傅利葉變換是把乙個波形圖在時間上的影象進行頻域上的解析生成的頻譜圖
cqt是以樂理為依據來改進單純的傅利葉變換生成的頻譜圖,而最後生成cqt的圖
mfcc是以人的耳蝸對頻率的敏感程度為依據來改進單純的傅利葉變換生成的頻譜圖,而最後生成mfcc的圖
傅利葉變換的抽象理解:
機器學習演算法都是乙個擬合過程,傅利葉也不例外
古有泰勒公式擬合函式,今有三角函式擬合函式,這也就是傅利葉變換
泰勒公式是多項式的組合,傅利葉就是三角函式單元的組合
三角函式單元包含3個變數,acos(bx+c),a振幅和b與頻率相關,c與相位相關
傅利葉變換就是通過確定b的值來求a和c的值
其實細細想想,傅利葉變換只能去擬合乙個有週期的函式,那麼乙個沒有週期的函式怎麼去擬合呢
以數學的思維去思考,如果乙個函式影象分成無限等份,那麼我們可以認為沒等份都是某個有週期的函式的一部分
所以我們一般的做法是把函式影象按視窗平移(具體方法見移窗)的方法分成很多份,對每份都進行單獨的傅利葉變換。
最後可以得到兩張圖,第一張是x為時間,y為頻率的頻譜圖;第二張是x為時間,y為相位的相位圖
移窗:
為什麼不像切菜一樣切成n等份呢?為什麼要移窗?窗是矩形的嗎?
1乙個波形圖特徵的重點之一是在於波峰的特徵的,如果一刀把波峰切成兩段了,那麼就會影響到傅利葉特徵的轉換。
2所以我們一般都是有重疊的進行移窗來,避免把波峰給分成兩部分,就算切了波峰,下一次移窗也會把那個波峰重用一遍。
3窗不是矩形的,把波峰切斷是不可避免的,那麼怎麼盡量丟掉切斷後的沒用的波峰,使其他的波峰特徵都集中在視窗的中心呢,這就需要乙個類似於三角形的窗來在函式影象上移動了,三角形的形狀可以把靠近兩邊邊緣的較高點給排除,而不會影響到中心區域的波峰。
深度學習中的注意力機制:
抽象概念,就像人一樣有一定的注意力一樣,我們也可以給神經網路加進一些結構,來學習到對不同資料的敏感度
在gru和lstm單元中就用到了這種思想,再比如gtu、glu一些創新形的啟用函式就用到了注意力機制。
機器學習演算法:
貝葉斯——概率模型
決策樹——基於資訊熵的理論
向量機——基於空間的理論。把乙個平面不可分的分類問題,對映到更高維度,使其接近平面可分。比如在二維空間,線性不可分,利用核函式,對映到三維,使其平面可分。
pca降維:
基本思想就是如果資料在某乙個維度上的對映是乙個隨機模型,也就是滿足正態分佈的話,就可以認為這個維度對於資料特徵來說是沒有意義的,就可以把這個維度給刪除了。
抽象理解,在空間上pca是通過旋轉參考係的方法來改變維度上對映的分布,從而降低了特徵維度。
深度學習的網路設計思考
1.用更密集、不同的的卷積尺寸來適應不同的特徵。
2.隨著網路加深,特徵的尺寸在卷積下慢慢變大,所以後面大尺寸的卷積也要增加
3.如果網路足夠深,特徵足夠抽象,可以同pooling來代替全連線
4.在網路開始的階段,不能一開始就高度壓縮特徵,容易表達瓶頸。一般來說維度也會逐漸增加
5.在低維上進行空間匯聚,比如在進行3x3卷積之前,可以對輸入先進行降維而不會產生嚴重的後果。假設資訊可以被簡單壓縮,那麼訓練就會加快。比如1*1的卷積
6.5*5變成3*3不會影響網路效能,並且會提高;但是1*3+3*1代替3*3,就會降低效能,所以在網路的開始的地方就不能進行這種變換,而在網路後面特徵已經很明顯,很穩定的層就可以使用這種變換,因為特徵已經足夠明顯,傻子都能識別出來(對於mxm大小的feature map,建議m在12到20之間)。
7.現在的網路學習的效能不是說網路越深,在效能的表現上就會越好,網路太深帶來的影響包括:過擬合和網路退化。過擬合好理解,就是學的太多而導致在測試集上的表現不好,網路退化是由於梯度消失導致學習停止、引數過多導致訓練更加困難(掉入區域性最優)。
8.residual block使下一層引數的優化會考慮到上一層的特徵,使網路的優化方向不是那麼極端,這樣避免了過擬合也在一定程度上減低了梯度下降的嚴重性。
9.densenet更極端,不僅接受上一層的特徵,它接受上面所有層的特徵。
機器學習知識體系
機器學習 machine learning,ml 是一門多領域交叉學科,涉及概率論 統計學 逼近論 凸分析 演算法複雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的效能。機器學習包含多交叉學科,同時也在很多方面得到應用,如...
python知識體系 學習大綱
iso國際標準組織製作了網路體系結構標準 osi模型7層框架,分層的目的是降低耦合度,每一層實現一定的功能。將這些模組按照一定的順序進行組合,條理清晰。按照規定功能,順序排列的體系結構 osi模型。層次結構 每一層都要求實現的功能 應用層 實現應用程序之間的資訊交換。同時還有一系列的業務處理所需要的...
canvas知識體系
把canvas想象成乙個畫板 乙個繪製狀態,可模擬畫圖工具中的工具欄 繪圖元素,包括簡單的圖形,線條,複雜的組合,和 繪製模式,比如畫板中的圖形存在繪製的先後順序,而存在重疊部分,該如何顯示存在重疊的圖形,這是繪製模式要解決的問題 裁切路徑,只讓畫板的部分可見 畫素操作,操作imagedata的畫素...