首页 > 解决方案 > 如何在我的数据上应用 pyannote.audio 模型而不被“杀死”?

问题描述

按照教程在您自己的数据上应用预训练模型会导致我的进程在应用模型时被终止。RAM 未完全使用,但核心上升到 100%,然后在几秒钟内回到 0。

这是我的代码(音频为 2 分钟,.wav):

import torch
import multiprocessing 

torch.set_num_threads(multiprocessing.cpu_count())

print('downloading model')
sad = torch.hub.load('pyannote/pyannote-audio', 'sad_ami', device='cpu', batch_size=32)
print('finished')

test_file = {'uri': 'audio_real.wav', 'audio': './audio.wav'}

print('applying sad')
sad_scores = sad(test_file)
print('finished')

print('binarizing')
from pyannote.audio.utils.signal import Binarize
binarize = Binarize(offset=0.52, onset=0.52, log_scale=True, 
                    min_duration_off=0.1, min_duration_on=0.1)
print('finished')

print('applying')
speech = binarize.apply(sad_scores, dimension=1)
print('finished')

print(speech)

如果我将它应用在 5 秒的音频上,它会完美运行。我还在具有 64 核和 64 GB RAM 的 GCP 机器上运行了它,但我仍然让进程被杀死,最后一条消息是“应用悲伤”,然后是“被杀死”。

标签: pythonmachine-learninggoogle-cloud-platformpytorch

解决方案


推荐阅读