99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

機器學習的特征預處理問題討論

汽車玩家 ? 來源:今日頭條 ? 作者:不一樣的程序猿 ? 2020-03-15 17:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文我們來討論特征預處理的相關問題。主要包括特征的歸一化和標準化,異常特征樣本清洗與樣本數(shù)據(jù)不平衡問題的處理。

1. 特征的標準化和歸一化

由于標準化和歸一化這兩個詞經(jīng)?;煊?,所以本文不再區(qū)別標準化和歸一化,而通過具體的標準化和歸一化方法來區(qū)別具體的預處理操作。

z-score標準化:這是最常見的特征預處理方式,基本所有的線性模型在擬合的時候都會做 z-score標準化。具體的方法是求出樣本特征x的均值mean和標準差std,然后用(x-mean)/std來代替原特征。這樣特征就變成了均值為0,方差為1了。在sklearn中,我們可以用StandardScaler來做z-score標準化。當然,如果我們是用pandas做數(shù)據(jù)預處理,可以自己在數(shù)據(jù)框里面減去均值,再除以方差,自己做z-score標準化。

max-min標準化:也稱為離差標準化,預處理后使特征值映射到[0,1]之間。具體的方法是求出樣本特征x的最大值max和最小值min,然后用(x-min)/(max-min)來代替原特征。如果我們希望將數(shù)據(jù)映射到任意一個區(qū)間[a,b],而不是[0,1],那么也很簡單。用(x-min)(b-a)/(max-min)+a來代替原特征即可。在sklearn中,我們可以用MinMaxScaler來做max-min標準化。這種方法的問題就是如果測試集或者預測數(shù)據(jù)里的特征有小于min,或者大于max的數(shù)據(jù),會導致max和min發(fā)生變化,需要重新計算。所以實際算法中, 除非你對特征的取值區(qū)間有需求,否則max-min標準化沒有 z-score標準化好用。

L1/L2范數(shù)標準化:如果我們只是為了統(tǒng)一量綱,那么通過L2范數(shù)整體標準化也是可以的,具體方法是求出每個樣本特征向量

x→的L2范數(shù)||x→||2,然后用x→/||x→||2代替原樣本特征即可。當然L1范數(shù)標準化也是可以的,即用x/||x||1

代替原樣本特征。通常情況下,范數(shù)標準化首選L2范數(shù)標準化。在sklearn中,我們可以用Normalizer來做L1/L2范數(shù)標準化。

此外,經(jīng)常我們還會用到中心化,主要是在PCA降維的時候,此時我們求出特征x的平均值mean后,用x-mean代替原特征,也就是特征的均值變成了0, 但是方差并不改變。這個很好理解,因為PCA就是依賴方差來降維的。

雖然大部分機器學習模型都需要做標準化和歸一化,也有不少模型可以不做做標準化和歸一化,主要是基于概率分布的模型,比如決策樹大家族的CART,隨機森林等。當然此時使用標準化也是可以的,大多數(shù)情況下對模型的泛化能力也有改進。

2. 異常特征樣本清洗

我們在實際項目中拿到的數(shù)據(jù)往往有不少異常數(shù)據(jù),有時候不篩選出這些異常數(shù)據(jù)很可能讓我們后面的數(shù)據(jù)分析模型有很大的偏差。那么如果我們沒有專業(yè)知識,如何篩選出這些異常特征樣本呢?常用的方法有兩種。

第一種是聚類,比如我們可以用KMeans聚類將訓練樣本分成若干個簇,如果某一個簇里的樣本數(shù)很少,而且簇質(zhì)心和其他所有的簇都很遠,那么這個簇里面的樣本極有可能是異常特征樣本了。我們可以將其從訓練集過濾掉。

第二種是異常點檢測方法,主要是使用iForest或者one class SVM,使用異常點檢測的機器學習算法來過濾所有的異常點。

當然,某些篩選出來的異常樣本是否真的是不需要的異常特征樣本,最好找懂業(yè)務的再確認一下,防止我們將正常的樣本過濾掉了。

3. 處理不平衡數(shù)據(jù)

這個問題其實不算特征預處理的部分,不過其實它的實質(zhì)還是訓練集中各個類別的樣本的特征分布不一致的問題,所以這里我們一起講。

我們做分類算法訓練時,如果訓練集里的各個類別的樣本數(shù)量不是大約相同的比例,就需要處理樣本不平衡問題。也許你會說,不處理會怎么樣呢?如果不處理,那么擬合出來的模型對于訓練集中少樣本的類別泛化能力會很差。舉個例子,我們是一個二分類問題,如果訓練集里A類別樣本占90%,B類別樣本占10%。 而測試集里A類別樣本占50%, B類別樣本占50%, 如果不考慮類別不平衡問題,訓練出來的模型對于類別B的預測準確率會很低,甚至低于50%。

如何解決這個問題呢?一般是兩種方法:權重法或者采樣法。

權重法是比較簡單的方法,我們可以對訓練集里的每個類別加一個權重class weight。如果該類別的樣本數(shù)多,那么它的權重就低,反之則權重就高。如果更細致點,我們還可以對每個樣本加權重sample weight,思路和類別權重也是一樣,即樣本數(shù)多的類別樣本權重低,反之樣本權重高。sklearn中,絕大多數(shù)分類算法都有class weight和 sample weight可以使用。

如果權重法做了以后發(fā)現(xiàn)預測效果還不好,可以考慮采樣法。

采樣法常用的也有兩種思路,一種是對類別樣本數(shù)多的樣本做子采樣, 比如訓練集里A類別樣本占90%,B類別樣本占10%。那么我們可以對A類的樣本子采樣,直到子采樣得到的A類樣本數(shù)和B類別現(xiàn)有樣本一致為止,這樣我們就只用子采樣得到的A類樣本數(shù)和B類現(xiàn)有樣本一起做訓練集擬合模型。第二種思路是對類別樣本數(shù)少的樣本做過采樣, 還是上面的例子,我們對B類別的樣本做過采樣,直到過采樣得到的B類別樣本數(shù)加上B類別原來樣本一起和A類樣本數(shù)一致,最后再去擬合模型。

上述兩種常用的采樣法很簡單,但是都有個問題,就是采樣后改變了訓練集的分布,可能導致泛化能力差。所以有的算法就通過其他方法來避免這個問題,比如SMOTE算法通過人工合成的方法來生成少類別的樣本。方法也很簡單,對于某一個缺少樣本的類別,它會隨機找出幾個該類別的樣本,再找出最靠近這些樣本的若干個該類別樣本,組成一個候選合成集合,然后在這個集合中不停的選擇距離較近的兩個樣本(x1,y),(x2,y),在這兩個樣本之間,比如中點,構造一個新的該類別樣本。舉個例子,比如該類別的候選合成集合有兩個樣本(x1,y),(x2,y),那么SMOTE采樣后,可以得到一個新的訓練樣本((x1+x2)/2,y),(x1+x22,y),通過這種方法,我們可以得到不改變訓練集分布的新樣本,讓訓練集中各個類別的樣本數(shù)趨于平衡。我們可以用imbalance-learn這個Python庫中的SMOTEENN類來做SMOTE采樣。

4. 結(jié)語

特征工程系列終于寫完了,這個系列的知識比較零散,更偏向工程方法,所以不像算法那么緊湊,寫的也不是很好,希望大家批評指正。如果有其他好的特征工程方法需要補充的,歡迎留言評論。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 機器學習
    +關注

    關注

    66

    文章

    8503

    瀏覽量

    134639
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    FPGA Verilog HDL語法之編譯預處理

    Verilog HDL語言和C語言一樣也提供了編譯預處理的功能?!熬幾g預處理”是Verilog HDL編譯系統(tǒng)的一個組成部分。Verilog HDL語言允許在程序中使用幾種特殊的命令(它們不是一般
    的頭像 發(fā)表于 03-27 13:30 ?630次閱讀
    FPGA Verilog HDL語法之編譯<b class='flag-5'>預處理</b>

    【「具身智能機器人系統(tǒng)」閱讀體驗】+兩本互為支持的書

    》一書則是介紹視覺處理的執(zhí)行體,該執(zhí)行體力圖以更人性化的方式來執(zhí)行和處理問題,即以具身的形式,而非傳統(tǒng)的機械式的生硬形式來充當執(zhí)行體。 也就是說是以人體特征機器人的形式來感知周圍環(huán)境
    發(fā)表于 01-01 15:50

    傳統(tǒng)機器學習方法和應用指導

    在上一篇文章中,我們介紹了機器學習的關鍵概念術語。在本文中,我們會介紹傳統(tǒng)機器學習的基礎知識和多種算法特征,供各位老師選擇。 01 傳統(tǒng)
    的頭像 發(fā)表于 12-30 09:16 ?1194次閱讀
    傳統(tǒng)<b class='flag-5'>機器</b><b class='flag-5'>學習</b>方法和應用指導

    構建云原生機器學習平臺流程

    構建云原生機器學習平臺是一個復雜而系統(tǒng)的過程,涉及數(shù)據(jù)收集、處理、特征提取、模型訓練、評估、部署和監(jiān)控等多個環(huán)節(jié)。
    的頭像 發(fā)表于 12-14 10:34 ?436次閱讀

    自然語言處理機器學習的關系 自然語言處理的基本概念及步驟

    自然語言處理(Natural Language Processing,簡稱NLP)是人工智能和語言學領域的一個分支,它致力于研究如何讓計算機能夠理解、解釋和生成人類語言。機器學習(Machine
    的頭像 發(fā)表于 12-05 15:21 ?1988次閱讀

    Minitab 數(shù)據(jù)清理與預處理技巧

    Minitab是一款功能強大的統(tǒng)計分析和質(zhì)量管理軟件,在數(shù)據(jù)分析過程中,數(shù)據(jù)清理與預處理是至關重要的環(huán)節(jié)。以下是一些在Minitab中進行數(shù)據(jù)清理與預處理的技巧: 一、數(shù)據(jù)導入與格式調(diào)整 導入數(shù)據(jù)
    的頭像 發(fā)表于 12-02 16:06 ?1555次閱讀

    ASR和機器學習的關系

    自動語音識別(ASR)技術的發(fā)展一直是人工智能領域的一個重要分支,它使得機器能夠理解和處理人類語言。隨著機器學習(ML)技術的迅猛發(fā)展,ASR系統(tǒng)的性能和準確性得到了顯著提升。 ASR
    的頭像 發(fā)表于 11-18 15:16 ?784次閱讀

    NPU與機器學習算法的關系

    在人工智能領域,機器學習算法是實現(xiàn)智能系統(tǒng)的核心。隨著數(shù)據(jù)量的激增和算法復雜度的提升,對計算資源的需求也在不斷增長。NPU作為一種專門為深度學習機器
    的頭像 發(fā)表于 11-15 09:19 ?1229次閱讀

    eda在機器學習中的應用

    機器學習項目中,數(shù)據(jù)預處理和理解是成功構建模型的關鍵。探索性數(shù)據(jù)分析(EDA)是這一過程中不可或缺的一部分。 1. 數(shù)據(jù)清洗 數(shù)據(jù)清洗 是機器學習
    的頭像 發(fā)表于 11-13 10:42 ?911次閱讀

    LLM和傳統(tǒng)機器學習的區(qū)別

    在人工智能領域,LLM(Large Language Models,大型語言模型)和傳統(tǒng)機器學習是兩種不同的技術路徑,它們在處理數(shù)據(jù)、模型結(jié)構、應用場景等方面有著顯著的差異。 1. 模型結(jié)構
    的頭像 發(fā)表于 11-08 09:25 ?1900次閱讀

    語音識別機器人的工作原理

    語音識別機器人的工作原理主要基于一系列復雜的技術流程,包括信號采集、預處理、特征提取、聲學模型匹配、語言模型預測以及最終的解碼輸出。 一、信號采集 語音識別機器人首先通過麥克風等音頻輸
    的頭像 發(fā)表于 10-25 09:25 ?1094次閱讀

    C55x CSL音頻預處理

    電子發(fā)燒友網(wǎng)站提供《C55x CSL音頻預處理.pdf》資料免費下載
    發(fā)表于 09-19 11:30 ?0次下載
    C55x CSL音頻<b class='flag-5'>預處理</b>

    【「時間序列與機器學習」閱讀體驗】時間序列的信息提取

    個重要環(huán)節(jié),目標是從給定的時間序列數(shù)據(jù)中提取出有用的信息和特征,以支持后續(xù)的分析和預測任務。 特征工程(Feature Engineering)是將數(shù)據(jù)轉(zhuǎn)換為更好地表示潛在問題的特征,從而提高
    發(fā)表于 08-17 21:12

    【《時間序列與機器學習》閱讀體驗】+ 時間序列的信息提取

    本人有些機器學習的基礎,理解起來一點也不輕松,加油。 作者首先說明了時間序列的信息提取是時間序列分析的一個重要環(huán)節(jié),目標是從給定的時間序列數(shù)據(jù)中提取出有用的信息和特征,以支持后續(xù)的分析和預測任務,可以
    發(fā)表于 08-14 18:00

    【「時間序列與機器學習」閱讀體驗】全書概覽與時間序列概述

    數(shù)據(jù)中提取特征并將其轉(zhuǎn)化為交易策略,以及機器學習在其他金融領域(包括資產(chǎn)定價、資產(chǎn)配置、波動率預測)的應用。 全書彩版印刷,內(nèi)容結(jié)構嚴整,條理清晰,循序漸進,由淺入深,是很好的時間序列學習
    發(fā)表于 08-07 23:03