算法收斂性、梯度下降與正規方程組、凸函數性質(機器學習先修知識,方便理解)

算法收斂性

算法收斂性在迭代法中的一個概念。
迭代是數值分析中通過從一個初始估計出發尋找一系列近似解來解決問題(一般是解方程或者方程組)的過程,爲實現這一過程所使用的方法統稱爲迭代法(Iterative Method)。
跟迭代法相對應的是直接法(或者稱爲一次解法),即一次性的快速解決問題,例如通過開方解決方程x+3= 4。一般如果可能,直接解法總是優先考慮的。但當遇到複雜問題時,特別是在未知量很多,方程爲非線性時,我們無法找到直接解法(例如五次以及更高次的代數方程沒有解析解,參見阿貝耳定理),這時候或許可以通過迭代法尋求方程(組)的近似解。
最常見的迭代法是牛頓法。其他還包括最速下降法、共軛迭代法、變尺度迭代法、最小二乘法、線性規劃、非線性規劃、單純型法、懲罰函數法、斜率投影法、遺傳算法、模擬退火等等。[1]^{[1]}

梯度下降與正規方程組

兩種都是求解函數的最小值的方法。後者是在最小二乘法中使用的方法。

梯度下降法 正規方程組法
學習率 需要選擇學習速率,不設置會有默認值
迭代 需要多次迭代 一次求導得出
學習率 需要選擇學習速率,不設置會有默認值 一次求導得出,不需迭代
數據量 特徵數量n很大也較好適用 需要計算(XT^TX)1^{-1} 如果特徵數量n較大則運算代價大,因爲矩陣的逆的計算時間複雜度爲o(n3)o(n^{3}) 通常來說當n小於10000時還是可以接受的
適用性 適用各種類型的模型 只適用於線性模型,不適用與邏輯迴歸模型等其他模型

凸函數及其性質

凸函數是具有如下特性的一個定義在某個向量空間的凸子集C(區間)上的實值函數f:對其定義域C上的任意兩點x1x2x_1 、x_2,總有f((x1+x2)/2)(f(x1)+f(x2))/2f((x_1+x_2)/2)≤(f(x_1 )+f(x_2))/2 [3]^{[3]}
凸函數最優化,或叫做凸最優化,凸最小化,是數學最優化的一個子領域,研究定義於凸集中的凸函數最小化的問題。凸最佳化在某種意義上說較一般情形的數學最佳化問題要簡單,譬如在凸最佳化中局部最佳值必定是全局最佳值。一般的凸最佳化已經接近簡單的線性規劃一樣直捷易行。許多最佳化問題都可以轉化成凸最佳化(凸最小化)問題,例如求凹函數f最大值的問題就等同於求凸函數 -f最小值的問題。 [4]^{[4]}

參考文獻:
[1]^{[1]}:https://baike.baidu.com/item/%E8%BF%AD%E4%BB%A3/8415523?fr=aladdin
[2]^{[2]}:https://blog.csdn.net/GhostintheCode/article/details/93136495
[3]^{[3]}:https://zh.wikipedia.org/wiki/%E5%87%B8%E5%87%BD%E6%95%B0
[4]^{[4]}:https://zh.wikipedia.org/wiki/%E5%87%B8%E5%84%AA%E5%8C%96

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章