【问题标题】:Changing the Contents of a Tensor in TensorFlow在 TensorFlow 中更改张量的内容
【发布时间】:2018-01-08 23:49:00
【问题描述】:

在我继续之前,请原谅我的无知。在此之前我有一些编程经验,但我之前的直觉现在让我失望了。

本质上,我需要将一个 0...K 范围内的数字的一维向量(大小 M x 1)扩展为一个二维矩阵(或张量,大小 M x K),其中每一行都是一个一维向量(大小为 1 x K),每个元素都是 0,但初始值的索引为 1。

是的,这是一个 ML 类的多类分类问题。

我的想法是创建一个正确形状的零矩阵,然后手动将我需要的元素的索引分配给 1,但似乎无法更改已创建变量的值。我得到了错误:

TypeError: 'Tensor' object does not support item assignment

有人可以帮忙吗?如果您觉得我创建这个最终张量的方式可以使用不同的方法,任何建议都将不胜感激。

【问题讨论】:

  • 作为旁注,请尝试在您的帖子中放置一个带有一些数据的可重现示例,解释您到底在做什么。不清楚你想在 Python 中做什么。你能发布 Python 可重现的代码吗?

标签: tensorflow machine-learning tensor multiclass-classification


【解决方案1】:

在 tensorflow 中,函数 tf.one_hot() 就是你所寻求的。 一种热编码是描述您希望实现的操作的术语。见https://www.tensorflow.org/api_docs/python/tf/one_hot

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-13
    • 1970-01-01
    • 2023-03-11
    相关资源
    最近更新 更多