Closed tmvkrpxl0 closed 2 years ago
안녕하세요 @tmvkrpxl0 ! 혹시 ValueError 로그도 같이 올려주실 수 있으신가요?
@upskyy PCM 데이터 크기 사이즈가 제공된 dtype과 맞지 않다고 합니다. 지금 당장 오류를 전송하긴 힘듭니다.
import numpy as np
def main():
audio_path = "/home/tmvkrpxl0/KoSpeech_Data/evaluation/KsponSpeech_eval/eval_other/KsponSpeech_E04118.pcm"
np.memmap(audio_path, dtype='h', mode='readonly')
if __name__ == '__main__':
main()
어제 간단한 스크립트를 작성하여 테스트 해 보았는데 ValueError로 인해 실패합니다.
/home/tmvkrpxl0/STT_KO/bin/python3.9 /home/tmvkrpxl0/STT_KO/openspeech/test.py
Traceback (most recent call last):
File "/home/tmvkrpxl0/STT_KO/openspeech/test.py", line 8, in <module>
main()
File "/home/tmvkrpxl0/STT_KO/openspeech/test.py", line 5, in main
np.memmap(audio_path, dtype='int16', mode='readonly')
File "/home/tmvkrpxl0/STT_KO/lib/python3.9/site-packages/numpy/core/memmap.py", line 239, in __new__
raise ValueError("Size of available data is not a "
ValueError: Size of available data is not a multiple of the data-type size.
@upskyy 테스트용 데이터의 크기가 맞지 않아서 그런것 같은데, 훈련할때 어떻게 테스트 하셨나요?
@tmvkrpxl0 저도 아마 pcm파일 읽는데 에러가 나서 wav파일로 바꿔서 읽은 것 같아요!
@upskyy 어떻게 했는지 알려주실 수 있나요?
import wave
def convert_to_wav(filepath):
with open(filepath, "rb") as r:
data = r.read()
with wave.open(str(filepath.with_suffix(".wav")), "wb") as w:
w.setparams((1, 2, 16000, 0, "NONE", "NONE"))
w.writeframes(data)
@tmvkrpxl0 filepath로 현재 저장되어 있는 pcm파일 경로를 넘겨주시면 됩니다.
issue close 하겠습니다.
❓ Questions & Help
모델 훈련을 끝내고,
hydra_train.py
에서trainer.test(model, data_module, ckpt_path="/home/tmvkrpxl0/STT_KO/openspeech/outputs/2022-04-02/04-05-11/None/version_None/checkpoints/0_206666.ckpt")
를 통해 모델을 테스트하려고 하였으나 ValueError 로 인하여 테스트를 진행할 수 없습니다. 또한,hydra_eval.py
를 사용하여도 똑같습니다, ValueError 로 인해 테스트를 진행할 수 없습니다.hydra_eval.py
는로 실행하였고,
hydra_train.py
는로 실행하였습니다.
스스로 문제를 해결하려고 이것저것 시도해 보던 도중, AIHUB 측에서 제공한 모든 테스트용 데이터 파일들의 크기가 (16의 배수) + 1 이더군요... 훈련용 데이터들은 파일의 크기가 전부 16의 배수이지만 테스트용 데이터들은 16의 배수 + 1 입니다.