KR20230119804A - 사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램 - Google Patents

사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20230119804A
KR20230119804A KR1020220015998A KR20220015998A KR20230119804A KR 20230119804 A KR20230119804 A KR 20230119804A KR 1020220015998 A KR1020220015998 A KR 1020220015998A KR 20220015998 A KR20220015998 A KR 20220015998A KR 20230119804 A KR20230119804 A KR 20230119804A
Authority
KR
South Korea
Prior art keywords
utterance
response
user
entity
learning
Prior art date
Application number
KR1020220015998A
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 KR1020220015998A priority Critical patent/KR20230119804A/ko
Publication of KR20230119804A publication Critical patent/KR20230119804A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)

Abstract

사용자 발화에 대한 응답을 도출하는 장치에 있어서, 사용자 발화를 수신하는 수신부; 상기 사용자 발화 및 상기 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 상기 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 상기 사용자 발화에 대한 대화 의도 및 개체명을 도출하는 대화 의도 및 개체명 도출부; 및 상기 도출된 대화 의도 및 상기 도출된 개체명에 기초하여 상기 사용자 발화에 대한 시스템 응답을 도출하는 응답 도출부를 포함한다.

Description

사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램{DEVICE, METHOD AND COMPUTER PROGRAM FOR DERIVING RESPONSE TO USER UTTERANCES}
본 발명은 사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램에 관한 것이다.
챗봇(chatter robot)이란 기업용 메신저에 채팅하듯 질문을 입력하면 인공지능(AI)이 빅데이터 분석을 바탕으로 일상언어로 사람과 대화를 하며 해답을 주는 대화형 메신저를 말한다.
챗봇은 크게 시나리오형과 인공지능형으로 구분된다. 시나리오형 챗봇은 미리 정해 놓은 단어에 따라 해답을 제공하고, 인공지능형 챗봇은 복잡한 질문에도 응답할 수 있고 자기 학습이 가능하다.
인공지능형 챗봇에서 인공지능이 고객의 발화 의도를 정확하게 인식하고 상황에 맞는 해답을 제공하기 위해서는 고객의 발화에 포함된 제품이나 서비스를 나타내는 핵심 용어의 식별이 중요하다. 이러한 기술은 자연어 처리(Natural Language Processing, NLP) 분야에서 개체명 인식(Named Entity Recognition, NER)의 문제라고 칭한다.
일반적으로, 자연어 처리 과정에서는 입력 문장을 형태소 단위로 분리한 후, 문법적인 역할 또는 의미적인 역할에 따라 태그를 부착한다. 개체명 인식은 분리된 형태소에 대하여 개체명을 인식하고 미리 정의된 태그를 부착하는 과정이다.
도 1은 종래 기술에 따른 개체명 인식을 설명하기 위한 예시적인 도면이다. 도 1에 도시된 표는 사용자와의 상담 대화가 멀티 턴(110)으로 이루어진 경우의 예시이다. 도 1을 참조하면, 종래 기술은 현재 턴의 사용자 발화(120)에 대하여 정보를 추출하여 사용자의 의도(131)를 파악하는 과정을 거친 후, 다음의 시스템 액션(132)을 결정하는 과정을 수행하고 있다. 이 과정에서 종래 기술은 현재 턴의 사용자 발화(120)에 대한 개체명 어휘(140) 및 개체명 타입(150)을 태그로 부착한다.
그러나, 종래 기술과 같이, 현재 턴의 사용자 발화에만 기초하는 것은 해당 사용자 발화에 대한 사용자의 의도(131)를 정확하게 인식하기가 어렵다. 구체적으로, 도 1에서 사용자 발화의 U-3턴(111)을 살펴보면, '모바일 전화요(121)'라는 현재 사용자 발화에 포함된 '모바일' 또는 '전화'라는 어휘만으로 사용자의 의도가 '납부_방법_확인(131a)'이라는 것을 도출하기가 어렵다.
한국공개특허 제10-2021-0028480호 (2021. 3. 12. 공개) 한국공개특허 제10-2020-0092499호 (2020. 8. 4. 공개)
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 사용자 발화에 대하여 사용자의 의도를 파악하고 다음의 시스템 응답을 결정하는 과정이 연계되어 수행될 수 있는 응답 도출 장치, 방법 및 컴퓨터 프로그램을 제공하고자 한다.
사용자 발화의 해당 발화 턴을 해석하는 과정에서 이전 발화 정보를 함께 활용하여 사용자의 의도를 분명하게 파악할 수 있고, 해당 발화 턴에 포함된 개체명을 정확하게 인식할 수 있는 응답 도출 장치, 방법 및 컴퓨터 프로그램을 제공하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 수단으로서, 본 발명의 일 실시예는, 사용자 발화에 대한 응답을 도출하는 장치에 있어서, 사용자 발화를 수신하는 수신부; 상기 사용자 발화 및 상기 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 상기 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 상기 사용자 발화에 대한 대화 의도 및 개체명을 도출하는 대화 의도 및 개체명 도출부; 및 상기 도출된 대화 의도 및 상기 도출된 개체명에 기초하여 상기 사용자 발화에 대한 시스템 응답을 도출하는 응답 도출부를 포함하는, 응답 도출 장치를 제공 할 수 있다.
본 발명의 다른 실시예는, 사용자 발화에 대한 응답을 도출하는 방법에 있어서, 사용자 발화를 수신하는 단계; 상기 사용자 발화 및 상기 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 상기 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 상기 사용자 발화에 대한 대화 의도 및 개체명을 도출하는 단계; 및 상기 도출된 대화 의도 및 상기 도출된 개체명에 기초하여 상기 사용자 발화에 대한 시스템 응답을 도출하는 단계를 포함하는, 응답 도출 방법을 제공할 수 있다.
본 발명의 또 다른 실시예는, 사용자 발화에 대한 응답을 도출하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램에 있어서, 상기 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우, 사용자 발화를 수신하고, 상기 사용자 발화 및 상기 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 상기 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 상기 사용자 발화에 대한 대화 의도 및 개체명을 도출하고, 상기 도출된 대화 의도 및 상기 도출된 개체명에 기초하여 상기 사용자 발화에 대한 시스템 응답을 도출하도록 하는 명령어들의 시퀀스를 포함하는, 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램을 제공할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 사용자 발화에 대하여 사용자의 의도를 파악하고 다음의 시스템 응답을 결정하는 과정이 연계되어 수행될 수 있다. 따라서, 사용자 발화에 대한 사용자의 의도 및 다음 시스템 응답간의 의존적인 관계를 반영시킬 수 있는 응답 도출 장치, 방법 및 컴퓨터 프로그램을 제공할 수 있다.
또한, 사용자 발화의 해당 발화 턴을 해석하는 과정에서 이전 대화 정보를 함께 활용하여 사용자의 의도를 분명하게 파악할 수 있다. 따라서, 현재 사용자 발화에만 기초하는 종래 기술에 비해, 사용자 발화에 포함된 개체명의 의미 또는 의도를 보다 정확하게 파악할 수 있고, 해당 사용자 발화에 대한 시스템 응답 또한 정확하게 도출할 수 있는 응답 도출 장치, 방법 및 컴퓨터 프로그램을 제공할 수 있다.
또한, 사용자 발화에 대하여 대화 의도를 도출하는 동시에 사용자 발화에 포함된 개체명을 인식할 수 있다. 즉, 사용자가 의도한 대화 의도 및 상황에 맞게 개체명을 인식할 수 있다. 예를 들어, 특정 주제의 대화에서 일반 명사가 고유 명사처럼 쓰이는 경우에도 사용자의 의도에 맞게 개체명을 인식할 수 있고, 동일한 의미의 어휘가 중복되어 사용되는 경우에도 하나의 개체명으로 인식할 수 있다. 따라서, 사용자와의 대화를 원활하게 수행할 수 있고, 사용자와의 대화 범위를 확장시킬 수 있는 응답 도출 장치, 방법 및 컴퓨터 프로그램을 제공할 수 있다.
도 1은 종래 기술에 따른 개체명 인식을 설명하기 위한 예시적인 도면이다.
도 2는 본 발명의 일 실시예에 따른 응답 도출 장치의 구성도이다.
도 3 내지 도 5는 본 발명의 일 실시예에 따른 학습 입력 문장의 생성을 설명하기 위한 예시적인 도면이다.
도 6은 본 발명의 일 실시예에 따른 대화 의도-개체명 통합 모델을 설명하기 위한 예시적인 도면이다.
도 7은 본 발명의 일 실시예에 따른 대화 의도-개체명 통합 모델을 최종적으로 결정하는 과정을 설명하기 위한 예시적인 도면이다.
도 8은 본 발명의 일 실시예에 따른 응답 도출 방법의 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.
이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 응답 도출 장치의 구성도이다. 도 2를 참조하면, 응답 도출 장치(200)는 수신부(210), 대화 의도 및 개체명 도출부(220), 응답 도출부(230) 및 학습부(240)를 포함할 수 있다. 다만 위 구성 요소들(210 내지 240)은 응답 도출 장치(200)에 의하여 제어될 수 있는 구성요소들을 예시적으로 도시한 것일 뿐이다.
도 2의 응답 도출 장치(200)의 각 구성요소들은 일반적으로 네트워크(network)를 통해 연결된다. 예를 들어, 도 2에 도시된 바와 같이, 수신부(210), 대화 의도 및 개체명 도출부(220), 응답 도출부(230) 및 학습부(240)는 동시에 또는 시간 간격을 두고 연결될 수 있다.
네트워크는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷 (WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다. 무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 블루투스 통신, 적외선 통신, 초음파 통신, 가시광 통신(VLC: Visible Light Communication), 라이파이(LiFi) 등이 포함되나 이에 한정되지는 않는다.
응답 도출 장치(200)는 사용자 발화에 대하여 대화 의도를 도출하는 동시에 사용자 발화에 포함된 개체명을 인식할 수 있다. 즉, 응답 도출 장치(200)는 사용자 발화에 대한 대화 의도 및 상황에 따른 개체명을 인식할 수 있다.
예를 들어, 응답 도출 장치(200)는 특정 주제의 대화에서 일반 명사가 고유 명사처럼 쓰이는 경우에도 사용자의 의도에 맞게 개체명을 인식할 수 있고, 비슷한 의미의 어휘가 연속되어 사용되는 경우에도 하나의 개체명으로 인식할 수 있다.
또한, 응답 도출 장치(200)는 사용자 발화의 해당 발화 턴을 해석하는 과정에서 이전 대화 정보를 함께 활용하여 사용자의 의도를 분명하게 파악할 수 있다.
예를 들어, 응답 도출 장치(200)는 현재 사용자 발화와 관련하여 이전 사용자 발화 및 이전 시스템 응답을 반영하여 현재 사용자 발화에 포함된 개체명을 인식하고, 사용자의 대화 의도를 도출할 수 있다.
이하, 응답 도출 장치(200)의 각 구성을 살펴보도록 한다.
수신부(210)는 사용자 발화를 수신할 수 있고, 대화 의도 및 개체명 도출부(220)는 수신한 사용자 발화에 대하여 사용자의 대화 의도를 도출하고, 사용자 발화에 포함된 개체명을 인식할 수 있다. 이 때, 대화 의도 및 개체명 도출부(220)는 현재 사용자 발화와 관련하여 이전 사용자 발화 및 이전 시스템 응답까지 확장하여 현재 사용자 발화의 의미 또는 의도를 파악할 수 있다.
구체적으로, 대화 의도 및 개체명 도출부(220)는 사용자 발화 및 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 사용자 발화에 대한 대화 의도 및 개체명을 도출할 수 있다.
예를 들어, 대화 의도 및 개체명 도출부(220)는 현재 사용자 발화와 관련하여 현재 사용자 발화의 이전 턴에 해당하는 복수의 이전 사용자 발화 중 활용하고자 하는 이전 사용자 발화의 수(대화 턴)를 미리 설정할 수 있다.
예를 들어, 대화 의도 및 개체명 도출부(220)는 대화 의도-개체명 통합 모델의 크기 및 훈련 시간 등을 고려하여 확장하고자 하는 이전 사용자 발화의 수(대화 턴)를 설정할 수 있다. 일예로, 대화 의도 및 개체명 도출부(220)는 바로 이전의 사용자 발화, 바로 이전의 시스템 응답 및 현재 사용자 발화를 포함하는 총 3개의 대화 턴을 누적하기로 설정할 수 있다.
응답 도출부(230)는 도출된 대화 의도 및 도출된 개체명에 기초하여 사용자 발화에 대한 시스템 응답을 도출할 수 있다. 예를 들어, 응답 도출부(230)는 사용자 발화로부터 도출된 대화 의도 및 도출된 개체명을 동시에 고려하여 사용자의 대화 의도에 맞는 시스템 응답을 정확하게 도출할 수 있다.
학습부(240)는 상담 대화에 대한 복수의 원시 발화 중 적어도 하나의 원시 발화 및 복수의 원시 발화에 대한 복수의 원시 시스템 응답 중 적어도 하나의 원시 시스템 응답에 기초하여 대화 의도-개체명 통합 모델을 학습시킬 수 있다. 예를 들어, 학습부(240)는 적어도 하나의 원시 발화 및 적어도 하나의 원시 시스템 응답을 누적하고 결합하여 대화 의도-개체명 통합 모델을 학습하기 위한 학습 입력 문장을 생성할 수 있다.
학습부(240)는 학습 입력 문장 생성부(241)를 포함할 수 있다. 학습 입력 문장 생성부(241)는 복수의 원시 발화 중 제 1 원시 발화, 제 1 원시 발화의 이전 턴에 해당하는 제 2 원시 발화 및 제 2 원시 발화에 대한 원시 시스템 응답을 결합하여 학습 입력 문장을 생성할 수 있다.
학습부(240)는 대화 의도-개체명 통합 모델의 크기 및 훈련 시간 등을 고려하여 학습 입력 문장에 포함시켜서 확장하고자 하는 이전 사용자 발화의 수(대화 턴)를 설정할 수 있다. 일예로, 학습부(240)는 제 1 원시 발화, 제 1 원시 발화의 이전 턴에 해당하는 제 2 원시 발화 및 제 2 원시 발화에 대한 원시 시스템 응답을 포함하는 총 3개의 대화 턴에 해당하는 발화 데이터를 누적하여 학습 입력 문장에 포함시키는 것으로 설정할 수 있다.
학습 입력 문장 생성부(241)는 원시 발화 및 원시 시스템 응답을 어휘 별로 분리할 수 있고, 원시 발화 및 원시 시스템 응답에 적어도 하나의 메타 어휘를 추가하여 학습 입력 문장을 생성할 수 있다.
학습 입력 문장 생성부(241)는 학습 입력 문장에 정답 표지를 추가할 수 있다. 여기서, 정답 표지는 메타 어휘에 대응하는 대화 의도 정보 및 분리된 어휘에 대응하는 개체명 타입을 포함할 수 있다.
학습부(240)는 학습 입력 문장 및 기학습된 언어 모델에 기초하여 대화 의도-개체명 통합 모델을 학습시킬 수 있다. 예를 들어, 기학습된 언어 모델은 BERT 알고리즘 모델일 수 있고, BERT 알고리즘의 경우, 하나의 입력 어휘가 학습된 이후에는 768개의 실수로 구성된 벡터값으로 바뀐다.
학습부(240)는 통합 손실값에 기초하여 대화 의도-개체명 통합 모델을 학습시킬 수 있다. 학습부(240)는 대화 의도-개체명 통합 모델에 대한 대화 의도 손실값 및 개체명 손실값에 기초하여 통합 손실값을 도출할 수 있다. 예를 들어, 학습부(240)는 하기 수학식 1에 기초하여 대화 의도 손실값을 산출할 수 있다.
<수학식 1>
수학식 1에서, 은 대화 의도 손실값이고, N은 학습 입력 문장의 총 개수이다. 예를 들어, 대화 의도 레이블의 총 개수를 K, 임베딩 벡터의 차원을 H=768으로 가정하면, 소프트맥스 레이어의 weight matrix WC의 차원은 K*H이다. 이 때, 응답 도출 장치(200)는 수학식 1과 같은 대화 의도 손실값을 산출할 수 있다.
예를 들어, 학습부(240)는 하기 수학식 2에 기초하여 개체명 손실값을 산출할 수 있다.
<수학식 2>
수학식 2에서, 은 개체명 손실값이고, N은 학습 입력 문장의 총 개수이고, n은 토큰의 개수이다. 예를 들어, 학습 입력 문장에 정의된 개체명 타입의 수가 M개라면, 총 개체명 레이블의 수는 2*M+1개가 된다. 그리고, 개체명 인식을 위한 소프트맥스 레이어의 가중치 매트릭스를 WE라고 가정하면, 차원은 (2*M+1)*H가 된다. 이 때, 응답 도출 장치(200)는 수학식 2와 같은 개체명 손실값을 산출할 수 있다.
예를 들어, 학습부(240)는 하기 수학식 3에 기초하여 통합 손실값을 도출할 수 있다.
<수학식 3>
수학식 3에서, 은 통합 손실값이고, 는 대화 의도 손실값이고, 은 개체명 손실값이다. 그리고, 는 학습 파라미터이다. 예를 들어, 응답 도출 장치(200)는 대화 의도 손실값 및 개체명 손실값에 기초하여 수학식 3과 같은 통합 손실값을 도출할 수 있다.
학습부(240)는 학습 파라미터(, 수학식 3 참조)를 결정하기 위해 학습된 복수의 대화 의도-개체명 통합 모델 간의 성능 결과를 비교할 수 있다. 구체적으로, 학습부(240)는 복수의 통합 손실값에 대응하는 복수의 훈련 파라미터에 기초하여 복수의 대화 의도-개체명 통합 모델을 학습시킬 수 있다.
학습부(240)는 학습된 복수의 대화 의도-개체명 통합 모델 간의 성능 결과를 비교할 수 있다. 학습부(240)는 비교 결과에 기초하여 복수의 훈련 파라미터 중 가장 좋은 성능의 대화 의도-개체명 통합 모델에 해당하는 어느 하나의 훈련 파라미터를 선택할 수 있다.
도 3 내지 도 5는 본 발명의 일 실시예에 따른 학습 입력 문장의 생성을 설명하기 위한 예시적인 도면이다. 먼저, 도 3을 참조하면, 응답 도출 장치(200)는 하나의 원시 발화를 어휘 별로 분리하고, 메타 어휘를 추가할 수 있다. 이하, 상담 대화 중 "모바일 전화요"라는 원시 발화(30)를 예로 들어 도 3의 (a) 내지 (c)를 살펴보자.
도 3의 (a)를 참조하면, 응답 도출 장치(200)는 "모바일 전화요"라는 원시 발화(30)를 어휘 별로 분리할 수 있다. 예를 들어, 응답 도출 장치(200)는 원시 발화(30)를 '모바일(310)' 및 '전화요(320)'로 분리할 수 있다.
도 3의 (b)를 참조하면, 응답 도출 장치(200)는 어휘 별로 분리된 원시 발화(30)에 적어도 하나의 메타 어휘를 추가할 수 있다. 예를 들어, 응답 도출 장치(200)는 원시 발화(30)의 앞부분에 '[CLS](330)'라는 메타 어휘를 추가할 수 있다. 여기서, 추가된 '[CLS](330)'라는 메타 어휘는 문장 전체를 대표하는 가상 어휘로써 전이 학습에서 미세 조정(Fine-tuning) 결과, 문장의 전체 의도 레이블을 추론하기 위한 용도일 수 있다.
예를 들어, 응답 도출 장치(200)는 단어 중간에 나오는 음절과 단어 첫 부분에 나오는 음절을 구분하기 위하여 '모바일(310)'은 '_모바일(311)'로 변환할 수 있다. 응답 도출 장치(200)는 '전화요(320)'를 '_전화(321)' 및 '요(322)'로 분리할 수 있고, 원시 발화(30)의 맨 마지막에 '[SEP](340)'라는 메타 어휘를 추가하여 문장의 종결을 표시할 수 있다.
도 3의 (c)를 참조하면, 응답 도출 장치(200)는 원시 발화(30)를 가공하여 대화 의도-개체명 통합 모델의 입력 포맷인, 학습 입력 문장(300)으로 변환할 수 있다. 예를 들어, 응답 도출 장치(200)는 2 어절로 구성된 원시 발화(30)를 5개의 기본 어휘로 구성된 학습 입력 문장(300)으로 변환할 수 있다.
예를 들어, 응답 도출 장치(200)는 학습 입력 문장(300)에 정답 표지(300a)를 추가할 수 있다. 응답 도출 장치(200)는 학습 입력 문장(300)의 첫 원소인, '[CLS](330)'라는 메타 어휘에 원시 발화(30)의 대화 의도 정보, '납부_방법_확인(330a)'을 추가할 수 있다.
예를 들어, 응답 도출 장치(200)는 학습 입력 문장(300)의 분리된 어휘(311 내지 322)에 각각 대응하는 개체명 타입(311a 내지 322a)을 추가할 수 있다. 여기서, 개체명 타입은 특정 개체명의 타입 별로 두 개씩 정의될 수 있다. 일예로, 통신 서비스명 타입의 개체명 토큰에 대해서는 'B_SVC(Beginning of Service_name)' 및 'I_SVC(Inside of Service_name named entity)'로 정의할 수 있다.
예를 들어, 응답 도출 장치(200)는 분리된 어휘, '_모바일(311)'에 'B_SVC(311a)'를 추가할 수 있고, '_전화(321)'에 'I_SVC(321a)'를 추가할 수 있다. 또한, 응답 도출 장치(200)는 나머지 분리된 어휘, '요(322)' 및 '[SEP](340)'라는 메타 어휘에 모든 개체명 타입 공통으로 'O(Outside of named entity, 322a)'를 추가로 정의할 수 있다.
예를 들어, 응답 도출 장치(200)는 학습 입력 문장(300)에 총 3개의 정답 표지(300a)를 추가로 정의할 수 있다. 이를 통해, 응답 도출 장치(200)는 학습 입력 문장(300)에 포함된 '_모바일(311)' 및 '_전화(321)'의 문자열을 하나의 개체명으로 인식하도록 할 수 있다. 즉, 응답 도출 장치(200)는 정답 표지(300a)를 이용하여 학습 입력 문장(300)에 포함된 하나의 개체명이 2개 이상의 토큰 시퀀스로 이루어진 경우도 대응할 수 있다.
응답 도출 장치(200)는 현재 사용자 발화와 관련하여 현재 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 이전 사용자 발화에 대한 시스템 응답까지 확장하여 사용자의 대화 의도를 정확하게 도출할 수 있다. 이하, 도 4를 참조하여 살펴보도록 한다.
도 4에 도시된 표는 사용자와의 상담 대화가 멀티 턴(U-2턴 내지 U-4턴)으로 이루어진 경우의 예시이다. 종래 기술에서는 현재 사용자 발화 만으로, 즉, 단일 발화(410)만으로 사용자의 대화 의도를 도출하고 있으나, 본 발명에 따른 응답 도출 장치(200)는 현재 사용자 발화뿐만 아니라 이전 상담 대화의 이력도 함께, 즉, 다중 발화(420)에 기초하여 사용자의 대화 의도를 도출하고 있다.
도 4를 참조하면, U-2턴(430)에서는 현재 사용자 발화, "요금 납부 방법을 확인하려구요"만으로도 사용자의 대화 의도를 용이하게 도출할 수 있다. 예를 들어, 종래 기술에 따라 U-2턴(430)의 단일 발화(410) 만으로 대화 의도가 ''납부_방법_확인(431)'이라는 것을 도출할 수 있다. 응답 도출 장치(200) 또한 사용자의 첫 발화, U-2턴(430)으로부터 대화 의도가 ''납부_방법_확인(432)'이라는 것을 도출할 수 있다.
그러나, U-3턴(440)에서는 현재 사용자 발화, "모바일 전화요"만으로 사용자의 대화 의도를 도출하기가 어렵다. 예를 들어, 종래 기술에 따라 U-3턴(440)의 단일 발화(410)만으로는 사용자의 대화 의도를 파악할 수가 없다(441).
응답 도출 장치(200)는 U-3턴(440)의 사용자 발화와 관련하여 이전 사용자 발화 및 이전 시스템 응답까지 확장할 수 있다. 예를 들어, 응답 도출 장치(200)는 U-3턴(440)의 사용자 발화, "모바일 전화요"와 관련하여 U-2턴(430)의 사용자 발화, "요금 납부 방법을 확인하려구요" 이전 시스템 응답(S-2턴), "문의하시는 상품을 말씀해주세요" 및 현재 사용자 발화, "모바일 전화요"를 결합할 수 있다.
예를 들어, 응답 도출 장치(200)는 U-3턴(440)의 사용자 발화와 관련하여 U-2턴(430)의 사용자 발화 및 이전 시스템 응답(S-2턴)을 함께 고려하여, U-3턴(440)의 사용자 발화에 대한 대화 의도가 U-2턴(430)과 마찬가지로 '납부_방법_확인(442)'이라는 것을 도출할 수 있다.
한편, U-4턴(450)의 사용자 발화와 관련하여, 종래 기술에서는 U-4턴(450)의 단일 발화(410)에만 기초하여 사용자의 대화 의도가 '유무선_요금_업무(451)'라는 것을 도출할 수 있다.
응답 도출 장치(200)는 U-4턴(450)의 사용자 발화, "계좌 이체랑 카드 결제랑 이중으로 결제가 된거 같아요"와 관련하여 U-3턴(440)의 사용자 발화, "모바일 전화요", 이전 시스템 응답(S-3턴), "현재 납부 방법은 신용카드입니다. 등록된 자동이체의 카드사도 확인해드릴까요?" 및 현재 사용자 발화, "계좌 이체랑 카드 결제랑 이중으로 결제가 된거 같아요"까지 확장하여 고려할 수 있다. 응답 도출 장치(200)는 U-4턴(450)의 사용자 발화에 대한 대화 의도가 '유무선_요금_업무(452)'라는 것을 도출할 수 있다. 또한, 응답 도출 장치(200)는 U-4턴(450)에서 대화 주제가 전환되었음을 파악할 수 있다.
이와 같이, 응답 도출 장치(200)는 현재 사용자 발화와 관련하여 이전 사용자 발화 및 이전 시스템 응답까지 확장할 수 있고, 이를 통해, 사용자와의 대화 의도를 정확하게 파악할 수 있을 뿐만 아니라, 사용자와의 대화 흐름을 원활하게 파악할 수 있다.
도 5를 참조하면, 응답 도출 장치(200)는 학습 입력 문장에 정답 표지를 추가하여 대화 의도-개체명 통합 모델을 학습할 수 있다. 예를 들어, 응답 도출 장치(200)는 학습 입력 문장에 정답 표지를 추가하여 대화 의도-개체명 통합 모델의 입력 문장(510 내지 530)을 생성할 수 있다.
예를 들어, 제1 입력 문장(510)은 사용자의 제1 원시 발화, "요금 납부 방법을 확인하려구요"를 전처리한 학습 입력 문장 및 제1 원시 발화에 대한 정답 표지, "납부 방법 확인"를 포함할 수 있다. 제2 입력 문장(520)은 사용자의 제1 원시 발화, "요금 납부 방법을 확인하려구요", 제1 원시 발화에 대한 제1 시스템 응답, "문의하시는 상품을 말씀해주세요" 및 제2 원시 발화, "모바일 전화요"를 전처리한 학습 입력 문장에 제1 원시 발화에 대한 정답 표지, "납부 방법 확인" 및 제2 원시 발화로부터 도출된 개체명, "B_SVL", "I_SVC"이 정답 표지로 추가될 수 있다.
예를 들어, 제3 입력 문장(530)은 사용자의 제2 원시 발화, "모바일 전화요", 제2 원시 발화에 대한 제2 시스템 응답, "현재 납부 방법은 신용카드입니다. 등록된 자동이체의 카드사도 확인해드릴까요" 및 제3 원시 발화, "계좌 이체랑 카드 결제랑 이중으로 결제가 된 거 같아요"를 전처리한 학습 입력 문장에 제3 원시 발화에 대한 정답 표지, "유무선 요금 업무", 제2 원시 발화로부터 도출된 개체명, "B_SVL", "I_SVC"및 제3 원시 발화로부터 도출된 개체명, "B_PAY", "I_PAY", ..., "OB_PAY" 이 정답 표지로 추가될 수 있다.
이와 같이, 응답 도출 장치(200)는 사용자 발화로부터 도출된 대화 의도 및 개체명을 결합한 입력 문장(510 내지 530)을 이용하여 대화 의도-개체명 통합 모델을 학습할 수 있다. 이하, 도 6을 참조하여 학습된 대화 의도-개체명 통합 모델을 살펴보도록 한다.
도 6은 본 발명의 일 실시예에 따른 대화 의도-개체명 통합 모델을 설명하기 위한 예시적인 도면이다. 도 6을 참조하면, 응답 도출 장치(200)는 학습 입력 문장(610) 및 기학습된 언어 모델(620)에 기초하여 대화 의도-개체명 통합 모델(600)을 생성할 수 있다. 예를 들어, 응답 도출 장치(200)는 사전에 학습된 모델을 이용하여 새로운 모델을 학습하는, 전이 학습 방법을 활용할 수 있다.
예를 들어, 응답 도출 장치(200)는 BERT(Bi-directional Encoder Representations from Transformers) 알고리즘을 이용하여 대용량 한국어 뉴스 기사 등을 입력하여 기학습된 언어 모델(620)을 생성할 수 있다.
예를 들어, 응답 도출 장치(200)는 기학습된 언어 모델(620)의 네트워크 가중치에 기초하여 학습 입력 문장을 통해 응용 도메인에 특화된 분류 모델, 대화 의도-개체명 통합 모델(600)을 학습시킬 수 있다.
구체적으로, 응답 도출 장치(200)는 사용자의 원시 발화(611)를 가공한 학습 입력 문장(610)을 기학습된 언어 모델(620)에 입력할 수 있다. 예를 들어, 기학습된 언어 모델(620)은 전이 학습 과정에서 상층부에 제1 소프트맥스 레이어(Softmax Layer, 631) 및 제2 소프트맥스 레이어(632)를 추가할 수 있고, 이를 통해 도메인 응용에 따른 추가 분류 작업(630, 640)을 수행할 수 있다.
예를 들어, 도 6을 참조하면, 응답 도출 장치(200)는 "모바일 전화요"라는 사용자의 원시 발화(611)를 훈련 포맷에 맞게 전처리하여 '[CLS]_모바일 _전화 요[SEP]'라는 학습 입력 문장(610)을 생성할 수 있고, 학습 입력 문장(610)과 함께 원시 발화(611)에 대한 정답 표지를 추가하여 기학습된 언어 모델(620)에 입력할 수 있다.
예를 들어, 응답 도출 장치(200)는 학습 입력 문장(610)의 각 어휘에 대한 훈련을 기학습된 언어 모델(620)의 내부에서 진행할 수 있다. 응답 도출 장치(200)는 학습 입력 문장(610)의 각 어휘를 임베딩 값으로 표시할 수 있다.
예를 들어, 응답 도출 장치(200)는 기학습된 언어 모델(620)의 초기 임베딩 벡터값, E1, E2, E3, ... En(621)을 심층 신경망 훈련을 통해 C, T1, T2, ..., Tn 벡터의 열(622)로 표현할 수 있다.
예를 들어, 응답 도출 장치(200)는 최상위 'C' 벡터의 임베딩 값을 제1 소프트맥스 레이어(631)를 거쳐 각 대화 의도 레이블에 대한 확률값(630)으로 출력할 수 있고, 제2 소프트맥스 레이어(632)를 거쳐 각 개체명(640)을 출력할 수 있다.
이와 같이, 응답 도출 장치(200)는 사용자 발화에 대한 대화 의도 및 개체명을 동시에 도출할 수 있다. 이를 통해, 응답 도출 장치(200)는 사용자가 의도한 대화 의도 및 상황에 맞게 개체명을 인식할 수 있다. 예를 들어, 응답 도출 장치(200)는 특정 주제의 대화에서 일반 명사가 고유 명사처럼 쓰이는 경우에도 사용자의 의도에 맞게 개체명을 인식할 수 있고, 동일한 의미의 어휘가 중복되어 사용되는 경우에도 하나의 개체명으로 인식하도록 할 수 있다.
도 7은 본 발명의 일 실시예에 따른 대화 의도-개체명 통합 모델을 최종적으로 결정하는 과정을 설명하기 위한 예시적인 도면이다. 도 7을 참조하면, 응답 도출 장치(200)는 학습 파라미터를 결정하기 위해 학습된 복수의 대화 의도-개체명 통합 모델 간의 성능 결과를 비교하여 통합 손실값의 학습 파라미터(, 전술한 수학식 3 참조)를 결정(722)할 수 있다.
예를 들어, 응답 도출 장치(200)는 학습 입력 문장(711)을 이용하여 대화 의도-개체명 통합 모델의 가중치를 학습(721)할 수 있다. 이 때, 대화 의도-개체명 통합 모델을 최종적으로 결정하는데 소요되는 데이터 중에서 학습 입력 문장(711)의 비율은 약 80%(731)를 차지할 수 있다.
예를 들어, 응답 도출 장치(200)는 0에서 1 사이에서 훈련 파라미터의 후보값 5개를 선정할 수 있다. 일예로, 응답 도출 장치(200)는 균등 간격 분할법을 사용하여, 총 5개의 구간으로 훈련 파라미터의 후보값, '0.1, 0.3, 0.5, 0.7, 0.9'을 생성할 수 있다.
예를 들어, 응답 도출 장치(200)는 선정된 훈련 파라미터의 후보값 별로 대화 의도-개체명 통합 모델을 생성할 수 있다. 일예로, 응답 도출 장치(200)는 5개의 대화 의도-개체명 통합 모델을 생성할 수 있다.
예를 들어, 응답 도출 장치(200)는 검증 데이터(712)를 이용하여 5개의 대화 의도-개체명 통합 모델에 대한 검증 작업을 수행할 수 있다. 이 때, 대화 의도-개체명 통합 모델을 생성하는데 소요되는 데이터 중에서 검증 데이터(712)의 비율은 약 10%(732)를 차지할 수 있다.
예를 들어, 응답 도출 장치(200)는 검증 데이터(712)를 이용하여 각 대화 의도-개체명 통합 모델을 통해 도출된 대화 의도 및 개체명이 검증 데이터(712)의 정답과 동일한지 비교하여 각 대화 의도-개체명 통합 모델의 성능을 확인할 수 있다. 응답 도출 장치(200)는 비교 결과에 따라, 가장 성능이 우수한 대화 의도-개체명 통합 모델을 결정할 수 있다. 이를 통해, 응답 도출 장치(200)는 5개의 대화 의도-개체명 통합 모델 중에서 가장 성능이 우수한 모델로 결정된 대화 의도-개체명 통합 모델의 학습 파라미터(, 전술한 수학식 3 참조)를 최적 학습 파라미터로 결정(722)할 수 있다.
예를 들어, 응답 도출 장치(200)는 테스트 데이터(713)를 이용하여 결정된 대화 의도-개체명 통합 모델에 대한 최종 성능을 검증할 수 있다. 이 때, 대화 의도-개체명 통합 모델을 생성하는데 소요되는 데이터 중에서 테스트 데이터(713)의 비율은 약 10%를 차지할 수 있다.
예를 들어, 응답 도출 장치(200)는 결정된 대화 의도-개체명 통합 모델에 대한 최종 성능 검증 결과, 기설정된 임계치를 초과하는 성능이 확인되면, 해당 대화 의도-개체명 통합 모델을 최종적으로 결정할 수 있다. 따라서, 응답 도출 장치(200)는 대화 의도-개체명 통합 모델에 대하여 보다 정교한 학습 파라미터의 최적값을 결정할 수 있다.
도 8은 본 발명의 일 실시예에 따른 응답 도출 방법의 순서도이다. 도 8에 도시된 사용자 발화에 대한 응답을 도출하는 방법은 도 2 내지 도 7에 도시된 실시예에 따라 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하 생략된 내용이라고 하더라도 도 2 내지 도 7에 도시된 실시예에 따른 응답 도출 장치(200)에서 사용자 발화에 대한 응답을 도출하는 방법에도 적용된다.
단계 S810에서 응답 도출 장치는 사용자 발화를 수신할 수 있다.
단계 S820에서 응답 도출 장치는 사용자 발화 및 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 사용자 발화에 대한 대화 의도 및 개체명을 도출할 수 있다.
단계 S830에서 응답 도출 장치는 도출된 대화 의도 및 도출된 개체명에 기초하여 사용자 발화에 대한 시스템 응답을 도출할 수 있다.
상술한 설명에서, 단계 S810 내지 S830는 본 발명의 구현 예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 전환될 수도 있다.
도 2 내지 도 8을 통해 설명된 응답 도출 장치에서 사용자 발화에 대한 응답을 도출하는 방법은 컴퓨터에 의해 실행되는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램 또는 컴퓨터에 의해 실행 가능한 명령어들을 포함하는 기록 매체의 형태로도 구현될 수 있다. 또한, 도 2 내지 도 8을 통해 설명된 응답 도출 장치에서 사용자 발화에 대한 응답을 도출하는 방법은 컴퓨터에 의해 실행되는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램의 형태로도 구현될 수 있다.
컴퓨터 판독 가능 기록매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 기록매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
200: 응답 도출 장치
210: 수신부
220: 대화 의도 및 개체명 도출부
230: 응답 도출부
240: 학습부

Claims (17)

  1. 사용자 발화에 대한 응답을 도출하는 장치에 있어서,
    사용자 발화를 수신하는 수신부;
    상기 사용자 발화 및 상기 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 상기 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 상기 사용자 발화에 대한 대화 의도 및 개체명을 도출하는 대화 의도 및 개체명 도출부; 및
    상기 도출된 대화 의도 및 상기 도출된 개체명에 기초하여 상기 사용자 발화에 대한 시스템 응답을 도출하는 응답 도출부
    를 포함하는, 응답 도출 장치.
  2. 제 1 항에 있어서,
    상담 대화에 대한 복수의 원시 발화 중 적어도 하나의 원시 발화 및 상기 복수의 원시 발화에 대한 복수의 원시 시스템 응답 중 적어도 하나의 원시 시스템 응답에 기초하여 상기 대화 의도-개체명 통합 모델을 학습시키는 학습부;
    를 더 포함하는, 응답 도출 장치.
  3. 제 2 항에 있어서,
    상기 학습부는,
    상기 원시 발화 및 상기 원시 시스템 응답을 어휘 별로 분리하고, 상기 원시 발화 및 상기 원시 시스템 응답에 적어도 하나의 메타 어휘를 추가하여 학습 입력 문장을 생성하는 학습 입력 문장 생성부
    를 포함하는 것인, 응답 도출 장치.
  4. 제 3 항에 있어서,
    상기 학습 입력 문장 생성부는 상기 학습 입력 문장에 정답 표지를 추가하고,
    상기 정답 표지는 상기 메타 어휘에 대응하는 대화 의도 정보 및 상기 분리된 어휘에 대응하는 개체명 타입을 포함하는 것인, 응답 도출 장치.
  5. 제 3 항에 있어서,
    상기 학습 입력 문장 생성부는,
    상기 복수의 원시 발화 중 제 1 원시 발화, 상기 제 1 원시 발화의 이전 턴에 해당하는 제 2 원시 발화 및 상기 제 2 원시 발화에 대한 원시 시스템 응답을 결합하여 상기 학습 입력 문장을 생성하는 것인, 응답 도출 장치.
  6. 제 3 항에 있어서,
    상기 학습부는,
    상기 학습 입력 문장 및 기학습된 언어 모델에 기초하여 상기 대화 의도-개체명 통합 모델을 학습시키는 것인, 응답 도출 장치.
  7. 제 2 항에 있어서,
    상기 학습부는,
    상기 대화 의도-개체명 통합 모델에 대한 대화 의도 손실값 및 개체명 손실값에 기초하여 통합 손실값을 도출하고, 상기 통합 손실값에 기초하여 상기 대화 의도-개체명 통합 모델을 학습시키는 것인, 응답 도출 장치.
  8. 제 7 항에 있어서,
    상기 학습부는,
    복수의 통합 손실값에 대응하는 복수의 훈련 파라미터에 기초하여 복수의 대화 의도-개체명 통합 모델을 학습시키고,
    상기 학습된 복수의 대화 의도-개체명 통합 모델 간의 성능 결과를 비교하고,
    비교 결과에 기초하여 상기 복수의 훈련 파라미터 중 어느 하나의 훈련 파라미터를 선택하는 것인, 응답 도출 장치.
  9. 사용자 발화에 대한 응답을 도출하는 방법에 있어서,
    사용자 발화를 수신하는 단계;
    상기 사용자 발화 및 상기 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 상기 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 상기 사용자 발화에 대한 대화 의도 및 개체명을 도출하는 단계; 및
    상기 도출된 대화 의도 및 상기 도출된 개체명에 기초하여 상기 사용자 발화에 대한 시스템 응답을 도출하는 단계
    를 포함하는, 응답 도출 방법.
  10. 제 9 항에 있어서,
    상담 대화에 대한 복수의 원시 발화 중 적어도 하나의 원시 발화 및 상기 복수의 원시 발화에 대한 복수의 원시 시스템 응답 중 적어도 하나의 원시 시스템 응답에 기초하여 상기 대화 의도-개체명 통합 모델을 학습시키는 단계
    를 더 포함하는 것인, 응답 도출 방법.
  11. 제 10 항에 있어서,
    상기 대화 의도-개체명 통합 모델을 학습시키는 단계는,
    상기 원시 발화 및 상기 원시 시스템 응답을 어휘 별로 분리하는 단계; 및
    상기 원시 발화 및 상기 원시 시스템 응답에 적어도 하나의 메타 어휘를 추가하여 학습 입력 문장을 생성하는 단계
    를 포함하는 것인, 응답 도출 방법.
  12. 제 11 항에 있어서,
    상기 학습 입력 문장을 생성하는 단계는,
    상기 학습 입력 문장에 정답 표지를 추가하는 단계
    를 포함하고,
    상기 정답 표지는 상기 메타 어휘에 대응하는 대화 의도 정보 및 상기 분리된 어휘에 대응하는 개체명 타입을 포함하는 것인, 응답 도출 방법.
  13. 제 11 항에 있어서,
    상기 학습 입력 문장을 생성하는 단계는,
    상기 복수의 원시 발화 중 제 1 원시 발화, 상기 제 1 원시 발화의 이전 턴에 해당하는 제 2 원시 발화 및 상기 제 2 원시 발화에 대한 원시 시스템 응답을 결합하여 상기 학습 입력 문장을 생성하는 단계
    를 포함하는 것인, 응답 도출 방법.
  14. 제 11 항에 있어서,
    상기 대화 의도-개체명 통합 모델을 학습시키는 단계는,
    상기 학습 입력 문장 및 기학습된 언어 모델에 기초하여 상기 대화 의도-개체명 통합 모델을 학습시키는 단계
    를 포함하는 것인, 응답 도출 방법.
  15. 제 10 항에 있어서,
    상기 대화 의도-개체명 통합 모델을 학습시키는 단계는,
    상기 대화 의도-개체명 통합 모델에 대한 대화 의도 손실값 및 개체명 손실값에 기초하여 통합 손실값을 도출하고, 상기 통합 손실값에 기초하여 상기 대화 의도-개체명 통합 모델을 학습시키는 단계
    를 포함하는 것인, 응답 도출 방법.
  16. 제 15 항에 있어서,
    상기 대화 의도-개체명 통합 모델을 학습시키는 단계는,
    복수의 통합 손실값에 대응하는 복수의 훈련 파라미터에 기초하여 복수의 대화 의도-개체명 통합 모델을 학습시키는 단계;
    상기 학습된 복수의 대화 의도-개체명 통합 모델 간의 성능 결과를 비교하는 단계 및;
    비교 결과에 기초하여 상기 복수의 훈련 파라미터 중 어느 하나의 훈련 파라미터를 선택하는 단계
    를 더 포함하는 것인, 응답 도출 방법.
  17. 사용자 발화에 대한 응답을 도출하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우,
    사용자 발화를 수신하고,
    상기 사용자 발화 및 상기 사용자 발화의 이전 턴에 해당하는 적어도 하나의 이전 사용자 발화 및 상기 이전 사용자 발화에 대한 시스템 응답을 대화 의도-개체명 통합 모델에 입력하여 상기 사용자 발화에 대한 대화 의도 및 개체명을 도출하고,
    상기 도출된 대화 의도 및 상기 도출된 개체명에 기초하여 상기 사용자 발화에 대한 시스템 응답을 도출하도록 하는 명령어들의 시퀀스를 포함하는, 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램.
KR1020220015998A 2022-02-08 2022-02-08 사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램 KR20230119804A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220015998A KR20230119804A (ko) 2022-02-08 2022-02-08 사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220015998A KR20230119804A (ko) 2022-02-08 2022-02-08 사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR20230119804A true KR20230119804A (ko) 2023-08-16

Family

ID=87848615

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220015998A KR20230119804A (ko) 2022-02-08 2022-02-08 사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR20230119804A (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200092499A (ko) 2019-01-11 2020-08-04 주식회사 하나은행 대화형 인공지능 기술을 이용한 상담 지원 방법 및 그 장치
KR20210028480A (ko) 2019-09-04 2021-03-12 주식회사 부뜰정보시스템 인공지능기반 상담지원장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200092499A (ko) 2019-01-11 2020-08-04 주식회사 하나은행 대화형 인공지능 기술을 이용한 상담 지원 방법 및 그 장치
KR20210028480A (ko) 2019-09-04 2021-03-12 주식회사 부뜰정보시스템 인공지능기반 상담지원장치

Similar Documents

Publication Publication Date Title
WO2021139108A1 (zh) 情绪智能识别方法、装置、电子设备及存储介质
US9767710B2 (en) Apparatus and system for speech intent recognition
CN111241237B (zh) 一种基于运维业务的智能问答数据处理方法及装置
US20160275075A1 (en) Natural Expression Processing Method, Processing and Response Method, Device, and System
CN111858877A (zh) 多类型问题智能问答方法、系统、设备及可读存储介质
KR20190109614A (ko) 계층적으로 사용자 표현을 이해하고 답변을 생성하는 대화형 상담 챗봇 장치 및 방법
CN110266900B (zh) 客户意图的识别方法、装置及客服系统
CN111709223B (zh) 基于bert的句子向量生成方法、装置及电子设备
CN111930914A (zh) 问题生成方法和装置、电子设备以及计算机可读存储介质
US11907665B2 (en) Method and system for processing user inputs using natural language processing
CN113158671B (zh) 一种结合命名实体识别的开放域信息抽取方法
WO2023108994A1 (zh) 一种语句生成方法及电子设备、存储介质
CN112463942A (zh) 文本处理方法、装置、电子设备及计算机可读存储介质
CN111209297B (zh) 数据查询方法、装置、电子设备及存储介质
CN111128175B (zh) 口语对话管理方法及系统
CN115563290A (zh) 一种基于语境建模的智能情感识别方法
Choi et al. Deep learning based response generation using emotion feature extraction
CN114003700A (zh) 一种对话信息的处理方法、系统、电子设备及存储介质
CN112257432A (zh) 一种自适应意图识别方法、装置及电子设备
KR20230119804A (ko) 사용자 발화에 대한 응답을 도출하는 장치, 방법 및 컴퓨터 프로그램
CN115688758A (zh) 一种语句意图识别方法、装置和存储介质
CN114239565A (zh) 一种基于深度学习的情绪原因识别方法及系统
CN114333832A (zh) 一种数据处理方法、设备以及可读存储介质
CN114330701A (zh) 模型训练方法、装置、计算机设备、存储介质及程序产品
CN116913278B (zh) 语音处理方法、装置、设备和存储介质