tensor 5

Tensorflow, Numpy - squeeze()와 flatten()의 차이

Tensorflow(Keras)에서는 다양한 연산을 해줄 수 있는함수들을 Layer의 형태로 제공해주고 있다. (ex. Dense, Convolution, Pooling,,,) 어떤 값들이 Layer를 통해서 나오는 Output은 텐서 형태로 그 결과물에 대해 추가적인 변형을 주고싶을 때는 해당 객체를 numpy형태로 변환해주어야한다. 그 과정은 아래의 MaxPooling2D 레이어를 거친 결과물로 예시를 들어 코드를 작성한 것에서 pooled_max.numpy()부분이다. import numpy as np import tensorflow as tf from tensorflow.keras.layers import MaxPooling2D N, n_H, n_W, n_C = 1, 5, 5, 1 f, s = 2..

3차원 텐서 전치에 대해서 알아보자. (tensorflow, numpy transpose)

2차원 행렬은 원소의 값들에 대해 행과 열의 위치를 바꾸는 것으로 전치를 할 수 있다. 2차원 행렬의 전치는 단순하지만 3차원 텐서부터는 전치되는 값이 헷갈리기 시작한다. 따라서, 해당 글에서는 3차원 텐서를 전치시킬 수 있는 경우들과 전치가 어떻게 되는지 쉽게 설명해보려하였다. 먼저, tensorflow로 샘플데이터를 만들어 주고, 3차원 텐서를 numpy로 형태로 만들어주었다.import numpy as np import tensorflow as tf tensor_3d = tf.random.uniform(minval=0, maxval=10, shape=(1,2,3,4), dtype=tf.int32) tensor_3d = tensor_3d.numpy().squeeze() print(f"shape : {..

Pytorch로 Tensor Operation 다루는 법! (기본 기능 모음)

지난 글에 이어서 numpy가 아닌 pytorch에서 tensor를 다룰 수 있는 함수들에 대해 정리해보았습니다. tensor에 대한 개념이 익숙하지 않으신 분들은 해당 글을 먼저 읽고 오시는 것을 추천드립니다! https://kyull-it.tistory.com/158 Tensor란 무엇인가? (+ Python Numpy Tensor 구현 및 기본 기능) Tensor란 무엇일까? 우리는 중고등학생때, 스칼라, 벡터, 행렬까지 배웠다. 0차원인 스칼라, 1차원인 벡터, 2차원인 행렬,,, 그럼 3차원부터는?! 그게 바로 텐서라고 하는 것이다. 3차원 이상은 모두 kyull-it.tistory.com tensor 생성하기 import torch torch.FloatTensor( ) # np.array( )..

Tensor란 무엇인가? (+ Python Numpy Tensor 구현 및 기본 기능)

Tensor란 무엇일까? 우리는 중고등학생때, 스칼라, 벡터, 행렬까지 배웠다. 0차원인 스칼라, 1차원인 벡터, 2차원인 행렬,,, 그럼 3차원부터는?! 그게 바로 텐서라고 하는 것이다. 3차원 이상은 모두 텐서의 형태로 표현해주고, 이러한 텐서 형태를 가져와서 스칼라, 벡터, 행렬도 텐서로써 표현해줄 수도 있다. 편의상 모든 값들을 텐서형태로 정의해주는 것으로 보면 되고, 아래의 표가 모든 텐서 종류들을 정리한 내용이다. 텐서의 종류 텐서의 종류 (영어) 형태의 명칭 형태의 명칭 (영어) 0차원 텐서 Zeroth-order Tensor 스칼라 Scalar 1차원 텐서 First-order Tensor 벡터 Vector 2차원 텐서 Second-order Tensor 행렬 Matrix 3차원 텐서 Th..

torch.view (파이토치 뷰) 함수 설명

# Manual -> https://pytorch.org/docs/stable/generated/torch.Tensor.view.html torch.Tensor.view — PyTorch 1.12 documentation Shortcuts pytorch.org 파이토치 함수 중 view 함수는 tensor형태의 데이터의 shape을 바꿔주는 함수이다. 원본데이터도 같고, 성분의 수도 같지만 이를 구성하는 shape만 다르게 만들어주는 함수이다. 예시는 아래와 같다. # make the random tensor input = torch.randn(1, 28, 28) - 랜덤한 값으로 tensor를 만들어준다. # reshape the tensor using torch.view n = 1 output1 = ..