最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中的shape()詳解

 更新時間:2023年08月24日 08:48:53   作者:KentoYoung  
這篇文章主要介紹了Python中的shape()詳解,在debug深度學習相關代碼的時候,很容易出現(xiàn)shape()這樣形式的東西,用來告知輸出數(shù)據(jù)的形式,需要的朋友可以參考下

shape()含義

在筆者debug深度學習相關代碼的時候,很容易出現(xiàn)shape()這樣形式的東西,用來告知輸出數(shù)據(jù)的形式

由于shape()里出現(xiàn)的數(shù)字數(shù)量不同,還經(jīng)常有shape(?,64,512)這樣的數(shù)據(jù)存在

因此上網(wǎng)查了一些信息,作出比較通俗易懂的解釋:

import numpy as np
a = np.array([[[1,2,3],[4,5,6]]])
print(a.shape)
(1, 2, 3)

表示該數(shù)組有1個,是2行3列的數(shù)組。每一個shape里的數(shù)字對應數(shù)組中的一對中括號,第一個數(shù)字1表示最外層的中括號。以此類推,數(shù)字2表示第二層中括號,數(shù)字3表示最里層的中括號。如果定義array時去掉了最外層的括號那么輸出的shape為(2, 3)。

區(qū)分一維數(shù)組和二維數(shù)組

有幾個中括號就為幾維數(shù)組

因此在上文中,有三對中括號,是3維數(shù)組,shape()中有3個數(shù)。

a = np.array([1,2])     #a.shape值(2,),意思是一維數(shù)組,數(shù)組中有2個元素。
b = np.array([[1],[2]]) #b.shape值是(2,1),意思是一個二維數(shù)組,每行有1個元素。
c = np.array([[1,2]])   #c.shape值是(1,2),意思是一個二維數(shù)組,每行有2個元素。

shape()中“?”的含義

而在debug相關程序時,可能會出現(xiàn)shape(?,2,3)這便代表數(shù)組每一個都是2行3列的,前面這個“?”便代表批處理個數(shù)

若為1則有1個,為2則有兩個,但是在debug的時候不知道有幾個,所以以“?”的形式顯示。

shape()中有四個數(shù),第一個數(shù)表示時間序列(批處理數(shù))

from keras.models import Input,Model
from keras.layers import Dense,Conv2D,TimeDistributed
input_ = Input(shape=(12,32,32,3))
out = TimeDistributed(Conv2D(filters=32,kernel_size=(3,3),padding='same'))(input_)
model = Model(inputs=input_,outputs=out)
model.summary()

而這里,shape()中有四個數(shù)。第一個12代表就是時間序列,32,32,3指的是高,寬,通道數(shù)。

卷積操作使用TimeDistributed就相當與這12個時間序列共享一個卷積層參數(shù)信息

無論時間序列值為多少,參數(shù)總量還是一定的。此處一共有896個參數(shù),卷積核weights有3×3×3×32=864個,卷積核bias有32個。

附TimeDistributed解釋

關于TimeDistributed有一個比較通俗的示例解釋: 考慮一批32個樣本,其中每個樣本是一個由16個維度組成的10個向量的序列。該層的批輸入形狀然后(32, 10, 16)。

可以這么理解,輸入數(shù)據(jù)是一個特征方程,X1+X2+…+X10=Y,從矩陣的角度看,拿出未知數(shù),就是10個向量,每個向量有16個維度,這16個維度是評價Y的16個特征方向。

TimeDistributed層的作用就是把Dense層應用到這10個具體的向量上,對每一個向量進行了一個Dense操作,假設是下面這段代碼:

model = Sequential()model.add(TimeDistributed(Dense(8), input_shape=(10, 16)))

輸出還是10個向量,但是輸出的維度由16變成了8,也就是(32,10,8)。

在這里插入圖片描述

TimeDistributed層給予了模型一種一對多,多對多的能力,增加了模型的維度。

到此這篇關于Python中的shape()詳解的文章就介紹到這了,更多相關Python的shape()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python實現(xiàn)文本去重且不打亂原本順序

    python實現(xiàn)文本去重且不打亂原本順序

    這篇文章主要介紹了python實現(xiàn)文本去重且不打亂原本順序,需要的朋友可以參考下
    2016-01-01
  • python3監(jiān)控CentOS磁盤空間腳本

    python3監(jiān)控CentOS磁盤空間腳本

    這篇文章主要為大家詳細介紹了Python3監(jiān)控CentOS磁盤空間腳本,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • 有趣的python小程序分享

    有趣的python小程序分享

    這篇文章主要介紹了有趣的python小程序分享,具有一定參考價值,需要的朋友可以了解下。
    2017-12-12
  • python的json包位置及用法總結

    python的json包位置及用法總結

    在本篇內(nèi)容里小編給大家分享了關于python的json包用法詳解內(nèi)容,需要的朋友們跟著學習下吧。
    2020-06-06
  • Python中字典的相關操作介紹

    Python中字典的相關操作介紹

    大家好,本篇文章主要講的是Python中字典的相關操作介紹,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • python利用跳板機ssh遠程連接redis的方法

    python利用跳板機ssh遠程連接redis的方法

    今天小編就為大家分享一篇python利用跳板機ssh遠程連接redis的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python跨文件使用全局變量的實現(xiàn)

    python跨文件使用全局變量的實現(xiàn)

    本文主要介紹了python跨文件使用全局變量的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • 對Python進行數(shù)據(jù)分析_關于Package的安裝問題

    對Python進行數(shù)據(jù)分析_關于Package的安裝問題

    下面小編就為大家?guī)硪黄獙ython進行數(shù)據(jù)分析_關于Package的安裝問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Python讀寫JSON文件的操作詳解

    Python讀寫JSON文件的操作詳解

    JSON數(shù)據(jù)類型最常用的應用場景就是API或?qū)?shù)據(jù)保存到 .json穩(wěn)當數(shù)據(jù)中。使用Python處理這些數(shù)據(jù)會變得非常簡單,本文將詳細講解Python如何讀寫JSON文件的,需要的可以參考一下
    2022-04-04
  • python交互式圖形編程實例(一)

    python交互式圖形編程實例(一)

    這篇文章主要為大家詳細介紹了python交互式圖形編程實例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11

最新評論

榆树市| 鱼台县| 兰坪| 夏津县| 鹤山市| 封丘县| 德格县| 洪江市| 宁陵县| 绍兴县| 绵竹市| 方城县| 水富县| 交口县| 屏南县| 石阡县| 裕民县| 景东| 丰宁| 芦溪县| 清新县| 襄樊市| 邓州市| 岱山县| 介休市| 哈密市| 琼结县| 江陵县| 垦利县| 山东| 新竹市| 杭锦后旗| 禹州市| 吴桥县| 万山特区| 新化县| 新巴尔虎右旗| 广德县| 香港| 屏南县| 博湖县|