神經網絡很萌的!
0. 分類
神經網絡最重要的用途是分類,為了讓大家對分類有個直觀的認識,咱們先看幾個例子:
垃圾郵件辨識:現在有一封電子郵件,把出現在裏面的所有詞匯提取出來,送進一個機器裏,機器需要判斷這封郵件是否是垃圾郵件。
疾病判斷:病人到醫院去做了一大堆肝功、尿檢測驗,把測驗結果送進一個機器裏,機器需要判斷這個病人是否得病,得的什麽病。
貓狗分類:有一大堆貓、狗照片,把每一張照片送進一個機器裏,機器需要判斷這幅照片裏的東西是貓還是狗。
這種能自動對輸入的東西進行分類的機器,就叫做分類器。
分類器的輸入是一個數值向量,叫做特征(向量)。在第一個例子裏,分類器的輸入是一堆0、1值,表示字典裏的每一個詞是否在郵件中出現,比如向量(1,1,0,0,0......)就表示這封郵件裏只出現了兩個詞abandon和abnormal;第二個例子裏,分類器的輸入是一堆化驗指標;第三個例子裏,分類器的輸入是照片,假如每一張照片都是320*240像素的紅綠藍三通道彩色照片,那麽分類器的輸入就是一個長度為320*240*3=230400的向量。
分類器的輸出也是數值。第一個例子中,輸出1表示郵件是垃圾郵件,輸出0則說明郵件是正常郵件;第二個例子中,輸出0表示健康,輸出1表示有甲肝,輸出2表示有乙肝,輸出3表示有曲奇等等;第三個例子中,輸出0表示圖片中是狗,輸出1表示是貓。
分類器的目標就是讓正確分類的比例盡可能高。一般我們需要首先收集一些樣本,人為標記上正確分類結果,然後用這些標記好的數據訓練分類器,訓練好的分類器就可以在新來的特征向量上工作了。
1. 神經元
咱們假設分類器的輸入是透過某種途徑獲得的兩個值,輸出是0和1,比如分別代表貓和狗。現在有一些樣本: