テンソルTensor
数字を複数の軸で整理してまとめたもの
- テンソルは数字を複数の軸で整理してまとめたものです。難しい数学の概念ではなく、整理の仕方です。
- 軸が一本なら列、二本なら格子、三本なら箱です。軸を一本増やすのは箱を箱ごと積み重ねることです。
- テンソルには形があります。軸ごとに何マスあるかを順番に書いたものが形です。
- ディープラーニングの道具が出すエラーの多くは、形が合っていないことから生まれます。
- 数字をこう束ねておくと、同じ計算を数え切れないマスに一度に適用できるので計算が速くなります。
目次
1たとえで理解する
マンション団地であるお部屋を探すには、数字がいくつ必要でしょうか。部屋がたった一つしかなければ、数字は要りません。ただその部屋です。
一つの階に部屋がいくつも並んでいれば、「何号室」という数字が一つ要ります。階が複数あれば「何階何号室」で数字が二つ、棟が複数あれば「何号棟何階何号室」で三つ要ります。団地が複数ある街なら、数字は四つになります。
部屋そのものが難しくなったわけではなく、整理の段階が増えただけです。一マスを指し示すのに必要な数字の個数、それがテンソルの軸の数です。テンソルはこうして何重にも整理しておいた数字の倉庫です。
2くわしく
軸が一本ずつ増えていく場面
数字を一つ手に取ってみましょう。気温一つ、点数一つ。これは軸のない状態です。指し示す場所が一つしかないので、番号を付ける必要がありません。
これを複数並べて一列にすると、軸が一本生まれます。何番目かさえ言えば、欲しい数字を取り出せます。ある人の科目ごとの点数を並べた列のようなものです。
その列を複数、上下に重ねると軸が二本になります。クラス全体の成績表のように、何行目何列目と言わなければ一マスを取り出せません。その成績表を学年ごとに一枚ずつ重ねると軸が三本になります。こうして軸はいくらでも増やせます。
形がテンソルの身分証です
テンソルを説明するときに一番よく使う言葉が形です。軸ごとに何マスあるかを順番に書いたものが形です。三棟の団地で各棟が十階建て、各階に四部屋あれば、形は三つの数字で書けます。
形は中に入っている値とは関係ありません。値がすべて0でもばらばらでも形は同じです。逆に値が同じでも整理の仕方が違えば形は変わります。同じ十二個の数字を一列に並べることも、三列四マスに並べることもできるからです。
だからディープラーニングの道具を使っていると、形を変える作業をよく行います。中身はそのままに整理の仕方だけを変えるので、倉庫の中の品物はそのままに棚の配置だけを変えるのに似ています。層に渡す前に形を整え直すだけで、次の計算がすんなり通ることも少なくありません。
形が合わないと計算が止まる
二つのテンソルを足したり掛けたりするには、軸の長さが互いに合っていなければなりません。三マスの列と四マスの列は組にできません。ディープラーニングのコードを動かすとき最もよく出会うエラーがこの形のずれです。
人の目には同じに見えても機械は違うものとして見ます。一マスの軸が一つ余分に付いているか、軸の順番が入れ替わっているかといった違いが計算を止めてしまいます。
だからモデルを扱う人たちは、値を覗く前にまず形を確かめます。形が合っていれば計算はたいてい流れ、ずれていればその場で止まるからです。慣れた人ほど、エラーの中身を読む前に各テンソルの形を並べて見比べる癖がついています。
3もう少し正確に
テンソルは同じ種類の数字を複数の軸で整理したまとまりで、軸の数を階数またはランクと呼びます。軸が一本ならベクトル、二本なら行列、それ以上まで含めて総称する言葉がテンソルです。軸のない数字一つも軸が0本のテンソルとして扱います。
数学や物理で言うテンソルは、座標系を変えても決まった規則どおりに変換される対象という、より厳密な意味です。ディープラーニングで使うテンソルはそれよりゆるく、複数の軸を持つ数字の配列という意味に近いです。呼び名が同じでも由来の分野が違うので、混同しないほうがよいです。
比喩がずれる点もあります。マンションの住所には棟・階・号室という名前が付いていますが、テンソルの軸には名前がなく順番しかありません。だから軸の順番を取り違える間違いがよく起こります。またマンションは棟ごとに階数が違ってもかまいませんが、テンソルは同じ軸なら長さがすべて同じでなければならず、空きマスも許されません。長さの違う文章を一緒に入れるとき、短いほうを空の断片で埋めて長さを合わせるのもそのためです。
4やってみる
5よくある誤解
テンソルがベクトルや行列とは別物だと思われがちですが、実際にはベクトルや行列を含めて軸がいくつであっても総称する呼び方です。
軸が多いほど良いデータだと思われがちですが、実際には扱う対象に合った軸の数があるだけで、多ければ良いというものではありません。
テンソルを理解するには難しい数学が要ると身構えがちですが、実際には数字をどう整理してまとめたかを見るのがほぼすべてです。難しく感じる部分の多くは、軸の順番を頭の中で追いにくいことから来ています。
7ひとこと要約
つまりテンソルは数字を複数の軸で整理してまとめたもので、軸がいくつあるかと軸ごとに何マスあるかを書いた形が、計算が通るか止まるかを決めます。
誤りや、もっと良いたとえがありますか? 修正を提案する · 最終更新2026-09-02