KR20190083438A - 한국어 대화 장치 - Google Patents

한국어 대화 장치 Download PDF

Info

Publication number
KR20190083438A
KR20190083438A KR1020180001079A KR20180001079A KR20190083438A KR 20190083438 A KR20190083438 A KR 20190083438A KR 1020180001079 A KR1020180001079 A KR 1020180001079A KR 20180001079 A KR20180001079 A KR 20180001079A KR 20190083438 A KR20190083438 A KR 20190083438A
Authority
KR
South Korea
Prior art keywords
message
conversation
voice
user
korean
Prior art date
Application number
KR1020180001079A
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 KR1020180001079A priority Critical patent/KR20190083438A/ko
Publication of KR20190083438A publication Critical patent/KR20190083438A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • G06F17/273
    • G06F17/2755
    • G06F17/278
    • G06F17/28
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • 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/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)

Abstract

본 개시의 일 실시예에 따라 사용자의 메시지를 수신하는 수신부, 자연어 처리 기술에 기초하여 상기 수신된 메시지를 분석하고, 상기 메시지의 의도, 상기 메시지의 내용 및 상기 메시지에 사용된 어체를 파악하는 자연어 이해부, 상기 메시지의 의도에 대응되는 주제를 포함하는 대화 스크립트를 판독하고, 상기 판독된 대화 스크립트에 기초하여 상기 메시지의 내용에 대응되는 응답 메시지를 생성하는 응답 생성부 및 친밀도 지수, 사전 설정된 어체 및 상기 메시지에 사용된 어체 중 적어도 하나에 적어도 부분적으로 기초하여, 상기 생성된 응답 메시지의 어체를 변환하는 어체 변환부를 포함하는 어체 변환이 가능한 한국어 음성 대화 장치를 제공한다.

Description

한국어 대화 장치{KOREAN DIALOGUE APPARATUS}
본 발명은 어체 변환이 가능한 한국어 대화 장치 및 방법 에 관한 것으로, 보다 구체적으로 형태소 분석을 통하여 응답 메시지의 어체를 변환하는 어체 변환이 가능한 한국어 대화 장치 및 방법에 관한 것이다.
자연어 음성 인식과 자연어 기반의 처리 기술, 음성 합성 기술 등이 급속적으로 발전함에 따라, 이들을 접목하는 기술 요구가 증대하고 있다. 스마트 기기에서 직접 글자를 입력하는 타이핑에서 벗어나 직접 자연어 음성으로 검색 및 명령하고 그에 기반한 정보를 처리한 후, 음성으로 제공받을 수 있다. 이들 기술들의 접목 기술 분 야는 자연어 음성을 기반으로 지능형으로 대화를 진행해가는 음성 대화 에이전트 기술로 이슈가 되고 있으며, 대화 처리 시장 규모 또한 매년 증가 추세를 보이고 있다. 또한, 최근에는 음성 대화로 원격 제어 및 모니터링이 가능한 IoT(Internet of Things)가 발전하고 있다.
한국어는 존비와 친소에 따라 높임말 용법, 존중어 용법, 평어 용법, 낮춤말 용법 체계를 가지고 있는데, 이런 말의 형태를 어체(또는 어투)라고 한다. 여기에 더하여 표준어와 각 지방의 사투리 등으로 세분화될 수 있어서 한국어에는 다양한 형태의 어체가 존재한다.
이러한, 한국어의 어체의 특이성과 관련하여 음성 대화 처리 분야에서는 사용자 질의 문장과 대응되는 답변을 제공하기 위한 다양한 기술들이 연구되고 있다.
하지만, 종래의 음성 대화 처리 분야에서는 질의 문장에 대응되는 답변을 어체에 따라 개별 데이터를 준비해야하는 문제점이 있다.
한국 특허 공개 번호 제10-2012-0037169호는 품사별 결합 정보를 이용한 한국어 형태소 분석 시스템 및 그 방법을 개시한다.
본 개시는 전술한 배경기술에 대응하여 안출된 것으로, 본 개시내용의 다양한 목적 중 하나의 목적은 사용자와 친밀도 지수에 따라 응답 메시지의 어체를 변환하기 위한 것이다.
위에서 언급된 본 발명의 기술적 과제 외에도, 본 발명의 다른 특징 및 이점들이 이하에서 기술되거나, 그러한 기술 및 설명으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
전술한 바와 같은 과제를 실현하기 위한 본 개시의 일 실시예에 따라 어체 변환 가능한 한국어 음성 대화 장치는, 사용자의 메시지를 수신하는 수신부, 자연어 처리 기술에 기초하여 상기 수신된 메시지를 분석하고, 상기 메시지의 의도, 상기 메시지의 내용 및 상기 메시지에 사용된 어체를 파악하는 자연어 이해부, 상기 메시지의 의도에 대응되는 주제를 포함하는 대화 스크립트를 판독하고, 상기 판독된 대화 스크립트에 기초하여 상기 메시지의 내용에 대응되는 응답 메시지를 생성하는 응답 생성부 및 친밀도 지수, 사전 설정된 어체 및 상기 메시지에 사용된 어체 중 적어도 하나에 적어도 부분적으로 기초하여, 상기 생성된 응답 메시지의 어체를 변환하는 어체 변환부를 포함할 수 있다.
또한, 상기 한국어 음성 대화 장치는 상기 한국어 음성 대화 장치의 사용에 따른 친밀도 지수를 설정하는 친밀도 설정부를 더 포함하고, 상기 친밀도 지수는, 상기 사용자가 상기 한국어 음성 대화 장치를 사용하는 횟수, 시간, 상기 사용자와 상기 한국어 음성 대화 장치의 대화 기록에 적어도 부분적으로 기초하여 결정될 수 있다.
또한, 상기 한국어 음성 대화 장치는 주제별로 분류된 대화 스크립트를 저장하거나 또는 외부 서버로부터 획득하여, 상기 대화 스크립트를 관리하는 대화 관리부를 더 포함할 수 있다.
상기 사용자의 메시지는 음성 또는 텍스트를 포함하고, 상기 한국어 음성 대화 장치는 상기 사용자의 메시지가 음성인 경우에 상기 사용자의 음성을 인식하고, 인식된 음성을 분석하여 텍스트로 변환하는 음성 인식부 및 상기 변환된 응답 메시지에 대응되는 음성을 합성하여 상기 사용자에게 출력하는 음성 합성부를 더 포함할 수 있다.
또한, 상기 음성 인식부는, 상기 자연어 이해부가 상기 사용자의 메시지에 사용된 어체를 파악할 수 있도록, 상기 분석된 음성의 억양, 강세, 음량 및 어조 중 적어도 어느 하나에 관한 정보를 생성할 수 있다.
상기 자연어 이해부는, 형태소 사전에 기초하여 상기 메시지의 형태소를 분석하는 형태소 분석 모듈, 사전 정의된 룰 기반 및 사전 기반에 기초하여 상기 형태소 분석된 메시지의 구문을 분석하는 구문 분석 모듈, 개체명 사전에 기초하여 상기 형태소 분석된 메시지로부터 개체명을 인식하는 개체명 인식 모듈 및 감성 어휘 사전에 기초하여 상기 형태소 분석된 메시지로부터 상기 메시지의 감성 상태를 분석하는 감성 분석 모듈을 포함할 수 있다.
또한, 상기 응답 생성부는 상기 판독된 대화 스크립트에 기초하여 상기 메시지의 내용에 대응되는 응답 메시지가 없는 경우, 대화를 이어갈 수 있는 질문을 응답 메시지로 생성할 수 있다.
또한, 상기 어체 변환부는, 친밀도 지수, 사전 결정된 어체 및 상기 사용자의 메시지에 사용된 어체에 적어도 하나에 적어도 부분적으로 기초하여, 상기 생성된 응답 메시지의 어체를 결정하는 어체 결정 모듈, 상기 자연어 처리 기술을 이용하여 상기 생성된 응답 메시지를 형태소 단위로 분석하는 형태소 분석 모듈, 상기 어체 결정 모듈에서 결정한 어체에 기초하여 상기 응답 메시지의 분석된 형태소를 변환하는 어체 변환 모듈, 상기 변환된 형태소를 조합하여 응답 메시지의 문장을 생성하는 문장 생성 모듈을 포함하고, 상기 어체는 격식체, 비격식체, 표준어 및 사투리 중 적어도 어느 하나를 포함할 수 있다.
또한, 상기 어체 결정 모듈은, 상기 친밀도 지수가 사전 설정된 점수 이하인 경우에 사전 설정된 제1 어체를 상기 응답 메시지의 어체로 결정하고, 상기 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 상기 응답 메시지의 어체로 결정할 수 있다.
또한, 상기 어체 결정 모듈은, 상기 친밀도 지수가 사전 설정된 점수 이하인 경우에 사전 설정된 제1 어체를 상기 응답 메시지의 어체로 결정하고, 상기 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 상기 사용자의 메시지에 사용된 어체를 상기 응답 메시지의 어체로 결정할 수 있다.
또한, 상기 문장 생성 모듈은, 상기 변환된 형태소에 의해 맞춤법이 맞지 않는 경우, 맞춤법을 교정하여 응답 메시지의 문장을 생성할 수 있다.
본 개시의 일 실시예에 따라 어체 변환이 가능한 한국어 음성 대화 방법이 제공된다. 상기 한국어 음성 대화 방법은, 사용자의 메시지를 수신하는 단계, 자연어 처리 기술에 기초하여 상기 수신된 메시지를 분석하고, 상기 메시지의 의도, 상기 메시지의 내용 및 상기 메시지에 사용된 어체를 파악하는 단계, 상기 메시지의 의도에 대응되는 주제를 포함하는 대화 스크립트를 판독하고, 상기 판독된 대화 스크립트에 기초하여 상기 메시지의 내용에 대응되는 응답 메시지를 생성하는 단계, 친밀도 지수, 사전 설정된 어체 및 상기 메시지에 사용된 어체 중 적어도 하나에 부분적으로 기초하여, 상기 생성된 응답 메시지의 어체를 변환하는 단계 및 상기 변환된 음성 메시지를 출력하는 단계를 포함할 수 있다.
본 개시내용의 일 실시예에 따라, 사용자와 친밀도 지수에 따라 응답 메시지의 어체를 변환할 수 있다.
또한, 대화 스크립트에 대한 데이터를 추가없이 원하는 어체로 된 응답 메시지를 출력할 수 있다.
이 밖에도, 본 개시내용과 관련하여 후술될 실시 예들을 통해 본 발명의 또 다른 특징 및 이점들이 새롭게 파악될 수도 있을 것이다.
도 1은 본 발명의 실시예에 따른 어체 변환이 가능한 한국어 음성 대화 시스템의 구성을 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 서버에 구비되는 어체 변환이 가능한 한국어 음성 대화 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 자연어 이해부의 구성을 나타낸 블록도이다.
도 4는 본 발명의 실시예에 따른 어체 변환부의 구성을 나타낸 블록도이다.
도 5는 본 발명의 실시예에 따른 어체 변환이 가능한 한국어 음성 대화 장치에서 제공하는 인터페이스의 예시이다.
도 6은 본 발명의 실시예에 따른 어체 변환이 가능한 한국어 음성 대화 방법에 대한 신호 흐름도이다.
도 7은 본 발명의 실시예에 따른 응답 메시지의 어체를 변환하는 순서도이다.
다양한 실시예들이 이제 도면을 참조하여 설명되며, 전체 도면에 걸쳐 유사한 도면번호는 유사한 구성요소를 나타내기 위해서 사용된다. 본 명세서에서, 다양한 설명들이 본 개시의 이해를 제공하기 위해서 제시된다. 그러나 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다. 다른 예들에서, 공지된 구조 및 장치들은 실시예들의 설명을 용이하게 하기 위해서 블록 다이어그램 형태로 제공된다.
본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정, 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있고, 일 컴포넌트는 하나의 컴퓨터 내에 로컬화될 수 있고, 또는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통한 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.
제시된 실시예들에 대한 설명은 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 개시는 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.
도 1은 본 발명의 실시예에 따른 어체 변환이 가능한 한국어 음성 대화 시스템의 구성을 나타낸 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 어체 변환이 가능한 한국어 음성 대화 시스템은 서버(1000), 사용자 단말(2000) 및 이를 유/무선으로 연결하는 네트워크(3000)를 포함한다.
본 발명의 일 실시예에 따른 사용자 단말(2000)은 모바일 단말기(mobile terminal), 스마트 폰(smart phone), PC(personal computer), 노트북(note book), 태블릿 PC(tablet pc), 네비게이션(Navigation) 등을 포함할 수 있으며, 유/무선 네트워크(3000)에 접속되어 서버(1000)에 메시지를 송신하고 이에 대응되는 응답 메시지를 서버(1000)로부터 수신하는 모든 종류의 단말기를 통칭한다. 여기서 메시지는 음성 및 텍스트 중 적어도 어느 하나를 포함할 수 있다.
사용자 단말(2000)은 화면을 표시하는 디스플레이부, 사용자로부터 메시지를 입력받는 입력부, 메시지를 출력하는 출력부 및 통신부를 포함할 수 있다. 예를 들어, 입력부는 음성 메시지를 입력받는 마이크, 텍스트 메시지를 입력받는 키보드, 터치패널 들을 포함할 수 있다. 전술한 입력부는 예시일 뿐이며, 본 개시는 이제 제한되지 않는다.
본 발명의 실시예에 따른 네트워크(3000)는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.
또한, 여기서 제시되는 네트워크(3000)는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SCFDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다.
그 외에도, 근거리 통신 모듈인 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(IrDA, infrared Data Association), UWB(Ultra Wideband), ZigBee 등이 사용자 단말(2000) 및 서버(1000)와의 통신 등에 이용될 수 있다. 본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.
본 발명의 일 실시예에 따른 서버(1000)는 사용자 단말(2000)에 한국어 음성 대화 프로그램을 제공할 수 있다. 예를 들어, 한국어 음성 대화 프로그램은 챗봇(Chatbot)일 수 있다. 챗봇은 음성이나 문자를 통한 인간과의 대화를 시뮬레이션 할 목적으로 설계된 컴퓨터 프로그램이다. 챗봇은 사용자로부터 입력 받은 메시지를 분석하여 이에 대응되는 응답 메시지를 출력하는 방식으로 동작한다. 이러한 서버(1000)는 한국어 음성 대화 프로그램을 통해 사용자 단말(2000)로부터 입력된 메시지를 수신하고, 수신된 메시지에 대응되는 응답 메시지를 사용자 단말(2000)에 전송할 수 있다.
도면에는 도시되지 않았으나, 본 발명의 일 실시예에 따른 서버(1000)는 메모리, 입/출력부, 프로그램 저장부, 제어부, 통신부 등을 포함할 수 있다. 메모리는 서버(1000)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행할 수 있다. 메모리는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으며, 본 발명의 개시는 이에 제한되는 것은 아니다. 통신부는 다른 네트워크 장치와 유/무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송/수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다. 제어부는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, 프로세서(processor)는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중 앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치일 수 있으며, 본 개시는 이에 제한되는 것은 아니다.
도 2는 본 발명의 실시예에 따른 서버에 구비되는 어체 변환이 가능한 한국어 음성 대화 장치의 구성을 나타낸 블록도이다.
본 발명의 일 실시예에 따른 한국어 음성 대화 장치(100)는 적어도 하나 이상의 프로세서(processor)에 해당하거나, 적어도 하나 이상의 프로세서를 포함할 수 있다. 이에 따라, 한국어 음성 대화 장치(100)는 마이크로 프로세서나 범용 컴퓨터 시스템과 같은 다른 하드웨어 장치에 포함된 형태로 구동될 수 있다. 한국어 음성 대화 장치(100)는 바람직하게는 서버(1000)에 구비되지만, 반드시 본 발명이 이에 한정되지는 않으며, 설계 변경에 따라 사용자 단말(2000)에 구비될 수도 있을 것이다.
본 발명의 일 실시예에 따른 한국어 음성 대화 장치(100)는 수신부(110), 음성 인식부(120), 자연어 이해부(130), 친밀도 설정부(140), 대화 관리부(150), 응답 생성부(160), 어체 변환부(170), 음성 합성부(180), 데이터 베이스(190) 및 출력부(미도시)를 포함할 수 있다.
본 발명의 일 실시예에 따른 수신부(110)는 사용자의 메시지를 수신할 수 있다. 예를 들어, 한국어 음성 대화 장치(100)가 서버(1000)에 구비되는 경우에 수신부(110)는 사용자 단말(2000)로부터 입력된 사용자의 메시지를 수신할 수 있다. 또는, 한국어 음성 대화 장치(100)가 사용자 단말(2000)에 구비되는 경우에 수신부(110)는 사용자 단말(2000)의 입력부로부터 입력된 사용자의 메시지를 수신할 수 있다. 여기서 메시지는 음성 또는 텍스트를 포함할 수 있다.
음성 인식부(120)는 사용자의 메시지가 음성인 경우에, 사용자의 음성을 인식하고 인식된 음성을 분석하여 텍스트로 변환할 수 있다. 예를 들어, 음성 인식부(120)는 사용자의 음성 메시지를 인식하고, 사전 저장된 음향 모델 및 언어 모델에 기초하여 인식된 음성을 텍스트로 변환할 수 있다. 전술한 음성을 텍스트로 변환하는 방법은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
또한, 음성 인식부(120)는 자연어 이해부(130)가 사용자의 메시지에 사용된 어체를 파악할 수 있도록, 분석된 음성의 억양, 강세, 음량 및 어조 중 적어도 어느 하나에 관한 정보를 생성할 수 있다. 예를 들어, 표준어를 사용한 음성과 사투리를 사용한 음성은 억양이나 강세가 차이가 있으며, 음성 인식부(120)는 분석된 음성으로부터 사용자의 메시지에 사용된 어체가 표준어인지 사투리인지 파악할 수 있는 정보를 생성할 수 있다. 전술한 음성에 관한 정보를 생성하는 것은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
자연어 이해부(130)의 구성은 도 3을 참조하여 이하에서 설명한다.
도 3은 본 발명의 실시예에 따른 자연어 이해부의 구성을 나타낸 블록도이다.
도 3을 참조하면, 본 발명의 실시예에 따른 자연어 이해부(130)는 자연어 처리 기술에 기초하여 수신된 사용자의 메시지를 분석하고, 사용자의 메시지의 의도, 내용 및 사용자의 메시지에 사용된 어체를 파악할 수 있다. 예를 들어, 자연어 처리 기술은 형태소 분석, 구문 분석, 개체명의 인식 및 감성 상태 분석 중 적어도 어느 하나를 포함하여 사용자의 메시지를 분석할 수 있다. 구체적으로, 자연어 이해부(130)는 사용자의 메시지를 형태소 단위로 분석하고, 이에 기초하여 사용자의 메시지의 구문을 분석, 사용자 메시지의 개체명을 인식 및 사용자 메시지의 감성 어휘를 인식 등 종합적으로 판단하여 사용자의 메시지 의도, 내용 및 사용자의 메시지에 사용된 어체를 파악할 수 있다. 전술한 자연어 처리 기술은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
여기서 어체는 격식체, 비격식체, 표준어 및 사투리 중 적어도 어느 하나를 포함할 수 있다.
표 1은 한국어 어체의 일 예를 나타낸다.
존중어(격식체) 평어(비격식체)
높임말
(존댓말)
아주 높임 합쇼체 두루 높임 해요체
예사 높임 하오체
낮춤말
(반말)
예사 낮춤 하게체 두루 낮춤
해체
아주 낮춤 해라체
표 1은 예시적인 것이며, 한국어의 어체를 분류하는 방법에 따라 달라질 수 있다.
표 1의 한국어 어체에 대한 설명은 아래와 같다.
'합쇼체'는 종결 어미에 아주 높임말을 사용하는 격식체로 '평서형: -ㅂ니다', '명령형: -시오/시다', '의문형: -ㅂ니까'를 사용한다.
'하오체'는 종결 어미에 예사 높임말을 사용하는 격식체로 '평서형: -오/소, -리다, -ㅂ디다', '명령형/의문형: -오/소', '감탄형: -(는)구려', '청유형: -ㅂ시다' 를 사용한다.
'하게체'는 종결 어미에 예사 낮춤말을 사용하는 격식체로 '평서형: -ㄴ다네', '명령형: -하게', '의문형: -한겐가?', '청유형: -하시게' 를 사용한다.
'해라체'는 종결 어미에 아주 낮춤말을 사용하는 격식체로 '평서형: -노라, -느니라, -도다, -다오, -리라', '의문형: -냐/느냐?', '명령형 : -해라/하거라' 를 사용한다.
'해요체'는 종결 어미에 두루 높임말을 사용하는 비격식체로 '평서형: -해요, -이어요. -이예요, -예요, -돼요', '의문형: -요?', '명령형: -하세요' 를 사용한다.
'해체'는 종결 어미에 두루 낮춤말을 사용하는 비격식체로 '평서형: -아(어), -야, -지, -군, -ㄴ걸, -해', '의문형: -어?, -해?', '명령형: -어, -해' 를 사용한다.
자연어 이해부(130)는 사용자의 메시지의 형태소를 분석하여 사용자의 메시지에 사용된 어체에 관한 정보를 생성할 수 있다. 자연어 이해부(130)는 사용자의 메시지에 사용된 어체에 관한 정보를 데이터 베이스(190)에 업데이트 할 수 있다. 여기서 사용자의 메시지에 사용된 어체에 관한 정보는 사용자의 메시지가 어떤 격식체 또는 비격식체로 사용되었는지에 관한 정보, 사용자의 메시지가 표준어로 사용되었는지 또는 어느 지역 사투리로 사용되었는지에 관한 정보 및 사용자가 자주 사용하는 단어에 관한 정보 중 적어도 어느 하나를 포함할 수 있다. 전술한 사용자의 메시지에 사용된 어체에 관한 정보는 예시일 뿐, 본 개시는 이에 제한되지 않는다. 이러한 자연어 이해부(130)는 교정 모듈(미도시), 형태소 분석 모듈(131), 구문 분석 모듈(132), 개체명 인식 모듈(133) 및 감성 분석 모듈(134)을 포함할 수 있다.
교정 모듈(미도시)은 사용자의 메시지의 맞춤법을 검사하고 이를 교정할 수 있다. 교정 모듈(미도시)은 맞춤법이 틀린 텍스트 메시지를 수신하거나 또는 음성 인식부(120)가 음성 메시지를 잘못 인식하여 맞춤법이 틀린 텍스트를 변환하는 경우에 맞춤법을 검사하고 이를 교정할 수 있다. 예를 들어, 음성 인식부(120)가 “오늘 날씨가 어때”를 “오늘 날시가 어때”로 인식하여 텍스트로 변환한 경우에, 교정 모듈(미도시)은 맞춤법을 검사하여 “오늘 날시가 어때”를 “오늘 날씨가 어때”로 교정할 수 있다. 전술한 수신된 사용자의 메시지를 교정하는 방법은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
형태소 분석 모듈(131)은 형태소 사전에 기초하여 사용자의 메시지의 형태소를 분석할 수 있다. 형태소 분석 모듈(131)은 데이터 베이스(190)에 저장된 형태소 사전에 기초하여 사용자의 메시지를 형태소 단위로 분석하고 품사 태깅(Tagging)을 수행할 수 있다. 여기서, 형태소 단위는 일반 명사/NNG, 주격 조사/JKS, 형용사/VA, 종결어미/ EF, 마침표, 물음표, 느낌표/SF 등이 있다. 예를 들어, 사용자의 메시지가 “오늘 날씨가 어때”인 경우, “오늘/NNG + 날씨/NNG + 가/JKS + 어떻/VA + 어/EF + /SF” 와 같은 형태소 단위로 분석하고 품사 태깅을 수행할 수 있다. 전술한 형태소 분석은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
구문 분석 모듈(132) 사전 정의된 룰(rule) 기반 및 사전 기반에 기초하여 형태소 단위로 분석된 사용자의 메시지의 구문을 분석할 수 있다. 여기서 구문은 사용자의 메시지를 형태소 단위로 분석하고 품사 태깅을 수행한 후에 형태소 단위를 보다 큰 단위인 명사구, 동사구, 형용사구 등으로 묶은 덩어리를 의미한다. 구문 분석 모듈(132) 데이터 베이스(190)에 저장된 사전 정의된 룰 기반 및 시스템 사전, 사용자 사전, 불용어 사전 등 사전 기반에 기초하여 사용자의 메시지의 구문을 분석할 수 있다. 예를 들어, “오늘/NNG”, “날씨/NNG + 가/JKS”, 어떻/VA + 어/EF + /SF”로 사용자의 메시지의 구문을 분석할 수 있다. 전술한 구문 분석은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
개체명 인식 모듈(133)은 개체명 사전에 기초하여 형태소 단위로 분석된 사용자의 메시지로부터 개체명을 인식할 수 있다. 여기서 개체명은 문서에서 나타나는 고유한 의미를 가지는 명사나 숫자 표현과 같이 고유한 성질의 표현을 말하며 인명(Person), 지명(Location), 기관명(Organization)과 같은 이름 표현, 날짜나 시간과 같은 시간 표현, 금액이나 퍼센트와 같은 수치 표현으로 구분할 수 있다. 개체명 인식 모듈(133)은 데이터 베이스(190)에 저장된 개체명 사전에 기초하여 형태소 단위로 분석된 사용자의 메시지로부터 개체명을 인식할 수 있다. 예를 들어, “오늘/NNG + 날씨/NNG + 가/JKS + 어떻/VA + 어/EF + /SF”에서 “오늘[DATE]” 및 “날씨[WEATHER]”를 개체명으로 인식할 수 있다. 전술한 개체명 인식은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
감성 분석 모듈(134)은 감성 어휘 사전에 기초하여 형태소 단위로 분석된 사용자의 메시지로부터 사용자의 메시지의 감성 상태를 분석할 수 있다. 감성 분석 모듈(134)은 데이터 베이스(190)에 저장된 감성 어휘 사전에 기초하여 메시지의 감성 상태를 분석할 수 있다. 여기서 메시지의 감성 상태를 좋은 감성으로 “사랑한다”, “만족한다”, “좋아한다” 등으로 구분할 수 있고, 나쁜 감성으로 “미워하다”, “화나다”, “싫어하다” 등으로 구분할 수 있고, 기쁜 감성으로 “즐겁다”, “재미있다” 등으로 구분할 수 있고, 슬픈 감성으로 “ 우울하다”, “걱정된다” 등으로 구분할 수도 있다. 또한, 메시지에 매칭되는 감성 어휘가 없는 경우에는 중립 감성으로 구분할 수 도 있다. 예를 들어 “오늘 날씨가 어때”는 매칭되는 감성 어휘가 없는 경우로서, 중립 감성으로 구분될 수 있다. 전술한 감성 상태는 예시일 뿐이며, 본 개시는 이에 제한되지 않는다.
다시 도2를 참조하면, 친밀도 설정부(140)는 한국어 음성 대화 장치(100)의 사용에 따른 친밀도 지수를 설정할 수 있다. 여기서 친밀도 지수는 사용자가 한국어 음성 대화 장치(100)를 사용하는 횟수, 시간, 사용자와 한국어 음성 대화 장치(100)의 대화 기록에 적어도 부분적으로 기초하여 결정될 수 있다.
예를 들어, 친밀도 지수는 사용자가 한국어 음성 대화 장치(100)를 사용하는 시간이 사전 설정된 시간을 초과하는 경우에 증가할 수 있다. 또한, 친밀도 지수는 사용자가 한국어 음성 대화 장치(100)를 사용하는 횟수가 사전 설정된 횟수를 초과하는 경우에 증가할 수 있다, 또한, 친밀도 지수는 감성 분석 모듈(134)로부터 분석한 사용자의 메시지의 감성 어휘에 기초하여 증가하거나 또는 감소할 수 있다. 보다 구체적으로 예를 들면, 친밀도 지수를 0부터 10까지 구분할 수 있다. 사용자가 한국어 음성 대화 장치(100)를 5시간 이상 사용하는 경우마다 친밀도 지수가 1씩 증가할 수 있다. 또한, 사용자가 한국어 음성 대화 장치(100)를 10회 이상 사용하는 경우마다 친밀도 지수가 1씩 증가할 수 있다. 또한, 긍정적인 감성 어휘(예를 들면, 좋은 감성, 기쁜 감성 등)가 30회 이상 사용되는 경우에 친밀도 지수가 1씩 증가할 수 있고, 부정적인 감성 어휘(예를 들면, 나쁜 감성, 슬픈 감성 등)가 30회 이상 사용되는 경우에 친밀도 지수가 1씩 감소할 수 도 있다. 전술한 친밀도 지수를 결정하는 방법은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
또한, 친밀도 설정부(140)는 사용자의 입력 신호에 기초하여 친밀도 지수를 설정할 수 있다. 예를 들어, 친밀도 설정부(140)는 친밀도 지수를 감소시키는 사용자의 입력 신호에 기초하여 친밀도 지수를 다시 감소시킬 수 있다. 이는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
친밀도 설정부(140)에서 설정한 친밀도 지수는 어체 변환부(170)에서 응답 메시지의 어체를 결정하는데 이용될 수 있다. 이에 대한 구체적인 내용은 후술하도록 한다.
대화 관리부(150)에서 주제별로 분류된 대화 스크립트를 저장하거나 또는 외부 서버로부터 획득하여, 대화 스크립트를 관리할 수 있다. 대화 관리부(150)는 대화 스크립트를 주제별로 분류하여 데이터 베이스(190)에 저장하고 이를 관리할 수 있다. 이러한 대화 스크립트는 다양한 주제에 대한 대화 내용을 포함하고 있으며, 사용자의 메시지와 대응되는 응답 메시지를 대화 내용으로 포함할 수 있다. 또한, 대화 스크립트는 하나의 어체(예를 들어, '표준어' 및 '합쇼체')로 저장할 수 있다. 대화 스크립트의 어체는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
예를 들어, 대화 관리부(150)는 웹 크롤링(Web Crawling)을 수행하여 외부 서버로부터 대화 스크립트를 획득할 수 있다. 또한, 대화 관리부(150)는 기계 학습을 통하여 사용자와 한국어 음성 대화 장치(100)의 대화 기록을 대화 스크립트로 저장할 수 있다. 전술한 대화 스크립트를 저장하거나 또는 획득하는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
응답 생성부(160)는 사용자의 메시지의 의도에 대응되는 주제를 포함하는 대화 스크립트를 판독하고, 판독된 대화 스크립트에 기초하여 사용자의 메시지의 내용에 대응되는 응답 메시지를 생성할 수 있다.
응답 생성부(160)는 자연어 이해부(130)에서 파악한 사용자의 메시지 의도에 대응되는 주제에 대한 대화 내용을 포함하는 대화 스크립트를 판독할 수 있다. 예를 들어, 자연어 이해부(130)가 사용자의 메시지의 의도를 '오늘의 날씨를 물어보는 것'으로 파악하면, 응답 생성부(160)는 데이터 베이스(190)에 저장된 '오늘의 날씨'를 대화 주제로 하는 대화 스크립트를 판독할 수 있다.
응답 생성부(160)는 판독된 대화 스크립트에 기초하여 사용자의 메시지 내용에 대응되는 응답 메시지를 생성할 수 있다. 응답 생성부(160)는 판독된 대화 스크립트의 대화 내용에서 자연어 이해부(130)가 판독한 사용자의 메시지의 내용과 대응되는 대화 내용을 응답 메시지로 생성할 수 있다
또한, 응답 생성부(160)는 판독된 대화 스크립트에 기초하여 사용자의 메시지 내용에 대응되는 응답 메시지가 없는 경우에 대화를 이어갈 수 있는 질문을 응답 메시지로 생성할 수 있다. 응답 생성부(160)는 판독된 대화 스크립트의 대화 내용에서 자연어 이해부(130)가 판독한 사용자의 메시지의 내용과 대응되는 대화 내용이 없는 경우에는 사용자의 메시지와 대화를 이어갈 수 있는 질문을 응답 메시지로 생성할 수 있다. 이러한 사용자와의 대화 기록은 데이터 베이스(190)에 대화 스크립트로 저장될 수 있다.
어체 변환부(170)의 구성은 도 4를 참조하여 이하에서 설명한다.
도 4는 본 발명의 실시예에 따른 어체 변환부의 구성을 나타낸 블록도이다.
도 4를 참조하면, 본 발명의 실시예에 따른 어체 변환부(170)는 친밀도 지수, 사전 설정된 어체 및 사용자의 메시지에 사용된 어체 중 적어도 하나에 적어도 부분적으로 기초하여, 생성된 음성 메시지의 어체를 변환할 수 있다. 이러한 어체 변환부(170)는 어체 결정 모듈(171), 형태소 분석 모듈(172), 어체 변환 모듈(173) 및 문장 생성 모듈(174)을 포함할 수 있다.
어체 결정 모듈(171)은 친밀도 지수, 사전 설정된 어체 및 사용자의 메시지에 사용된 어체에 적어도 하나에 부분적으로 기초하여, 생성된 응답 메시지의 어체를 결정할 수 있다.
구체적으로, 어체 결정 모듈(171)은 친밀도 지수가 사전 설정된 점수 이하인 경우에 사전 설정된 제1 어체를 응답 메시지의 어체로 결정하고, 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 응답 메시지의 어체로 결정할 수 있다.
또한, 어체 결정 모듈(171)은 친밀도 지수가 사전 설정된 점수 이하인 경우에 사전 설정된 제1 어체를 응답 메시지의 어체로 결정하고, 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 사용자의 메시지에 사용된 어체를 응답 메시지의 어체로 결정할 수 있다.
예를 들어, 응답 생성부(160)는 대화 스크립트에 사전 저장된 어체(예를 들어, '표준어' 및 '합쇼체')로 응답 메시지를 생성할 수 있다. 어체 변환부(170)는 생성된 응답 메시지의 어체를 사전 설정된 제1 어체로 변환할 것을 결정할 수 있다. 친밀도 지수가 증가하여, 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 어체 변환부(170)는 응답 메시지를 사전 설정된 제2 어체 또는 사용자의 메지시에 사용된 어체로 변환할 것을 결정할 수 있다. 또한, 친밀도 지수가 다시 감소하여, 친밀도 지수가 사전 설정된 점수 이하로 되는 경우에는 어체 변환부(170)는 응답 메시지를 사전 설정된 제1 어체로 변환할 것을 결정할 수 있다.
보다 구체적으로 예를 들면, 어체 결정 모듈(171)은 사전 설정된 제1 어체를 '합쇼체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해요체'로 설정할 수 있다. 또한, 어체 결정 모듈(171)은 사전 설정된 제1 어체를 '해요체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해체'로 설정할 수 있다. 또한, 어체 결정 모듈(171)은 사전 설정된 제1 어체를 '하오체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해요체'로 설정할 수 있다. 또한, 어체 결정 모듈(171)은 사전 설정된 제1 어체를 '하게체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해체'로 설정할 수 있다. 또한, 어체 결정 모듈(171)은 사전 설정된 제1 어체를 '해라체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해체'로 설정할 수 있다. 전술한 변환할 어체를 결정하는 방법은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
형태소 분석 모듈(172)은 자연어 처리 기술을 이용하여 생성된 응답 메시지를 형태소 단위로 분석할 수 있다.
예를 들어, 응답 메시지가 “실내 온도를 2도 낮춰도 괜찮습니까”로 생성되는 경우에, 형태소 분석 모듈(172)은 “실내/NNG + 온도/NNG + 를/JKO + 2/NR + 도/NNB + 낮추/VV + -도/EC + 괜찮/VA + 습/EP + 니/EP + 까/EF + /SF” 로 분석할 수 있다. 전술한 응답 메시지의 형태소 분석은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
어체 변환 모듈(173)은 어체 결정 모듈(171)에서 결정한 어체에 기초하여 응답 메시지의 형태소를 변환할 수 있다.
어체 변환 모듈(173)은 생성된 응답 메시지의 어체를 사전 정의된 룰 기반에 기초하여 어체 결정 모듈(171)에서 결정한 어체로 변환할 수 있다.
표 2 및 표 3은 어체 변환표의 일 예를 나타낸다.
합쇼체 하오체 하게체 해라체 해요체 해체
하/EP+시/EP+오/EF 하오/EF 하게/EF 해라/EF 해요/EF 해/EF
습/EP+니/EP+다/EF 소이다/EF 다네/EF 다/EF 아요/EF 아/EF
습/EP+니/EP+까/EF 소/EF 은가/EF 해/EF 죠/EF 아/EF
ㅂ/EP+니/EP+다/EF 오/EF 네/EF 다/EF 예요/EF
올/EP+시/EP+다/EF 오/EF 라네/EF 야/EF 예요/EF
표준어 전라도 사투리 경상도 사투리 충청도 사투리 제주도 사투리 강원도 사투리
부추/NNG 솔/NNG 정구지/NNG 정구지/NNG 새우리/NNG 부추/NNG
가시/VV+려면/EC 가블/VV+라믄/EC 갈라/VV+카모/EC 가실/VV+라믄/EC 가/VV+고정/EC 가시/VV+려면/EC
했/VV+어요/EF+?/SF 했/VV+는가/EF+?/SF 했/VV+는교/EF+?/SF 하였/VV+간/EF+?/SF 했/VV+쑤꽈/EF+?/SF 했/VV+냐/EF+?/SF
형님/NNG 성님/NNG 행님/NNG 행님/NNG 행이/NNG 성님/NNG
먹/VV+었/EP+어/EF+?/SF 먹/VV+었/EP+냐/EF+?/SF 뭇/VV+나/EF+?/SF 먹/VV+었/EP+어/EF+?/SF 먹/VV+언/EF+?/SF 먹/VV+었/EP+어/EF+?/SF
괜찮/VA+습니다/EF 되써/VA+라/EF 아니/VA+라예/EF 됐/VA+슈/EF 된/VA 괜찮/VA+시다/EF
표 2 및 표 3은 은 예시적인 것이며, 어체를 변환하는 방법에 따라 달라질 수 있다.
표 2 및 표 3의 어체 변환에 대한 설명은 아래와 같다.
예를 들어, 어체 변환 모듈(173)은 변환할 어체를 제외한 열(row)에서 가장 일치하는 일련의 형태소를 찾아서 해당 항목을 목표열 항목으로 대체할 수 있다. 구체적으로, '해요체'로 변환할 것을 결정하면, '해요체'를 제외한 '합쇼체', '하오체', '하게체', '해라체', '해체' 순으로 가장 일치하는 일련의 형태소가 있는지 대응시켜 일치하는 항목이 나오면 '해요체'로 변환할 수 있다. 일치하는 항목이 없으면 다음 행에 대해서 이를 반복하여 어체를 변환할 수 있다. 또한, '경상도 사투리'로 변환할 것을 결정하면, 대응되는 표준어를 경상도 사투리로 변환할 수 있다.
보다 구체적으로 예를 들면, 어체 결정 모듈(171)에서 결정한 어체가 '해요체' 인 경우에, 형태소 분석 모듈(172)에서 응답 메시지를 형태소 단위로 분석한 “실내/NNG + 온도/NNG + 를/JKO + 2/NR + 도/NNB + 낮추/VV + -도/EC + 괜찮/VA + 습/EP + 니/EP + 까/EF + /SF” 를 어체 변환 모듈(173)은 “실내/NNG + 온도/NNG + 를/JKO + 2/NR + 도/NNB + 낮추/VV + -도/EC + 괜찮/VA + 죠/EF + /SF”로 변환할 수 있다. 즉, “습/EP + 니/EP + 까/EF”를 “죠/EF”로 변환할 수 있다. 전술한 응답 메시지의 형태소 변환 방법은 예시일 뿐이며, 본 개시는 이에 제한되지 않는다.
문장 생성 모듈(174)은 변환된 형태소를 조합하여 응답 메시지의 문장을 생성할 수 있다.
또한, 문장 생성 모듈(174)은 변환된 형태소에 의해 맞춤법이 맞지 않는 경우, 맞춤법을 교정하여 응답 메시지의 문장을 생성할 수 있다. 예를 들어 형태소 변환에 의해 응답 메시지의 조사가 틀려지는 경우에 문장 생성 모듈(174)은 조사를 교정하여 문장을 생성할 수 있다.
다시 도2를 참조하면, 음성 합성부(180)는 변환된 응답 메시지에 대응되는 음성을 합성하여 사용자에게 출력할 수 있다.
음성 합성부(180)는 응답 메시지를 음성으로 출력하는 경우에 음성을 합성하여 음성 메시지를 생성할 수 있다. 음성 합성부(180)는 사용자의 입력 신호에 기초하여 음성을 합성할 수 있다. 예를 들어, 한국어 음성 대화 장치(100)가 응답 메시지를 경상도 사투리로 설정하는 사용자의 입력 신호를 수신하는 경우에, 음성의 억양, 강세, 음량, 어조 등을 조절하여 경상도 사투리로 응답 메시지를 생성할 수 있다. 또한, 한국어 음성 대화 장치(100)가 응답 메시지를 특정인의 목소리로 설정하는 사용자의 입력 신호를 수신하는 경우에, 음성의 억양, 강세, 음량, 어조 등을 조절하여 특정인의 목소리로 응답 메시지를 생성할 수 있다.
데이터 베이스(190)는 한국어 음성 대화 장치(100)의 동작을 위한 프로그램을 저장할 수 있다. 또한, 사용자 단말(2000) 및/또는 외부 서버로부터 제공받은 다양한 데이터를 저장할 수 있다. 나아가, 다른 컴포넌트들의 요청에 따라 데이터를 제공할 수 있다.
본 발명의 실시예에서, 데이터 베이스(190)는 자연어 처리를 위한 시스템 사전, 사용자 사전, 형태소 사전, 개체명 사전, 감성 어휘 사전 등을 저장할 수 있다. 또한, 데이터 베이스(190)는 대화 스크립트를 저장할 수 있다. 또한, 어체를 변환하기 위한 룰 기반 데이터를 저장할 수 있다. 이는 예시일 뿐이며, 데이터 베이스(190)는 한국어 음성 대화 장치(100)의 동작을 위한 다양한 정보들을 저장할 수 있다.
데이터 베이스(190)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
출력부(미도시)는 어체가 변환된 응답 메시지를 사용자에게 출력할 수 있다. 예를 들어, 한국어 음성 대화 장치(100)가 서버(1000)에 구비되는 경우에 출력부(미도시)는 사용자 단말(2000)에 응답 메시지를 송신할 수 있다. 또는, 한국어 음성 대화 장치(100)가 사용자 단말(2000)에 구비되는 경우에 출력부(미도시)는 응답 메시지를 출력할 수 있다.
도 5는 본 발명의 실시예에 따른 어체 변환이 가능한 한국어 음성 대화 장치에서 제공하는 인터페이스의 예시이다.
도 5를 참조하면, 한국어 음성 대화 장치(100)에서 제공된 인터페이스를 통해, 한국어 음성 대화 장치(100)는 사용자로부터 입력된 응답 메시지의 어체를 결정할 수 있다. 또한, 또한 한국어 음성 대화 장치(100)는 사용자로부터 입력된 친밀도 지수에 관한 입력에 기초하여 설정할 수 있다. 또한, 한국어 음성 대화 장치(100)는 사용자가 원하는 음성에 대한 입력 신호를 수신하여 사용자가 원하는 음성으로 응답 메시지를 생성할 수 있다.
도 6은 본 발명의 실시예에 따른 어체 변환이 가능한 한국어 음성 대화 방법에 대한 신호 흐름도이다.
본 발명의 일 실시예에 따른 한국어 음성 대화 장치(100)는 적어도 하나 이상의 프로세서(processor)에 해당하거나, 적어도 하나 이상의 프로세서를 포함할 수 있다. 이에 따라, 한국어 음성 대화 장치(100)는 마이크로 프로세서나 범용 컴퓨터 시스템과 같은 다른 하드웨어 장치에 포함된 형태로 구동될 수 있다. 한국어 음성 대화 장치(100)는 바람직하게는 서버(1000)에 구비되지만, 반드시 본 발명이 이에 한정되지는 않으며, 설계 변경에 따라 사용자 단말(2000)에 구비될 수도 있을 것이다.
먼저, 본 발명의 일 실시예에 따른 한국어 음성 대화 장치(100)는 사용자의 메시지를 수신할 수 있다(S610).
예를 들어, 한국어 음성 대화 장치(100)가 서버(1000)에 구비되는 경우에 한국어 음성 대화 장치(100)는 사용자 단말(2000)로부터 입력된 사용자의 메시지를 수신할 수 있다. 또는, 한국어 음성 대화 장치(100)가 사용자 단말(2000)에 구비되는 경우에 한국어 음성 대화 장치(100)는 사용자 단말(2000)의 입력부로부터 입력된 사용자의 메시지를 수신할 수 있다. 여기서 메시지는 음성 또는 텍스트를 포함할 수 있다.
다음으로, 한국어 음성 대화 장치(100)는 수신된 사용자의 메시지의 자연어 처리를 할 수 있다(S620). 자연어 처리 기술은 형태소 분석, 구문 분석, 개체명의 인식 및 감성 상태 분석 중 적어도 어느 하나를 포함하여 사용자의 메시지를 분석할 수 있다.
다음으로, 한국어 음성 대화 장치(100)는 자연어 처리 기술에 기초하여 수신된 사용자의 메시지를 분석하고, 사용자의 메시지의 의도, 내용 및 사용자의 메시지에 사용된 어체를 파악할 수 있다(S630).
구체적으로, 한국어 음성 대화 장치(100)는 사용자의 메시지를 형태소 단위로 분석하고, 이에 기초하여 사용자의 메시지의 구문을 분석, 사용자 메시지의 개체명을 인식 및 사용자 메시지의 감성 어휘를 인식 등 종합적으로 판단하여 사용자의 메시지 의도, 내용 및 사용자의 메시지에 사용된 어체를 파악할 수 있다. 전술한 자연어 처리 기술은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
다음으로, 한국어 음성 대화 장치(100)의 사용에 따른 친밀도 지수를 설정할 수 있다(S640). 여기서 친밀도 지수는 사용자가 한국어 음성 대화 장치(100)를 사용하는 횟수, 시간, 사용자와 한국어 음성 대화 장치(100)의 대화 기록에 적어도 부분적으로 기초하여 결정될 수 있다.
예를 들어, 친밀도 지수는 사용자가 한국어 음성 대화 장치(100)를 사용하는 시간이 사전 설정된 시간을 초과하는 경우에 증가할 수 있다. 또한, 친밀도 지수는 사용자가 한국어 음성 대화 장치(100)를 사용하는 횟수가 사전 설정된 횟수를 초과하는 경우에 증가할 수 있다, 또한, 친밀도 지수는 한국어 음성 대화 장치(100)가 분석한 사용자의 메시지의 감성 어휘에 기초하여 증가하거나 또는 감소할 수 있다. 보다 구체적으로 예를 들면, 친밀도 지수를 0부터 10까지 구분할 수 있다. 사용자가 한국어 음성 대화 장치(100)를 5시간 이상 사용하는 경우마다 친밀도 지수가 1씩 증가할 수 있다. 또한, 사용자가 한국어 음성 대화 장치(100)를 10회 이상 사용하는 경우마다 친밀도 지수가 1씩 증가할 수 있다. 또한, 긍정적인 감성 어휘(예를 들면, 좋은 감성, 기쁜 감성 등)이 30회 이상 사용되는 경우에 친밀도 지수가 1씩 증가할 수 있고, 부정적인 감성 어휘(예를 들면, 나쁜 감성, 슬픈 감성 등)이 30회 이상 사용되는 경우에 친밀도 지수가 1씩 감소할 수 도 있다. 전술한 친밀도 지수를 결정하는 방법은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
또한, 한국어 음성 대화 장치(100)는 사용자의 입력 신호에 기초하여 친밀도 지수를 설정할 수 있다. 예를 들어, 한국어 음성 대화 장치(100)는 친밀도 지수를 감소시키는 사용자의 입력 신호에 기초하여 친밀도 지수를 다시 감소시킬 수 있다. 이는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
다음으로, 한국어 음성 대화 장치(100)는 대화 스크립트를 판독할 수 있다(S650).
한국어 음성 대화 장치(100)는 사용자의 메시지의 의도에 대응되는 주제를 포함하는 대화 스크립트를 판독할 수 있다. 여기서 대화 스크립트는 다양한 주제에 대한 대화 내용을 포함하고 있으며, 사용자의 메시지와 대응되는 응답 메시지를 대화 내용으로 포함할 수 있다. 또한, 대화 스크립트는 하나의 어체(예를 들어, '표준어' 및 '합쇼체')로 저장할 수 있다. 대화 스크립트의 어체는 예시일 뿐, 본 개시는 이에 제한되지 않는다.
한국어 음성 대화 장치(100)는 파악된 사용자의 메시지 의도에 대응되는 주제에 대한 대화 내용을 포함하는 대화 스크립트를 판독할 수 있다. 예를 들어, 한국어 음성 대화 장치(100)가 사용자의 메시지의 의도를 '오늘의 날씨를 물어보는 것'으로 파악하면, 한국어 음성 대화 장치(100)는 '오늘의 날씨'를 대화 주제로 하는 대화 스크립트를 판독할 수 있다.
다음으로, 한국어 음성 대화 장치(100)는 판독된 대화 스크립트에 기초하여 사용자의 메시지 내용에 대응되는 응답 메시지를 생성할 수 있다(S660).
한국어 음성 대화 장치(100)는 판독된 대화 스크립트의 대화 내용에서 한국어 음성 대화 장치(100)가 판독한 사용자의 메시지의 내용과 대응되는 대화 내용을 응답 메시지로 생성할 수 있다
또한, 한국어 음성 대화 장치(100)는 판독된 대화 스크립트에 기초하여 사용자의 메시지 내용에 대응되는 응답 메시지가 없는 경우에 대화를 이어갈 수 있는 질문을 응답 메시지로 생성할 수 있다. 한국어 음성 대화 장치(100)는 판독된 대화 스크립트의 대화 내용에서 한국어 음성 대화 장치(100)가 판독한 사용자의 메시지의 내용과 대응되는 대화 내용이 없는 경우에는 사용자의 메시지와 대화를 이어갈 수 있는 질문을 응답 메시지로 생성할 수 있다. 이러한 사용자와의 대화 기록은 한국어 음성 대화 장치(100)에 대화 스크립트로 저장될 수 있다.
다음으로, 한국어 음성 대화 장치(100)는 친밀도 지수, 사전 설정된 어체 및 사용자의 메시지에 사용된 어체 중 적어도 하나에 적어도 부분적으로 기초하여, 생성된 음성 메시지의 어체를 변환할 수 있다(S670). 생성된 음성 메시지의 어체를 변환하는 방법에 대해서는 도7을 참조하여 후술하도록 한다.
다음으로, 한국어 음성 대화 장치(100)는 어체가 변환된 응답 메시지를 사용자에게 출력할 수 있다(S680).
예를 들어, 한국어 음성 대화 장치(100)가 서버(1000)에 구비되는 경우에 한국어 음성 대화 장치(100)는 사용자 단말(2000)에 응답 메시지를 송신할 수 있다. 또는, 한국어 음성 대화 장치(100)가 사용자 단말(2000)에 구비되는 경우에 한국어 음성 대화 장치(100)가 응답 메시지를 출력할 수 있다.
도 7은 본 발명의 실시예에 따른 응답 메시지의 어체를 변환하는 순서도이다.
도 7을 참조하면, 본 발명의 실시예에 따른 한국어 음성 대화 장치(100)는 수신한 사용자의 메시지 내용에 대응되는 응답 메시지를 생성할 수 있다(S701).
다음으로, 한국어 음성 대화 장치(100)는 친밀도 지수가 사전 설정된 점수를 초과하는지 판단한다(S702).
한국어 음성 대화 장치(100)는 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체 또는 사용자의 메시지에 사용된 어체를 응답 메시지의 어체로 결정할 수 있다(S703).
한국어 음성 대화 장치(100)는 친밀도 지수가 사전 설정된 점수 이하인 경우에 사전 설정된 제1 어체를 응답 메시지의 어체로 결정할 수 있다(S704).
예를 들어, 한국어 음성 대화 장치(100)는 대화 스크립트에 사전 저장된 어체(예를 들어, '표준어' 및 '합쇼체')로 응답 메시지를 생성할 수 있다. 한국어 음성 대화 장치(100)는 생성된 응답 메시지의 어체를 사전 설정된 제1 어체로 변환할 것을 결정할 수 있다. 친밀도 지수가 증가하여, 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 한국어 음성 대화 장치(100)는 응답 메시지를 사전 설정된 제2 어체 또는 사용자의 메지시에 사용된 어체로 변환할 것을 결정할 수 있다. 또한, 친밀도 지수가 다시 감소하여, 친밀도 지수가 사전 설정된 점수 이하로 되는 경우에는 한국어 음성 대화 장치(100)는 응답 메시지를 사전 설정된 제1 어체로 변환할 것을 결정할 수 있다.
보다 구체적으로 예를 들면, 한국어 음성 대화 장치(100)는 사전 설정된 제1 어체를 '합쇼체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해요체'로 설정할 수 있다. 또한, 한국어 음성 대화 장치(100)는 사전 설정된 제1 어체를 '해요체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해체'로 설정할 수 있다. 또한, 한국어 음성 대화 장치(100)는 사전 설정된 제1 어체를 '하오체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해요체'로 설정할 수 있다. 또한, 한국어 음성 대화 장치(100)는 사전 설정된 제1 어체를 '하게체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해체'로 설정할 수 있다. 또한, 한국어 음성 대화 장치(100)는 사전 설정된 제1 어체를 '해라체'로 설정할 수 있고, 친밀도 점수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 '해체'로 설정할 수 있다. 전술한 변환할 어체를 결정하는 방법은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
다음으로, 한국어 음성 대화 장치(100)는 자연어 처리 기술을 이용하여 생성된 응답 메시지를 형태소 단위로 분석할 수 있다(S705).
예를 들어, 응답 메시지가 “실내 온도를 2도 낮춰도 괜찮습니까”로 생성되는 경우에, 한국어 음성 대화 장치(100)는 “실내/NNG + 온도/NNG + 를/JKO + 2/NR + 도/NNB + 낮추/VV + -도/EC + 괜찮/VA + 습/EP + 니/EP + 까/EF + /SF” 로 분석할 수 있다. 전술한 응답 메시지의 형태소 분석은 예시일 뿐, 본 개시는 이에 제한되지 않는다.
한국어 음성 대화 장치(100)는 결정한 어체에 기초하여 응답 메시지의 형태소를 변환할 수 있다(S706).
한국어 음성 대화 장치(100)는 생성된 응답 메시지의 어체를 사전 정의된 룰 기반에 기초하여 어체 결정 모듈(171)에서 결정한 어체로 변환할 수 있다.
예를 들어, 한국어 음성 대화 장치(100)는 변환할 어체를 제외한 열(row)에서 가장 일치하는 일련의 형태소를 찾아서 해당 항목을 목표열 항목으로 대체할 수 잇다. 구체적으로, '해요체'로 변환할 것을 결정하면, '해요체'를 제외한 '합쇼체', '하오체', '하게체', '해라체', '해체' 순으로 가장 일치하는 일련의 형태소가 있는지 대응시켜 일치하는 항목이 나오면 '해요체'로 변환할 수 있다. 일치하는 항목이 없으면 다음 행에 대해서 이를 반복하여 어체를 변환할 수 있다. 또한, '경상도 사투리'로 변환할 것을 결정하면, 대응되는 표준어를 경상도 사투리로 변환할 수 있다.
보다 구체적으로 예를 들면, 한국어 음성 대화 장치(100)에서 결정한 어체가 '해요체' 인 경우에, 응답 메시지를 형태소 단위로 분석한 “실내/NNG + 온도/NNG + 를/JKO + 2/NR + 도/NNB + 낮추/VV + -도/EC + 괜찮/VA + 습/EP + 니/EP + 까/EF + /SF” 를 “실내/NNG + 온도/NNG + 를/JKO + 2/NR + 도/NNB + 낮추/VV + -도/EC + 괜찮/VA + 죠/EF + /SF”로 변환할 수 있다. 즉, “습/EP + 니/EP + 까/EF”를 “죠/EF”로 변환할 수 있다. 전술한 응답 메시지의 형태소 변환 방법은 예시일 뿐이며, 본 개시는 이에 제한되지 않는다.
다음으로, 한국어 음성 대화 장치(100)는 변환된 형태소를 조합하여 응답 메시지의 문장을 생성할 수 있다(S707).
또한, 한국어 음성 대화 장치(100)는 변환된 형태소에 의해 맞춤법이 맞지 않는 경우, 맞춤법을 교정하여 응답 메시지의 문장을 생성할 수 있다. 예를 들어 형태소 변환에 의해 응답 메시지의 조사가 틀려지는 경우에 한국어 음성 대화 장치(100)는 조사를 교정하여 문장을 생성할 수 있다.
다음으로, 한국어 음성 대화 장치(100)는 어체가 변환된 응답 메시지를 사용자에게 출력할 수 있다(S708).
본 개시의 기술 분야에서 통상의 지식을 가진 자는 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 이용하여 표현될 수 있다는 것을 이해할 것이다. 예를 들어, 위의 설명에서 참조될 수 있는 데이터, 지시들, 명령들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 자기장들 또는 입자들, 광학장들 또는 입자들, 또는 이들의 임의의 결합에 의해 표현될 수 있다.
본 개시의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 "소프트웨어"로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 개시의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 개시의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.
여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 "제조 물품"은 임의의 컴퓨터-판독가능 장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다. 용어 "기계-판독가능 매체"는 명령(들) 및/또는 데이터를 저장, 보유, 및/또는 전달할 수 있는 무선 채널 및 다양한 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다.
제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 개시의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.
제시된 실시예들에 대한 설명은 임의의 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 개시는 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.

Claims (12)

  1. 한국어 음성 대화 장치에 있어서,
    사용자의 메시지를 수신하는 수신부;
    자연어 처리 기술에 기초하여 상기 수신된 메시지를 분석하고, 상기 메시지의 의도, 상기 메시지의 내용 및 상기 메시지에 사용된 어체를 파악하는 자연어 이해부;
    상기 메시지의 의도에 대응되는 주제를 포함하는 대화 스크립트를 판독하고, 상기 판독된 대화 스크립트에 기초하여 상기 메시지의 내용에 대응되는 응답 메시지를 생성하는 응답 생성부; 및
    친밀도 지수, 사전 설정된 어체 및 상기 메시지에 사용된 어체 중 적어도 하나에 적어도 부분적으로 기초하여, 상기 생성된 응답 메시지의 어체를 변환하는 어체 변환부;
    를 포함하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  2. 제 1항에 있어서,
    상기 한국어 음성 대화 장치의 사용에 따른 친밀도 지수를 설정하는 친밀도 설정부;
    를 더 포함하고,
    상기 친밀도 지수는,
    상기 사용자가 상기 한국어 음성 대화 장치를 사용하는 횟수, 시간, 상기 사용자와 상기 한국어 음성 대화 장치의 대화 기록에 적어도 부분적으로 기초하여 결정되는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  3. 제 1항에 있어서,
    주제별로 분류된 대화 스크립트를 저장하거나 또는 외부 서버로부터 획득하여, 상기 대화 스크립트를 관리하는 대화 관리부;
    를 더 포함하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  4. 제 1항에 있어서,
    상기 사용자의 메시지는 음성 또는 텍스트를 포함하고,
    상기 사용자의 메시지가 음성인 경우에 상기 사용자의 음성을 인식하고, 인식된 음성을 분석하여 텍스트로 변환하는 음성 인식부; 및
    상기 변환된 응답 메시지에 대응되는 음성을 합성하여 상기 사용자에게 출력하는 음성 합성부;
    를 더 포함하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  5. 제 4항에 있어서,
    상기 음성 인식부는,
    상기 자연어 이해부가 상기 사용자의 메시지에 사용된 어체를 파악할 수 있도록, 상기 분석된 음성의 억양, 강세, 음량 및 어조 중 적어도 어느 하나에 관한 정보를 생성하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  6. 제 1항에 있어서,
    상기 자연어 이해부는,
    형태소 사전에 기초하여 상기 메시지의 형태소를 분석하는 형태소 분석 모듈;
    사전 정의된 룰 기반 및 사전 기반에 기초하여 상기 형태소 분석된 메시지의 구문을 분석하는 구문 분석 모듈;
    개체명 사전에 기초하여 상기 형태소 분석된 메시지로부터 개체명을 인식하는 개체명 인식 모듈; 및
    감성 어휘 사전에 기초하여 상기 형태소 분석된 메시지로부터 상기 메시지의 감성 상태를 분석하는 감성 분석 모듈;
    을 포함하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  7. 제 1항에 있어서,
    상기 응답 생성부는,
    상기 판독된 대화 스크립트에 기초하여 상기 메시지의 내용에 대응되는 응답 메시지가 없는 경우, 대화를 이어갈 수 있는 질문을 응답 메시지로 생성하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  8. 제 1항에 있어서,
    상기 어체 변환부는,
    친밀도 지수, 사전 결정된 어체 및 상기 사용자의 메시지에 사용된 어체에 적어도 하나에 적어도 부분적으로 기초하여, 상기 생성된 응답 메시지의 어체를 결정하는 어체 결정 모듈;
    상기 자연어 처리 기술을 이용하여 상기 생성된 응답 메시지를 형태소 단위로 분석하는 형태소 분석 모듈;
    상기 어체 결정 모듈에서 결정한 어체에 기초하여 상기 응답 메시지의 분석된 형태소를 변환하는 어체 변환 모듈;
    상기 변환된 형태소를 조합하여 응답 메시지의 문장을 생성하는 문장 생성 모듈;
    을 포함하고,
    상기 어체는 격식체, 비격식체, 표준어 및 사투리 중 적어도 어느 하나를 포함하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  9. 제 8항에 있어서,
    상기 어체 결정 모듈은,
    상기 친밀도 지수가 사전 설정된 점수 이하인 경우에 사전 설정된 제1 어체를 상기 응답 메시지의 어체로 결정하고, 상기 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 사전 설정된 제2 어체를 상기 응답 메시지의 어체로 결정하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  10. 제 8항에 있어서,
    상기 어체 결정 모듈은,
    상기 친밀도 지수가 사전 설정된 점수 이하인 경우에 사전 설정된 제1 어체를 상기 응답 메시지의 어체로 결정하고, 상기 친밀도 지수가 사전 설정된 점수를 초과하는 경우에 상기 사용자의 메시지에 사용된 어체를 상기 응답 메시지의 어체로 결정하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  11. 제 8항에 있어서,
    상기 문장 생성 모듈은,
    상기 변환된 형태소에 의해 맞춤법이 맞지 않는 경우, 맞춤법을 교정하여 응답 메시지의 문장을 생성하는,
    어체 변환이 가능한 한국어 음성 대화 장치.
  12. 한국어 음성 대화 방법에 있어서,
    사용자의 메시지를 수신하는 단계;
    자연어 처리 기술에 기초하여 상기 수신된 메시지를 분석하고, 상기 메시지의 의도, 상기 메시지의 내용 및 상기 메시지에 사용된 어체를 파악하는 단계;
    상기 메시지의 의도에 대응되는 주제를 포함하는 대화 스크립트를 판독하고, 상기 판독된 대화 스크립트에 기초하여 상기 메시지의 내용에 대응되는 응답 메시지를 생성하는 단계;
    친밀도 지수, 사전 설정된 어체 및 상기 메시지에 사용된 어체 중 적어도 하나에 부분적으로 기초하여, 상기 생성된 응답 메시지의 어체를 변환하는 단계; 및
    상기 변환된 음성 메시지를 출력하는 단계;
    를 포함하는,
    어체 변환이 가능한 한국어 음성 대화 방법.

KR1020180001079A 2018-01-04 2018-01-04 한국어 대화 장치 KR20190083438A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180001079A KR20190083438A (ko) 2018-01-04 2018-01-04 한국어 대화 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180001079A KR20190083438A (ko) 2018-01-04 2018-01-04 한국어 대화 장치

Publications (1)

Publication Number Publication Date
KR20190083438A true KR20190083438A (ko) 2019-07-12

Family

ID=67254218

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180001079A KR20190083438A (ko) 2018-01-04 2018-01-04 한국어 대화 장치

Country Status (1)

Country Link
KR (1) KR20190083438A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210081826A (ko) * 2019-12-24 2021-07-02 이윤희 무제한 자연어 생성을 통한 대량 이메일 자동전송 시스템 및 그 방법
KR20230160601A (ko) 2022-05-17 2023-11-24 삼성에스디에스 주식회사 사이버 보안을 위한 난독화 텍스트 해독 방법 및 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210081826A (ko) * 2019-12-24 2021-07-02 이윤희 무제한 자연어 생성을 통한 대량 이메일 자동전송 시스템 및 그 방법
KR20230160601A (ko) 2022-05-17 2023-11-24 삼성에스디에스 주식회사 사이버 보안을 위한 난독화 텍스트 해독 방법 및 장치

Similar Documents

Publication Publication Date Title
US10832654B2 (en) Recognizing accented speech
US10878817B2 (en) Systems and methods for generating comedy
US11380300B2 (en) Automatically generating speech markup language tags for text
WO2019165331A1 (en) Systems and methods for generating jokes
Wassink et al. Uneven success: automatic speech recognition and ethnicity-related dialects
EP1251490A1 (en) Compact phonetic model for arabic languages recognition
KR20050070073A (ko) 서면 텍스트로부터의 조정가능 신경망 기반 언어 식별
US20100049500A1 (en) Dialogue generation apparatus and dialogue generation method
US9805740B2 (en) Language analysis based on word-selection, and language analysis apparatus
WO2022267405A1 (zh) 语音交互方法、系统、电子设备及存储介质
Nazarieh et al. A brief history of listening comprehension in second language teaching and learning
KR20190083438A (ko) 한국어 대화 장치
JP2002244842A (ja) 音声通訳システム及び音声通訳プログラム
Yap et al. Intonation patterns of questions in Malaysian English
US20040012643A1 (en) Systems and methods for visually communicating the meaning of information to the hearing impaired
US20230215417A1 (en) Using token level context to generate ssml tags
CN114328857A (zh) 语句扩展方法、装置以及计算机可读存储介质
JP3691773B2 (ja) 文章解析方法とその方法を利用可能な文章解析装置
Judge et al. What is the potential for context aware communication aids?
JP2002244841A (ja) 音声表示システム及び音声表示プログラム
JP7180127B2 (ja) 情報提示システム、情報提示方法及びプログラム
KR102573967B1 (ko) 기계학습에 기반한 예측을 이용하여 보완 대체 의사소통을 제공하는 장치 및 방법
WO2023047623A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
KR102356376B1 (ko) 문장구성요소의 5품사화를 이용한 영어 학습 서비스 제공 시스템
WO2021071221A1 (en) Automatically generating speech markup language tags for text

Legal Events

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