Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

More than 5 years have passed since last update.

[READY] Pythonで学ぶスカラー/ベクトル/テンソル

Last updated at Posted at 2016-08-29

数学よくわかってないマンがPythonを使ってなんとなくカラー/ベクトル/テンソルについてまとめました。

スカラー

大きさを表すもののこと。Pythonだと数値とかがスカラーになる。

1  # <- スカラー
1.5  # <- スカラー
None  # <- スカラーではない
ValueError  # <- スカラーではない

大きさを表すってことは順序関係(==, <, <=, >, >=)が定義されていること。

ベクトル

大きさと向きを表すもののこと。2次元平面とかだとX座標とY座標の値を (x, y) という形式で表現して、基底座標と目的の位置の座標があるとその大きさと、向きを表現できる。

(x, y)で 表すのでlistもしくはtupleがベクトルの表現になる。

(3, 4)  # <- ベクトル
(5, 1.2)  # <- ベクトル
(ValueError, 1)  # <- ベクトルではない
(None, None)  # <- ベクトルではない

n次元ベクトル

前述のベクトルは長さが2だったので2次元ベクトルと言える。要素数がnならn次元ベクトルとなる。

(1, 2)  # <- 2次元ベクトル
(4, 2, 1)  # <- 3次元ベクトル
(4, 1, 3, 5)  # <- 4次元ベクトル

テンソル

http://qiita.com/EtsuroHONDA/items/02635dc3026e29f3cb41
テンソル積というものが定義できるようなベクトル空間の元をテンソルと言う

テンソルにはいくつかある

  • 0階のテンソル: スカラーのこと np.array(1)
  • 1階のテンソル: ベクトルのこと np.array([1, 2])
  • 2階のテンソル: 一般的にテンソルと呼ばれると2階のテンソルのことを指す np.array([[1, 2], [2, 3]])
  • 3階のテンソル: 2階のテンソルのn個の集まり np.array([[[1, 2], [2, 3]]])
  • 4階のテンソル: 3階のテンソルのn個の集まり np.array([[[[1, 2], [2, 3]]]])

numpy.ndarrayが何階のテンソルなのかは numpy.ndarray.ndim で確認できる。

>>> np.array(1).ndim
0
>>> np.array([1]).ndim
1
>>> np.array([[1]]).ndim
2
>>> np.array([[[1]]]).ndim
3
>>> np.array([[[[1]]]]).ndim
4

2階のテンソル

一般的にテンソルという場合、2階のテンソルのことを指していることが多い。
Pythonでテンソルを使う場合、その表現はベクトルのリスト (つまりスカラーのリストのリスト) になる。

>>> np.array([[1, 2], [3, 4], [1, 4]])
array([[1, 2],
       [3, 4],
       [1, 4]])

0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?