<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      DataJam

      數據預處理與特征工程:降維算法

      一、sklearn中的降維算法

      sklearn中降維算法都被包括在模塊decomposition中,這個模塊本質是一個矩陣分解模塊。矩陣分解可以用在降維,深度學習,聚類分析,數據預處理,低緯度特征學習,推薦系統,大數據分析等領域。

       

       SVD和主成分分析PCA都屬于矩陣分解算法中的入門算法,都是通過分解特征矩陣來進行降維

      PCA使用的信息量衡量指標,就是樣本方差,又稱可解釋性方差,方差越大,特征所帶的信息量越多。

       方差計算公式中為什么除數是n-1?這是為了得到樣本方差的無偏估計

      2.降維究竟是怎樣實現?

      找出n個新特征向量,讓數據能夠被壓縮到少數特征上并且總信息量不損失太多的技術就是矩陣分解。PCA和SVD是兩種不同的降維算法,但他們都遵從上面的過程來實現降維,只是兩種算法中矩陣分解的方法不同,信息量的衡量指標不同罷了。

      思考:PCA和特征選擇技術都是特征工程的一部分,它們有什么不同? 
      特征工程中有三種方式:特征提取,特征創造和特征選擇。仔細觀察上面的降維例子和上周我們講解過的特征選擇,你發現有什么不同了嗎?特征選擇是從已存在的特征中選取攜帶信息最多的,選完之后的特征依然具有可解釋性,我們依然知道這個特征在原數據的哪個位置,代表著原數據上的什么含義。而PCA,是將已存在的特征進行壓縮,降維完畢后的特征不是原本的特征矩陣中的任何一個特征,而是通過某些方式組合起來的新特征。通常來說,在新的特征矩陣生成之前,我們無法知曉PCA都建立了怎樣的新特征向量,新特征矩陣生成之后也不具有可讀性,我們無法判斷新特征矩陣的特征是從原數據中的什么特征組合而來,新特征雖然帶有原始數據的信息,卻已經不是原數據上代表著的含義了。以PCA為代表的降維算法因此是特征創造(feature creation,或feature construction)的一種??梢韵?,PCA一般不適用于探索特征和標簽之間的關系的模型(如線性回歸),因為無法解釋的新特征和標簽之間的關系不具有意義。在線性回歸模型中,我們使用特征選擇。

      3.sklearn中的PCA

      PCA參數列表

       

       

       

       

       

       

       

       

       

       

       1 import matplotlib.pyplot as plt 
       2 from sklearn.datasets import load_iris
       3 from sklearn.decomposition import PCA
       4 import pandas as pd
       5 iris = load_iris()
       6 y = iris.target
       7 X = iris.data
       8 pd.DataFrame(X)
       9 pca = PCA(n_components= 2)#降低成2維
      10 pca = pca.fit(x)
      11 X_dr = pca.transform(x)

      對降維后的數據進行可視化

      1 plt.figure()
      2 plt.scatter(X_dr[y==0, 0], X_dr[y==0, 1], c="red", label=iris.target_names[0])
      3 plt.scatter(X_dr[y==1, 0], X_dr[y==1, 1], c="black", label=iris.target_names[1])
      4 plt.scatter(X_dr[y==2, 0], X_dr[y==2, 1], c="orange", label=iris.target_names[2])
      5 plt.legend()
      6 plt.title('PCA of IRIS dataset')
      7 plt.show()

       

       

      探索降維后的數據 
      1 #屬性explained_variance_,查看降維后每個新特征向量上所帶的信息量大小(可解釋性方差的大?。?/span>
      2 pca.explained_variance_
      3 #屬性explained_variance_ratio,查看降維后每個新特征向量所占的信息量占原始數據總信息量的百分比
      4 #又叫做可解釋方差貢獻率
      5 pca.explained_variance_ratio_
      6 #大部分信息都被有效地集中在了第一個特征上
      7 pca.explained_variance_ratio_.sum()
      選擇最好的n_components:累積可解釋方差貢獻率曲線 
      1 import numpy as np
      2 pca_line = PCA().fit(x)
      3 plt.plot([1,2,3,4],np.cumsum(pca_line.explained_variance_ratio_))
      4 plt.xticks([1,2,3,4]) #這是為了限制坐標軸顯示為整數
      5 plt.xlabel("number of components after dimension reduction")
      6 plt.ylabel("cumulative explained variance ratio")
      7 plt.show()

       

       

       4.n_components的選擇

      4.1最大似然估計自選超參數

      1 pca_mle = PCA(n_components="mle")#讓PCA用最大似然估計(maximum likelihood
      2 estimation)自選超參數的方法
      3 pca_mle = pca_mle.fit(X)
      4 X_mle = pca_mle.transform(X)
      5 X_mle
      6 #可以發現,mle為我們自動選擇了3個特征
      7 pca_mle.explained_variance_ratio_.sum()
      8 #得到了比設定2個特征時更高的信息含量,對于鳶尾花這個很小的數據集來說,3個特征對應這么高的信息含量,并不
      9 需要去糾結于只保留2個特征,畢竟三個特征也可以可視化

       

      4.2按信息量占比選超參數

      1 #輸入[0,1]之間的浮點數,并且讓參數svd_solver =='full',表示希望降維后的總解釋性方差占比大于n_components指定的百分比,即是說,希望保留百分之多少的信息量。比如說,如果我們希望保留97%的信息量,就可以輸入

      n_components = 0.97,PCA會自動選出能夠讓保留的信息量超過97%的特征數量。 4 pca_f = PCA(n_components=0.97,svd_solver="full") 5 pca_f = pca_f.fit(X) 6 X_f = pca_f.transform(X) 7 pca_f.explained_variance_ratio_

      (資料來源:菜菜老師)

      待更新···

       

       

       

       

      posted on 2021-06-09 16:22  DataJam  閱讀(566)  評論(0)    收藏  舉報

      導航

      主站蜘蛛池模板: 欧美精品国产一区二区三区| 欧美成人www免费全部网站 | 激情综合色五月丁香六月亚洲| 亚洲综合精品香蕉久久网| 亚洲精品香蕉一区二区| 55夜色66夜色国产精品视频| 爽爽精品dvd蜜桃成熟时电影院| 欧洲免费一区二区三区视频| 亚洲中文无码永久免费| 色宅男看片午夜大片啪啪| 国产午夜A理论毛片| 大新县| 尤物yw193无码点击进入| 久99久热精品免费视频| 亚洲一区二区中文av| 国产美女久久久亚洲综合| 中文毛片无遮挡高潮免费| 亚洲区一区二区三区亚洲| 天堂亚洲免费视频| 国产亚洲综合欧美视频| 伊人色综合久久天天| 午夜免费福利小电影| 日本人妻巨大乳挤奶水免费| 操操操综合网| 欧美老少配性行为| 国产精品久久蜜臀av| 爱性久久久久久久久| 亚洲AV午夜成人无码电影| 久久成人国产精品免费软件| 亚洲国产片一区二区三区| 深夜福利啪啪片| 亚洲中文字幕一区二区| 欧美性猛交xxxx富婆| 国产午夜精品视频在线播放| 久久久久99精品成人片| 色综合久久中文字幕综合网| 亚洲色欲在线播放一区二区三区 | 国产熟女老阿姨毛片看爽爽| 蜜桃av无码免费看永久| 久久99国产一区二区三区| 欧美激情一区二区三区成人|