#python #tensorflow #tensorflow2.0 #tensorflow-datasets
#питон #тензорный поток #tensorflow2.0 #tensorflow-datasets
Вопрос:
Кто-нибудь может, пожалуйста, помочь мне с вопросом о тензорном потоке? У меня есть эта база данных аудиофайлов, и я вычислил для них соответствующие спектрограммы mel.
Аудиофайлы имеют разную длину, поэтому, следовательно, спектрограммы mel будут иметь разную форму. Наконец, я добавляю все эти спектрограммы mel в список с именем » mels»
Я пытаюсь преобразовать список «mels» в тензор, чтобы я мог добавить его в свой tf.data.Переменная Dataset, но она продолжает выдавать мне сообщение об ошибке, что непрямоугольная форма не может быть преобразована в тензор.
Итак, я попытался преобразовать его в тензор, используя неровные тензоры, но требуется много времени, чтобы преобразовать весь список mel в неровный тензор. Я попытался преобразовать список меньшей длины (имеющий только 3 mel-спектрограммы), и для завершения преобразования в неровный тензор потребовалось около 30 секунд, поэтому для списка, имеющего более 200 mel-спектрограмм, потребуется около получаса или что-то в этом роде, что не в порядке. Есть ли способ преобразовать этот список mel в тензор?
Вот небольшая часть кода на случай, если я допустил несколько глупых ошибок
###########
def _load_spectrograms(fpaths):
fnames = []
mels = []
mags = []
for f in fpaths:
fname = os.path.basename(f)
mel = "mels/{}".format(fname.replace("wav", "npy"))
mag = "mags/{}".format(fname.replace("wav", "npy"))
mel = np.load(mel)
mag = np.load(mag)
# mel = tf.convert_to_tensor(mel)
# mag = tf.convert_to_tensor(mag)
# mel.set_shape((None, hp.n_mels * hp.r))
# mag.set_shape((None, hp.n_fft // 2 1))
fnames.append(fname)
mels.append(mel)
mags.append(mag)
return fnames, mels, mags
fnames, mels, mags = _load_spectrograms(fpaths)
mels = tf.ragged.constant(mels)
mags = tf.ragged.constant(mags)
########
Комментарии:
1. всегда помещайте полное сообщение об ошибке (начинающееся со слова «Traceback») в вопрос (не комментарий) в виде текста (не скриншота). Есть и другая полезная информация.
2. Подготовка и увеличение аудиоданных с помощью Tensorflow, найдите ссылку здесь . Спасибо