建模演算法第二週

2021-10-01 07:59:44 字數 2457 閱讀 5367

主成分分析法就是一種運用線性代數的知識來進行資料降維的方法,它將多個變數轉換為少數幾個不相關的綜合變數來比較全面地反映整個資料集。這是因為資料集中的原始變數之間存在一定的相關關係,可用較少的綜合變數來綜合各原始變數之間的資訊。這些綜合變數稱為主成分,各主成分之間彼此不相關,即所代表的的資訊不重疊。

基本思想及方法

如果用 l 表示 x1,

x2,.

..xp

x_1,x_2,...x_p

x1​,x2

​,..

.xp​

門課程,c1,

c2,.

..cp

c_1,c_2,...c_p

c1​,c2

​,..

.cp​

表示各門課程的權重,那麼加權

之和就是

s=x 1c

1+x2

c2+.

..xp

cpx_1c_1+x_2c_2+...x_pc_p

x1​c1​

+x2​

c2​+

...x

p​cp

​我們希望選擇適當的權重能更好地區分學生的成績。每個學生都對應乙個這樣的綜合成

績,記為s1,

s2,.

..sn

s_1,s_2,...s_n

s1​,s2

​,..

.sn​

,n 為學生人數。如果這些值很分散,表明區分得好,即是說,

需要尋找這樣的加權,能使 s1,

s2,.

..sn

s_1,s_2,...s_n

s1​,s2

​,..

.sn​

盡可能的分散,下面來看它的統計定義。

x 1,

x2,.

..xp

x_1,x_2,...x_p

x1​,x2

​,..

.xp​

表示以 x1,

x2,.

..xp

x_1,x_2,...x_p

x1​,x2

​,..

.xp​

為樣本觀測值的隨機變數,如果能找到

c 1,

c2,.

..cp

c_1,c_2,...c_p

c1​,c2

​,..

.cp​

,使得var(x1c

1+x2

c2+.

..xp

cpx_1c_1+x_2c_2+...x_pc_p

x1​c1​

+x2​

c2​+

...x

p​cp

​)的值達到最大,則由於方差反映了資料差異的程度,因此也就表明我們抓住了這 p 個

變數的最大變異。當然,(15)式必須加上某種限制,否則權值可選擇無窮大而沒有意

義,通常規定

c 12

+c22

+...

cp2=

1c_1^2+c_2^2+...c_p^2=1

c12​+c

22​+

...c

p2​=

1在此約束下,求上式的最優解。由於這個解是 p − 維空間的乙個單位向量,它代表

乙個「方向」,它就是常說的主成分方向。

乙個主成分不足以代表原來的 p 個變數,因此需要尋找第二個乃至第

三、第四主

成分,第二個主成分不應該再包含第乙個主成分的資訊,統計上的描述就是讓這兩個主

成分的協方差為零,幾何上就是這兩個主成分的方向正交。

1)主成分分析的結果受量綱的影響,由於各變數的單位可能不一樣,如果各自改

變數綱,結果會不一樣,這是主成分分析的最大問題,回歸分析是不存在這種情況的,

所以實際中可以先把各變數的資料標準化,然後使用協方差矩陣或相關係數矩陣進行分

析。2)使方差達到最大的主成分分析不用轉軸(由於統計軟體常把主成分分析和因子

分析放在一起,後者往往需要轉軸,使用時應注意)。

3)主成分的保留。用相關係數矩陣求主成分時,kaiser主張將特徵值小於1的主成

分予以放棄(這也是spss軟體的預設值)。

4)在實際研究中,由於主成分的目的是為了降維,減少變數的個數,故一般選取

少量的主成分(不超過5或6個),只要它們能解釋變異的70%~80%(稱累積貢獻率)

就行了。

2.應用與例項

第二週演算法作業

將數字轉化成字串,然後再轉化成列表,利用列表的反轉函式進行反轉,最後轉換回數字class solution object defreverse self,x type x int rtype int isneg false if x 0 isneg true x x reverse x list l...

演算法第二週作業01

在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。對於左上角的元素 array i j 其中 i 0 j array 0 length 它下方的數值都比它大 就是說它所在列中是最大的 ...

演算法第二週作業04

乙隻青蛙一次可以跳上1級台階,也可以跳上2級 它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。solutions 青蛙要想跳到target級台階,她可以從第0個台階直接 一次 跳到target級,或者從第1級台階直接跳到target級,或者直接從第target 1級台階直接跳到targ...