當前位置:成語大全網 - 漢語詞典 - Tf.feature_column實用功能工程摘要

Tf.feature_column實用功能工程摘要

Tf.feature_column主要針對離散特征和連續特征。壹般來說,tf.feature_column可以實現四種場景。

Tf.feature_column有四個處理離散變量的接口,分別是直接整數onehot、指定同義詞庫onehot、哈希降維onehot、嵌入離散特征連續性,其中前三個會將字符串/整數特征處理成onehot 0/1向量,最後壹個embedding_column會對onehot的結果做低維稠密向量映射。這些接口如下所示。

如果這個離散特征列表本身是用連續整數表示的(從0開始),就可以直接映射成離散變量,可以預先指定最大值個數。如果超過默認值,則適用於原本用整數ID編碼的離散特征,編碼氛圍不是很強。如果傳入值列表包含多個元素,可以實現mutihot,但列表元素的數量應該相同。

如果離散特征列表是壹個字符串(或壹個整數)並且值的範圍不大,您可以使用此界面來定義離散特征的值。當新值出現時,您可以分配新的索引位置或將它們映射到現有位置。詞典映射也支持多重映射。

如果設置了num_oov_buckets=0,或者沒有設置默認值,新單詞將被直接忽略。

另壹種設置方式,也可以處理生詞問題,直接映射到另壹個單詞,比如other。

Test mutihot,同壹元素在壹行中出現多次,計數會超過1。

如果這個列是字符串離散變量(也可以是整數,支持整數和字符串),並且有很多值,比如ID,那麽可以使用這個接口。

如果輸入是壹個整數值,用dtype設置dtype=tf.int32,內部會把整數轉換成壹個字符串進行hash。

Integer、thesaurus和hash通過indicator_column直接離散化,而onehot矩陣可以通過embedding_column查找到壹個嵌入密集向量。默認情況下,嵌入可以繼續使用模型進行訓練。也就是說,可訓練=真。對於mutihot,嵌入支持向量組合均值、sqrtn和sum。

在1.hash之後嵌入

2.在單詞列表onehot後嵌入

3.onehot後直接嵌入整數。

多重嵌入

Tf.feature_column有兩個處理連續變量的接口,分別是連續值直接映射成連續變量,連續值在盒子中離散化。這些接口如下所示。

連續變量解包後可以繼續嵌入。

Tf。特征_列。crossed _ column可以交叉組合離散特征,增加模型特征的表示能力。

試圖跨越連續特征和離散特征,結果是壹個錯誤。

定義多個特征時,在特征字典中定義多個鍵,張量對象在壹個列表中傳遞,其中列表的特征順序不影響特征組合的結果,組合特征的順序由feature_a.name的字符串順序決定