tensorflow之獲取tensor的shape作為max_pool的ksize實(shí)例
實(shí)驗(yàn)發(fā)現(xiàn),tensorflow的tensor張量的shape不支持直接作為tf.max_pool的參數(shù),比如下面這種情況(一個(gè)錯(cuò)誤的示范):
self.max_pooling1 = tf.nn.max_pool(self.l_6, ksize = [1, tf.shape(self.F1)[0], 1, 1], strides = [1, 1, 1, 1], padding = 'VALID', name = 'maxpool1')
我在max_pool的過(guò)程中想對(duì)特征每一列進(jìn)行max_pooling,但因?yàn)閠ensor F1張量沒有值,而ksize此處需要一個(gè)int類型的常量,所以tf.shape(self.F1)[0]無(wú)法作為ksize的參數(shù)。
一些人的做法是固定行數(shù),比如pointnet固定為2048個(gè)點(diǎn),但這樣做需要重新采樣,過(guò)于麻煩。
而既然tensorflow不提供標(biāo)準(zhǔn)的max_pool層實(shí)現(xiàn),其實(shí)可以自己實(shí)現(xiàn)每一列取最大值的操作,充當(dāng)自己的max_pool。如下圖所示:
def max_pooling(self, NC):
out = tf.reduce_max(NC, reduction_indices=[0])
return out
利用reduce_max剛好能實(shí)現(xiàn)這個(gè)操作,其中reduction_indices可以指定取哪一維的最大值。這個(gè)函數(shù)的詳細(xì)功能可以參考官方文檔。
這種情況和tf.reshape不同,tf.reshape是可以使用tf.shape(tensor)[i]的,可能兩者對(duì)參數(shù)的要求不一樣。
以上這篇tensorflow之獲取tensor的shape作為max_pool的ksize實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
淺談spring boot 集成 log4j 解決與logback沖突的問題
今天小編就為大家分享一篇淺談spring boot 集成 log4j 解決與logback沖突的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
基于python對(duì)B站收藏夾按照視頻發(fā)布時(shí)間進(jìn)行排序的問題
這篇文章主要介紹了基于python對(duì)B站收藏夾按照視頻發(fā)布時(shí)間進(jìn)行排序,在實(shí)現(xiàn)過(guò)程中中間程序可能因?yàn)楦鞣N原因掛掉,因此在中間加入了儲(chǔ)存中間狀態(tài)的功能,否則每次掛掉都要重新爬速度非常慢,本文給大家介紹具體使用方法,一起看看吧2021-05-05
解決pytorch?model代碼內(nèi)tensor?device不一致的問題
這篇文章主要介紹了pytorch?model代碼內(nèi)tensor?device不一致的問題,本文給大家分享完美解決方案,對(duì)pytorch?tensor?device不一致問題解決方案感興趣的朋友跟隨小編一起看看吧2023-07-07
Python實(shí)現(xiàn)對(duì)一個(gè)函數(shù)應(yīng)用多個(gè)裝飾器的方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)對(duì)一個(gè)函數(shù)應(yīng)用多個(gè)裝飾器的方法,結(jié)合實(shí)例形式分析了Python編程中一個(gè)函數(shù)使用多個(gè)裝飾器的簡(jiǎn)單操作技巧,需要的朋友可以參考下2018-02-02
python實(shí)現(xiàn)挑選出來(lái)100以內(nèi)的質(zhì)數(shù)
這篇文章主要介紹了python實(shí)現(xiàn)挑選出來(lái)100以內(nèi)的質(zhì)數(shù),由于是新手,思路有限,如有問題,還請(qǐng)大家指正,需要的朋友可以參考下2015-03-03
Python3多線程基礎(chǔ)知識(shí)點(diǎn)
在本篇內(nèi)容里小編給大家分享了關(guān)于Python3多線程基礎(chǔ)知識(shí)點(diǎn)內(nèi)容,需要的朋友們跟著學(xué)習(xí)參考下。2019-02-02
Python基于keras訓(xùn)練實(shí)現(xiàn)微笑識(shí)別的示例詳解
Keras是一個(gè)由Python編寫的開源人工神經(jīng)網(wǎng)絡(luò)庫(kù),可用于深度學(xué)習(xí)模型的設(shè)計(jì)、調(diào)試、評(píng)估、應(yīng)用和可視化。本文將基于keras訓(xùn)練實(shí)現(xiàn)微笑識(shí)別效果,需要的可以參考一下2022-01-01

