18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

Python特征生成作用和生成的方法

數(shù)據(jù)分析與開(kāi)發(fā) ? 來(lái)源:CSDN ? 作者:python阿喵 ? 2021-03-10 15:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

創(chuàng)造新的特征是一件十分困難的事情,需要豐富的專(zhuān)業(yè)知識(shí)和大量的時(shí)間。機(jī)器學(xué)習(xí)應(yīng)用的本質(zhì)基本上就是特征工程?!狝ndrew Ng

業(yè)內(nèi)常說(shuō)數(shù)據(jù)決定了模型效果上限,而機(jī)器學(xué)習(xí)算法是通過(guò)數(shù)據(jù)特征做出預(yù)測(cè)的,好的特征可以顯著地提升模型效果。這意味著通過(guò)特征生成(即從數(shù)據(jù)設(shè)計(jì)加工出模型可用特征),是特征工程相當(dāng)關(guān)鍵的一步。

本文從特征生成作用、特征生成的方法(人工設(shè)計(jì)、自動(dòng)化特征生成)展開(kāi)闡述并附上代碼。

1 特征生成的作用

特征生成是特征提取中的重要一步,作用在于:

增加特征的表達(dá)能力,提升模型效果;(如體重除以身高就是表達(dá)健康情況的重要特征,而單純看身高或體重,對(duì)健康情況表達(dá)就有限。)

可以融入業(yè)務(wù)上的理解設(shè)計(jì)特征,增加模型的可解釋性;

2 一鍵數(shù)據(jù)情況分析

本文示例的數(shù)據(jù)集是客戶(hù)的資金變動(dòng)情況,如下數(shù)據(jù)字典:

cust_no:客戶(hù)編號(hào);I1 :性別;I2:年齡;E1:開(kāi)戶(hù)日期; B6 :近期轉(zhuǎn)賬日期;C1 (后綴_fir表示上個(gè)月):存款;C2:存款產(chǎn)品數(shù); X1:理財(cái)存款;X2:結(jié)構(gòu)性存款; label:資金情況上升下降情況。

75030a1c-7efa-11eb-8b86-12bb97331649.png

這里安利一個(gè)超實(shí)用Python庫(kù),可以一鍵數(shù)據(jù)分析(數(shù)據(jù)概況、缺失、相關(guān)性、異常值等等),方便結(jié)合數(shù)據(jù)分析報(bào)告做特征生成。

#一鍵數(shù)據(jù)分析 importpandas_profiling pandas_profiling.ProfileReport(df)

3 特征生成方法(手動(dòng))

特征生成方法可以分為兩類(lèi):聚合方式、轉(zhuǎn)換方式。

3.1 聚合方式

聚合方式是指對(duì)存在一對(duì)多的字段,將其對(duì)應(yīng)多條記錄分組聚合后統(tǒng)計(jì)平均值、計(jì)數(shù)、最大值等數(shù)據(jù)特征。如以上述數(shù)據(jù)集,同一cust_no對(duì)應(yīng)多條記錄,通過(guò)對(duì)cust_no(客戶(hù)編號(hào))做分組聚合,統(tǒng)計(jì)C1字段個(gè)數(shù)、唯一數(shù)、平均值、中位數(shù)、標(biāo)準(zhǔn)差、總和、最大、最小值,最終得到按每個(gè)cust_no統(tǒng)計(jì)的C1平均值、最大值等特征。

#以cust_no做聚合,C1字段統(tǒng)計(jì)個(gè)數(shù)、唯一數(shù)、平均值、中位數(shù)、標(biāo)準(zhǔn)差、總和、最大、最小值 df.groupby('cust_no').C1.agg(['count','nunique','mean','median','std','sum','max','min'])

此外還可以pandas自定義聚合函數(shù)生成特征,比如加工聚合元素的平方和:

#自定義分組聚合統(tǒng)計(jì)函數(shù) defx2_sum(group): returnsum(group**2) df.groupby('cust_no').C1.apply(x2_sum)

3.2 轉(zhuǎn)換方式

轉(zhuǎn)換方式是指對(duì)字段間做加減乘除等運(yùn)算生成數(shù)據(jù)特征的過(guò)程,對(duì)不同字段類(lèi)型有不同轉(zhuǎn)換方式。

3.2.1 數(shù)值類(lèi)型

加減乘除多個(gè)字段做運(yùn)算生成新的特征,這通常需要結(jié)合業(yè)務(wù)層面的理解以及數(shù)據(jù)分布的情況,以生成較優(yōu)的特征集。

importnumpyasnp #前后兩個(gè)月資金和 df['C1+C1_fir']=df['C1']+df['C1_fir'] #前后兩個(gè)月資金差異 df['C1-C1_fir']=df['C1']-df['C1_fir'] #產(chǎn)品數(shù)*資金 df['C1*C2']=df['C1']*df['C2'] #前后兩個(gè)月資金變化率 df['C1/C1_fir']=df['C1']/df['C1_fir']-1 df.head()

多個(gè)列統(tǒng)計(jì)直接用聚合函數(shù)統(tǒng)計(jì)多列的方差、均值等

764b13ce-7efa-11eb-8b86-12bb97331649.png

importnumpyasnp df['C1_sum']=np.sum(df[['C1_fir','C1']],axis=1) df['C1_var']=np.var(df[['C1_fir','C1']],axis=1) df['C1_max']=np.max(df[['C1_fir','C1']],axis=1) df['C1_min']=np.min(df[['C1_fir','C1']],axis=1) df['C1-C1_fir_abs']=np.abs(df['C1-C1_fir']) df.head()

排名編碼特征按特征值對(duì)全體樣本進(jìn)行排序,以排序序號(hào)作為特征值。這種特征對(duì)異常點(diǎn)不敏感,也不容易導(dǎo)致特征值沖突。

#排序特征 df['C1_rank']=df['C1'].rank(ascending=0,method='dense') df.head()76778a26-7efa-11eb-8b86-12bb97331649.png

3.2.2 字符類(lèi)型

截取當(dāng)字符類(lèi)型的值過(guò)多,通常可對(duì)字符類(lèi)型變量做截取,以減少模型過(guò)擬合。如具體的家庭住址,可以截取字符串到城市級(jí)的粒度。

字符長(zhǎng)度統(tǒng)計(jì)字符串長(zhǎng)度。如轉(zhuǎn)賬場(chǎng)景中,轉(zhuǎn)賬留言的字?jǐn)?shù)某些程度可以刻畫(huà)這筆轉(zhuǎn)賬的類(lèi)型。

頻次通過(guò)統(tǒng)計(jì)字符出現(xiàn)頻次。如欺詐場(chǎng)景中地址出現(xiàn)次數(shù)越多,越有可能是團(tuán)伙欺詐。

#字符特征 #由于沒(méi)有合適的例子,這邊只是用代碼實(shí)現(xiàn)邏輯,加工的字段并無(wú)含義。 #截取第一位字符串 df['I1_0']=df['I1'].map(lambdax:str(x)[:1]) #字符長(zhǎng)度 df['I1_len']=df['I1'].apply(lambdax:len(str(x))) display(df.head()) #字符串頻次 df['I1'].value_counts()

3.2.3 日期類(lèi)型

常用的有計(jì)算日期間隔、周幾、幾點(diǎn)等等。

76965c9e-7efa-11eb-8b86-12bb97331649.png

#日期類(lèi)型 df['E1_B6_interval']=(df.E1.astype('datetime64[ns]')-df.B6.astype('datetime64[ns]')).map(lambdax:x.days) df['E1_is_month_end']=pd.to_datetime(df.E1).map(lambdax:x.is_month_end) df['E1_dayofweek']=df.E1.astype('datetime64[ns]').dt.dayofweek df['B6_hour']=df.B6.astype('datetime64[ns]').dt.hour df.head()

4 特征生成方法(自動(dòng)化)

傳統(tǒng)的特征工程方法通過(guò)人工構(gòu)建特征,這是一個(gè)繁瑣、耗時(shí)且容易出錯(cuò)的過(guò)程。自動(dòng)化特征工程是通過(guò)Fearturetools等工具,從一組相關(guān)數(shù)據(jù)表中自動(dòng)生成有用的特征的過(guò)程。對(duì)比人工生成特征會(huì)更為高效,可重復(fù)性更高,能夠更快地構(gòu)建模型。

4.1 FeatureTools上手

Featuretools是一個(gè)用于執(zhí)行自動(dòng)化特征工程的開(kāi)源庫(kù),它有基本的3個(gè)概念:1)Feature Primitives(特征基元):生成特征的常用方法,分為聚合(agg_primitives)、轉(zhuǎn)換(trans_primitives)的方式??赏ㄟ^(guò)如下代碼列出featuretools的特征加工方法及簡(jiǎn)介。

importfeaturetoolsasft ft.list_primitives()

771610b0-7efa-11eb-8b86-12bb97331649.png

2)Entity(實(shí)體)可以被看作類(lèi)似Pandas DataFrame, 多個(gè)實(shí)體的集合稱(chēng)為Entityset。實(shí)體間可以根據(jù)關(guān)聯(lián)鍵添加關(guān)聯(lián)關(guān)系Relationship。

#df1為原始的特征數(shù)據(jù) df1=df.drop('label',axis=1) #df2為客戶(hù)清單(cust_no唯一值) df2=df[['cust_no']].drop_duplicates() df2.head() #定義數(shù)據(jù)集 es=ft.EntitySet(id='dfs') #增加一個(gè)df1數(shù)據(jù)框?qū)嶓w es.entity_from_dataframe(entity_id='df1', dataframe=df1, index='id', make_index=True) #增加一個(gè)df2數(shù)據(jù)實(shí)體 es.entity_from_dataframe(entity_id='df2', dataframe=df2, index='cust_no') #添加實(shí)體間關(guān)系:通過(guò) cust_no鍵關(guān)聯(lián) df_1 和 df 2實(shí)體 relation1=ft.Relationship(es['df2']['cust_no'],es['df1']['cust_no']) es=es.add_relationship(relation1)

3)dfs(深度特征合成):是從多個(gè)數(shù)據(jù)集創(chuàng)建新特征的過(guò)程,可以通過(guò)設(shè)置搜索的最大深度(max_depth)來(lái)控制所特征生成的復(fù)雜性

##運(yùn)行DFS特征衍生 features_matrix,feature_names=ft.dfs(entityset=es, target_entity='df2', relationships=[relation1], trans_primitives=['divide_numeric','multiply_numeric','subtract_numeric'], agg_primitives=['sum'], max_depth=2,n_jobs=1,verbose=-1)

4.2 FeatureTools問(wèn)題點(diǎn)

4.2.1 內(nèi)存溢出問(wèn)題Fearturetools是通過(guò)工程層面暴力生成所有特征的過(guò)程,當(dāng)數(shù)據(jù)量大的時(shí)候,容易造成內(nèi)存溢出。解決這個(gè)問(wèn)題除了升級(jí)服務(wù)器內(nèi)存,減少njobs,還有一個(gè)常用的是通過(guò)只選擇重要的特征進(jìn)行暴力衍生特征。

4.2.2 特征維度爆炸當(dāng)原始特征數(shù)量多,或max_depth、特征基元的種類(lèi)設(shè)定較大,F(xiàn)earturetools生成的特征數(shù)量巨大,容易維度爆炸。這是就需要考慮到特征選擇、特征降維。

原文標(biāo)題:一文歸納Python特征生成方法(全)

文章出處:【微信公眾號(hào):數(shù)據(jù)分析與開(kāi)發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

責(zé)任編輯:haq

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

    關(guān)注

    8

    文章

    7298

    瀏覽量

    93605
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8533

    瀏覽量

    136024
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4849

    瀏覽量

    89235

原文標(biāo)題:一文歸納Python特征生成方法(全)

文章出處:【微信號(hào):DBDevs,微信公眾號(hào):數(shù)據(jù)分析與開(kāi)發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何通過(guò)地址生成器實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)特征圖的padding?

    ,從而使卷積輸出特征圖結(jié)果滿(mǎn)足我們的需求,這種補(bǔ)零的操作稱(chēng)之為padding,如下圖所示。 關(guān)于padding的實(shí)現(xiàn),一般有兩種操作,第一種是使用稀疏地址生成器,尋找padding數(shù)據(jù)地址的規(guī)律,當(dāng)
    發(fā)表于 10-22 08:15

    探索無(wú)限可能:生成式推薦的演進(jìn)、前沿與挑戰(zhàn)

    )的生成式推薦(Generative Recommendations, GRs)正逐步形成一種區(qū)別于判別式推薦的新范式,展現(xiàn)出替代依賴(lài)復(fù)雜手工特征的傳統(tǒng)推薦系統(tǒng)的強(qiáng)大潛力。本文系統(tǒng)全面地介紹了基于LLM的生成式推薦系統(tǒng)(GRs)
    的頭像 發(fā)表于 10-20 16:42 ?3496次閱讀
    探索無(wú)限可能:<b class='flag-5'>生成</b>式推薦的演進(jìn)、前沿與挑戰(zhàn)

    如何讓大模型生成你想要的測(cè)試用例?

    ,有角色定位,有業(yè)務(wù)背景,有個(gè)人偏好,有目標(biāo)達(dá)成標(biāo)準(zhǔn),有格式規(guī)范要求等,讓智能模板充當(dāng)你的個(gè)人翻譯官,充分發(fā)揮每一句設(shè)定提示詞的作用和價(jià)值,生成屬于你想要風(fēng)格的測(cè)試
    的頭像 發(fā)表于 09-26 10:01 ?344次閱讀
    如何讓大模型<b class='flag-5'>生成</b>你想要的測(cè)試用例?

    生成式 AI 重塑自動(dòng)駕駛仿真:4D 場(chǎng)景生成技術(shù)的突破與實(shí)踐

    生成式AI驅(qū)動(dòng)的4D場(chǎng)景技術(shù)正解決傳統(tǒng)方法效率低、覆蓋不足等痛點(diǎn),如何通過(guò)NeRF、3D高斯?jié)姙R等技術(shù)實(shí)現(xiàn)高保真動(dòng)態(tài)建模?高效生成極端天氣等長(zhǎng)尾場(chǎng)景?本文為您系統(tǒng)梳理AI驅(qū)動(dòng)的4D場(chǎng)景生成
    的頭像 發(fā)表于 08-06 11:20 ?4605次閱讀
    <b class='flag-5'>生成</b>式 AI 重塑自動(dòng)駕駛仿真:4D 場(chǎng)景<b class='flag-5'>生成</b>技術(shù)的突破與實(shí)踐

    Copilot操作指南(一):使用圖片生成原理圖符號(hào)、PCB封裝

    的操作方法。? ” ? 圖片生成原理圖符號(hào)(Symbol) Copilot 支持圖片生成原理圖符號(hào)功能,支持原理圖編輯器與符號(hào)編輯器兩種場(chǎng)景。只需在 Copilot 中? @圖片生成
    的頭像 發(fā)表于 07-15 11:14 ?3564次閱讀
    Copilot操作指南(一):使用圖片<b class='flag-5'>生成</b>原理圖符號(hào)、PCB封裝

    利用NVIDIA 3D引導(dǎo)生成式AI Blueprint控制圖像生成

    AI 賦能的圖像生成技術(shù)突飛猛進(jìn),從早期模型會(huì)生成手指過(guò)多的人類(lèi)圖像,到現(xiàn)在能創(chuàng)造出令人驚嘆的逼真視覺(jué)效果。即使取得了如此飛躍,仍然存在一個(gè)挑戰(zhàn):實(shí)現(xiàn)創(chuàng)意掌控。
    的頭像 發(fā)表于 06-05 09:24 ?643次閱讀

    ?Diffusion生成式動(dòng)作引擎技術(shù)解析

    Diffusion生成式動(dòng)作引擎 Diffusion生成式動(dòng)作引擎是一種基于擴(kuò)散模型(Diffusion Models)的生成式人工智能技術(shù),專(zhuān)注于生成連續(xù)、逼真的人類(lèi)動(dòng)作或動(dòng)畫(huà)序列。
    的頭像 發(fā)表于 03-17 15:14 ?2555次閱讀

    Python中的迭代器與生成

    Python迭代器與生成器 列表生成式 列表生成式也叫做列表推導(dǎo)式,它本身還是列表,只不過(guò)它是根據(jù)我們定義的規(guī)則來(lái)生成一個(gè)真實(shí)的列表。 ?
    的頭像 發(fā)表于 02-20 10:43 ?600次閱讀

    聚云科技榮獲亞馬遜云科技生成式AI能力認(rèn)證

    助力企業(yè)加速生成式AI應(yīng)用落地 北京2025年2月14日?/美通社/ -- 云管理服務(wù)提供商聚云科技獲得亞馬遜云科技生成式AI能力認(rèn)證,利用亞馬遜云科技全托管的生成式AI服務(wù)Amazon
    的頭像 發(fā)表于 02-14 16:07 ?614次閱讀

    生成式AI工具好用嗎

    當(dāng)下,生成式AI工具正以其強(qiáng)大的內(nèi)容生成能力,為用戶(hù)帶來(lái)了前所未有的便捷與創(chuàng)新。那么,生成式AI工具到底好用嗎?答案無(wú)疑是肯定的。接下來(lái),AI部落小編帶您了解。
    的頭像 發(fā)表于 01-17 09:54 ?696次閱讀

    大語(yǔ)言模型優(yōu)化生成管理方法

    大語(yǔ)言模型的優(yōu)化生成管理是一個(gè)系統(tǒng)工程,涉及模型架構(gòu)、數(shù)據(jù)處理、內(nèi)容控制、實(shí)時(shí)響應(yīng)以及倫理監(jiān)管等多個(gè)層面。以下,是對(duì)大語(yǔ)言模型優(yōu)化生成管理方法的梳理,由AI部落小編整理。
    的頭像 發(fā)表于 12-02 10:45 ?586次閱讀

    PWM信號(hào)生成方法 PWM調(diào)制原理講解

    PWM(脈沖寬度調(diào)制,Pulse Width Modulation)是一種重要的模擬信號(hào)電平數(shù)字編碼方法,在電子技術(shù)和控制領(lǐng)域具有廣泛應(yīng)用。以下是對(duì)PWM信號(hào)生成方法和PWM調(diào)制原理的介紹: PWM
    的頭像 發(fā)表于 11-28 16:34 ?5800次閱讀

    如何自動(dòng)生成verilog代碼

    介紹幾種自動(dòng)生成verilog代碼的方法。
    的頭像 發(fā)表于 11-05 11:45 ?1375次閱讀
    如何自動(dòng)<b class='flag-5'>生成</b>verilog代碼

    生成式AI工具作用

    生成式AI工具是指那些能夠自動(dòng)生成文本、圖像、音頻、視頻等多種類(lèi)型數(shù)據(jù)的人工智能技術(shù)。在此,petacloud.ai小編為您整理生成式AI工具作用
    的頭像 發(fā)表于 10-28 11:19 ?1076次閱讀

    如何使用 Llama 3 進(jìn)行文本生成

    torch 使用Hugging Face的pipeline進(jìn)行文本生成。 python復(fù)制代碼 from tr
    的頭像 發(fā)表于 10-27 14:21 ?1465次閱讀