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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

均值归一化_数据预处理:标准化和归一化

發布時間:2023/12/31 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 均值归一化_数据预处理:标准化和归一化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

網上很多關于標準化和歸一化的文章,不少是誤人子弟的存在。這篇文字希望給大家講清講透這兩個概念。

一、標準化(standardization)

公式一般為:(X-mean)/std,其中mean是平均值,std是方差。

從公式我們可以看出,標準化操作(standardization)是將數據按其屬性(按列)減去平均值,然后再除以方差。這個過程從幾何上理解就是,先將坐標軸零軸平移到均值這條線上,然后再進行一個縮放,涉及到的就是平移和縮放兩個動作。這樣處理以后的結果就是,對于每個屬性(每列)來說,所有數據都聚集在0附近,方差為1。計算時對每個屬性/每列分別進行。

下面我們通過實操加深印象,并真正理解標準化的實際意義。使用sklearn中的preprocessing中的scale()函數,可以直接將給定數據進行標準化。

首先我們導入需要的庫,和需要處理的數據。我們隨便導入一支股票,000002萬科a。(數據源來自tushare pro版,感謝挖地兔)。

接著,我們選取該股票最后的100個交易日的數據,選取價格和成交量兩個特征作為演示。很顯然,這兩個特征量綱不一樣,數值相差很大,需要對他們進行一個數據預處理。先看一下原始數據:

對原始數據進行標準化,如下:

看到變化了嗎,雖然各個點的相對位置看上去還是沒變,但是坐標軸變了。均值是0,方差為1。

還有一種標準話的方法是使用sklearn.preprocessing.StandardScaler類,主要是fit()和transform(),使用該類的好處在于可以保存訓練集中的參數(均值、方差)直接使用其對象轉換測試集數據。

二、歸一化(scale,縮放到一個指定范圍,一般是0到1之間)

公式一般為:(X-min)/(max-min),其中min和max分別是該屬性的最小值和最大值。

歸一化其實是一種不太標準的翻譯而已,真正要理解它,只需要知道它是一種縮放就行。歸一化操作的過程,首先是把某個屬性(按列)的最大值和最小值之間的距離看成是單位1,然后再看x和最小值的距離占總距離的比例。所以它總是一個處于0到1之間的百分數。

使用sklearn中的preprocessing中的MinMaxScaler類,可以實現歸一化,具體方法如下:

各個點的相對位置還是沒變,但是取值范圍變成了[0,1]。

什么時候需要標準化和歸一化?

那么是否任何情況都有必要進行標準化歸一化呢?答案是否定的。我們所熟知的決策樹、隨機森林等概率模型,就不需要。因為它們并不關心變量的值,而是關心變量的分布和變量之間的條件概率。

用AI改變金融交易,歡迎關注微信公眾號:煉金狂人

總結

以上是生活随笔為你收集整理的均值归一化_数据预处理:标准化和归一化的全部內容,希望文章能夠幫你解決所遇到的問題。

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