人工智慧的熱度逐漸上公升,身邊許多人都投身於這方面開始學習,所以最近我也研究了些深度學習方面的知識,在刷完了網易雲andrew ng的課程之後就流浪在github與csdn中,雖然了解了基本原理但是感覺自己動手建立模型還是有些難度的。
在學習的過程中我會發現有幾個關鍵點是我們必須要明確的,可能我們在聽課的時候會一帶而過,像是什麼梯度、損失函式啊,但是如果不理解他們的作用,會很難展開接下來的學習,故在此總結出這幾個模糊的概念。
1、機器學習與深度學習還有人工智慧的關係
可以這麼理解:深度學習是機器學習的子集,機器學習是人工智慧的子集。
要搞清它們的關係,最直觀的表述方式就是同心圓,最先出現的是理念,然後是機器學習,當機器學習繁榮之後就出現了深度學習,今天的ai大爆發是由深度學習驅動的。
2、什麼是感知器
第一次見到這個詞我也是蒙的,後來查了下發現他其實就是我們神經網路裡面的神經元(據說是乙個里程碑式的存在),了解神經網路的小夥伴可能瞬間就懂了,神經元其實就是做基本決策的,舉個例子,我今天晚上想要打遊戲,然後要考慮的是有沒有作業要寫、有沒有朋友叫出去玩、加不加班啊。。等等,這些因素都會有相應的權重,然後把這些權重都加在一起通過啟用函式來判斷晚上能不能打遊戲。
可以看出這個感知器有 輸入的權重w、偏置項b、啟用函式g()、輸出向量y 正向輸出通常由y = g(wx + b)推導得出
3、損失函式(loss function)
損失函式(loss function)是用來估量你模型的**值f(x)與真實值y的不一致程度,它是乙個非負實值函式,通常使用l(y, f(x))來表示,損失函式越小,模型的魯棒性就越好。損失函式是經驗風險函式的核心部分,也是結構風險函式重要組成部分。
4、啟用函式
啟用函式是為了給神經網路加入非線性的影響,不加啟用函式也是可以實現的可以解決線性分類的問題,但是如果是非線性問題上效果會很差,加入了啟用函式後可以讓我們的神經網路解決更複雜的問題,常見的啟用函式有 sigmoid函式 tanh函式 (relu函式)目前relu是最受歡迎的,相比起sigmoid和tanh,relu在sgd中能夠快速收斂,有效緩解了梯度消失的問題。
啟用函式部分可以參考
5、學習率
學習率的大小對模型有著極大的影響,可以通過經驗手工調整嘗試不同的學習率,例如1、0.1、0.3、0.001觀察迭代次數與損失函式的變化,確定出loss最快的學習率,學習率決定了引數移動到最優值的速度快慢。如果學習率過大很可能會越過最優值,如果學習率過小會造成優化效率底下,收斂速度緩慢。
6、梯度下降
梯度:多元引數求偏導以向量的形式寫出就是梯度
梯度下降:是用來我們優化演算法的過程中最小化loss函式的方式,因為偏導數的幾何意義是函式變化的快慢,所以我們可以最快尋找到函式的最小值,從而確定反向傳播計算出更合適的權重w。這麼說可能比較抽象,再舉個andrew ng老師的栗子:我們在某一座高山的山頂,不知道怎麼走,環視四周後每次都選擇最陡峭的方向下山,每走一次就計算一次梯度,然後再次選擇最陡峭的方向直到我們走到最低點,當然這裡可能是區域性最低點,除非損失函式是凹凸函式。
詳細的推導公式請參見
這篇部落格給我啟發很多,關於深度學習的講解與公式推導十分詳細
7、過擬合與欠擬合
過擬合與欠擬合一般在引數設定不當發生,過擬合是對於**過於嚴格對於雜訊沒有選擇性的省略,欠擬合是指要求過於寬泛是演算法不能正確的分類或**。
就先總結這麼多,都是個人的一些感悟,平時都是防止遺忘總結在私有雲筆記上的,第一次在csdn上發部落格寫的有些躡手躡腳,歡迎各位大牛批評指正。
BE 名詞解釋
1 名詞解釋 介質 用於備份資料的裝置,如磁帶庫,磁碟資料夾,相當於乙個檔案。介質集 相當與乙個資料夾,管理該資料夾下的所有介質。介質伺服器 安裝be的機器。清點 inventory 對匯入的介質必須清點,才能使用。檢查一遍所有的磁帶,確保磁帶可以使用。編錄 catalog 對匯入的介質必須編錄,才...
模組耦合名詞解釋 名詞解釋 簡答
c s 又稱client server 或客戶伺服器模式 對伺服器要求不用太高,穩定即可,建議使用 windows server 伺服器。客戶端需要安裝專用的客戶端軟體,客戶端應為 windows 作業系統。c s的優點是能充分發揮客戶端 pc的處理能力,很多任務作可以在客戶端處理後再提交 給伺服器...
PDA名詞解釋
pda概述 目前,對pda還有一種狹義的理解。狹義的pda指可以稱作電子記事本,其功能較為單一,主要是管理個人資訊,如通訊錄 記事和備忘 日程安排 便箋 計算器 錄音和辭典等功能。而且這些功 能都是固化的,不能根據使用者的要求增加新的功能。廣義的pda主要指掌上電腦,當然也包括其他具有類似功能的小型...