## 介紹回歸 Regression 迴歸分析是一種統計與機器學習技術,用於描述和分析因變數與自變數之間的關係,它的目標在於建構數學模型來進行預測或解釋,例如,迴歸模型可用於預測股票市場走勢、控制自駕車方向盤角度,或分析商品在推薦系統中的購買可能性等。 ### 建立回歸模型的三步驟 1. 定義帶有未知參數的函式:描述自變數(輸入特徵)與因變數(預測目標)的關係。 2. 定義誤差函式:量化模型預測結果與真實值之間的差距。 3. 優化 (Optimization):調整模型參數,使誤差函式的值最小化。 ## 線性回歸模型(Regression model) 線性模型假設因變數可以表示為自變數的線性組合,其數學形式為 $ŷ = w_1 x_1 + w_2 x_2 + \cdots + w_n x_n + b$ ,其中 $ŷ$ 代表預測目標, $𝑥_1 , 𝑥_2 , … , 𝑥_𝑛$ 代表輸入特徵, $𝑤_1 , 𝑤_2 , … , 𝑤_𝑛$ 是權重,$b$ 則是偏值,然而模型的預測結果 $ŷ$ 會與實際值 $y$ 之間產生誤差,因此需要使用誤差函式(Loss funciton)進行衡量。 在迴歸模型中,常用的誤差函式為均方誤差(MSE),其數學表示如下:$\text{MSE} = \frac{1}{m} \sum_{i=1}^{m} \left( y_i - \hat{y}_i \right)^2$ ,其中, $m$ 是樣本數量,$ŷ_i$ 為模型對第 i 個樣本的預測值, $y_i$ 為第 i 個樣本的真實值,當 MSE 越小時,表示模型的預測結果越接近真實值,模型的準確度也越高。 為了使誤差函式的值最小化,迴歸模型通常採用梯度下降法(Gradient Descent)進行優化,梯度下降法是一種迭代式的優化算法,其原理是計算損失函式對於模型參數的偏導數,並沿著負梯度方向更新參數,以逐步逼近 loss 最小值。  其中,η 代表學習率 (Learning rate),可以作為控制每次更新的步伐大小。 :::info MSE 是一個凸函數(Convex Function),這表示它的損失函數圖形呈現單一最小值(Global Minimum),因此不會陷入局部極小值(Local Minima),這使得線性迴歸的最佳解可以透過梯度下降法(Gradient Descent)來有效找到,不用擔心優化過程中的困難。 ::: ### 線性迴歸需滿足的基本假設 1. 線性關係(Linearity):線性迴歸模型假設應變數 ŷ 與自變數 x 之間具有線性關係。 2. 無異常值(No Outliers):指明顯偏離數據分布的點,導致回歸係數被極端值拉動。 3. 殘差常態性(Normality of Residuals):若殘差不符合常態分佈,則可能影響估計結果的可信度。 4. 自變數獨立性(No Multicollinearity):當自變數 x 彼此高度相關時,會導致迴歸係數不穩定,影響模型解釋力。 ## 非線性回歸模型 然而,現實世界中的許多現象並不遵循線性規律,因此,在處理這些複雜數據時,有時非線性回歸模型更為適合,如 $ŷ = b + w_1 \cdot x_{1} + w_2 \cdot (x_{2})^2 + ...$ 或者非線型激活函式例如 Hard sigmoid、ReLU(Rectified Linear Unit)和 Sigmoid 函數。 ### Hard sigmoid 在數學與工程應用中,分段線性曲線(Piecewise Linear Curve)是一種重要的函數表示方式,它透過將整體函數拆分為若干線性區段,來簡化非線性問題的處理。 $$ \text{HardSigmoid}(x) = \begin{cases} 0 & \text{if } x \leq -2.5 \\ 0.2x + 0.5 & \text{if } -2.5 < x < 2.5 \\ 1 & \text{if } x \geq 2.5 \end{cases} $$ Hard Sigmoid 使用一個分段線性函數來近似 sigmoid 的形狀,它不需要計算指數函數,僅透過加法與乘法便可實作,非常適合在計算效率或能源消耗受限的場景中使用。  ### ReLU ReLU 函數的數學定義為 $ReLU ( z ) = max ( 0 , z )$,它的特點在於對於輸入值為正數時,輸出與輸入相同;而對於負數輸入,輸出則為 0。這種設計簡單高效,計算成本低,並且能有效減輕深層神經網路中的梯度消失問題。然而,ReLU 也有其不足之處,當某些神經元的輸出長期為 0 時,這些神經元可能會喪失學習能力,導致所謂的 "死亡 ReLU" 問題。 ### Sigmoid 相較之下,Sigmoid 函數的數學形式為 $\text{Sigmoid}(z) = \frac{1}{1 + e^{-z}}$ 。該函數將輸入值壓縮到 (0,1) 的範圍內,適合於概率預測問題。由於其輸出範圍有限,Sigmoid 能夠平滑地表示數據的非線性變化,但在輸入值過大或過小時,函數的導數接近 0,容易導致梯度消失現象。因此,在處理深層網絡時,Sigmoid 函數逐漸被 ReLU 所取代。  :::info 以上就是這篇文章「線性/非線性回歸模型-Regression」的所有內容,第一次看的人會花比較多時間消化吸收,這是很正常的事情,若有任何問題,歡迎在下方與我聯繫、討論,接下來也會繼續分享相關文章,敬請期待。 :::
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up