貌似在当前 tensorflow 版本中没有定义外积操作

dim = 6template1 = np.zeros([dim,dim*dim])
for i in range(dim):for j in range(dim):template1[i,dim*i+j] = 1
log_info(template1)
'''
dim = 4
[[1. 1. 1. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.][0. 0. 0. 0. 1. 1. 1. 1. 0. 0. 0. 0. 0. 0. 0. 0.][0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 1. 0. 0. 0. 0.][0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 1.]] '''
template2 = np.zeros([dim,dim*dim])
for i in range(dim):for j in range(dim):template2[i,dim*j+i] = 1
log_info(template2)
'''
dim = 4
[[1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0.][0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0.][0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0.][0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1.]]
'''def outer_product(a, b):tml1 = tf.convert_to_tensor(template1, dtype=float)tml2 = tf.convert_to_tensor(template2, dtype=float)return tf.matmul(a,tml1)*tf.matmul(b,tml2)

给定两个同维向量 a b

a = np.array([[i+1 for i in range(dim)]])
b = a.copy()
log_info(a)
log_info(b)
[[1 2 3 4 5 6]]
[[1 2 3 4 5 6]]

求它们的外积

a = tf.convert_to_tensor(a, dtype=float)
b = tf.convert_to_tensor(b, dtype=float)
c = outer_product(a, b)
c = tf.reshape(c,[-1,dim,dim])
print(c.shape)
with tf.Session() as sess:print(sess.run(c))
(1, 6, 6)
[[[ 1.  2.  3.  4.  5.  6.][ 2.  4.  6.  8. 10. 12.][ 3.  6.  9. 12. 15. 18.][ 4.  8. 12. 16. 20. 24.][ 5. 10. 15. 20. 25. 30.][ 6. 12. 18. 24. 30. 36.]]]

tensorflow 自定义向量外积相关推荐

  1. Ubuntu tensorflow自定义GPU版本op节点

    参考:https://blog.csdn.net/qq_27637315/article/details/79114633 windows增加op节点: https://github.com/tens ...

  2. 高中数学之向量外积的运用

    向量积,数学中又称外积.叉积,物理中称矢积.叉乘,是一种在向量空间中向量的二元运算.与点积不同,它的运算结果是一个向量而不是一个标量.并且两个向量的叉积与这两个向量和垂直.其应用十分广泛,通常应用于物 ...

  3. 【NLP实战】tensorflow词向量训练实战

    实战是学习一门技术最好的方式,也是深入了解一门技术唯一的方式.因此,NLP专栏计划推出一个实战专栏,让有兴趣的同学在看文章之余也可以自己动手试一试. 本篇介绍自然语言处理中最基础的词向量的训练. 作者 ...

  4. 向量外积_解析几何 -向量

    目录 1.向量 2.内积 3.外积 4.混合积 5.双重外积 6.关系式 正文 1.向量 vector 引入vector O 规定O没有确切的方向,即与任何向量不仅平行,而且垂直. 申明:本文章的向量 ...

  5. 【Tensorflow】Tensorflow 自定义梯度

    目录 前言 自定义梯度 说明 gradient_override_map的使用 多输入与多输出op 利用stop_gradient 参考 [fishing-pan:https://blog.csdn. ...

  6. AI实战 | Tensorflow自定义数据集和迁移学习(附代码下载)

    自定义数据集 做深度学习项目时,我们一般都不用网上公开的数据集,而是用自己制作的数据集.那么,怎么用Tensorflow2.0来制作自己的数据集并把数据喂给神经网络呢?且看这篇文章慢慢道来. Poke ...

  7. tensorflow自定义op:梯度

    暂时并未解决我的问题,但感觉将来会有用,特此转载 . 在使用 tensorflow 的时候,有时不可避免的会需要自定义 op,官方文档对于 定义 op 的前向过程介绍挺详细,但是对于 梯度 的介绍有点 ...

  8. tensorflow中向量与矩阵相乘

    我们只当使用tensorflow的tf.matmul()可以进行矩阵间的运算,但是要求矩阵的每一个维度的长度都要大于2,假如我们进行向量与矩阵的乘法时,使用该函数,则会报错. 具体地,我们使用一个2为 ...

  9. tensorflow自定义op和梯度

    参考资料 官网教程链接 http://www.tensorfly.cn/tfdoc/how_tos/adding_an_op.html#AUTOGENERATED-implement-the-grad ...

最新文章

  1. 芯片刀片服务器,使用“刀片服务器”其实不难
  2. javascript 中的eval方法 小窍门
  3. Serverless实战之路
  4. 向mysql中添加更新时间_mysql 实现添加时间自动添加更新时间自动更新操作
  5. it男java_java-学习8
  6. 4.dialog 工具
  7. 53. PHP 伪静态(2)
  8. Atlas 200DK 安装ROS教程
  9. js实现单元格合并和取消合并操作
  10. DDD基础_领域设计10大基础概念
  11. 『原创』老范的来电防火墙v1.0发布了(图文)
  12. postman 解决Could not send request
  13. 【论文笔记】视频分类系列 Temporal Relational Reasoning in Videos (TRN)
  14. 细述QQ与TIM的不同之处
  15. Core Data详解
  16. 史上最完整的5G NR介绍
  17. 手游方舟怎么输入代码_方舟自定义代码怎么输入 | 手游网游页游攻略大全
  18. Fitbit表高兴太早,廉价手环和智能手表的威胁就在眼前
  19. 光明旅者的冲刺挑战成就
  20. Symbian上的流媒体视频实验(1)

热门文章

  1. CCF中国开源大会开源雨林论坛丨七大亮点议题抢鲜看!
  2. pet store宠物商店数据库设计
  3. 可疑进程描述(二)----rundll32.exe进程详述
  4. 读书笔记-人月神话1
  5. 读书笔记-人月神话12
  6. Firefox浏览器的安装及插件使用
  7. LM小型可编程控制器软件(基于CoDeSys)笔记十七:pto脉冲功能块
  8. Flink跟着问题读源码 - SlidingEventTimeWindows接reduce结果数据倍增
  9. 百度智能云牵手中国跳水队,体育和AI正在酝酿新化学反应
  10. kakaotalk Id别人突然搜索不到,加入开放聊天室被封 KakaoTalk 被封 Kakaotalk临时禁用Kakao被团队临时禁用 kakaoTalk无法连接服务器