텐서(Tensor) 이해(2) : Shape
1. 소개
Tensor를 이해하는 데 필요한 정보를 자신의 메모로 정리합니다.
동시에 Python의 Tensor 표기법도 소개합니다.
* 영어 표현이 직관적이고 이해하기 쉽기 때문에 번역없이 그대로 기입합니다.
이전 기사에 이어 이번에는 Tensor의 Shape에 대해 소개합니다.
텐서(Tensor) 이해(1) : Dimension
2.텐서란?
텐서는 숫자를 포함하는 컨테이너입니다. 간단하네요.
3.텐서 키워드
Tensor, Dimension, Axis, Ranks의 의미입니다.
Number of dimension (=Number of axis) is called ranks.
텐서는 매트릭스의 일반화 된 표현.
이름
텐서
표기
Scalar
0 Dimensional Tensor
Not Available
벡터
1 Dimensional Tensor
(k)
Matrix
2 Dimensional Tensor
(j,k)
..
3 Dimensional tensor
(i,j,l)
4.텐서 Shape
텐서의 Shape는 각 Dimension(=axis)이 몇 개의 요소(Element)로 구성되었는지를 나타내는 정보입니다.
경험상 2D 텐서(Matrix) 이상은 Shape의 이해가 쉽습니다만, 0D텐서(Scalar), 1D텐서(Vector)의 Shape는, 예를 보고 나서 이해할 필요가 있습니다.
Python의 shape 명령어로 Tensor의 Shape를 확인할 수 있습니다.
4.1 Scalar : 0D Tensor
Scalar has empty shape.
예를 들어 숫자 12의 예를 들 수 있습니다.
숫자 12는 숫자가 하나만 있기 때문에 Scalar입니다.
Scalar는 0D Tensor입니다. 즉 Tensor의 Dimension이 0입니다. Dimension이 없습니다.
없는 Dimension의 Element 수의 정보가 Shape이므로, Scalar의 Shape는, ( ) 밖에 표기할 수 없습니다.
이것을 영어에서는 Scalar has empty shape.라고 합니다.
조금 불합리한 설명입니다만, Vector까지 참아 주세요.
아래 코드에서 Scalar의 Shape를 출력해 보겠습니다.
4.2 Vector : 1D Tensor
1D tensor has a shape with a single element, such as (4, ).
다음은 Vector의 예입니다.
\begin{bmatrix}
12 & 3 & 6 & 14
\end{bmatrix}
Vector는 1D 텐서입니다. Dimension이 하나 밖에 없기 때문에, 하나의 숫자로 Shape를 나타냅니다.
그리고이 벡터의 요소 수는 4입니다.
따라서이 Vector의 Shape는 (4,)로 표시됩니다. 이것은 핀과 오지 않을 수 있지만 기억할 수밖에 없습니다.
아래의 코드로 Vector의 Shape를 출력해 보겠습니다.
4.3 Matrix : 2D Tensor
2D tensor has a shape such as (3,4). it is familiar with matrix representation.
다음은 Matrix의 예입니다.
\begin{bmatrix}
1 & 3 & 5 & 7 \\
2 & 4 & 6 & 8 \\
3 & 6 & 9 & 12
\end{bmatrix}
이 Matrix의 Shape는 (3,4)입니다. 지금까지 수학에서 행렬의 표기와 같습니다.
실제로 Matrix는 2D Tensor이므로 두 개의 숫자로 표기합니다. 각 숫자에는 각 Dimension의 Elements 수를 넣습니다.
아래 코드에서 Matrix Shape를 출력해 보겠습니다.
4.4 .. :3D Tensor
3D tensor has a shape (*3*,3,4).
다음은 3D 텐서의 예입니다.
3D Tensor가 되면, 수식으로서 표현이 어려워지므로, 코드 표기로 시켜 주세요.
(3,4)의 행렬이 3개 늘어서 있는 것을 머리에 그려 보세요.
이 경우 이 텐서의 Shape는 (3, 3, 4)입니다.
[[[1, 3, 5, 7],[2, 4, 6, 8],[3 ,6, 9,12]],
[[1, 3, 5, 7],[2, 4, 6, 8],[3 ,6, 9,12]],
[[1, 3, 5, 7],[2, 4, 6, 8],[3 ,6, 9,12]]]
5. 정리
Tensor의 Shape의 의미, Python에서의 표현에 대해 정리했습니다.
다음 번에는 Tensor의 예를 소개합니다.
이름
텐서
표현
Shape
Scalar
0D Tensor
Not Available
()
벡터
1D Tensor
(k)
(k,)
Matrix
2D Tensor
(j,k)
(j,k)
..
3D tensor
(i,j,l)
(i,j,l)
6. 참고 자료
\begin{bmatrix}
12 & 3 & 6 & 14
\end{bmatrix}
\begin{bmatrix}
1 & 3 & 5 & 7 \\
2 & 4 & 6 & 8 \\
3 & 6 & 9 & 12
\end{bmatrix}
[[1, 3, 5, 7],[2, 4, 6, 8],[3 ,6, 9,12]],
[[1, 3, 5, 7],[2, 4, 6, 8],[3 ,6, 9,12]]]
Tensor의 Shape의 의미, Python에서의 표현에 대해 정리했습니다.
다음 번에는 Tensor의 예를 소개합니다.
이름
텐서
표현
Shape
Scalar
0D Tensor
Not Available
()
벡터
1D Tensor
(k)
(k,)
Matrix
2D Tensor
(j,k)
(j,k)
..
3D tensor
(i,j,l)
(i,j,l)
6. 참고 자료
Reference
이 문제에 관하여(텐서(Tensor) 이해(2) : Shape), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kotai2003/items/b977a28660bba2a07dc7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)