KR20100111164A - 사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법 - Google Patents

사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법 Download PDF

Info

Publication number
KR20100111164A
KR20100111164A KR1020090029589A KR20090029589A KR20100111164A KR 20100111164 A KR20100111164 A KR 20100111164A KR 1020090029589 A KR1020090029589 A KR 1020090029589A KR 20090029589 A KR20090029589 A KR 20090029589A KR 20100111164 A KR20100111164 A KR 20100111164A
Authority
KR
South Korea
Prior art keywords
information
voice
conversation history
conversation
user
Prior art date
Application number
KR1020090029589A
Other languages
English (en)
Inventor
김정자
노예진
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020090029589A priority Critical patent/KR20100111164A/ko
Publication of KR20100111164A publication Critical patent/KR20100111164A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)

Abstract

사용자의 발화 의도를 파악하기 위한 음성 대화 처리장치 및 음성 대화 처리방법이 개시된다. 본 발명의 일 실시예에 따른 음성 대화 처리장치는 음성 특징정보, 의미정보 및 담화 이력정보를 이용해 대화 이력명세 정보를 생성하여 입력된 사용자 발화의 의도를 파악한다.
음성, 인식, 대화, 미등록어, 파악, 대화 시스템, 인터랙션, 인터페이스

Description

사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법 {Spoken dialogue processing apparatus and method for understanding personalized speech intention}
본 발명의 일 양상은 음성 대화 처리기술에 관한 것으로, 보다 상세하게는 사용자로부터 입력 받은 발화의 의도를 파악하는 음성 대화 처리기술에 관한 것이다.
음성 대화 처리기술은 특정한 목적을 달성하기 위해 이루어지는 대화를 이해하고 적절한 응답을 찾아 제시해 주는 지능형 기술이다. 이러한 음성 대화 처리기술을 구현하기 위해서는 각 발화에 숨겨진 화자의 의도를 찾아내는 의도 분석 기술과 적절한 시스템 응답을 만들어내기 위한 의도 예측 기술이 모두 필요하다.
그러나 음성 대화 처리시에, 장치에 저장되어 있는 어휘셋에 포함되지 않은 어휘인 미등록어(Out Of Vocabulary, OOV)와 연관된 사용자 발화 의도를 파악하기는 쉽지 않다. 특히, 사용자 발화는 사용자의 지역, 연령, 성별 등에 따라 사용자 개인마다 상이하다. 따라서 사용자 발화 의도를 파악하기는 더 어려운 일이다.
일 양상에 따라, 어휘셋에 포함되지 않은 어휘와 연관된 사용자 발화 의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법을 제안한다.
일 양상에 따른 음성 대화 처리장치는, 입력된 사용자 발화 음성을 분석하여 음성의 형태를 나타내는 음성 특징정보 및 음성의 내용을 나타내는 의미정보를 추출한다. 그리고, 음성 특징정보, 의미정보 및 사용자와의 인터렉션을 통해 입출력되는 담화 이력을 나타내는 담화 이력정보를 기초로 사용자 발화 이력을 나타내는 대화 이력명세 정보를 생성하고 입력된 사용자 발화의 의도를 파악한다.
이때 대화 이력명세 정보는 음성 특징정보, 의미정보 및 참조정보를 포함하고, 참조정보는 대화 이력명세 정보를 생성하거나 생성된 대화 이력명세 정보를 사용한 일시정보 및 사용 빈도 정보를 포함한다.
일 양상에 따른 음성 대화 처리장치는 미확인된 사용자 발화 음성이 입력되면 미리 저장된 대화 이력명세 정보를 검색하고 검색된 결과를 이용하여 입력된 사용자 발화의 의도를 파악한다.
일 실시예에 따르면, 음성 대화 처리장치는 어휘셋에 포함되지 않은 어휘와 연관된 사용자 발화 의도를 파악할 수 있다. 이에 따라 대화 인터페이스에 대한 발화 의도 인식률을 높이고 사용성을 증대시킬 수 있다.
나아가, 일 실시예에 따른 음성 대화 처리장치는 지역, 연령 또는 성별 등에 따라 상이한 사용자의 개인화된 사용자 발화 의도를 파악할 수 있다. 이에 따라 디바이스 자체는 대량 생산된 획일적인 제품이지만, 소비자는 디바이스를 개인화된 디바이스로 인식하므로 소비자 맞춤형 제품의 효과를 낼 수 있다.
나아가, 음성 대화 처리장치가 대화 이력명세 정보를 이용하여 사용자의 발화 의도를 파악하므로, 사용자가 디바이스를 동작시키기 위한 복잡한 시스템 명령의 학습을 하지 않고도 손쉽게 디바이스를 사용할 수 있도록 하는 지능형 디바이스 기반 기술을 제공할 수 있다. 그리고, 다수의 사용자로부터 예상하지 못한 말뭉치를 획득하여 공통의 자원을 생성할 수 있다.
이하에서는 첨부한 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 정보서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 음성 대화 처리장치의 사용자 발화 의도 파악을 설명하기 위한 예시도이다.
일 실시예에 따른 음성 대화 처리장치는 음성 인터페이스를 이용하여 특정 태스크를 수행하기 위한 장치일 수 있는데, 모바일 폰, TV, MP3P, 로봇일 수 있다. 특정 태스크는 사진 보기, 동영상 재생 등 장치가 수행할 수 있는 모든 기능을 포함한다. 또한, 음성 대화 처리장치는 모바일 장치 및 홈 네트워크 장치의 특정 기능을 수행하기 위한 대화 인터페이스일 수 있다. 또한, 음성 대화 처리장치는 복잡한 시스템 명령(언어) 학습이 필요한 개인화된 디바이스일 수 있다.
일 실시예에 따른 음성 대화 처리장치는 미확인된 사용자 발화 의도를 파악한다. 예를 들면, 음성 대화 처리장치는 장치에 저장되어 있는 어휘셋에 포함되지 않은 어휘인 미등록어(Out Of Vocabulary, OOV)와 연관된 사용자 발화 의도를 파악한다.
이때 음성 대화 처리장치가 파악하기 위한 사용자 발화는 사용자의 지역, 연령, 성별 등에 따라 사용자 개인마다 상이하다. 예를 들면, 사용자가 도 1의 좌측에 도시된 바와 같이 "사진 보여줘"라고 발화한 경우, 음성 대화 처리장치는 "사진 보여줘"라는 의미를 제대로 파악할 수 있다. 그러나, 도 1의 우측에 도시된 바와 같이 사용자가 "사진 꺼내줘"라고 발화한 경우, "꺼내줘"라는 어휘가 어휘셋에 포함되지 않은 어휘, 즉 미등록어일 경우 음성 대화 처리장치는 "사진 꺼내줘"라는 의미를 제대로 파악할 수 없을 수 있다.
그러나, 본 발명의 일 실시예에 따른 음성 대화 처리장치는 사용자가 발화한 음성에 포함된 미등록어를 파악할 수 있다. 예를 들면, 전술한 "사진 꺼내줘"라는 사용자 발화 음성의 "꺼내줘"라는 의미를 제대로 파악할 수 있다.
한편, 일 실시예에 따른 음성 대화 처리장치는 사용자의 발화 의도를 파악할 뿐만 아니라 장치 발화 음성을 생성하고 제공할 수 있으므로, 사용자와 대화 메시 지를 송수신할 수 있다. 예를 들면, 음성 대화 처리장치는 사용자로부터 "사진 꺼내 줄래?"라는 발화 음성을 입력 받은 경우 의도를 파악하여, "총 30개의 사진이 검색되었습니다"라는 장치 발화 음성을 생성하여 제공할 수 있다.
도 2는 본 발명의 일 실시예에 따른 음성 대화 처리장치(1)의 구성도이다. 도 2를 참조하면, 음성 대화 처리장치(1)는 음성정보 추출부(10), 대화 관리부(20) 및 대화 이력명세 관리부(30)를 포함하며, 자연어 생성부(40) 및 음성 합성부(50)를 더 포함할 수 있다.
음성 대화 처리장치(1)의 음성정보 추출부(10)는 사용자 발화 음성이 입력되면, 사용자 발화 음성을 분석하여 음성 특징정보(feature information) 및 의미정보(semantic frame)를 추출한다. 음성 특징정보는 음성의 형태에 해당되고, 의미정보는 음성의 내용에 해당된다. 음성 특징정보는 특징 벡터(feature vector)일 수 있는데, 특징 벡터는 M×N 행렬 형태일 수 있다.
의미정보는 사용자 발화 음성의 내용 중 동작을 나타내는 화행정보(Dialogue Action, DA) 및 사용자 발화 음성의 내용 중 개체를 나타내는 개체명 정보(Named Entity)를 포함할 수 있다. 예를 들면, 사용자 발화 음성이 "사진 보여줘"인 경우, 화행정보는 "보다(show)"이고, 개체명 정보는 "사진(photo)"이다.
여기서, 음성정보 추출부(10)는 음성 인식부(Speech Recognition Unit)(12) 및 자연어 인식부(Natural Language Understanding Unit)(14)를 포함할 수 있다.
음성 인식부(12)는 사용자가 발화한 음성을 자연어(Natural Language)로 변환한다. 자연어는 사용자가 발화한 음성을 기계적으로 분석하기 위해 기계가 이해 할 수 있는 형태로 변환된 언어이다. 그리고, 음성 인식부(12)는 자연어 변환시 사용자 발화 음성에서 음성 특징정보를 추출하여 후술할 대화 이력명세 관리부(30)로 전송한다.
자연어 인식부(14)는 음성정보 추출부(10)에서 변환된 자연어로부터 의미정보를 추출한다. 그리고, 자연어 인식부(14)는 추출된 의미정보를 대화 이력명세 관리부(30)로 전송한다.
한편, 대화 관리부(Dialogue Management Unit)(20)는 사용자와 장치간의 담화 이력정보(discourse history information)를 담화 이력정보 저장부(22)에 저장하고 관리한다. 담화 이력정보는 사용자와의 인터렉션을 통해 입출력되는 담화 이력을 나타낸다. 예를 들면, 담화 이력정보는 후술되는 도 4에 도시된 바와 같다.
또한, 대화 관리부(20)는 사용자 발화 음성에 대응되는 장치 발화 음성을 생성한다. 예를 들면 사용자 발화 음성이 "사진 꺼내줘"일 경우 "총 30개의 사진이 검색되었습니다"라는 장치 발화 음성을 생성한다.
대화 이력명세 관리부(30)는 음성정보 추출부(10)로부터 음성 특징정보 및 의미정보를 수신하고, 대화 관리부(20)로부터 담화 이력정보를 수신한다. 그리고, 대화 이력명세 관리부(30)는 수신된 음성 특징정보, 의미정보 및 담화 이력정보를 기초로 하여 사용자 발화 음성 중 어휘셋에 포함되지 않은 미등록어(OOV)에 대한 의도를 파악하기 위한 대화 이력명세 정보(Dialogue History Specifications information)를 생성한다. 대화 이력명세 정보는 특정 태스크를 수행하기 위해서 사용자가 실제로 발화한 이력을 기록한 데이터이다.
일 실시예에 따른 대화 이력명세 정보는 음성 특징정보, 의미정보(semantic frame) 및 참조정보를 포함한다. 참조정보는 대화 이력명세 정보를 생성하거나 생성된 대화 이력명세 정보를 사용한 일시정보 및 사용 빈도 정보를 포함한다.
구체적으로, 음성 특징정보의 예인 특징 벡터(feature vector)는 미등록 어휘에 대한 음성신호의 특징을 나타내는 벡터이다. 의미정보(semantic frame)는 음성 특징정보에 대응되는 내용에 해당되는 정보로 화행(Dialogue Action) 및 개체명(Named Entity)을 포함한다. 일시 정보(reference date)는 대화 이력명세 정보를 생성하거나 생성된 대화 이력명세 정보를 사용한 날짜 및 시간정보이다. 사용 빈도 정보(frequency)는 대화 이력명세 정보를 생성하거나 생성된 대화 이력명세 정보를 사용한 빈도수이다.
예를 들면, 대화 이력명세 정보는 아래의 표에 도시된 바와 같다.
Figure 112009020674585-PAT00001
대화 이력명세 관리부(30)는 미등록어에 대한 대화 이력명세 정보가 생성되면 자연어 인식부(14)에 대화 이력명세 정보의 의미정보를 송신한다.
한편, 자연어 생성부(40)는 대화 이력명세 관리부(30)에서 사용자 발화 의도를 파악한 결과에 따라, 파악된 사용자 발화 음성의 의미정보에 대응되는 자연어 문장을 생성한다. 그리고 음성 합성부(50)는 자연어 생성부(40)에서 생성된 자연 어 문장을 음성으로 합성하여 장치 발화 음성을 사용자에게 제공한다.
도 3은 도 2의 대화 이력명세 관리부(30)의 상세 구성도이다. 도 3을 참조하면, 대화 이력명세 관리부(30)는 대화 최적화부(32) 및 대화 이력명세 정보 저장부(34)를 포함한다.
일 실시예에 따른 대화 최적화부(32)는 사용자 발화 음성에 대한 음성 특징정보, 의미정보 및 담화 이력정보를 이용하여 대화 이력명세 정보를 생성한다. 그리고, 생성된 대화 이력명세 정보를 대화 이력명세 정보 저장부(34)에 저장한다.
한편, 대화 최적화부(32)는 미확인된 사용자 발화 음성이 입력되면 대화 이력명세 정보 저장부(34)에 저장된 대화 이력명세 정보를 검색하고, 검색된 결과를 이용하여 대화 이력명세 정보를 생성한다. 그리고, 생성된 대화 이력명세 정보를 대화 이력명세 정보 저장부(34)에 저장한다.
여기서, 대화 최적화부(32)는 대화 이력명세 정보 생성을 위해, 적어도 하나의 실패 사용자 발화 음성의 대화 이력명세 정보 및 성공 사용자 발화 음성의 대화 이력명세 정보를 대화 이력명세 정보 저장부(34)에서 검색할 수 있다. 실패 사용자 발화 음성은 미등록어로 인해 의미정보 추출에 실패한 음성이고, 성공 사용자 발화 음성은 실패 사용자 발화 음성과 유사한 음성이지만 의미정보 추출에 성공한 음성이다.
이때 대화 최적화부(32)는 적어도 하나의 실패 사용자 발화 음성간의 유사도(similarity)를 계산하여 유사도가 미리 설정된 값 이상인 경우 적어도 하나의 실패 사용자 발화 음성의 대표 대화 이력명세 정보를 생성할 수 있다.
이어서, 대화 최적화부(32)는 대표 대화 이력명세 정보에 포함된 의미정보를 성공 사용자 발화 음성의 대화 이력명세 정보에 포함된 의미정보로 변경할 수 있다. 일 실시예에 따른 대화 최적화부(32)의 대화 이력명세 정보 생성 동작에 대한 실시예를 후술되는 도 4에서 설명한다.
한편, 대화 이력명세 관리부(30)는 대화 최적화부(32)에서의 대화 이력명세 정보 생성에 따라 사용자 발화 의도를 파악한다. 대화 이력명세 관리부(30)는 사용자 발화 음성에 미등록어가 있으면 입력된 사용자 발화 음성의 대화 이력명세 정보 및 대화 이력명세 저장부(34)에 저장된 대화 이력명세 정보를 비교한다. 그리고, 대화 이력명세 관리부(30)는 비교 대상인 대화 이력명세 정보간의 음성 특징정보, 의미정보 및 참조정보의 유사도(거리)를 계산하여 사용자 발화 음성의 대화 이력명세 정보와 가장 유사한 대화 이력명세 정보를 검색하여 미등록어에 대한 발화 의도를 파악한다.
여기서, 일 실시예에 따른 대화 이력명세 관리부(30)가 유사도(거리)를 계산하는 방식은 아래의 수학식 1과 같다.
Figure 112009020674585-PAT00002
여기서,
D: 입력된 사용자 발화 음성의 대화 이력명세 정보 및 저장된 대화 이력명세 정보간의 거리(Distance)
Ci : 대화 이력명세 정보에 포함된 속성들에 대한 비용 즉,
C1: 입력된 사용자 발화 음성의 음성 특징정보 및 저장된 대화 이력명세 정보의 음성 특징정보간의 거리
C2: 입력된 사용자 발화 음성의 의미정보 및 저장된 대화 이력명세 정보의 의미정보간의 거리
C3: 마지막으로 사용된 날짜와의 거리
C4: 1 / 참조 횟수
Wi : 각 비용에 대한 가중치를 의미한다.
이때, D(Distance) 값이 작을수록 입력된 사용자 발화 음성이 저장된 사용자 발화 음성과 유사하고, D 값이 클수록 입력된 사용자 발화 음성이 저장된 사용자 발화 음성과 상이하다. 나아가, 음성 대화 처리장치의 어플리케이션 특징에 따라 비용(cost)의 속성을 추가 또는 삭제할 수 있으며 가중치(weight)를 조절할 수 있다. 대화 이력명세 관리부(30)의 사용자 발화 의도 파악 동작에 대한 실시예를 후술되는 도 5 및 도 6에서 후술한다.
도 4는 본 발명의 일 실시예에 따른 대화 이력명세 정보 생성 동작을 설명하기 위한 참조도이다. 이때 도 3에서 전술한 구성요소들의 도면부호를 그대로 사용한다.
우선, 대화 최적화부(32)는 대화 이력명세 정보 저장부(34)에서 의미정보 추출에 실패한 적어도 하나의 실패 사용자 발화 음성의 대화 이력명세 정보를 검색한다. 예를 들면, 온전한 의미정보를 생성하지 못한 "사진 꺼내 줄래?"(400)와 "사 진 꺼내 줘"(410)에 대한 대화 이력명세 정보를 검색한다. "사진 꺼내 줄래?"(400)와 "사진 꺼내 줘"(410)에 대한 대화 이력명세 정보에 포함된 의미정보의 화행정보가 각각 미확인(unknown)임을 확인할 수 있다.
이어서, 대화 최적화부(32)는 대화 이력명세 정보 저장부(34)에서 의미정보 추출에 성공한 성공 사용자 발화 음성의 대화 이력명세 정보를 검색한다. 예를 들면, 온전한 의미정보를 생성한 "사진 보여 줘"(420)에 대한 대화 이력명세 정보를 검색한다. 이때, 대화 최적화부(32)는 "사진 보여 줘"(420)에 대한 대화 이력명세 정보의 담화 이력정보를 분석하여, 사용자 발화 의도 즉, 화행정보는 show(보기)(422)이며, 개체명 정보는 photo(사진)(424)임을 파악한다.
이어서, 대화 최적화부(32)는 실패 사용자 발화 음성인 "사진 꺼내 줄래?"(400) 및 "사진 꺼내 줘"(410)의 각 음성 특징정보가 어느 정도 유사한지를 계산한다. 이때, 시간축정항법(Dynamic Time Wrapping) 알고리즘을 활용하여 정보간 유사도(거리)를 계산할 수 있다. 시간축정항법은 음성의 시간축의 신축에 대처하면서 비교 대상간의 패턴의 유사도(거리)를 계산하는 방법이다.
이후, 대화 최적화부(32)는 계산된 유사도가 미리 설정된 값인 임계치(threshold) 이상인지를 판단하여, 임계치 이상이면 대표 대화 이력명세 정보를 생성한다. 대표 대화 이력명세 정보는 실패 사용자 발화 음성인 "사진 꺼내 줄래?"(400) 및 "사진 꺼내 줘"(410)의 대화 이력명세 정보 중 어느 하나일 수 있다.
이어서, 대화 최적화부(32)는 대표 대화 이력명세 정보에 포함된 의미정보를 성공 사용자 발화 음성의 대화 이력명세 정보에 포함된 의미정보로 변경한다. 예 를 들면, 대화 최적화부(32)는 대화 이력명세 정보의 누락된 의미정보의 화행정보인 unknown(미확인)을 show(보기)로 변경하고, 변경된 대화 이력명세 정보를 대화 이력명세 정보 저장부(34)에 저장한다.
도 5는 본 발명의 일 실시예에 따른 미등록어에 대한 의도 파악 결과를 설명하기 위한 참조도이다.
도 5를 참조하면, 일 실시예에 따른 음성 대화 처리장치는 미등록어를 포함하는 사용자 발화 음성이 입력된 경우, 저장된 대화 이력명세 정보를 이용하여 미등록어의 의미를 파악할 수 있다. 예를 들면, 도 5에 도시된 바와 같이 음성 대화 처리장치는 사용자 발화 음성이 "사진 꺼내 줄래?"(500)인 경우 바로 "총 30개의 사진이 검색되었습니다"(510)라는 장치 발화 음성을 생성할 수 있다. 이는 음성 대화 처리장치가 전술한 대화 이력명세 정보가 이용하여 미등록어인 "꺼내 줄래"의 의미를 제대로 파악할 수 있기 때문이다.
도 6은 본 발명의 일 실시예에 따른 미등록어에 대한 의도 파악동작을 설명하기 위한 예시도이다.
도 6을 참조하면, 사용자로부터 미확인된 음성인 "사진 꺼내 줄래?" 라는 발화 음성을 입력 받은 경우, 음성 대화 처리장치는 대화 이력명세 저장부(34)에 저장된 대화 이력명세 정보(600,610)를 검색한다. 그리고, 음성 대화 처리장치는 비교 대상인 대화 이력명세 정보간의 음성 특징정보, 의미정보 및 참조정보의 유사도를 계산하여 사용자 발화 음성의 대화 이력명세 정보와 가장 유사한 대화 이력명세 정보를 선택한다. 그리고, 선택된 대화 이력명세 정보를 이용해 미확인된 사용자 발화의 의도를 파악한다.
예를 들면, 유사도 계산시 음성 대화 처리장치는 2009년 3월 4일 사용자가 "사진 꺼내"라는 사용자 발화 음성을 입력 받으면 대화 이력명세 정보 저장부(34)에 저장된 사용자의 발화 "사진 꺼내"에 해당하는 대화 이력명세 정보 2개(600,610)를 검색하고, 그 중 참조일시가 2009년 2월 10일에 해당되는 대화 이력명세 정보(610)를 선택한다. 그 이유는 전술한 수학식 1에 근거하여 참조한 날짜가 최근이며 사용 빈도수가 높기 때문이다.
이때 선택된 대화 이력명세 정보(610)의 "DA=show, NE=photo"임을 알 수 있다. 따라서, 사용자로 하여금 시스템 명령어를 학습해야 하는 번거로움 해소시켜줄 뿐만 아니라, 동일한 사용자 발화에 대해서도 상황과 시기에 따라 대화 명령을 달리 해석하고 그 의미를 파악함에 따라, 사용자는 효율적으로 원하는 태스크를 수행할 수 있다.
도 7은 본 발명의 일 실시예에 따른 음성 대화 처리방법을 도시한 흐름도이다.
도 7을 참조하면, 일 실시예에 따른 음성 대화 처리장치는 입력된 사용자 발화 음성을 분석하여 음성의 형태에 해당되는 음성 특징정보 및 음성의 내용에 해당되는 의미정보를 추출한다(S700).
이어서, 음성 대화 처리장치는 음성 특징정보, 의미정보 및 입출력된 발화 음성에 대한 담화 이력정보를 기초로 대화 이력명세 정보를 생성하고, 입력된 사용자 발화의 의도를 파악한다(S710). 이때, 음성 대화 처리장치는 사용자 발화 음성 중 어휘셋에 포함되지 않은 어휘인 미등록어가 있으면 저장된 대화 이력명세 정보를 검색하여 미등록어가 포함된 사용자 발화 음성의 대화 이력명세 정보를 생성한다.
나아가 본 발명의 추가 양상에 따르면, 음성 대화 처리장치는 인식된 사용자 발화 음성에 대응되는 장치 발화 음성을 생성한다(S720).
도 8은 본 발명의 일 실시예에 따른 사용자 발화 음성에 대응되는 장치 발화 음성을 생성 방법을 도시한 흐름도이다.
도 8을 참조하면, 일 실시예에 따른 음성 대화 처리장치는 사용자 발화 음성에 대한 자연어를 추출한다(S800). 그리고, 자연어로부터 의미정보를 추출한다(S810). 이때 음성 대화 처리장치는 사용자 발화 음성에 대한 음성 특징정보 및 텍스트 정보를 추출한다. 그리고, 텍스트 정보를 해석(parsing)하여 사용자 발화 음성에 대한 의미정보인 화행 및 개체명을 추출한다.
이어서, 의미정보 추출 성공 여부에 따라 의미정보 추출에 실패하면 음성 대화 처리장치는 의미정보 추출 시도 횟수를 판단한다.
음성 대화 처리장치는 의미정보 추출 시도가 처음이면 음향 모델(acoustic model) 및 언어 모델(language model)에 각각 다른 가중치를 부여(S840)한다. 즉, 음향 모델의 가중치는 높이고 언어 모델의 가중치를 낮추어서 고립어 음성 인식기처럼 동작한다. 그리고, 음성 대화 처리장치는 다시 사용자 발화 음성에 대한 자연어 추출(S800) 및 자연어로부터 의미정보 추출 과정을 반복한다(S810).
한편, 의미정보 추출 시도 판단 결과, 의미정보 추출 시도가 처음이 아니면 음성 대화 처리장치는 미등록어의 대화 이력명세 정보와 가장 유사한 대화 이력명세 정보를 검색(S850)하여 의미정보를 결정한다(S860).
이어서, 음성 대화 처리장치는 결정된 의미정보에 해당되는 장치 발화 음성을 생성한다(S870). 이때, 음성 대화 처리장치는 전술한 의미정보에 해당되는 자연어 문장을 생성하고, 자연어 문장을 음성신호로 합성하여 장치 발화 음성을 출력한다.
이에 따라, 일 실시예에 따른 음성 대화 처리장치는 어휘셋에 포함되지 않은 어휘와 연관된 사용자 발화 의도를 파악할 수 있다. 따라서 대화 인터페이스에 대한 사용자 발화 의도 인식률을 높이고 사용성을 증대시킬 수 있다.
나아가, 일 실시예에 따른 음성 대화 처리장치는 지역, 연령 또는 성별 등에 따라 상이한 사용자의 개인화된 음성을 파악할 수 있다. 이에 따라 디바이스 자체는 대량 생산된 획일적인 제품이지만, 소비자는 디바이스를 개인화된 디바이스로 인식하므로 소비자 맞춤형 제품의 효과를 낼 수 있다.
나아가, 음성 대화 처리장치가 대화 이력명세 정보를 이용하여 사용자의 발화 의도를 파악하므로, 사용자가 디바이스를 동작시키기 위한 복잡한 시스템 명령의 학습을 하지 않고도 손쉽게 디바이스를 사용할 수 있도록 하는 지능형 디바이스 기반 기술을 제공할 수 있다. 그리고, 다수의 사용자로부터 예상하지 못한 말뭉치를 획득하여 공통의 자원을 생성할 수 있다.
이제까지 본 발명에 대하여 그 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성 에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 인식할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 음성 대화 처리장치의 사용자 발화의도 파악을 설명하기 위한 예시도,
도 2는 본 발명의 일 실시예에 따른 음성 대화 처리장치의 구성도,
도 3은 도 2의 대화 이력명세 관리부의 상세 구성도,
도 4는 본 발명의 일 실시예에 따른 대화 이력명세 정보 생성동작을 설명하기 위한 참조도,
도 5는 본 발명의 일 실시예에 따른 미등록어에 대한 의도 파악 결과를 설명하기 위한 참조도,
도 6은 본 발명의 일 실시예에 따른 미등록어에 대한 의도 파악 동작을 설명하기 위한 예시도,
도 7은 본 발명의 일 실시예에 따른 음성 대화 처리방법을 도시한 흐름도,
도 8은 본 발명의 일 실시예에 따른 사용자 발화 음성에 대응되는 장치 발화 음성을 생성 방법을 도시한 흐름도이다.
<도면의 주요부분에 대한 부호의 설명>
1 : 음성 대화 처리장치 10 : 음성정보 추출부
12 : 음성 인식부 14 : 자연어 인식부
20 : 대화 관리부 22 : 담화 이력 정보 저장부
30 : 대화 이력명세 관리부 32 : 대화 최적화부
34 : 대화 이력명세 정보 저장부 40 : 자연어 생성부
50 : 음성 합성부

Claims (14)

  1. 입력된 사용자 발화 음성을 분석하여 음성의 형태를 나타내는 음성 특징정보 및 상기 음성의 내용을 나타내는 의미정보를 추출하는 음성정보 추출부;
    사용자와의 인터렉션을 통해 입출력되는 담화 이력을 나타내는 담화 이력정보를 관리하는 대화 관리부; 및
    상기 음성 특징정보, 상기 의미정보 및 상기 담화 이력정보를 기초로 사용자 발화 이력을 나타내는 대화 이력명세 정보를 생성하고, 입력된 사용자 발화의 의도를 파악하는 대화 이력명세 관리부를 포함하는 음성 대화 처리장치.
  2. 제 1 항에 있어서,
    상기 대화 이력명세 관리부에서 생성된 대화 이력명세 정보는,
    상기 음성 특징정보, 상기 의미정보 및 참조정보를 포함하고,
    상기 참조정보는 상기 대화 이력명세 정보를 생성하거나 상기 생성된 대화 이력명세 정보를 사용한 일시정보 및 사용 빈도 정보를 포함하는 음성 대화 처리장치.
  3. 제 1 항에 있어서,
    상기 음성정보 추출부에서 추출된 의미정보는,
    상기 사용자 발화 음성의 내용 중에 동작을 나타내는 화행정보 및 개체를 나 타내는 개체명 정보를 포함하는 음성 대화 처리장치.
  4. 제 1 항에 있어서, 상기 대화 관리부는,
    상기 대화 이력명세 관리부에서 파악된 사용자 발화 음성에 대응되는 장치 발화 음성을 생성하는 음성 대화 처리장치.
  5. 제 1 항에 있어서, 상기 대화 이력명세 관리부는,
    상기 사용자 발화 음성에 대한 상기 음성 특징정보, 상기 의미정보 및 상기 담화 이력정보를 이용하여 상기 대화 이력명세 정보를 생성하는 대화 최적화부; 및
    상기 생성된 대화 이력명세 정보를 저장하는 대화 이력명세 정보 저장부를 포함하며,
    상기 대화 최적화부는,
    상기 미확인된 사용자 발화 음성이 입력되면 상기 저장된 대화 이력명세 정보를 검색하고 상기 검색된 결과를 이용하여 상기 대화 이력명세 정보를 생성하는 음성 대화 처리장치.
  6. 제 5 항에 있어서, 상기 대화 최적화부는,
    상기 미확인된 사용자 발화 음성이 입력되면, 미확인 음성으로 인해 의미정보 추출에 실패한 적어도 하나의 실패 사용자 발화 음성의 대화 이력명세 정보 및 상기 적어도 하나의 실패 사용자 발화 음성과 유사하지만 의미정보 추출에 성공한 성공 사용자 발화 음성의 대화 이력명세 정보를 검색하고,
    상기 성공 사용자 발화 음성의 대화 이력명세 정보에 포함된 의미정보를 참조하여 상기 적어도 하나의 실패 사용자 발화 음성의 대화 이력명세 정보에 포함된 의미정보를 생성하는 음성 대화 처리장치.
  7. 제 6 항에 있어서, 상기 대화 최적화부는,
    상기 적어도 하나의 실패 사용자 발화 음성간의 유사도를 계산하여 상기 유사도가 미리 설정된 값 이상인 경우 상기 적어도 하나의 실패 사용자 발화 음성의 대표 대화 이력명세 정보를 생성하고,
    상기 성공 사용자 발화 음성의 대화 이력명세 정보에 포함된 의미정보를 참조하여 상기 대표 대화 이력명세 정보에 포함된 의미정보를 생성하는 음성 대화 처리장치.
  8. 제 1 항에 있어서, 상기 대화 이력명세 관리부는,
    상기 미확인된 사용자 발화 음성이 입력되어 의미정보 추출에 실패한 경우,
    상기 의미정보 추출 시도가 처음인지를 판단하여 처음이면 음향 모델 및 언어 모델에 각각 다른 가중치를 부여하여 상기 의미정보를 추출하고,
    상기 의미정보 추출 시도가 처음이 아니면 상기 미확인된 사용자 발화 음성의 음성 특징정보 및 추출에 실패한 의미정보와 가장 유사한 대화 이력명세 정보를 검색하여 상기 의미정보를 생성함에 따라 상기 미확인된 사용자 발화의 의도를 파 악하는 음성 대화 처리장치.
  9. 제 1 항에 있어서, 상기 음성정보 추출부는,
    상기 입력된 사용자 발화 음성을 인식하여 자연어로 변환하고 상기 변환시 상기 음성특징정보를 추출하여 상기 대화 이력명세 관리부로 전송하는 음성 인식부; 및
    상기 자연어로부터 상기 의미정보를 추출하여 상기 대화 이력명세 관리부로 전송하고, 상기 대화 이력명세 관리부에서 상기 미등록어에 대한 상기 대화 이력명세 정보가 생성되면 상기 대화 이력명세 관리부로부터 상기 대화 이력명세 정보의 의미정보를 수신하는 자연어 인식부를 포함하는 음성 대화 처리장치.
  10. 입력된 사용자 발화 음성을 분석하여 음성의 형태를 나타내는 음성 특징정보 및 상기 음성의 내용을 나타내는 의미정보를 추출하는 단계; 및
    상기 음성 특징정보, 상기 의미정보 및 사용자와의 인터렉션을 통해 입출력되는 담화 이력 담화 이력정보를 기초로 사용자 발화 이력을 나타내는 대화 이력명세 정보를 생성하고, 입력된 사용자 발화의 의도를 파악하는 단계를 포함하는 음성 대화 처리방법.
  11. 제 10 항에 있어서,
    상기 생성된 대화 이력명세 정보는,
    상기 음성 특징정보, 상기 의미정보 및 참조정보를 포함하고,
    상기 참조정보는 상기 대화 이력명세 정보를 생성하거나 상기 생성된 대화 이력명세 정보를 사용한 일시정보 및 사용 빈도 정보를 포함하는 음성 대화 처리방법.
  12. 제 10 항에 있어서, 상기 대화 이력명세 정보를 생성하고, 상기 입력된 사용자 발화의 발화 의도를 파악하는 단계는,
    상기 사용자 발화 음성에 대한 상기 음성 특징정보, 상기 의미정보 및 상기 담화 이력정보를 이용하여 상기 대화 이력명세 정보를 생성하는 단계; 및
    상기 생성된 대화 이력명세 정보를 저장하는 단계를 포함하며,
    상기 대화 이력명세 정보를 생성하는 단계에서, 상기 미확인된 사용자 발화 음성이 입력되면 상기 저장된 대화 이력명세 정보를 검색하고 상기 검색된 결과를 이용하여 상기 대화 이력명세 정보를 생성하는 음성 대화 처리방법.
  13. 제 10 항에 있어서, 상기 대화 이력명세 정보를 생성하고, 상기 입력된 사용자 발화의 발화 의도를 파악하는 단계는,
    상기 미확인된 사용자 발화 음성이 입력되어 의미정보 추출에 실패한 경우,
    상기 의미정보 추출 시도가 처음인지를 판단하여 처음이면 음향 모델 및 언어 모델에 각각 다른 가중치를 부여하여 상기 의미정보를 추출하고,
    상기 의미정보 추출 시도가 처음이 아니면 상기 미확인된 사용자 발화 음성 의 음성 특징정보 및 추출에 실패한 의미정보와 가장 유사한 대화 이력명세 정보를 검색하여 상기 의미정보를 생성함에 따라 상기 미확인된 사용자 발화의 의도를 파악하는 음성 대화 처리방법.
  14. 제 10 항에 있어서,
    상기 파악된 사용자 발화 음성에 대응되는 장치 발화 음성을 생성하여 제공하는 단계를 더 포함하는 음성 대화 처리방법.
KR1020090029589A 2009-04-06 2009-04-06 사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법 KR20100111164A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090029589A KR20100111164A (ko) 2009-04-06 2009-04-06 사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090029589A KR20100111164A (ko) 2009-04-06 2009-04-06 사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법

Publications (1)

Publication Number Publication Date
KR20100111164A true KR20100111164A (ko) 2010-10-14

Family

ID=43131525

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090029589A KR20100111164A (ko) 2009-04-06 2009-04-06 사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법

Country Status (1)

Country Link
KR (1) KR20100111164A (ko)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105810190A (zh) * 2015-01-20 2016-07-27 哈曼国际工业有限公司 音乐内容和实时音乐伴奏的自动转录
US9934781B2 (en) 2014-06-30 2018-04-03 Samsung Electronics Co., Ltd. Method of providing voice command and electronic device supporting the same
KR20190058307A (ko) * 2017-11-20 2019-05-29 엘지전자 주식회사 에이전트 개발자를 위한 툴킷 제공 장치
WO2019103441A1 (ko) * 2017-11-22 2019-05-31 주식회사 이르테크 화행제어를 이용한 대화처리 시스템 및 그 동작방법
KR20190067582A (ko) 2017-12-07 2019-06-17 현대자동차주식회사 사용자의 발화 에러 보정 장치 및 그 방법
KR20190070160A (ko) * 2017-12-12 2019-06-20 슈어소프트테크주식회사 음성 정보에 기반한 정적 분석 수행 방법 및 장치
KR20200137160A (ko) * 2019-05-29 2020-12-09 주식회사 카카오 입력 발화의 의도를 추정하는 모델의 학습을 제어하는 방법 및 장치
JPWO2019207909A1 (ja) * 2018-04-23 2021-01-14 株式会社Nttドコモ 対話サーバ
US10930280B2 (en) 2017-11-20 2021-02-23 Lg Electronics Inc. Device for providing toolkit for agent developer
CN113611297A (zh) * 2021-06-25 2021-11-05 北京智芯微电子科技有限公司 一种智能控制方法、装置和智能产品
CN114547262A (zh) * 2022-01-27 2022-05-27 联想(北京)有限公司 一种自然语言处理方法、装置及计算机可读介质
US11393470B2 (en) 2019-08-29 2022-07-19 Lg Electronics Inc. Method and apparatus for providing speech recognition service
CN116743692A (zh) * 2023-08-16 2023-09-12 杭州星锐网讯科技有限公司 一种历史消息折叠方法和系统

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9934781B2 (en) 2014-06-30 2018-04-03 Samsung Electronics Co., Ltd. Method of providing voice command and electronic device supporting the same
US10679619B2 (en) 2014-06-30 2020-06-09 Samsung Electronics Co., Ltd Method of providing voice command and electronic device supporting the same
US11664027B2 (en) 2014-06-30 2023-05-30 Samsung Electronics Co., Ltd Method of providing voice command and electronic device supporting the same
US11114099B2 (en) 2014-06-30 2021-09-07 Samsung Electronics Co., Ltd. Method of providing voice command and electronic device supporting the same
CN105810190A (zh) * 2015-01-20 2016-07-27 哈曼国际工业有限公司 音乐内容和实时音乐伴奏的自动转录
CN105810190B (zh) * 2015-01-20 2021-02-12 哈曼国际工业有限公司 音乐内容和实时音乐伴奏的自动转录
KR20190058307A (ko) * 2017-11-20 2019-05-29 엘지전자 주식회사 에이전트 개발자를 위한 툴킷 제공 장치
US10930280B2 (en) 2017-11-20 2021-02-23 Lg Electronics Inc. Device for providing toolkit for agent developer
US11081110B2 (en) 2017-11-22 2021-08-03 Iir Tech Inc. Dialogue processing system using speech act control and operation method thereof
WO2019103441A1 (ko) * 2017-11-22 2019-05-31 주식회사 이르테크 화행제어를 이용한 대화처리 시스템 및 그 동작방법
KR20190067582A (ko) 2017-12-07 2019-06-17 현대자동차주식회사 사용자의 발화 에러 보정 장치 및 그 방법
US10629201B2 (en) 2017-12-07 2020-04-21 Hyundai Motor Company Apparatus for correcting utterance error of user and method thereof
KR20190070160A (ko) * 2017-12-12 2019-06-20 슈어소프트테크주식회사 음성 정보에 기반한 정적 분석 수행 방법 및 장치
US10978065B2 (en) 2017-12-12 2021-04-13 Suresoft Technologies Inc. Static analysis performing method based on voice information and device for the same
JPWO2019207909A1 (ja) * 2018-04-23 2021-01-14 株式会社Nttドコモ 対話サーバ
KR20200137160A (ko) * 2019-05-29 2020-12-09 주식회사 카카오 입력 발화의 의도를 추정하는 모델의 학습을 제어하는 방법 및 장치
US11755930B2 (en) 2019-05-29 2023-09-12 Kakao Corp. Method and apparatus for controlling learning of model for estimating intention of input utterance
US11393470B2 (en) 2019-08-29 2022-07-19 Lg Electronics Inc. Method and apparatus for providing speech recognition service
CN113611297A (zh) * 2021-06-25 2021-11-05 北京智芯微电子科技有限公司 一种智能控制方法、装置和智能产品
CN114547262A (zh) * 2022-01-27 2022-05-27 联想(北京)有限公司 一种自然语言处理方法、装置及计算机可读介质
CN116743692A (zh) * 2023-08-16 2023-09-12 杭州星锐网讯科技有限公司 一种历史消息折叠方法和系统

Similar Documents

Publication Publication Date Title
KR20100111164A (ko) 사용자의 발화의도를 파악하는 음성 대화 처리장치 및 음성 대화 처리방법
CN110049270B (zh) 多人会议语音转写方法、装置、系统、设备及存储介质
WO2018034118A1 (ja) 対話システム及びそのためのコンピュータプログラム
US10713289B1 (en) Question answering system
KR101622111B1 (ko) 대화 시스템 및 그의 대화 방법
JP2017107078A (ja) 音声対話方法、音声対話装置及び音声対話プログラム
WO2014195937A1 (en) System and method for automatic speech translation
JP2018017936A (ja) 音声対話装置、サーバ装置、音声対話方法、音声処理方法およびプログラム
KR102276951B1 (ko) 목소리 및 얼굴 안면 감정값의 산출 방법 및 이를 이용한 인공지능 스피커의 출력 방법
KR101131278B1 (ko) 대화 로그를 이용한 학습 기반 대화 시스템 성능 향상 방법 및 그 장치
JP2012159596A (ja) 情報処理装置、情報処理方法、情報処理システム、およびプログラム
US10504512B1 (en) Natural language speech processing application selection
JP2015153108A (ja) 音声会話支援装置、及び音声会話支援方法及びプログラム
US20240144933A1 (en) Voice-controlled communication requests and responses
KR20150145024A (ko) 화자적응 음성인식 시스템의 단말 및 서버와 그 운용 방법
JP2015135419A (ja) 音声認識端末装置、音声認識システム、音声認識方法
KR101534413B1 (ko) 상담 정보를 이용하여 상담 대화를 제공하는 방법 및 장치
KR20190041147A (ko) 사용자 맞춤형 통번역 장치 및 방법
CN111986675A (zh) 语音对话方法、设备及计算机可读存储介质
CN111128175B (zh) 口语对话管理方法及系统
KR20210123545A (ko) 사용자 피드백 기반 대화 서비스 제공 방법 및 장치
US8423354B2 (en) Speech recognition dictionary creating support device, computer readable medium storing processing program, and processing method
JP5723711B2 (ja) 音声認識装置および音声認識プログラム
CN112541324A (zh) 一种标点符号添加方法、装置及电子设备
KR20180022156A (ko) 대화 관리 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application