深度學習入門之 基本概念

1、機器學習:

根據我的理解,機器學習就是讓電腦自動學習或者是訓練出一個好的模型來解決實際問題。

圖一  機器學習

如上圖所示,模型類似於函數,輸入可能爲向量(圖像矩陣轉化爲向量輸入),輸出可能爲離散值如分類問題(比如手寫數字預測),也可能是連續值是迴歸問題(比如預測房屋面積與工資的關係)。

機器學習可以分爲三類:監督學習、非監督學習、強化學習

  • 監督學習:是知道正確答案,根據訓練樣本不停的學習,使模型學習到一種規則(或是調節權值,使結果最優)。
  • 無監督學習:沒有輸出,只有大量的樣本,機器自己從大量的樣本中找出規律。
  • 強化學習:沒有樣本之類的東西,只有主體和環境,通過價值和獎勵這兩個概念,主體和環境不斷地交互來學習,最後達成一個目標。(好像阿爾法狗的弟弟就是自己和自己下棋,而不是通過輸入大量棋局來學習的,具體我也不太清楚)

2、監督學習:

簡單的介紹幾種監督學習模型:

  • 邏輯迴歸:比如簡單的線性模型y=\omega ^{\tau }x+b 用其進行簡單的分類 。
  • 支持向量機(SVM): 首先SVM可以使用核函數來處理非線性的場景。其基本思想就是劃分的直線距離兩類數據的間隔越大越好(如下圖的H3直線就是最佳的選擇)。

                     

         

  • 樸素貝葉斯分類器:假設樣本的特徵在給定分類條件下是相互獨立的。該模型利用貝葉斯公式來進行統計計算,實現分類的作用。

3、衡量模型的指標:

簡單介紹準確率、精度、召回率:

  • 準確率:準確預測的數量除以總的樣本數量。
  • 精度:正確預測的樣本數量除以該分類樣本的數量。
  • 召回率:正確預測的樣本數量除以預測成該分類的數量。

是不是還是不太理解?用例子介紹一下,如下圖第一行的5,2,0分別表示:5只貓被預測爲貓,2只狗被預測爲貓,0只兔子被預測成貓。第一列5,3,0表示:5只貓被預測爲貓,3只貓被預測爲狗,0只貓被預測成兔子。下面我們來說一下三個值是如何計算的:

  • 準確率=(5+3+11)/27(5+3+11)/27   即對角線之和除以全部數據的和。
  • 精度(以狗的精度爲例)=3/(3+3+2) 預測正確的數量/所在行
  • 召回率(以狗爲例)=3/(2+3+1) 預測正確的數量/所在列

             

4、損失函數:

通過數據訓練,如很判斷數據訓練最後的好壞呢?損失函數(或者目標函數)來衡量參數的好壞,知道了好壞才能進行對權重參數的修改啊。損失函數有許多求法,如交叉熵等。或者簡單地說,你可以把最後的結果與答案求差、絕對值或者求平方。

5、優化:

模型最重要的就是優化,通過損失函數來進行不斷地調整優化,那麼如何進行優化那?目前常見的是梯度優化,梯度優化又有三個變種:隨機梯度下降SGD、批量梯度下降BGD、小批量梯度下降MBGD。參考博文https://blog.csdn.net/weixin_42152164/article/details/80994466      https://blog.csdn.net/philthinker/article/details/80615122

6、過擬合:

過分的抓取數據的特徵,結果本末倒置沒有學習到數據的特徵。如下圖所示,常見的預防過擬合的方法有利用Dropout方法、或數據增強,具體可以自己百度一下。

第三個表示過擬合

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章