참고
Click here to download the full example code
오디오 데이터셋¶
``torchaudio``는 공용으로 접근할 수 있는 일반적인 데이터셋에 쉽게 접근할 수 있는 기능을 제공합니다. 사용할 수 있는 데이터셋 목록은 공식 문서를 참고하세요.
import torch
import torchaudio
print(torch.__version__)
print(torchaudio.__version__)
2.3.1
2.3.1
import os
import IPython
import matplotlib.pyplot as plt
_SAMPLE_DIR = "_assets"
YESNO_DATASET_PATH = os.path.join(_SAMPLE_DIR, "yes_no")
os.makedirs(YESNO_DATASET_PATH, exist_ok=True)
def plot_specgram(waveform, sample_rate, title="Spectrogram"):
waveform = waveform.numpy()
figure, ax = plt.subplots()
ax.specgram(waveform[0], Fs=sample_rate)
figure.suptitle(title)
figure.tight_layout()
여기서 torchaudio.datasets.YESNO
데이터셋의 사용 방법을 볼 수 있습니다.
dataset = torchaudio.datasets.YESNO(YESNO_DATASET_PATH, download=True)
0%| | 0.00/4.49M [00:00<?, ?B/s]
3%|2 | 128k/4.49M [00:00<00:24, 190kB/s]
6%|5 | 256k/4.49M [00:00<00:14, 298kB/s]
8%|8 | 384k/4.49M [00:01<00:11, 360kB/s]
11%|#1 | 512k/4.49M [00:01<00:10, 418kB/s]
14%|#3 | 640k/4.49M [00:01<00:08, 456kB/s]
17%|#6 | 768k/4.49M [00:01<00:08, 484kB/s]
22%|##2 | 1.00M/4.49M [00:02<00:05, 646kB/s]
25%|##5 | 1.12M/4.49M [00:02<00:05, 618kB/s]
28%|##7 | 1.25M/4.49M [00:02<00:05, 609kB/s]
33%|###3 | 1.50M/4.49M [00:02<00:04, 753kB/s]
36%|###6 | 1.62M/4.49M [00:03<00:04, 707kB/s]
42%|####1 | 1.88M/4.49M [00:03<00:03, 836kB/s]
47%|####7 | 2.12M/4.49M [00:03<00:02, 922kB/s]
53%|#####2 | 2.38M/4.49M [00:03<00:02, 978kB/s]
59%|#####8 | 2.62M/4.49M [00:04<00:01, 1.00MB/s]
61%|######1 | 2.75M/4.49M [00:04<00:02, 865kB/s]
70%|######9 | 3.12M/4.49M [00:04<00:01, 1.10MB/s]
75%|#######5 | 3.38M/4.49M [00:04<00:01, 1.12MB/s]
81%|######## | 3.62M/4.49M [00:05<00:00, 1.14MB/s]
86%|########6 | 3.88M/4.49M [00:05<00:00, 1.13MB/s]
95%|#########4| 4.25M/4.49M [00:05<00:00, 1.25MB/s]
100%|##########| 4.49M/4.49M [00:05<00:00, 851kB/s]
i = 1
waveform, sample_rate, label = dataset[i]
plot_specgram(waveform, sample_rate, title=f"Sample {i}: {label}")
IPython.display.Audio(waveform, rate=sample_rate)
![Sample 1: [0, 0, 0, 1, 0, 0, 0, 1]](../_images/sphx_glr_audio_datasets_tutorial_001.png)
i = 3
waveform, sample_rate, label = dataset[i]
plot_specgram(waveform, sample_rate, title=f"Sample {i}: {label}")
IPython.display.Audio(waveform, rate=sample_rate)
![Sample 3: [0, 0, 1, 0, 0, 0, 1, 0]](../_images/sphx_glr_audio_datasets_tutorial_002.png)
i = 5
waveform, sample_rate, label = dataset[i]
plot_specgram(waveform, sample_rate, title=f"Sample {i}: {label}")
IPython.display.Audio(waveform, rate=sample_rate)
i = 5
waveform, sample_rate, label = dataset[i]
plot_specgram(waveform, sample_rate, title=f"Sample {i}: {label}")
IPython.display.Audio(waveform, rate=sample_rate)
Total running time of the script: ( 0 minutes 8.845 seconds)