国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

如何理解Axis?

huashiou / 774人閱讀

摘要:一句話總結(jié)可以方便我們將數(shù)據(jù)進(jìn)行不同維度的處理。一理解如果你像我一樣,發(fā)現(xiàn)中有這個參數(shù),但不知道是什么意思。一旦維數(shù)超過二維,就無法用簡單的行和列來表示了。

前言
只有光頭才能變強(qiáng)。

回顧前面:

從零開始學(xué)TensorFlow【01-搭建環(huán)境、HelloWorld篇】

什么是TensorFlow?

TensorFlow讀寫數(shù)據(jù)

不知道大家最開始接觸到axis的時候是怎么樣的,反正我是挺難理解的..我們可以發(fā)現(xiàn)TensorFlow的很多API都有axis這個參數(shù),如果我們對axis不了解,壓根不知道API是怎么搞的。

一句話總結(jié)axis:axis可以方便我們將數(shù)據(jù)進(jìn)行不同維度的處理
一、理解axis

如果你像我一樣,發(fā)現(xiàn)API中有axis這個參數(shù),但不知道是什么意思。可能就會搜搜a(bǔ)xis到底代表的什么意思。于是可能會類似搜到下面的信息:

使用0值表示沿著每一列或行標(biāo)簽索引值向下執(zhí)行方法(axis=0代表往跨行)

使用1值表示沿著每一行或者列標(biāo)簽?zāi)O驁?zhí)行對應(yīng)的方法(axis=1代表跨列)

但我們又知道,我們的數(shù)組不單單只有二維的,還有三維、四維等等。一旦維數(shù)超過二維,就無法用簡單的行和列來表示了

所以,可以用我下面的方式進(jìn)行理解:

axis=0將最開外頭的括號去除,看成一個整體,在這個整體上進(jìn)行運(yùn)算

axis=1將第二個括號去除,看成一個整體,在這個整體上進(jìn)行運(yùn)算

...依次類推

話不多說,下面以例子說明~

1.1二維數(shù)組之concat

首先,我們來看個concat的例子,concat第一個參數(shù)接收val,第二個參數(shù)接收的是axis

def learn_concat():

    # 二維數(shù)組
    t1 = tf.constant([[1, 2, 3], [4, 5, 6]])
    t2 = tf.constant([[7, 8, 9], [10, 11, 12]])
    
    with tf.Session() as sess:
        
        # 二維數(shù)組針對 axis 為0 和 1 的情況
        print(sess.run(tf.concat([t1, t2], 0)))
        print(sess.run(tf.concat([t1, t2], 1)))

ok,下面以圖示的方式來說明。現(xiàn)在我們有兩個數(shù)組,分別是t1和t2:

首先,我們先看axis=0的情況,也就是tf.concat([t1, t2], 0)。從上面的描述,我們知道,先把第一個括號去除,然后將其子內(nèi)容看成一個整體,在這個整體下進(jìn)行想對應(yīng)的運(yùn)算(這里我們就是concat)。

所以最終的結(jié)果是:

[
    [1 2 3],
    [4 5 6],
    [7 8 9],
    [10 11 12]
]

接著,我們再看axis=1的情況,也就是tf.concat([t1, t2], 1)。從上面的描述,我們知道,先把第二個括號去除,然后將其子內(nèi)容看成一個整體,在這個整體下進(jìn)行想對應(yīng)的運(yùn)算(這里我們就是concat)。

所以最終的結(jié)果是:

[
    [1, 2, 3, 7, 8, 9]
    [4, 5, 6, 10, 11, 12]
]
1.2三維數(shù)組之concat

接下來我們看一下三維的情況

def learn_concat():

    # 三維數(shù)組    
    t3 = tf.constant([[[1, 2], [2, 3]], [[4, 4], [5, 3]]])
    t4 = tf.constant([[[7, 4], [8, 4]], [[2, 10], [15, 11]]])

    with tf.Session() as sess:

        # 三維數(shù)組針對 axis 為0 和 1 和 -1 的情況
        print(sess.run(tf.concat([t3, t4], 0)))
        print(sess.run(tf.concat([t3, t4], 1)))
        print(sess.run(tf.concat([t3, t4], -1)))

ok,下面也以圖示的方式來說明。現(xiàn)在我們有兩個數(shù)組,分別是t3和t4:

首先,我們先看axis=0的情況,也就是tf.concat([t3, t4], 0)。從上面的描述,我們知道,先把第一個括號去除,然后將其子內(nèi)容看成一個整體,在這個整體下進(jìn)行想對應(yīng)的運(yùn)算(這里我們就是concat)。

所以最終的結(jié)果是:

[
    [
        [1 2]
        [2 3]
    ]
    [
        [4 4]
        [5 3]
    ]
    [
        [7 4]
        [8 4]
    ]
    [
        [2 10]
        [15 11]
    ]
]

接著,我們再看axis=1的情況,也就是tf.concat([t3, t4], 1)。從上面的描述,我們知道,先把第二個括號去除,然后將其子內(nèi)容看成一個整體,在這個整體下進(jìn)行想對應(yīng)的運(yùn)算(這里我們就是concat)。

所以最終的結(jié)果是:

[
    [
        [1 2]
        [2 3]
        [7 4]
        [8 4]
    ]
    [
        [4 4]
        [5 3]
        [2 10]
        [15 11]
    ]
]

最后,我們來看一下axis=-1這種情況,在文檔也有相關(guān)的介紹:

As in Python, the axis could also be negative numbers. Negative axis
are interpreted as counting from the end of the rank, i.e.,
axis + rank(values)-th dimension

所以,對于我們?nèi)S的數(shù)組而言,那axis=-1實(shí)際上就是axis=2,下面我們再來看一下這種情況:

最終的結(jié)果是:

[
 [
  [1 2 7 4]
  [2 3 8 4]
 ]
 [
  [4 4 2 10]
  [5 3 15 11]
 ]
]

除了concat以外,其實(shí)很多函數(shù)都用到了axis這個參數(shù),再舉個例子:

>>> item = np.array([[1,4,8],[2,3,5],[2,5,1],[1,10,7]])
>>> item
array([[1, 4, 8],
       [2, 3, 5],
       [2, 5, 1],
       [1, 10, 7]])

>>> item.sum(axis = 1)
array([13, 10,  8, 18])

>>> item.sum(axis = 0)
array([ 6, 22, 21])

參考資料:

有關(guān)axis/axes的理解

https://zhuanlan.zhihu.com/p/25761406

最后

下一篇是TensorBoard~

樂于輸出干貨的Java技術(shù)公眾號:Java3y。公眾號內(nèi)有200多篇原創(chuàng)技術(shù)文章、海量視頻資源、精美腦圖,不妨來關(guān)注一下!

覺得我的文章寫得不錯,不妨點(diǎn)一下

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/43460.html

相關(guān)文章

  • Python Pandas與Numpy中axis參數(shù)的二義性

    摘要:是程序員的好去處,本公眾號將以為主題,開始一個系列,爭取做到每周一篇,翻譯并幫助學(xué)習(xí)者一起理解一些有代表性的案例。所以問題當(dāng)中第一個列子代表沿著列水平方向計算均值,而第二個列子代表將對應(yīng)的列標(biāo)簽們沿著水平的方向依次刪掉。 Stackoverflow.com是程序員的好去處,本公眾號將以pandas為主題,開始一個系列,爭取做到每周一篇,翻譯并幫助pandas學(xué)習(xí)者一起理解一些有代表性的...

    glumes 評論0 收藏0
  • CSS Flexbox學(xué)習(xí)筆記

    摘要:本文記錄了我在學(xué)習(xí)前端上的筆記,方便以后的復(fù)習(xí)和鞏固。注意項目現(xiàn)在顯示的寬度是他們的默認(rèn)寬度。各行將會伸展以占用剩余的空間。在其它情況下,剩余空間被所有行平分,擴(kuò)大各行的側(cè)軸尺寸。這不會影響源代碼。不要忘記了,默認(rèn)情況下,項目的值為。 本文記錄了我在學(xué)習(xí)前端上的筆記,方便以后的復(fù)習(xí)和鞏固。 開始使用Flex 在父元素中的顯式的設(shè)置displa...

    zzir 評論0 收藏0
  • d3.js 使用坐標(biāo)軸

    摘要:本片記錄坐標(biāo)軸入門,使用版本如何實(shí)現(xiàn)坐標(biāo)軸生成的坐標(biāo)圖是通過的路徑元素元素組成的,如下圖表示的是底部坐標(biāo)軸不包括內(nèi)部刻度,如下這部分通過描繪,在中稱為容器則包括了和作為即線,即文字實(shí)現(xiàn)坐標(biāo)軸主要步驟步驟主要如下創(chuàng)建比例尺創(chuàng)建坐標(biāo)軸,是個函數(shù) 本片blog記錄d3坐標(biāo)軸入門,使用版本v5.9.2 SVG如何實(shí)現(xiàn)坐標(biāo)軸 d3生成的坐標(biāo)圖是通過svg的path(路徑)元素 + g + lin...

    Karuru 評論0 收藏0
  • New CSS Logical Properties! - The Next Step of CSS

    摘要:目前為止,支持類似這種多方向網(wǎng)站的最佳方式,依然是使用和變量。在英文網(wǎng)站,寬度屬性用表示,高度屬性用表示。在英文網(wǎng)站中更多常用于,它的值升級為代替。在英文網(wǎng)站中,物理屬性與邏輯屬性的表現(xiàn)是一致的。 原文鏈接:https://medium.com/@elad/new-... 原文作者:Elad Shechter 簡介 在過去,大多數(shù)程序猿在思考布局時總是習(xí)慣于從上下左右的角度出發(fā)。這是...

    zhoutao 評論0 收藏0
  • flex-box 速記表

    啟動 flex-box: 父元素設(shè)置 display: flex; 或 display:inline-flex; flex container: 父元素顯示設(shè)置 display: flex flex item:flex container 中的子元素 flex 容器屬性: flex-direction:控制 flex 元素沿著 main-axis 的排列方向 row:默認(rèn)值,flex 元素沿...

    haoguo 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<