热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

tensorflow常用函数解析

一、tf.transpose函数的用法tf.transpose(input,[dimension_1,dimenaion_2,..,dimension_n]):这个函数主要适用于交换输入张量的不同

一、tf.transpose函数的用法

tf.transpose(input, [dimension_1, dimenaion_2,..,dimension_n]):这个函数主要适用于交换输入张量的不同维度用的,如果输入张量是二维,就相当是转置。dimension_n是整数,如果张量是三维,就是用0,1,2来表示。这个列表里的每个数对应相应的维度。如果是[2,1,0],就把输入张量的第三维度和第一维度交换。

import numpy as np
import tensorflow as tf

A
= np.array([[1,2,3],[4,5,6]])
x
= tf.transpose(A, [1,0])

B
= np.array([[[1,2,3],[4,5,6]]])
y
= tf.transpose(B, [2,1,0])

with tf.Session() as sess:
print("A:\n",A)
print("new_A:\n",sess.run(x))
print("B:\n",B)
print("new_B:\n",sess.run(y))

A:
[[1 2 3]
[4 5 6]]


new_A:
[[1 4]
[2 5]
[3 6]]


B:
[[[1 2 3]
  [4 5 6]]]


new_B:
[[[1]
  [4]]

[[2]
  [5]]

[[3]
  [6]]]

分析理解:对于第一个二维矩阵A来说就比较简单了,就是普通的转置。对于第二个三维变量B,在转置前可以理解为是1片2*3的矩阵,而转置操作要求第一维和第三维置换,那就是要变成3片2*1的矩阵,这样就好理解了,输出结果正是3片1*2的矩阵

 

 二、tf.argmax函数用法

该函数就是找出每行或者每列的最大值所在的索引值,第二个参数为表示按行查找还是按列查找,1-按行,0-按列。

import tensorflow as tf

C
=[[9,8,3],[1,7,2]]

with tf.Session() as sess:
print(sess.run(tf.argmax(C,1)))
 [0 1]   三、tf.equal函数  
vimport tensorflow as tf
import numpy as np

A
= [[1,3,4,5,6]]
B
= [[1,3,4,3,2]]

with tf.Session() as sess:
print(sess.run(tf.equal(A, B)))

输出:    [[ True  True  True False False]]

 

四、tf.reduce_mean函数

A = [[1,3,4,5,6]]
B
= [[1,3,4,3,2]]
correctPred
=tf.equal(A,B)
accuracy
= tf.reduce_mean(tf.cast(correctPred, tf.float32))

with tf.Session() as sess:
print(sess.run(accuracy))

输出:0.6  

解析:根据上述输出,3个为True,所以accuracy=3/5=0.6


推荐阅读
  • Keras 实战:自编码器入门指南
    本文介绍了使用 Keras 框架实现自编码器的基本方法。自编码器是一种用于无监督学习的神经网络模型,主要功能包括数据降维、特征提取等。通过实际案例,我们将展示如何使用全连接层和卷积层来构建自编码器,并讨论不同维度对重建效果的影响。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • 本文详细介绍了使用NumPy和TensorFlow实现的逻辑回归算法。通过具体代码示例,解释了数据加载、模型训练及分类预测的过程。 ... [详细]
  • 本文详细解析了Python中的os和sys模块,介绍了它们的功能、常用方法及其在实际编程中的应用。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 本教程详细介绍了如何使用 TensorFlow 2.0 构建和训练多层感知机(MLP)网络,涵盖回归和分类任务。通过具体示例和代码实现,帮助初学者快速掌握 TensorFlow 的核心概念和操作。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 前言--页数多了以后需要指定到某一页(只做了功能,样式没有细调)html ... [详细]
  • 本文深入探讨了 Java 中的 Serializable 接口,解释了其实现机制、用途及注意事项,帮助开发者更好地理解和使用序列化功能。 ... [详细]
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 尽管使用TensorFlow和PyTorch等成熟框架可以显著降低实现递归神经网络(RNN)的门槛,但对于初学者来说,理解其底层原理至关重要。本文将引导您使用NumPy从头构建一个用于自然语言处理(NLP)的RNN模型。 ... [详细]
  • 本文详细介绍了非极大值抑制(Non-Maximum Suppression, NMS)算法的原理及其在目标检测中的应用,并提供了C++语言的具体实现代码。NMS算法通过筛选出高得分的检测框并移除重叠度高的其他检测框,有效提高了检测结果的准确性和可靠性。 ... [详细]
author-avatar
mobiledu2502884897
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有