【数据挖掘】挖掘建模-回归分析(1)
參考文獻(xiàn):《Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》
分類(lèi)與預(yù)測(cè)
一、實(shí)現(xiàn)過(guò)程
學(xué)習(xí):通過(guò)歸納分析訓(xùn)練樣本集來(lái)建立分類(lèi)模型得到分類(lèi)規(guī)則。
分類(lèi):用已知的測(cè)試樣本集評(píng)估分類(lèi)規(guī)則的準(zhǔn)確率,若結(jié)果可接受則用樣本集進(jìn)行預(yù)測(cè)。
通過(guò)訓(xùn)練集建立預(yù)測(cè)數(shù)值型屬性的函數(shù)模型。
在模型通過(guò)檢驗(yàn)后進(jìn)行預(yù)測(cè)或控制。
二、常用的分類(lèi)和預(yù)測(cè)算法
| 回歸分析 | 預(yù)測(cè)數(shù)值型屬性(線性回歸、非線性回歸、邏輯回歸、嶺回歸、主成分回歸、偏最小二乘回歸) |
| 決策樹(shù) | 自頂向下的遞歸方式,內(nèi)部節(jié)點(diǎn)進(jìn)行屬性值比較,根據(jù)不同屬性值從節(jié)點(diǎn)向下分支,最終得到的葉節(jié)點(diǎn)為學(xué)習(xí)劃分的類(lèi) |
| 人工神經(jīng)網(wǎng)絡(luò) | 反映神經(jīng)網(wǎng)絡(luò)的輸入和輸出變量之間關(guān)系的模型 |
| 貝葉斯網(wǎng)絡(luò) | 不確定知識(shí)表達(dá)和推理領(lǐng)域最有效的理論模型 |
| 支持向量機(jī) | 通過(guò)某種非線性映射,把低維的非線性可分轉(zhuǎn)化為高維的線性可分,在高維空間進(jìn)行線性分析的算法 |
回歸分析
一、常用回歸模型
| 線性回歸 | 因變量和自變量是線性關(guān)系 |
| 非線性回歸 | 因變量和自變量不都是線性關(guān)系 |
| 邏輯回歸 | 因變量有0/1兩種取值 |
| 嶺回歸 | 參與建模的自變量之間有多重共線性 |
| 主成分回歸 | 參與建模的自變量之間有多重共線性 |
二、邏輯回歸模型
邏輯函數(shù)
假設(shè)有n個(gè)獨(dú)立的自變量,x1,x2,...,xnx_1,x_2,...,x_nx1?,x2?,...,xn?
假設(shè)y=1的概率p(y=1)=p=P(y=1∣X)p(y=1)=p=P(y=1|X)p(y=1)=p=P(y=1∣X),y=0的概率是p(y=0)=1-p
則概率之比為p1?p\frac{p}{1-p}1?pp?,取自然對(duì)數(shù)得到邏輯變換Logit(p)=ln(p1?p)Logit(p) = ln(\frac{p}{1-p})Logit(p)=ln(1?pp?)。
令Logit§=z,則p=11+e?zp=\frac{1}{1+e^{-z}}p=1+e?z1?即為邏輯函數(shù)
邏輯回歸模型
定義:建立ln(p1?p)ln(\frac{p}{1-p})ln(1?pp?)與自變量的線性回歸模型,即:
ln(p1?p)=β0+β1xi+......+βnxn+?ln(\frac{p}{1-p})=\beta_0+\beta_1x_i+......+\beta_nx_n+\epsilonln(1?pp?)=β0?+β1?xi?+......+βn?xn?+?
記g(x)=β0+β1xi+......+βnxng(x)=\beta_0+\beta_1x_i+......+\beta_nx_ng(x)=β0?+β1?xi?+......+βn?xn?,則有:
p=P(y=1∣X)=11+e?g(x)p=P(y=1|X)=\frac{1}{1+e^{-g(x)}}p=P(y=1∣X)=1+e?g(x)1?
1?p=P(y=0∣X)=1?11+e?g(x)=11+eg(x)1-p=P(y=0|X)=1-\frac{1}{1+e^{-g(x)}}=\frac{1}{1+e^{g(x)}}1?p=P(y=0∣X)=1?1+e?g(x)1?=1+eg(x)1?
3.邏輯回歸建模步驟
(1) 設(shè)置自變量和因變量,收集數(shù)據(jù),篩選特征。
(2) 用p1?p\frac{p}{1-p}1?pp?和自變量列出線性回歸方程,估計(jì)出模型中的回歸系數(shù)。
(3) 進(jìn)行模型檢驗(yàn)(正確率、混淆矩陣、ROC、KS)
(4) 模型應(yīng)用:輸入自變量的取值得到預(yù)測(cè)變量的值。
【這里存在一個(gè)問(wèn)題沒(méi)有解決:from sklearn.linear_model import RandomizedLogisticRegression as RLR找不到RandomizedLogisticRegression,后按照網(wǎng)上教程import stability_selection.randomized_lasso import RandomizedLogisticRegression as RLR,這時(shí)RLR可以成功導(dǎo)入,但是這個(gè)類(lèi)沒(méi)有g(shù)et_support()方法,暫時(shí)還不知道怎么解決這個(gè)問(wèn)題。】
總結(jié)
以上是生活随笔為你收集整理的【数据挖掘】挖掘建模-回归分析(1)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 算法工程师笔试 -剑指offer-习题详
- 下一篇: Dataset、IterableData