분위기가 아니라 운율을 측정합니다
Vocast가 음높이, 쉼, 문장 끝맺음을 따로 채점하고, 모든 렌더를 그 전부로 게이트하는 이유.
대부분의 음성 도구는 숫자 하나, 보통 단어 정확도를 보고하고 그것을 품질이라 부릅니다. 단어 정확도는 단어가 맞다는 것만 알려 줍니다. 전달이 사람다운지에 대해서는 아무것도 말해 주지 않습니다. 목소리는 철자가 완벽하면서도 서식 편지처럼 읽힐 수 있고, 대부분의 도구가 배포하는 것이 정확히 그 버전입니다. 그들의 단일 지표가 승인하는 버전이기 때문입니다.
Vocast는 정반대의 접근을 취합니다. 우리는 자연스러움을 각각 따로 측정할 수 있는 속성으로 나누고, 각각에 게이트를 걸며, 어느 한 속성이라도 후퇴하면 렌더 전체를 실패시킵니다. 하나의 차원에서 조용히 무너지면서 평균적으로 듣기 좋다는 이유로 통과하는 테이크는 없습니다.
운율이라는 북극성
대표 지표는 운율 자연스러움 점수(PNS)입니다. 전반적 품질을 짐작하는 모델의 분위기 평점이 아닙니다. 우리가 짚어낼 수 있는 세 가지를 합성한 값입니다.
- 음높이 역동성. 멜로디가 얼마나 움직이는지, 그리고 그 폭이 긴 구절에 걸쳐 살아남는지, 아니면 마흔 번째 문장쯤에서 단조로움으로 좁아지는지입니다.
- 쉼의 리듬. 침묵이 문장을 무시한 고정 타이머가 아니라, 실제로 독자가 숨을 쉴 절 경계에 떨어지는지입니다.
- 끝맺음 모양. 마지막 단어가 매번 똑같은 딱딱한 정지로 잘리는 대신, 사람이 잦아들 듯이 사그라지는지입니다.
이 각각은 같은 문장을 읽은 사람을 기준으로 벤치마크되므로, 목표는 추상적 이상이 아니라 실제 사람이 그 텍스트로 실제로 해낸 것입니다. 완벽하게 또렷한 렌더도 PNS를 실패할 수 있고, 그럴 때 실패는 읽어낼 수 있습니다. 어느 축이 떨어졌는지 보이기 때문입니다.
점수 하나로는 부족합니다
PNS는 더 좁은 지표들의 집합 위에 자리합니다. 각 지표는 실제 대본에서 목소리가 잘못되는 특정 방식을 잡아냈기 때문에 추가되었습니다.
- 경계 호흡. 문장 사이의 작은 숨과 가라앉음을 채점해서, 절과 절이 생각할 틈 없이 붙어 버리지 않게 합니다.
- 미세 품질. 단어 끝맺음, 까다로운 발음, 구절 안의 작은 숨, 즉 가까이서 들으면 사람답게 읽히는 세부를 지켜봅니다.
- 강세 에너지. 단어에서 강세 음절이 실제로 밀리는지 확인해서, 강조가 밋밋해지지 않고 의미를 실어 나르게 합니다.
회의가 아니라 CI에서 게이트를 겁니다
이 숫자들은 누군가 읽고 고개를 끄덕이는 리포트가 아닙니다. 골든 테이크 집합을 대상으로 지속적 통합에서 실행되며, 어떤 게이트든 떨어뜨리는 변경은 깨진 테스트와 똑같이 빌드를 실패시킵니다. 모든 렌더는 자신의 점수표를 함께 지니고 다닙니다.
render.score
sim 0.931 pass (사람 기준선 0.909)
cer 0.0% pass
mos 3.50 pass (기준 3.24)
pns 0.88 pass (게이트 0.82)모델을 개선할 때, 우리는 후보 구성들의 무리를 돌리고 전부 채점한 뒤, 클립 하나에서 듣기 좋은 것이 아니라 지표에서 이기는 것을 남기는 방식으로 합니다. 게이트는 “이 테이크는 어딘가 어색해”를 우리가 쫓을 수 있는 숫자로 바꿔 줍니다.
우리는 밋밋한 테이크를 배포하느니 차라리 거부하겠습니다.
