數值解和解析解/softmax迴歸/泰勒展開/牛頓法
在解元件特性相關的方程式時,大多數的時候都要去解偏微分或積分式,才能求得其正確的解。依照求解方法的不同,可以分成以下兩類:解析解和數值解。
解析解(analytical solution)就是一些嚴格的公式,給出任意的自變數就可以求出其因變數,也就是問題的解, 他人可以利用這些公式計算各自的問題.
所謂的解析解是一種包含分式、三角函式、指數、對數甚至無限級數等基本函式的解的形式。
用來求得解析解的方法稱為解析法〈analytic techniques〉,解析法即是常見的微積分技巧,例如分離變數法等。
解析解為一封閉形式〈closed-form〉的函式,因此對任一獨立變數,我們皆可將其帶入解析函式求得正確的相應變數。
因此,解析解也被稱為閉式解(closed-form solution)
數值解(numerical solution)是採用某種計算方法,如有限元的方法, 數值逼近,插值的方法, 得到的解.別人只能利用數值計算的結果, 而不能隨意給出自變數並求出計算值.
當無法藉由微積分技巧求得解析解時,這時便只能利用數值分析的方式來求得其數值解了。數值方法變成了求解過程重要的媒介。
在數值分析的過程中,首先會將原方程式加以簡化,以利後來的數值分析。
例如,會先將微分符號改為差分符號等。然後再用傳統的代數方法將原方程式改寫成另一方便求解的形式。
這時的求解步驟就是將一獨立變數帶入,求得相應變數的近似解。
因此利用此方法所求得的相應變數為一個個分離的數值〈discrete values〉,不似解析解為一連續的分佈,而且因為經過上述簡化的動作,所以可以想見正確性將不如解析法來的好。
數值解是在特定條件下通過近似計算得出來的一個數值,而解析解為該函式的解析式。
解析解就是給出解的具體函式形式,從解的表示式中就可以算出任何對應值; 數值解就是用數值方法求出解,給出一系列對應的自變數和解。
參考:http://deeplearning.stanford.edu/wiki/index.php/Softmax%E5%9B%9E%E5%BD%92
https://www.cnblogs.com/ljy2013/p/5129294.html
泰勒展開的概念:
數學中,泰勒公式是一個用函式在某點的資訊描述其附近取值的公式。如果函式足夠平滑的話,在已知函式在某一點的各階導數值的情況之下,泰勒公式可以用這些導數值做係數構建一個多項式來近似函式在這一點的鄰域中的值。泰勒公式還給出了這個多項式和實際的函式值之間的偏差。
泰勒展開:已知一個函式的在某個已知點的值,以及在該點的一階、二階值,那麼可以通過泰勒展開求取函式在該點鄰域的值;很強大!!!
上述中某個點在實際中,既可能只包含一個元素的點(即一維的點);也可能是包含多個元素的點(即多維的點);
引入牛頓法:(牛頓法的前提其實是泰勒展開)
當點是一維的時候,很簡單的計算形式,就可以求出X(k+1)與X(k)滿足的迭代關係(注意,我們之前,通過令導數為0,求諸如一元二次方程的解,求出來的直接是函式取得極值時的點;現在是我們不能通過求的極值等閉合解的形式求取出解,我們需要藉助數值解的形式,找出函式在取所有點時的輸出來確定函式;因此,可以通過這樣一個策略:首先,我們知道一個初始點;然後,我們可以知道該點的迭代方向(前提是必須保證點沿著這個方向迭代我們想得到的函式值一定往收斂的方向跑);最後,一直這樣迭代求函式值下去,知道函式值達到我們的最小值;
當點是二維(或者大於二維的時候),我們可以通過同樣的方式求解,只不過,求一階導的時候增加了維度;求二階導就變成了海森矩陣;由於海森矩陣非奇異,因此可以求逆,這樣可以直接求得二維或者多維的點的迭代方向(按理說應該是一個向量);這樣依次迭代下去,按同樣的思路可以求得極值。
由於牛頓法的過程中,沒有迭代的步長因子,因此,對於二次項收斂(即,函式最高為二次項)的函式,一步迭代即可;而對於非二次項(比如三次項,用二次項的迭代方向有可能達不到想要的效果),其定長迭代會導致函式取值偏差很大,因此,牛頓法有上述缺點。
相關文章
- 機器學習-cs229-線性迴歸-泰勒展開法機器學習
- 用牛頓法求正數的開方值
- Softmax迴歸簡介
- 最速下降法、牛頓法和修正(阻尼)牛頓法
- 機器學習-牛頓法詳解機器學習
- Keras上實現Softmax迴歸模型Keras模型
- 【小白學AI】XGBoost推導詳解與牛頓法AI
- 【小白學AI】XGBoost 推導詳解與牛頓法AI
- tf.keras實現邏輯迴歸和softmax多分類Keras邏輯迴歸
- 牛頓迭代法 - 求解非線性方程根的近似解
- 牛頓迭代法求根
- 多元泰勒展開的陷阱
- 最優化演算法【牛頓法、擬牛頓法、BFGS演算法】優化演算法
- 【機器學習之數學】02 梯度下降法、最速下降法、牛頓法、共軛方向法、擬牛頓法機器學習梯度
- 詳解迴歸測試
- ML-邏輯迴歸-Softmax-交叉熵(小航)邏輯迴歸熵
- 機器學習中牛頓法凸最佳化的通俗解釋機器學習
- 迴歸本源:JavaScript 之中的值和引用JavaScript
- leetcode題解(遞迴和回溯法)LeetCode遞迴
- 沒教養的牛迴歸!《我叫MT:歸來》嗨皮開組
- 機器學習之牛頓法機器學習
- softmax迴歸——原理、one-hot編碼、結構和運算、交叉熵損失熵
- 線性迴歸——lasso迴歸和嶺迴歸(ridge regression)
- 求平方根 && 牛頓迭代法
- 多元函式的泰勒(Taylor)展開式函式
- 淺談微積分以及泰勒展開
- 卷積神經網路系列之softmax,softmax loss和cross entropy的講解卷積神經網路ROS
- 【動手學深度學習】第三章筆記:線性迴歸、SoftMax 迴歸、交叉熵損失深度學習筆記熵
- ES6 - 變數的解構賦值解析變數賦值
- 從零開始學機器學習——瞭解迴歸機器學習
- SSH 連線卡頓解決辦法
- 【機器學習】--迴歸問題的數值優化機器學習優化
- matlab練習程式(高斯牛頓法最優化)Matlab優化
- 數值分析:最小二乘與嶺迴歸(Pytorch實現)PyTorch
- 從“數學歸納法”到理解“遞迴演算法”!遞迴演算法
- 正規方程法來求解線性迴歸模型引數模型
- 對比線性迴歸、邏輯迴歸和SVM邏輯迴歸
- 讓價值迴歸價值—讀懂黑馬POE