李 俠 云南機電職業技術學院統計與國有資產管理處
自動化生產線中識別裝置學習模型評估方法淺析
李 俠 云南機電職業技術學院統計與國有資產管理處
在自動化生產線中,識別裝置可以說是整條生產線的核心,其識別率的高低直接決定了該生產線的生產質量。本文列舉了幾種常用的依據樣本空間劃分訓練集和測試集的方法,在使用時可依據實際情況合理選擇和評估學習模型,獲得滿足要求的識別裝置。
自動生產線;識別裝置;樣本空間
隨著科學技術的發展,自動化生產線已經在各個行業得到普及,它是將機械技術、微電子技術、電工電子技術、傳感測試技術、信息變換技術、網絡通信技術等多種技術有機地結合,并綜合應用到生產設備中,同時將傳感檢測、傳輸與處理、控制、執行與驅動等機構在微處理單元的控制下協調有序地工作,有機的融合在一起。在整個工作環節中,多次涉及對產品的識別問題,識別率的高低就直接決定了整條生產線的質量。
例如在水果自動包裝生產線中,假設我們需要將采收來的蘋果按照大小、色澤來分別包裝,采用安裝了傳感器的識別裝置來對蘋果的色澤和大小進行識別。若我們需要識別裝置能夠準確的識別產品,則必須采用大量樣本對識別裝置進行學習模型設計和測試。通常我們需要的是識別裝置能夠學習樣本中的普遍規律,但若識別裝置的學習能力過強,將某些樣本自身的特點當成了普遍規律,那么就會導致泛化能力下降,即可能將多數蘋果認為是不合格產品,這種情況我們稱之為“過擬合”。與之相對應的是“欠擬合”,即識別裝置并未學習到所有的普遍規律,這樣就有可能導致部分不合格的產品卻被當成合格產品進行包裝。不管是過擬合還是欠擬合,都不是我們想要的結果,那如何才能獲得一個滿足要求的識別裝置呢,這就需要對所設計的模型進行選擇和評估。

圖1 10折交叉驗證示意圖
通常我們將識別裝置的實際輸出與真實結果之間的差異稱為“誤差”。假如,我們將識別裝置在訓練集上的誤差稱為“訓練誤差”,將識別裝置在新樣本上的誤差稱為“泛化誤差”。在很多情況下我們能得到的是一個訓練誤差很小的識別裝置,有些識別裝置的訓練誤差甚至為零,但是這并不一定是我們想要的識別裝置。我們希望得到的是泛化誤差盡可能小的識別裝置。但實際上,我們并不知道新樣本是什么樣的,因此也就沒有辦法直接選擇識別裝置。但是我們可以通過實驗測試來對識別裝置的泛化誤差進行評估。那么問題來了,通常我們采集數據時能得到一個包含有限樣本的樣本空間D,這些樣本空間D既要用于訓練,又要用于測試,那么怎樣才能合理的劃分訓練集和測試集呢?下面介紹幾種常用的劃分方法。
①留出法
留出法是將樣本空間D直接劃分成兩個互斥的集合,其中一個集合用于訓練,稱為訓練集S,另一個集合用于測試,稱為測試集T。該方法是最簡單的一種數據劃分方法。使用留出法時需要注意的問題是,訓練集S和測試集T的劃分一定要保證數據分布的一致性。例如將包含200個樣本的樣本空間D進行劃分為包含60%樣本的訓練集S,和包含40%樣本的測試集T,若S包含60個正例和60個反例,則T也應該按照相同比例包含40個正例和40個反例。若訓練集S和測試集T中樣本類別的比例差別過大,則可能會由樣本比例誤差導致識別裝置的偏差過大。
另一個需要注意的問題是,由于劃分訓練集和測試集是隨機的,所以單次應用留出法得到的測試結果是不夠可靠的,一般需要經過多次隨機劃分并進行測試,將多次測試結果取平均值作為最終的返回值。
此外,我們需要評估的是用樣本空間D訓練出來的模型的性能,但是采用留出法需要對樣本空間進行劃分,將其劃分成訓練集和測試集。這就帶來一個問題,若訓練集S包含的樣本數量較多,則訓練出來的模型就更接近于用D訓練出來的模型,但是由于測試集T包含的樣本數量較少,就使得測試結果的偏差較大。若S包含的樣本數量少,則S和D的差別就比較大,用訓練集訓練出來的模型就和用樣本空間D訓練出來的模型有較大的區別,從而降低了測試結果的真實性。通常我們的做法是將樣本空間D的2/3~4/5作為測試樣本,其余樣本用于訓練。
②交叉驗證法
交叉驗證法是將樣本空間D劃分成k個大小一致的子集,每個子集之間沒有交集(即),并且在劃分子集的時候要保證數據分布的一致性。然后,每次從k個子集中抽取k-1個子集作為訓練集S,另外一個子集作為測試集T,這樣我們就可以得到k組測試結果,最后返回k個測試結果的平均值。需要注意的是,采用交叉驗證法所設計的識別裝置其精確度和k的取值有關,一般情況下k值越大,其結果越準確,但同時計算量也就越大。在工程實踐中通常取k=10,也稱為10折交叉驗證,或者k取10的倍數,如k=20、30等等。
③留一法
在使用交叉驗證法時,假如樣本空間D內共有m個樣本,當k=m時就是交叉驗證法的一個特例,稱為留一法。留一法由于每次只抽取1個樣本作為測試集T,其余數據均作為訓練集S,用于訓練識別裝置,這樣就最大程度的保證了S和D的一致性,訓練出來的模型也就更接近于用樣本空間D訓練出來的模型。但需要注意的是,當樣本空間D中的樣本數量非常龐大時,要訓練出m個模型所需要的計算量就非常大,例如某樣本空間D中有1萬個樣本,若采用留一法,即要訓練出1萬個模型,然后輸出這1萬個模型的測試平均值作為最終的測試結果,計算量是非常驚人的。因此,當樣本空間D中的樣本數量相對較少時,可采用留一法進行模型訓練,通常認為訓練結果是比較準確的。
在對識別裝置的模型進行選擇和評估時,除了以上介紹的三種常用方法以外,還涉及到參數的設置,通常稱為“參數調節”或“調參”。參數包括識別裝置中學習算法的參數和數學模型的參數,參數設置不同,獲得的識別裝置性能就有很大差別。
需要注意的是,上面介紹的三種評估方法中,均是從樣本空間D中選出一部分樣本作為訓練樣本,另外一部分樣本用于測試,這畢竟和直接用D訓練出來的模型不一致。因此在模型選擇完成后,學習算法和參數配置已經選定的情況下,采用樣本空間D重新訓練模型,此時的模型在訓練過程中使用了全部樣本,這才是我們最終用到識別裝置里面的模型。
[1]周志華.機器學習[M].清華大學出版社,2016
[2]鄭恩輝. 不平衡數據知識挖掘:類分布對支持向量機分類的影響[J].信息與控制,2005
[3]張金娥,宋巖.自動化生產線[J].中國科技博覽,2014,(9)
云南機電職業技術學院青年骨干教師科研計劃項目“機電設備裝調實訓項目的設計與開發”(編號:2015QN23),負責人:李俠