浅谈keras中的batch_dot,dot方法和TensorFlow的matmul


Posted in Python onJune 18, 2020

概述

在使用keras中的keras.backend.batch_dot和tf.matmul实现功能其实是一样的智能矩阵乘法,比如A,B,C,D,E,F,G,H,I,J,K,L都是二维矩阵,中间点表示矩阵乘法,AG 表示矩阵A 和G 矩阵乘法(A 的列维度等于G 行维度),WX=Z

import keras.backend as K
import tensorflow as tf
import numpy as np

w = K.variable(np.random.randint(10,size=(10,12,4,5)))
k = K.variable(np.random.randint(10,size=(10,12,5,8)))
z = K.batch_dot(w,k)
print(z.shape) #(10, 12, 4, 8)
import keras.backend as K
import tensorflow as tf
import numpy as np

w = tf.Variable(np.random.randint(10,size=(10,12,4,5)),dtype=tf.float32)
k = tf.Variable(np.random.randint(10,size=(10,12,5,8)),dtype=tf.float32)
z = tf.matmul(w,k)
print(z.shape) #(10, 12, 4, 8)

浅谈keras中的batch_dot,dot方法和TensorFlow的matmul

示例

from keras import backend as K
a = K.ones((3,4,5,2))
b = K.ones((2,5,3,7))
c = K.dot(a, b)
print(c.shape)

会输出:

ValueError: Dimensions must be equal, but are 2 and 3 for ‘MatMul' (op: ‘MatMul') with input shapes: [60,2], [3,70].

from keras import backend as K
a = K.ones((3,4))
b = K.ones((4,5))
c = K.dot(a, b)
print(c.shape)#(3,5)

或者

import tensorflow as tf
a = tf.ones((3,4))
b = tf.ones((4,5))
c = tf.matmul(a, b)
print(c.shape)#(3,5)

如果增加维度:

from keras import backend as K
a = K.ones((2,3,4))
b = K.ones((7,4,5))
c = K.dot(a, b)
print(c.shape)#(2, 3, 7, 5)

这个矩阵乘法会沿着两个矩阵最后两个维度进行乘法,不是element-wise矩阵乘法

from keras import backend as K
a = K.ones((1, 2, 3 , 4))
b = K.ones((8, 7, 4, 5))
c = K.dot(a, b)
print(c.shape)#(1, 2, 3, 8, 7, 5)

浅谈keras中的batch_dot,dot方法和TensorFlow的matmul

keras的dot方法是Theano中的复制

from keras import backend as K
a = K.ones((1, 2, 4))
b = K.ones((8, 7, 4, 5))
c = K.dot(a, b)
print(c.shape)# (1, 2, 8, 7, 5).
from keras import backend as K
a = K.ones((9, 8, 7, 4, 2))
b = K.ones((9, 8, 7, 2, 5))
c = K.batch_dot(a, b)
print(c.shape) #(9, 8, 7, 4, 5)

或者

import tensorflow as tf
a = tf.ones((9, 8, 7, 4, 2))
b = tf.ones((9, 8, 7, 2, 5))
c = tf.matmul(a, b)
print(c.shape) #(9, 8, 7, 4, 5)

以上这篇浅谈keras中的batch_dot,dot方法和TensorFlow的matmul就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现的数据结构与算法之队列详解
Apr 22 Python
用C++封装MySQL的API的教程
May 06 Python
python实现TF-IDF算法解析
Jan 02 Python
Python查找两个有序列表中位数的方法【基于归并算法】
Apr 20 Python
详解TensorFlow查看ckpt中变量的几种方法
Jun 19 Python
Linux下python3.6.1环境配置教程
Sep 26 Python
PyTorch学习:动态图和静态图的例子
Jan 06 Python
Pytorch 使用不同版本的cuda的方法步骤
Apr 02 Python
pycharm实现print输出保存到txt文件
Jun 01 Python
Python爬虫教程知识点总结
Oct 19 Python
详解python 条件语句和while循环的实例代码
Dec 28 Python
Python Socket编程详解
Apr 25 Python
PyCharm中配置PySide2的图文教程
Jun 18 #Python
python属于软件吗
Jun 18 #Python
python交互模式基础知识点学习
Jun 18 #Python
使用Keras实现Tensor的相乘和相加代码
Jun 18 #Python
python如何从键盘获取输入实例
Jun 18 #Python
Python计算信息熵实例
Jun 18 #Python
python导入库的具体方法
Jun 18 #Python
You might like
Terran兵种介绍
2020/03/14 星际争霸
PHP5.3与5.5废弃与过期函数整理汇总
2014/07/10 PHP
php上传大文件设置方法
2016/04/14 PHP
PHP+Apache+Mysql环境搭建教程
2016/08/01 PHP
JavaScript脚本性能的优化方法
2007/02/02 Javascript
学习ExtJS Panel常用方法
2009/10/07 Javascript
使用JavaScript switch case 另类写法
2010/03/14 Javascript
jQuery UI 应用不同Theme的办法
2010/09/12 Javascript
一个封装js代码-----展开收起效果示例
2013/07/03 Javascript
JS数组去重与取重的示例代码
2014/01/24 Javascript
jQuery中:first-child选择器用法实例
2014/12/31 Javascript
使用jQuery在对象中缓存选择器的简单方法
2015/06/30 Javascript
jQuery Validate初步体验(二)
2015/12/12 Javascript
JS禁用页面上所有控件的实现方法(附demo源码下载)
2015/12/17 Javascript
AngularJS控制器controller正确的通信的方法
2016/01/25 Javascript
javascript中setAttribute兼容性用法分析
2016/12/12 Javascript
js, jQuery实现全选、反选功能
2017/03/08 Javascript
AngularJS实现tab选项卡的方法详解
2017/07/05 Javascript
[原创]js实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
2018/02/14 Javascript
angular动态表单制作
2018/02/23 Javascript
安装Node.js并启动本地服务的操作教程
2018/05/12 Javascript
swiper在vue项目中loop循环轮播失效的解决方法
2018/09/15 Javascript
JS浅拷贝和深拷贝原理与实现方法分析
2019/02/28 Javascript
Python使用turtule画五角星的方法
2015/07/09 Python
Python打包可执行文件的方法详解
2016/09/19 Python
python训练数据时打乱训练数据与标签的两种方法小结
2018/11/08 Python
Python采集猫眼两万条数据 对《无名之辈》影评进行分析
2018/12/05 Python
更新升级python和pip版本后不生效的问题解决
2020/04/17 Python
HTML5使用ApplicationCache接口实现离线缓存技术解决离线难题
2012/12/13 HTML / CSS
西班牙鞋子和箱包在线销售网站:zapatos.es
2020/02/17 全球购物
销售人员中英文自荐信
2013/09/22 职场文书
教师专业自荐信
2014/05/31 职场文书
新农村建设典型材料
2014/05/31 职场文书
年度优秀员工获奖感言
2014/08/15 职场文书
七夕情人节问候语
2015/11/11 职场文书
小程序实现文字循环滚动动画
2021/06/14 Javascript