감정 분석
카카오 i 클라우드의 감정 분석 API는 댓글과 같은 1개의 데이터뿐만 아니라 여러 턴으로 이루어진 대화 데이터를 분석하여 감정을 예측합니다. 입력된 대화 데이터 내 모든 발화의 감정을 분석하여 9가지 카테고리에 따른 감정과 감정 확률을 함께 반환합니다. 긍정, 부정, 중립과 같은 단순 감정 카테고리가 아닌, 실제 대화 내 감정 표현에 쓰일 수 있는 9가지 세분화된 카테고리로 게임, 영상 제작, 대화 분석 등 다양한 곳에 활용될 수 있습니다. 감정 확률(prob)은 소수점 형태의 백분율로 나타나며, 분석된 발화가 해당 감정을 나타낼 확률을 의미합니다. 감정 확률이 높을수록 발화를 대표하는 감정이라 할 수 있습니다.
이미지 감정 분석 대화 예시
“발화 1 | 발화 2 | 발화 3”으로 구성된 대화 세션의 감정 분석 API 사용 시나리오는 다음과 같습니다.
표 감정 분석 사용 시나리오 예시
구분 | 목적 | 과정 |
---|---|---|
시나리오 1 | 특정 발화의 감정을 분석하고자 함 | 1. “발화 1 | 발화 2 | 발화 3” 모두 입력 2. 발화 1,2,3의 감정 예측 결과 반환 3. 필요한 발화의 예측값만 사용 |
시나리오 2 | 대화 세션 내 모든 발화의 감정을 한번에 분석하고자 함 | 1. “발화 1 | 발화 2 | 발화 3” 모두 입력 2. 발화 1,2,3의 감정 예측 결과 반환 3. 모든 발화의 예측값 사용 |
여러 턴의 대화 데이터에서도 맥락을 통해서 감정을 분석하기 때문에 마지막 발화가 “응!!”으로 동일하다고 하더라도 맥락에 따라 다른 감정으로 분석될 수 있습니다.
- 너 지금 맛있는거 먹고 있다며??? → 응!! (좋음)
- 너 나한테 많이 화났어? → 응!! (싫음)
입력 형식과 제약사항
카카오 i 클라우드의 감정 분석 API는 대화 세션을 입력 형식으로 가집니다.
대화 세션은 여러 발화의 집합으로, 최대 5개까지 감정 분석에 활용됩니다. 전체 대화 자수 제한은 없으나 모델 입력 가능 범위인 512 토큰에 해당하는 범위까지 분석합니다. 감정 예측 시 분석 대상의 선행 발화를 컨텍스트로 활용하며, 분석하려는 발화 앞에 최대 4개의 발화를 고려해 감정을 예측합니다.
표 감정 분석 제약 사항
항목 | 설명 |
---|---|
대화 세션 | 여러 발화의 집합 - 수직선 기호( | )로 발화 구분- 입력 발화의 개수에는 제한이 없음 - 분석할 발화의 선행 발화만을 고려하여 발화 감정 예측 (뒤의 발화는 고려 X) - 조건 1: 각 발화는 앞의 발화 4개까지만 고려하여 모델 작동 (예. 6번째 발화는 2,3,4,5번째 발화를 고려함) - 조건 2: 각 발화는 입력 캐릭터 수 제한은 없으나, 앞에서부터 100개의 캐릭터만 사용됨 - 조건 3: 뒷 부분의 입력의 길이에 따라 현재 감정 예측 확률이 미미하게 변동할 수 있음 |
API 제공 기능
카카오 i 클라우드의 감정 분석 API의 지원 범위 및 제공 기능은 다음과 같습니다.
항목 | 설명 |
---|---|
지원 언어 | 한국어 |
모든 발화 감정 분석 | 입력된 대화 세션 내 모든 발화의 감정을 예측 - 감정 카테고리: 감정없음, 놀람, 두려움, 불확실, 슬픔, 싫음, 좋음, 지루함, 창피함 - 선행 발화를 바탕으로 분석하고자 하는 발화의 감정 예측 - 매번 모든 발화의 감정을 예측하여 속도가 느려질 수 있음 |
마지막 발화 감정 분석 옵션 | 입력된 대화 세션 내 마지막 발화의 감정만을 예측 - 추후 지원 예정 |