欧美女同视频激情_国产原创中文字幕在线观看_4438xx亚洲最大五色丁香_成年做羞羞的视频网站在线观看_a毛片免费全部播_原神胡桃乳液vx网站进入_一区亚洲欧美中文日韩v在线观看_校园春色亚洲_搞机time软件app免费下载安装_十八禁无遮拦视频大全

北太天元應(yīng)用案例分享: 廣義線性模型

標簽: 數(shù)模競賽

社區(qū)小助手 2024-12-24 18:30:42

以下內(nèi)容為盧朓老師在B站進行的分享,可以作為學(xué)習(xí)參考:


在介紹廣義線性模型之前, 我們先看看常規(guī)線性回歸模型. 

常規(guī)線性回歸(ConventionalLinear Regression),也稱為普通最小二乘法(Ordinary Least Squares, OLS)線性回歸,是統(tǒng)計學(xué)和機器學(xué)習(xí)中最基礎(chǔ)且廣泛應(yīng)用的一種回歸分析技術(shù)。

這個可以參考北太天元科普:最小二乘法和線性回歸 - 嗶哩嗶哩 (bilibili.com)

常規(guī)線性回歸是一種用于分析兩個或多個變量之間線性關(guān)系的統(tǒng)計方法。它通過擬合一條直線(或超平面)來描述因變量(目標變量)與一個或多個自變量(預(yù)測變量)之間的關(guān)系。這種模型基于一個基本假設(shè):自變量與因變量之間存在線性關(guān)系。

常規(guī)線性回歸的數(shù)學(xué)表達式為:

* 簡單線性回歸(單變量):  Y = β_0 + β_1X + ε

* 多元線性回歸(多變量):    Y = β_0 + β_1X_1 + β_2X_2 + ... + β_nX_n + ε

其中,Y是因變量,X是自變量(在多元線性回歸中,X代表多個自變量X_1, X_2, ..., X_n),β_0是截距項,β_1, β_2, ..., β_n是回歸系數(shù),ε是誤差項,表示模型未能解釋的變異部分。

常規(guī)線性回歸通過最小二乘法來擬合模型。最小二乘法的目標是找到最佳的回歸系數(shù)β0, β1, ..., βn,使得實際觀測值與模型預(yù)測值之間的殘差平方和最小。殘差平方和的公式為:

RSS =    Σ_i(y_i - \hat{y}_i)^2  

其中,y_i是實際觀測值,\hat{y}_i是模型預(yù)測值。

常規(guī)線性回歸的有效性基于以下假設(shè)條件:

* 線性關(guān)系:自變量與因變量之間存在線性關(guān)系。

* 獨立性:觀測值之間相互獨立。

* 同方差性:誤差項的方差恒定。

* 正態(tài)性:誤差項服從正態(tài)分布。

上面的自變量又被稱為協(xié)變量、預(yù)測變量、解釋變量,  是那些用于預(yù)測或解釋 因變量(響應(yīng)變量)變化的變量。

線性回顧,我們假設(shè)因變量 Y|X \sim  N(\mu(X),\sigma^2)  , 我們的目的是尋找 E(Y|X) 也就是 \mu(X) ,  我們假設(shè) \mu(X)  = \beta_0 + \beta_1 X_1 + \cdots +\beta_k X_k = X^T \beta . 


在廣義線性模型(GLM)中,這些自變量通過線性組合的方式影響因變量的分布,即使這種影響在最終模型中可能表現(xiàn)為非線性關(guān)系。因此,盡管模型可能包含非線性的元素,但它們?nèi)匀槐灰暈?ldquo;線性”的,因為自變量的影響是通過線性組合傳遞的, 并通過鏈接函數(shù)與線性預(yù)測器建立非線性關(guān)系。廣義線性模型(GLMs)是統(tǒng)計學(xué)中一類非常強大且靈活的回歸模型,它擴展了普通線性回歸模型的應(yīng)用范圍。本文將對廣義線性模型進行詳細介紹,并清晰地闡述其數(shù)學(xué)基礎(chǔ)和應(yīng)用場景。

一、背景與動機

普通線性回歸模型假設(shè)響應(yīng)變量服從正態(tài)分布,且其均值是預(yù)測變量的線性函數(shù)。然而,在實際應(yīng)用中,這一假設(shè)往往不成立。例如,在二分類問題中,響應(yīng)變量通常服從二項分布;在計數(shù)數(shù)據(jù)中,響應(yīng)變量可能服從泊松分布。為了處理這些非正態(tài)分布數(shù)據(jù),廣義線性模型應(yīng)運而生。

二、廣義線性模型的基本概念

廣義線性模型包含三個主要組成部分:

  1. 隨機部分(random component):定義了響應(yīng)變量的概率分布。例如,在線性回歸中, 遵循正態(tài)分布;而在二元邏輯回歸中, 遵循二項分布。這是模型中唯一的隨機元素,不包含單獨的誤差項。常見的分布類型包括正態(tài)分布、二項分布、泊松分布等。

  2. 系統(tǒng)部分(systematic component):描述了模型中的解釋變量  及其線性組合。具體來說,就是這些解釋變量的加權(quán)和,如 。

  3. 鏈接函數(shù)(Link function, 記作 η 或 g(μ)):它連接了模型的隨機部分(響應(yīng)變量的分布)和系統(tǒng)部分(解釋變量的線性組合)。鏈接函數(shù)  或  是一個函數(shù),它將響應(yīng)變量的期望值  與解釋變量的線性組合 聯(lián)系起來。通過鏈接函數(shù),我們可以將線性預(yù)測器   (解釋變量的線性組合)轉(zhuǎn)換為響應(yīng)變量的期望值 。這允許我們使用線性模型來描述非線性的關(guān)系。在經(jīng)典回歸(即普通最小二乘回歸)中,鏈接函數(shù)是恒等函數(shù),即: 這里,鏈接函數(shù)沒有改變期望值的形式,因此線性預(yù)測器   直接等于響應(yīng)變量的期望值 。 在邏輯回歸中,響應(yīng)變量  通常是一個二值變量(例如,成功或失敗),其期望值  代表成功的概率 。邏輯回歸使用logit鏈接函數(shù),定義為: 其中, 是成功的概率。 通過這個鏈接函數(shù),我們可以將線性預(yù)測器    轉(zhuǎn)換為成功的概率  。具體來說,我們有: 這是邏輯回歸中著名的sigmoid函數(shù),它將線性預(yù)測器映射到(0, 1)區(qū)間內(nèi)的概率值。

在廣義線性模型(GLM)的框架中,假設(shè)響應(yīng)變量 Y 的條件分布屬于指數(shù)分布族是一個基本的、必需的假設(shè)。這個假設(shè)是GLM理論構(gòu)建的基礎(chǔ),它允許我們使用一套系統(tǒng)的方法來處理不同類型的響應(yīng)變量和預(yù)測變量之間的關(guān)系。

指數(shù)分布族包括了許多常見的分布,如正態(tài)分布、二項分布、泊松分布等,這些分布都可以通過GLM進行建模。在這個框架下,我們可以通過指定鏈接函數(shù)來連接線性預(yù)測器和響應(yīng)變量的期望值,從而靈活地適應(yīng)不同的數(shù)據(jù)特性和預(yù)測需求。

北太天元的用于廣義線性模型的擬合.

設(shè)響應(yīng)變量 Y  的條件分布屬于指數(shù)分布族,其概率密度函數(shù)(或概率質(zhì)量函數(shù))可以表示為:

  f(y; \theta, \phi) = \exp\left( \frac{y\theta - b(\theta)}{\phi} + c(y, \phi) \right)  

其中:

-     \theta   是自然參數(shù),決定了分布的具體形狀。

\phi  是尺度參數(shù),通常與分布的方差有關(guān)。

- b(\theta)  和  c(y,\phi) 是已知函數(shù),用于確保概率密度函數(shù)或概率質(zhì)量函數(shù)的積分(或求和)為1。

在廣義線性模型中,我們假設(shè):

1. 分布假設(shè):給定預(yù)測變量 X ,響應(yīng)變量  Y 的條件分布屬于指數(shù)分布族。

2. 線性預(yù)測器與期望值的聯(lián)系:響應(yīng)變量 Y 的數(shù)學(xué)期望值 E(Y) 是線性預(yù)測器 \eta = \beta_0 + \beta_1 x_1 + \cdots + \beta_k x_k 的函數(shù),即  E(Y|X) = g^{-1}(\eta)。這里  g 是鏈接函數(shù),它決定了線性預(yù)測器如何與響應(yīng)變量的期望值相聯(lián)系。

3. 自然參數(shù)與線性預(yù)測器的關(guān)系:自然參數(shù)   \theta   是線性預(yù)測器\eta    的函數(shù),即\theta = h(\eta)  。這進一步明確了線性預(yù)測器如何影響分布的具體形狀。

三、常見鏈接函數(shù)與分布類型

- 正態(tài)分布(Normal Distribution):

  - 用途:通常用于連續(xù)數(shù)據(jù)的預(yù)測。

  - 鏈接函數(shù):恒等函數(shù)(IdentityFunction),即   g(\eta) = \eta。因此,  E(Y|X) = \eta。

- 二項分布(Binomial Distribution):

  - 用途:用于二分類問題(如邏輯回歸)。

  - 鏈接函數(shù):Logit 函數(shù)(對數(shù)幾率函數(shù)),即   g(\eta) = \log\left( \frac{\eta}{1-\eta} \right)。因此,  E(Y|X) = \frac{1}{1 + e^{-\eta}}(即邏輯函數(shù))。

- 泊松分布(Poisson Distribution):

  - 用途:用于計數(shù)數(shù)據(jù)的建模(如事件發(fā)生的次數(shù))。

  - 鏈接函數(shù):自然對數(shù)函數(shù)(Natural LogarithmFunction),即   g(\eta) = \log(\eta)。因此,  E(Y|X) = e^\eta。

- 多項分布(Multinomial Distribution):

  - 用途:用于多分類問題。

  - 鏈接函數(shù):Softmax 函數(shù),即對于每個類別 i,有   g_i(\eta_i) = \log\left( \frac{\eta_i}{1 - \sum_{j \neq i} \eta_j} \right)  (在多類別情況下,鏈接函數(shù)應(yīng)用于每個類別的線性預(yù)測器,并確保所有類別的概率之和為1)。

廣義線性模型通過指數(shù)分布族和鏈接函數(shù)提供了一種靈活的框架,用于建模各種類型的數(shù)據(jù)和響應(yīng)變量。通過選擇合適的分布類型和鏈接函數(shù),我們可以構(gòu)建適應(yīng)不同數(shù)據(jù)特性和預(yù)測需求的模型。

 四、函數(shù)擬合和廣義線性回歸

開普勒第三定律,也稱為行星運動定律,描述了行星繞太陽運動的軌道周期與其軌道半長軸之間的關(guān)系。具體來說,該定律指出:繞以太陽為焦點的橢圓軌道運行的所有行星,其各自橢圓軌道半長軸的立方與周期的平方之比是一個常量。用數(shù)學(xué)表達式表示即:a³/T²=k,其中a是軌道半長軸,T是軌道周期,k是一個與行星無關(guān)的常量,只與中心天體(在這里是太陽)的質(zhì)量有關(guān)。這個關(guān)系實際上是一個非線性關(guān)系,因為它涉及到軌道半長軸的立方與周期的平方之比。在非線性關(guān)系中,變量之間的關(guān)系不是直線或平面,而是曲線或更復(fù)雜的形狀。開普勒第三定律中的這種非線性關(guān)系揭示了行星運動的一個基本規(guī)律,即行星的軌道周期與其軌道大小之間存在一個特定的比例關(guān)系。

對一系列觀測數(shù)據(jù)進行函數(shù)擬合在天文學(xué)、物理學(xué)、工程學(xué)等多個領(lǐng)域中非常常見,用于預(yù)測、解釋數(shù)據(jù)背后的物理規(guī)律或進行模型優(yōu)化。函數(shù)擬合的目標通常是找到一個數(shù)學(xué)函數(shù),該函數(shù)能夠盡可能準確地描述觀察的數(shù)據(jù)點。

在許多情況下,數(shù)據(jù)可能呈現(xiàn)出非線性關(guān)系,這使得直接擬合變得復(fù)雜。然而,通過對變量取對數(shù),可以將某些類型的非線性關(guān)系轉(zhuǎn)化為線性關(guān)系,從而簡化擬合過程。這種方法基于對數(shù)函數(shù)的特性,即對數(shù)函數(shù)可以將乘法關(guān)系轉(zhuǎn)化為加法關(guān)系。

具體來說,如果數(shù)據(jù)呈現(xiàn)出指數(shù)關(guān)系(例如,y = a \exp(bx)),則可以通過對 y 取對數(shù)來將其轉(zhuǎn)化為線性關(guān)系(我們舉得例子還kepler做得 T = 1/k * a^(3/2) 不太一樣,但是道理是類似的):

\log(y) = \log(a) + bx

這樣,原本的非線性關(guān)系就變成了關(guān)于$ log(y) 和 x 的線性關(guān)系,可以使用線性回歸等簡單方法來進行擬合。

廣義線性模型(GLM)是線性模型的擴展,它允許因變量服從更廣泛的概率分布,并通過鏈接函數(shù)將線性預(yù)測器與因變量的期望值或分布聯(lián)系起來。在GLM的框架中,當(dāng)因變量服從指數(shù)分布族(如泊松分布、伽馬分布等)時,通常會使用對數(shù)鏈接函數(shù)。

將對數(shù)轉(zhuǎn)換與GLM聯(lián)系起來的關(guān)鍵在于,對數(shù)轉(zhuǎn)換實際上是一種特殊形式的鏈接函數(shù)。在GLM中,鏈接函數(shù)用于將線性預(yù)測器(即自變量的線性組合)映射到因變量的期望值或分布上。對于指數(shù)分布族,對數(shù)鏈接函數(shù)是一種常用的選擇,因為它能夠保持因變量與自變量之間的非線性關(guān)系(在原始尺度上),同時在線性預(yù)測器的尺度上保持線性關(guān)系。

因此,當(dāng)我們通過取對數(shù)來轉(zhuǎn)化非線性關(guān)系為線性關(guān)系并進行擬合時,實際上是在使用一種類似于GLM中的對數(shù)鏈接函數(shù)的方法。雖然很多時候我們可以采用更加直觀和簡單的方法(例如,直接對因變量和自變量單獨或者同時取對數(shù),然后使用線性回歸),但GLM提供了更嚴格的統(tǒng)計框架和更廣泛的適用性。下面我們用代碼給出 數(shù)據(jù)呈現(xiàn)出指數(shù)關(guān)系y = a*exp(bx),我們使用兩種方法來做數(shù)據(jù)擬合: 第一種方法是使用對y取對數(shù),然后使用線性回歸(或者說最小二乘法);第二種方法是使用GLM(特別是選擇泊松分布和對數(shù)鏈接函數(shù))。 第一種方法我們使用北太天元的 polyfit 函數(shù), 第二種方法,我們使用北太天元的 glmfit 函數(shù)。 

% 生成模擬數(shù)據(jù) 
n = 30; % 數(shù)據(jù)點數(shù)量 
x = linspace(0, 10, n)'; % 自變量 
a = 2; % 指數(shù)函數(shù)參數(shù)a 
b = 0.5; % 指數(shù)函數(shù)參數(shù)b 
y = a * exp(b * x) + randn(n, 1) * 0.05; % 因變量,添加了一些噪聲 

% Kepler的指數(shù)函數(shù)擬合(假設(shè)他已知是指數(shù)關(guān)系) 
% 對y取對數(shù),轉(zhuǎn)化為線性關(guān)系 
log_y = log(y);   % log_y = log(a) + b * x ; 

% 使用線性回歸擬合轉(zhuǎn)化后的數(shù)據(jù) 
p_kepler = polyfit(x, log_y, 1); % 這里polyfit只用于演示,實際上Kepler可能用其他方法 
beta_kepler = [p_kepler(1), exp(p_kepler(2))]; % 注意,我們需要將截距項轉(zhuǎn)化回原始尺度  b = p_kepler(1), a = e^(p_kepler(2)) 

% 使用glmfit函數(shù)進行擬合 
% 對于指數(shù)關(guān)系,我們使用'poisson'分布和對數(shù)鏈接函數(shù)(這是GLM中的標準設(shè)置) 
% 但是,注意MATLAB的glmfit默認不處理指數(shù)分布的截距項,因此我們需要手動添加一個常數(shù)項 
X = [ones(n, 1), x]; % 添加常數(shù)項1到自變量中 
beta_glm = glmfit(X, y, 'poisson', 'Link', 'log'); 

% 比較結(jié)果 
disp('Kepler擬合結(jié)果:'); 
disp(beta_kepler); 

disp('GLM擬合結(jié)果:'); 
disp(beta_glm); 

% 繪制結(jié)果比較 
% 原始數(shù)據(jù)
 figure; 
 scatter(x, y, 'b', 'filled'); 
 hold on; 
 
 % Kepler擬合曲線 
 y_kepler = beta_kepler(2) * exp(beta_kepler(1) * x); 
 %y_kepler = exp(p_kepler(2)+p_kepler(1) * x); 
 plot(x, y_kepler, 'r-', 'LineWidth', 2); 
 
 % GLM擬合曲線 
 % 注意,glmfit返回的是對數(shù)尺度上的參數(shù),我們需要轉(zhuǎn)化回原始尺度 
 % 對于泊松分布,GLM的擬合結(jié)果是log(mu),所以我們需要使用exp函數(shù) 
 y_glm = exp([ones(size(X,1),1), X] * beta_glm); 
 plot(x, y_glm, 'g--', 'LineWidth', 2); 
 
 legend('原始數(shù)據(jù)', 'Kepler擬合', 'GLM擬合'); 
 xlabel('x'); ylabel('y'); 
 title('北太天元: Kepler擬合與GLM擬合比較'); 
 hold off;


 五、應(yīng)用場景 

廣義線性模型在各個領(lǐng)域都有廣泛的應(yīng)用,包括但不限于:  - 醫(yī)學(xué):用于疾病診斷、治療效果評估等。  - 生物學(xué):用于基因表達數(shù)據(jù)分析、種群動態(tài)模型等。  - 經(jīng)濟學(xué):用于需求分析、風(fēng)險評估等。  - 社會學(xué):用于投票行為分析、犯罪率預(yù)測等。


六、glm的鏈接函數(shù)和神經(jīng)網(wǎng)絡(luò)的激活函數(shù)

廣義線性模型(GLM)的鏈接函數(shù)和神經(jīng)網(wǎng)絡(luò)的激活函數(shù)在作用上有一定的相似性,它們都是為了引入非線性因素,使得模型能夠捕捉到數(shù)據(jù)中的復(fù)雜關(guān)系。然而,盡管它們在功能上有所重疊,但在發(fā)展背景、理論基礎(chǔ)以及應(yīng)用靈活性上確實存在一些差異。

GLM的鏈接函數(shù)起源于統(tǒng)計學(xué)的廣義線性模型框架,這一框架是在對經(jīng)典線性回歸模型進行擴展的基礎(chǔ)上發(fā)展起來的。鏈接函數(shù)的主要作用是將線性預(yù)測器(即自變量的線性組合)與響應(yīng)變量的期望值或分布聯(lián)系起來。由于GLM的理論基礎(chǔ)較為堅實,鏈接函數(shù)的選擇通常受到嚴格的數(shù)學(xué)和統(tǒng)計理論的約束,以確保模型的合理性和可解釋性。因此,在GLM中,鏈接函數(shù)的選擇往往比較有限,且需要滿足一定的數(shù)學(xué)性質(zhì),如單調(diào)性和可逆性。

相比之下,神經(jīng)網(wǎng)絡(luò)的激活函數(shù)則更加靈活多樣。神經(jīng)網(wǎng)絡(luò)作為一種機器學(xué)習(xí)算法,其目標是通過對大量數(shù)據(jù)進行訓(xùn)練,學(xué)習(xí)到數(shù)據(jù)中的復(fù)雜模式和規(guī)律。激活函數(shù)在神經(jīng)網(wǎng)絡(luò)中扮演著至關(guān)重要的角色,它們通過引入非線性因素,使得神經(jīng)網(wǎng)絡(luò)能夠逼近更加復(fù)雜的函數(shù)或映射。與GLM的鏈接函數(shù)相比,神經(jīng)網(wǎng)絡(luò)的激活函數(shù)沒有嚴格的數(shù)學(xué)和統(tǒng)計理論約束,因此可以選擇更加多樣化和靈活的函數(shù)形式。此外,隨著深度學(xué)習(xí)的發(fā)展,人們還不斷提出新的激活函數(shù),以適應(yīng)不同任務(wù)和數(shù)據(jù)的需求。

總的來說,雖然GLM的鏈接函數(shù)和神經(jīng)網(wǎng)絡(luò)的激活函數(shù)在作用上相似,但它們在發(fā)展背景、理論基礎(chǔ)以及應(yīng)用靈活性上存在差異。GLM的鏈接函數(shù)更加注重理論分析和可解釋性,而神經(jīng)網(wǎng)絡(luò)的激活函數(shù)則更加靈活多樣,能夠適應(yīng)不同任務(wù)和數(shù)據(jù)的需求。在實際應(yīng)用中,需要根據(jù)具體問題和數(shù)據(jù)特點選擇合適的模型和方法。


七、結(jié)論

廣義線性模型通過放寬普通線性回歸模型的假設(shè),擴展了其應(yīng)用范圍,使其能夠處理各種類型的數(shù)據(jù)和響應(yīng)變量。通過選擇合適的鏈接函數(shù)和分布類型,廣義線性模型能夠靈活地適應(yīng)不同的實際問題,為統(tǒng)計分析和數(shù)據(jù)挖掘提供了強大的工具。



再給出北太天元一個使用glmfit 的例子, 代碼如下: 

% 生成示例數(shù)據(jù) 
N = 100; % 樣本大小 
X = randn(N, 2); % 生成兩個服從正態(tài)分布的預(yù)測變量 
% 添加常數(shù)項(截距項) 
X = [ones(N, 1), X]; 

% 生成二項響應(yīng)變量(0 或 1) 
% 這里我們使用一個邏輯回歸模型來生成響應(yīng)變量,但使用不同的系數(shù) 
true_beta = [0.5; -0.3; 0.2]; % 真正的回歸系數(shù) 
p = 1 ./ (1 + exp(-X * true_beta)); % 計算響應(yīng)變量的概率 
y = rand(N, 1) < p; % 生成響應(yīng)變量 

% 使用 glmfit 進行邏輯回歸 
% 指定響應(yīng)變量分布為 'binomial' 
beta_hat = glmfit(X(:,2:3), y, 'binomial'); % 注意:這里我們排除了常數(shù)項列 

% 輸出估計的回歸系數(shù) 
disp('Estimated coefficients:'); 
disp(beta_hat); 

% 計算預(yù)測的概率 p_hat = 1 ./ (1 + exp(-X * beta_hat)); % 注意:這里我們添加了常數(shù)項1 

% 評估模型性能 
% 例如,可以計算準確率、精確率、召回率等,但這里我們僅計算準確率作為示例 
predicted_y = p_hat > 0.5; % 使用 0.5 作為閾值進行預(yù)測 
accuracy = mean(predicted_y == y); 
disp(['Accuracy: ', 
num2str(accuracy)]);



回復(fù)

回復(fù)

重置 提交