Tensorflow進行多維矩陣的拆分與拼接實例
最近在使用tensorflow進行網(wǎng)絡(luò)訓(xùn)練的時候,需要提取出別人訓(xùn)練好的卷積核的部分層的數(shù)據(jù)。由于tensorflow中的tensor和python中的list不同,無法直接使用加法進行拼接,后來發(fā)現(xiàn)一個函數(shù)可以完成tensor的拼接。
函數(shù)形式如下:
tf.concat(concat_dim,values,name='concat')
其中,第一個參數(shù)表示需要拼接的多維tensor,并且可以將多個tensor同事拼接,第二個表示按照哪一個維度拼接(從數(shù)字0開始)。
例子:創(chuàng)建一個三維的tensor,然后分別取出最后一個維度(注意:tensor支持與python中l(wèi)ist相似的切片操作,可以使用這種方式進行拆分),然后在拼接在一起。
import tensorflow as tf
weights=tf.Variable(tf.truncated_normal([2,3,4],dtype=tf.float32,stddev=1e-1),name='weights')
weight1=weights[0:2,0:3,1:2]
weight2=weights[0:2,0:3,2:3]
weight3=weights[0:2,0:3,1:2]
weight4=tf.concat([weight1,weight2,weight3],2) #2表示最后一個維度
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
print(sess.run(weights))
print("****************")
print(sess.run(weight4))

以上這篇Tensorflow進行多維矩陣的拆分與拼接實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
pytorch實現(xiàn)特殊的Module--Sqeuential三種寫法
今天小編就為大家分享一篇pytorch實現(xiàn)特殊的Module--Sqeuential三種寫法。具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
python中split(),?os.path.split()和os.path.splitext()的用法
本文主要介紹了python中split(),?os.path.split()和os.path.splitext()的用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02

