日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

tf.nn.conv2d()方法

發布時間:2025/3/19 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 tf.nn.conv2d()方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

tf.nn.conv2d是用來實現卷積的方法

tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=None)

除去name參數用以指定該操作的name,與方法有關的一共五個參數:

  • 第一個參數input:指需要做卷積的輸入圖像,它要求是一個Tensor,具有[batch, in_height, in_width, in_channels]這樣的shape,具體含義是[訓練時一個batch的圖片數量, 圖片高度, 圖片寬度, 圖像通道數],注意這是一個4維的Tensor,要求類型為float32和float64其中之一

  • 第二個參數filter:相當于CNN中的卷積核,它要求是一個Tensor,具有[filter_height, filter_width, in_channels, out_channels]這樣的shape,具體含義是[卷積核的高度,卷積核的寬度,圖像通道數,卷積核個數],要求類型與參數input相同,有一個地方需要注意,第三維in_channels,要和參數input的第四維相等

  • 第三個參數strides:卷積時在圖像每一維的步長,這是一個一維的向量,長度4。strides[0]和strides[3]必須為1,strides[1],strides[2]決定卷積核在輸入圖像in_hight,in_width方向的滑動步長

  • 第四個參數padding:string類型的量,只能是”SAME”,”VALID”其中之一,這個值決定了不同的卷積方式(后面會介紹)

  • 第五個參數:use_cudnn_on_gpu:bool類型,是否使用cudnn加速,默認為true

input和filter參數里的值都很好理解,關鍵是滑動步長和padding不同的值會決定最后得到的輸出是多大尺寸。
?
?

strides和padding的詳解

直接給出總結:

??卷積核大小,滑動步長直接影響最后的卷積結果的大小。當padding為SAME模式時,先對原圖像進行填充,再做卷積,填充值須根據卷積核大小及滑動步長決定。

  • 當滑動步長大于1時:填充數 = K-L%S(K:卷積核邊長,L:輸入圖像邊長,S:滑動步長)
  • 當滑動步長等于1時:填充數 = 卷積核邊長減1
  • 另外當差偶數個元素時首尾各補一半,差奇數個時前邊補奇數個,后邊補偶數個。

當padding為VALID模式時,很簡單粗暴直接從原始圖像的首段開始卷積,到最后不能匹配卷積核的部分直接舍去,

參考

https://blog.csdn.net/qq_17272679/article/details/79591540

總結

以上是生活随笔為你收集整理的tf.nn.conv2d()方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。