日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

机器学习(5.sklearn归一化以及标准化)

發(fā)布時間:2024/9/30 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习(5.sklearn归一化以及标准化) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

歸一化

特點:通過對原始數據進行變換把數據映射到(默認為[0,1])之間

注:作用于每一列,max為一列的最大值,min為一列的最小值,那么X’’

? ? ? ? 為最終結果,mxmi分別為指定區(qū)間值默認mx1,mi0

sklearn歸一化API

sklearn歸一化API:? sklearn.preprocessing.MinMaxScaler

歸一化提供的數據應該是類似于二維數組的形式

1.MinMaxScaler語法

? ? ?MinMaxScalar(feature_range=(0,1))

? ? ? ? ? ? ? ? ? ? ??每個特征縮放到給定范圍(默認[0,1])

? ? ??MinMaxScalar.fit_transform(X)??????

? ? ? ? ? ? ? ? ? ? ?X:numpy array格式的數據[n_samples,n_features]

? ? ? ? ? ? ? ? ? ? ?返回值:轉換后的形狀相同的array

2.什么時候進行歸一化?歸一化的作用?

? ? 當三個特征同等重要的時候,進行歸一化

? ? 歸一化使得某一個特征對最終結果不會造成更大的影響

3.歸一化的步驟

? ? ? ?(1) 實例化MinMaxScalar

? ? ? ?(2) 通過fit_transform轉換

簡單的步驟例子:

from sklearn.preprocessing import MinMaxScalerdef mm():"""歸一化處理:return:None"""mm = MinMaxScaler()data = mm.fit_transform([[90, 2, 10, 40],[60, 4, 15, 45],[75, 3, 13, 46]])print(data)if __name__ == '__main__':mm()

結果:

[[1. 0. 0. 0. ][0. 1. 1. 0.83333333][0.5 0.5 0.6 1. ]]

?歸一化的總結:

注意在特定場景下最大值最小值是變化的,

另外,最大值與最小值非常容易受異常點影響

,所以這種方法魯棒性較差,只適合傳統精確小數據場景

標準化

1、特點:通過對原始數據進行變換把數據變換到均值為0,方差為1范圍內

2 .? ??

??注:作用于每一列,mean為平均值,?σ為標準差(考量數據的穩(wěn)定性)

3.注意計算的公式,這里的x1是一列的值,? ??

4.結合歸一化來談標準化:

? ? ?對于歸一化來說:如果出現異常點,影響了最大值和最小值,那么結果顯然

會發(fā)生改變

? ? 對于標準化來說:如果出現異常點,由于具有一定數據量,少量的異常點對

于平均值的影響并不大,從而方差改變較小。

?5.?StandardScaler語法

? ? ?sklearn特征化API:? scikit-learn.preprocessing.StandardScaler

? ?StandardScaler()

? ? ? ? ? ? ? ? ??處理之后每列來說所有數據都聚集在均值0附近標準差差為1

? ?StandardScaler.fit_transform(X,y)??????

? ? ? ? ? ? ? ??X:numpy array格式的數據[n_samples,n_features]

? ? ? ? ? ? ? ??返回值:轉換后的形狀相同的array

? ?StandardScaler.mean_

? ? ? ? ? ? ??原始數據中每列特征的平均值

? ?StandardScaler.std_

? ? ? ? ? ? ? ?原始數據每列特征的方差

6.步驟與例子:

? ? ? (1) 實例化StandardScaler

? ? ?(2)通過fit_transform轉換

? from sklearn.preprocessing import StandardScalerdef stand():"""標準化縮放:return:None"""std = StandardScaler()data = std.fit_transform([[1., -1., 3.],[2., 4., 2.],[4., 6., -1.]])print(data)return Noneif __name__ == '__main__':stand()?

?運行結果:

[[-1.06904497 -1.35873244 0.98058068][-0.26726124 0.33968311 0.39223227][ 1.33630621 1.01904933 -1.37281295]]

7.標準化總結:

?在已有樣本足夠多的情況下比較穩(wěn)定,適合現代嘈雜大數據場景。

?不同數據類型該如何處理

? ?數值型數據:標準縮放:

? ? ? ? ? ? ? 1、歸一化

???????????? ? 2、標準化

? ? ? ? ? ? ??3、缺失值

? 類別型數據:one-hot編碼

? ?時間類型:時間的切分

總結

以上是生活随笔為你收集整理的机器学习(5.sklearn归一化以及标准化)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。