テンソルとは何ですか?

—

by

in

テンソルとは?

テンソル(Tensor) とは、多次元配列(multi-dimensional array) のことです。数学的には「ベクトルや行列をさらに拡張したもの」と考えるとわかりやすいです。


次元ごとのイメージ

  • スカラー(0次元)
    単一の数値
    例: 3.14

  • ベクトル(1次元テンソル)
    数値の並び(1列)
    例: [1, 2, 3]

  • 行列(2次元テンソル)
    2次元の表形式データ
    例:

    [[1, 2, 3],
    [4, 5, 6]]
    
  • 3次元テンソル
    行列を何枚も重ねたもの(画像のRGBチャンネルなど)
    例:

    [[[1,2,3],
    [4,5,6]],
    [[7,8,9],
    [10,11,12]]]
    
  • n次元テンソル
    ディープラーニングでは4次元(バッチ × チャンネル × 高さ × 幅)や5次元などもしばしば登場します。


PyTorchでのテンソル例

import torch

# スカラー(0次元)
a = torch.tensor(5)

# ベクトル(1次元)
b = torch.tensor([1, 2, 3])

# 行列(2次元)
c = torch.tensor([[1, 2, 3], [4, 5, 6]])

# 3次元テンソル(例:画像データ)
d = torch.rand(3, 64, 64)  # チャンネル3, 高さ64, 幅64

ディープラーニングとテンソル

ディープラーニングでは、入力データやモデルの重み、計算結果などすべてをテンソルで扱います。
例えば、画像は [バッチサイズ, チャンネル, 高さ, 幅] という 4次元テンソル で表されます。


まとめ

  • テンソルは 多次元配列 のこと
  • ベクトルや行列の概念を一般化したもの
  • PyTorchではテンソルを中心にデータを扱う