熱線電話:13121318867

登錄
首頁精彩閱讀基于R和Python 如何使用多項式和有序邏輯回歸
基于R和Python 如何使用多項式和有序邏輯回歸
2016-03-23
收藏

基于R和Python 如何使用多項式和有序邏輯回歸

我們中的大多數對于回歸的知識是有限的。其中,線性和邏輯回歸是我們最喜歡的一種。作為一個有趣的事實,回歸具有擴展的能力來處理不同類型的變量。你是否知道,回歸規定處理多層次的變量嗎?我肯定,你沒有,我也沒有。直到我被推到探索這方面的回歸。

對于多層次的變量,很多機器學習算法可以替你做工作。例如,樸素貝葉斯,決策樹,隨機森林等的初學者,這些算法可能有些難以理解。但是,如果你很好的理解邏輯回歸,掌握這一新的回歸應該是很容易的!

在這篇文章中,我已經解釋了使用多項式和序數回歸的方法。此外,為了實際的目的,我們已經證明這個算法在一個循序漸進的R潮流中。

注:這篇文章是最適合具有領先經驗的邏輯回歸的R用戶。然而,如果你用Python,你仍然可以得到一個全面的了解這個回歸的方法。

時間序列預測全攻略(附帶Python代碼)

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>


多元回歸是什么?

多遠回歸是一種線性回歸分析,因變量是名義上的兩個或兩個以上的水平。它用來描述數據,并解釋一個依賴名義變量和一個或多個聯系水平(時間間隔或比例規模)的獨立變量之間的關系。你可以理解的名義變量,一個沒有內在順序的變量。

例如:森林類型:”常綠闊葉林””落葉林”,”雨林”。正如你看到的,他們之間有一個內在的秩序,但是每一類都代表一個獨特的分類。換句話說,多項式回歸是回歸分析邏輯的延伸,分析了獨立二進制。

多元回歸是如何運作的?

多元邏輯回歸評估了每個虛擬變量的二元邏輯回歸模型。其結果是M-1二元邏輯回歸模型。每一個模型都傳達了,在比較參考的類別中,該類別成功概率的影響。

每個模型都有自身的截距和回歸系數——預測可以影響每個不同類別。讓我們將這一部分與我們的經典之作進行比較——線性和邏輯回歸。

標準的線性回歸需要變量成為連續水平(時間間隔或比率)的規模。然而,邏輯回歸通過假設變量是一個隨機事件,跳躍了差距。因變量描述該隨機事件與密度函數的結果(一個累積概率從0到1的功能)。

統計人員認為,一個事件的概率小于0.5時則會發生,概率大于0.5時則是相反的情況。

現在我們知道MLR延伸了二元邏輯模型給一個眾多類別的模型(因變量)。然而,它有一個限制。這個屬于結果的類別并不假設任何順序。例如,如果我們有N個有相等概率的類別。在現實中,我們遇到了一個自然順序的類別的問題。

那么,當我們的因變量有一個自然順序的類別時,我們該做什么?這種情況下,有序回歸可以拯救我們。

有序回歸是什么?

有序回歸(也稱序邏輯回歸)是二項邏輯回歸的又一延伸。有序回歸是用來預測變量與”有序”多個類別和獨立變量。換句話說,它是用來促進一個或多個獨立變量的相互作用的依賴變量(具有多個有序的水平)。

例如:讓我們假設一項已經完成的調查。我們問了調查者一個在同意與不同意之間的問題?;仞伒氖占]有幫助我們很好的概括。后來,我們增加了我們的反應機制例如:非常不同意,不同意,同意,非常不同意。

這有助于我們觀察自然秩序的種類。因為我們的回歸模型是現實的,我們必須感謝這個順序不是生來就有的,正如MLR的情況,有序邏輯回歸解決了這種情況。有序意味著類別的順序。

實例:

在我們演算這些算法之前,讓我們確保我們已經獲得了一個具體的理解,使用下面的案例:

案例1:(多項式回歸)

高中生可以用多項式LOGIT模型完成程序建模選擇。程序選擇可以是一般程序,職業程序和學術程序。他們的選擇可以用他們的寫作成績和他們的社會經濟地位來建模。

基于各種屬性,如社會地位,渠道類型,學生所得到的獎項和榮譽,性別,經濟地位以及他們在一個給定的題目中他們能夠寫的或者讀的有多好,程序類型的選擇可以預測。多層次的程序選擇(無序)是因變量。本案適用于多元邏輯回歸技術。

案例2(有序回歸)

一項研究著眼于是否一些因素會影響到申請研究生學校的決定。高校學生被問到他們是不可能,有點可能,或者很有可能申請研究生學院。因此,我們的結果變量有三類,即,不可能,有點可能和非常有可能。

父母對子女教育情況的數據,制度類(私營或國營),收集當前GPA。研究人員有理由相信,這三個點之間的”距離”是不平等的。例如,”不可能”和”有點可能”之間的”距離”可能比”有點可能”和”有可能”的距離短。在這種情況下,我們將使用有序回歸。

R下的多元邏輯回歸(MLR)

讀取文件

大數據

現在我們將用2個獨立變量進行多項式回歸

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

解釋

1、模型執行輸入顯示了一些迭代的歷史,包括最終的像179.981726的負對數。這個值乘以兩個模型最終顯示殘余偏差。

2、摘要輸出有一個板塊的系數和另一個板塊的標準差。每個區塊有一行對應于一個模型方程的值。在系數的區塊,我們可以看到,第一行是比較prog=general 與我們的基礎 prog=academic,并且第二行 prog=vocation與我們的基礎prog=academic.

3、在一般程序與0.0579的學術計劃,一個寫日志記錄的單位的增長會降低。

4、在職業計劃與0.1136的學術課程,一個寫日志記錄的單位的概率增長會降低。

5、如果從ses=low到ses=high, 一般程序的日志概率比學術程序降低1.163.

6、另一方面,如果從ses=low到ses=middle,一般程序的日志概率比學術計劃中的減少0.5332。

7、如果從ses=low到ses=high,職業計劃的日志概率比學術計劃減少0.983.

8、如果從ses=low 到ses=middle,職業計劃的日志概率比學術計劃增加0.291.

現在我們將計算模型中的變量Z值與P值。

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

P值告訴我們,ses變量并沒有限制。我們現在將探索整個數據集,并分析我們是否可以刪除不添加到模型性能的任何變量。

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

在移除ID和程序變量之后,讓我們在整個數據集中建立一個數據多項式模型。

大數據大數據

讓我們檢查一下現在的值。

大數據

一旦我們建立了這個模型,我們就用它來預測。讓我們用不同的排列組合創建一個新的數據集。

大數據

現在,我們計算出預測值。參數 type=probs, 指定我們對于概率的興趣。為了直觀的理解去繪制預測的概率,我們增加了預測概率值的數據。

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

現在,我們要計算每個水平的ses的平均概率。

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

我使用從reshape 2 package 中的Melt()功能。它帶著每一個行都是獨特的身份變量的組合,融合數據。

> library("reshape2")

## Warning: package 'reshape2' was built under R version 3.1.3

> bpp2 = melt (bpp,id.vars=c("female", "ses","schtyp", "read","write","math","science","socst","honors", "awards"),value.name="probablity")

> head(bpp2)

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

現在我們將探討因變量與自變量的分布,并繪制圖形。使用ggplot()功能。在ggplot,這個函數的第一個參數是數據值繪制。第二部分在( aes())綁定變量X和Y軸。我們告知使用geom_line()繪圖功能畫出一條線。我們通過繪制不同的顏色區分不同學校的類型。

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

到這里,我們已經學會了使用多元回歸,如上面提到的,如果你有很好的邏輯回歸的知識,解釋這個結果并不太困難?,F在讓我們開始理解R中的有序回歸。

R中的有序邏輯回歸

下面是R中的OLR的執行步驟

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

加載庫

大數據

讓我們快速了解數據

該數據有一個被成為相關變量的應用。它有3個層次,即不可能,有點可能,很可能。編碼在1,2 和3. 3最高,1最低。這種情況是最好的順序回歸的使用。因為存在有序類別。Pared(0/1)是指父母至少有一個人具有碩士研究生學歷;Public(0/1)指本科院校的類型。

建立這個模型,我們將使用polR命令來估計一個有序邏輯回歸。然后,我們將指定Hess=TRUE讓模型輸入顯示所觀察到的優化信息矩陣,這是曾經用來獲得標準誤差的方式。

大數據

我們通??吹降幕貧w輸出系數表包括各系數的值,標準差,T值,對兩截距的估計,剩余偏差和AIC。AIC信息準則。越小越好。

現在我們要計算一些重要的指標如P值,CI,比值率。

大數據

大數據

解釋

1、家長的教育每增加一個單位,從0(低)到1(高),極有可能申請比有點可能或不可能申請的可能性大2.85.

2、很有可能或有點可能申請比不可能申請的可能性大2.85倍。

3、從GPA考慮,當一個學生的GPA移動一個單位,不可能申請的概率是有點可能或很可能(從低到中等分類,或從低到高等分類)申請的概率乘以1.85。

現在讓哦我們試著加強這個模型,以獲得更好的預測評估。

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

大數據

讓我們在這里添加交互項

<a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a><a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a><a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a><a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a><a href='/map/r/' style='color:#000;font-size:inherit;'>R語言</a>

結束語

我很喜歡寫這篇文章。我建議你注意模型的解釋。編碼是比較容易的,但是除非你知道是怎么產生的,否則,你的學習是不完整的。


有許多重要的因素,比如,AIC,殘差值來確定模型的有效性。如果你還想了解他們,我會建議你去刷邏輯回歸的基本。這應該有助于你更好的理解這個概念。

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢