一般來說,訓練深度學習網路的方式主要有四種:
監督學習
是指用已經標記好的資料,做訓練模型來**新資料的類別。無監督學習
是指不需要提前對資料進行標記,直接對它們進行聚類。半監督學習
是指同時用了有監督學習的方法和無監督學習的方法。準確來說是同時用來標記好的資料和未標記的資料。強化學習
強化學習也是使用未標記的資料,但是可以通過某種方法知道你是離正確答案越來越近還是越來越遠。以上只是給出各個神經網路學習方法的基本概念,基本上初次接觸深度學習基本不知道它講的是啥,它們的定義都是從資料層面來看的,我們需要先理解什麼叫做標記好的資料和未標記好的資料,脫離資料談深度學習基本都是瞎扯,我們訓練模型都是為了讓計算機學習到一些東西,而資料就可以說是我們的一些先驗知識。
什麼是標記好的資料?
舉個例子吧,比如我們有很多貓的和狗的,我們分別給這些打上標籤(label),用來告訴計算機哪些是貓的,哪些是狗的,類似這些資料就是標記好的資料。而未標記好的資料則是沒有被打上標籤的。
引用自:莫煩python
目前筆者接觸深度學習並不多,都還處於監督學習的階段當中,所以這裡說的資料集也是基於監督學習來說的。我們在進行有監督的神經網路學習當中,經常會談到以下幾個資料集:
訓練集
字面意思,就是用來訓練模型的資料集。驗證集
作用是當通過訓練集訓練出多個模型之後,使用各個模型對驗證集進行**,並記錄模型的準確率。測試集
測試集是從原始資料劃分出來用來**訓練好的模型,通常用來衡量模型的效能和分類能力。必須要注意,測試集是不允許出現在訓練集當中的,不然就沒有意義了。問題:三個資料集該怎麼劃分?是的,這也是筆者在拿到原始資料在進行資料劃分產生的疑惑,關於這三塊資料集有什麼經驗值呢,其實是有的:
小資料集
大資料集
比如100萬資料,我們可以按照以下比例劃分:
具體可以參考吳恩達的深度學習課程。
當資料集有了,模型也訓練出來了,那我們怎麼去評測乙個模型的效能和效果呢,這裡以分類模型來談下如何衡量模型的好壞,不同的模型的評價指標不一樣,後續筆者學到的話也會分享給大家。
分類模型一般會有哪些指標呢?
定義樣本的計算變數:
tp(true positive):正類被**為正類樣本數你可能會比較懵,這裡正樣本指的是正類,比如我要識別一張貓的,貓的就是我們的正樣本,而其他型別的就是我們的負樣本,比如狗的就是負類我們不希望它被識別為貓的。fp(false positive):負類被**為正類樣本數
tn(true negative):負類被**為負類樣本數
fn(false negative):正類被**為負類樣本數
正確率
對於給定的測試集,分類器正確分類的樣本數與總樣本數之比。計算公式:
acc = (tp + tn) / all
精確率
正類被**為正類樣本數佔正類被**為正類樣本數與負類**為正類數之和的比例。計算公式:
prec = tp / tp + fp
召回率(recall)
正類被**為正類樣本數佔正類被**為正類樣本與正類被**為負類之和的比例計算公式:
recall = tp / tp + fn
f1-measure
精確率和召回率的調和均值。計算公式:
f1 = 2pr / p + r
光看計算公式基本也懵了吧,筆者有時候在考慮這一塊的指標也會搞混,引用一張圖來看幾個指標來看看會不會更好理解:
a:(搜到的也想要的)
b:檢索到的,但是不相關的 (搜到的但沒用的)
c:未檢索到的,但卻是相關的 (沒搜到,然而實際上想要的)
d:未檢索到的,也不相關的(沒搜到也沒用的)
圖引用自:我們在實際考慮模型的效果的時候,不一定所有指標都看,得結合我們的應用場景去看我們更關注哪些指標,比如說我們做敏感文字審核,我們可能更關注精確率,我們可能允許一些誤傷,但如果我們要做敏感文字清洗,我們可能更關注召回率,因為我們需要保證正樣本絕大部分被識別出來,漏掉的部分我們可以採取人工的手段去解決。
本篇文章簡單介紹了目前深度學習訓練神經網路的一些方法,介紹了關於監督學習的資料集劃分還介紹了我們怎麼去評測乙個分類模型的好壞,它們的指標有哪些,這是筆者覺得像我們這種深度學習入門者可能要關注的一些點,包括資料和評測方式,希望對你們有幫助。
深度學習(一)深度學習的概念
深度學習是機器學習與神經網路 人工智慧 圖形化建模 優化 模式識別和訊號處理等技術融合後產生的乙個領域。深度學習網路是神經網路革命性的發展,人們甚至認為可以用它來建立更加強大的 模型。深度學習使用多層機器學習模型對資料進行有監督學習或無監督學習。模型中的不同層由非線性資料變換的多個階段組成,資料的特...
關於深度學習的一些思考
問1 有監督學習中,機器學習是什麼?答1 機器學習就是先假設乙個函式,使用訓練樣本來選取最優的引數 當有新樣本時,把特徵輸入已訓練好的函式中,得到 值。問2 神經網路中,神經元的作用是什麼?答2 1 對輸入特徵進行線性加權 z w1 a1 w2 a2 w3 a3 b,其中wi是權重,ai是特徵值,b...
一些講深度學習的部落格
2017 6 25 1 tensor flow with cnn 做表情識別 2 tensorflow在windows上安裝與簡單示例 3 深度學習實戰 caffe windows 下訓練自己的網路模型 4 caffe入門學習 5 6 卷積神經網路 cnn 目標分類 7 卷積神經網路視覺化工具 8 ...