日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

tf.one_hot

發(fā)布時間:2025/3/15 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 tf.one_hot 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

tf.one_hot在看conditionGAN的時候注意到label的輸入要把它轉(zhuǎn)換成one-hot形式,再與噪聲z進行tf.concat輸入,之前看的時候忽略了,現(xiàn)在再看才算明白為什么。

tf.one_hot(
indices,#輸入,這里是一維的
depth,# one hot dimension.
on_value=None,#output 默認(rèn)1
off_value=None,#output 默認(rèn)0
axis=None,#根據(jù)我的實驗,默認(rèn)為1
dtype=None,
name=None
)

代碼

import tensorflow as tf import numpy as np z=np.random.randint(0,10,size=[10]) y=tf.one_hot(z,10,on_value=1,off_value=None,axis=0) with tf.Session()as sess:print(z)print(sess.run(y))

[5 7 7 0 5 5 2 0 0 0]
[[0 0 0 1 0 0 0 1 1 1]
[0 0 0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 1 0 0 0]
[0 0 0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0 0 0]
[1 0 0 0 1 1 0 0 0 0]
[0 0 0 0 0 0 0 0 0 0]
[0 1 1 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0 0 0]]

!/usr/bin/env python3-*- coding: utf-8 -*- import tensorflow as tf import numpy as np import os os.environ["CUDA_VISIBLE_DEVICES"] = "2" z=np.random.randint(0,10,size=[10]) y=tf.one_hot(z,10,on_value=1,off_value=None) y1=tf.one_hot(z,10,on_value=1,off_value=None,axis=1) with tf.Session()as sess:print(z)print(sess.run(y))print("axis=1按行排", sess.run(y1)) [6 3 4 9 6 5 5 1 2 1]

[[0 0 0 0 0 0 1 0 0 0]
[0 0 0 1 0 0 0 0 0 0]
[0 0 0 0 1 0 0 0 0 0]
[0 0 0 0 0 0 0 0 0 1]
[0 0 0 0 0 0 1 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[0 1 0 0 0 0 0 0 0 0]
[0 0 1 0 0 0 0 0 0 0]
[0 1 0 0 0 0 0 0 0 0]]
axis=1按行排 [[0 0 0 0 0 0 1 0 0 0]
[0 0 0 1 0 0 0 0 0 0]
[0 0 0 0 1 0 0 0 0 0]
[0 0 0 0 0 0 0 0 0 1]
[0 0 0 0 0 0 1 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[0 1 0 0 0 0 0 0 0 0]
[0 0 1 0 0 0 0 0 0 0]
[0 1 0 0 0 0 0 0 0 0]]

感覺實際用的時候可以不傳入axis值??梢钥吹浇?jīng)過one-hot的處理,輸入的維度變成了10×depth,值也變成了0和1.

下面說在condition GAN中要輸入標(biāo)簽信息y,怎樣處理的。
y是mnist的標(biāo)簽值,0和10之間的整數(shù),尺寸為[BATCH],經(jīng)過one-hot處理后維度變成了[BATCH,10]值也是0和1,此時再與噪聲z按列(axis=1)連接,變成條件GAN的輸入。因此one-hot操作是必須的,這個處理在infoGAN中將z,categorical latent code、continuous latent code連接在一起輸入也要用到。

y = tf.one_hot(y, 10, name=’label_onehot’)
z = tf.random_uniform([BATCH, 10], -1, 1, name=’z_train’)
tf.concat([z, y], 1)

總結(jié)

以上是生活随笔為你收集整理的tf.one_hot的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。