softmax 就是把值做个映射,映射到0-1之间,并且映射之后,和为1.

举个例子:

tt = tf.constant([1.0,2.0])
y = tf.nn.softmax(tt)with tf.Session() as sess:print(sess.run(y))

输出

注意看1

argmax:返回最大数的索引

labels1=[[0, 0, 1], [0, 1, 0] , [1, 0, 0]]
labels2 = tf.argmax(labels1,0 )
with tf.Session() as sess:l2 = sess.run( labels2 )print ('argmax output(sparse labels)', l2 ) 

返回:

[0,0,1]的最大数的索引是2

[0,1,0]的最大数索引是1

[0,0,1]的最大数索引是0

cross_entropy = -tf.reduce_sum(y_*tf.log(y))

cross_entropy2=tf.reduce_sum(tf.nn.softmax_cross_entropy_with_logits(logits = logits,labels = y_))

这两个函数输出是一样的

实例如下:

logits=tf.constant([[1.0,2.0,3.0],[1.0,2.0,3.0],[1.0,2.0,3.0]])
#step1:do softmax
y=tf.nn.softmax(logits)
#true label
y_=tf.constant([[0.0,0.0,1.0],[0.0,0.0,1.0],[0.0,0.0,1.0]])
#step2:do cross_entropy
cross_entropy = -tf.reduce_sum(y_*tf.log(y))
#do cross_entropy just one step
cross_entropy2=tf.reduce_sum(tf.nn.softmax_cross_entropy_with_logits(logits = logits,labels = y_))#dont forget tf.reduce_sum()!!with tf.Session() as sess:softmax=sess.run(y)c_e = sess.run(cross_entropy)c_e2 = sess.run(cross_entropy2)print(logits)print("step1:softmax result=")print(softmax)print("step2:cross_entropy result=")print(c_e)print("Function(softmax_cross_entropy_with_logits) result=")print(c_e2)

输出如下:

tensorflow之softmax相关推荐

  1. TensorFlow实现Softmax

    TensorFlow实现Softmax Regression识别手写数字 本文是按照黄文坚.唐源所著的<TensorFlow实战>一书,进行编写.在TensorFlow实战之余,力求简洁地 ...

  2. TensorFlow MNIST (Softmax)

    代码 import tensorflow as tf import numpy as np from tensorflow.examples.tutorials.mnist import input_ ...

  3. TensorFlow实战之Softmax Regression识别手写数字

       本文根据最近学习TensorFlow书籍网络文章的情况,特将一些学习心得做了总结,详情如下.如有不当之处,请各位大拿多多指点,在此谢过. 一.相关概念 1.MNIST MNIST(Mixed N ...

  4. tensorflow问题

    20210121 ImportError: No module named 'tensorflow.python' https://stackoverflow.com/questions/414156 ...

  5. Tensorflow快速入门2--实现手写数字识别

    Tensorflow快速入门2–实现手写数字识别 环境:  虚拟机ubuntun16.0.4  Tensorflow 版本:0.12.0(仅使用cpu下) Tensorflow安装见:  http:/ ...

  6. tensorflow保存模型和加载模型的方法(Python和Android)

    tensorflow保存模型和加载模型的方法(Python和Android) 一.tensorflow保存模型的几种方法: (1) tf.train.saver()保存模型 使用 tf.train.s ...

  7. softmax实现多分类算法推导及代码实现

    关于多分类 我们常见的逻辑回归.SVM等常用于解决二分类问题,对于多分类问题,比如识别手写数字,它就需要10个分类,同样也可以用逻辑回归或SVM,只是需要多个二分类来组成多分类,但这里讨论另外一种方式 ...

  8. tensorflow实战学习笔记(1)

    tensorflow提供了三种不同的加速神经网路训练的并行计算模式 (一)数据并行: (二)模型并行: (三)流水线并行: 主流深度学习框架对比(2017): 第一章 Tensorflow实现Soft ...

  9. tensor如何实现转置_转置()TensorFlow中的函数

    转置是TensorFlow中提供的函数.此函数用于转置输入张量.语法:转置(input_tensor,perm,conjugate)参数:input_tensor:顾名思义,它是要转置的张量.类型:T ...

最新文章

  1. Magento开发的特点有哪些?
  2. 万引大佬自曝这样被MIT拒掉:“系里不喜欢你”,找校长对峙后悟了
  3. 0x6A.图论 - 网络流初步
  4. 专有云传统HSF升级Pandora Boot开发
  5. keepalived(3)——解决无法用vip来访问的问题
  6. Tarjan算法学习1-双连通
  7. 如何让xtrabackup恢复速度提升20倍?
  8. python聚类分析成绩反思_机器学习python实践——二分K-means聚类
  9. python3.8文档_python 3.8的新功能
  10. php 无法加载css文件,解决ThinkPHP样式无法加载问题(CSS,JS),
  11. flutter 生成文档_Flutter文件操作
  12. html通用的排班方法,呼叫中心排班的两种主要方法
  13. Java调用动态库 缺点,Java调用动态库所需要关心的有关问题
  14. 时统ptp_IEEE1588 PTP对时系统原理及特点
  15. 1987年国际C语言混乱代码大赛获奖的一行代码
  16. 机器学习第三课--LWR的疑惑与想法
  17. 橙狮Scratch编程
  18. Layabox联手金山云,推出8折优惠大礼包!
  19. hexo主题之hexo-theme-yilia-plus
  20. 微信小游戏-飞机游戏玩法改造系列(二:支持血条)

热门文章

  1. windows 下rsync
  2. Twitter开源软件项目列表
  3. Python环境下工具安装小结
  4. 的clear会清空内存吗_Python内存分配时有哪些不为你知的小秘密?
  5. 用java画一个网格_用SolidWorks画一个波浪起伏的烟灰缸,包覆是重点
  6. python打包成exe fail to ex_寻求帮助:pyinstaller打包.exe
  7. python pdb pip安装_Python调试器,一个优秀开发人员的必备技能包
  8. vue-cli3.x中使用axios发送请求,配合webpack中的devServer编写本地mock数据接口(get/post/put/delete)...
  9. Python使用property函数和使用@property装饰器定义属性访问方法的异同点分析
  10. python3.4 + Django1.7.7 表单的一些问题