기본 콘텐츠로 건너뛰기

라벨이 shape인 게시물 표시

[matplotlib]quiver()함수

[numpy] 차원(dimension)

차원(dimension) 차원은 임의의 점들을 나타내기 위해 필요한 축의 수로 정의할 수 있습니다. 다음 그림은 3차원까지를 나타냅니다. 한 개의 점(scalar)을 나타내기 위해서는 축이 필요하지 않습니다. 즉, 점은 0차원으로 정의합니다. 두점을 이은 선(vector)의 경우 두 점들을 한개의 축위에 나타내는 것으로 1차원으로 각 점 간의 거리를 나타낼 수 있으며 한 방향을 나타낼 수 있습니다. 두개의 선을 연결한 면(matrix)을 나타내기 위해서는 2개의 기본 축이 필요하므로 2차원으로 면적을 나타낼 수 있으며 두 방향을 나타낼수 있습니다. 두개의 면을 연결한 공간의 경우 3개의 기본 축하므로 3차원이 됩니다. 즉, 부피와 3개의 방향을 나타낼 수 있습니다. 3차원 이상의 경우는 tensor라는 용어로 나타냅니다. numpy 패키지의 기본 자료형인 array(배열)의 기본단위는 벡터이며 리스트 형태인 하나의 대괄호로 나타냅니다. 다음 객체 x는 한개의 숫자를 가지지만 벡터이므로 방향을 가집니다. 즉, 0에서 시작하여 2까지 이어지는 선을 나타냅니다. import numpy as np import numpy.linalg as la import matplotlib.pyplot as plt plt.rcParams['font.family'] ='NanumGothic' plt.rcParams['axes.unicode_minus'] =False x=np.array([2]) x array([2]) 벡터 x는 다음 그림 중의 하나로 나타낼 수 있습니다. 즉, 한개의 좌표가 필요하므로 1차원 벡터입니다. 그림 1. fig, ax=plt.subplots(1, 2, figsize=(4,2)) plt.subplots_adjust(wspace=0.3) ax[0].plot([0, 2], [0, 0], lw=2) ax[1].plot([0,0], [0,2], lw=2) plt.show() ...

torch

내용 텐서란? 주요속성 Numpy에서 텐서 조작 차원의 변경 데이터 배치의 개념 (The notion of data batches) import tensorflow as tf from tensorflow import keras import numpy as np import pandas as pd from scipy import stats from sklearn import preprocessing import matplotlib.pyplot as plt 텐서(Tensor) 텐서란? 텐서는 숫자로 구성된 데이터의 컨테이너입니다. 즉, 숫자를 담는 그릇입니다. 가장 많이 접할 수 있는 2D 텐서인 행렬이 텐서의 예입니다. 결과적으로 텐서는 행렬을 임의의 수의 차원으로 일반화한 것으로 텐서의 맥락에서 차원(dimension)은 종종 축(axis)이라고 할 수 있습니다. tensorflow에서 텐서는 tf.constant() 함수에 의해 생성됩니다. 생성된 텐서의 값은 동일한 객체에서 변경, 수정 될 수 없습니다. 생성된 텐서의 타입은 tf.dtypes.DType 에서 확인 할 수 있습니다. 스칼라는 0차원 텐서이므로 축은 없습니다.(rank 0) 벡터는 1차원 텐서로서 1개의 축을 가집니다.(rank 1) 행렬은 2차원 텐서이며 2개 축을 가집니다.(rank 2) 3차원 텐서는 3개의 축을 가집니다.(rank 3) 계속 확장할 수 있습니다. rank0=tf.constant(4) rank0 <tf.Tensor: shape=(), dtype=int32, numpy=4 > rank1=tf.constant([2,3]) rank1 <tf.Tensor: shape=(2,), dtype=int32, numpy=array([2, 3], dtype=int32) > rank2=tf.constant([[1,2],[3,4],[5,6]]) rank2 <tf.Tensor: shape=(3, 2), dtyp...