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

TensorFlow2中提供的幾種處理特征列的方法小結(jié)

 更新時(shí)間:2023年09月14日 09:34:11   作者:鐮刀韭菜  
本文主要介紹了TensorFlow2中提供的幾種處理特征列的方法小結(jié),主要介紹了6種方式,具有一定的參考價(jià)值,感興趣的可以了解一下

TensorFlow 2 提供了多種處理特征列的方法,用于對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,然后把轉(zhuǎn)換后的數(shù)據(jù)傳入TensorFlow的layers.DenseFeatures層,并將該層作為神經(jīng)網(wǎng)絡(luò)的輸入層。

1. 處理數(shù)值列

一個(gè)特征列的輸出將成為模型的輸入。 數(shù)值列(numeric column) 是最簡(jiǎn)單的列類型。它用于表示實(shí)數(shù)特征。使用此列時(shí),模型將從 dataframe 中接收未更改的列值。
用法示例:

photo_count = feature_column.numeric_column('PhotoAmt')
demo(photo_count)

2. 對(duì)數(shù)值列進(jìn)行分桶(或分段)

通常,如果不希望將數(shù)字直接輸入模型,而是根據(jù)數(shù)值范圍將其值分成不同的類別。例如,考慮代表一個(gè)人年齡的原始數(shù)據(jù)。我們可以用 分桶列(bucketized column)將年齡分成幾個(gè)分桶(buckets),而不是將年齡表示成數(shù)值列。請(qǐng)注意下面的 one-hot 數(shù)值表示每行匹配的年齡范圍。
用法示例:

age = feature_column.numeric_column('Age')
age_buckets = feature_column.bucketized_column(age, boundaries=[1, 3, 5])
demo(age_buckets)

3. 處理分類列

在數(shù)據(jù)集中,如果分類列用字符串表示(例如 ‘fixed’,‘normal’,或 ‘reversible’)。我們無(wú)法直接將字符串提供給模型。相反,我們必須首先將它們映射到數(shù)值。分類詞匯列(categorical vocabulary columns)提供了一種用 one-hot 向量表示字符串的方法。詞匯表可以用 categorical_column_with_vocabulary_list 作為 list 傳遞,或者用 categorical_column_with_vocabulary_file 從文件中加載。

用法示例:

# 把分類字段轉(zhuǎn)換為分類列(categorical_column)
animal_type = feature_column.categorical_column_with_vocabulary_list('Type', ['Cat', 'Dog'])
# 把分類列(categorical_column)轉(zhuǎn)換為獨(dú)熱編碼
animal_type_one_hot = feature_column.indicator_column(animal_type)
demo(animal_type_one_hot)

4. 使用Embedding處理分類列

假設(shè)我們不是只有幾個(gè)可能的字符串,而是每個(gè)類別有數(shù)千(或更多)值。 由于多種原因,隨著類別數(shù)量的增加,使用 one-hot 編碼訓(xùn)練神經(jīng)網(wǎng)絡(luò)變得不可行。我們可以使用嵌入列來(lái)克服此限制。嵌入列(embedding column)將數(shù)據(jù)表示為一個(gè)低維度密集向量,而非多維的 one-hot 向量,該低維度密集向量可以包含任何數(shù),而不僅僅是 0 或 1。嵌入的大?。ㄔ谙旅娴氖纠袨?8)是必須調(diào)整的參數(shù)。

關(guān)鍵點(diǎn):當(dāng)分類列具有許多可能的值時(shí),最好使用嵌入列。

用法示例:

# Notice the input to the embedding column is the categorical column we previously created
breed1 = feature_column.categorical_column_with_vocabulary_list('Breed1', dataframe.Breed1.unique())
breed1_embedding = feature_column.embedding_column(breed1, dimension=8)
demo(breed1_embedding)

5. 經(jīng)過(guò)哈希處理的特征列

表示具有大量數(shù)值的分類列的另一種方法是使用 categorical_column_with_hash_bucket。該特征列計(jì)算輸入的一個(gè)哈希值,然后選擇一個(gè) hash_bucket_size 分桶來(lái)編碼字符串。使用此列時(shí),您不需要提供詞匯表,并且可以選擇使 hash_buckets 的數(shù)量遠(yuǎn)遠(yuǎn)小于實(shí)際類別的數(shù)量以節(jié)省空間。

關(guān)鍵點(diǎn):該技術(shù)的一個(gè)重要缺點(diǎn)是可能存在沖突,不同的字符串被映射到同一個(gè)范圍。實(shí)際上,無(wú)論如何,經(jīng)過(guò)哈希處理的特征列對(duì)某些數(shù)據(jù)集都有效。
用法示例:

breed1_hashed = feature_column.categorical_column_with_hash_bucket('Breed1', hash_bucket_size=10)
demo(feature_column.indicator_column(breed1_hashed))

6. 使用組合的特征列

將多種特征組合到一個(gè)特征中,稱為特征組合(feature crosses),它讓模型能夠?yàn)槊糠N特征組合學(xué)習(xí)單獨(dú)的權(quán)重。這里,我們將創(chuàng)建一個(gè) age 和 thal 組合的新特征。請(qǐng)注意,crossed_column 不會(huì)構(gòu)建所有可能組合的完整列表(可能非常大)。相反,它由 hashed_column 支持,因此可以選擇表的大小。
用法示例

crossed_feature = feature_column.crossed_column([age_buckets, animal_type], hash_bucket_size=10)
demo(feature_column.indicator_column(crossed_feature))

經(jīng)過(guò)前面這些方法預(yù)處理之后,可以把它們拼接起來(lái)一起作為神經(jīng)網(wǎng)絡(luò)的輸入層。

到此這篇關(guān)于TensorFlow2中提供的幾種處理特征列的方法小結(jié)的文章就介紹到這了,更多相關(guān)TensorFlow2 處理特征列內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中位運(yùn)算的詳細(xì)用法教程

    Python中位運(yùn)算的詳細(xì)用法教程

    在Python中,位運(yùn)算是一種對(duì)二進(jìn)制數(shù)進(jìn)行操作的運(yùn)算方式,它們直接對(duì)二進(jìn)制位進(jìn)行操作,而不考慮這些位所表示的實(shí)際值,本文將詳細(xì)介紹Python中的位運(yùn)算符,需要的朋友可以參考下
    2024-08-08
  • Python編程快速上手——Excel到CSV的轉(zhuǎn)換程序案例分析

    Python編程快速上手——Excel到CSV的轉(zhuǎn)換程序案例分析

    這篇文章主要介紹了Python Excel到CSV的轉(zhuǎn)換程序,結(jié)合具體案例形式分析了Python操作Excel到CSV轉(zhuǎn)換的操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2020-02-02
  • python?ast模塊詳析與用法

    python?ast模塊詳析與用法

    這篇文章主要給大家介紹了關(guān)于python?ast模塊詳析與用法的相關(guān)資料, Python的ast(Abstract Syntax Trees,抽象語(yǔ)法樹(shù))模塊是一個(gè)內(nèi)置模塊,用于解析Python代碼并生成語(yǔ)法樹(shù),需要的朋友可以參考下
    2023-07-07
  • 在django view中給form傳入?yún)?shù)的例子

    在django view中給form傳入?yún)?shù)的例子

    今天小編就為大家分享一篇在django view中給form傳入?yún)?shù)的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • pycharm通過(guò)anaconda安裝pyqt5的教程

    pycharm通過(guò)anaconda安裝pyqt5的教程

    PyCharm是一種Python IDE,帶有一整套可以幫助用戶在使用Python語(yǔ)言開(kāi)發(fā)時(shí)提高其效率的工具,這篇文章主要介紹了pycharm通過(guò)anaconda來(lái)安裝pyqt5的教程,需要的朋友可以參考下
    2020-03-03
  • Python如何將大TXT文件分割成4KB小文件

    Python如何將大TXT文件分割成4KB小文件

    處理大文本文件是程序員經(jīng)常遇到的挑戰(zhàn),特別是當(dāng)我們需要把一個(gè)幾百M(fèi)B甚至幾個(gè)GB的TXT文件分割成小塊時(shí),下面我們來(lái)聊聊如何用Python自動(dòng)完成這個(gè)任務(wù)吧
    2025-04-04
  • Python中eval()函數(shù)的詳細(xì)使用教程

    Python中eval()函數(shù)的詳細(xì)使用教程

    eval函數(shù)在Python中具有非常重要的地位,熟練的使用eval函數(shù)能夠?yàn)槲覀兊腜ython編程提供很多的便利之處,下面這篇文章主要給大家介紹了關(guān)于Python中eval()函數(shù)的詳細(xì)使用,需要的朋友可以參考下
    2022-07-07
  • python實(shí)現(xiàn)Excel多行多列的轉(zhuǎn)換的示例

    python實(shí)現(xiàn)Excel多行多列的轉(zhuǎn)換的示例

    本文主要介紹了python實(shí)現(xiàn)Excel多行多列的轉(zhuǎn)換的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • pytorch VGG11識(shí)別cifar10數(shù)據(jù)集(訓(xùn)練+預(yù)測(cè)單張輸入圖片操作)

    pytorch VGG11識(shí)別cifar10數(shù)據(jù)集(訓(xùn)練+預(yù)測(cè)單張輸入圖片操作)

    這篇文章主要介紹了pytorch VGG11識(shí)別cifar10數(shù)據(jù)集(訓(xùn)練+預(yù)測(cè)單張輸入圖片操作),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • Python實(shí)現(xiàn)銀行賬戶資金交易管理系統(tǒng)

    Python實(shí)現(xiàn)銀行賬戶資金交易管理系統(tǒng)

    這篇文章主要介紹了Python銀行賬戶資金交易管理系統(tǒng),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01

最新評(píng)論