彭李嘉
(北京郵電大學(xué) 計(jì)算機(jī)學(xué)院,北京 100876)
同一片森林里生活著兩種鳥,它們外形相似,習(xí)性相近??蒲腥藛T分別記錄了這兩種鳥類的翅展(翅膀展開的長(zhǎng)度)和身長(zhǎng),如表1所示。
問題一:請(qǐng)根據(jù)上述表格,給出一個(gè)為這兩種鳥類分類的方法。
問題二:現(xiàn)觀察到該片叢林中的三只鳥,其翅展和身長(zhǎng)的數(shù)據(jù)分別為(12.50,19.00)(13.00,18.00)(14.00,20.70)。請(qǐng)通過數(shù)據(jù)進(jìn)行辨識(shí)這三只鳥分別是A類還是B類。
問題三:若科研人員發(fā)現(xiàn)記錄中有一處錯(cuò)誤,翅展13.80 cm、身長(zhǎng)19.00 cm的這只鳥應(yīng)屬于A類而非B類,請(qǐng)分析該錯(cuò)誤對(duì)分類的影響。
表1 兩種鳥類的翅展和身長(zhǎng)Tab.1 Wing expanse and body length of two kinds of birds
對(duì)于問題一,題目要求給出為這兩種鳥類分類的方法,已知數(shù)據(jù)是鳥的種類及它們的翅展和身長(zhǎng),因此建立的模型要找到種類與翅展、身長(zhǎng)的關(guān)系。通過對(duì)題目中所給數(shù)據(jù)的初步分析可以看出:整體特征都是隨著翅展長(zhǎng)度的增加,鳥的身長(zhǎng)也在增加。因此可以認(rèn)為這兩種鳥類的分類與它們的翅展、身長(zhǎng)服從一定的規(guī)律。但畫出散點(diǎn)圖之后,自變量之間的關(guān)系仍不清晰,因此決定選用逐步分析法找到對(duì)因變量有顯著影響的自變量,建立模型并運(yùn)用殘差分析法改進(jìn)模型,給出兩種鳥類分類的方法。
對(duì)于問題二,題目要求辨識(shí)給出的3組數(shù)據(jù)來確定鳥的分類。問題二的基礎(chǔ)是問題一所求得的模型,因此分別將3組數(shù)值代入問題一中的回歸模型,根據(jù)求得種類的值確認(rèn)該鳥屬于哪種類別。
對(duì)于問題三,題目要求分析表格中一處錯(cuò)誤對(duì)分類的影響。問題三的基礎(chǔ)同樣是問題一,因此在問題一所求得的模型中,將錯(cuò)誤數(shù)據(jù)對(duì)應(yīng)種類的值進(jìn)行修正,改正后重新建立模型,將新模型所得結(jié)果與問題一的結(jié)果進(jìn)行對(duì)比,根據(jù)兩者的差異分析該錯(cuò)誤對(duì)于分類的影響。
假設(shè)一:不考慮除翅展、身長(zhǎng)之外的其他因素對(duì)于分類的影響。
假設(shè)二:假設(shè)數(shù)據(jù)中每一只鳥都是純種鳥,不考慮A、B兩種類別鳥的雜交后代及A、B兩種類別鳥與其他鳥類的雜交后代。
表2 符號(hào)說明Tab.2 Symbol description
4.1.1 問題一的模型建立
將題目中所給的兩類鳥數(shù)據(jù)按照翅展的值從小到大進(jìn)行排序。
表3 A類鳥翅展值的排序Tab.3 Order of wing expanse value of A type birds
表4 B類鳥翅展值的排序Tab.4 Order of wing expanse value of B type birds
利用matlab軟件畫出散點(diǎn)圖。
a.橫軸為翅展,縱軸為身長(zhǎng)。
圖1 A類鳥散點(diǎn)圖Fig.1 Scattered plot of A type birds
圖2 B類鳥散點(diǎn)圖Fig.2 Scattered plot of B type birds
b.橫軸為翅展+身長(zhǎng),縱軸為身長(zhǎng)。
圖3 A類鳥散點(diǎn)圖Fig.3 Scattered plot of A type birds
圖4 B類鳥散點(diǎn)圖Fig.4 Scattered plot of B type birds
圖5 所有鳥類散點(diǎn)圖Fig.5 Scattered plot of all birds
c.橫軸為翅展*身長(zhǎng),縱軸為身長(zhǎng)。
圖6 A類鳥散點(diǎn)圖Fig.6 Scattered plot of A type birds
圖7 B類鳥散點(diǎn)圖Fig.7 Scattered plot of B type birds
圖8 所有鳥類散點(diǎn)圖Fig.8 Scattered plot of all birds
圖9 逐步回歸圖Fig.9 Stepwise regression
因?yàn)樯Ⅻc(diǎn)圖所反映的關(guān)系不明確,因此利用matlab系統(tǒng)工具箱中的逐步回歸命令stepwise實(shí)現(xiàn)逐步回歸[1]。
所加入的自變量:x1=x,x2=x^2,x3=s,x4=h,x5=m,x6=翅展與身長(zhǎng)的差,x7=s.*x。其中x2=x^2,x3=s,x4=h,x7=s。
*x加入后,R^2接近于1,F(xiàn)值極大,p接近于0,模型較合適,因此考慮建立翅展的平方項(xiàng)、種類、翅展與身長(zhǎng)的和項(xiàng)、種類與翅展的乘積項(xiàng)相關(guān)的模型。
利用matlab軟件建立模型:y = a + b×s + c×x.^2 + d×h + e×s×x
>> y=[17.80;19.60;18.60;20.00;21.00;19.60;17.20;17.40;16.40;19.00;17.00;18.20;18.20;20.80];
s=[1;1;1;1;1;1;0;0;0;0;0;0;0;0];
x=[11.40;11.80;12.30;12.60;12.80;13.00;12.40;13.40;13.80;13.80;14.00;14.80;15.40;15.60];
h=[29.20;31.40;30.90;32.60;33.80;32.60;29.60;30.80;30.20;32.80;31.00;33.00;33.60;36.40];
X=[ones(14,1),s,x.^2,h,s.*x];
[b,bint,r,rint,stats]=regress(y,X);
b,bint,stats
4.1.2 問題一的模型結(jié)果分析
利用excel軟件將結(jié)果列成表格。
表5 問題一的模型結(jié)果Tab.5 Modelling of Problem One
因變量的99.96%可由模型確定,F(xiàn)遠(yuǎn)超過F檢驗(yàn)的臨界值,p遠(yuǎn)小于α=0.05,因此模型從整體上看成立。所有參數(shù)的置信區(qū)間均不包含零點(diǎn)。
模型結(jié)果:y=-7.213 8+1.836 7×s-0.036 0×x^2+1.009 6×h-0.143 8×s×x。
圖10 問題一中 X的殘差圖Fig.10 Residual plot of X in Problem One
4.1.3 問題一的改進(jìn)模型建立
剔除1個(gè)異常數(shù)據(jù),利用matlab進(jìn)行新的回歸分析。
>>y=[17.80;19.60;18.60;20.00;21.00;19.60; 17.40;16.40;19.00;17.00;18.20;18.20;20.80];
s=[1;1;1;1;1;1;0;0;0;0;0;0;0];
x=[11.40;11.80;12.30;12.60;12.80;13.00; 13.40;13.80;13.80;14.00;14.80;15.40;15.60];
h=[29.20;31.40;30.90;32.60;33.80;32.60; 30.80;30.20;32.80;31.00;33.00;33.60;36.40];
X=[ones(13,1),s,x.^2,h,s.*x];
[b,bint,r,rint,stats]=regress(y,X);
b,bint,stats
4.1.4 問題一的改進(jìn)模型結(jié)果分析
利用excel軟件將結(jié)果列成表格。
表6 問題一的改進(jìn)模型結(jié)果Tab.6 Improved model results of Problem One
圖11 問題一中改進(jìn)后X的殘差圖Fig.11 Residual plot of improved X in Problem One
改進(jìn)后的模型結(jié)果:y=-7.302 9+2.161 0×s-0.034 6×x^2+1.002 9×h-0.163 3×s×x。
將(12.50,19.00)(13.00,18.00)(14.00,20.70)三組數(shù)據(jù)分別代入問題一中的模型,計(jì)算得到s的值,s大于等于0.5,則該鳥屬于A類;s小于0.5,則該鳥屬于B類。
利用excel列出表格。
表7 三只鳥的歸類Tab.7 Classification of three birds
4.3.1 問題三的模型建立
將(13.80,19.00)這組數(shù)據(jù)的s值更改為1,重新建立模型。
建立模型:y=a+b×s+c×x.^2+d×h+e×s×x
>>y=[17.80;19.60;18.60;20.00;21.00;19.60;17.20;17.40;16.40;19.00;17.00;18.20;18.20;20.80];
s=[1;1;1;1;1;1;0;0;0;1;0;0;0;0];
x=[11.40;11.80;12.30;12.60;12.80;13.00;12.40;13.40;13.80;13.80;14.00;14.80;15.40;15.60];
h=[29.20;31.40;30.90;32.60;33.80;32.60;29.60;30.80;30.20;32.80;31.00;33.00;33.60;36.40];
X=[ones(14,1),s,x.^2,h,s.*x];
[b,bint,r,rint,stats]=regress(y,X);
b,bint,stats
利用excel軟件將結(jié)果列成表格。
表8 問題三的模型結(jié)果Tab.8 Modelling of Problem Three
改正錯(cuò)誤后的模型:y=-7.122 0+1.403 7×s-0.035 8×x^2+1.005 7×h-0.107 9×s×x[2]。
圖12 問題三中改進(jìn)后X的殘差圖Fig.12 Residual plot of improved X in Problem Three
4.3.2 問題三結(jié)果分析
利用excel軟件將結(jié)果列成表格,與問題一所求得的模型數(shù)據(jù)進(jìn)行對(duì)比。
表9 改正錯(cuò)誤數(shù)據(jù)后的模型結(jié)果對(duì)比Tab.9 Comparison of modelling results after the modification of wrong data
圖13 改正錯(cuò)誤數(shù)據(jù)后的前后模型結(jié)果對(duì)比圖Fig.13 Comparison of modelling results before and after the modification of wrong data
與問題一中數(shù)據(jù)有錯(cuò)誤的模型相比,改正錯(cuò)誤數(shù)據(jù)后的模型的常數(shù)項(xiàng)較大,種類的系數(shù)較小,種類與翅展的積的系數(shù)較大,相關(guān)系數(shù)R^2較小,F(xiàn)值較小。
本建模運(yùn)用逐步回歸法研究變量之間的關(guān)系,找到對(duì)因變量影響較為顯著的自變量,以此得到模型;本建模利用殘差分析法,將異常數(shù)據(jù)剔除,改進(jìn)后的模型的相關(guān)系數(shù)R^2更接近1,F(xiàn)值更大,使模型得到改進(jìn);本建模中所有模型的置信區(qū)間均不包含零點(diǎn)[3]。
由殘差圖可以看出,改進(jìn)后的新模型仍存在異常數(shù)據(jù);翅展的二次項(xiàng)的系數(shù)極接近于零,對(duì)因變量的影響較不顯著,應(yīng)考慮采用其他自變量進(jìn)行替代。
本研究只給出了一種改進(jìn)后的統(tǒng)計(jì)回歸模型,還有更符合題目要求但未被發(fā)現(xiàn)的模型,因此應(yīng)再給出幾種不同的改進(jìn)模型,進(jìn)行多角度的比較評(píng)價(jià),從而尋找到更優(yōu)的鳥類分類方案[4]。
針對(duì)問題一:利用散點(diǎn)圖及逐步回歸法找到對(duì)因變量有顯著影響的自變量,得到鳥類翅展、身長(zhǎng)等因素間的關(guān)系,建立統(tǒng)計(jì)回歸模型,并利用殘差分析法剔除異常數(shù)據(jù)以后對(duì)建立的模型進(jìn)行改進(jìn)。改進(jìn)后的最終模型是:y=-7.302 9+2.161 0×s-0.034 6×x^2+1.002 9×h-0.163 3×s×x。
針對(duì)問題二:在問題一的基礎(chǔ)上,將題目中給出的3組數(shù)據(jù)依次代入問題一所得模型中,根據(jù)求得種類的值判斷該鳥是哪種鳥類。翅展和身長(zhǎng)的數(shù)據(jù)為(12.50,19.00)的鳥是A類鳥;翅展和身長(zhǎng)數(shù)據(jù)分別為(13.00,18.00)(14.00,20.70)的兩只鳥是B類鳥。
針對(duì)問題三:將錯(cuò)誤數(shù)據(jù)對(duì)應(yīng)種類的值進(jìn)行更改,重新建立模型,對(duì)比修正后的結(jié)果與修正前的結(jié)果在回歸系數(shù)的點(diǎn)估計(jì)值、相關(guān)系數(shù)R^2、F值及與F對(duì)應(yīng)概率p四方面的差異,從而得到該錯(cuò)誤對(duì)分類的影響大小。改正錯(cuò)誤后的新模型是:y=-7.122 0+1.403 7×s-0.035 8×x^2+1.005 7×h-0.107 9×s×x。與問題一中模型相比,改正錯(cuò)誤數(shù)據(jù)后的模型常數(shù)項(xiàng)較大,種類系數(shù)較小,種類與翅展積的系數(shù)較大,相關(guān)系數(shù)R^2較小,F(xiàn)值較小。
最開始建立模型時(shí)未利用好逐步回歸法,常局限于翅展和身長(zhǎng)之間的關(guān)系,但是發(fā)現(xiàn)模型的相關(guān)系數(shù)R^2只有57.44%,F(xiàn)值也非常小。后建立的模型雖然相關(guān)系數(shù)等值都較為合適,但總會(huì)出現(xiàn)自變量置信區(qū)間包含零點(diǎn)的情況。之后,熟悉了逐步回歸法和matlab中stepwise命令的用法時(shí),對(duì)于自變量的選取有了極大幫助。
剛開始列表格時(shí)常用word自帶表格,非常不方便,后來利用excel軟件可以更加快速簡(jiǎn)潔地設(shè)立表格與圖表,使內(nèi)容表述更加清晰直觀。