99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀SPSS—非線性回歸(模型表達(dá)式)案例解析
SPSS—非線性回歸(模型表達(dá)式)案例解析
2016-12-11
收藏

SPSS—非線性回歸(模型表達(dá)式)案例解析

由簡單到復(fù)雜,人生有下坡就必有上坡,有低潮就必有高潮的迭起,隨著SPSS的深入學(xué)習(xí),已經(jīng)逐漸開始走向復(fù)雜,今天跟大家交流一下,SPSS線性回歸,希望大家能夠指點(diǎn)一二!

線性回歸過程是用來建立因變量與一組自變量之間的非線性關(guān)系,它不像線性模型那樣有眾多的假設(shè)條件,可以在自變量和因變量之間建立任何形式的模型
非線性,能夠通過變量轉(zhuǎn)換成為線性模型——稱之為本質(zhì)線性模型,轉(zhuǎn)換后的模型,用線性回歸的方式處理轉(zhuǎn)換后的模型,有的非線性模型并不能夠通過變量轉(zhuǎn)換為線性模型,我們稱之為:本質(zhì)非線性模型

還是以“銷售量”和“廣告費(fèi)用”這個(gè)樣本為例,進(jìn)行研究,前面已經(jīng)研究得出:“二次曲線模型”比“線性模型”能夠更好的擬合“銷售量隨著廣告費(fèi)用的增加而呈現(xiàn)的趨勢變化”,那么“二次曲線”會不會是最佳模型呢?

答案是否定的,因?yàn)椤胺蔷€性模型”能夠更好的擬合“銷售量隨著廣告費(fèi)用的增加而呈現(xiàn)的變化趨勢” 下面我們開始研究:

第一步:非線性模型那么多,我們應(yīng)該選擇“哪一個(gè)模型呢?”

1:繪制圖形,根據(jù)圖形的變化趨勢結(jié)合自己的經(jīng)驗(yàn)判斷,選擇合適的模型

點(diǎn)擊“圖形”—圖表構(gòu)建程序—進(jìn)入如下所示界面:

點(diǎn)擊確定按鈕,得到如下結(jié)果:

放眼望去, 圖形的變化趨勢,其實(shí)是一條曲線,這條曲線更傾向于”S” 型曲線,我們來驗(yàn)證一下,看“二次曲線”和“S曲線”相比,兩者哪一個(gè)的擬合度更高!

點(diǎn)擊“分析—回歸—曲線估計(jì)——進(jìn)入如下界面

在“模型”選項(xiàng)中,勾選”二次項(xiàng)“和”S” 兩個(gè)模型,點(diǎn)擊確定,得到如下結(jié)果:


通過“二次”和“S “ 兩個(gè)模型的對比,可以看出S 模型的擬合度 明顯高于“二次”模型的擬合度 (0.912 >0.900)不過,幾乎接近

接著,我們采用S 模型,得到如下所示的結(jié)果:

結(jié)果分析:

1:從ANOVA表中可以看出:總體誤差= 回歸平方和 + 殘差平方和 (共計(jì):0.782) F統(tǒng)計(jì)量為(240.216)顯著性SIG為(0.000)由于0.000<0.01 (所以具備顯著性,方差齊性相等)

2:從“系數(shù)”表中可以看出:在未標(biāo)準(zhǔn)化的情況下,系數(shù)為(-0.986) 常數(shù)項(xiàng)為2.672

所以 S 型曲線的表達(dá)式為:Y(銷售量)=e^(b0+b1/t) = e^(2.672-0.986/廣告費(fèi)用)

當(dāng)數(shù)據(jù)通過標(biāo)準(zhǔn)化處理后,常數(shù)項(xiàng)被剔除了,所以標(biāo)準(zhǔn)化的S型表達(dá)式為:Y(銷售量) = e^(-0.957/廣告費(fèi)用)

下面,我們直接采用“非線性”模型來進(jìn)行操作

第一步:確定“非線性模型”

從繪圖中可以看出:廣告費(fèi)用在1千萬——4千多萬的時(shí)候,銷售量增加的跨度較大,當(dāng)廣告費(fèi)用超過“4千多萬”的時(shí)候,增加幅度較小,在達(dá)到6千多萬”達(dá)到頂峰,之后呈現(xiàn)下降趨勢。

從圖形可以看出:它符合The asymptotic regression model (漸近回歸模型)

表達(dá)式為:Y(銷售量)= b1 + b2*e∧b3*(廣告費(fèi)用)

當(dāng)b1>0, b2<0, and b3<0,時(shí),它符合效益遞減規(guī)律,我們稱之為:Mistcherlich’s model

第二步:確定各參數(shù)的初始值

1:b1參數(shù)值的確定,從表達(dá)式可以看出:隨著”廣告費(fèi)用“的增加,銷售量也會增加,最后達(dá)到一個(gè)峰值,由于:b2<0, b3<0 ,隨著廣告費(fèi)用的增加:b2*e∧b3*(廣告費(fèi)用)會逐漸趨向于“0” 而此時(shí) Y(銷售量)將接近于 b1值,從上圖可以看出:Y(銷售量)的最大值為12點(diǎn)多,接近13,所以,我們設(shè)定b1的初始值為13

2:b2參數(shù)值確定:當(dāng)Y(銷售量)最小時(shí),此時(shí)應(yīng)該廣告費(fèi)用最小,基本等于“0”,可以得出:b1+b2= Y(銷售量)此時(shí)Y銷售量最小,從圖中可以看出:第一個(gè)值為6.7左右,接近7這個(gè)值,所以:b2=7-13=-6

3: b3參數(shù)值確定:可以用圖中兩個(gè)分離點(diǎn)的斜率來確定b3的值,例如?。▁1=2.29,y1=8.71) 和( x2=5.75, y2=12.74) 通過公式 y2-y1/x2-x1=1.16,(此處可以去整數(shù)估計(jì)值來算b3的值)

確定參數(shù)初始值和參數(shù)范圍的方法如下所示:

1:通過圖形確定參數(shù)的取值范圍,然后在這個(gè)范圍里選擇初始值。
2:根據(jù)非線性方程的數(shù)學(xué)特性進(jìn)行某些變換后,再通過圖形幫助判斷初始值的范圍。
3:先使用固定的數(shù)代替某些參數(shù),以此來確定其它參數(shù)的取值范圍。
4:通過變量轉(zhuǎn)換,使用線性回歸模型來估計(jì)參數(shù)的初始值
第三步:建立模型表達(dá)式和選擇損失函數(shù)

點(diǎn)擊“分析”—回歸——非線性,進(jìn)入如下所示界面:

如上圖中,點(diǎn)擊參數(shù),分別添加b1,b2,b3進(jìn)入?yún)?shù)框內(nèi),在模型表達(dá)式中輸入:b1 + b2*Exp(b3*廣告費(fèi)用)(步驟為:選擇“函數(shù)組”—算術(shù)——Exp函數(shù)),將“銷售量”變量拖入“因變量”框內(nèi)

損失函數(shù)”默認(rèn)選項(xiàng)為“殘差平方和” 如果有特需要求,可以自行定義

點(diǎn)擊“約束”進(jìn)入如下所示的界面:

點(diǎn)擊“繼續(xù)”按鈕,此時(shí)會彈出警告信息,提示用戶是否接受建議, 建議內(nèi)容為:將采用序列二次編程進(jìn)行參數(shù)估計(jì),點(diǎn)擊確定,接受建議即可

參數(shù)的取值范圍指在迭代過程中,將參數(shù)限制在有意義的范圍區(qū)間內(nèi),提供兩種對參數(shù)范圍約束的方法:

1:線性約束,在約束表達(dá)式里只有對參數(shù)的線性運(yùn)算
2:非線性約束,在約束表達(dá)式里,至少有一個(gè)參數(shù)與其它參數(shù)進(jìn)行了乘,除運(yùn)算,或者自身的冪運(yùn)算

在“保存”選項(xiàng)中,勾選“預(yù)測值”和“殘差”即可,點(diǎn)擊繼續(xù)

點(diǎn)擊“選項(xiàng)”得到如下所示的界面:

此處的“估計(jì)方法”選擇“序列二次編程”的方法,此方法主要利用的是雙重迭代法進(jìn)行求解,每一步迭代都建立一個(gè)二次規(guī)劃算法,以此確定優(yōu)化的方向,把估計(jì)參數(shù)不斷的帶入損失函數(shù)進(jìn)行求值運(yùn)算,直到滿足指定的收斂條件為止

點(diǎn)擊繼續(xù),再點(diǎn)擊“確定”得到如下所示的結(jié)果:

上圖結(jié)果分析:

1:從“迭代歷史記錄”表中可以看出:迭代了17次后,迭代被終止,已經(jīng)找到最優(yōu)解

此方法是不斷地將“參數(shù)估計(jì)值”代入”損失函數(shù)“求解,而損失函數(shù)采用的是”殘差平方和“最小,在迭代17次后,殘差平方和達(dá)到最小值,最小值為(6.778)此時(shí)找到最優(yōu)解,迭代終止

2:從參數(shù)估計(jì)值”表中可以看出:
b1= 12.904 (標(biāo)準(zhǔn)誤為0.610,比較小,說明此估計(jì)值的置信度較高) b2=-11.268 (標(biāo)準(zhǔn)誤為:1.5881,有點(diǎn)大,說明此估計(jì)值的置信度不太高) b3=-0.496(標(biāo)準(zhǔn)誤為:0.138,很小,說明此估計(jì)值的置信度很高)

非線性模型表達(dá)式為:Y(銷售量)= 12.904-11.268*e^(-0.496*廣告費(fèi)用)

3:從“參數(shù)估計(jì)值的相關(guān)性”表中可以看出:b1 和 b3的相關(guān)性較強(qiáng),b2和b1或b3的相關(guān)性都相對弱一些,其中b1和b2的相關(guān)性最弱

4:從anova表中可以看出:R方 = 1- (殘差平方和)/(已更正的平方和) = 0.909,擬合度為0.909,說明此模型能夠解釋90多的變異,擬合度已經(jīng)很高了

前面已經(jīng)提到過,S行曲線的擬合度更高,為(0.916)那到底哪個(gè)更合適呢?如果您的數(shù)據(jù)樣本容量夠大,我想應(yīng)該是“非線性模型”的擬合度會更高!

其實(shí)想想,我們是否可以將“非線性”轉(zhuǎn)換為“線性”后,再利用線性模型進(jìn)行分析了?后期有時(shí)間的話,將還是以本例為說明,如何將“非線性”轉(zhuǎn)換為“線性”后進(jìn)行分析??!


數(shù)據(jù)分析咨詢請掃描二維碼

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

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }