Intelligence Software

Human-Robot Dialogue System

2_Human-Robot Dialogue System.jpg

Human-Robot Dialogue System 이란?

 

음성 대화 시스템은 사용자 음성 입력의 정제/강화(Audio Enhancement), 음성 인식 및 의도 파악(ASR/NLU), 입력 목표 달성을 위한 대화 구성(DM), 응답 생성(NLG) 및 음성 합성(TTS)을 통한 사용자 피드백의 각각의 요소 기술들이 긴밀히 연결되어 동작하는 첨단(state-of-the-art) 시스템 입니다. 특히 로봇에서의 대화 시스템은 로봇이 자신만의 페르소나를 가지고 자연스럽게 사용자와 교감하는 주요한 방식의 하나로, 로보틱스랩에서는 어떤 환경에서도 사용자 입력을 강인하게 입력 받을 수 있는 음성 전처리, 다양한 사용자 발화/입력에 대한 폭넓은 대화 처리와 로봇의 캐릭터를 나타내는 음성 합성 기술을 중점적으로 연구하고 있습니다. 

2_Human-Robot Dialogue System_5.png

[음성 대화 시스템 구조]

 

1. 딥러닝 모델을 활용한 음성 전처리 관련 기술 

 

로보틱스랩에서는 다양한 실제 환경에서 로봇과 사람의 원활한 상호작용을 위하여 방향 추정, 잡음 제거 등 다양한 분야의 연구를 진행합니다. 로봇에서 획득한 소리에서 유의미한 특징을 추출, 비교, 예측하여 각 모델의 기능에 맞는 결과를 얻기 위해 CNN, RNN 및 Attention 기반 모델 등을 학습하고 추론합니다. 더불어 다양한 서비스 환경에 대응하기 위하여 random noise, delay, reverberation 등 acoustic data augmentation 을 연구합니다. 

 

 

Acoustic Echo Cancellation & Noise Reduction model

로봇의 관점에서 알 수 있는 잡음(echo)과 알 수 없으나 서비스 환경에 따라 예상 가능한 잡음(noise)을 제거하기 위한 기능입니다. 음성 데이터의 청음 품질과 인식 모델의 인식률을 같이 높이기 위해 의 PESQ, SI-SNR, WER, Accuracy 등의 다양한 지표를 만족하는 방법을 연구합니다.

[AEC & NR 모델 성능]

 

Speech Localization and Detection model

로봇의 카메라나 센서로 관측되지 않는 발화자나 소리의 위치정보를 확인하기 위한 기능입니다. 멀티채널 마이크를 활용하여 로봇을 기준으로 전,후,좌,우(Azimuth)와 위,아래(Elevation) 방향정보와 발화 확률을 실시간으로 추론합니다.

2_Human-Robot Dialogue System.png

Case 1) 로봇 우측면에서 말한 경우

2_Human-Robot Dialogue System_2.png

Case 2) 로봇 정면에서 말한 경우

 

Multi-modal research & Edge computing development

극심한 소음 환경에서 원활한 로봇 대화 서비스를 위해 음성 정보 뿐만 아닌 시각 정보를 같이 사용하여 관심 화자의 발화 구간 검출, 잡음 음성 향상 등의 시청각 음성 전처리 관련 기술을 연구합니다.

개발된 딥러닝 모델을 로봇에서 동작 시키기 위해 다양한 Neural network accelerator 를 활용하여 실시간 동작을 보장합니다.

 

 

 

2. 음성 대화 시스템

 

사용자 음성 입력은 일반적으로 자연어 처리(NLU) 엔진을 통해 의도(Intent)와 개체(Entity)로 분석 됩니다. 그러나 때때로 이러한 입력은 음성으로 표현되지 않는 여러 상황 정보가 생략된 채 전달 되거나 사용자의 습관에 따라 명확하지 않은 형태로 전달 되기도 합니다.

 

로보틱스랩에서는 이러한 사용자 입력을 NLU 모듈의 개체명 인식 개선과 대화 로직(Dialog Manager)를 통해 의도와 개체를 구체화(task-oriented)하여 로봇이 수행 가능한 명령으로 변환 합니다. 이렇게 완성된 사용자 입력은 자연어 생성(NLG)-음성 합성 모듈(TTS)을 통해 사용자에게 필요한 정보를 제공하게 됩니다. 또한 카카오톡과 같은 외부 플랫폼을 활용한 로봇 서비스용 챗봇 시스템 개발과 다양한 플랫폼을 더 쉽고 재미있게 사용할 수 있는  대화 시스템을 개발하고 있습니다.

2_Human-Robot Dialogue System_3.png

[음성대화시스템 Workflow]

3. 음성합성 (TTS)

 

TTS(Text-to-Speech, 음성합성)는 문장(Text)을 분석하여 사람이 말하는 것과 같은 음성을 생성하는 기술 입니다. 로보틱스랩에서는 입력된 문자열을 음소 단위로 분해한 후 발음, 어절 정보 등을 고려하여 문장을 분석하고(Text Analysis), 분석된 문장을 통해 화자의 스타일(pitch, duration, tone 등)을 학습합니다(Style Model). Seq2Seq(Sequence-to-Sequence), Attention으로 이루어진 Transformer 등과 같은 모듈을 이용해 spectrogram을 예측(Acoustic Model), 이를 기반으로 Vocoder를 통해 음성 데이터를 생성합니다(Neural Vocoder). 또한 이러한 기술을 바탕으로 감정표현을 통한 생동감 있는 TTS(Text-to-Speech) 기술이 적용된 로봇을 통해 고객에게 새로운 즐거움을 선사하고자 합니다.

2_Human-Robot Dialogue System_4.png

[음성합성 workflow]