首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在TensorFlowSharp中重塑张量

如何在TensorFlowSharp中重塑张量
EN

Stack Overflow用户
提问于 2017-08-18 09:25:44
回答 1查看 2.2K关注 0票数 2

TensorFlowSharpTensorFlow在c#平台上的包装器。 github

现在,我需要将形状为32,64,1的张量重塑为形状为1,2048的新张量,但当我引用正式API文档时,用法似乎如下:

代码语言:javascript
复制
TFOutput Reshape (TensorFlow.TFOutput tensor, TensorFlow.TFOutput shape);

问题是,我不知道如何用TFOutput的方式表达我所需要的形状,任何建议都会被感激:)!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-18 22:27:31

在标准TensorFlowSharp中,有关如何执行此操作的示例可以通过以下方法提供:

代码语言:javascript
复制
tf.Reshape(x, tf.Const(shape));

其中tf是当前TFSession中的默认TFGraph。

或者,如果您使用Keras,您可能可以使用

代码语言:javascript
复制
using (var K = new TensorFlowBackend())
{
    double[,] input_array = new double[,] { { 1, 2 }, { 3, 4 } };
    Tensor variable = K.variable(array: input_array);
    Tensor variable_new_shape = K.reshape(variable, new int[] { 1, 4 });
    double[,] output = (double[,])variable_new_shape.eval();

    Assert.AreEqual(new double[,] { { 1, 2, 3, 4 } }, output);
}

https://github.com/cesarsouza/keras-sharp/blob/efac7e34457ffb7cf6712793d5298b565549a1c2/Tests/TensorFlowBackendTest.cs#L45所示

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45753153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档