用于執(zhí)行隨機梯度下降的裝置和方法
【技術領域】
[0001] 本發(fā)明涉及隨機梯度下降領域,更具體地,涉及用于執(zhí)行與目標函數(shù)的光滑度無 關的普適梯度下降的裝置和方法。
【背景技術】
[0002] 機器學習領域的隨機梯度方法是指在每次迭代中隨機選取單個樣本進行處理,而 非將所有的數(shù)據(jù)批量加載到內存再進行處理。送是近幾年大規(guī)模機器學習任務中最有發(fā)展 前景的方法之一。在最近關于深度神經(jīng)網(wǎng)絡、lasso問題、logistic回歸、ridge回歸、連續(xù) 斯坦納(Steiner)問題、支持向量機等相關的著名文獻里,隨機梯度法已經(jīng)有了重要的突 破和發(fā)展。
[0003] 隨機梯度法已經(jīng)成為處理關于光滑或非光滑大規(guī)模優(yōu)化凸問題的有力工具,但是 目前的方法需要知道優(yōu)化函數(shù)的準確平滑程度,并且當目標函數(shù)具有中階化elder連續(xù)梯 度時,目前的任何隨機梯度方法都沒有辦法進行優(yōu)化。
[0004] 因此,需要一種能夠執(zhí)行普適隨機梯度下降來優(yōu)化目標函數(shù)的裝置和方法。
【發(fā)明內容】
[0005] 在下文中給出關于本發(fā)明的簡要概述,W便提供關于本發(fā)明的某些方面的基本理 解。應當理解,送個概述并不是關于本發(fā)明的窮舉性概述。它并不是意圖確定本發(fā)明的關 鍵或重要部分,也不是意圖限定本發(fā)明的范圍。其目的僅僅是W簡化的形式給出某些概念, W此作為稍后論述的更詳細描述的前序。
[0006] 本發(fā)明的一個主要目的在于,提供一種用于執(zhí)行隨機梯度下降的裝置,包括:初始 化單元,被配置為初始化與目標函數(shù)的平滑度信息有關的通用常量和預定精度;迭代單元, 被配置為隨機選取與訓練集中的特定樣本相關的分量損失函數(shù)來進行迭代,W根據(jù)所述通 用常量和所述預定精度更新每次迭代的中間解,使得所述中間解更接近真實解;輸出單元, 被配置為在執(zhí)行完所有迭代之后,輸出所有中間解的加權平均作為最終解。
[0007] 根據(jù)本發(fā)明的一個方面,提供了一種用于執(zhí)行隨機梯度過程的方法,包括;初始化 步驟,初始化與目標函數(shù)的平滑度信息有關的通用常量和預定精度;迭代步驟,隨機選取與 訓練集中的特定樣本相關的分量損失函數(shù)來進行迭代,W根據(jù)通用常量和所述預定精度更 新每次迭代的中間解,使得所述中間解更接近真實解;輸出步驟,在執(zhí)行完所有迭代之后, 輸出所有中間解的加權平均作為最終解。
[0008] 另外,本發(fā)明的實施例還提供了用于實現(xiàn)上述方法的計算機程序。
[0009] 此外,本發(fā)明的實施例還提供了至少計算機可讀介質形式的計算機程序產品,其 上記錄有用于實現(xiàn)上述方法的計算機程序代碼。
[0010] 通過W下結合附圖對本發(fā)明的最佳實施例的詳細說明,本發(fā)明的送些W及其他優(yōu) 點將更加明顯。
【附圖說明】
[0011] 參照下面結合附圖對本發(fā)明實施例的說明,會更加容易地理解本發(fā)明的W上和其 它目的、特點和優(yōu)點。附圖中的部件只是為了示出本發(fā)明的原理。在附圖中,相同的或類似 的技術特征或部件將采用相同或類似的附圖標記來表示。
[0012] 圖1是示出根據(jù)本發(fā)明的一個實施例用于執(zhí)行隨機梯度下降的裝置100的示例性 配置的框圖;
[0013] 圖2是示出根據(jù)本發(fā)明的另一個實施例的用于執(zhí)行快速隨機梯度下降的裝置 100'的示例性配置的框圖;
[0014] 圖3示出了根據(jù)本發(fā)明的一個實施例的用于執(zhí)行隨機梯度下降的方法300的流程 圖;
[0015] 圖4示出了根據(jù)本發(fā)明的另一個實施例的用于執(zhí)行快速隨機梯度下降的方法400 的流程圖;W及
[0016] 圖5是示出可W用于實施本發(fā)明的用于執(zhí)行隨機梯度下降的裝置和方法的計算 設備的示例性結構圖。
【具體實施方式】
[0017] 下面參照附圖來說明本發(fā)明的實施例。在本發(fā)明的一個附圖或一種實施方式中描 述的元素和特征可W與一個或更多個其它附圖或實施方式中示出的元素和特征相結合。應 當注意,為了清楚的目的,附圖和說明中省略了與本發(fā)明無關的、本領域普通技術人員已知 的部件和處理的表示和描述。
[0018] 本發(fā)明提出針對具有中階化elder連續(xù)梯度的平滑及非平滑凸問題,提出了一個 新的普適隨機梯度法(Universal Stochastic Gradient Method, USGM)來優(yōu)化目標函數(shù)。 通用隨機梯度法不需要先驗的獲取目標函數(shù)的準確平滑度。與此同時,不像傳統(tǒng)的隨機梯 度方法,本發(fā)明可W預先假設方法的固定精度。因此擴大了隨機梯度下降方法的應用范圍, 并且提出了一類普適的一階方法。本發(fā)明同時又提出了一種快速普適隨機梯度下降的方 法。事實證明,普適隨機梯度方法和快速普適隨機梯度方法都可W得到收斂,并且快速普適 隨機梯度方法具有更快的收斂速度。
[0019] 在本發(fā)明中,解決了求解兩個凸函數(shù)之和的最小化問題。其中一個凸函數(shù)叫做損 失函數(shù)或者成本函數(shù),它是具有Hoelder連續(xù)梯度的若干有限平滑分量函數(shù)的平均值,其 分量函數(shù)是與訓練集中的數(shù)據(jù)樣本相關的函數(shù);另外一個凸函數(shù)是一個正則函數(shù)或者懲罰 函數(shù),它的作用是用來抑制函數(shù)的過度擬合。
[0020] 在本發(fā)明的方法中,計算了在目標函數(shù)中一些迭代常量必需的平滑信息。每次迭 代中,通過使用化egmann映射來使當前的點更加接近真實解,送是本發(fā)明的隨機梯度方法 的核必。Bregmann映射用來更新每一次迭代的中間解,記為x_t,送些中間解的加權平均在 所有迭代結束后作為最終解輸出。
[0021] 下面結合附圖詳細說明根據(jù)本發(fā)明的實施例的普適隨機梯度下降方法和快速普 適隨機梯度下降方法。
[0022] 圖1示出了根據(jù)本發(fā)明的一個實施例用于執(zhí)行隨機梯度下降的裝置100的示例性 配置的框圖。
[0023] 如圖1所示,用于執(zhí)行隨機梯度下降的裝置100包括初始化單元102、迭代單元 104和輸出單元106。
[0024] 初始化單元102被配置為初始化與目標函數(shù)的平滑度信息有關的通用常量和預 定精度。
[00巧]例如,可 W選擇初始通用的 Lipschitz 常量(Universal Lipschitz Constant, ULC),和大于零的精度ε。進一步,初始化單元102還要對中間解x_t進行初始化得到x_0, 并且初始化化egmann距離函數(shù)。
[0026] 迭代單元104被配置為隨機選取與訓練集中的某個樣本相關的分量損失函數(shù)來 進行迭代,W根據(jù)通用常量和預定精度更新每次迭代的中間解,使得中間解更接近真實解。
[0027] 在一個實施例中,迭代單元104被配置為:構建與化egmann距離函數(shù)和所選取的 分量損失函數(shù)相關的目標函數(shù)的線性遍近化inearized Approximation of化e化jective 化nction (LAOF)),得到目標函數(shù)的線性逼近在化egmann映射的值v-LAOF W及與分量損失 函數(shù)相關的目標函數(shù)在化egmann映射的值V-0BJ ; W遞增的方式找到最小的與化egmann 映射相關聯(lián)的系數(shù),使得V-0BJ小于V-LA0F與精度的加權和;用化egmann映射來更新中間 解x_t,并用所找到的最小的系數(shù)更新通用常量;W及判斷迭代是否收斂,如果收斂,則迭 代結束,否則繼續(xù)進行迭代。
[0028] 輸出單元106被配置為在執(zhí)行完所有迭代之后,輸出所有中間解x_t的加權平均 作為最終解。
[0029] 盡管上述用于執(zhí)行隨機梯度下降的裝置100有簡單的可操作性,但在實際應用中 收斂速度較低。所W根據(jù)本發(fā)明的另一個實施例,提出了一種用于執(zhí)行隨機梯度下降的裝 置的加速版本。
[0030] 圖2是示出根據(jù)本發(fā)明的另一個實施例的用于執(zhí)行快速隨機梯度下降的裝置 100'的示例性配置的框圖。
[0031] 如圖2所示,用于執(zhí)行隨機梯度下降的裝置100'包括初始化單元102'、迭代單元 104'和輸出單元106'。
[0032] 初始化單元102'被配置為初始化化C、初始化精度ε (大于零)、初始化中間解χ_ t (得到χ_0)、初始化參考解y_t (得到y(tǒng)_0)、W及初始化基于化egmann距離的輔助函數(shù),其 中 X-0 = y_0。
[003引迭代單元104'具體被配置為:找到輔助函數(shù)的最小值,表示為v_t ;隨機選取與訓 練集中的特定樣本相關的分量損失函數(shù);構建與所選取的分量損失函數(shù)相關的目標函數(shù)的 線性逼近(LA0F);使用v_t和y_t來構建x_t和y_t各自的加權更新函數(shù);得到目標函數(shù) 的線性逼近在y_t處的值V-LA0F和與分量損失函數(shù)相關的目標函數(shù)在x_t