itemメソッド【torch】
説明:1つの要素から構成されるテンソルから値を取り出すメソッド。
書式:
【テンソル】.item()
引数:無し
戻り値:抽出したスカラ値を int や float 型などのビルトイン型で返す
0次元の例
code:item1.py
import torch as pt
x = pt.tensor(7, dtype=pt.float)
y = x.item()
print('# Before -------------')
print(x)
print(type(x))
print(x.shape)
print('# After -------------')
print(y)
print(type(y))
# print(x.shape) # shape属性を持たない
code:(実行結果).txt
# Before -------------
tensor(7.)
<class 'torch.Tensor'>
torch.Size([])
# After -------------
7.0
<class 'float'>
テンソル型のオブジェクトが保持する値をfloat型として抽出しました。
1次元の場合
code:item2.py
import torch as pt
x = pt.tensor(7, dtype=pt.int) y = x.item()
print('# Before -------------')
print(x)
print(type(x))
print(x.shape)
print('# After -------------')
print(y)
print(type(y))
# print(y.shape) # yはスカラ型なのでshape属性を持たない
code:(実行結果).sh
# Before -------------
tensor(7, dtype=torch.int32) <class 'torch.Tensor'>
# After -------------
7
<class 'int'>
1次元テンソルxからint値を抽出しyに代入した。
2次元の場合
code:item3.py
import torch as pt
x = pt.tensor(7, dtype=pt.float)
y = x.item()
print('# Before -------------')
print(x)
print(type(x))
print(x.shape)
print('# After -------------')
print(y)
print(type(y))
code:(実行結果).sh
# Before -------------
tensor(7.)
<class 'torch.Tensor'>
torch.Size(1, 1) <---これが形状 # After -------------
7.0
<class 'float'>
形状が(1, 1)の2次元テンソルxからint 値を抽出し、変数yに代入した。