最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談Python幾種常見的歸一化方法

 更新時間:2023年04月08日 09:08:09   作者:不想敲代碼的小楊  
這篇文章主要介紹了幾種常見的歸一化方法,數(shù)據(jù)歸一化是深度學習數(shù)據(jù)預處理中非常關(guān)鍵的步驟,可以起到統(tǒng)一量綱,防止小數(shù)據(jù)被吞噬的作用,需要的朋友可以參考下

數(shù)據(jù)歸一化是深度學習數(shù)據(jù)預處理中非常關(guān)鍵的步驟,可以起到統(tǒng)一量綱,防止小數(shù)據(jù)被吞噬的作用。

一:歸一化的概念

歸一化就是把所有數(shù)據(jù)都轉(zhuǎn)化成[0,1]或者[-1,1]之間的數(shù),其目的是為了取消各維數(shù)據(jù)之間的數(shù)量級差別,避免因為輸入輸出數(shù)據(jù)數(shù)量級差別大而造成網(wǎng)絡(luò)預測誤差過大。

二:歸一化的作用

  1. 為了后面數(shù)據(jù)處理的方便,歸一化可以避免一些不必要的數(shù)值問題。
  2. 為了程序運行時收斂速度更快
  3. 統(tǒng)一量綱。樣本數(shù)據(jù)的評價標準不一樣,需要對其量綱化,統(tǒng)一評價標準,這算是應用層面的需求。
  4. 避免神經(jīng)元飽和。就是說當神經(jīng)元的激活在接近0或者1時,在這些區(qū)域,梯度幾乎為0,這樣在反向傳播過程中,局部梯度就會接近于0,這樣非常不利于網(wǎng)絡(luò)的訓練。
  5. 保證輸出數(shù)據(jù)中數(shù)值小的不被吞食。

三:歸一化的類型

1:線性歸一化

線性歸一化也被稱為最小-最大規(guī)范化;離散標準化,是對原始數(shù)據(jù)的線性變換,將數(shù)據(jù)值映射到[0,1]之間。用公式表示為:

{x}'=\frac{x-min(x)}{max(x)-min(x)}

差標準化保留了原來數(shù)據(jù)中存在的關(guān)系,是消除量綱和數(shù)據(jù)取值范圍影響的最簡單的方法。代碼實現(xiàn)如下:

def MaxMinNormalization(x,Max,Min):
    x = (x - Min) / (Max - Min);
    return x

適用范圍:比較適用在數(shù)值比較集中的情況

缺點:

  1. 如果max和min不穩(wěn)定,很容易使得歸一化的結(jié)果不穩(wěn)定,使得后續(xù)使用效果也不穩(wěn)定。如果遇到超過目前屬性[min,max]取值范圍的時候,會引起系統(tǒng)報錯。需要重新確定min和max。
  2. 如果數(shù)值集中的某個數(shù)值很大,則規(guī)范化后各值接近于0,并且將會相差不大。(如 1,1.2,1.3,1.4,1.5,1.6,10)這組數(shù)據(jù)。

2:零-均值歸一化(Z-score標準化)

Z-score標準化也被稱為標準差標準化,經(jīng)過處理的數(shù)據(jù)的均值為0,標準差為1。其轉(zhuǎn)化公式為:

{x}'=\frac{x-\mu }{\delta }

其中\mu為原始數(shù)據(jù)的均值,\delta為原始數(shù)據(jù)的標準差,是當前用的最多的標準化公式

這種方法給予原始數(shù)據(jù)的均值(mean)和標準差(standard deviation)進行數(shù)據(jù)的標準化。經(jīng)過處理的數(shù)據(jù)符合標準正態(tài)分布,即均值為0,標準差為1,這里的關(guān)鍵在于復合標準正態(tài)分布

代碼實現(xiàn)如下:

def Z_ScoreNormalization(x,mu,sigma):
    x = (x - mu) / sigma;
    return x

3:小數(shù)定標規(guī)范化

這種方法通過移動屬性值的小數(shù)數(shù)位,將屬性值映射到[-1,1]之間,移動的小數(shù)位數(shù)取決于屬性值絕對值的最大值。轉(zhuǎn)換公式為:

{x}'=\frac{x}{10^{k}}

4:非線性歸一化 

這個方法包括log,指數(shù),正切

適用范圍:經(jīng)常用在數(shù)據(jù)分析比較大的場景,有些數(shù)值很大,有些很小,將原始值進行映射。

四:批歸一化(BatchNormalization)

1:引入

在以往的神經(jīng)網(wǎng)絡(luò)訓練時,僅僅只對輸入層數(shù)據(jù)進行歸一化處理,卻沒有在中間層進行歸一化處理。雖然我們對輸入數(shù)據(jù)進行了歸一化處理,但是輸入數(shù)據(jù)經(jīng)過了\delta這樣的矩陣乘法之后,其數(shù)據(jù)分布很可能發(fā)生很大改變,并且隨著網(wǎng)絡(luò)的層數(shù)不斷加深。數(shù)據(jù)分布的變化將越來越大。因此這種在神經(jīng)網(wǎng)絡(luò)中間層進行的歸一化處理,使得訓練效果更好的方法就被稱為批歸一化(BN)

2:BN算法的優(yōu)點

  1. 減少了人為選擇參數(shù)
  2. 減少了對學習率的要求,我們可以使用初始狀態(tài)下很大的學習率或者當使用較小的學習率時,算法也能夠快速訓練收斂。
  3. 破換了原來的數(shù)據(jù)分布,一定程度上緩解了過擬合(防止每批訓練中某一個樣本經(jīng)常被挑選到)
  4. 減少梯度消失,加快收斂速度,提高訓練精度。

3:批歸一化(BN)算法流程

輸入:上一層輸出結(jié)果X={x1,x2,.....xm},學習參數(shù)\gamma\beta

算法流程:

1)計算上一層輸出數(shù)據(jù)的均值:

\mu _{\beta }=\frac{1}{m}\sum_{i=1}^{m}x_{i}

其中,m是此次訓練樣本batch的大小。

2)計算上一層輸出數(shù)據(jù)的標準差:

\delta _{\beta }^{2}=\frac{1}{m}\sum_{i=1}^{m}(x_{i}-\mu _{\beta })^{2}

3)歸一化處理得到

\widehat{x_{i}}=\frac{x_{i}+\mu _{\beta }}{\sqrt{\delta _{\beta }^{2}}+\varepsilon }

公式中的\varepsilon是為了避免分母為0而加進去接近于0的很小的值。

4)重構(gòu),對經(jīng)過上面歸一化處理得到的數(shù)據(jù)進行重構(gòu),得到:

y_{i}=\gamma \widehat{x_{i}}+\beta

其中\gamma\beta為可學習的參數(shù)。

到此這篇關(guān)于淺談一下幾種常見的歸一化方法的文章就介紹到這了,更多相關(guān)常見的歸一化方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?中的異步?for?循環(huán)示例詳解

    Python?中的異步?for?循環(huán)示例詳解

    這篇文章主要介紹了Python中的異步for循環(huán),我們將討論 Python 庫 asyncio 和運行異步代碼所需的函數(shù),需要的朋友可以參考下
    2023-05-05
  • CentOS安裝OpenSSL1.1.1全過程

    CentOS安裝OpenSSL1.1.1全過程

    文章介紹了從頭開始編譯安裝Python3.10的步驟,包括檢查和安裝必要的依賴項、下載并解壓源碼、配置和編譯環(huán)境、創(chuàng)建軟連接以及配置環(huán)境變量,最后驗證安裝是否成功
    2025-03-03
  • python文件絕對路徑寫法介紹(windows)

    python文件絕對路徑寫法介紹(windows)

    今天小編就為大家分享一篇python文件絕對路徑寫法介紹(windows),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python制作個性化的詞云圖實例講解

    Python制作個性化的詞云圖實例講解

    大家好,本篇文章主要講的是Python制作個性化的詞云圖實例講解,感興趣的同學趕緊來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • python中reload(module)的用法示例詳解

    python中reload(module)的用法示例詳解

    與from和import相比,reload是內(nèi)置函數(shù),而不是語句,下面這篇文章主要給大家介紹了關(guān)于python中reload(module)用法的相關(guān)資料,文中給出了詳細的示例代碼供大家參考學習,需要的朋友們下面來一起看看吧。
    2017-09-09
  • 使用Python實現(xiàn)文本情感分析預處理的詳細教程

    使用Python實現(xiàn)文本情感分析預處理的詳細教程

    在自然語言處理(NLP)領(lǐng)域,文本情感分析是一項重要任務(wù),它旨在通過計算機技術(shù)識別和提取文本中的情感傾向(如正面、負面或中性),為了實現(xiàn)準確的情感分析,預處理步驟至關(guān)重要,所以本文給大家介紹了使用Python實現(xiàn)文本情感分析預處理的詳細教程,需要的朋友可以參考下
    2025-04-04
  • python pandas最常用透視表實現(xiàn)應用案例

    python pandas最常用透視表實現(xiàn)應用案例

    透視表是一種可以對數(shù)據(jù)動態(tài)排布并且分類匯總的表格格式,它在數(shù)據(jù)分析中有著重要的作用和地位,在本文中,我將為你介紹python中如何使用pandas包實現(xiàn)透視表的功能,以及一些常見的應用案例
    2024-01-01
  • Python中pip安裝非PyPI官網(wǎng)第三方庫的方法

    Python中pip安裝非PyPI官網(wǎng)第三方庫的方法

    這篇文章主要介紹了Python中pip安裝非PyPI官網(wǎng)第三方庫的方法,pip最新的版本(1.5以上的版本), 出于安全的考 慮,pip不允許安裝非PyPI的URL,本文就給出兩種解決方法,需要的朋友可以參考下
    2015-06-06
  • python發(fā)送郵件接收郵件示例分享

    python發(fā)送郵件接收郵件示例分享

    這篇文章主要介紹了python發(fā)送郵件接收郵件示例,大家參考使用吧
    2014-01-01
  • django 多對多表的創(chuàng)建和插入代碼實現(xiàn)

    django 多對多表的創(chuàng)建和插入代碼實現(xiàn)

    這篇文章主要介紹了django-多對多表的創(chuàng)建和插入代碼實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09

最新評論

温宿县| 桦甸市| 突泉县| 山阴县| 区。| 达孜县| 武冈市| 武陟县| 辽源市| 元朗区| 临汾市| 洱源县| 黄冈市| 宁阳县| 南汇区| 怀远县| 洪湖市| 溧水县| 博罗县| 汤原县| 浪卡子县| 青海省| 桃江县| 洛阳市| 阿勒泰市| 莆田市| 沁阳市| 登封市| 淄博市| 西昌市| 宝兴县| 谢通门县| 岐山县| 永川市| 衡南县| 安远县| 洛隆县| 长沙县| 石渠县| 胶州市| 乡宁县|