亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Pytorch中index_select() 函數的實現理解

 更新時間:2019年11月19日 09:51:20   作者:清晨的光明  
這篇文章主要介紹了Pytorch中index_select() 函數的實現理解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

函數形式:

index_select(
 dim,
 index
)

參數:

  • dim:表示從第幾維挑選數據,類型為int值;
  • index:表示從第一個參數維度中的哪個位置挑選數據,類型為torch.Tensor類的實例;

剛開始學習pytorch,遇到了index_select(),一開始不太明白幾個參數的意思,后來查了一下資料,算是明白了一點。

a = torch.linspace(1, 12, steps=12).view(3, 4)
print(a)
b = torch.index_select(a, 0, torch.tensor([0, 2]))
print(b)
print(a.index_select(0, torch.tensor([0, 2])))
c = torch.index_select(a, 1, torch.tensor([1, 3]))
print(c)

先定義了一個tensor,這里用到了linspace和view方法。

第一個參數是索引的對象,第二個參數0表示按行索引,1表示按列進行索引,第三個參數是一個tensor,就是索引的序號,比如b里面tensor[0, 2]表示第0行和第2行,c里面tensor[1, 3]表示第1列和第3列。

輸出結果如下:

tensor([[ 1.,  2.,  3.,  4.],
        [ 5.,  6.,  7.,  8.],
        [ 9., 10., 11., 12.]])
tensor([[ 1.,  2.,  3.,  4.],
        [ 9., 10., 11., 12.]])
tensor([[ 1.,  2.,  3.,  4.],
        [ 9., 10., 11., 12.]])
tensor([[ 2.,  4.],
        [ 6.,  8.],
        [10., 12.]])

功能:從張量的某個維度的指定位置選取數據。

代碼實例:

t = torch.arange(24).reshape(2, 3, 4) # 初始化一個tensor,從0到23,形狀為(2,3,4)
print("t--->", t)
 
index = torch.tensor([1, 2]) # 要選取數據的位置
print("index--->", index)
 
data1 = t.index_select(1, index) # 第一個參數:從第1維挑選, 第二個參數:從該維中挑選的位置
print("data1--->", data1)
 
data2 = t.index_select(2, index) # 第一個參數:從第2維挑選, 第二個參數:從該維中挑選的位置
print("data2--->", data2)

運行結果: 

t---> tensor([[[ 0,  1,  2,  3],
               [ 4,  5,  6,  7],
               [ 8,  9, 10, 11]],
 
              [[12, 13, 14, 15],
               [16, 17, 18, 19],
               [20, 21, 22, 23]]])
 
index---> tensor([1, 2])
 
data1---> tensor([[[ 4,  5,  6,  7],
                   [ 8,  9, 10, 11]],
 
                  [[16, 17, 18, 19],
                   [20, 21, 22, 23]]])
 
data2---> tensor([[[ 1,  2],
                   [ 5,  6],
                   [ 9, 10]],
 
                  [[13, 14],
                   [17, 18],
                   [21, 22]]])

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 詳解Python3中的 input() 函數

    詳解Python3中的 input() 函數

    這篇文章主要介紹了詳解Python3中的 input() 函數的相關知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2020-03-03
  • Python利用OpenCV和skimage實現圖像邊緣檢測

    Python利用OpenCV和skimage實現圖像邊緣檢測

    提取圖片的邊緣信息是底層數字圖像處理的基本任務之一。本文將通過OpenCV和skimage的?Canny?算法實現圖像邊緣檢測,感興趣的可以了解一下
    2022-12-12
  • python Pygal庫生成SVG(可縮放矢量圖形)圖表示例

    python Pygal庫生成SVG(可縮放矢量圖形)圖表示例

    這篇文章主要為大家介紹了python Pygal庫生成SVG(可縮放矢量圖形)圖表示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • Python圖像處理Pillow庫的基礎使用

    Python圖像處理Pillow庫的基礎使用

    Pillow庫是Python中最流行的圖像處理庫之一,它是PIL(Python Imaging Library)的一個分支,提供了豐富的圖像處理功能,使圖像處理變得簡單而高效,在這篇文章中,我們將探討Pillow庫的一些基本功能,感興趣的朋友可以參考下
    2023-09-09
  • python?random模塊常用函數基礎教程

    python?random模塊常用函數基礎教程

    這篇文章主要為大家介紹了python?random模塊常用函數基礎教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • Pandas merge合并兩個DataFram的實現

    Pandas merge合并兩個DataFram的實現

    本文主要介紹了Pandas merge合并兩個DataFram的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • 詳解Python如何實現壓縮與解壓縮數據

    詳解Python如何實現壓縮與解壓縮數據

    當數據量大的時候,自然而然想到的就是對數據進行壓縮,這篇文章主要為大家介紹了Python可以實現壓縮與解壓縮數據的相關模塊的使用,希望對大家有所幫助
    2024-02-02
  • Python編程使用matplotlib繪制動態(tài)圓錐曲線示例

    Python編程使用matplotlib繪制動態(tài)圓錐曲線示例

    這篇文章主要介紹了Python使用matplotlib繪制動態(tài)的圓錐曲線示例實現代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2021-10-10
  • python3環(huán)境搭建過程(利用Anaconda+pycharm)完整版

    python3環(huán)境搭建過程(利用Anaconda+pycharm)完整版

    這篇文章主要介紹了python3環(huán)境搭建過程(利用Anaconda+pycharm)完整版,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • Python字典簡介以及用法詳解

    Python字典簡介以及用法詳解

    字典(dictionary)是除列表意外python之中最靈活的內置數據結構類型。列表是有序的對象結合,字典是無序的對象集合。兩者之間的區(qū)別在于:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。
    2016-11-11

最新評論