中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

煙臺微信網(wǎng)站建設(shè)網(wǎng)站搜索優(yōu)化

煙臺微信網(wǎng)站建設(shè),網(wǎng)站搜索優(yōu)化,云主機(jī)iss怎么做網(wǎng)站,做公司網(wǎng)站要走哪些流程本文作者:楊健,九章云極 DataCanvas 主任架構(gòu)師 數(shù)據(jù)漂移問題近年在機(jī)器學(xué)習(xí)領(lǐng)域來越來越得到關(guān)注,成為機(jī)器學(xué)習(xí)模型在實(shí)際投產(chǎn)中面對的一個(gè)主要挑戰(zhàn)。當(dāng)數(shù)據(jù)的分布隨著時(shí)間推移逐漸發(fā)生變化,需要預(yù)測的數(shù)據(jù)和用于訓(xùn)練的數(shù)據(jù)分布…

本文作者:楊健,九章云極 DataCanvas 主任架構(gòu)師

數(shù)據(jù)漂移問題近年在機(jī)器學(xué)習(xí)領(lǐng)域來越來越得到關(guān)注,成為機(jī)器學(xué)習(xí)模型在實(shí)際投產(chǎn)中面對的一個(gè)主要挑戰(zhàn)。當(dāng)數(shù)據(jù)的分布隨著時(shí)間推移逐漸發(fā)生變化,需要預(yù)測的數(shù)據(jù)和用于訓(xùn)練的數(shù)據(jù)分布表現(xiàn)出明顯的偏移,這就是數(shù)據(jù)漂移問題。

在這里插入圖片描述

數(shù)據(jù)漂移分為三種類型:

  • 變量偏移(Covariate Drift),某些獨(dú)立的特征發(fā)生偏移

  • 先驗(yàn)概率偏移(Prior probability Drift),目標(biāo)變量發(fā)生偏移

  • 概念偏移(Concept Drift),特征和目標(biāo)變量之間的關(guān)系發(fā)生偏移

為什么不能通過提升泛化能力來解決數(shù)據(jù)漂移問題?

數(shù)據(jù)漂移問題無法通過提升模型泛化能力的方法來解決,因?yàn)槲覀兡壳暗臋C(jī)器學(xué)習(xí)方法基本是建立在IID(獨(dú)立同分布)前提下的。在一個(gè)真實(shí)分布下可觀測的訓(xùn)練數(shù)據(jù)有限,訓(xùn)練好模型在預(yù)測時(shí)遇到了符合同一個(gè)分布但未觀測到的樣本時(shí)準(zhǔn)確度下降,這種情況我們通過選擇合適的算法、交叉驗(yàn)證、正則化、Ensemble等方式是可以有效改善模型的泛化能力的。但數(shù)據(jù)漂移的本質(zhì)是數(shù)據(jù)的真實(shí)分布發(fā)生了較大的變化,因此僅僅提升泛化能力是無法有效提升模型效果的。

常用的解決方案

數(shù)據(jù)漂移常見的解決方案是不斷的引入最新的數(shù)據(jù)重新訓(xùn)練模型,但這種方案存在很大的缺陷,例如:我們在客戶流失預(yù)警中通常會用歷史標(biāo)注的數(shù)據(jù)訓(xùn)練模型來預(yù)測當(dāng)月是否有用戶流失,模型預(yù)測的結(jié)果要等下個(gè)月通過用戶行為反饋后得到標(biāo)注才能評估,如果我們發(fā)現(xiàn)結(jié)果大幅下降才能判斷數(shù)據(jù)發(fā)生了漂移,因此這種方案存在比較明顯的滯后性,這也是有監(jiān)督學(xué)習(xí)的主要短板。

使用Adversarial Validation半監(jiān)督學(xué)習(xí)解決數(shù)據(jù)漂移

隨著近年來無監(jiān)督和半監(jiān)督學(xué)習(xí)的發(fā)展,一種基于Adversarial Validation(對抗驗(yàn)證)的半監(jiān)督學(xué)習(xí)技術(shù)被提出用于解決數(shù)據(jù)漂移問題。它的核心思想是通過訓(xùn)練一個(gè)Adversarial Classifier來判斷是否發(fā)生漂移以及哪些特征發(fā)生了漂移,進(jìn)而刪除發(fā)生漂移的特征來保證模型在新數(shù)據(jù)上的效果。如下圖所示:

在這里插入圖片描述

對抗驗(yàn)證的基本過程是把訓(xùn)練數(shù)據(jù)(先刪除目標(biāo)列)和待預(yù)測數(shù)據(jù)(數(shù)據(jù)中本身就沒有目標(biāo)列)合并后添加新的二分類目標(biāo)列(來自訓(xùn)練集為0, 來自測試集為1)。新的數(shù)據(jù)集shuffle后使用分層采樣分割成訓(xùn)練集和評估集,用訓(xùn)練數(shù)據(jù)fit模型后使用評估集評估AUC,通常如果數(shù)據(jù)沒有發(fā)生偏移AUC會接近0.5,否則就可以判斷發(fā)生了不同程度的數(shù)據(jù)漂移。接下來就是識別哪些特征發(fā)生了漂移,有兩種方法:一種是把每一個(gè)特征列做為X,單獨(dú)訓(xùn)練Adversarial Classifier來評估AUC,超過一定閾值(如>0.6),就確定該列發(fā)生了漂移。另一種方法是:用全部特征訓(xùn)練Classifier然后評估AUC,如果超過一定閾值,就刪除掉特征重要性最高的n個(gè)特征,然后重復(fù)迭代這個(gè)過程,直到AUC降到可接受的范圍內(nèi)。

上面的方法是通過刪除漂移特征來保證模型不被干擾,還有一種方法是通過選擇合適的驗(yàn)證集來獲得更接近于測試集(待預(yù)測數(shù)據(jù))的模型評估結(jié)果,被成為Validation Data Selection。這種方法是訓(xùn)練一個(gè)模型來識別訓(xùn)練集中的哪些樣本的分布和測試集更相似,把這些樣本拿出來做為Validation Data來指導(dǎo)模型訓(xùn)練,讓模型可以更好的擬合測試數(shù)據(jù)的分布。

在HyperGBM中如何自動(dòng)完成數(shù)據(jù)漂移檢測和處理?

以上這些方法在很多數(shù)據(jù)集上可以很明顯的改善模型的預(yù)測效果,目前在HyperGBM中都已經(jīng)支持,通過配置參數(shù)就可以完成。HyperGBM中只需要在構(gòu)建experiment時(shí)設(shè)置drift_detection=True就會自動(dòng)完成數(shù)據(jù)漂移的檢測和處理,需要注意的是Adversarial Validation是一種半監(jiān)督學(xué)習(xí),所以訓(xùn)練時(shí)需要提供未觀測到目標(biāo)數(shù)據(jù)的測試集(比如待預(yù)測的下個(gè)月的數(shù)據(jù),Kaggle競賽中的測試集),在下面示例中我們只是從數(shù)據(jù)集中分割了一部分?jǐn)?shù)據(jù)刪除目標(biāo)列做為測試集:

from tabular_toolbox.datasets import dsutils
from sklearn.model_selection import train_test_split
from hypergbm.search_space import search_space_general
from hypergbm import make_experiment
# load data into Pandas DataFrame
df = dsutils.load_bank()
target = 'y'
train, test = train_test_split(df, test_size=0.3)
test.pop(target)
#create an experiment
experiment = make_experiment(train, target=target, test_data=test,drift_detection=True)
#run experiment
estimator = experiment.run()
# predict on test data without target values
pred = estimator.predict(test)

實(shí)現(xiàn)Validation Data Selection只需要設(shè)置train_test_split_strategy=‘a(chǎn)dversarial_validation’,示例代碼入下:

from tabular_toolbox.datasets import dsutils
from sklearn.model_selection import train_test_split
from hypergbm.search_space import search_space_general
from hypergbm import make_experiment
# load data into Pandas DataFrame
df = dsutils.load_bank()
target = 'y'
train, test = train_test_split(df, test_size=0.3)
test.pop(target)
#create an experiment
experiment = make_experiment(train, target=target, test_data=test,train_test_split_strategy='adversarial_validation')
#run experiment
estimator = experiment.run()
# predict on test data without target values
pred = estimator.predict(test)

更多HyperGBM相關(guān)內(nèi)容請參考:
https://github.com/DataCanvasIO/HyperGBM

http://www.risenshineclean.com/news/40846.html

相關(guān)文章:

  • 懷化市建設(shè)局門戶網(wǎng)站網(wǎng)絡(luò)營銷推廣平臺
  • 定制型網(wǎng)站開發(fā)2345網(wǎng)址導(dǎo)航智能主板
  • 商丘哪里做網(wǎng)站百度收錄提交入口網(wǎng)址
  • dede網(wǎng)站打開速度慢如何優(yōu)化seo關(guān)鍵詞
  • 百度如何搜索到自己的網(wǎng)站網(wǎng)站綜合查詢工具
  • 鄭州電商網(wǎng)站開發(fā)港港網(wǎng)app下載最新版
  • angular2是做網(wǎng)站的還是手機(jī)的seo排名的公司
  • app運(yùn)營流程上海外貿(mào)seo公司
  • 樂清網(wǎng)站建設(shè)網(wǎng)站建設(shè)網(wǎng)站的宣傳與推廣
  • 旅游景區(qū)網(wǎng)站源碼個(gè)人網(wǎng)站設(shè)計(jì)成品
  • 建c2c網(wǎng)站費(fèi)用拉新推廣賺錢的app
  • 浙江網(wǎng)站建設(shè)企業(yè)軟文類型
  • 免費(fèi)做的網(wǎng)站怎么設(shè)置域名京津冀協(xié)同發(fā)展
  • 營銷加盟網(wǎng)站建設(shè)網(wǎng)站維護(hù)是什么意思
  • erp定制開發(fā)價(jià)格澳門seo關(guān)鍵詞排名
  • 做網(wǎng)站阿里云買哪個(gè)服務(wù)器好點(diǎn)汽車推廣軟文
  • 長沙制作網(wǎng)頁網(wǎng)站杭州網(wǎng)絡(luò)
  • 一品威客網(wǎng)怎么樣seo免費(fèi)優(yōu)化網(wǎng)站
  • win7iis配置網(wǎng)站百度搜索引擎網(wǎng)址
  • 整站優(yōu)化網(wǎng)站報(bào)價(jià)公司網(wǎng)站建設(shè)全包
  • 網(wǎng)站開發(fā)團(tuán)隊(duì)取什么名字好怎么引流怎么推廣自己的產(chǎn)品
  • 長春怎么做網(wǎng)站建站流程新手搭建網(wǎng)站第一步
  • 商城網(wǎng)站開發(fā)教程視頻北京網(wǎng)絡(luò)營銷推廣
  • 歐美設(shè)計(jì)網(wǎng)站推薦app拉新平臺哪個(gè)好傭金高
  • 密云做網(wǎng)站的產(chǎn)品關(guān)鍵詞大全
  • 建站行業(yè)的利潤百度指數(shù)里的資訊指數(shù)是什么
  • 不銹鋼公司網(wǎng)站源碼 網(wǎng)站建設(shè) 產(chǎn)品3級分類asp源碼域名查詢注冊商
  • 360度全景街景地圖陽江seo
  • 北京營銷型網(wǎng)站建設(shè)培訓(xùn)百度怎么優(yōu)化網(wǎng)站關(guān)鍵詞
  • 科學(xué)城做網(wǎng)站公司網(wǎng)絡(luò)營銷的四種模式