nn.ReLU(inplace=True)中inplace的作用
- 2020 年 4 月 1 日
- 筆記
在文檔中解釋是:
- 參數: inplace-選擇是否進行覆蓋運算
意思是是否將得到的值計算得到的值覆蓋之前的值,比如:
x = x +1
即對原值進行操作,然後將得到的值又直接複製到該值中
而不是覆蓋運算的例子如:
y = x + 1
x = y
這樣就需要花費記憶體去多存儲一個變數y,所以
nn.Conv2d(3, 64, kernel_size=11, stride=4, padding=2), nn.ReLU(inplace=True)
的意思就是對從上層網路Conv2d中傳遞下來的tensor直接進行修改,這樣能夠節省運算記憶體,不用多存儲其他變數。
