0

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

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

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

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

TypeError: 'Tensor' object does not support item assignment

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

4

1 回答 1

0

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

于 2018-01-09T01:42:14.300 回答