본문 바로가기

ML&DL/PyTorch

(18)
[PyTorch] Tensor 자르기/분리하기: chunk함수 Chunk함수란? chunk함수는 tensor를 쪼개는 함수이다. tensor를 몇개로 어떤 dimension으로 쪼갤지 설정해주고 사용하면된다. output = torch.chunk(input, n = (몇개로 쪼갤지 설정), dim = (어떤 차원에 적용할지)) import torch # type 1 x = torch.chunk(x, n, dim) # type 2 x = x.chunck(n, dim) Chunk함수의 시각화 시각화라고 하긴 거창하지만 내 발그림으로 이해해보자. 내 상황을 좀 설명해보면 나는 마이크 여러개에서 얻은 신호중에 첫번째 신호만 꺼내서 처리하고 싶은 상황이다. ​ 음성의 길이는 T이고 64000 sample이 존재한다. 그리고 microphone개수가 6개여서 ch(channe..
[PyTorch] view, reshape, transpose, permute함수의 차이와 contiguous의 의미 (본 포스팅은 이 글 번역 + 마지막에 제 생각을 덧붙였습니다.) PyTorch는 tensor의 type(형)변환을 위한 다양한 방법들을 제공하고 있다. 몇몇의 방법들은 초심자들에게 헷갈릴 수 있다. 그래서 view() vs reshape(), transpose() vs permute() 에 대해 얘기해보고자 한다. view() vs reshape() view()와 reshape() 둘 다 tensor의 모양을 바꾸는데 사용될 수 있다. 그러나 둘 사이에 약간 차이가 있다. (** 둘 중 어떤 함수를 쓰더라도 데이터의 구조가 변경될 뿐 순서는 변경되지 않는다.) view() 는 오랫동안 지속된다. 이 함수는 새로운 모양의 tensor를 반환할 것이다. 반환된 tensor는 원본 tensor와 기반이 되는..