用于连接两个矩阵:

mn = array_ops.concat([a, d], 1) #  按照第二维度相接,shape1 [m,a] shape2 [m,b] ,concat_done shape : [m,a+b]

tensorflow Rnn,Lstm,Gru,源码中是用以上的函数来链接Xt 和 Ht-1 的,两者的shape 分别是【batch_size, emb_size】【batch_size,Hidden_size】

连接接后为的shape为:【batch_size,embedding_size + Hidden_size】,作为当前时刻的输入;

测试代码:

 import os
import tensorflow as tf
import numpy as np
import sys
from tensorflow.python.ops import array_ops
#array_ops.concat([inputs, state], 1) a = tf.constant([[1,12,8,6], [3,4,6,7]]) # shape [2,4]
b = tf.constant([[10, 20,6,88], [30,40,7,8]]) # shape [2,4]
c = tf.constant([[10, 20,6,88,99], [30,40,7,8,15]]) #shape [2,5]
d = tf.constant([[10,20,6,88], [30,40,7,8],[30,40,7,8]]) # shape [3,4]
nn = tf.concat([a, d],0) # 按照第一维度相接,shape1 [a,m] shape2 [b,m] concat_done:[a+b,m]
nn_1 = tf.concat([a, c],1) # 按照第二维度相接,shape1 [m,a] shape2 [m,b] concat_done:[m,a+b]
mn = array_ops.concat([a, d], 0) # 按照第一维度相接,shape1 [a,m] shape2 [b,m] concat_done:[a+b,m]
mn_1 = array_ops.concat([a, c], 1) # 按照第二维度相接,shape1 [m,a] shape2 [m,b] concat_done:[m,a+b] with tf.Session() as sess:
print (nn)
print (nn.eval())
print (nn_1)
print (nn_1.eval())
print (mn)
print (mn.eval()) # shape [5,4]
print (mn_1)
print (mn_1.eval()) # shape [2,9]

结果输出:

Tensor("concat:0", shape=(, ), dtype=int32)
[[ ]
[ ]
[ ]
[ ]
[ ]]
Tensor("concat_1:0", shape=(, ), dtype=int32)
[[ ]
[ ]]
Tensor("concat_2:0", shape=(, ), dtype=int32)
[[ ]
[ ]
[ ]
[ ]
[ ]]
Tensor("concat_3:0", shape=(, ), dtype=int32)
[[ ]
[ ]]

tensorflow 笔记7:tf.concat 和 ops中的array_ops.concat的更多相关文章

  1. tensorflow笔记:使用tf来实现word2vec

    (一) tensorflow笔记:流程,概念和简单代码注释 (二) tensorflow笔记:多层CNN代码分析 (三) tensorflow笔记:多层LSTM代码分析 (四) tensorflow笔 ...

  2. 关于tensorflow里面的tf.contrib.rnn.BasicLSTMCell 中num_units参数问题

    这里的num_units参数并不是指这一层油多少个相互独立的时序lstm,而是lstm单元内部的几个门的参数,这几个门其实内部是一个神经网络,答案来自知乎: class TRNNConfig(obje ...

  3. tensorflow笔记9:nn_ops.bias_add 函数

    完整代码引入:from tensorflow.python.ops import nn_ops tensorflow version:1.9 代码演示: import os import tensor ...

  4. tensorflow笔记3:CRF函数:tf.contrib.crf.crf_log_likelihood()

    在分析训练代码的时候,遇到了,tf.contrib.crf.crf_log_likelihood,这个函数,于是想简单理解下: 函数的目的:使用crf 来计算损失,里面用到的优化方法是:最大似然估计 ...

  5. (四) tensorflow笔记:常用函数说明

    tensorflow笔记系列: (一) tensorflow笔记:流程,概念和简单代码注释 (二) tensorflow笔记:多层CNN代码分析 (三) tensorflow笔记:多层LSTM代码分析 ...

  6. tensorflow笔记:多层LSTM代码分析

    tensorflow笔记:多层LSTM代码分析 标签(空格分隔): tensorflow笔记 tensorflow笔记系列: (一) tensorflow笔记:流程,概念和简单代码注释 (二) ten ...

  7. tensorflow 生成随机数 tf.random_normal 和 tf.random_uniform 和 tf.truncated_normal 和 tf.random_shuffle

    ____tz_zs tf.random_normal 从正态分布中输出随机值. . <span style="font-size:16px;">random_norma ...

  8. tensorflow笔记(一)之基础知识

    tensorflow笔记(一)之基础知识 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7399701.html 前言 这篇no ...

  9. tensorflow笔记(二)之构造一个简单的神经网络

    tensorflow笔记(二)之构造一个简单的神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7425200.html ...

随机推荐

  1. VMware 获取该虚拟机的所有权失败

    1. 虚拟机打开失败 VMware Workstation报错(打开虚拟机时出错:获取该虚拟机的所有权失败.主机上的某个应用程序正在使用该虚拟机.配置文件:D:\Ubuntu 16.04\Ubuntu ...

  2. Pyinstaller打包附带DLL、图标和压缩EXE方法

    Pyinstaller打包附带DLL.图标和压缩EXE方法     转载: https://blog.csdn.net/xinyingzai/article/details/80282856   目的 ...

  3. Web前端性能优化进阶——完结篇

    前言 在之前的文章 如何优化网站性能,提高页面加载速度 中,我们简单介绍了网站性能优化的重要性以及几种网站性能优化的方法(没有看过的可以狂戳 链接 移步过去看一下),那么今天我们深入讨论如何进一步优化 ...

  4. 4572: [Scoi2016]围棋 轮廓线DP KMP

    国际惯例的题面:这种题目显然DP了,看到M这么小显然要状压.然后就是具体怎么DP的问题.首先我们可以暴力状压上一行状态,然后逐行转移.复杂度n*3^m+3^(m*2),显然过不去. 考虑状态的特殊性, ...

  5. BZOJ.3140.[HNOI2013]消毒(二分图匹配 匈牙利)

    题目链接 不难想到每次一定是切一片. 如果是平面,很容易想到直接做二分图匹配.对于3维的? 可以发现min(a,b,c)的最大值只有\(\sqrt[3]{n}≈17\),我们暴力枚举这一最小值代表的是 ...

  6. Python3学习策略

    自学Python要点 [来自:http://www.cnblogs.com/shsxt/p/9138950.html] 1.找一本浅显易懂,例程比较好的教程,从头到尾看下去. 不要看很多本,专注于一本 ...

  7. ssm中从页面到controller和数据库出现乱码问题的解决

    1.确保项目编码为utf8,点击项目右键,点击properties 2.确保数据库编码为utf8,以MySQL为例,可到mysql目录下,my.ini文件中修改后,重启mysql服务 重启mysql服 ...

  8. java运行时could not open ........jvm.cfg问题的解决

    我相信这个问题肯定让不少人头疼.小编也纠结了将近3个小时的时间,终于弄明白这是怎么回事并且解决 java都知道时运行命令,不能打开...jvm.cfg很明显是jre虚拟机出现了问题(要么时jre的路径 ...

  9. 奇怪吸引子---LiuChen

    奇怪吸引子是混沌学的重要组成理论,用于演化过程的终极状态,具有如下特征:终极性.稳定性.吸引性.吸引子是一个数学概念,描写运动的收敛类型.它是指这样的一个集合,当时间趋于无穷大时,在任何一个有界集上出 ...

  10. iframe实现Ajax文件上传效果示例

    <!doctype html> <html> <head> <meta charset=utf-8> <head> <title> ...