본문 바로가기

분류 전체보기

(8)
wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations 정리 1. Introduction 기존의 neural networks는 대량의 labeled training data로 훈련됨. 그러나 labeled data는 unlabeled data보다 수집이 어려움 현재의 음성인식 시스템은 납득할 만한 성능을 얻기 위해서는 수천 시간의 transcribed speech를 필요로 함 그리고 사람은 언어를 습득할 때 labeled examples로부터 학습하지 않음 Self-supervised learning unlabeled examples로부터 general representation을 학습하고, labeled data를 사용하여 fine-tuning을 진행하는 방법. Wav2vec 2.0 raw audio data로부터 self-supervised learning 기..
fairseq로 wav2vec2 디코딩하기 1. 파일 다운로드 및 preprocessing json 파일에서 오디오 파일 다운로드 및 다운샘플링 json 파일 양식에 맞게 csv 파일 생성 (total.csv) fairseq data 생성 용 csv 파일 생성 (ch.csv) import os import soundfile as sf import re import json import wget from scipy.io import wavfile import scipy.signal as sps audio_save_dir = '/data/jihyeon1202/nia/niach6/audio_4/' with open('/data/jihyeon1202/nia/zh.json', 'r') as f: entire_dic = json.load(f) def dow..
Neural Discrete Representation Learning (2017) 정리 Abstract Vector Quantised Variational AutoEncoder (VQ-VAE) Differences with VAEs The encoder network outputs discrete codes. Discrete latent representation을 학습하기 위해 vector quantisation (VQ)를 도입 → VAE에서 자주 발생하는 'posterior collapse' 문제를 dhksghkgkf tn dlTdma. The prior is learnt rather than static. Discrete latent representation + autoregressive prior → the model can generate high quality images, v..
fairseq로 wav2vec2 finetuning하기 1. 필요한 파일 준비 (train, test, valid) .tsv (audio 파일들의 절대경로) + '\t' + (frame 수) 도커에서 실행하려고 할때는 맨 윗줄에 공통경로를 적어줘야 함 !! .ltr (or .phn) 인식하고자 하는 문장을 letter (ltr) 단위 혹은 phoneme (phn) 단위로 전사한 텍스트로 이루어진 파일 중국어의 성모, 운모+성조를 하나의 음소로 보고 음소인식 수행 .wrd 인식하고자 하는 문장을 word (wrd) 단위로 전사한 텍스트로 이루어진 파일 중국어의 경우 띄어쓰기가 없기 때문에 character (한자) 단위로 나누어도 됨 음소인식 task의 경우에는 wrd 파일과 phn 파일이 같아도 상관 없음 dict.ltr.txt (or dict.phn.txt..
docker container 생성 방법 docker images ## 서버에 존재하는 docker image 목록 확인 docker run --gpus -it --name --ipc=host -v :/workspace/data/ ## 예시 docker run --gpus all -it --name jihyeon --ipc=host -v /home/jihyeon1202/:/workspace/data/ abcdefg --gpus : gpu를 얼마나 사용할 것인지 정해줌 e.g., --gpus all -it:컨테이너를 종료하지 않은 채로 컨테이너의 입력을 계속해서 컨테이너로 전달해주는 인수 -v:호스트 컴퓨터의 특정 파일의 경로를 컨테이너의 특정 경로로 마운트 해줌
Kaldi를 사용하여 decoding 결과 분석하기 Prerequisites: ref, hyp 파일 cd /kaldi/egs/wsj/s5 ## 해당 폴더 내에 존재하는 kaldi에서 제공하는 toolkit 사용 vi path.sh ## path.sh 파일에서 kaldi root 지정 필요 ## path.sh 파일 실행하여 작업 수행 위치 지정 . ./path.sh ## 첫번째 .: 이 위치에서 실행한다 . path.sh ## 이렇게 해도 같은 의미 ## compute wer compute-wer ark:ref ark:hyp > wer_results ## utterance 별 error 확인 align-text --special-symbol=“***” ark:ref ark:hyp ark,t:- | utils/scoring/wer_per_utt_details..
kaldi 설치 ## get kaldi file from github git clone https://github.com/kaldi-asr/kaldi.git ## step 1 cd tools/ extras/check_dependencies.sh CXX=g++-4.8 extras/check_dependencies.sh # 이 라인 실행시 g++ version 관련 오류 발생 sudo apt autoremove g++ sudo apt-get remove g++-4.8 sudo apt-get install g++ make make CXX=g++-4.8 # g++ version 확인해서 지정해줘도 오류 발생 make CXX=g++ # version 지정 x make -j 4 ## step 2 cd src/ ./configure..
wav2vec: unsupervised pre-training for speech recognition Abstract 목적: raw audio의 representation을 학습하기 위해 unsupervised pre-training 방법을 탐색 Method: 대량의 unlabeled audio data로 훈련된 wav2vec 사용 resulting representation을 사용하여 acoustic model training을 향상시키고자 함 simple multi-layer CNN을 학습시킴 noise contrastive binary classification task로 최적화 Result WSJ dataset: WER 36% 감소 nov92 test set: WER 2.43% 달성 Introduction Pre-training of neural networks 음성인식 모델들은 대량의 trans..