亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用列表作為pytorch的索引

如何使用列表作為pytorch的索引

Go
江戶川亂折騰 2022-12-26 10:01:42
例如,一個二維張量:>>> t = torch.tensor([[1, 2, 3], [4, 5, 6], [7, 8, 9]])還有一個清單l = [0, 1]如果我執行t[l],那么它最終會打印第 0 行和第 1 行t。但是如果我想l用作索引怎么辦?我希望用于l查找第 0 行和第 1 列的元素。換句話說,我希望得到與t[0, 1]or相同的結果t[0][1]。我也想在二維以上使用它。使用lwith lengthn作為索引來跟蹤n維度張量中的元素。
查看完整描述

2 回答

?
弒天下

TA貢獻1818條經驗 獲得超8個贊

IIUC 您可以針對給定場景執行此操作 -t[tuple(l)]


t

tensor([[1, 2, 3],

        [4, 5, 6],

        [7, 8, 9]])

l

[0, 1]


t[tuple(l)]        # equivalent to t[(0,1)] or t[0,1]

tensor(2)


查看完整回答
反對 回復 2022-12-26
?
慕容3067478

TA貢獻1773條經驗 獲得超3個贊

我只是寫了一個遞歸函數來解決這個問題,也許有人有更優雅的解決方案?


def list_as_index(t, l):

    if not l:

        return t

    else:

        return list_as_index(t[l[0]], l[1:])


查看完整回答
反對 回復 2022-12-26
  • 2 回答
  • 0 關注
  • 124 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號