溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

tensorflow 利用expand_dims和squeeze擴(kuò)展和壓縮tensor維度方式

發(fā)布時(shí)間:2020-08-30 20:21:04 來源:腳本之家 閱讀:203 作者:LauJames 欄目:開發(fā)技術(shù)

在利用tensorflow進(jìn)行文本挖掘工作的時(shí)候,經(jīng)常涉及到維度擴(kuò)展和壓縮工作。比如對文本進(jìn)行embedding操作完成之后,若要進(jìn)行卷積操作,就需要對embedded的向量擴(kuò)展維度,將[batch_size, embedding_dims]擴(kuò)展成為[batch_size, embedding_dims, 1],利用tf.expand_dims(input, -1)就可實(shí)現(xiàn),反過來用squeeze(input, -1)或者tf.squeeze(input)也可以把最第三維去掉。

tf.expand_dims()

tf.squeeze()

tf.expand_dims()

tf.expand_dims(input, axis=None, name=None, dim=None)

在第axis位置增加一個(gè)維度.

給定張量輸入,此操作在輸入形狀的維度索引軸處插入1的尺寸。 尺寸索引軸從零開始; 如果您指定軸的負(fù)數(shù),則從最后向后計(jì)數(shù)。

如果要將批量維度添加到單個(gè)元素,則此操作非常有用。 例如,如果您有一個(gè)單一的形狀[height,width,channels],您可以使用expand_dims(image,0)使其成為1個(gè)圖像,這將使形狀[1,高度,寬度,通道]。

例子

# 't' is a tensor of shape [2]
shape(expand_dims(t, 0)) ==> [1, 2]
shape(expand_dims(t, 1)) ==> [2, 1]
shape(expand_dims(t, -1)) ==> [2, 1]
# 't2' is a tensor of shape [2, 3, 5]
shape(expand_dims(t2, 0)) ==> [1, 2, 3, 5]
shape(expand_dims(t2, 2)) ==> [2, 3, 1, 5]
shape(expand_dims(t2, 3)) ==> [2, 3, 5, 1]

tf.squeeze()

tf.squeeze(input, axis=None, name=None, squeeze_dims=None)

直接上例子

# 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
 shape(squeeze(t)) ==> [2, 3]
# 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
 shape(squeeze(t, [2, 4])) ==> [1, 2, 3, 1]

以上這篇tensorflow 利用expand_dims和squeeze擴(kuò)展和壓縮tensor維度方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI