欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Pytorch中的masked_fill基本知識操作

 更新時間:2024年10月28日 10:02:55   作者:碼農研究僧  
本文主要介紹了PyTorch中的masked_fill函數的基本知識和使用方法,masked_fill函數接受一個輸入張量和一個布爾掩碼作為主要參數,掩碼的形狀必須與輸入張量相同,掩碼操作根據掩碼中的布爾值在輸出張量中填充指定的值或保留輸入張量中的值

1. 基本知識

基本的原理知識如下:

輸入張量和掩碼
masked_fill 接受兩個主要參數:一個輸入張量和一個布爾掩碼
掩碼的形狀必須與輸入張量相同,True 表示需要填充的位置,False 表示保持原值

掩碼操作
在執(zhí)行 masked_fill 操作時,函數會檢查掩碼中每個元素的值
如果掩碼對應的位置為 True,則在輸出張量中填充指定的值;
如果為 False,則保留輸入張量中對應位置的值

輸出結果
最終生成的新張量包含了在掩碼位置上被替換的值,其余位置保持原樣

在代碼邏輯上

創(chuàng)建掩碼
mask 是一個布爾張量,標識了哪些位置需要填充:

[[False, True, False],
 [True, False, True],
 [False, False, True]]

執(zhí)行 masked_fill
當調用 tensor.masked_fill(mask, -1) 時,PyTorch 會遍歷掩碼中的每個元素:對于 mask 中的每個 True 值,tensor 在對應位置的值會被替換為 -1,對于 False 值,保持原值不變

masked_fill 操作是基于 C/C++ 的實現,因此在處理大規(guī)模數據時性能較高。常用于深度學習模型中的數據預處理,比如在填充序列、處理缺失值或標記特定條件的數據時

2. Demo

Demo 1: 基本用法

import torch
# 創(chuàng)建一個 3x3 的張量
tensor = torch.tensor([[1, 2, 3],
                       [4, 5, 6],
                       [7, 8, 9]])
# 創(chuàng)建一個掩碼,標記要填充的位置
mask = torch.tensor([[False, True, False],
                     [True, False, True],
                     [False, False, True]])
# 使用 masked_fill 填充掩碼位置為 -1
result = tensor.masked_fill(mask, -1)
print("原始張量:")
print(tensor)
print("\n填充后的張量:")
print(result)

截圖如下:

Demo 2: 與條件結合使用

import torch
# 創(chuàng)建一個隨機張量
tensor = torch.randn(3, 3)
# 創(chuàng)建掩碼:標記負值的位置
mask = tensor < 0
# 將負值位置填充為 0
result = tensor.masked_fill(mask, 0)
print("原始張量:")
print(tensor)
print("\n填充后的張量 (負值填充為 0):")
print(result)

截圖如下:

Demo 3: 結合計算

import torch
# 創(chuàng)建一個張量
tensor = torch.tensor([[10, 20, 30],
                       [40, 50, 60],
                       [70, 80, 90]])
# 創(chuàng)建掩碼:標記大于 50 的位置
mask = tensor > 50
# 用 999 填充大于 50 的位置
result = tensor.masked_fill(mask, 999)
print("原始張量:")
print(tensor)
print("\n填充后的張量 (大于 50 的位置填充為 999):")
print(result)

截圖如下:

到此這篇關于Pytorch中的masked_fill基本知識的文章就介紹到這了,更多相關Pytorch masked_fill內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python基礎之內置模塊詳解

    Python基礎之內置模塊詳解

    Python內置的模塊有很多,我們也已經接觸了不少相關模塊,接下來咱們就來做一些項目開發(fā)中常用的模塊匯總和介紹,需要的朋友可以參考下
    2021-06-06
  • python3 adb 獲取設備序列號的實現

    python3 adb 獲取設備序列號的實現

    這篇文章主要介紹了python3 adb 獲取設備序列號的實現操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • python獲取指定路徑下所有指定后綴文件的方法

    python獲取指定路徑下所有指定后綴文件的方法

    這篇文章主要介紹了python獲取指定路徑下所有指定后綴文件的方法,涉及Python針對文件與目錄操作的相關技巧,需要的朋友可以參考下
    2015-05-05
  • python3.5+tesseract+adb實現西瓜視頻或頭腦王者輔助答題

    python3.5+tesseract+adb實現西瓜視頻或頭腦王者輔助答題

    這篇文章主要介紹了python3.5+tesseract+adb實現西瓜視頻或頭腦王者輔助答題,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Python實現的調用C語言函數功能簡單實例

    Python實現的調用C語言函數功能簡單實例

    這篇文章主要介紹了Python實現的調用C語言函數功能,結合簡單實例形式分析了Python使用ctypes模塊調用C語言函數的具體步驟與相關操作技巧,需要的朋友可以參考下
    2019-03-03
  • 使用Python實現跳一跳自動跳躍功能

    使用Python實現跳一跳自動跳躍功能

    這篇文章主要介紹了使用Python實現跳一跳自動跳躍功能,本文圖文并茂通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • python簡單實例訓練(21~30)

    python簡單實例訓練(21~30)

    上篇文章給大家介紹了python簡單實例訓練的1-10,這里繼續(xù)為大家介紹python的一些用法,希望大家每個例子都打出來測試一下
    2017-11-11
  • PyTorch中的參數類torch.nn.Parameter()詳解

    PyTorch中的參數類torch.nn.Parameter()詳解

    這篇文章主要給大家介紹了關于PyTorch中torch.nn.Parameter()的相關資料,要內容包括基礎應用、實用技巧、原理機制等方面,文章通過實例介紹的非常詳細,需要的朋友可以參考下
    2022-02-02
  • Python定義一個函數的方法

    Python定義一個函數的方法

    這篇文章主要介紹了Python定義一個函數的方法及相關實例,需要的朋友們可以學習參考下。
    2020-06-06
  • 淺談django2.0 ForeignKey參數的變化

    淺談django2.0 ForeignKey參數的變化

    今天小編就為大家分享一篇淺談django2.0 ForeignKey參數的變化,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08

最新評論