Audio-013, GLM-4-Voice: Towards Intelligent and Human-Like End-to-End Spoken Chatbot, Preprint 2024

다음 답변은 GLM-4-Voice 논문 기준이다.


1. 텍스트와 오디오가 동시에 되는 모델을 학습한 게 맞지?

맞다. 이 논문은 speech input + text/speech output 을 모두 지원하는 end-to-end spoken chatbot 모델을 제안한다. 논문에서는 이를 speech-language model(SpeechLM) 기반 spoken chatbot이라고 설명한다.

모델은 다음을 지원한다.

  • 입력:

    • 음성(speech)

    • 텍스트(text)

  • 출력:

    • 텍스트(text)

    • 음성(speech)

특히 inference 시에는:

  1. speech → text answer 생성

  2. speech + generated text → speech 생성

의 두 단계로 동작한다.

또한 “Streaming Thoughts” 방식으로 text token과 speech token을 번갈아 생성한다.


2. 학습할 때 텍스트와 오디오 모두 discrete token으로 변환해서 next token prediction 한 게 맞는지?

대체로 맞다.

논문은 speech를 discrete speech token으로 변환하고, 이를 text token과 함께 autoregressive next-token prediction 방식으로 학습한다.

특히 논문에서 명시적으로:

  • unified speech representation

  • next-token prediction for speech data

라고 설명한다.

즉:

  • text → text token

  • audio → speech token(discrete)

으로 변환한 뒤 하나의 transformer에서 autoregressive LM처럼 학습한다.


어떤 tokenizer를 썼는지

텍스트 tokenizer

논문에 구체적인 tokenizer 이름은 안 나온다.

다만:

  • GLM-4-9B-Base에서 초기화

  • vocabulary를 speech token 포함하도록 확장

했다고 설명한다.

따라서 text tokenizer는 사실상 GLM-4 계열 tokenizer를 사용한 것으로 보이지만, 논문에서 명시적으로 이름은 적지 않았다.


오디오 tokenizer

논문의 핵심 중 하나다.

사용한 것은:

  • Whisper-large-v3 기반 supervised speech tokenizer

  • vector quantization(VQ) bottleneck 추가

  • single codebook

  • 12.5Hz frame rate

  • 175bps bitrate

이다.

구조:

  • pretrained Whisper encoder

  • pooling layer

  • vector quantizer(VQ)

를 추가하여 speech token 생성.

즉 semantic tokenizer 계열이다.


3. 모델 학습 순서를 설명해봐

전체 순서

논문 구조는 크게:

  1. speech tokenizer 학습

  2. speech decoder 학습

  3. Stage 1: speech-text pretraining

  4. Stage 2: supervised fine-tuning

순서다.


텍스트 백본에서 시작했는지?

맞다.

논문은:

“We initialize GLM-4-Voice from GLM-4-9B-Base”

라고 명시한다.

즉:

  • 먼저 pretrained text LLM(GLM-4-9B)

  • 이후 speech token vocabulary 추가

  • 그 다음 speech-text continual pretraining

을 수행한다.

따라서:

  • 처음부터 speech+text jointly scratch training 아님

  • text backbone warm-start 방식

이다.


처음부터 텍스트&오디오 데이터를 학습했는지?

아니다.

순서는:

먼저:

  • pretrained text LLM 존재

이후:

  • speech capability 추가하는 continual pretraining 수행

이다.


Stage 1: Joint Speech-Text Pre-training

목적:

  • text LLM에 speech modeling ability를 주입

사용 데이터는 4종류:

  1. interleaved speech-text data

  2. unsupervised speech-only data

  3. supervised speech-text data(ASR/TTS)

  4. text-only pretraining data


데이터 비율 및 양

논문 Table 2 기준:

데이터Speech TokensText Tokens
Speech-Text interleaved455B279B
Speech-only31B-
ASR + TTS11B3.5B
Text-only-10T

그리고 학습 샘플링 비율은:

  • 30% text-only data

  • unsupervised speech: 1 epoch

  • supervised speech-text: 1 epoch

  • 나머지(interleaved speech-text)

라고 적혀 있다.

총 학습량:

  • 1 trillion tokens pretraining

이다.


Stage 2: Supervised Fine-tuning(SFT)

있다.

논문은 Stage 2를 별도로 수행한다.

사용 데이터:

  • multi-turn spoken dialogue

  • speech style controlled dialogue

이다.

또한:

  • speech output loss

  • text output loss

를 분리해서 학습한다.


Post-training 하는지?

한다.

여기서의 Stage 2 supervised fine-tuning이 사실상 post-training이다.

즉:

  • large-scale pretraining

  • conversational SFT(post-training)

2단계 구조다.

RLHF/DPO 같은 추가 alignment는 논문에 없다.


4. 오디오 데이터라고 하는 것은 어떤 형태인지?

둘 다 있다.


1) Plain speech-only 데이터

있다.

논문은:

  • 700k hours unsupervised speech data

를 사용했다고 명시한다.

이 데이터는:

  • pseudo label 생성

  • speech language modeling

에 사용된다.

즉 plain audio 기반 학습이 포함된다.


2) Speech-text paired data

이것도 있다.

논문은 supervised speech-text data로:

  • ASR

  • TTS

데이터를 사용했다고 명시한다.

또:

  • synthesized interleaved speech-text data

도 대규모로 생성했다.

따라서 데이터는:

  • speech only

  • ASR pair

  • TTS pair

  • synthetic speech-text interleaving

모두 사용된다.


5. 모델 평가를 어떻게 하는지

각 학습 스테이지마다 평가하는지?

사실상 그렇다.

논문은:

  1. tokenizer 평가

  2. decoder 평가

  3. base model 평가

  4. chat model 평가

를 각각 수행한다.


(1) tokenizer 평가

평가:

  • ASR accuracy

  • reconstruction quality

사용 metric:

  • WER

  • CER

  • VisQOL

  • MOSNet


(2) speech decoder 평가

평가:

  • speech reconstruction

  • bitrate-quality tradeoff


(3) Base model 평가

Stage 1 pretrained model 평가다.

평가 task:

  • speech language modeling

  • spoken question answering

  • ASR

  • TTS

즉 text/speech 양쪽 capability를 모두 평가한다.


(4) Chat model 평가

Stage 2 fine-tuned model 평가다.

평가:

  • conversational QA

  • knowledge QA

  • speech quality

  • speech-text alignment


텍스트와 오디오 벤치마크 모두 평가되는지?

맞다.

논문은:

  • speech generation

  • speech understanding

  • text generation

  • ASR

  • TTS

  • spoken QA

등을 모두 평가한다.

특히:

  • S→S (speech-to-speech)

  • S→T (speech-to-text)

두 setting 모두 평가한다.

텍스트-only 평가는 사실 없다고 봐도 될듯?


6. 논문의 동기 및 기여점은 뭐야

동기

논문의 핵심 문제의식은:

기존 speech chatbot이:

  • ASR → LLM → TTS pipeline

  • latency 큼

  • error propagation 존재

  • 감정/억양 표현 부족

이라는 점이다.

또한 기존 speech LM은:

  • speech data 부족

  • text LLM 지식 활용 어려움

문제가 있다고 본다.


핵심 기여점

논문 기준 핵심 기여는:

1. End-to-end spoken chatbot

  • speech input/output unified modeling

2. Single-codebook low bitrate tokenizer

  • 12.5Hz

  • 175bps

  • autoregressive generation 친화적


3. Text knowledge transfer

  • synthetic interleaved speech-text corpus 생성

  • text pretraining corpus를 speech domain으로 확장


4. Large-scale speech-text pretraining

  • 1T tokens 규모

  • speech-only + speech-text + text jointly training


5. Streaming Thoughts

  • text/speech token interleaved generation

  • low-latency speech response


6. Human-like speech control

  • emotion

  • intonation

  • dialect

  • speaking rate

등 제어 가능하도록 fine-tuning.

Reference

댓글