ML/모두의 딥러닝 시즌2

모두의 딥러닝 시즌2 [PyTorch] Lab-01-2 Tensor Manipulation 2

KAU 2021. 1. 7. 17:36

view 함수

view 함수를 사용하면 행렬의 형태를 바꿔줄 수 있다.

 

Squeeze

스퀴즈는 쥐어 짜는것이다.

뷰함수를 사용한것과 같다.

스퀴즈를 사용하면 디멘션의 엘리멘트 개수가 1인 경우에 없애주게 된다.

 

ft.squeeze(dim=0) 하면 효과가 없다.

ft.squeeze(dim=1) 하면 동일한 효과를 얻는다

dim2로 하면 오류남

 

Unsqueeze

Unsqueeze는 스퀴즈의 반대로

디멘션을 꼭 명시해줘야 한다.

원하는 디멘션에 1을 넣는다

뷰를 사용하는것과 같은 결과를 얻을 수 있다.

 

2차원 행렬에 적용시켜 봤을 때

 

Type Casting 

텐서의 타입을 바꿔 주겠다.

byte는 이진으로 저장한다

조건문을 실행했을 때 

 

Concatenate

이어 붙힌다.

두개의 텐서를 이어 붙힌다.

디멘션 1=> 두번째 디멘션이 늘어난다는 뜻이다.

 

Stacking

스택으로 쌓아 올리라는것이다. 

언스퀴즈를 하고 디멘션을 주는것과 같다.

 

디멘션을 1로 설정하면 쌓이는 3이 두번째 디멘션으로 간다

 

Ones and Zeros

말 그래도 1이나 0으로 채워주는 함수

같은 디바이스?로 가준다.

 

 

In-place Operation

메모리를 새로 선언하지 않고 정답값을 원래 변수에 넣어라

==>언더 스코어를 넣어줌으로써 사용 가능하다.

 

코드

github.com/deeplearningzerotoall/PyTorch/blob/master/lab-01_tensor_manipulation.ipynb

 

deeplearningzerotoall/PyTorch

Deep Learning Zero to All - Pytorch. Contribute to deeplearningzerotoall/PyTorch development by creating an account on GitHub.

github.com