본문 바로가기
728x90
반응형

AI Coding14

[Pytorch] Tensor Manipulation Pytorch는 텐서의 형을 변환해주는 다양한 함수들을 제공해줍니다. 이번 포스팅에서는 텐서의 형변화를 위한 아래 4가지 함수의 사용법과 차이점에 대해 설명해보겠습니다. - view() - reshape() - transpose() - permute() ​ ​ ▶ view( ) 와 reshape( ) 두 함수 모두 numpy의 reshape( ) 함수를 기반으로 하고 있습니다. 먼저 두 함수의 간단한 사용법 부터 설명하겠습니다. view()와 reshape() 모두 입력으로 shape을 받습니다. 원하는 차원의 shape을 적어주면 바로 형변환하여 리턴해줍니다. import torch x = torch.arange(12) print(x) # tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8,.. 2023. 2. 24.
[Pytorch] TorchVision Fine Tuning 이번 포스팅에서는 torchvision에서 제공하는 사전 학습된 모델들을 fine tuning 하는 방법에 대해서 알아보겠습니다. fine tuning에 대한 설명은 이곳을 참고해 주세요! ​ Pytorch의 공식 튜토리얼에 따르면 fine-tuning과 feature extraction 두 가지 방법을 설명하고 있습니다. 두 개의 차이점에 대해 간략히 설명하자면! - Fine tuning : 사전 학습된 모델로 시작하여 새로운 작업에 대한 모델의 모든 파라미터를 업데이트 합니다. - Feature extraction : 사전 학습된 모델을 이용하여 가장 마지막의 분류기만 재학습합니다. ​ 두 가지 모두 아래 과정들이 필요합니다. - 사전 학습된 모델로 초기화해주어야 합니다. - 새로 학습시킬 데이터의 .. 2023. 2. 5.
[Pytorch] torch.nn 과 torch.nn.functional pytorch를 이용해 코딩을 하다 보면 같은 기능에 대해 torch.nn 과 torch.nn.functional 두 방식으로 제공하는 함수들이 여럿 있습니다. ▶ torch.nn이 제공하는 기능들 - Parameters - Conv - Pooling - Padding - Non-linear Activation Function - Normalization - Linear - Dropout - Loss - ....... ​ ▶ torch.nn.functional이 제공하는 기능들 - Conv - Pooling - Non-linear Activation Function - Normalization - Dropout - Loss - ....... ​ 두 방식 모두 같은 결과를 제공해주지만 차이점도 존재합니다... 2023. 2. 5.
[Pytorch] Dataset과 Dataloader 2(Custom) 이전 게시물에 이어 Dataset과 Dataloader를 커스텀하는 방법에 대해 작성하겠습니다. ​ ▶ 먼저! Custom Dataset과 Dataloader가 필요한 이유가 무엇일까요? 딥러닝을 이용하는 거의 모든 작업들에서는 상당히 많은 양의 데이터를 이용하여 학습을 진행합니다. 그런데, 이 엄청난 양의 데이터를 한번에 불러오려면 시간도 오래 걸리고, 메모리 부족 현상이 발생할 수 있습니다. 데이터를 한번에 다 로드하지 않고 조금씩만 불러다 쓰면 이런 문제를 해결할 수 있겠죠! 이전 게시물에서 설명했던 Dataset은 모든 데이터를 한번에 불러오는 방식이었습니다. 데이터를 조금씩 불러오기 위해서는 custom Dataset을 만들어야 합니다. 또한 데이터 속에는 서로 다른 길이의 input이 있을 수.. 2023. 2. 5.
728x90
반응형