GumbelSoftmax tensorflow实现

请参考https://www.tensorflow.org/agents/api_docs/python/tf_agents/distributions/gumbel_softmax/GumbelSoftmax

import tensorflow as tf
from tf_agents.distributions.gumbel_softmax import GumbelSoftmax

# Define temperature and logits
temperature = 0.5
logits = tf.random.uniform(shape=[10, 5])  # Example logits for 10 samples with 5 categories

# Create the GumbelSoftmax distribution
gumbel_softmax_dist = GumbelSoftmax(temperature=temperature, logits=logits)

# Sample from the Gumbel-Softmax distribution
samples = gumbel_softmax_dist.sample()

# Convert samples to integer values
integer_samples = gumbel_softmax_dist.convert_to_one_hot(samples)

print("Samples:", samples)
print("Integer Samples:", integer_samples)

"""
Samples: tf.Tensor(
[[6.5363312e-01 8.2497322e-04 3.3569774e-01 4.9601882e-03 4.8838789e-03]
 [5.0590299e-03 1.1793694e-03 1.8071879e-02 9.7343379e-01 2.2558710e-03]
 [1.1056625e-04 4.1584573e-03 1.0404936e-01 8.7220258e-01 1.9479040e-02]
 [1.2928062e-07 9.9979270e-01 6.1338902e-08 8.4696701e-08 2.0690208e-04]
 [1.6613401e-02 5.0410178e-02 6.2021279e-01 2.8811535e-01 2.4648197e-02]
 [2.6995519e-03 1.1014339e-01 8.8546395e-01 6.6737714e-04 1.0256902e-03]
 [1.0077911e-02 2.8669201e-02 9.5480800e-01 5.6040161e-03 8.4076996e-04]
 [4.4758711e-04 2.1137780e-04 1.1385863e-02 9.8789060e-01 6.4562017e-05]
 [1.1343285e-03 1.6879096e-03 6.4284271e-01 3.4200186e-01 1.2333175e-02]
 [2.6100965e-03 3.7695485e-04 9.3045622e-01 1.7567843e-03 6.4799920e-02]], shape=(10, 5), dtype=float32)
Integer Samples: tf.Tensor(
[[1 0 0 0 0]
 [0 0 0 1 0]
 [0 0 0 1 0]
 [0 1 0 0 0]
 [0 0 1 0 0]
 [0 0 1 0 0]
 [0 0 1 0 0]
 [0 0 0 1 0]
 [0 0 1 0 0]
 [0 0 1 0 0]], shape=(10, 5), dtype=int32)

"""
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值