v1.0.0 게이트를 개발한 이후, 버디버드 앱을 통해 신규 오디오 데이터가 수집되었다.
이 보고서는 신규 데이터에 대해 앵무새 소리 여부 판별 모델(parrot-sound-gate v1.0.0)의 성능을 분석한 내용이다.
1. 용어
| 용어 | 뜻 |
|---|---|
| recall | 앵무 클립을 통과시킨 비율 |
| FAR | 비앵무 클립을 잘못 통과시킨 비율, 오통과율 |
| τ | 운영 임계값, 게이트 점수가 이 값 이상이면 통과 |
| AUC | 임계값과 무관한 분리 능력 지표, 1에 가까울수록 좋음 |
| mimic | 앵무가 목표 단어를 모사한 클립 |
| 보호자 기준음성 | 보호자가 목표 단어를 말한 클립, 4단계 모사 판정의 비교 기준 |
| unknown | 종 미상 앵무, prod에서 수집 |
| station | 가정에 설치된 녹음 단말 |
| 학습 뷰 | 매니페스트에서 제외 표시가 없는 클립 집합 |
| 그룹 격리 | 같은 가정이나 같은 영상의 클립이 학습과 평가에 함께 포함되지 않게 하는 평가 방식 |
2. 새로 추가된 데이터
v1.0.0를 프리즈한 이후, 데이터가 기존 2,318클립 → 18,185클립으로 약 7.8배 확대되었다.
2-1. 신규 15,867클립의 구성
| 라벨 | 수 | 설명 |
|---|---|---|
| 앵무 | 6,198 | unknown 5,897 + 확인 종 301 |
| 비앵무 | 9,669 | 잡음 7,249, station 사람 2,116, 보호자 기준음성 304 |
2-2. 신규 데이터의 특징:
- 실재 앱에서 수집된 데이터(s3-prod)의 대량 유입
- v1.0.0에사용된 학습데이터에서,
공개되어 있는 앵무새 오다오+직접 녹음오디오 데이터가 543클립(전체 2,322클립)으로 많은 비중을 차지했었다. - 이번에는 실제 앱애서 수집된 데이터가 다량 추가되었다.
- v1.0.0에사용된 학습데이터에서,
- 모두 16kHz mono. 클립 길이 중앙값 1.3초
3. 분류 성능
3-1. 데이터별 성능 비교
기존 데이터 열은 대부분 v1.0.0 학습에 사용한 클립이므로 성능을 과대평가한다.
| 지표, τ=0.0378 | 기존 데이터 2,318 | 신규 데이터 15,867 |
|---|---|---|
| 앵무 recall | 100% | 98.4% = 6,101/6,198 |
| 앵무 mimic recall | 100% | 93.2% = 1,011/1,085 |
| 비앵무 FAR 전체 | 0.17% = 3/1,817 | 10.5% = 1,013/9,669 |
| 보호자 기준음성 FAR | 0.0% = 0/126 | 33.6% = 102/304 |
| station 사람 FAR | 0.4% = 3/789 | 6.1% = 129/2,116 |
| 잡음 FAR | 0.0% = 0/902 | 10.8% = 782/7,249 |
| ROC-AUC | 1.000 | 0.992 |
3-2. Confusion matrix

그림 2: 기존 데이터. 학습에 포함된 클립이므로 참고용이다.

그림 3: 신규 데이터. 앵무 행은 recall 98.4%로 유지된다. 비앵무 행에서 1,013클립이 통과로 잘못 판정된다. 게이트의 존재 이유가 비앵무 차단이므로 비앵무 행의 통과 칸이 핵심 문제다.
3-3. 점수 분포로 본 원인

그림 4: 신규 데이터의 게이트 점수 분포. τ=0.0378(그래프에서 회색선)이므로, gate 점수가 0.0378 이상이면 앵무로 판단되어 통과된다.
- 색 대응: 앵무는 파랑과 초록 / 비앵무는 빨강, 분홍, 노랑
- 앵무와 비앵무 분포는 여전히 분리된다: AUC 0.992
- 모델의 구분 능력은 유지됨
- 문제는 임계값 위치
- 원인: v1의 τ는 소규모 기존 데이터의 점수 분포 기준으로 선정되었다.
- 신규 분포에서 비앵무 점수가 전반적으로 상승해, 같은 τ로는 오통과가 통제되지 않는 것으로 보인다.
3-4. 신규 데이터 종별 recall
| 분류군, 유형 | n | recall | 비고 |
|---|---|---|---|
| unknown, non_speech | 5,059 | 99.6% | prod 앵무 |
| unknown, mimic | 838 | 98.8% | |
| quaker, mimic | 81 | 100% | |
| lovebird, mimic | 80 | 100% | |
| quaker, non_speech | 26 | 100% | |
| lovebird, non_speech | 26 | 100% | |
| conure, mimic | 7 | 100% | |
| eclectus, mimic | 76 | 18.4% | 대형조, 유일한 recall 급락 |
| amazon 전체 | 5 | 40% | 대형조, 표본 부족 |
4. 발견된 문제점
문제 1. 보호자 기준음성 오통과
- 현상: 신규 기준음성 304개 중 102개 통과, FAR 33.6%
- 다음에 이어지는 단어 모사 판정은 앵무 소리를 보호자 목소리와 비교하므로, 보호자 목소리가 통과하면 완벽한 모사 성공으로 오판될 여지가 있다. 따라서 제일 중요한 문제이다.
- 원인: 운영임계값τ 정책의 구조적 결함
- v1의 운영임계값τ는 사람 음성 전체 FAR 2% 이하로 통과되도록 하는 값으로 산출되었다.
- 문제는 v1 당시 사람 음성의 87%가
사람의 일상적인 대화데이터였다. 보호자 기준음성 (보호자가 앵무새에게 가르칠 단어를 녹음한 것. 일부러 피치를 높여 말하는 등 일반 대화에 비해 차이가 있음.)에 대한 데이터가 적었기에 이에 대해 제대로 분류되지 못하는 것으로 추측된다.
문제 2. 잡음과 station 사람 오통과
- 현상: 신규 잡음 782클립과 station 사람 129클립이 통과
- 원인: 문제 1과 동일, τ가 기존 분포 기준
문제 3. 대형조의 mimic recall 급락
- 현상: eclectus mimic recall 18.4%, 유일한 recall 급락 분류군
- 원인: 대형조 발성이 음향적으로 사람과 유사하다.
5. 요약
v1.0.0은 현재 새로운 데이터에서 분류 성능이 떨어진다. 원인은 운영 임계값이다.
- 비앵무 오통과: 신규 비앵무 9,669클립 중 10.5% = 1,013클립 통과
- 사람 음성 전체 FAR 9.5%, v1 설계 목표는 2% 이하
- 가장 차단해야 할 보호자 기준음성 FAR 33.6%
- 앵무 검출 성능 유지: recall 98.4%.
- 앵무/비앵무 구분 성능 유지: AUC 0.992
- 임계값 설정이 문제일 뿐, 앵무 클립과 비앵무 클립은 서로 구분되어 있음.

그림 1: 비앵무 버킷별 오통과율. 초록 막대가 기존 데이터, 파랑 막대가 신규 데이터다. 기존 데이터는 대부분 학습에 포함되어 목표 이내이고, 신규 데이터는 세 버킷 모두 점선을 초과한다. 점선 2%는 사람 음성 전체 FAR의 v1 설계 목표이며 버킷별로는 참고 기준이다.
