스칼라 구현
[In]
a = 1
b = 1.2
c = 0.25
d = 1.2e5
e = -5.7e-4
print(a)
print(b)
print(c)
print(d) # 1.2 x 10^5
print(e) # -5.7 x 10^(-4)
[Out]
1
1.2
0.25
120000.0
-0.00057
벡터 구현
- 열벡터 (n x 1 행렬)
$$\vec{x}=\begin{bmatrix} x_{1} \\ x_{2} \\ \vdots \\ x_{n} \\ \end{bmatrix} $$
- 행벡터 (1 x n 행렬)
$$\vec{x} = \begin{bmatrix} x_1 & x_2 & \cdots & x_n \\ \end{bmatrix} $$
numpy를 이용해 1차원 배열을 통해 구현할 수 있다.
[In]
import numpy as np
a = np.array([1,2,3])
print(a)
b = np.array([-2.4, 0.25, -1.3, 1.8])
print(b)
c = np.arange(1, 20, 3) # 1 ~ 19 사이의 정수를 3 간격으로 나타냄
print(c)
[Out]
[1 2 3]
[-2.4 0.25 -1.3 1.8 ]
[ 1 4 7 10 13 16 19]
행렬 구현
- 행렬
행과 열로 구성된 2차원 배열로, numpy의 2차원 배열을 이용해 표현할 수 있다.
$$\begin{bmatrix}
1& 2 & 3 \\
4& 5 & 6 \\
\end{bmatrix}$$
[In]
import numpy as np
a = np.array([[1,2,3],
[4,5,6]]) # 2x3 행렬
b = np.array([[0.21, 0.14],
[-1.3, 0.81],
[0.12, -2.1]]) # 3x2 행렬
[Out]
import numpy as np
a = np.array([[1,2,3],
[4,5,6]]) # 2x3 행렬
print(a)
b = np.array([[0.21, 0.14],
[-1.3, 0.81],
[0.12, -2.1]]) # 3x2 행렬
print(b)
[Out]
[[1 2 3]
[4 5 6]]
[[ 0.21 0.14]
[-1.3 0.81]
[ 0.12 -2.1 ]]
텐서 구현
- 텐서
스칼라를 여려 개의 차원으로 나타낸 것으로, numpy의 다차원 배열을 이용해 표현할 수 있다.
[In]
import numpy as np
a = np.array([[[0,0,0],
[0,0,1],
[1,0,0]],
[[0,1,0],
[1,1,0],
[1,0,1]],
[[0,1,1],
[1,1,1],
[0,0,1]]]) # (3,3,3)의 3차원 텐서
print(a)
print()
print(np.shape(a))
[Out]
[[[0 0 0]
[0 0 1]
[1 0 0]]
[[0 1 0]
[1 1 0]
[1 0 1]]
[[0 1 1]
[1 1 1]
[0 0 1]]]
(3, 3, 3)