zoukankan      html  css  js  c++  java
  • [开发技巧]·TensorFlow中numpy与tensor数据相互转化

     

    [开发技巧]·TensorFlow中numpy与tensor数据相互转化

    个人主页–> https://xiaosongshine.github.io/

    - 问题描述

    在我们使用TensorFlow进行深度学习训练时,很多时候都是与Numpy数据打招呼,例如我们csv或者照片数据等。
    但是我们都知道,TensorFlow训练时都是使用Tensor来存储变量的,并且网络输出的结果也是Tensor。

    一般情况下我们不会感受到Numpy与Tensor之间的区别,因为TensorFlow网络在输入Numpy数据时会自动转换为Tensor来处理。
    但是在输出网络时,输出的结果仍为Tensor,当我们要用这些结果去执行只能由Numpy数据来执行的操作时就会出现莫名其妙的错误。

    例如,当我想要用自编码器与解码器输出的结果使用matplotlib显示时就会报错

    TypeError: Image data cannot be converted to float
    

    解决方法

    有时候解决起来很简单,就是错误比较难找到,所以我推荐的方法为将数据进行显式的转化。

    • Numpy2Tensor

    虽然TensorFlow网络在输入Numpy数据时会自动转换为Tensor来处理,但是我们自己也可以去显式的转换:

    data_tensor= tf.convert_to_tensor(data_numpy)
    
    • Tensor2Numpy

    网络输出的结果仍为Tensor,当我们要用这些结果去执行只能由Numpy数据来执行的操作时就会出现莫名其妙的错误。解决方法:

    with tf.Session() as sess:
        data_numpy = data_tensor.eval()
    
     
  • 相关阅读:
    正则表达式的贪婪匹配(.*)和非贪婪匹配(.*?)
    jQuery + css 公告从左往右滚动
    C# process 使用方法
    存储过程与SQL的结合使用
    img标签的方方面面
    kibana 5.0.0-alpha5 安装
    es5.0 v5.0.0-alpha 编译安装
    奇怪的hosts文件
    阿里云 api 的文档拼写错误
    centos 7 systemd docker http proxy
  • 原文地址:https://www.cnblogs.com/xiaosongshine/p/10627926.html
Copyright © 2011-2022 走看看