Страница 1 из 1
Вопрос знатокам про PyTorch
Добавлено: Вт ноя 05, 2024 6:25 am
Uzito
Есть типа функция, которая вычисляет mel spectrogram loss.
Код: Выделить всё
class MelSpectrogramLoss(torch.nn.Module):
...
def forward(self, real, fake):
# real: torch(B, 1, T) , fake: torch(B, 1, T)
real_mels = self.mel_spectrogram(real)
fake_mels = self.mel_spectrogram(fake)
real_logmels = torch.log(real_mels.clamp(min=1e-5).pow(1)) / self.log_base
fake_logmels = torch.log(fake_mels.clamp(min=1e-5).pow(1)) / self.log_base
loss = torch.nn.functional.l1_loss(real_logmels, fake_logmels)
return loss
Есть ли какая нибудь разница какой параметр будет ей передан первым - сгенерированный генератором сигнал или настоящий, для обновления градиентов при дальнейшем .backward вызове?
Re: Вопрос знатокам про PyTorch
Добавлено: Вт ноя 05, 2024 12:11 pm
caltrain
а вы покупаете или продаете? (у вас там генератор или дискриминатор)
я бы предпочел первым real, если участвует кеш.
с точки зрения отладки, лучше сначала пускать fake, особенно, если он статичный, чтобы происходил fail-fast.
тогда под него можно писать юнит тест. и прежде чем запускать все-все-все и оно будет падать, первый вопрос - базовый тест прошел?
Re: Вопрос знатокам про PyTorch
Добавлено: Вт ноя 05, 2024 2:07 pm
Uzito
caltrain писал(а): ↑Вт ноя 05, 2024 12:11 pm
а вы покупаете или продаете? (у вас там генератор или дискриминатор)
я бы предпочел первым real, если участвует кеш.
с точки зрения отладки, лучше сначала пускать fake, особенно, если он статичный, чтобы происходил fail-fast.
тогда под него можно писать юнит тест. и прежде чем запускать все-все-все и оно будет падать, первый вопрос - базовый тест прошел?
Это GAN, там обучаются оба. Про базовый тест вопрос не понял. Функция возвращает одинаковый результат в независимости от порядка параметров. Мне просто парят что очень важно чтобы первым параметром был настоящий сигнал, типа ведь с ним сравнивают сгенерированный. Мне же интересно что там происходит за ширмой с градиентами что так важно первым параметром в l1_loss отдавать реальный сигнал. Или это совсем не важно?
Re: Вопрос знатокам про PyTorch
Добавлено: Пт ноя 08, 2024 12:10 pm
Sergunka
Uzito писал(а): ↑Вт ноя 05, 2024 2:07 pm
caltrain писал(а): ↑Вт ноя 05, 2024 12:11 pm
а вы покупаете или продаете? (у вас там генератор или дискриминатор)
я бы предпочел первым real, если участвует кеш.
с точки зрения отладки, лучше сначала пускать fake, особенно, если он статичный, чтобы происходил fail-fast.
тогда под него можно писать юнит тест. и прежде чем запускать все-все-все и оно будет падать, первый вопрос - базовый тест прошел?
Это GAN, там обучаются оба. Про базовый тест вопрос не понял. Функция возвращает одинаковый результат в независимости от порядка параметров. Мне просто парят что очень важно чтобы первым параметром был настоящий сигнал, типа ведь с ним сравнивают сгенерированный. Мне же интересно что там происходит за ширмой с градиентами что так важно первым параметром в l1_loss отдавать реальный сигнал. Или это совсем не важно?
Насколько я помню там открытый код можно посмотреть.
У меня сын недавно правил код у них и даже статью написал по этому поводу
https://savvavy.wordpress.com/2024/07/2 ... te-finder/
Он сегодня зайдет к нам я спрошу Ваш вопрос у него, что он посоветует. Или просто тупо можете ему в линкидине написать на русском языке или английском.
https://www.linkedin.com/in/savva-v-a8a86a109/
Re: Вопрос знатокам про PyTorch
Добавлено: Пт ноя 08, 2024 2:00 pm
Uzito
Sergunka писал(а): ↑Пт ноя 08, 2024 12:10 pm
Насколько я помню там открытый код можно посмотреть.
Там надо лезть в сишный код, а там без бутылки не разобраться. Да и в общем-то не особо важно, переменные поставил как хотели для красоты. Не думаю что это на что-то влияет, так как функция вычисляет абсолютные значения разницы.