본문 바로가기

PYTHON/PYTORCH

(15)
[fairseq] 설치 시 오류 'enum'오류 https://github.com/pytorch/fairseq GitHub - pytorch/fairseq: Facebook AI Research Sequence-to-Sequence Toolkit written in Python. Facebook AI Research Sequence-to-Sequence Toolkit written in Python. - GitHub - pytorch/fairseq: Facebook AI Research Sequence-to-Sequence Toolkit written in Python. github.com fairseq를 사용하려고 installation을 진행할때, 깃을 clone해서 fairseq를 설치할 것이다. git clone https://github.co..
[TorchAudio] Transformations 알아보기 torchaudio에서 transformations을 지원한다. 지금까지는 다 Librosa나 numpy 라이브러리를 사용해서 변환하였는데, torch에서도 제공해주는 것을 확인하였다. 또한 torchaudio는 leverages Pytorch's GPU Support이기 때문에 GPU를 사용하여 연산을 진행할 수 있다. (CPU에서 처리하는 것 보다 속도가 더 빠르다) ** torchaudio를 사용할때 꼭 soundfile 과 sox의 의존성을 잘 확인하자https://pytorch.org/audio/stable/backend.html#backend torchaudio에서 제공해주는 transformation들은 아래와 같다. Resample Spectrogram GriffinLim ComputeDe..
[파이토치] Melspectrogram 추출하기 사용 데이터셋 : RAVDESS 데이터셋 MelSpectrogram 추출하기 data, sr = librosa.load(filepath) melspectrogram = librosa.feature.melspectrogram(data, sr=sr, n_mels=128,n_fft=2048,hop_length=512) plt.figure(figsize=(12, 4)) librosa.display.specshow(melspectrogram, sr=sr, x_axis='time', y_axis='mel') plt.title('Mel power spectrogram ') plt.colorbar(format='%+02.0f dB') plt.tight_layout() librosa 라이브러리를 사용하면 음원 파일에 대..
[파이토치] PILLOW_VERSION 오류 관련 ImportError: cannot import name 'PILLOW_VERSION' 이러한 오류를 발견했다면 이것은 pillow 의 버전 문제이다. 오류 전문 ImportErrorTraceback (most recent call last) in 7 import matplotlib.pyplot as plt 8 from torch.utils.data import Dataset, DataLoader ----> 9 from torchvision import transforms, utils 10 11 # 경고 메시지 무시하기 /usr/local/lib/python3.6/dist-packages/torchvision/__init__.py in 1 from torchvision import models ---->..
[파이토치] nn.functional.avg_pool2d 관련 파이토치에서 average pooling에 대한 함수를 제공해주고 있다. average pooling의 경우는 너무 깊은 CNN 차원에 따른 over fitting을 대응하기 위해서 사용되는 기법이다. pooling layer 단에서 사용할 수 있는 기법은 크게 2가지 타입이 있는데, 첫번째로 Max pooling layer, 두번째로 Average pooling layer 가 있다. Max pooling layer는 kernel_size에서 표현되는 픽셀 중 가장 최대값을 뽑아낸다. Average pooling layer는 kernel_size에서 표현되는 픽셀들의 평균을 뽑아낸다. 관련 파라미터를 살펴보도록 하겠다. input : 텐서가 들어가는 부분이다. (minibatch, input_channe..
[파이토치] nn.Sequential 관련 파이토치에 있는 Sequential 클래스는 각각의 모듈이 순차적으로 지나갈 수 있도록 구조를 정의할 수 있다. 예제 샘플을 확인하면 쉽게 이해할 수 있다. Sample code # Example of using Sequential model = nn.Sequential( nn.Conv2d(1,20,5), nn.ReLU(), nn.Conv2d(20,64,5), nn.ReLU() ) # Example of using Sequential with OrderedDict model = nn.Sequential(OrderedDict([ ('conv1', nn.Conv2d(1,20,5)), ('relu1', nn.ReLU()), ('conv2', nn.Conv2d(20,64,5)), ('relu2', nn.ReLU..
[파이토치] nn.Conv2d 함수 관련 파이토치에서는 convolution 관련 함수를 제공하고 있다. in_channels (int) : input 이미지의 channel 을 입력한다. out_channels (int) : output 이미지의 channel을 입력한다. kernel_size (int or tuple) : convolution 을 진행할 때 사용할 kernel을 정의한다. stride (int or tuple) : convolution을 진행할 때 얼마만큼의 stride를 진행할 것인지 정의한다. 기본값은 1 padding (int or tuple) : 제로패딩을 어느정도 줄 것인지 결정한다. 기본값은 0 padding_mode (String) : 어떤 패딩을 추가시킬지 결정한다. 기본값은 zeros이고 reflect, re..