[解決済み] PyTorchテンソルのリサイズ
2022-02-24 15:12:03
質問
現在、tensor.resize()関数を使ってテンソルを新しい形状にリサイズしています。
t = t.resize(1, 2, 3)
.
これでは非推奨の警告が出ます。
非インプレイスリサイズは非推奨です
それ故に、私は
tensor.resize_()
関数は、適切なインプレース置換であると思われます。しかし、これでは
grad を必要とする変数のリサイズができない
のエラーが発生しました。 に陥ることがあります。
from torch.autograd._functions import Resize
Resize.apply(t, (1, 2, 3))
これは非推奨の警告を避けるために、tensor.resize()が行うものです。
これは適切な解決策ではなく、むしろハックのように思える。
どうすれば正しく
tensor.resize_()
この場合
どのように解決するのですか?
代わりに
tensor.reshape(new_shape)
または
torch.reshape(tensor, new_shape)
というように
# a `Variable` tensor
In [15]: ten = torch.randn(6, requires_grad=True)
# this would throw RuntimeError error
In [16]: ten.resize_(2, 3)
---------------------------------------------------------------------------
RuntimeError Traceback (most recent call last)
<ipython-input-16-094491c46baa> in <module>()
----> 1 ten.resize_(2, 3)
RuntimeError: cannot resize variables that require grad
上記
RuntimeError
を使用することで解決または回避することができます。
tensor.reshape(new_shape)
In [17]: ten.reshape(2, 3)
Out[17]:
tensor([[-0.2185, -0.6335, -0.0041],
[-1.0147, -1.6359, 0.6965]])
# yet another way of changing tensor shape
In [18]: torch.reshape(ten, (2, 3))
Out[18]:
tensor([[-0.2185, -0.6335, -0.0041],
[-1.0147, -1.6359, 0.6965]])
関連
-
ピローによる動的キャプチャ認識のためのPythonサンプルコード
-
Python 人工知能 人間学習 描画 機械学習モデル作成
-
Python カメの描画コマンドとその例
-
[解決済み】numpy: true_divide で無効な値に遭遇
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み】PyTorchで学習したモデルを保存する最適な方法とは?
-
[解決済み] PyTorchの "view "メソッドはどのように動作するのですか?
-
[解決済み] Pytorch リシェイプテンソル次元
-
[解決済み】pytorchのモデルサマリー
-
[解決済み】TensorFlowでTensorオブジェクトの値を表示する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python 可視化 big_screen ライブラリ サンプル 詳細
-
Python入門 openを使ったファイルの読み書きの方法
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み】 AttributeError: モジュール 'matplotlib' には属性 'plot' がない。
-
[解決済み】TypeError: 系列を <class 'float'> に変換することができません。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】 AttributeError("'str' object has no attribute 'read'")
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み】ValueError: xとyは同じサイズでなければならない