欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python sklearn數(shù)據(jù)預(yù)處理之正則化詳解

 更新時(shí)間:2023年10月07日 11:44:58   作者:databook  
數(shù)據(jù)的預(yù)處理是數(shù)據(jù)分析,或者機(jī)器學(xué)習(xí)訓(xùn)練前的重要步驟,這篇文章主要為大家詳細(xì)介紹了sklearn數(shù)據(jù)預(yù)處理中正則化的相關(guān)知識(shí),需要的可以參考下

數(shù)據(jù)的預(yù)處理是數(shù)據(jù)分析,或者機(jī)器學(xué)習(xí)訓(xùn)練前的重要步驟。

通過(guò)數(shù)據(jù)預(yù)處理,可以

  • 提高數(shù)據(jù)質(zhì)量,處理數(shù)據(jù)的缺失值、異常值和重復(fù)值等問(wèn)題,增加數(shù)據(jù)的準(zhǔn)確性和可靠性
  • 整合不同數(shù)據(jù),數(shù)據(jù)的來(lái)源和結(jié)構(gòu)可能多種多樣,分析和訓(xùn)練前要整合成一個(gè)數(shù)據(jù)集
  • 提高數(shù)據(jù)性能,對(duì)數(shù)據(jù)的值進(jìn)行變換,規(guī)約等(比如無(wú)量綱化),讓算法更加高效

本篇介紹的正則化處理,主要功能是對(duì)每個(gè)樣本計(jì)算其范數(shù),然后對(duì)該樣本中每個(gè)元素除以該范數(shù),

這樣處理的結(jié)果是使得每個(gè)處理后樣本的范數(shù)(如l1-norm、l2-norm)等于1。

1. 原理

介紹正則化之前,先簡(jiǎn)單介紹下范數(shù)的概念。

1.1. 范數(shù)

范數(shù)常被用來(lái)度量某個(gè)向量空間(或矩陣)中的每個(gè)向量的長(zhǎng)度或大小,

可以簡(jiǎn)單理解為向量的長(zhǎng)度,或者向量到零點(diǎn)的距離,或者相應(yīng)的兩個(gè)點(diǎn)之間的距離。

對(duì)于向量(x=[x1?,x2?,...,xm?]),常見(jiàn)的范數(shù)有:

numpy中已經(jīng)提供了計(jì)算向量范數(shù)的函數(shù)。

import numpy as np
# 范數(shù)計(jì)算
arr = np.random.randint(0, 100, 10)
print("向量: {}".format(arr))
L1 = np.linalg.norm(arr, 1)
print("L1范數(shù): {}".format(L1))
L2 = np.linalg.norm(arr, 2)
print("L2范數(shù): {}".format(L2))
LInf = np.linalg.norm(arr, np.inf)
print("無(wú)窮范數(shù): {}".format(LInf))
# 運(yùn)行結(jié)果
向量: [12 22 30 75 20 28 38 72  2 33]
L1范數(shù): 332.0
L2范數(shù): 126.72016414130783
無(wú)窮范數(shù): 75.0

1.2. 正則化

有了范數(shù)的概念之后,再來(lái)看正則化,根據(jù)選用的范數(shù)不同,正則化也分為L(zhǎng)1正則化,L2正則化等等。

范數(shù)正則化過(guò)程中扮演了重要的角色,被用來(lái)限制優(yōu)化參數(shù)的大小,幫助防止模型過(guò)擬合。

from sklearn import preprocessing as pp
data = np.random.randint(1, 100, size=(3, 3))
L1 = pp.normalize(data, norm="l1")
L2 = pp.normalize(data, norm="l2")
LMax = pp.normalize(data, norm="max")
print("L1正則化: {}".format(L1))
print("L2正則化: {}".format(L2))
print("Max正則化: {}".format(LMax))
# 運(yùn)行結(jié)果
L1正則化: 
[[0.29677419 0.09677419 0.60645161]
 [0.20408163 0.46938776 0.32653061]
 [0.05       0.67       0.28      ]]
L2正則化:
[[0.43510613 0.14188244 0.88912993]
 [0.33614632 0.77313654 0.53783412]
 [0.06869324 0.92048947 0.38468217]]
Max正則化:
[[0.4893617  0.15957447 1.        ]
 [0.43478261 1.         0.69565217]
 [0.07462687 1.         0.41791045]]

正則化之后,所有的數(shù)值都被壓縮到了 0~1之間。

后續(xù)介紹機(jī)器學(xué)習(xí)算法時(shí),可以看到正則化如何緩解訓(xùn)練結(jié)果過(guò)擬合的問(wèn)題。

2. 作用

對(duì)數(shù)據(jù)進(jìn)行正則化處理的主要作用有:

2.1. 防止過(guò)擬合

過(guò)擬合是指模型在訓(xùn)練數(shù)據(jù)上表現(xiàn)很好,但在測(cè)試數(shù)據(jù)上表現(xiàn)不佳的現(xiàn)象。

主要原因是模型在訓(xùn)練數(shù)據(jù)上學(xué)習(xí)了過(guò)多的噪聲和異常值,導(dǎo)致對(duì)訓(xùn)練數(shù)據(jù)過(guò)度擬合。

正則化通過(guò)對(duì)模型的復(fù)雜性進(jìn)行懲罰,使得模型在訓(xùn)練數(shù)據(jù)上表現(xiàn)良好的同時(shí),也能夠?qū)y(cè)試數(shù)據(jù)有較好的預(yù)測(cè)能力。

2.2. 提升穩(wěn)定性和魯棒性

穩(wěn)定性是指模型對(duì)于輸入數(shù)據(jù)的小變化能夠產(chǎn)生可接受的結(jié)果。

也就是說(shuō),如果輸入數(shù)據(jù)在一定范圍內(nèi)發(fā)生微小變化,模型的輸出結(jié)果也會(huì)相應(yīng)地按照相同的排列順序發(fā)生微小變化,而不是發(fā)生較大的顛覆性變化。

魯棒性則是指模型在一定條件下對(duì)于某些性能的保持能力。

也就是說(shuō),當(dāng)輸入數(shù)據(jù)中存在噪聲、異常值或不完全信息時(shí),模型能夠通過(guò)適當(dāng)?shù)奶幚砗退惴ǎ3制湓械男阅鼙憩F(xiàn),不會(huì)因?yàn)檫@些干擾因素而出現(xiàn)大幅度性能下降。

在實(shí)際應(yīng)用中,穩(wěn)定性魯棒性往往是相互制約的。

過(guò)于強(qiáng)調(diào)穩(wěn)定性可能導(dǎo)致模型過(guò)于簡(jiǎn)單,無(wú)法處理復(fù)雜的數(shù)據(jù)特征;

而過(guò)于強(qiáng)調(diào)魯棒性可能導(dǎo)致模型過(guò)于復(fù)雜,容易受到噪聲和異常值的影響。

因此,需要根據(jù)實(shí)際應(yīng)用場(chǎng)景和數(shù)據(jù)特點(diǎn)來(lái)權(quán)衡考慮這兩種性能指標(biāo),以實(shí)現(xiàn)最優(yōu)的性能表現(xiàn)。

正則化可以通過(guò)對(duì)模型的復(fù)雜性進(jìn)行懲罰,使得模型對(duì)于輸入數(shù)據(jù)的小變化不會(huì)產(chǎn)生太大的影響,從而提高了模型的穩(wěn)定性魯棒性

2.3. 提高泛化能力

泛化能力是指模型在未曾見(jiàn)過(guò)的數(shù)據(jù)上的表現(xiàn)能力,也就是模型對(duì)于新的數(shù)據(jù)的適應(yīng)能力。

正則化可以通過(guò)對(duì)模型的復(fù)雜性進(jìn)行懲罰,使得模型更加專(zhuān)注于訓(xùn)練數(shù)據(jù)中的重要特征,而不是被訓(xùn)練數(shù)據(jù)中的噪聲和異常值所迷惑。

這樣可以在一定程度上提高模型的泛化能力,使得模型在未知數(shù)據(jù)上的表現(xiàn)更好。

3. 總結(jié)

scikit-learn中,主要有三種正則化方法,L1正則化,L2正則化和Max正則化。

實(shí)際應(yīng)用中,根據(jù)數(shù)據(jù)的特征和場(chǎng)景對(duì)數(shù)據(jù)選擇不同的正則化方法,使得訓(xùn)練后的模型能夠有更好的精度和性能。

到此這篇關(guān)于python sklearn數(shù)據(jù)預(yù)處理之正則化詳解的文章就介紹到這了,更多相關(guān)sklearn數(shù)據(jù)預(yù)處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Apache部署Django項(xiàng)目圖文詳解

    Apache部署Django項(xiàng)目圖文詳解

    這篇文章主要介紹了Apache部署Django項(xiàng)目圖文詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • python如何修改文件時(shí)間屬性

    python如何修改文件時(shí)間屬性

    這篇文章主要介紹了python修改文件時(shí)間屬性的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-02-02
  • 詳細(xì)聊一聊為什么Python沒(méi)有main函數(shù)

    詳細(xì)聊一聊為什么Python沒(méi)有main函數(shù)

    相信很多初學(xué)python的人看代碼的時(shí)候都會(huì)先找一下main()方法,從main往下看,但事實(shí)上python中是沒(méi)有你理解中的“main()”方法的,下面這篇文章主要給大家介紹了關(guān)于為什么Python沒(méi)有main函數(shù)的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • Python打工人必備之windows倒計(jì)時(shí)鎖屏功能的實(shí)現(xiàn)

    Python打工人必備之windows倒計(jì)時(shí)鎖屏功能的實(shí)現(xiàn)

    每個(gè)人的電腦里都會(huì)有不想讓別人知道的隱私,或者是上班時(shí)間偷偷摸魚(yú)怕被發(fā)現(xiàn)的小秘密。那怎么辦?就干脆把隱私鎖起來(lái)!從源頭上杜絕被他人偷窺自己的隱私。本文就來(lái)用Python實(shí)現(xiàn)一個(gè)windows倒計(jì)時(shí)鎖屏功能,需要的可以參考一下
    2023-04-04
  • python中try的使用方法詳解

    python中try的使用方法詳解

    這篇文章主要給大家介紹了關(guān)于python中try使用的相關(guān)資料,try語(yǔ)句用于包含一段可能引發(fā)異常的代碼塊,并允許我們定義如何處理這些異常,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • Python json格式化打印實(shí)現(xiàn)過(guò)程解析

    Python json格式化打印實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了Python json格式化打印實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Python pyside6編寫(xiě)一個(gè)廣告圖片生成器

    Python pyside6編寫(xiě)一個(gè)廣告圖片生成器

    這篇文章主要為大家詳細(xì)介紹了Python如何使用pyside6編寫(xiě)一個(gè)廣告圖片生成器,可以快速制作包含產(chǎn)品圖片和文字的廣告圖片,需要的可以參考下
    2025-01-01
  • python 循環(huán)讀取txt文檔 并轉(zhuǎn)換成csv的方法

    python 循環(huán)讀取txt文檔 并轉(zhuǎn)換成csv的方法

    今天小編就為大家分享一篇python 循環(huán)讀取txt文檔 并轉(zhuǎn)換成csv的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • Python實(shí)現(xiàn)常見(jiàn)的回文字符串算法

    Python實(shí)現(xiàn)常見(jiàn)的回文字符串算法

    這篇文章主要介紹了Python實(shí)現(xiàn)常見(jiàn)的回文字符串算法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-11-11
  • 使用?OpenCV-Python?識(shí)別答題卡判卷功能

    使用?OpenCV-Python?識(shí)別答題卡判卷功能

    這篇文章主要介紹了使用?OpenCV-Python?識(shí)別答題卡判卷,本文分步驟通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12

最新評(píng)論