JINWOOJUNG

BAT: Learning to Reason about Spatial Sounds with Large Language Models 본문

NLP, LLM, Multi-modal

BAT: Learning to Reason about Spatial Sounds with Large Language Models

Jinu_01 2025. 7. 4. 12:17
728x90
반응형

Paper

https://arxiv.org/abs/2402.01591

 

BAT: Learning to Reason about Spatial Sounds with Large Language Models

Spatial sound reasoning is a fundamental human skill, enabling us to navigate and interpret our surroundings based on sound. In this paper we present BAT, which combines the spatial sound perception ability of a binaural acoustic scene analysis model with

arxiv.org

 

Introduction

BLIP-2, CLIP, GPT-4V 등 LLMs는 단순히 언어 데이터 처리를 넘어 VQA(Visual Question Answering), Image Captioning과 같은 Image Understanding Task를 수행하는 Multi-modal Language Models로 발전되고 있다. 또한, Audio Language Models 연구도 활발히 진행 중이지만, Spatial Audio를 처리하는 연구는 없다. 사람은 Binaural Hearing Ability 즉, 2개의 귀를 이용해서 소리를 듣기 때문에, 소리의 종류 뿐만 아니라, 소리에 대한 거리/방향 정보 및 다중 소리에 대한 식별 능력을 가지고 있다. 따라서 Spatial Audio Perception and Reasoning 능력이 모델에게도 요구된다.

 

본 논문에서는 3차원 환경에서 소리에 대해 추론하도록 설계된 최초의 Spatial Audio 기반 LLMBAT를 제안한다. 동시에 Spatial Audio-based Question answering Dataset인 SPATIALSOUNDQA를 제공한다. 잔향을 고려한 3D 음향 공간을 활용하기 위한 SoundSpace2.0 환경에서, AudioSet(Gemmeke et al., 2017)을 음원으로 하여 다얗안 레벨의 복잡도에서 Spatial Audio Understanding을 학습하고 평가할 수 있도록 설계되었다.

 

BAT의 성능은 Spatial Audio 정보를 정확히 Encoding 하는 능력에 의해 결정된다. 본 논문에서는 Multi-task Spatial Encoder인 SPATIAL-AST를 제안한다. 이는 음원 검출 및 공간적 위치화(Spatial Localization) 뿐만 아니라, 거리 인식에도 우수한 Encoder이다.

 

본 논문의 기여도는 다음과 같다.

  • Spatial Audio 기반 QA Datset인 SPATIALSOUNDQA를 처음으로 제안한다. 이를 통해 3D Audio Understading Task를 수행할 수 있도록 한다.
  • SPATIAL-AST, a Binaural Spatial Audio Encoder를 통해 사운드 이벤트 감지, spatial localization 및 거리 추정을 공동으로 수행할 수 있도록 한다.
  • SPATIAL-AST와 LLaMA-2 LLM을 결합한 BAT를 제안한다. 이는, 모델에게 3-D 환경 내에 위치한 여러 사운드 소스에 대한 복잡한 추론 질문에 답변할 수 있는 능력을 가질 수 있도록 한다.

 

SPATIALAUDIOQA

SPATIALSOUNDQA는 Spatial Audio 기반 QA Dataset으로 다음과 같은 특징을 가진다.

  • Spatial Audio의 복잡성 강조
  • Spatial Audio 인식 및 추론
  • Visual Influences로 부터 자유로움

Spatial Audio Generation

Spatial Audio는 SoundSpace2.0을 통해서 생성한다. SoundSpace2.0은 다양한 임의의 음원-Agent 위치 설정을 통해 현실적인 Acoustic Reverberation을 생성할 수 있다. 따라서 Spatial Localization, Orientation 등 Ground-Truth를 Sound Generation Parameter를 통해 다양하고 쉽게 생성할 수 있다. 


https://jinwoo-jung.tistory.com/162

 

SoundSpaces 2.0: A Simulation Platform for Visual-Acoustic Learning

Paperhttps://arxiv.org/abs/2206.08312 SoundSpaces 2.0: A Simulation Platform for Visual-Acoustic LearningWe introduce SoundSpaces 2.0, a platform for on-the-fly geometry-based audio rendering for 3D environments. Given a 3D mesh of a real-world environment

jinwoo-jung.com


 

본 논문에서는 Vision 정보가 없는 환경에서 청각적 위치화로 인한 인지적 부조화를 줄이기 위해, 음원과 Agent를 동일한 방 안에 위치시킨다.

 

Sound Sources의 경우 AudioSet(Gemmeke et al., 2017)을 Sampling해서 사용한다. 기존 Spatial Audio Datsets는 음악, 음성, 가정 소리로 제한되어 있다면, AudioSet는 2백만개의 10초짜리 YouTube 클립으로 구성되며, 527개 타입으로 Annotation되어 있다. 이때, 시각적 정보가 있어야 추론가능한 클립은 제외하였으며, 노이즈, 에코 등 노이즈와 관련된 음원은 제거하여 최종적으로 355개의 타입의 데이터를 다루게 된다. 

 

Question-Answer Pair Generation

SPATIALSOUNDQA는 Spatial Audio Perception and Reasoning에 초점을 둔 다양한 QA쌍을 포함한다. 해당 데이터 셋은 다음과 같은 구조를 가진다.

$$ \left\{ audio, question, answer\right\}$$

 

SPATIALSOUNDQA는 아래와 같이 간단한 인식부터 복잡한 추론까지 다양한 난이도로 구성되어 있다. 이때, 질문의 다양성을 위해 GPT-4 기반으로 생성한다. 정답의 경우 rule-based 접근법에 따라 균일한 형태로 생성된다.

Sound Event Detection(Type A&C)

인식된 Audio의 Class를 추론하는 Task이다.

질문은 "What sound events can you detect in the audio recording?"과 GPT-4 기반의 Paraphrases(표현을 바꾼 질문 생성)으로 이뤄진다.

답변은 Audio Clip Class 중 하나로 구성된다.

 

Direction and Distance Estimation(Type B&D)

Sound Source의 방향과 거리를 추론하는 Task이다.

GT는 3D 공간을 8개로(left/right, front/behind, above/below) 나누고, 거리는 0~10m까지 0.5m 단위로 Discrete하게 나뉜다.

 

질문은 "Where is the sound of the music coming from?"과 GPT-4 기반의 Paraphrases(표현을 바꾼 질문 생성)으로 이뤄진다.

답변은 $ \left\{ left/right, front/behind, above/below, distance\right\}$로 구성된다.

 

Sound Event Detection(Type E)

Type E는 2개의 서로 다른 Sound Source가 서로 다른 거리와 방향에서 위치하는 상황에서, 2가지 Sound Source가 섞였을 때, Spatial Differences를 구분하는 Task이다.

 

질문은 "What is the sound on the left side of the sound of dog barking?"

답변은 [ Yes/No ]로 단순화된다.

 

질문에서 알 수 있듯이 이는 Perception, Compolex Reasoning 모두를 요구한다.

 

하지만, 모델이 학습하는 과정에서 이러한 데이터 셋은 존재하지 않는다. 따라서 Type E Task를 통해 모델의 in-context learning 능력을 평가할 수 있다. 이때, in-context learning이란 학습 데이터에 존재하지 않지만, 추가적인 학습 없이 입력된 정보를 기반으로 Task를 수행할 수 있는 능력을 의미한다.

Method

본 논문에서 제안하는 BAT는 Figure 1과 같다. BAT의 Front-End인 Spatial-AST가 Audio Encoder로써 동작하고, Spatial-AST의 Output을 LLaMa 2에서 Text Embedding과 통합하여 Spatial Reasoning Ability를 구축하는 구조이다.

 

Spatial Audio Enocder: SPATIAL-AST

  • Front-End

 

Input Spatial Audio $x(n)$은 Time-domain Signal이다. 이를 아래 식을 기반으로 Short-Time Fourier Transform(STFT)를 활용해 Frequecy Domain $X(t,f)$로 변환한다. 이때, $w(n)$은 N-point Window Function을 의미하는데, $x(n)$에 대해서 짧은 Frame 단위로 나눠서 변환함을 의미하고, $i$는 Binaural Recording이기 때문에 Left/Right를 의미한다.

$$X_i(t,f)=\sum_{n=0}^{N-1}x_i(n)w(n-t)e^{-j\frac{2\pi fn}{N}}, i\in {1,2}$$

 

이후, Mel-Spectrogram과 Interaural Phase Difference(IPD)를 $X_i(t, f)$를 기반으로 계산하게 된다.

Mel-Spectrogram은 Frequency-Time 표현 방식 중 하나로, 사람의 청각이 주파수를 인식하는 방식과 유사한 'Mel Scale'로 변환하는 것이다. 이때, $melW$는 $M$-bin Mel filter bank를 의미한다. 

$$S_i(t, m) = log (\left | X_i(t, f)\right |^2 \times melW)$$

 

 

IPD는 양쪽 귀의 위상 차이를 계산하는것이다. 

$$IPD(t, f) = \angle \frac{X_2(t, f)}{X_1(t, f)}$$

 

이때, 위상은 주기($2\pi$)를 가지기 때문에, 위상차가 범위를 벗어나면 다시 감싸지게(wraparound) 된다. 예를 들어, 1.5주기의 경우 0.5주기로 변하게 된다. 이는 불연속적인 위상차이로 표현되기에 계산 시 수치적 불안정성을 초래한다. 따라서 동일한 주기지만 연속성을 가지는 $cos, sin$ 함수를 적용시키고, $melW$로 가중하여 Mel-Spectrogram의 차원과 정렬한다. 

 

최종적으로 Spatial-AST의 Output $Z$는 다음과 같다.

$$Z = \left [ S_1; S_2; cos(IPD) \times melW; sin(IPD) \times melW \right ], Z \in \mathbb{R}^{4 \times T \times M}$$

 

  • Backbone

 

$Z$에 대해서 3x3 Convolution, Batch Normalization, GELU를 적용한다. 이를 통해, 차원의 정보를 융합하여 표현할 수 있다. 이후, Patch-Embed CNN을 적용하는데, 이는 Transformer의 Input으로 Embedding하는 과정이다. 16x16 Kernel을 통해 하나의 Patch Token이 되고, 동일한 크기로 Stride를 적용해서 겹치는 부분 없이 Tokenization 하여 Audio Tokens를 생성한다. 

 

이후, Audio Tokens 앞에 3개의 [CLS] Tokens를 추가하는데, 이는 Audio's Category, Distance, Direction을 각각 추출하기 위한 목적이다. 최종적인 Embedding Tokens는 12 Layer Transformer Encoder Blocks를 통과하게 된다. 이후, 각 [CLS] Tokens에 대해서 목적이 다르므로, 개별적인 Linear Lyaers를 통해 예측값을 얻는다. 

 

Spatial-AST는 Sound Detection, Distance Prediction, Directional Prediction 3가지 Task를 위해 Pre-train 된다. 이때, Directional Prediction은 Azimuth(방위각), Elevation Angle(고도각)으로 세분화된다. 이때, Cross-entropy Loss를 기반으로 학습되며, 이산화를 위해 Distance는 0.5m, Angle은 1도로 이산화된다.

$$L = \lambda_1L_{cls} + \lambda _2L_{dis} + \lambda _3L_{doa}$$

 

BAT: A Model for Reasoning about Spatial Sounds

 

하나의 환경에서 다중 음원에 대한 공간적 추론 능력을 부여하기 위해, SPATIAL-AST와 LLaMA-2 7B LLM을 융합한다. Projection Module에 의해 Spatial-AST의 Output Tokens는 LLaMA-2의 Input Text EMbedding Space로 Mapping 된다. 

 

BAT의 Fine-tuning의 목적은 오디오와 질문쌍에 따른 답변 텍스트를 예측하는 것이다. 따라서 모델은 각 Token의 위치에서 Cross-entropy Loss를 통해 새로운 정답 토큰에 대한 예측확률을 최대화하고자 한다. 즉, Language Model이 다음 정답 텍스트 토큰을 예측하는 것처럼, 오디오와 질문쌍에 대해서 답변 텍스트를 예측한다. 이를 수식적으로 표현하면 다음과 같다.

$$P_\theta \left ( y_\tau |y_{\tau -1}, \cdots, y_1; a_l, a_{l-1}, \cdots, a_1 \right )$$

이때, $a_l$은 Audio Embedding의 $l$번째 Token, $y_\tau$는 Text Output의 $\tau$번째 Token을 의미한다.

 

BAT는 Model의 Task를 Table 2와 같이 단계적으로 구성하였다. $A, B$는 단일 음원 인식, $C, D$는 다중 음원 인식, $E$는 추론 Task를 통합한 것으로, 다중 음원에 대한 공간적 관계를 추론하는 Task이다. 

728x90
반응형