1. 程式人生 > >1. 線性迴歸梳理

1. 線性迴歸梳理

迴歸在數學上來說是給定一個點集,就能夠用一條曲線去擬合之。如果這個曲線是一條直線(超平面),那就被稱為線性迴歸。若不是一條直線則稱為非線性迴歸,常見有多項式迴歸、邏輯迴歸等。

線性模型優劣:

優點:結果易於理解,計算上不復雜;

缺點:對非線性的資料擬合不好

1. 線性模型表示

一般線性模型表示: y^=θ0+θ1x1+θ2x2++θnxn\hat{y} = \theta_0 + \theta_1x_1 + \theta_2x_2 + \cdots + \theta_nx_n 其中 x1,x2x_1,x_2 等表示不同的特徵, θ1,θ1\theta_1,\theta_1 等表示特徵權重

向量形式寫成: y^=hθ(x)=θTx \hat{y} = h_\theta(x) = \theta^Tx

2. 最小二乘法

線性模型用一個直線(平面)擬合數據點,找出一個最好的直線(平面)即要求每個真實點距離平面的距離最近。即使得殘差平方和(Residual Sum of Squares, RSS)最小:

RSS(X,hθ)=i=1m(θTx(i)y(i))2 RSS(X, h_\theta) = \sum_{i=1}^m{(\theta^Tx^{(i)}-y^{(i)})^2}

另一種情況下,為消除樣本量的差異,也會用最小化均方誤差(MSE)擬合: MSE(X,hθ)=1mi=1m(θTx(i)

y(i))2 MSE(X, h_\theta) = \frac{1}{m}\sum_{i=1}^m{(\theta^Tx^{(i)}-y^{(i)})^2}

3. 誤差

真實值與誤差值之間會肯定會存在差異(用 ε\varepsilon 表示誤差)

且誤差 ε(i)\varepsilon^{(i)}獨立並且同分布的, 並且服從均值為 0 方差 θ2\bf{\theta^2}高斯分佈

故對每個真實樣本,有 y(i)=θTx(i)+ε(i) {y^{(i)} = \theta^Tx^{(i)} + \varepsilon^{(i)}}

4. 最大似然估計

最大似然估計(maximum likelihood estimation, MLE)一種重要而普遍的求估計量的方法。通過調整估計引數,使得已經實現的樣本發生概率最大。

由於誤差服從高斯分佈,先不考慮方差,則出現誤差 ε(i)\varepsilon^{(i)} 的概率為: p(ε(i))=12πσexp((ε(i))22σ2) p(\varepsilon^{(i)}) = \frac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(\varepsilon^{(i)})^2}{2\sigma^2}) 將誤差代入以上公式,得: p(y(i)x(i);θ)=12πσexp((y(i)θTx(i))22σ2) p(y^{(i)}|x^{(i)};\theta) = \frac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(y^{(i)} - \theta^Tx^{(i)})^2}{2\sigma^2}) 對已發生的樣本,出現的概率為: L(θ)=i=1mp(y(i)x(i);θ)=i=1m12πσexp((y(i)θTx(i))22σ2) L(\theta) =\prod_{i=1}^{m} p(y^{(i)}|x^{(i)};\theta) =\prod_{i=1}^{m}\frac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(y^{(i)} - \theta^Tx^{(i)})^2}{2\sigma^2}) 兩邊去取對數: logL(θ)=logi=1m12πσexp((y(i)θTx(i))22σ2)=i=1mlog12πσ1σ212i=1m(y(i)θTx(i))2\begin{aligned} log\ L(\theta) &=log\ \prod_{i=1}^{m}\frac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(y^{(i)} - \theta^Tx^{(i)})^2}{2\sigma^2})\\ &=\sum_{i=1}^{m}log\ \frac{1}{\sqrt{2\pi}\sigma}-\frac{1}{\sigma^2}\cdot\frac{1}{2}\sum_{i=1}^{m}(y^{(i)} - \theta^Tx^{(i)})^2 \end{aligned} 使出現概率最大,即使上面方程達到最大,通過簡單變換轉換成求最小值問題,得使以下方程最小: J(θ)=12i=1m(y(i)θTx(i))2 J(\theta) =\frac{1}{2}\sum_{i=1}^{m}(y^{(i)} - \theta^Tx^{(i)})^2 以上方程與最小二乘法相似,以下均以此函式作為損失函式。

5. 求解

主要求解方法有兩種,正規方程法以及梯度下降法。有時候,寫成矩陣寫法會方便我們計算: J(θ)=12i=1m(y(i)θTx(i))2=12(XθY)T(XθY) J(\theta) =\frac{1}{2}\sum_{i=1}^{m}(y^{(i)} - \theta^Tx^{(i)})^2 =\frac{1}{2}(X\theta-Y)^T(X\theta-Y)

相關推薦

1. 線性迴歸梳理

迴歸在數學上來說是給定一個點集,就能夠用一條曲線去擬合之。如果這個曲線是一條直線(超平面),那就被稱為線性迴歸。若不是一條直線則稱為非線性迴歸,常見有多項式迴歸、邏輯迴歸等。 線性模型優劣: 優點:結果易於理解,計算上不復雜; 缺點:對非線性的資料擬合不好 1

資料學習(1線性迴歸和Logistic迴歸

本系列是作者上課時記錄的筆記整理,同時有對應的作業習題,自學的同學參考部落格同步即可。郵箱聯絡[email protected] Preview: 監督學習(第一部分) 線性迴歸 Logistic迴歸 Softmax迴歸

迴歸專題-1-線性迴歸基礎

Title: 迴歸專題-1 | 線線性迴歸基礎 導讀 ① 線性迴歸(又稱線性模型),通過一個或者多個預測變數(X)來預測定量結局變數(Y)[1]。 ② 目標是建立一個數學公式,將y定義為x變數的函式。統計模型一旦建立,就可以通過對新加入的變數進行預測。 ③ 迴歸模型的建立,需要

TensorFlow HOWTO 1.1 線性迴歸

1.1 線性迴歸 線性迴歸是你能用 TF 搭出來的最簡單的模型。 操作步驟 匯入所需的包。 import tensorflow as tf import numpy as np import matplotlib.pyplot as plt import sklearn.

機器學習1——線性迴歸

一、參考 二、 線性迴歸 基本表示: x:特徵/輸入變數/自變數 y:目標變數/觀測值 h(x):假設/模型/函式 對於特徵x,xi表示該特徵的第i個樣本輸入,xj表示在多特徵迴歸中的第j個特徵,xij表示第j個特徵的第i個樣本輸入。i<=m(樣本

Tensorflow擼程式碼之1線性迴歸

線性迴歸 參考:地址 # _*_ encoding=utf8 _*_ import tensorflow as tf import numpy as np import matplotlib.pyplot as plt # 初始化 learn_rate =

Ng深度學習筆記 1-線性迴歸、監督學習、成本函式、梯度下降

他講了監督學習的兩類問題,分類和迴歸,並引入了兩個例子。一個講用現有的房屋面積和房價的資料集推算任意房子的價格(可認為是連續的),然後再引入其他模型引數,比如臥室個數等。另一個講用腫瘤的大小來推斷是否為良性或惡性腫瘤,如果引入其他引數,比如腫瘤細胞大小的一致

1.線性迴歸的推導--梯度下降法

1.線上性迴歸問題中,我們通常使用下面公式來擬合訓練集: 其中,為特徵向量的個數; 2.如圖假設x是二維的,則有 3.我們可以將損失函式表示為: 4.  我們將目標函式轉成求損失函的最小值,該問題已經轉換成了最小二乘問題,因此我們可以使用梯度下降法對求最

深度學習1-線性迴歸,邏輯迴歸

這些天在寫前幾個月學習的三維重建方面的知識的同時,也開始學習著目前比較火的深度學習。學習這個不是跟著潮流,總是在想讀研到底學到了什麼。 我想也就是個自學能力吧。其實感覺自己反而有點不自信了,本科畢業什麼都不擔心,可是現在擔心的越來越多,人也慢慢變得浮躁起來,嗨,不多說了,寫

機器學習各個演算法---1.線性迴歸

1.最原始的linear regression 標準迴歸函式和文字資料匯入函式 from numpy import * def loadDataSet(fileName): #general function to parse tab -delimited f

python機器學習及實踐 第二章的2.1.2.1線性迴歸器程式報錯Reshape your data either using array.reshap(-1,1)的原因及解決方法

最近在看Python機器學習及實踐(從零開始kaggle競賽之路)這本書,到了第二章的線性迴歸器的GradientBoostingRegressor模型照著敲程式碼的時候 出現了以下的錯誤 出錯的問題在於標準化函式這裡。 可見fit_tran

Machine Learning 1-線性迴歸演算法分析

AI人工智慧時代,機器學習,深度學習作為其核心,本文主要介紹機器學習的基礎演算法,以詳細線介紹 線性迴歸演算法 及其 數學原理 探究,做到知其然知其所以然,打好理論基礎。 目錄 機器學習及人工智慧 機器學習分類 有監督學習 無監督學習 線性迴歸演

初學ML筆記N0.1——線性迴歸,分類與邏輯斯蒂迴歸,通用線性模型

1.線性迴歸 線性迴歸,即假設使用一個線性的模型方程,來擬合特徵與結果,如下 向量形式: x1,x2為輸入特徵。在上式中,theta則為每個特徵所對應的權重值,上式隱含了一個條件,即我們假設還有x0這個特徵,其值全部為1。 定義cost

線性迴歸.1

機器學習分為有監督學習和無監督學習。 有監督學習分為迴歸問題和分類問題。 Regression 迴歸問題是指我們想要預測連續的數值輸出 Classification 分類是指我們設法預測一個離散值輸出(0 or 1),有時也可以存在有兩個以上的可能的輸出值。   設有一組資料,x為自變數,

【ML模型詳細推導1】- 線性迴歸

線性迴歸 0. 資料集和目標 1. 模型 2. 策略 3. 演算法(模型求解) 3.1 正規方程法 3.2 梯度下降法 4. 廣義線性模型 學習過程主要順著 周志華《機器學習》第三章線性模型

【機器學習經典演算法梳理】一.線性迴歸

【機器學習經典演算法梳理】是一個專門梳理幾大經典機器學習演算法的部落格。我在這個系列部落格中,爭取用最簡練的語言、較簡潔的數學公式,和清晰成體系的提綱,來盡我所能,對於演算法進行詳盡的梳理。【機器學習經典演算法梳理】系列部落格對於機器學習演算法的梳理,將從“基本思想”、“基本形式”、“過程推導”、“

【ML_Algorithm 1線性迴歸——演算法推導及程式碼實現

::::::::線性迴歸::::::::        第一式                   第二式 從式一到式二,需要新增一個  

線性迴歸基礎梳理

    一.概念 1.損失函式   損失函式(Loss function)是用來估量你模型的預測值 f(x)f(x) 與真實值 YY 的不一致程度,它是一個非負實值函式,通常用 L(Y,f(x))L(Y,f(x))來表示。   常

深度學習&PyTorch筆記 (1線性迴歸模型

首先建立模型 class LinearRegression(nn.Module): def __init__(self): super(LinearRegression, self).__init__() # nn.Module 的初

機器學習--線性迴歸1(一元線性迴歸、多元線性迴歸,誤差性質)

前面幾節都是監督學習方面的演算法,監督學習是指有目標變數或預測目標的機器學習方法,迴歸與分類的不同,就在於其目標變數是連續數值型,而分類的目標變數是標稱型資料,其實前面的Logistic迴歸就是迴歸的一種,他們的處理方法大同小異,在這裡系統的講解一下回歸的來龍去脈,理解影響迴