3 minute read

공감 대화 벤치마크 실험(감정분류, 감정응답) 설계 과정 정리. 감정 음성 데이터 확보 → Kanana TTS 감정 톤 제어 확인 → 과제 설계.


배경

log-00에서 감정 실험을 “모달리티 고유 정보 과제”로 설계했다. 지식 실험은 모든 모달리티에 동일한 정보를 넣는 정보 대칭 조건이었다면, 감정 실험은 오디오에만 존재하는 신호(운율, 감정 톤)가 성능에 영향을 주는지 확인하기 위한 실험이다.

[추후 메모] 이 framing(“모달리티 고유 정보 과제”)은 task 사전 분류로 결과를 predict하는 tautology 위험이 있다는 점을 REMODE 외부 피드백(feedback-3)에서 지적받았다. 레이블이 아니라 차원 점수(prosody 의존도, lexical density 등)로 재구성하는 방향으로 재검토 중.

이를 위해서는 감정이 담긴 음성 데이터가 필요하다. 처음에는 공개된 한국어 감정 음성 데이터셋을 활용하려 했으나, 확보에 문제가 있어 Kanana-o의 TTS 기능으로 직접 생성하는 방향으로 전환했다.


감정 음성 데이터 확보 문제

한국어 감정 음성 데이터셋을 탐색한 결과:

KEMDy20 (ETRI, 2020)

  • 멀티모달(음성 + 텍스트 + 생체신호) 감정 데이터셋
  • annotation(감정 레이블, Valence, Arousal)과 생체신호(EDA, IBI, TEMP)는 포함되어 있으나, wav 파일이 비어있었다. ETRI에 확인한 결과 음성 파일은 2026년 6월에 업로드 예정.

Technonia/korean_audio_emotion (HuggingFace)

  • 9,813샘플, 오디오 포함. 그러나 감정 레이블이 전부 “happiness” 하나뿐이라 감정 분류 실험에 사용 불가.

K-EmoCon (Park et al., 2020)

  • 16쌍 토론 세션 녹음, 총 172분 분량. 오디오는 있으나 10분 단위 연속 녹음이라 발화 단위 분리가 되어있지 않다. 직접 세그멘테이션하면 쓸 수 있지만 작업량이 크다.

바로 쓸 수 있는 한국어 감정 음성 데이터셋이 마땅치 않은 상황이다. 이에 따라 Kanana-o의 TTS 출력으로 감정 음성을 직접 생성하는 방향으로 전환했다.


Kanana TTS 감정 톤 제어

Kanana API에는 별도의 감정 파라미터가 없다. voice 프리셋은 preset_spk_1, preset_spk_2 두 가지만 제공된다. 그러나 모델 카드에는 paralinguistic cues(운율, 감정) 해석 및 생성이 강점으로 명시되어 있고, 프롬프트에 자연어로 감정 톤을 지시하면 음성 출력에 반영된다.

같은 대화(positive-001, “현재 내 삶에 만족해”)에 대해 톤 지시를 바꿔가며 테스트했다.

테스트 대화 (positive-001)

A: 요즘 문득 생각해보니까 내 삶 나쁘지 않더라. 현재 내 삶에 꽤 만족해. B: 오, 그래? 그 말 들으니 나도 기분 좋다. 요즘 다들 힘들다고 하는데 넌 어떤 점이 좋아? A: 음… 일단 우리 회사 위치가 좋잖아. 그리고 동네도 살기 좋고. 이런 게 삶의 질을 많이 올려주는 것 같아. B: 맞아. 출퇴근 시간이랑 주변 환경이 진짜 중요하지. A: 그러게. 가끔 미래가 불안하기도 한데, 그래도 지금 내가 가는 길이 맞다는 느낌이 들어. B: 와, 대단하다. 그 나이에 그런 확신을 갖는 게 쉽지 않을 텐데.

톤 지시 없이 (중립)

프롬프트: “다음 대화를 읽어줘.” 결과: 55.8초. 담담하고 중립적인 톤.

슬픈 톤 지시

프롬프트: “다음 대화를 슬프고 힘없는 톤으로 읽어줘. 목소리에 힘이 빠진 느낌으로, 우울하게.” 결과: 87.9초. 느리고 힘없는 톤. 같은 텍스트인데 길이가 1.6배로 늘어났다.

같은 텍스트에 톤 지시만 바꿔도 음성의 속도, 억양, 전반적 분위기가 확연히 달라진다. 이를 통해 감정 실험에서 필요한 “감정이 담긴 음성” 아티팩트를 Kanana TTS로 생성할 수 있음을 확인했다.


데이터셋: KoED

KoED(Korean Empathetic Dialogues)(KUNLP, IJCNLP-AACL 2025)를 사용한다. 영어 EmpatheticDialogues를 기반으로 한국 문화 특화 감정을 확장한 데이터셋이다.

항목 내용
규모 1,360개 대화, 34개 감정 카테고리 (카테고리당 40개)
특징 ‘정’, ‘한’ 등 한국 고유 감정 개념 포함
평가 프레임워크 5차원 (감정 탐색, 해석, 정서적 반응, 감정 정렬, 문화적 적절성)
형식 텍스트 전용 JSON (대화 턴 구조)

현재 30개 샘플이 추출되어 있다(positive 8 / negative 8 / complex 8 / cultural 6, 16종 감정). 감정 축을 4개(기쁨/슬픔/분노/중립)로 재구성하고, TTS 톤 차이가 확실한 샘플로 재샘플링할 예정이다.


과제 설계

두 가지 과제를 병행한다.

과제 1: 감정 분류

대화 컨텍스트를 제시하고 화자의 감정을 분류하도록 요청한다. 4지선다(기쁨/슬픔/분노/중립)로, 지식 실험의 KMMLU 4지선다와 동일한 평가 구조를 유지한다. 텍스트만으로도 감정이 명확한 경우가 있어 모달리티 차이가 크지 않을 수 있지만, 기본 비교 축으로 활용한다.

과제 2: 공감 응답 생성

대화 컨텍스트를 제시하고 다음 턴의 공감 응답을 생성하도록 요청한다. 생성된 응답의 공감 품질을 LLM-as-a-judge로 평가한다. 감정 톤이 담긴 음성을 들었을 때 더 공감적인 응답이 나오는지가 핵심 비교 지점이다.

실험 조건

조건 입력 과제 1 (분류) 과제 2 (생성)
text 대화 텍스트 그대로 O O
image 텍스트 렌더링 PNG O O
audio (중립) 중립 TTS 음성 O O
audio (감정) 감정 톤 TTS 음성 O O

지식 실험에서는 text > audio가 일관적이었다. 감정 실험에서는 audio(감정) 조건에 운율 정보가 추가되므로, 이 패턴이 줄어들거나 역전되는지 확인한다.


남은 것

  • KoED 원본에서 4축 기준 재샘플링
  • 감정 톤 매핑 확정 (감정 레이블 → 프롬프트 톤 지시 문구)
  • 아티팩트 생성 파이프라인 (텍스트 → 이미지 렌더링 + TTS 음성 생성)
  • LLM-as-a-judge 평가 프롬프트 설계
  • runner 구현

References

  1. KoED: Korean Empathetic Dialogues. KUNLP. IJCNLP-AACL 2025. [GitHub]
  2. KEMDy20: Korean Emotion Multimodal Database in 2020. ETRI. [다운로드]
  3. K-EmoCon: a multimodal sensor dataset for continuous emotion recognition. Park et al. Scientific Data, 2020. [Zenodo]
  4. Kanana-1.5-o API Documentation. [HuggingFace]