先给出tf.one_hot的用例:(例子转自https://www.jianshu.com/p/c5b4ec39713b)

 import tensorflow as tf
var0 = tf.one_hot(indices=[1, 2, 3], depth=3, axis=0)
var1 = tf.one_hot(indices=[1, 2, 3], depth=4, axis=0)
var2 = tf.one_hot(indices=[1, 2, 3], depth=4, axis=1)
# axis=1 按行排
var3 = tf.one_hot(indices=[1, 2, 3], depth=4, axis=-1)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
a0 = sess.run(var0)
a1 = sess.run(var1)
a2 = sess.run(var2)
a3 = sess.run(var3)
print("var0(axis=0 depth=3)\n", a0)
print("var1(axis=0 depth=4P)\n", a1)
print("var2(axis=1)\n", a2)
print("var3(axis=-1)\n", a3)

运行结果如下:

 2018-08-01 18:06:39.012597: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
var0(axis=0 depth=3)
[[0. 0. 0.]
[1. 0. 0.]
[0. 1. 0.]]
var1(axis=0 depth=4P)
[[0. 0. 0.]
[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
var2(axis=1)
[[0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]]
var3(axis=-1)
[[0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]] 进程已结束,退出代码0

这里需要一个4*3的矩阵,记为var1,则需要var1[2,1]为0的one_hot矩阵。如下代码可实现。

 import tensorflow as tf
q1 = 2
q2 = 1
depth = 4
kuan = 3
var0 = tf.one_hot(indices=[q2], depth=kuan, on_value=q1, off_value=depth, axis=1)
var1 = tf.one_hot(indices=[depth, q1, depth], depth=depth, axis=0)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
a0 = sess.run(var0)
a1 = sess.run(var1)
print("var0(axis=0 depth=3)\n", a0)
print("var1(axis=0 depth=4P)\n", a1)

运行结果:

 2018-08-01 18:08:01.640973: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
var0(axis=0 depth=3)
[[4 2 4]]
var1(axis=0 depth=4P)
[[0. 0. 0.]
[0. 0. 0.]
[0. 1. 0.]
[0. 0. 0.]] 进程已结束,退出代码0

用tf.one_hot函数写任一坐标为1的二维张量的更多相关文章

  1. jQuery写省级联动列表,创造二维数组,以及如何存/调用二维数组中的数据

    jQuery写省级联动列表,创造二维数组来存放数据,然后通过each来遍历调用,通过creatTxtNode创建文本节点,通过createElement创建标签option,在通过append将文本写 ...

  2. php array_multisort函数实现按某一字段对二维数组进行排序

    在工作中碰到一个页面如表格似的展示多条数据,要求根据其中的修改时间对数据进行排序, 数据格式类似于 $a = array( 0=>array( editTime=>'' addTime=& ...

  3. java给图片写正反字体,并将二维码写到图片上,代码实现

    /** * @param filePath * 源图片路径 * @param markContent * 图片中添加内容 * @param outPath * 输出图片路径 字体颜色等在函数内部实现的 ...

  4. 2017.12.10 Java写一个杨辉三角(二维数组的应用)

    杨辉三角的定律 第n行m列元素通项公式为: C(n-1,m-1)=(n-1)!/[(m-1)!(n-m)!] 需要用到创建二维数组 package com.glut.demo; /** * 杨辉三角 ...

  5. Matlab绘制三维曲面(以二维高斯函数为例)

    原文地址为:Matlab绘制三维曲面(以二维高斯函数为例) 寒假学习了一下Python下的NumPy和pymatlab,感觉不是很容易上手.来学校之后,决定继续看完数字图像处理一书.还是想按照上学期的 ...

  6. pbfunc外部函数扩展应用-直接在Datawindow中生成QR二维码,非图片方式

    利用pbfunc外部函数在Datawindow中直接生成QR二维码,非图片方式.需要注意以下面几点: Datawindow的DataObject的单位必须为像素(Pixels). Datawindow ...

  7. C语言中将二维数组作为函数参数来传递

    c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下: 方法一, 形参给出第二维的长度. 例如: #include <stdio.h> void func(int n, char ...

  8. 题目要求:传入数组 内容为[['lisi','男','27'],['wangwu','男',18],['zhaoliu','男','30']],将此二维数组转化为一维数组,创建自定义函数完成

    //自定义函数 function getOne($arr){ $str = ''; //定义空的字符串,用来接收值 foreach ($arr as $key=>$value){ //循环遍历数 ...

  9. 关于tf.cond函数中“正确”与“错误”函数中的普通python语句始终执行的问题

    import tensorflow as tf import numpy as np x = tf.constant(2) y = tf.constant(3) global mask0 mask0 ...

随机推荐

  1. CF1292C Xenon's Attack on the Gangs 题解

    传送门 题目描述 输入格式 输出格式 题意翻译 给n个结点,n-1条无向边.即一棵树.我们需要给这n-1条边赋上0~ n-2不重复的值.mex(u,v)表示从结点u到结点v经过的边权值中没有出现的最小 ...

  2. Lambda 表达式遍历集合时用remove方法删除list集合中满足条件的元素问题

    一:循环遍历list集合的四种方式 简单for循环 iterator循环 增加for循环 Lanbda表达式 二:四种遍历方式的用法示例 //简单for循环 List<SalaryAdjustm ...

  3. git clone远程仓库的指定分支

    正常clone方式 git clone <远程仓库地址> 默认clone的是远程仓库的master分支 clone指定分支 git clone -b <分支名> <远程仓 ...

  4. jmeter察看结果树-响应数据乱码

    打开jmeter下的目录:\bin\jmeter.properties文件,搜索“encoding”关键字,找到如下配置: # The encoding to be used if none is p ...

  5. bugku extract 变量覆盖

  6. redis(十五):Redis 有序集合(sorted set)(python)

    #coding:utf8 import redis r =redis.Redis(host="23.226.74.190",port=63279,password="66 ...

  7. 设计模式:memento模式

    目的:在不破坏系统封装性的前提下,记录系统每一步的状态,可以做到状态回退和前进 方法: 定义一个数据类,保存所有相关数据 定义一个管理类,提供保存和恢复的接口 具体操作类调用管理类的保存和恢复接口 例 ...

  8. 手动造轮子——为Ocelot集成Nacos注册中心

    前言     近期在看博客的时候或者在群里看聊天的时候,发现很多都提到了Ocelot网关的问题.我之前也研究过一点,网关本身是一种通用的解决方案,主要的工作就是拦截请求统一处理,比如认证.授权.熔断. ...

  9. Python学习周期 学习Python要多久?

    学习python编程需要多长时间?首先我们需要明确一点,在互联网技术领域,技术始终在不断的迭代升级,只要进入IT行业就要时刻保持学习的状态,才能不被技术进步的车轮碾压.我们目前讨论的python学习周 ...

  10. Android Studio常见问题集锦

    Android studio无法在可视化页面预览XML布局文件 修改res/values/styles.xml文件中name=“AppTheme”的style,在Theme.AppCompat.Lig ...