機器學習的簡單理解

比如預測一張圖片上是否有貓,首先要得到一個計算公式,把圖片帶進去可以計算得出1或者0,表示圖片有貓和無貓兩種情況。這個計算公式的輸入是圖片的特徵,比如一張圖片是64*64大小,RGB三種顏色,那麼這張圖片的特徵數量就是64*64*3=12288這麼多個,其中64*64表示圖片上的像素的數量,3表示每個像素點點RGB數值,所以這種圖片的特徵總數就是12288個,其實就是圖片上的所有點的RGB數值。圖片以一維向量的方式輸入到計算公式,公式裏面的參數經過訓練集的訓練得到,可以以一定的概率通過測試集的測試,一般這個概率在95%以上。計算公式做了什麼呢,其實就是將一維向量的各個元素加權求和,再加上一個偏移量,再功過一個函數轉化爲0-1之間的小數,如果這個小數大於0.5則認爲有貓,反之無貓。

result = sigmoid(wx+b),其中w爲各元素的權重,b爲偏移量,這是一個線性模型

sigmoid函數的作用就是將wx+b的結果轉換到0-1區間

w和b如何得到呢,這就需要用到監督學習了,學習過程中有一個訓練集,有標籤(表示訓練集中的圖片是否存在貓咪),訓練完了還有測試集,用於測試訓練結果。在這個模型中,訓練的對象是w和b,要不斷地調整這兩個參數,使得預測準確率越來越高,因此需要得到一個關於準確率和w,b的函數L,求出dL/dw,dL/db,通過梯度下降算法來更新w和b,達到不斷優化的目的。其中L叫做損失函數,其實是通過交叉熵來計算,爲什麼用他而不知平方差求和,還需要進一步瞭解學習。

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