日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python機器學習之PCA降維算法詳解

瀏覽:20日期:2022-06-19 10:24:37
目錄一、算法概述二、算法步驟三、相關概念四、算法優缺點五、算法實現六、算法優化一、算法概述 主成分分析 (Principal ComponentAnalysis,PCA)是一種掌握事物主要矛盾的統計分析方法,它可以從多元事物中解析出主要影響因素,揭示事物的本質,簡化復雜的問題。 PCA 是最常用的一種降維方法,它的目標是通過某種線性投影,將高維的數據映射到低維的空間中,并期望在所投影的維度上數據的方差最大,以此使用較少的維度,同時保留較多原數據的維度。 PCA 算法目標是求出樣本數據協方差矩陣的特征值和特征向量,而協方差矩陣的特征向量的方向就是PCA需要投影的方向。使樣本數據向低維投影后,能盡可能表征原始的數據。 PCA 可以把具有相關性的高維變量合成為線性無關的低維變量,稱為主成分。主成分能夠盡可能的保留原始數據的信息。 PCA 通常用于高維數據集的探索與可視化,還可以用作數據壓縮和預處理等。二、算法步驟

Python機器學習之PCA降維算法詳解

1.將原始數據按行組成m行n列的矩陣X

2.將X的每一列(代表一個屬性字段)進行零均值化,即減去這一列的均值

3.求出協方差矩陣

4.求出協方差矩陣的特征值及對應的特征向量r

5.將特征向量按對應特征值大小從左到右按列排列成矩陣,取前k列組成矩陣P

6.計算降維到k維的數據

三、相關概念 方差:描述一個數據的離散程度

Python機器學習之PCA降維算法詳解

協方差:描述兩個數據的相關性,接近1就是正相關,接近-1就是負相關,接近0就是不相關

Python機器學習之PCA降維算法詳解

協方差矩陣:協方差矩陣是一個對稱的矩陣,而且對角線是各個維度的方差

Python機器學習之PCA降維算法詳解

特征值:用于選取降維的K個特征值 特征向量:用于選取降維的K個特征向量四、算法優缺點

優點

僅僅需要以方差衡量信息量,不受數據集以外的因素影響。 各主成分之間正交,可消除原始數據成分間的相互影響的因素。 計算方法簡單,主要運算是特征值分解,易于實現。

缺點

主成分各個特征維度的含義具有一定的模糊性,不如原始樣本特征的解釋性強。 方差小的非主成分也可能含有對樣本差異的重要信息,降維丟棄的數據可能對后續數據處理有影響。五、算法實現

自定義實現

import numpy as np# 對初始數據進行零均值化處理def zeroMean(dataMat): # 求列均值 meanVal = np.mean(dataMat, axis=0) # 求列差值 newData = dataMat - meanVal return newData, meanVal# 對初始數據進行降維處理def pca(dataMat, percent=0.19): newData, meanVal = zeroMean(dataMat) # 求協方差矩陣 covMat = np.cov(newData, rowvar=0) # 求特征值和特征向量 eigVals, eigVects = np.linalg.eig(np.mat(covMat)) # 抽取前n個特征向量 n = percentage2n(eigVals, percent) print('數據降低到:' + str(n) + ’維’) # 將特征值按從小到大排序 eigValIndice = np.argsort(eigVals) # 取最大的n個特征值的下標 n_eigValIndice = eigValIndice[-1:-(n + 1):-1] # 取最大的n個特征值的特征向量 n_eigVect = eigVects[:, n_eigValIndice] # 取得降低到n維的數據 lowDataMat = newData * n_eigVect reconMat = (lowDataMat * n_eigVect.T) + meanVal return reconMat, lowDataMat, n# 通過方差百分比確定抽取的特征向量的個數def percentage2n(eigVals, percentage): # 按降序排序 sortArray = np.sort(eigVals)[-1::-1] # 求和 arraySum = sum(sortArray) tempSum = 0 num = 0 for i in sortArray:tempSum += inum += 1if tempSum >= arraySum * percentage: return numif __name__ == ’__main__’: # 初始化原始數據(行代表樣本,列代表維度) data = np.random.randint(1, 20, size=(6, 8)) print(data) # 對數據降維處理 fin = pca(data, 0.9) mat = fin[1] print(mat)

利用Sklearn庫實現

import matplotlib.pyplot as pltfrom sklearn.decomposition import PCAfrom sklearn.datasets import load_iris# 加載數據data = load_iris()x = data.datay = data.target# 設置數據集要降低的維度pca = PCA(n_components=2)# 進行數據降維reduced_x = pca.fit_transform(x)red_x, red_y = [], []green_x, green_y = [], []blue_x, blue_y = [], []# 對數據集進行分類for i in range(len(reduced_x)): if y[i] == 0:red_x.append(reduced_x[i][0])red_y.append(reduced_x[i][1]) elif y[i] == 1:green_x.append(reduced_x[i][0])green_y.append(reduced_x[i][1]) else:blue_x.append(reduced_x[i][0])blue_y.append(reduced_x[i][1])plt.scatter(red_x, red_y, c=’r’, marker=’x’)plt.scatter(green_x, green_y, c=’g’, marker=’D’)plt.scatter(blue_x, blue_y, c=’b’, marker=’.’)plt.show()六、算法優化

PCA是一種線性特征提取算法,通過計算將一組特征按重要性從小到大重新排列得到一組互不相關的新特征,但該算法在構造子集的過程中采用等權重的方式,忽略了不同屬性對分類的貢獻是不同的。

KPCA算法

KPCA是一種改進的PCA非線性降維算法,它利用核函數的思想,把樣本數據進行非線性變換,然后在變換空間進行PCA,這樣就實現了非線性PCA。

局部PCA算法

局部PCA是一種改進的PCA局部降維算法,它在尋找主成分時加入一項具有局部光滑性的正則項,從而使主成分保留更多的局部性信息。

到此這篇關于Python機器學習之PCA降維算法詳解的文章就介紹到這了,更多相關Python PCA降維算法內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩欧美精品| 日韩精品国产精品| 亚洲涩涩av| 六月婷婷一区| 夜夜精品视频| 中文字幕一区二区精品区| 91看片一区| 亚洲欧美日韩高清在线| 蜜桃久久久久久| 日韩av中文字幕一区二区| 国产亚洲一区| 精品国产中文字幕第一页| 成人国产精品| 91国语精品自产拍| 在线 亚洲欧美在线综合一区| 久久久久久久久99精品大| 老牛影视一区二区三区| 亚洲精品1区| 蜜臀a∨国产成人精品| 免费成人在线观看| 青青草国产成人99久久| 麻豆91在线播放| 1000部精品久久久久久久久| 中文一区一区三区免费在线观 | 欧美日韩三区| 免费成人在线视频观看| 综合一区在线| 国产日产一区| 国产一区二区三区国产精品| zzzwww在线看片免费| 野花国产精品入口| 亚洲一区欧美激情| 日韩欧美三区| 韩国女主播一区二区三区| 久久久久一区| 亚洲综合丁香| 国产精品免费99久久久| 欧美另类专区| 亚洲午夜免费| 麻豆传媒一区二区三区| 亚洲成人国产| 亚洲一区网站| 欧美在线看片| 日韩欧美三级| 亚洲资源在线| 国产一区二区三区四区| 国产综合视频| 欧美偷窥清纯综合图区| 日韩伦理在线一区| 亚洲有吗中文字幕| 精品成人18| 美女国产一区| 国内精品亚洲| 亚洲女人av| 久久精品午夜| 老牛国产精品一区的观看方式| 国产情侣久久| 夜久久久久久| 欧美亚洲三级| 激情久久中文字幕| 日韩精品视频一区二区三区| 麻豆视频在线观看免费网站黄 | 欧美片第1页| 亚洲精品日本| 中国女人久久久| 涩涩涩久久久成人精品| 日本一二区不卡| 国产调教精品| 日韩欧美一区二区三区在线视频| 丝袜美腿一区二区三区| 久久一区精品| 在线观看亚洲精品福利片| 都市激情国产精品| 日本欧美韩国一区三区| 欧美性感美女一区二区| 欧美精品1区| 亚洲精品麻豆| 欧美日韩色图| 久久精品日韩欧美| 日本不卡不码高清免费观看| 国产99精品| 久久一区精品| 欧美日韩一区二区三区不卡视频 | 天堂av在线一区| 中文字幕成在线观看| 日韩精品第一| 蜜桃成人av| 精品国产a一区二区三区v免费| 日韩二区在线观看| 9色精品在线| 日本韩国欧美超级黄在线观看| 老鸭窝一区二区久久精品| 亚洲a成人v| 自拍日韩欧美| 久久在线电影| 中文在线а√在线8| 国产精品任我爽爆在线播放| 亚洲91网站| 国产精品普通话对白| 日韩欧美一区二区三区在线观看| 麻豆精品久久久| 国产麻豆一区| 蜜桃av一区二区在线观看| 国产一区亚洲| 日韩欧美视频专区| 精品欧美日韩精品| 国产精品tv| 国产欧美高清| 欧美中文高清| 亚洲精品成a人ⅴ香蕉片| 视频一区视频二区中文字幕| 亚洲国产一区二区在线观看 | 91久久视频| 久久亚洲成人| 在线日韩电影| 欧美日韩精品免费观看视欧美高清免费大片 | 视频一区二区欧美| 午夜国产一区二区| 99视频精品视频高清免费| 97在线精品| 日本蜜桃在线观看视频| 在线精品亚洲欧美日韩国产| 国产一区二区三区四区二区| 国产伊人久久| av日韩中文| 国产亚洲一区二区手机在线观看| 亚洲啊v在线| 精品国产免费人成网站| 国产一区不卡| 免费观看亚洲| 激情欧美一区| 中文久久精品| 亚洲无线观看| 国产丝袜一区| 精品网站999| 97精品在线| 激情综合自拍| 蜜芽一区二区三区| 日韩av不卡一区二区| 欧美aaaaaa午夜精品| 国产一区二区三区四区| 日韩精品免费一区二区三区| 亚洲黄色免费av| 久久久夜精品| 日韩视频久久| 午夜久久av | 夜夜嗨一区二区| 日本不卡视频在线| 国产精品nxnn| 黄在线观看免费网站ktv| 日韩欧美字幕| aⅴ色国产欧美| 视频一区日韩精品| 国产高清日韩| 日韩精品2区| 激情久久久久久| 婷婷精品在线| 精品亚洲a∨| 九九在线精品| 日韩精品五月天| 黄色网一区二区| 91久久久精品国产| 日韩激情一二三区| 国产一区二区三区黄网站| 欧美va天堂| 日韩中出av| 色婷婷色综合| 国产亚洲精品v| 91欧美极品| 亚洲欧洲高清| 99热精品在线| 久久国内精品自在自线400部| 国产videos久久| 国产免费成人| 麻豆久久一区二区| 欧美1级日本1级| 奇米色欧美一区二区三区| 国产精品99一区二区三| 日韩午夜高潮| 国产精品nxnn| 99在线精品免费视频九九视 | 久久精品国产亚洲夜色av网站| 免费在线观看一区二区三区| 欧美aaaaaa午夜精品| 欧美久久精品一级c片| 91精品尤物| 99精品视频在线观看免费播放| 日韩三级视频| 日韩网站中文字幕| 97se亚洲| 欧美日韩免费观看一区=区三区| 久久99视频| 麻豆久久精品| 91精品韩国| 777久久精品| 亚洲欧美日韩高清在线| 久久精品网址| 中日韩男男gay无套| 国产成人1区| 亚洲精品视频一二三区|