農林漁牧網

您現在的位置是:首頁 > 林業

​監督學習中的損失函式及應用研究

2021-08-30由 大資料期刊 發表于 林業

迴歸模型中的mse是什麼

​監督學習中的損失函式及應用研究

鄧建國, 張素蘭, 張繼福, 荀亞玲, 劉愛琴

太原科技大學計算機科學與技術學院

摘要:

監督學習中的損失函式常用來評估樣本的真實值和模型預測值之間的不一致程度,一般用於模型的引數估計。受應用場景、資料集和待求解問題等因素的制約,現有監督學習演算法使用的損失函式的種類和數量較多,而且每個損失函式都有各自的特徵,因此從眾多損失函式中選擇適合求解問題最優模型的損失函式是相當困難的。研究了監督學習演算法中常用損失函式的標準形式、基本思想、優缺點、主要應用以及對應的演化形式,探索了它們適用的應用場景和可能的最佳化策略。本研究不僅有助於提升模型預測的精確度,而且也為構建新的損失函式或改進現有損失函式的應用研究提供了一個新的思路。

1 引言

隨著人工智慧在智慧製造、智慧農業以及智慧教育等領域的廣泛應用,機器學習變得越來越普及,並逐漸成為人工智慧研究的重點內容。機器學習以資料為研究內容,使計算機能夠自動地從資料中學習規律,並利用規律預測未知資料。機器學習分為監督學習、無監督學習和強化學習。作為機器學習的一個重要類別,監督學習與機器學習同時產生,並伴隨著機器學習逐步發展起來。監督學習常用於解決分類或迴歸問題,是目前研究和應用較為廣泛的一種機器學習方法。由於監督學習具有很好的分類和標記能力,被廣泛應用於計算機視覺、自然語言、語音識別、目標檢測、藥物發現和基因組學等多個領域。

監督學習、無監督學習和強化學習都是從資料集中尋找規律,不同的是監督學習從有標記的訓練資料集中學習規律,並利用學到的規律預測訓練集外的資料的標記,不能預測資料集本身的潛在規律,這在一定程度上限制了監督學習的應用範圍。但是,現有的機器學習演算法中大多還是基於監督學習的,甚至部分無監督學習和強化學習演算法也是基於監督學習並受監督學習思想啟發發展起來的。另外,儘管機器學習在多個領域取得了令人矚目的成績,但現有機器學習演算法的很多結論是透過實驗或經驗獲得的,還有待理論的深入研究與支援。現有機器學習演算法無法從根本上解決機器學習面臨的技術壁壘,這導致機器學習無法跨越弱人工智慧,仍然要依賴監督學習。

監督學習利用有標記的樣本調整模型引數,使模型具有正確預測未知資料的能力,其目的是讓計算機學習一組有標記的訓練資料集,進而獲得新的知識或技能,這就要求計算機不斷學習樣本資料,並依據樣本真實值與預測值之間的損失調整模型引數,提升模型的判別能力。顯然,衡量樣本真實值和預測值不一致程度的損失函式是監督學習研究的重點內容。損失函式是統計學、經濟學和機器學習等領域的基礎概念,它將隨機事件或與其相關的隨機變數的取值對映為非負實數,用來表示該隨機事件的風險或損失的函式。在監督學習中,損失函式表示單個樣本真實值與模型預測值之間的偏差,其值通常用於衡量模型的效能。現有的監督學習演算法不僅使用了損失函式,而且求解不同應用場景的演算法會使用不同的損失函式。研究表明,即使在相同場景下,不同的損失函式度量同一樣本的效能時也存在差異。可見,損失函式的選用是否合理直接決定著監督學習演算法預測效能的優劣。

在實際問題中,損失函式的選取會受到許多約束,如機器學習演算法的選擇、是否有離群點、梯度下降的複雜性、求導的難易程度以及預測值的置信度等。目前,沒有一種損失函式能完美處理所有型別的資料。在同等條件下,模型選取的損失函式越能擴大樣本的類間距離、減小樣本的類內距離,模型預測的精確度就越高。實踐表明,在同一模型中,與求解問題資料相匹配的損失函式往往對提升模型的預測能力起著關鍵作用。因此,如果能正確理解各種損失函式的特性,分析它們適用的應用場景,針對特定問題選取合適的損失函式,就可以進一步提高模型的預測精度。

2 損失函式

監督學習問題是在假設空間F中選取模型f作為決策函式,對於給定的輸入x,用損失函式L(Y,f(x))度量該樣本經決策函式f計算後的輸出預測值f(x)與樣本真實值Y之間的不一致程度。損失函式是經驗風險函式的核心部分,也是結構風險函式的重要組成部分。結構風險最小化策略認為結構風險最小的模型是最優模型,因此求最優模型,就是求解最最佳化問題:

​監督學習中的損失函式及應用研究

,其中,J(f)為模型的複雜度,λ為係數(λ≥0)。顯然,監督學習問題被轉化為一個經驗風險或結構風險函式的最最佳化問題。

在監督學習中,損失函式用於評估單個樣本經模型計算後輸出的預測值與真實值的不一致程度。它是一個非負實值函式,主要特點為:恆非負;誤差越小,函式值越小;收斂快。損失函式的值直接影響著模型的預測效能,損失函式值越小,模型的預測效能就越好。另外,作為樣本間相似度度量標準,損失函式用來刻畫樣本真實值與預測值之間的關係,如果損失值小於某一值,則認為樣本是相似的,否則認為是不相似的。監督學習演算法中的損失函式如圖1所示。

​監督學習中的損失函式及應用研究

圖1 監督學習演算法中的損失函式

損失函式的標準數學形式(以下簡稱標準公式)不僅種類多,而且每類損失函式又在其標準形式的基礎上演化出許多演化形式。0-1損失函式是最簡單的損失函式,在其基礎上加入引數控制損失範圍,形成感知機損失函式;加入安全邊界,演化為鉸鏈損失函式。為解決多分類問題,在鉸鏈損失函式的基礎上,加入引數k,組合成top -k鉸鏈損失函式。將對數損失函式與softmax函式的特性結合,構成softmax損失函式;與機率分佈相似性融合,構成交叉熵(cross entropy)損失函式。另外,組合不同損失函式的標準形式或演化形式又形成新的損失函式。可見,損失函式的發展不是孤立的,而是隨著應用研究的發展進行變革的。

本文依據損失函式度量方式的不同,將主要損失函式分為基於距離度量的損失函式和基於機率分佈度量 的損失函式。同時,進一步研究了每一類損失函式的基本思想、優缺點、演化形式及演化動機,總結了它們的應用場景、更適用的資料集、可能的最佳化方向,使監督學習的應用研究儘可能選取最優損失函式,以提高模型預測的精確度。同時,給出了監督學習演算法中使用頻次低的損失函式和組合損失函式。

3 主要損失函式

3.1 基於距離度量的損失函式

基於距離度量的損失函式通常將輸入資料對映到基於距離度量的特徵空間上,如歐氏空間、漢明空間等,將對映後的樣本看作空間上的點,採用合適的損失函式度量特徵空間上樣本真實值和模型預測值之間的距離。特徵空間上兩個點的距離越小,模型的預測效能越好,常用的基於距離度量的損失函式見表1。

​監督學習中的損失函式及應用研究

(1)平方損失函式

平方損失 (squared loss)函式最早是從天文學和地理測量學領域發展起來的,後來,由於歐氏距離在各個領域的廣泛使用,平方損失函式日益受到研究人員的關注。在迴歸問題中,平方損失用於度量樣本點到迴歸曲線的距離,透過最小化平方損失使樣本點可以更好地擬合迴歸曲線。在機器學習的經典演算法(反向傳播演算法、迴圈神經網路、流形學習、隨機森林和圖神經網路)中,常選用平方損失及其演化形式作為模型對誤檢測樣本進行懲罰的依據。

由於平方損失函式具有計算方便、邏輯清晰、評估誤差較準確以及可求得全域性最優解等優點,一直受到研究人員的廣泛關注,其演化形式也越來越多。基於平方損失演化的損失函式有加權平方損失函式、和方誤差(sum squared error,SSE)函式、均方誤差(mean squared error,MSE)函式、L2損失(L2 loss)函式、均方根誤差(root mean squared error,RMSE)函式、x2檢驗(chi-square test)函式、triple損失函式和對比損失(contrastive loss)函式,見表2。

​監督學習中的損失函式及應用研究

加權平方損失函式透過加權修改樣本真實值與預測值之間的誤差,使樣本到擬合曲線的距離儘可能小,即找到最優擬合曲線。在正負樣本比例相差很大時,SSE透過計算擬合數據和原始資料對應點的誤差平方和,使正樣本點更加靠近擬合曲線,與MSE相比,SSE可以更好地表達誤差。MSE的思想是使各個訓練樣本點到最優擬合曲線的距離最小,常用於評價資料的變化程度。MSE的值越小,表示預測模型描述的樣本資料具有越好的精確度。由於無引數、計算成本低和具有明確物理意義等優點,MSE已成為一種優秀的距離度量方法。儘管MSE在影象和語音處理方面表現較弱,但它仍是評價訊號質量的標準,在迴歸問題中,MSE常被作為模型的經驗損失或演算法的效能指標。L2損失又被稱為歐氏距離,是一種常用的距離度量方法,通常用於度量資料點之間的相似度。由於L2損失具有凸性和可微性,且在獨立、同分布的高斯噪聲情況下,它能提供最大似然估計,使得它成為迴歸問題、模式識別、影象處理中最常使用的損失函式。RMSE直觀地揭示了模型的輸出預測值與樣本真實值的離散程度,常被作為迴歸演算法的效能度量指標。儘管與平均絕對誤差(MAE)相比,RMSE計算更復雜且易偏向更高的誤差,但由於其是平滑可微的函式,且更容易進行運算,目前仍是許多模型預設的度量標準。x2檢驗也被稱為x2統計,常用於計算影象直方圖之間的距離。triple損失函式是一個三元損失函式,使用時需設計樣本本身、相似的正樣本和不相似的負樣本三方資料,既耗時又對效能敏感。triple損失函式不能對每一個單獨的樣本進行約束,由於其具有類間距離大於類內距離的特性,首次出現在基於卷積神經網路(convolutional neural network,CNN)的人臉識別任務中便取得了令人滿意的效果。對比損失函式是一個成對損失函式,在使用時除需樣本本身外,還需一個對比資料,可見,它也不能對每一個單獨的樣本進行約束。對比損失函式不僅能降維,而且降維後成對樣本的相似性保持不變,可以很好地表達成對樣本的匹配程度,另外,它能擴大類間距離,縮小類內距離,在人臉驗證演算法中,常被作為人臉判斷的依據。

總之,平方損失函式不僅常用於迴歸問題,而且也可用於分類或標註問題,實現離散問題的預測。因為它對離群點比較敏感,所以它不適合離群點較多的資料集。在實際應用中,由於模型泛化問題等原因,一般不常使用平方損失函式的標準形式,而更多使用它的演化形式。另外,由於平方損失函式是可微的凸函式,常與之搭配的最佳化方法為隨機梯度下降或牛頓法。儘管平方損失或基於平方損失的演化損失函式已被廣泛應用於影象自動標註、影象重建、物件計數及影象檢索等領域,並取得了令人滿意的效果,但在選取時也應根據具體問題的實現細節用其優勢避其劣勢。

(2)絕對損失函式

絕對損失( absolute loss)函式是最常見的一種損失函式,它不僅形式簡單,而且能很好地表達真實值和預測值之間的距離。絕對損失對離群點有很好的魯棒性,但它在殘差為零處卻不可導。絕對損失的另一個缺點是更新的梯度始終相同,也就是說,即使很小的損失值,梯度也很大,這樣不利於模型的收斂。針對它的收斂問題,一般的解決辦法是在最佳化演算法中使用變化的學習率,在損失接近最小值時降低學習率。儘管絕對損失本身的缺陷限制了它的應用範圍,但基於絕對損失的演化形式卻受到了更多的關注。在有噪聲標籤的分類問題中,基於平均絕對誤差構建的神經網路具有良好的噪聲容忍能力,在單幅影象超解析度重建中,選用絕對損失函式可使重建的影象失真更少,smooth L1損失在目標檢測問題中可有效解決梯度爆炸問題。

基於絕對損失的演化損失函式包括平均絕對誤差函式、平均相對誤差(mean relative error,MRE)函式、L1損失(L1 loss)函式、Chebyshev損失函式、Minkowski損失函式、smooth L1損失函式、huber損失函式和分位數損失(quantile loss)函式,見表3。

​監督學習中的損失函式及應用研究

MAE表達預測誤差的實際情況,只衡量預測誤差的平均模長,不考慮方向,一般作為迴歸演算法的效能指標。MRE既指明誤差的大小,又指明其正負方向。一般來說,與MAE相比,它更能反映評估的可信程度。L1損失又稱為曼哈頓距離,表示殘差的絕對值之和。Chebyshev損失也稱切比雪夫距離或L∞度量,是向量空間中的一種度量方法。Minkowski損失也被稱為閔氏距離或閔可夫斯基距離,是歐氏空間中的一種度量方法,常被看作歐氏距離和曼哈頓距離的一種推廣。smooth L1損失是由Girshick R在Fast R-CNN中提出的,主要用在目標檢測中防止梯度爆炸。huber損失是平方損失和絕對損失的綜合,它克服了平方損失和絕對損失的缺點,不僅使損失函式具有連續的導數,而且利用MSE梯度隨誤差減小的特性,可取得更精確的最小值。儘管huber損失對異常點具有更好的魯棒性,但是,它不僅引入了額外的引數,而且選擇合適的引數比較困難,這也增加了訓練和除錯的工作量。分位數損失的思想是透過分位數γ懲罰高估和低估的預測值,使其更接近目標值的區間範圍,當設定多個γ值時,將得到多個預測模型,當γ=0。5時,分位數損失相當於MAE。分位數損失易構建能夠預測輸出值範圍的模型,與MAE相比,它可減少資料預處理的工作量。基於分位數損失的迴歸學習,不僅適用於正態分佈的殘差預測問題,而且對於具有變化方差或非正態分佈殘差的預測問題,也能給出合理的預測區間。在神經網路模型、梯度提升迴歸器和基於樹模型的區間預測問題中,選取分位數損失評估模型的效能往往會取得更好的預測結果。分位數損失函式選取合適的分位數比較困難,一般情況下,分位值的選取取決於求解問題對正誤差和反誤差的重視程度,應根據實驗結果進行反覆實驗後再選取。另外,分位數損失值在0附近的區間記憶體在導數不連續的問題。

總之,在實際問題中,一般的資料集或多或少存在離群資料,當離群資料較多或需要考慮離群資料時,利用絕對損失及其演化損失對異常點魯棒性的特點,可以取得更好的效果。也就是說,絕對損失及其演化損失更適用於有較多離群點的資料集。

(3)0-1損失函式

0-1損失(zero-one loss)函式是一種較為簡單的損失函式,常用於分類問題。它不考慮預測值和真實值的誤差程度,是一種絕對分類方法。其思想是以分隔線為標準,將樣本集中的資料嚴格區分為0或1。由於沒有考慮噪聲對現實世界資料的影響因素,對每個誤分類樣本都施以相同的懲罰,預測效果不佳,甚至出現嚴重誤分類情況,這在很大程度上限制了0-1損失函式的應用範圍。另外,0-1損失函式是一種不連續、非凸且不可導函式,最佳化困難,這進一步限制了它的應用範圍。基於0-1損失的分類思想,出現了最常見的分類模型——K最近鄰(K nearest neighbor,KNN)。雖然0-1損失很少出現在監督學習演算法中,但它的分類思想為之後出現的其他分類演算法奠定了基礎。由於0-1損失函式直觀簡單,也易理解,研究人員在0-1損失的基礎上引入引數,進一步放寬分類標準,將其演化為感知機損失(perceptron loss)。

感知機損失是0-1損失改進後的結果,它採用引數克服了0-1損失分類的絕對性。與0-1損失相比,它的分類結果更可靠。感知機損失被廣泛應用於影象風格化、影象復原等問題中,透過使用預訓練的深度網路對影象進行多層語義分解,在相關問題上取得了較好的效果,其形式為:

​監督學習中的損失函式及應用研究

,其中t為引數,在感知機演算法中t=0。5。

總之,儘管0-1損失函式存在誤分類的情況,但是,當所有樣本完全遠離分隔線時,0-1損失函式可能是最好的選擇,也就是說,0-1損失函式在對稱或均勻噪聲的資料集上具有較好的魯棒性。

(4)鉸鏈損失函式

鉸鏈損失(hinge loss)也被稱為合頁損失,它最初用於求解最大間隔的二分類問題。鉸鏈損失函式是一個分段連續函式,當Y和f(x)的符號相同時,預測結果正確;當Y和f(x)的符號相反時,鉸鏈損失隨著f(x)的增大線性增大。鉸鏈損失函式最著名的應用是作為支援向量機(support vector machine,SVM)的目標函式,其性質決定了SVM具有稀疏性,也就是說,分類正確但機率不足1和分類錯誤的樣本被識別為支援向量,用於劃分決策邊界,其餘分類完全正確的樣本沒有參與模型求解。SVM基本模型是定義在特徵空間上間隔最大的線性分類器,當採用核技術後, SVM可轉化為非線性分類器。鉸鏈損失函式是一個凸函式,因此,鉸鏈損失函式可應用於機器學習領域的很多凸最佳化方法中。

基於鉸鏈損失的演化損失函式包括邊界鉸鏈損失函式、坡道損失(ramp loss)函式、Crammerand鉸鏈損失函式、Weston鉸鏈損失函式、二分類支援向量機損失函式、多分類支援向量機損失函式、多分類支援向量機平方損失函式和top-k鉸鏈損失函式,見表4。

邊界鉸鏈損失表示期望正確預測的得分高於錯誤預測的得分,且高出邊界值margin,它主要用於訓練兩個樣本之間的相似關係,而非樣本的類別得分。在坡道損失函式中,s為截斷點的位置,一般情況下,s的值取決於類別個數c,

​監督學習中的損失函式及應用研究

,它在x=1和x=s兩處不可導。Crammerand鉸鏈損失函式是由Crammerand Singer提出的一種針對線性分類器的損失函式。Weston鉸鏈損失函式是由Weston和Watkins提出的一種損失函式。二分類支援向量機損失函式可看作L2正則化與鉸鏈損失之和。多分類支援向量機損失函式只考慮在正確值附近的那些值,其他的均作為0處理,即只關注那些可能造成影響的點(或支援向量),因此,具有較好的魯棒性。與多分類支援向量機損失函式相比,多分類支援向量機平方損失函式的懲罰更強烈。top-k鉸鏈損失函式在k個測試樣本預測為正的約束下,使所有訓練例項的鉸鏈損失最小化。

​監督學習中的損失函式及應用研究

總之,鉸鏈損失及其演化損失函式常作為人臉識別、文字分類、筆跡識別和影象自動標註領域的損失函式,用於度量影象的相似性或向量空間中向量的距離,對錯誤越大的樣本,它施以越嚴重的懲罰,這可能使它對噪聲敏感,從而降低模型的泛化能力。

(5)中心損失函式

中心損失(c enter loss)函式採用了歐氏距離思想,為每個類的深層特徵學習一箇中心(一個與特徵維數相同的向量),但在全部樣本集上計算類中心相當困難,常用的做法是把整個訓練集劃分成若干個小的訓練集(mini-batch),並在mini-batch樣本範圍內進行類中心計算。另外,在更新類中心時常增加一個類似學習率的引數α,用於處理取樣太少或者有離群點的情況。中心損失函式主要用於減小類內距離,表面上只是減少了類內距離,但實際上間接增大了類間距離,它一般不單獨使用,常與softmax損失函式搭配使用,其分類效果比只用softmax損失函式更好。

基於中心損失的演化損失函式有三元中心損失(triplet-center loss, TCL)函式,TCL函式使樣本與其對應的中心之間的距離比樣本與其最近的負中心之間的距離更近,其形式為:

​監督學習中的損失函式及應用研究

總之,中心損失函式常用於神經網路模型中,實現類內相聚、類間分離。在特徵學習時,當期望特徵不僅可分,而且必須差異大時,通常使用中心損失函式減小類內變化,增加不同類特徵的可分離性。在實際應用中,由於中心損失函式本身考慮類內差異,因此中心損失函式應與主要考慮類間的損失函式搭配使用,如softmax損失、交叉熵損失等。

(6)餘弦損失

餘弦損失(cos ine loss)也被稱為餘弦相似度,它用向量空間中兩個向量夾角的餘弦值衡量兩個樣 本的差異。與歐氏距離相比,餘弦距離對具體數值的絕對值不敏感,而更加註重兩個向量在方向上的差異。在監督學習中,餘弦相似度常用於計算文字或標籤的相似度。它常與詞頻逆向檔案頻率(term frequency-inverse document frequency,TF-IDF)演算法結合使用,用於文字挖掘中的檔案比較。在資料探勘領域,餘弦損失常用於度量叢集內部的凝聚力。

基於餘弦損失的演化損失函式有改進的餘弦距離核函式,它是由李為等人在與文字相關的說話人確認技術中提出的,用來區分說話人身份及文字內容的差異,其形式為:

​監督學習中的損失函式及應用研究

,其中,λ為揚聲器模型, u為說話人。

3.2 基於機率分佈度量的損失函式

基於機率分佈度量的損失函式是將樣本間的相似性轉化為隨機事件出現的可能性,即透過度量樣本的真實分佈與它估計的分佈之間的距離,判斷兩者的相似度,一般用於涉及機率分佈或預測類別出現的機率的應用問題中,在分類問題中尤為常用。監督學習演算法中,常用的基於機率分佈度量的損失函式見表5。

​監督學習中的損失函式及應用研究

(1)對數損失函式

對數損失(logarithm loss)也被稱為對數似然損失,它使用極大似然估計的思想,表示樣本x在類別y的情形下,使機率P(y|x)達到最大值。因為機率的取值範圍為[0,1],使得log(P(y|x))取值為((−∞,0)),為保證損失為非負,對數損失的形式為對數的負值。對數損失函式是邏輯迴歸、神經網路以及一些期望極大估計的模型經常使用的損失函式,它透過懲罰錯誤的分類,實現對分類器的精確度量化和模型引數估計,對數損失函式常用於度量真實條件機率分佈與假定條件機率分佈之間的差異。

基於對數損失函式的演化形式包括邏輯迴歸損失(logistic regression loss)函式、加權對數損失函式、對數雙曲餘弦損失(log cosh loss)函式、softmax損失函式、二分類對數損失函式和巴氏距離(Bhattacharyya distance)函式,見表6。

​監督學習中的損失函式及應用研究

邏輯迴歸損失函式假設樣本服從伯努利分佈,利用極大似然估計的思想求得極值,它常作為分類問題的損失函式。加權對數損失函式主要應用在類別樣本數目差距非常大的分類問題中,如邊緣檢測問題(邊緣畫素的重要性比非邊緣畫素大,可針對性地對樣本進行加權)。對數雙曲餘弦損失函式基本上等價於MSE函式,但又不易受到異常點的影響,是更加平滑的損失函式,它具有huber損失函式的所有優點,且二階處處可導。softmax損失函式是卷積神經網路處理分類問題時常用的損失函式。巴氏距離函式用於度量兩個連續或離散機率分佈的相似度,它與衡量兩個統計樣本或種群之間的重疊量的巴氏係數密切相關。在直方圖相似度計算中,選用巴氏距離函式會獲得很好的效果,但它的計算很複雜。

總之,在分類學習中,當預測問題使用已知的樣本分佈,找到最有可能導致這種分佈的引數值時,應選取對數損失函式或其演化損失函式作為預測問題的損失函式。在基於深度神經網路的分類或標註問題中,一般在輸出層使用softmax作為損失函式,對數損失函式是迴歸、決策樹、深度神經網路常使用的損失函式。

(2)KL散度函式

KL散度( Kullback-Leibler divergence)也被稱為相對熵,是一種非對稱度量方法,常用於度量兩個機率分佈之間的距離。KL散度也可以衡量兩個隨機分佈之間的距離,兩個隨機分佈的相似度越高的,它們的KL散度越小,當兩個隨機分佈的差別增大時,它們的KL散度也會增大,因此KL散度可以用於比較文字標籤或影象的相似性。基於KL散度的演化損失函式有JS散度函式。JS散度也稱JS距離,用於衡量兩個機率分佈之間的相似度,它是基於KL散度的一種變形,消除了KL散度非對稱的問題,與KL散度相比,它使得相似度判別更加準確。JS散度函式的形式為:

​監督學習中的損失函式及應用研究

,其中,

​監督學習中的損失函式及應用研究

為KL散度。

KL 散度及其演化損失主要用於衡量兩個機率分佈之間的相似度,常作為影象低層特徵和文字標籤相似度的度量標準。KL散度在成像分析、流體動力學、心電圖等臨床實驗室檢測、生物應用的網路分析、細胞生物學等領域有廣泛的應用。

(3)交叉熵損失

交叉熵是資訊理論中的一個概念,最初用於估算平均編碼長度,引入機器學習後,用於評估當前訓練得到的機率分佈與真實分佈的差異情況。為了使神經網路的每一層輸出從線性組合轉為非線性逼近,以提高模型的預測精度,在以交叉熵為損失函式的神經網路模型中一般選用tanh、sigmoid、softmax或ReLU作為啟用函式。

基於交叉熵損失的演化損失函式包括平均交叉熵損失函式、二分類交叉熵損失函式、二分類平衡交叉熵損失函式、多分類交叉熵損失函式和focal損失函式,見表7。

​監督學習中的損失函式及應用研究

二分類交叉熵損失函式對於正樣本而言,輸出機率越大,損失越小;對於負樣本而言,輸出機率越小,損失越小。二分類平衡交叉熵損失函式與二分類交叉熵損失函式相比,它的優勢在於引入了平衡引數β∈[0,1],可實現正負樣本均衡,使預測值更接近於真實值。

交叉熵損失函式刻畫了實際輸出機率與期望輸出機率之間的相似度,也就是交叉熵的值越小,兩個機率分佈就越接近,特別是在正負樣本不均衡的分類問題中,常用交叉熵作為損失函式。目前,交叉熵損失函式是卷積神經網路中最常使用的分類損失函式,它可以有效避免梯度消散。

(4)softmax損失函式

從標準形式上看,softmax損失函式應歸到對數損失的範疇,在監督學習中,由於它被廣泛使用,所以單獨形成一個類別。softmax損失函式本質上是邏輯迴歸模型在多分類任務上的一種延伸,常作為CNN模型的損失函式。softmax損失函式的本質是將一個k維的任意實數向量x對映成另一個k維的實數向量,其中,輸出向量中的每個元素的取值範圍都是(0,1),即softmax損失函式輸出每個類別的預測機率。由於softmax損失函式具有類間可分性,被廣泛用於分類、分割、人臉識別、影象自動標註和人臉驗證等問題中,其特點是類間距離的最佳化效果非常好,但類內距離的最佳化效果比較差。

基於softmax損失函式的演化損失函式包括softer softmax函式、NSL (normalized softmax loss)函式、LMCL(large margin cosine loss)函式、L-softmax函式、A-softmax函式、A Msoftmax(additive margin softmax)函式以及正則化softmax函式,見表8。

​監督學習中的損失函式及應用研究

softer softmax 損失函式是Hinton G等人為了解決模型給誤分類標籤分配的機率被softmax損失忽略的問題而提出的。NSL損失函式利用兩個特徵向量之間的餘弦相似度評估兩個樣本之間的相似性,使後驗機率只依賴於角度的餘弦值,由此產生的模型學習了角空間中可分離的特徵,提高了特徵學習能力。為了構建一個更大邊距的分類器,期望

​監督學習中的損失函式及應用研究

​監督學習中的損失函式及應用研究

,m≥0為控制餘弦邊矩大小的引數,Wang H等人提出了LMCL損失函式。與傳統的歐幾里得邊距相比,角的餘弦值與softmax具有內在的一致性,基於此思想,在原始softmax基礎上選用角邊距度量兩個樣本的相似性, Liu W等人提出了L-softmax損失函式。受L-softmax損失函式啟發,在它的基礎上,Liu W等人增加了條件

​監督學習中的損失函式及應用研究

,B=0和cos(mθ1)>cos(θ2),使得預測僅取決於W和x之間的角度θ,提出了A-softmax損失函式。受L-softmax損失函式的啟發, Wang F等人提出了AM-softmax損失函式,它使前後向傳播變得更加簡單。正則化softmax損失函式加入刻畫模型的複雜度指標的正則化,可以有效地避免過擬合問題。

softmax損失函式具有類間可分性,在多分類和影象標註問題中,常用它解決特徵分離問題。在基於卷積神經網路的分類問題中,一般使用softmax損失函式作為損失函式,但是softmax損失函式學習到的特徵不具有足夠的區分性,因此它常與對比損失或中心損失組合使用,以增強區分能力。

4 其他損失函式

其他損失函式主要包括指數損失( exponential loss)函式、漢明距離函式、dice損失函式、餘弦損失+softmax函式和softmax+LDloss函式,見表9。

​監督學習中的損失函式及應用研究

與主要損失函式相比,其他損失函式在監督學習中使用的頻次比較低,其中指數損失函式是AdaBoost演算法中常用的損失函式。它與鉸鏈損失函式和交叉熵損失函式相比,對錯誤分類施加的懲罰更大,這使得它的誤差梯度也較大,因此在使用梯度下降演算法最佳化時,在極小值處求解速度也較快。漢明距離用於計算兩個向量的相似度,即透過比較兩個向量的每一位是否相同來計算漢明距離。dice損失函式是一種集合相似性度量函式,通常用於計算兩個樣本的相似性,常作為文字比較或影象分割類問題的損失函式,尤其適用於處理影象的前景區域和背景區域相差較大的影象分割問題。餘弦損失+softmax函式是利用餘弦和softmax的特性組合而成的,見第3。2節中的LMCL損失函式。softmax+LDloss函式是黃旭等人在融合判別式深度特徵學習的影象識別演算法中引入線性判別分析(linear discriminant analysis,LDA)思想構建的損失函式,該演算法使softmax+LDloss參與卷積神經網路的訓練,實現儘可能最小化類內特徵距離和最大化類間特徵距離的目標,以提高特徵的鑑別能力,進而改善影象的識別效能。

5 損失函式在監督學習中的應用

在監督學習中,損失函式的選取和演化通常是伴隨著監督學習演算法的發展而演變的。監督學習演算法是透過計算機學習有標記的訓練資料集,使模型能對未知資料進行預測的機器學習任務。在機器學習發展的過程中,產生了許多監督學習演算法,其中,典型演算法有深度神經網路(deep neural network,DNN)、 決策樹( decision tree,DT)、樸素貝葉斯分類、線性迴歸(linear regression)、 邏輯迴歸、支援向量機、K最近鄰和AdaBoost等,這些監督學習演算法仍是當前研究和應用的重點內容。

5.1 深度神經網路中的應用

深度神經網路是深度學習的一個重要分支,由於深度神經網路具有更多的網路層數和引數個數,所以能夠提取更多的資料特徵,獲取更好的學習效果。在基於深度神經網路的應用中,損失函式作為度量樣本真實值和模型預測值之間差異的工具,主要解決視覺處理、自然語言和語音識別等領域的問題。在視覺識別應用中,中心損失函式可區分人臉的差異、提高人臉識別準確度;softmax損失函式結合fisher損失函式提升不同模態下人臉資料的關聯程度;改進的triplet損失函式解決了跨攝像機人員再識別問題。在影象標註應用中,利用JS散度生成獨特的影象標籤,採用交叉熵損失函式構建分層標籤的影象分類模型,選用餘弦損失函式表達語義相似性。在視覺檢索應用中,透過L2損失函式構建用於大規模視覺搜尋的深度Hash方法。在影象重建方面,採用均方誤差函式重建出準確度更高的影象。在影象分割應用中,在softmax分類器後增加dice損失函式,以提高影象分割精度。在語音識別應用中,使用A-softmax損失函式提高階到端系統的效能。在自然語言處理應用中,使用加權交叉熵生成富含情感的單詞。

5.2 決策樹中的應用

決策樹是一個預測模型,一般依據KL散度大小,將樣本屬性分解成樹狀結構,並用於新樣本分類。決策樹的3種典型實現為ID3、CART和C4。5。決策樹的計算複雜度低,可解釋性強,對中間值的缺失不敏感,這使得決策樹至今在一些問題上仍被使用。在基於決策樹的應用中,引入C4。5決策樹方法處理流量分類問題,利用訓練資料集中的KL散度構建分類模型,並透過對分類模型的簡單查詢實現未知網路流樣本的分類,理論分析和實驗結果表明,使用C4。5決策樹處理流量分類問題在分類穩定性方面具有明顯的優勢。在視覺位置識別問題中,將漢明距離嵌入二叉搜尋樹中,解決描述符匹配和影象檢索問題。

5.3 樸素貝葉斯分類中的應用

樸素貝葉斯分類演算法是一個典型的機器學習演算法,它假定樣本的各個特徵之間是相互獨立的,在大量樣本下會有較好的表現,不適用於與輸入向量的特徵條件有關聯的場景。由於樸素貝葉斯分類演算法實現簡單,並有堅實的數學理論作為支撐,因此在很多領域有廣泛的應用,如垃圾郵件過濾、文字分類等。在基於樸素貝葉斯分類的應用中,採用餘弦損失度量成對標籤相似度提高標籤在整個影象相似性分配上的一致性,漢明損失函式和0-1損失函式在多標籤分類中分類能力不同,0-1損失函式在有限樣本下具有良好的分類效果。

5.4 線性迴歸中的應用

線性迴歸是監督學習中經典的迴歸模型之一,它是利用數理統計中的迴歸分析,確定兩個或兩個以上變數間相互依賴的定量關係的一種統計分析方法。線性迴歸分為一元線性迴歸和多元線性迴歸。因為線性迴歸形式簡單、易於建模,常用於解決連續值預測的問題。在基於線性迴歸的應用中,引入KL散度估計簇間距離,不僅能夠獲得更精確的分割結果,而且對噪聲和初始輪廓具有更強的魯棒性;在存在異常值或重尾誤差分佈的情況下,基於指數平方損失函式的線性迴歸估計方法比最小二乘數估計方法更有效;採用均方誤差函式可精確估計交通擁擠時的車輛數量;自適應huber損失函式不僅解決了原始huber損失函式沒有封閉解、難以最佳化的問題,而且在曲線擬合、帶噪聲標籤影象標註、經典迴歸問題和人群計數應用方面有很大的優勢。

5.5 邏輯迴歸中的應用

邏輯迴歸是一個應用非常廣泛的機器學習演算法,它將資料擬合到一個邏輯函式中,預測事件發生的機率。邏輯迴歸使用極大似然估計思想,常選用對數損失或交叉熵損失作為損失函式,可用於解決二分類或多分類問題。在基於邏輯迴歸的應用中,採用基於對數損失的核函式度量兩個樣本之間的相似性設計的邏輯迴歸模型,與核邏輯迴歸分析和支援向量機相比,不僅可達到更好的分類精度,而且有更好的時間效率;在研究分類不平衡對軟體缺陷影響的問題中,採用對數損失函式的邏輯迴歸模型的效能更加穩定;採用最小化對數損失構建的點選透過率(clickthrough rate,CTR)預測模型,比傳統的點選率預測模型以及最新的基於深度學習的預測模型的效能更好。

5.6 支援向量機中的應用

支援向量機基於最大化分類間隔的原則,透過核函式巧妙地將線性不可分問題轉化為線性可分問題,並且具有非常好的泛化效能。它使用鉸鏈損失函式計算經驗風險,並在求解系統中加入了正則化項以最佳化結構風險,是一個具有稀疏性和穩健性的分類器,它在文字分類和影象標註領域有廣泛的應用。在基於支援向量機的應用中,採用JS散度計算兩個特徵向量之間的相似度,在原始SVM基礎上,引入機率加權策略構建多個分類器,設計了基於SVM的多特徵融合的影象標註方法;採用餘弦損失函式計算向量空間模型(vector space model)中向量的相似度,提出了內容和標籤相融合的影象標註方法;在標籤混淆情況下,將公差引數引入鉸鏈損失函式中,可提高標籤分類準確率。

5.7 K最近鄰演算法中的應用

K最近鄰(KNN)演算法是簡單的機器學習演算法之一,該演算法的思想是如果一個樣本在特徵空間中的K個最相鄰的樣本中的大多數屬於某一個類別,則該樣本也屬於這個類別,並具有這個類別樣本的特性。KNN演算法在進行類別決策時,只與極少量的相鄰樣本有關,因此,它適用於類域有交叉或重疊較多的待分類樣本集。在基於KNN演算法的應用中,採用鉸鏈損失函式度量兩幅影象之間的相似性進行歸納學習,採用餘弦損失函式度量兩幅影象標籤的相似性進行推理學習,並將歸納學習和推理學習結合,形成統一的距離度量學習框架;在經典的2PKNN演算法中,採用鉸鏈損失函式度量兩幅影象的相似性,解決了類別不平衡和弱標記問題;利用漢明距離度量KNN搜尋上的可伸縮性,實現了跨模態相似度搜索。

5.8 AdaBoost演算法中的應用

AdaBoost演算法是基於Boosting思想的整合學習演算法,使用指數函式作為損失函式,其核心思想是對同一個訓練集訓練不同的弱學習器,然後將多個弱學習器進行整合,構造一個精度非常高的強學習器。AdaBoost演算法被廣泛應用於計算機視覺和目標檢測領域,在人臉檢測方面的表現尤為出眾。在基於AdaBoost演算法的應用中,透過學習影象區域性區域的相似性得到一組非線性弱學習器,使用弱學習器訓練影象區域性特徵獲得低維的、獨有的特徵描述子,選用漢明距離度量特徵描述子之間的相似度,提高了影象區域性區域的匹配精度。利用改進的指數損失函式與平方損失函式的加權組合代替傳統AdaBoost指數損失函式構建模型,解決傳統的AdaBoost演算法在訓練樣本存在異常值時導致的分類效果不理想的問題。

6 結束語

本文依據損失函式對樣本的評估方式,將監督學習的主要損失函式分為基於距離度量的損失函式和基於機率分佈度量的損失函式,並分析了每個損失函式的基本思想、優缺點、主要應用,在此基礎上,總結了每個損失函式更適合的應用場景或可能的最佳化方向。另外,在其他損失函式中給出了在監督學習演算法中出現但使用頻次相對較低的損失函式和組合函式。在監督學習中,損失函式作為度量資料真實值與預測值之間相似度的工具,它直接影響著模型的預測效能,顯然,損失函式的選取或改進是監督學習領域研究的主要內容。

本文提到的主要損失函式在監督學習演算法中使用頻次比較高,對於具體的研究問題,這些損失函式不一定是最好的損失函式,可能存在其他更合適的損失函式。其原因是模型的產生與解決的具體問題有關,同一模型在同類問題中效能差異不大,但在相似類問題或不同類問題中,效能差異可能較大,甚至出現不適合的情形。導致此類問題產生的原因除模型本身問題外,另一個主要原因是模型預設的損失函式。儘管每個模型都有預設的損失函式,但在使用模型解決實際問題時,應考慮問題與損失函式的內在聯絡,尤其是使用當下流行的遷移學習解決問題時,更應考慮問題與損失函式的關係。

雖然監督學習已產生多年,但在機器學習中仍佔有重要地位,其主要原因是監督學習模型在解決問題方面的精確度一直在不斷提高,甚至在某些方面的能力已經超越人類。模型精確度提升的原因除模型結構等因素不斷改進外,另一主要原因是不斷最佳化的損失函式在度量預測值與真實值差異方面的能力在不斷提升,甚至在不改變模型結構的情形下,只調整損失函式就可以達到很好的效果。相比於模型結構的升級換代,損失函式的最佳化工作量要少得多,可見最佳化損失函式也是提升模型效能的有效手段。最佳化損失函式除在現有標準形式的基礎上擴充套件延伸外,還應考慮組合不同損失函式形成組合損失函式。組合損失函式是將現有的損失函式經過四則運算,構造一類新的損失函式,筆者認為組合損失函式構成的一般原則是基於問題性質,以損失函式最小為目標,確定預測模型中各單項預測的加權係數,並將各個單獨的損失函式組合成一個新的損失函式,利用新的損失函式度量樣本之間的差異。

構建監督學習演算法的目的是解決實際問題,而實際問題中的主要內容是資料。在監督學習模型中,損失函式透過度量資料來衡量模型的效能,可見損失函式與資料直接相關。不同類的問題中資料間差異較大,甚至是不相關的,而相似類問題中的資料差異往往不大,甚至存在共同特性,這為實際問題選定的模型選擇合適的損失函式提供了參考。筆者認為應首先考慮問題中資料的性質,然後找到解決此類問題效果好的模型,在選定模型的基礎上,進一步考慮損失函式與資料的內在關係,進而選擇更合適的損失函式。

儘管損失函式在模型中的地位比較重要,但它畢竟只是模型的一個部分,要使模型有更好的預測效能,在實際問題中還需要考慮其他影響模型效能的因素,如資料特徵歸一化方法、樣本間相似度度量方法、相近類別分離技術以及組合損失函式等。總之,監督學習是一個系統工程,除研究損失函式外,還應考慮資料集、模型結構及最佳化策略等,只有圍繞損失函式全面考慮影響它的因素,才會取得更好的預測效果。

通常情況下,損失函式的選取應從以下方面考慮:

● 選擇最能表達資料的主要特徵構建基於距離或基於機率分佈度量的特徵空間;

● 選擇合理的特徵歸一化方法,使特徵向量轉換後仍能保持原來資料的核心內容;

● 選取合理的損失函式,在實驗的基礎上,依據損失不斷調整模型的引數,使其儘可能實現類別區分;

● 合理組合不同的損失函式,發揮每個損失函式的優點,使它們能更好地度量樣本間的相似性;

● 將資料的主要特徵嵌入損失函式,提升基於特定任務的模型預測精確度。

下一步可能的工作有兩方面:一是在現階段研究的基礎上,進一步研究監督學習演算法中的損失函式,以期能找到更普適的度量樣本特徵的損失函式;二是研究無監督學習和強化學習中的損失函式,總結其中典型的損失函式,並嘗試將其引入監督學習應用中,以提高模型預測的精確度。

本文在常用損失函式的基礎上,為構建新的損失函式或改進現有損失函式的應用研究提供了一個新的思路,不僅有助於研究人員針對研究問題輕鬆選擇適合問題的損失函式,而且還可根據待求解問題改進或最佳化現有的損失函式。總之,監督學習是當前的一個熱門研究領域,也是未來很有前途的一個研究方向,對監督學習演算法中的損失函式研究具有重大的理論意義和應用前景,是一個具有實用價值的研究課題。

​監督學習中的損失函式及應用研究

《大資料》期刊

《大資料(Big Data Research,BDR)》雙月刊是由中華人民共和國工業和資訊化部主管,人民郵電出版社主辦,中國計算機學會大資料專家委員會學術指導,北京信通傳媒有限責任公司出版的中文科技核心期刊。

​監督學習中的損失函式及應用研究

關注《大資料》期刊微信公眾號,獲取更多內容