KR102193559B1 - 대화형 서버 및 이의 제어 방법 - Google Patents

대화형 서버 및 이의 제어 방법 Download PDF

Info

Publication number
KR102193559B1
KR102193559B1 KR1020140018240A KR20140018240A KR102193559B1 KR 102193559 B1 KR102193559 B1 KR 102193559B1 KR 1020140018240 A KR1020140018240 A KR 1020140018240A KR 20140018240 A KR20140018240 A KR 20140018240A KR 102193559 B1 KR102193559 B1 KR 102193559B1
Authority
KR
South Korea
Prior art keywords
response
user
chat
search
voice
Prior art date
Application number
KR1020140018240A
Other languages
English (en)
Other versions
KR20150097872A (ko
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 KR1020140018240A priority Critical patent/KR102193559B1/ko
Priority to US14/590,630 priority patent/US9837082B2/en
Priority to CN201580006257.0A priority patent/CN105940394B/zh
Priority to PCT/KR2015/001420 priority patent/WO2015126097A1/en
Publication of KR20150097872A publication Critical patent/KR20150097872A/ko
Application granted granted Critical
Publication of KR102193559B1 publication Critical patent/KR102193559B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • 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
    • 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
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • G10L15/197Probabilistic grammars, e.g. word n-grams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/22Interactive procedures; Man-machine interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42203Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS] sound input device, e.g. microphone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

대화형 서버 및 이의 제어 방법이 제공된다. 본 대화형 서버의 제어 방법은 사용자 음성을 입력받고, 사용자 음성의 발화 타입을 판단하며, 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하고, 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하며, 생성된 통합 응답을 사용자 단말로 전송한다.

Description

대화형 서버 및 이의 제어 방법{Interactive Server and Method for controlling server thereof}
본 발명은 대화형 서버 및 이의 제어 방법에 관한 것으로서, 입력된 사용자 음성에 응답하여 검색 응답 및 채팅 응답을 결합하는 통합 응답을 제공하는 대화형 서버 및 이의 제어 방법에 관한 것이다.
근래에는 사용자 음성에 능동적으로 응답을 수행하는 대화형 시스템이 제공되고 있다. 구체적으로, 사용자 단말이 사용자 음성을 인식하고, 인식된 사용자 음성을 외부의 대화형 서버로 전송하면, 대화형 서버는 사용자 음성의 발화 타입을 판단하고, 발화 타입에 따라 응답 결과를 생성하여 사용자 단말로 전송한다.
예를 들어, "무서운 영화 추천해 줘"와 같은 사용자 음성이 입력된 경우, 대화형 서버는 사용자 음성의 발화 타입을 검색 발화 타입으로 판단하고, 사용자 음성에 응답하여 "공포영화 17건이 검색되었습니다."라는 검색 응답을 사용자 단말로 전송할 수 있다. 또 다른 예로, "배가 고프네"와 같은 사용자 음성이 입력된 경우, 대화형 서버는 사용자 음성의 발화 타입을 채팅 발화 타입으로 판단하고, 사용자 음성에 응답하여 "저도 다이어트 중입니다"라는 채팅 응답을 사용자 단말로 전송할 수 있다.
즉, 종래의 대화형 시스템은 사용자 음성에 응답하여 검색 응답 및 채팅 응답 중 하나만을 사용자에게 출력할 수 있다. 그러나, 사용자 음성이 검색 응답인지 채팅 응답인지 모호한 경우가 발생할 수 있다. 이 경우, 유사한 의미를 가지는 사용자 발화들에 대해 일부는 검색 응답을 출력할 수 있고, 다른 일부에서는 채팅 응답을 출력하므로, 사용자 경험의 일관성이 떨어지는 문제점이 발생할 수 있다.
본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로, 본 발명의 목적은, 사용자 음성의 발화 타입이 모호한 경우, 검색 응답 및 채팅 응답을 결합하는 통합 응답을 제공할 수 있는 대화형 서버 및 이의 제어 방법을 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 대화형 서버의 제어 방법은, 사용자 음성을 입력받는 단계; 상기 사용자 음성의 발화 타입을 판단하는 단계; 상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하고, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 단계; 및 상기 생성된 통합 응답을 사용자 단말로 전송하는 단계;를 포함할 수 있다.
그리고, 상기 판단하는 단계는, 검색 발화들로 구축된 검색 언어 모델을 이용하여 상기 사용자 음성이 검색 발화 타입에 해당할 확률을 산출하고, 채팅 발화들로 구축된 채팅 언어 모델을 이용하여 상기 사용자 음성이 채팅 발화 타입에 해당할 확률을 산출하는 단계; 상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 산출하는 단계; 및 상기 차이값이 기설정된 값 이하인 경우, 상기 사용자 음성의 발화 타입을 상기 통합 발화 타입이라고 판단하는 단계;를 포함할 수 있다.
또한, 상기 사용자 음성의 발화 타입을 판단하는 단계는, 상기 차이값이 기설정된 값 초과인 경우, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 크면, 상기 사용자 음성의 발화 타입을 검색 발화 타입이라고 판단하고, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 작으면, 상기 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단하는 단계;를 더 포함할 수 있다.
그리고, 상기 사용자 음성의 발화 타입이 검색 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답을 생성하고, 상기 사용자 음성의 발화 타입이 채팅 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 채팅 응답을 생성하는 단계; 상기 사용자 음성에 대한 검색 응답 및 채팅 응답 중 생성된 하나를 상기 사용자 단말로 전송하는 단계;를 포함할 수 있다.
또한, 상기 생성하는 단계는, 상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하는 단계; 상기 검색 응답 및 채팅 응답의 문장 유형 및 공통적인 정보 포함 여부를 판단하여 상기 검색 응답 및 채팅 응답의 결합이 가능한지 여부를 판단하는 단계; 상기 검색 응답 및 채팅 응답의 결합이 가능한 경우, 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단하는 단계; 상기 검색 응답 및 채팅 응답을 결합하기 위하여, 상기 검색 응답 및 채팅 응답 중 적어도 하나를 수정하는 단계; 및 상기 수정된 검색 응답 및 채팅 응답을 상기 판단된 결합 순서에 따라 결합하는 단계;를 포함할 수 있다.
그리고, 상기 검색 응답 및 채팅 응답의 결합이 불가능한 경우, 상기 검색 응답 및 상기 채팅 응답 중 하나를 전송하는 단계;를 포함할 수 있다.
또한, 상기 결합의 순서를 판단하는 단계는, 상기 사용자 음성이 채팅 발화 타입에 해당할 확률 및 상기 사용자 음성이 검색 발화 타입에 해당할 확률의 크기를 비교하여 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단할 수 있다.
그리고, 상기 수정하는 단계는, 상기 검색 응답 및 채팅 응답 중 적어도 하나에 대한 문장의 어미를 수정할 수 있다.
한편, 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 대화형 서버는 사용자 단말로부터 사용자 음성을 입력받는 입력부; 상기 입력부를 통해 사용자 음성이 입력되면, 상기 사용자 음성의 발화 타입을 판단하는 판단부; 상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하며, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 응답 생성부; 및 상기 생성된 통합 응답을 사용자 단말로 전송하는 전송부;를 포함한다.
그리고, 상기 판단부는, 검색 발화들로 구축된 검색 언어 모델을 이용하여 상기 사용자 음성이 검색 발화 타입에 해당할 확률을 산출하고, 채팅 발화들로 구축된 채팅 언어 모델을 이용하여 상기 사용자 음성이 채팅 발화 타입에 해당할 확률을 산출하는 확률 산출부; 상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 산출하는 차이값 산출부; 및 상기 차이값이 기설정된 값 이하인 경우, 상기 사용자 음성의 발화 타입을 상기 통합 발화 타입이라고 판단하는 발화 타입 판단부;를 포함할 수 있다.
또한, 상기 발화 타입 판단부는, 상기 차이값이 기설정된 값 초과인 경우, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 크면, 상기 사용자 음성의 발화 타입을 검색 발화 타입이라고 판단하고, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 작으면, 상기 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단할 수 있다.
그리고, 상기 응답 생성부는, 상기 사용자 음성의 발화 타입이 검색 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답을 생성하고, 상기 사용자 음성의 발화 타입이 채팅 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 채팅 응답을 생성하며, 상기 전송부는, 상기 사용자 음성에 대한 검색 응답 및 채팅 응답 중 생성된 하나를 상기 사용자 단말로 전송할 수 있다.
또한, 상기 응답 생성부는, 상기 사용자 음성에 대한 검색 응답을 생성하는 검색 응답 생성부; 상기 사용자 음성에 대한 채팅 응답을 생성하는 채팅 응답 생성부; 상기 검색 응답 및 채팅 응답의 문장 유형 및 공통적인 정보 포함 여부를 판단하여 상기 검색 응답 및 채팅 응답의 결합이 가능한지 여부를 판단하는 결합 판단부; 상기 검색 응답 및 채팅 응답의 결합이 가능한 경우, 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단하는 결합 순서 판단부; 상기 검색 응답 및 채팅 응답을 결합하기 위하여, 상기 검색 응답 및 채팅 응답 중 적어도 하나를 수정하는 응답 수정부; 및 상기 수정된 검색 응답 및 채팅 응답을 상기 판단된 결합 순서에 따라 결합하는 응답 결합부;를 포함할 수 있다.
그리고, 상기 전송부는, 상기 결합 판단부에 의해 상기 검색 응답 및 채팅 응답의 결합이 불가능한 것으로 판단된 경우, 상기 검색 응답 및 상기 채팅 응답 중 하나를 전송할 수 있다.
또한, 상기 결합 순서 판단부는, 상기 사용자 음성이 채팅 발화 타입에 해당할 확률 및 상기 사용자 음성이 검색 발화 타입에 해당할 확률의 크기를 비교하여 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단할 수 있다.
그리고, 상기 응답 수정부는, 상기 검색 응답 및 채팅 응답 중 적어도 하나에 대한 문장의 어미를 수정할 수 있다.
한편, 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 대화형 서버의 제어 방법은, 사용자 음성을 입력받는 단계; 상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하는 단계; 상기 사용자 음성의 발화 타입을 판단하는 단계; 상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 단계; 및 상기 생성된 통합 응답을 사용자 단말로 전송하는 단계;를 포함한다.
한편, 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 대화형 서버는, 사용자 단말로부터 사용자 음성을 입력받는 입력부; 상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하는 응답 생성부; 상기 사용자 음성의 발화 타입을 판단하는 판단부; 상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 통합 응답 생성부; 및 상기 생성된 통합 응답을 사용자 단말로 전송하는 전송부;를 포함한다.
상술한 바와 같은 본 발명의 일 실시예에 의해, 사용자 음성의 발화 타입이 모호한 경우, 검색 응답 및 채팅 응답을 결합한 통합 응답을 제공받음으로써, 사용자는 일관성있는 대화형 서비스를 제공받을 수 있게 된다.
도 1은 본 발명의 일 실시예에 따른, 대화형 시스템을 도시한 도면,
도 2는 본 발명의 일 실시예에 따른, 대화형 서버의 구성을 나타내는 블럭도,
도 3은 본 발명의 일 실시예에 따른, 도 2의 판단부의 구성을 나타내는 블럭도,
도 4는 본 발명의 일 실시예에 따른, 도 2의 응답 생성부의 구성을 나타내는 블럭도,
도 5는 본 발명의 일 실시예에 따른, 대화형 서버의 제어 방법을 설명하기 위한 흐름도,
도 6은 본 발명의 일 실시예에 따른, 사용자 음성의 발화 타입을 판단하는 방법을 설명하기 위한 흐름도,
도 7은 본 발명의 일 실시예에 따른, 통합 응답을 생성하는 방법을 설명하기 위한 흐름도,
도 8은 본 발명의 다른 실시예에 따른, 대화형 서버의 구성을 나타내는 블럭도, 그리고,
도 9는 본 발명의 다른 실시예에 따른, 대화형 서버의 제어 방법을 설명하기 위한 흐름도이다.
본 실시예들은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 특정한 실시 형태에 대해 범위를 한정하려는 것이 아니며, 개시된 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 실시예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 권리범위를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 초과의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
실시예에 있어서 ‘모듈’ 혹은 ‘부’는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의‘모듈’ 혹은 복수의‘부’는 특정한 하드웨어로 구현될 필요가 있는 ‘모듈’ 혹은 ‘부’를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서(미도시)로 구현될 수 있다.
이하에서는 도면을 참조하여 본 발명에 대해 더욱 상세히 설명하기로 한다. 도 1은 본 발명의 일 실시예에 따른, 대화형 시스템을 도시한 도면이다. 도 1에 도시된 바와 같이, 대화형 시스템(10)은 대화형 서버(100) 및 사용자 단말(200)을 포함한다. 이때, 사용자 단말(200)은 도 1에 도시된 바와 같이, 스마트 TV로 구현될 수 있으나, 이는 일 실시예에 불과할 뿐, 스마트 폰, 태블릿 PC, 노트북 PC, 데스크탑 PC 등과 같은 다양한 이동 혹은 고정형의 사용자 단말로 구현될 수 있다.
사용자 단말(200)은 사용자 음성을 입력받는다. 그리고, 사용자 단말(200)은 입력된 사용자 음성에 대한 음성 인식을 수행하여 사용자 음성에 대응되는 텍스트 데이터를 획득한다. 이때, 사용자 단말(200)은 직접 입력된 사용자 음성에 대한 음성 인식을 수행할 수 있으나, 이는 일 실시예에 불과할 뿐, 외부의 서버를 이용하여 음성 인식을 수행할 수 있다. 구체적으로, 사용자 단말(200)은 입력된 사용자 음성에 대응되는 음성 데이터를 외부의 음성 인식 서버로 전송하고, 음성 인식 서버는 입력된 음성 데이터에 대한 음성 인식을 수행하여 텍스트 데이터를 생성한 후, 텍스트 데이터를 사용자 단말(200)로 전송할 수 있다. 또한, 본 발명의 다른 실시예에 의하면, 사용자 단말(200)은 사용자 음성에 대응되는 음성 데이터를 대화형 서버(100)로 전송하며, 대화형 서버(100)가 직접 음성 인식을 수행할 수 있다.
사용자 단말(200)은 입력된 사용자 음성에 대응되는 텍스트 데이터를 대화형 서버(100)로 전송한다.
대화형 서버(100)는 입력된 사용자 음성에 대응되는 텍스트 데이터를 이용하여 사용자 음성의 발화 타입을 판단한다. 이때, 사용자 음성의 발화 타입에는 검색 발화 타입, 채팅 발화 타입 및 통합 발화 타입이 포함될 수 있다.
구체적으로, 대화형 서버(100)는 검색 발화들로 구축된 검색 언어 모델을 이용하여 사용자 음성이 검색 발화 타입에 해당할 확률을 산출하고, 채팅 발화들로 구축된 채팅 언어 모델을 이용하여 사용자 음성이 채팅 발화 타입에 해당할 확률을 산출할 수 있다. 그리고, 대화형 서버(100)는 사용자 음성이 검색 발화 타입에 해당할 확률과 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 산출하고, 차이값이 기설정된 값 이하인 경우, 즉, 사용자 음성이 검색 발화 타입인지 채팅 발화 타입인지 모호한 경우, 사용자 음성의 발화 타입을 통합 발화 타입이라고 판단할 수 있다. 그러나, 차이값이 기설정된 값 초과인 경우, 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 크면, 대화형 서버(100)는 사용자 음성의 발화 타입을 검색 발화 타입이라고 판단하고, 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 작으면, 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단할 수 있다.
사용자 음성의 발화 타입이 검색 발화 타입이라고 판단된 경우, 대화형 서버(100)는 사용자 음성에 응답하여 검색 응답을 생성하며, 사용자 음성의 발화 타입이 채팅 발화 타입이라고 판단된 경우, 대화형 서버(100)는 사용자 음성에 응답하여 채팅 응답을 생성할 수 있다. 그리고, 대화형 서버(100)는 생성된 검색 응답 및 채팅 응답 중 생성된 하나를 사용자 단말(200)로 전송할 수 있다.
그러나, 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 대화형 서버(100)는 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하고, 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성할 수 있다.
구체적으로, 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 대화형 서버(100)는 사용자 음성에 대한 검색 응답 및 채팅 응답을 모두 생성할 수 있다. 그리고, 대화형 서버(100)는 검색 응답 및 채팅 응답의 문장 유형 및 공통적인 정보 포함 여부를 판단하여 검색 응답 및 채팅 응답의 결합이 가능한지 여부를 판단할 수 있다. 예를 들어, 대화형 서버(100)는 검색 응답 및 채팅 응답의 문장 유형이 모두 평서문인 경우, 검색 응답 및 채팅 응답의 결합이 불가능하다고 판단할 수 있다. 검색 응답 및 채팅 응답의 결합이 가능한 경우, 대화형 서버(100)는 검색 응답 및 채팅 응답의 결합의 순서를 판단하며, 검색 응답 및 채팅 응답을 결합하기 위하여, 상기 검색 응답 및 채팅 응답 중 적어도 하나를 수정할 수 있다. 그리고, 대화형 서버(100)는 수정된 검색 응답 및 채팅 응답을 판단된 결합 순서에 따라 결합하여 통합 응답을 생성할 수 있다. 그리고, 대화형 서버(100)는 생성된 통합 응답을 사용자 단말(200)로 전송할 수 있다.
사용자 단말(200)은 대화형 서버(100)로부터 전송된 사용자 음성에 응답하는 검색 응답, 채팅 응답 및 통합 응답 중 하나를 출력할 수 있다.
상술한 바와 같은 대화형 시스템(10)과 같이, 사용자 음성의 발화 타입이 모호한 경우, 검색 응답 및 채팅 응답을 결합한 통합 응답을 제공함으로써, 사용자는 일관성있는 대화형 서비스를 제공받을 수 있게 된다.
한편, 상술한 실시예에서는, 대화형 서버(100)가 사용자 음성의 발화 타입을 먼저 판단한 후, 발화 타입에 대응되는 응답을 생성하였으나, 이는 일 실시예에 불과할 뿐, 대화형 서버(100)는 사용자 음성에 대응되는 검색 응답 및 채팅 응답을 모두 생성한 후, 발화 타입을 판단하고, 판단된 발화 타입에 따라 사용자 음성에 대한 응답을 사용자 단말(200)로 전송할 수 있다.
이하에서는 도 2 내지 도 4를 참조하여 대화형 서버(100)에 대해 더욱 상세히 설명하기로 한다. 도 2는 본 발명의 일 실시예에 따른, 대화형 서버(100)의 구성을 나타내는 블럭도이다. 도 2에 도시된 바와 같이, 대화형 서버(100)는 입력부(110), 판단부(120), 응답 생성부(130), 전송부(140), 검색 언어 모델(150) 및 채팅 언어 모듈(160)을 포함한다.
입력부(110)는 사용자 단말(200)로부터 사용자 음성을 입력받는다. 이때, 입력부(110)는 텍스트 데이터 형태의 사용자 음성을 입력받을 수 있으나, 이는 일 실시예에 불과할 뿐, 음성 데이터 형태의 사용자 음성을 입력받을 수 있다. 음성 데이터 형태의 사용자 음성이 입력된 경우, 입력부(110)는 음성 인식 모듈을 이용하여 사용자 음성에 대한 음성 인식을 수행하여 텍스트 데이터를 추출할 수 있다.
판단부(120)는 검색 언어 모델(150) 및 채팅 언어 모델(160)을 이용하여 사용자 음성의 발화 타입을 판단한다. 이때, 검색 언어 모델(150)은 검색 발화들로 수집된 말뭉치를 이용하여 생성된 언어 모델이며, 채팅 언어 모델(160)은 채팅 발화들로 수집된 말뭉치를 이용하여 생성된 언어 모델이다.
예를 들어, "공포 영화 머 볼까" 및 "근처에 맛있는 음식점"이라는 사용자 음성이 입력된 경우, 판단부(120)는 사용자 음성의 발화 타입을 검색 발화 타입이라고 판단할 수 있으며, "나 예뻐" 및 "기분 우울해"라는 사용자 음성이 입력된 경우, 판단부(120)는 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단할 수 있으며, "무서운 영화 좋더라" 또는 "오늘 날씨 좋아"라는 사용자 음성이 입력된 경우, 판단부(120)는 사용자 음성의 발화 타입을 통합 발화 타입이라고 판단할 수 있다.
판단부(120)가 사용자 음성의 발화 타입을 판단하는 구체적인 방법에 대해서는 도 3을 참조하여 상세히 설명하기로 한다. 구체적으로, 판단부(120)는 확률 산출부(121), 차이값 산출부(123) 및 발화 타입 판단부(125)를 포함할 수 있다.
확률 산출부(121)는 검색 언어 모델(150)을 이용하여 사용자 음성이 검색 발화 타입에 해당할 확률(LA(S))을 산출하고, 채팅 언어 모델을 이용하여 사용자 음성이 채팅 발화 타입에 해당할 확률(LB(S))을 산출할 수 있다. 이때, 사용자 음성이 검색 발화 타입에 해당할 확률(LA(S))은 사용자 음성에 대응되는 텍스트 데이터가 검색 언어 모델(150)에 존재할 확률이며, 사용자 음성이 채팅 발화 타입에 해당할 확률(LB(S))은 사용자 음성에 대응되는 텍스트 데이터가 채팅 언어 모델(160)에 존재할 확률이다.
그리고, 차이값 산출부(123)는 아래의 수학식 1을 이용하여 사용자 음성이 검색 발화 타입에 해당할 확률(LA(S))과 사용자 음성이 채팅 발화 타입에 해당할 확률(LB(S))의 차이값(f(S))을 산출할 수 있다.
Figure 112014015563212-pat00001
발화 타입 판단부(125)는 사용자 음성이 검색 발화 타입(LA(S))에 해당할 확률, 사용자 음성이 채팅 발화 타입에 해당할 확률(LB(S)), 및 두 확률의 차이값을 이용하여 사용자 음성의 발화 타입을 판단할 수 있다. 이때, 발화 타입에는 검색 발화 타입, 채팅 발화 타입 및 통합 발화 타입이 포함될 수 있다. 이때, 통합 발화 타입은 채팅 발화 타입인지 검색 발화 타입인지 모호한 경우 채팅 응답 및 검색 응답을 결합하여 통합 응답을 제공하는 발화 타입니다.
우선, 발화 타입 판단부(125)는 아래의 수학식 2와 같이, 검색 발화 타입에 해당할 확률과 채팅 발화 타입에 해당할 확률의 차이값을 기설정된 값(θ)과 비교하여 판단할 수 있다.
Figure 112014015563212-pat00002
Figure 112014015563212-pat00003
즉, 차이값이 기설정된 값(θ) 이하인 경우, 발화 타입 판단부(125)는 사용자 음성의 발화 타입을 통합 발화 타입이라고 판단할 수 있으며, 차이값이 기설정된 값(θ) 초과인 경우, 사용자 음성의 발화 타입을 채팅 발화 타입 또는 검색 발화 타입으로 판단할 수 있다.
특히, 아래의 수학식 3과 같이, 차이값이 기설정된 값(θ) 초과인 경우, 사용자 음성이 검색 발화 타입에 해당할 확률(LA(S))이 채팅 발화 타입에 해당할 확률(LB(S))보다 크면, 발화 타입 판단부(125)는 사용자 음성의 발화 타입을 검색 발화 타입이라고 판단하고, 사용자 음성이 검색 발화 타입에 해당할 확률(LA(S))이 채팅 발화 타입에 해당할 확률(LB(S))보다 작으면, 발화 타입 판단부(125)는 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단할 수 있다.
Figure 112014015563212-pat00004
Figure 112014015563212-pat00005
한편, 기설정된 값(θ)은 시스템 개발자가 임의로 설정할 수 있으나, 이는 일 실시예에 불과할 뿐, 테스트 문장을 토대로 수치를 정하여 산출될 수 있다. 테스트 문장을 토대로 θ 값을 설정하기 위해, 모호한 문장은 구분하지 못하고, 정보 검색 발화와 채팅 발화만으로 분리하는 분류기를 구축할 수 있다. 이때의 분류기는 1) f(S) >=0 일 경우 정보 검색 발화로 분류, 2) f(S) < 0일 경우 채팅 발화로 분류할 수 있다. 발화 타입 분류기에 대해 n개의 테스트 문장을 입력하여 발화타입의 분류 오류가 발생한 테스트 문장의 언어 모델 점수 수집한다. 오류가 발생한 문장들의 f(S)의 평균값(m) 및 표준 편차(σ)를 계산하여 기설정된 값(θ)을 산출할 수 있다.
다시 도 2에 대해 설명하면, 판단부(120)는 판단된 사용자 음성의 발화 타입에 대한 정보를 응답 생성부(130)로 출력할 수 있다.
응답 생성부(130)는 판단된 사용자 음성의 발화 타입에 따라 검색 응답, 채팅 응답 및 통합 응답 중 하나를 생성하여 출력할 수 있다. 구체적으로, 사용자 음성의 발화 타입이 검색 발화 타입이라고 판단된 경우, 응답 생성부(130)는 사용자 음성에 응답하여 검색 응답을 생성할 수 있다. 사용자 음성의 발화 타입이 채팅 발화 타입이라고 판단된 경우, 응답 생성부(130)는 사용자 음성에 응답하여 채팅 응답을 생성할 수 있다. 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 응답 생성부(130)는 사용자 음성에 응답하여 통합 응답을 생성할 수 있다.
이하에서는 도 4를 참조하여 응답 생성부(130)에 대해 더욱 상세히 설명하기로 한다. 도 4에 도시된 바와 같이, 응답 생성부(130)는 검색 응답 생성부(131), 채팅 응답 생성부(132), 결합 판단부(133), 결합 순서 판단부(134), 응답 수정부(135) 및 응답 결합부(136)를 포함한다.
검색 응답 생성부(131)는 사용자 음성이 검색 발화 타입 또는 통합 발화 타입이고 판단된 경우, 사용자 음성에 응답하여 검색 응답을 생성할 수 있다. 예를 들어, "공포 영화 머 볼까"라는 검색 발화 타입의 사용자 음성이 입력된 경우, 검색 응답 생성부(131)는 사용자 음성에 응답하여 "추천 공포 영화 10건이 검색되었습니다."라는 검색 응답을 생성할 수 있으며, "오늘 날씨 좋아"라는 통합 발화 타입의 사용자 음성이 입력된 경우, 검색 응답 생성부(131)는 "오늘 날씨는 맑음이며, 낮 최고 기온은 25도입니다"라는 검색 응답을 생성할 수 있다.
특히, 사용자 음성이 검색 발화 타입인 경우, 검색 응답 생성부(131)는 생성된 검색 응답을 전송부(140)로 바로 출력할 수 있으나, 사용자 음성이 통합 발화 타입인 경우, 검색 응답 생성부(131)는 생성된 검색 응답을 결합 판단부(140)를 출력할 수 있다.
채팅 응답 생성부(133)는 사용자 음성이 채팅 발화 타입 또는 통합 발화 타입이고 판단된 경우, 사용자 음성에 응답하여 채팅 응답을 생성할 수 있다. 예를 들어, "나 예뻐"라는 채팅 발화 타입의 사용자 음성이 입력된 경우, 채팅 응답 생성부(133)는 사용자 음성에 응답하여 "넌 정말 예쁜 거 같아"라는 채팅 응답을 생성할 수 있으며, "오늘 날씨 좋아"라는 통합 발화 타입의 사용자 음성이 입력된 경우, 채팅 응답 생성부(133)는 "오늘 날씨는 정말 좋은 거 같아"라는 채팅 응답을 생성할 수 있다.
특히, 사용자 음성이 채팅 발화 타입인 경우, 채팅 응답 생성부(133)는 생성된 검색 응답을 전송부(140)로 바로 출력할 수 있으나, 사용자 음성이 통합 발화 타입인 경우, 채팅 응답 생성부(133)는 생성된 채팅 응답을 결합 판단부(140)를 출력할 수 있다.
결합 판단부(140)는 검색 응답 생성부(131) 및 채팅 응답 생성부(132)로부터 출력된 검색 응답 및 채팅 응답의 결합 가능 여부를 판단할 수 있다. 구체적으로, 결합 판단부(140)는 검색 응답 및 채팅 응답의 문장 유형, 공통 정보 포함 여부, 검색 응답 및 채팅 응답의 생성 여부 등을 이용하여 결합 가능 여부를 판단할 수 있다. 예를 들어, "이름이 뭐야"라는 통합 발화 타입의 사용자 음성이 입력된 경우, 검색 응답 생성부(131)는 "현재 방송 중인 프로는 무한 도전입니다"라는 검색 응답을 생성하며, 채팅 응답 생성부(133)는 "제 이름은 스마트 TV입니다."라는 채팅 응답을 생성할 수 있다. 이때, 생성된 검색 응답 및 채팅 응답은 모두 평서문이며, 공통적인 정보가 존재하지 않으므로, 결합 불가능하다고 판단할 수 있다. 또 다른 예로, 통합 발화 타입의 사용자 음성이더라도 검색 응답 및 채팅 응답 중 하나가 생성되지 않은 경우, 결합 판단부(140)는 검색 응답 및 채팅 응답의 결합이 불가능하다고 판단할 수 있다.
결합이 불가능하다고 판단된 경우, 결합 판단부(140)는 생성된 검색 응답 및 채팅 응답 중 하나를 전송부(140)로 출력할 수 있다. 예를 들어, "이름이 뭐야"라는 통합 발화 타입의 사용자 음성이 입력된 경우, 결합 판단부(140)는 검색 응답 및 채팅 응답의 결합이 불가능하다고 판단하여 "제 이름은 스마트 TV입니다."라는 채팅 응답만을 전송부(140)로 출력할 수 있다.
결합이 가능하다고 판단된 경우, 결합 판단부(140)는 생성된 검색 응답 및 채팅 응답을 결합 순서 판단부(134)로 출력할 수 있다.
결합 순서 판단부(134)는 검색 응답 및 채팅 응답의 결합 순서를 판단할 수 있다. 이때, 결합 순서 판단부(134)는 사용자 음성이 채팅 발화 타입에 해당할 확률 및 사용자 음성이 검색 발화 타입에 해당할 확률의 크기를 비교하여 검색 응답 및 채팅 응답의 결합의 순서를 판단할 수 있다. 즉, 채팅 발화 타입에 해당할 확률이 검색 발화 타입에 해당할 확률 이상인 경우, 결합 순서 판단부(134)는 채팅 발화 타입을 먼저 배치하고, 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률 이상인 경우, 결합 순서 판단부(134)는 검색 발화 타입을 먼저 배치할 수 있다. 예를 들어, "무서운 영화가 좋더라"라는 통합 발화 타입의 사용자 음성이 입력된 경우, 검색 응답 생성부(131)는 "공포 영화가 총 10건이 검색되었습니다."라는 검색 응답을 생성하며, 채팅 응답 생성부(133)는 "저도 무서운 영화 좋아해요"라는 채팅 응답을 생성할 수 있다. 이때, 사용자 음성이 채팅 발화 타입에 해당할 확률이 검색 발화 타입에 해당할 확률보다 큰 경우, 결합 순서 판단부(134)는 채팅 응답이 검색 응답보다 먼저 배치되도록 결합 순서를 판단할 수 있다.
그러나, 상술한 바와 같이 확률을 비교하여 결합 순서를 판단하는 것은 일 실시예에 불과할 뿐, 채팅 응답 및 검색 응답 중 사용자에 의해 설정된 하나를 항상 먼저 배치할 수 있다.
응답 수정부(135)는 검색 응답 및 채팅 응답의 결합이 가능하도록 검색 응답 및 채팅 응답 중 적어도 하나를 수정할 수 있다. 특히, 응답 수정부(135)는 검색 응답 및 채팅 응답 중 적어도 한 문장의 어미를 수정할 수 있다. 예를 들어, "무서운 영화가 좋더라"라는 통합 발화 타입의 사용자 음성이 입력된 경우, 검색 응답 생성부(131)는 "공포 영화가 총 10건이 검색되었습니다."라는 검색 응답을 생성하며, 채팅 응답 생성부(133)는 "저도 무서운 영화 좋아해요"라는 채팅 응답을 생성할 수 있다. 이때, 응답 수정부(135)는 채팅 응답과 검색 응답의 말미가 일치하도록 검색 응답의 말미를 "검색되었습니다"에서 "검색되었어요"로 수정할 수 있다. 또 다른 실시예로, 응답 수정부(135)는 채팅 응답 및 검색 응답 사이에 접속사를 삽입할 수 있다.
응답 결합부(136)는 결합 순서 판단부(134)에서 판단된 결합 순서에 의해 수정된 채팅 응답 및 검색 응답을 결합하여 통합 응답을 생성할 수 있다. 예를 들어, 예를 들어, "무서운 영화가 좋더라"라는 통합 발화 타입의 사용자 음성이 입력된 경우, 검색 응답 생성부(131)는 "공포 영화가 총 10건이 검색되었습니다."라는 검색 응답을 생성하며, 채팅 응답 생성부(133)는 "저도 무서운 영화 좋아해요"라는 채팅 응답을 생성할 수 있다. 그리고, 결합 순서 판단부(134)는 채팅 응답이 먼저 나오도록 결합 순서를 판단하며, 응답 수정부(135)는 검색 응답의 말미를 "~요"로 수정할 수 있다. 따라서, 응답 결합부(136)는 "무서운 영화가 좋더라"라는 통합 발화 타입의 사용자 음성에 응답하여 "저도 무서운 영화가 좋아요. 공포 영화가 총 10건이 검색되었어요."라는 통합 응답을 생성할 수 있다.
다시 도 2에 대해 설명하면, 응답 생성부(130)는 생성된 응답을 전송부(140)로 출력한다.
전송부(140)는 생성된 응답을 사용자 단말(200)로 다시 전송한다.
한편, 입력부(110) 및 전송부(140)는 다양한 통신 네트워크를 이용하여 사용자 음성 및 생성된 응답을 사용자 단말(200)과 송수신할 수 있다. 예를 들어, 입력부(110) 및 전송부(140)는 2G 네트워크, 3G 네트워크, 4G 네트워크, B4G(Beyond 4G) 네트워크, 5G 네트워크, Wi-Fi 네트워크, IP 네트워크, 단말간 직접통신 네트워크 등과 같은 다양한 통신 네트워크를 통해 사용자 단말(200)과 통신을 수행할 수 있다.
사용자 단말(200)은 전송부(140)로부터 전송된 응답을 출력할 수 있다. 이때, 사용자 단말(200)은 사용자 음성에 응답하는 응답을 시각적인 형태로 디스플레이할 수 있으며, 청각적인 형태로 스피커로 출력할 수 있다.
상술한 바와 같은 대화형 서버(100)와 같이, 사용자 음성의 발화 타입이 모호한 경우, 검색 응답 및 채팅 응답을 결합한 통합 응답을 제공받음으로써, 사용자는 일관성있는 대화형 서비스를 제공받을 수 있게 된다.
이하에서는 도 5 내지 도 7을 참조하여 대화형 서버(100)의 제어 방법에 대해 설명하기로 한다. 도 5는 본 발명의 일 실시예에 따른, 대화형 서버(100)의 제어 방법을 설명하기 위한 흐름도이다.
우선, 대화형 서버(100)는 사용자 음성을 입력받는다(S505). 이때, 사용자 음성은 텍스트 데이터 형태일 수 있으나, 이는 일 실시예에 불과할 뿐, 음성 데이터 형태일 수 있다. 사용자 음성이 음성 데이터 형태인 경우, 대화형 서버(100)는 음성 인식을 수행하여 사용자 음성에 대응되는 텍스트 데이터를 생성할 수 있다.
그리고, 대화형 서버(100)는 사용자 음성의 발화 타입을 판단한다(S510). 이때, 대화형 서버(100)는 검색 언어 모델(150) 및 채팅 언어 모델(160)을 이용하여 사용자 음성의 발화 타입을 판단할 수 있다.
사용자 음성의 발화 타입이 통합 발화 타입인 경우(S515-Y), 대화형 서버(100)는 검색 응답 및 채팅 응답을 생성하고, 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성한다(S520). 구체적으로, 대화형 서버(100)는 사용자 음성에 응답하는 검색 응답 및 채팅 응답을 모두 생성하고, 검색 응답 및 채팅 응답의 결합 여부를 판단할 수 있다. 검색 응답 및 채팅 응답의 결합이 가능한 경우, 대화형 서버(100)는 검색 응답 및 채팅 응답의 결합 순서를 판단하고, 결합을 위한 검색 응답 및 채팅 응답의 수정 여부를 판단하며, 판단된 결합 순서에 따라 수정된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성할 수 있다.
그리고, 대화형 서버(100)는 통합 응답을 사용자 단말(200)로 전송한다(S525),
사용자 음성의 발화 타입이 통합 발화 타입이 아니고(S515-N), 검색 발화 타입이라고 판단된 경우(S530-Y), 대화형 서버(100)는 검색 응답을 생성하고(S535), 생성된 검색 응답을 사용자 단말(200)로 전송한다(S540).
사용자 음성의 발화 타입이 통합 발화 타입이 아니고(S515-N), 사용자 음성의 발화 타입이 검색 발화 타입이 아닌 경우(S530-N), 대화형 서버(100)는 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단하고(S545), 채팅 응답을 생성하며(S550), 생성된 채팅 응답을 사용자 단말(200)로 전송한다(S555).
도 6은 본 발명의 일 실시예에 따른, 대화형 서버(100)의 사용자 음성의 발화 타입 판단 방법을 설명하기 위한 흐름도이다.
우선, 대화형 서버(100)는 사용자 음성이 검색 발화에 해당할 확률 및 채팅 발화에 해당할 확률을 산출한다(S610). 구체적으로, 대화형 서버(100)는 검색 발화로 구축된 검색 언어 모델(150)을 이용하여 사용자 음성이 검색 발화에 해당할 확률을 산출하며, 채팅 발화로 구축된 채팅 언어 모델(160)을 이용하여 사용자 음성이 채팅 발화에 해당할 확률을 산출할 수 있다.
그리고, 대화형 서버(100)는 검색 발화에 해당할 확률과 채팅 발화에 해당할 확률의 차이값을 산출한다(S620).
그리고, 대화형 서버(100)는 산출된 차이값이 기설정된 값 이하인지 여부를 판단한다(S630). 이때, 기설정된 값은 시스템 개발자에 의해 설정될 수 있으나, 이는 일 실시예에 불과할 뿐, 테스트 문장을 통해 설정될 수 있다.
차이값이 기설정된 값 이하인 경우(S630-Y), 대화형 서버(100)는 사용자 음성의 발화 타입을 통합 발화 타입으로 판단한다(S640).
그러나, 차이값이 기설정된 값 초과인 경우(S630-N), 대화형 서버(100)는 사용자 음성이 검색 발화에 해당할 확률이 채팅 발화에 해당할 확률보다 큰지 여부를 판단한다(S650).
사용자 음성이 검색 발화에 해당할 확률이 채팅 발화에 해당할 확률보다 큰 경우(S650-Y), 대화형 서버(100)는 사용자의 발화 타입을 검색 발화 타입으로 판단한다(S660). 그러나, 사용자 음성이 검색 발화에 해당할 확률이 채팅 발화에 해당할 확률보다 작은 경우(S650-N), 대화형 서버(100)는 사용자의 발화 타입을 채팅 발화 타입으로 판단한다(S670).
도 7은 본 발명의 일 실시예에 따른, 통합 응답을 생성하는 방법을 설명하기 위한 흐름도이다.
우선, 대화형 서버(100)는 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성한다(S710).
그리고, 대화형 서버(100)는 검색 응답과 채팅 응답의 결합이 가능한지 여부를 판단한다(S720). 이때, 대화형 서버(100)는 검색 응답과 채팅 응답의 문장 형태, 공통적인 정보 포함 여부 등을 판단하여 결합 여부를 판단할 수 있다.
검색 응답과 채팅 응답의 결합이 가능한 경우(S720-Y), 대화형 서버(100)는 검색 응답 및 채팅 응답의 결합 순서를 판단한다(S730). 이때, 대화형 서버(100)는 사용자 음성이 검색 발화 타입에 해당할 확률 및 채팅 발화 타입에 해당할 확률을 비교하여 결합 순서를 판단할 수 있다.
그리고, 대화형 서버(100)는 검색 응답과 채팅 응답 중 적어도 하나를 수정한다(S740). 이때, 대화형 서버(100)는 검색 응답 및 채팅 응답 중 적어도 하나의 말미를 수정하거나 검색 응답 및 채팅 응답 사이에 접속사를 삽입할 수 있다.
그리고, 대화형 서버(100)는 검색 응답과 채팅 응답을 결합하여 통합 응답을 생성한다(S750).
한편, 검색 응답과 채팅 응답의 결합이 불가능한 경우(S720-N), 대화형 서버(100)는 검색 응답 및 채팅 응답 중 하나를 사용자 단말(200)로 전송한다(S760). 이때, 대화형 서버(200)는 사용자 음성이 검색 발화 타입에 해당할 확률 및 채팅 발화 타입에 해당할 확률을 비교하여, 확률이 큰 발화 타입에 대응되는 응답을 사용자 단말(200)로 전송할 수 있다.
상술한 바와 같은 본 발명의 다양한 실시예와 같이, 사용자 음성의 발화 타입이 모호한 경우, 검색 응답 및 채팅 응답을 결합한 통합 응답을 제공함으로써, 사용자는 일관성있는 대화형 서비스를 제공받을 수 있게 된다.
한편, 도 2 내지 도 7에서는 사용자 음성의 발화 타입을 먼저 판단한 후, 사용자 음성에 대응되는 응답을 생성하는 것으로 설명하였으나, 이는 일 실시예에 불과할 뿐, 사용자 음성에 대응되는 응답을 먼저 생성한 후, 발화 타입을 판단할 수 있다. 이에 대해서는 도 8 및 도 9를 참조하여 설명하기로 한다. 다만, 도 8 및 도 9에서 개시되는 구성에 대한 설명 중 앞서 개시된 구성에 대한 설명과 중복되는 경우, 중복되는 설명은 생략하기로 한다.
도 8은 본 발명의 다른 실시예에 따른, 대화형 서버(800)의 구성을 나타내는 블럭도이다. 도 8에 도시된 바와 같이, 대화형 서버(800)는 입력부(810), 응답 생성부(820), 판단부(830), 통합 응답 생성부(840) 및 전송부(850)를 포함한다.
입력부(810)는 사용자 단말(200)로부터 사용자 음성을 입력받는다.
응답 생성부(820)는 사용자 음성에 대한 검색 응답 및 채팅 응답을 모두 생성한다.
판단부(830)는 도 3에서 설명한 바와 같은 방법으로 사용자 음성의 발화 타입을 판단한다. 사용자 음성의 발화 타입이 검색 발화 타입이라고 판단된 경우, 판단부(830)는 생성된 검색 응답을 전송부(850)로 출력하며, 사용자 음성의 발화 타입이 채팅 발화 타입이라고 판단된 경우, 판단부(830)는 생성된 채팅 응답을 전송부(850)로 출력할 수 있다. 그리고, 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 판단부(830)는 검색 응답 및 채팅 응답을 통합 응답 생성부(840)로 출력할 수 있다.
통합 응답 생성부(840)는 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성한다. 구체적으로, 통합 응답 생성부(840)는 검색 응답 및 채팅 응답의 결합 여부를 판단할 수 있다. 검색 응답 및 채팅 응답의 결합이 가능한 경우, 통합 응답 생성부(840)는 검색 응답 및 채팅 응답의 결합 순서를 판단하고, 결합을 위한 검색 응답 및 채팅 응답의 수정 여부를 판단하며, 판단된 결합 순서에 따라 수정된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성할 수 있다. 그리고, 통합 응답 생성부(840)는 생성된 통합 응답을 전송부(850)로 출력할 수 있다.
전송부(850)는 출력된 응답을 사용자 단말(200)로 전송한다.
도 9는 본 발명의 다른 실시예에 따른, 대화형 서버(800)의 제어 방법을 설명하기 위한 흐름도이다.
우선, 대화형 서버(800)는 사용자 음성을 입력받는다(S910).
그리고, 대화형 서버(800)는 사용자 음성에 응답하는 검색 응답 및 채팅 응답을 생성한다(S920).
그리고, 대화형 서버(800)는 사용자 음성의 발화 타입을 판단한다(S930). 이때, 대화형 서버(800)는 도 3에서 설명한 바와 같은 방법으로 사용자 음성의 발화 타입을 판단할 수 있다.
사용자 음성이 통합 발화 타입이라고 판단된 경우(S940-Y), 대화형 서버(800)는 생성된 검색 응답과 채팅 응답을 결합하여 통합 응답을 생성한다(S950). 그리고, 대화형 서버(800)는 생성된 통합 응답을 사용자 단말(200)로 전송한다(S960).
사용자 음성이 통합 발화 타입이 아니고(S940-N), 검색 발화 타입이라고 판단된 경우(S970-Y), 대화형 서버(800)는 생성된 검색 응답을 사용자 단말(200)로 전송한다(S980). 또한, 사용자 음성이 통합 발화 타입이 아니고(S940-N), 검색 발화 타입이 아니라고 판단된 경우(S970-N), 대화형 서버(800)는 사용자 음성이 채팅 발화 타입에 해당하는 것으로 판단하여 생성된 채팅 응답을 사용자 단말(200)로 전송한다(S990).
한편, 본 실시예들에 따른 사용자 단말은 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시 예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 실시 예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. "매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
본 실시 예에서 설명하는 특정 실행들은 예시들로서, 어떠한 방법으로도 기술적 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다.
본 명세서(특히 특허청구범위)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 포함하는 것으로서(이에 반하는 기재가 없다면), 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 한정되는 것은 아니다. 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 기술적 사상을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
110: 입력부 120: 판단부
130: 응답 생성부 140: 전송부
150: 검색 언어 모델 160: 채팅 언어 모델

Claims (18)

  1. 대화형 서버의 제어 방법에 있어서,
    사용자 음성을 입력받는 단계;
    상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 획득하는 단계;
    상기 획득된 차이값에 기초하여 상기 사용자 음성의 발화 타입을 판단하는 단계;
    상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하고, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 단계; 및
    상기 생성된 통합 응답을 사용자 단말로 전송하는 단계;를 포함하는 대화형 서버의 제어 방법.
  2. 제1항에 있어서,
    상기 획득하는 단계는,
    검색 발화들로 구축된 검색 언어 모델을 이용하여 상기 사용자 음성이 검색 발화 타입에 해당할 확률을 산출하고, 채팅 발화들로 구축된 채팅 언어 모델을 이용하여 상기 사용자 음성이 채팅 발화 타입에 해당할 확률을 산출하는 단계; 및
    상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 산출하는 단계;를 포함하고,
    상기 판단하는 단계는,
    상기 차이값이 기설정된 값 이하인 경우, 상기 사용자 음성의 발화 타입을 상기 통합 발화 타입이라고 판단하는 단계;를 포함하는 제어 방법.
  3. 제2항에 있어서,
    상기 판단하는 단계는,
    상기 차이값이 기설정된 값 초과인 경우, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 크면, 상기 사용자 음성의 발화 타입을 검색 발화 타입이라고 판단하고, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 작으면, 상기 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단하는 단계;를 더 포함하는 제어 방법.
  4. 제3항에 있어서,
    상기 사용자 음성의 발화 타입이 검색 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답을 생성하고, 상기 사용자 음성의 발화 타입이 채팅 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 채팅 응답을 생성하는 단계;
    상기 사용자 음성에 대한 검색 응답 및 채팅 응답 중 생성된 하나를 상기 사용자 단말로 전송하는 단계;를 포함하는 제어 방법.
  5. 제1항에 있어서,
    상기 생성하는 단계는,
    상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하는 단계;
    상기 검색 응답 및 채팅 응답의 문장 유형 및 공통적인 정보 포함 여부를 판단하여 상기 검색 응답 및 채팅 응답의 결합이 가능한지 여부를 판단하는 단계;
    상기 검색 응답 및 채팅 응답의 결합이 가능한 경우, 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단하는 단계;
    상기 검색 응답 및 채팅 응답을 결합하기 위하여, 상기 검색 응답 및 채팅 응답 중 적어도 하나를 수정하는 단계; 및
    상기 수정된 검색 응답 및 채팅 응답을 상기 판단된 결합 순서에 따라 결합하는 단계;를 포함하는 제어 방법.
  6. 제5항에 있어서,
    상기 검색 응답 및 채팅 응답의 결합이 불가능한 경우, 상기 검색 응답 및 상기 채팅 응답 중 하나를 전송하는 단계;를 포함하는 제어 방법.
  7. 제5항에 있어서,
    상기 결합의 순서를 판단하는 단계는,
    상기 사용자 음성이 채팅 발화 타입에 해당할 확률 및 상기 사용자 음성이 검색 발화 타입에 해당할 확률의 크기를 비교하여 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단하는 것을 특징으로 하는 제어 방법.
  8. 제5항에 있어서,
    상기 수정하는 단계는,
    상기 검색 응답 및 채팅 응답 중 적어도 하나에 대한 문장의 어미를 수정하는 것을 특징으로 하는 제어 방법.
  9. 대화형 서버에 있어서,
    사용자 단말로부터 사용자 음성을 입력받는 입력부;
    상기 입력부를 통해 사용자 음성이 입력되면, 상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 획득하고, 상기 획득된 차이값에 기초하여 상기 사용자 음성의 발화 타입을 판단하는 판단부;
    상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하며, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 응답 생성부; 및
    상기 생성된 통합 응답을 사용자 단말로 전송하는 전송부;를 포함하는 대화형 서버.
  10. 제9항에 있어서,
    상기 판단부는,
    검색 발화들로 구축된 검색 언어 모델을 이용하여 상기 사용자 음성이 검색 발화 타입에 해당할 확률을 산출하고, 채팅 발화들로 구축된 채팅 언어 모델을 이용하여 상기 사용자 음성이 채팅 발화 타입에 해당할 확률을 산출하는 확률 산출부;
    상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 산출하는 차이값 산출부; 및
    상기 차이값이 기설정된 값 이하인 경우, 상기 사용자 음성의 발화 타입을 상기 통합 발화 타입이라고 판단하는 발화 타입 판단부;를 포함하는 대화형 서버.
  11. 제10항에 있어서,
    상기 판단부는,
    상기 차이값이 기설정된 값 초과인 경우, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 크면, 상기 사용자 음성의 발화 타입을 검색 발화 타입이라고 판단하고, 상기 사용자 음성이 검색 발화 타입에 해당할 확률이 채팅 발화 타입에 해당할 확률보다 작으면, 상기 사용자 음성의 발화 타입을 채팅 발화 타입이라고 판단하는 것을 특징으로 하는 대화형 서버.
  12. 제11항에 있어서,
    상기 응답 생성부는,
    상기 사용자 음성의 발화 타입이 검색 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 검색 응답을 생성하고, 상기 사용자 음성의 발화 타입이 채팅 발화 타입이라고 판단된 경우, 상기 사용자 음성에 대한 채팅 응답을 생성하며,
    상기 전송부는,
    상기 사용자 음성에 대한 검색 응답 및 채팅 응답 중 생성된 하나를 상기 사용자 단말로 전송하는 것을 특징으로 하는 대화형 서버.
  13. 제9항에 있어서,
    상기 응답 생성부는,
    상기 사용자 음성에 대한 검색 응답을 생성하는 검색 응답 생성부;
    상기 사용자 음성에 대한 채팅 응답을 생성하는 채팅 응답 생성부;
    상기 검색 응답 및 채팅 응답의 문장 유형 및 공통적인 정보 포함 여부를 판단하여 상기 검색 응답 및 채팅 응답의 결합이 가능한지 여부를 판단하는 결합 판단부;
    상기 검색 응답 및 채팅 응답의 결합이 가능한 경우, 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단하는 결합 순서 판단부;
    상기 검색 응답 및 채팅 응답을 결합하기 위하여, 상기 검색 응답 및 채팅 응답 중 적어도 하나를 수정하는 응답 수정부; 및
    상기 수정된 검색 응답 및 채팅 응답을 상기 판단된 결합 순서에 따라 결합하는 응답 결합부;를 포함하는 대화형 서버.
  14. 제13항에 있어서,
    상기 전송부는,
    상기 결합 판단부에 의해 상기 검색 응답 및 채팅 응답의 결합이 불가능한 것으로 판단된 경우, 상기 검색 응답 및 상기 채팅 응답 중 하나를 전송하는 것을 특징으로 하는 대화형 서버.
  15. 제13항에 있어서,
    상기 결합 순서 판단부는,
    상기 사용자 음성이 채팅 발화 타입에 해당할 확률 및 상기 사용자 음성이 검색 발화 타입에 해당할 확률의 크기를 비교하여 상기 검색 응답 및 채팅 응답의 결합의 순서를 판단하는 것을 특징으로 하는 대화형 서버.
  16. 제13항에 있어서,
    상기 응답 수정부는,
    상기 검색 응답 및 채팅 응답 중 적어도 하나에 대한 문장의 어미를 수정하는 것을 특징으로 하는 대화형 서버.
  17. 대화형 서버의 제어 방법에 있어서,
    사용자 음성을 입력받는 단계;
    상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하는 단계;
    상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 획득하는 단계;
    상기 획득된 차이값에 기초하여 상기 사용자 음성의 발화 타입을 판단하는 단계;
    상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 단계; 및
    상기 생성된 통합 응답을 사용자 단말로 전송하는 단계;를 포함하는 제어 방법.
  18. 대화형 서버에 있어서,
    사용자 단말로부터 사용자 음성을 입력받는 입력부;
    상기 사용자 음성에 대한 검색 응답 및 채팅 응답을 생성하는 응답 생성부;
    상기 사용자 음성이 검색 발화 타입에 해당할 확률과 상기 사용자 음성이 채팅 발화 타입에 해당할 확률의 차이값을 획득하고, 상기 획득된 차이값에 기초하여 상기 사용자 음성의 발화 타입을 판단하는 판단부;
    상기 사용자 음성의 발화 타입이 통합 발화 타입이라고 판단된 경우, 상기 생성된 검색 응답 및 채팅 응답을 결합하여 통합 응답을 생성하는 통합 응답 생성부; 및
    상기 생성된 통합 응답을 사용자 단말로 전송하는 전송부;를 포함하는 대화형 서버.
KR1020140018240A 2014-02-18 2014-02-18 대화형 서버 및 이의 제어 방법 KR102193559B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020140018240A KR102193559B1 (ko) 2014-02-18 2014-02-18 대화형 서버 및 이의 제어 방법
US14/590,630 US9837082B2 (en) 2014-02-18 2015-01-06 Interactive server and method for controlling the server
CN201580006257.0A CN105940394B (zh) 2014-02-18 2015-02-12 交互服务器及用于控制服务器的方法
PCT/KR2015/001420 WO2015126097A1 (en) 2014-02-18 2015-02-12 Interactive server and method for controlling the server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140018240A KR102193559B1 (ko) 2014-02-18 2014-02-18 대화형 서버 및 이의 제어 방법

Publications (2)

Publication Number Publication Date
KR20150097872A KR20150097872A (ko) 2015-08-27
KR102193559B1 true KR102193559B1 (ko) 2020-12-22

Family

ID=53798633

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140018240A KR102193559B1 (ko) 2014-02-18 2014-02-18 대화형 서버 및 이의 제어 방법

Country Status (4)

Country Link
US (1) US9837082B2 (ko)
KR (1) KR102193559B1 (ko)
CN (1) CN105940394B (ko)
WO (1) WO2015126097A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101881744B1 (ko) * 2017-12-18 2018-07-25 주식회사 머니브레인 대화형 ai 에이전트 시스템을 위한 계층적 대화 흐름 관리 모델을 자동으로 구축 또는 갱신하는 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체
KR101924215B1 (ko) * 2018-01-18 2018-11-30 주식회사 머니브레인 소정의 목표를 갖는 대화 이해 ai 서비스 시스템을 위한 대화 템플릿의 생성 방법 및 컴퓨터 판독가능 기록 매체
CN110097880A (zh) * 2019-04-20 2019-08-06 广东小天才科技有限公司 一种基于语音识别的答题判定方法及装置
US11150923B2 (en) * 2019-09-16 2021-10-19 Samsung Electronics Co., Ltd. Electronic apparatus and method for providing manual thereof
US11468052B2 (en) * 2020-06-25 2022-10-11 Google Llc Combining parameters of multiple search queries that share a line of inquiry
CN112328776A (zh) * 2021-01-04 2021-02-05 北京百度网讯科技有限公司 对话生成方法、装置、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100049513A1 (en) 2008-08-20 2010-02-25 Aruze Corp. Automatic conversation system and conversation scenario editing device
US7873519B2 (en) 1999-11-12 2011-01-18 Phoenix Solutions, Inc. Natural language speech lattice containing semantic variants
WO2013172534A1 (ko) 2012-05-17 2013-11-21 포항공과대학교 산학협력단 대화 관리 시스템 및 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721706B1 (en) * 2000-10-30 2004-04-13 Koninklijke Philips Electronics N.V. Environment-responsive user interface/entertainment device that simulates personal interaction
CN1248193C (zh) 2001-09-27 2006-03-29 松下电器产业株式会社 会话装置、会话主机装置、会话子机装置、会话控制方法及会话控制程序
AU2003236049B2 (en) * 2002-04-11 2008-04-10 Universal Entertainment Corporation Conversation control system and conversation control method
JP2006201870A (ja) 2005-01-18 2006-08-03 Toyota Central Res & Dev Lab Inc 対話処理装置
KR100772660B1 (ko) 2006-04-14 2007-11-01 학교법인 포항공과대학교 대화 관리 장치 및 그를 위한 대화 예제 기반의 대화모델링기법을 통한 대화 관리 방법
KR100807307B1 (ko) 2006-07-10 2008-02-28 한국전자통신연구원 대화형 음성 인터페이스 시스템 및 그 응답 방법
US8073681B2 (en) * 2006-10-16 2011-12-06 Voicebox Technologies, Inc. System and method for a cooperative conversational voice user interface
JP5045486B2 (ja) 2008-02-19 2012-10-10 トヨタ自動車株式会社 対話装置及びプログラム
KR20110072847A (ko) 2009-12-23 2011-06-29 삼성전자주식회사 열려진 사용자 의도 처리를 위한 대화관리 시스템 및 방법
US10276170B2 (en) * 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8892419B2 (en) * 2012-04-10 2014-11-18 Artificial Solutions Iberia SL System and methods for semiautomatic generation and tuning of natural language interaction applications
KR102056461B1 (ko) * 2012-06-15 2019-12-16 삼성전자주식회사 디스플레이 장치 및 디스플레이 장치의 제어 방법
US9875494B2 (en) * 2013-04-16 2018-01-23 Sri International Using intents to analyze and personalize a user's dialog experience with a virtual personal assistant
US9805718B2 (en) * 2013-04-19 2017-10-31 Sri Internaitonal Clarifying natural language input using targeted questions
US9514748B2 (en) * 2014-01-15 2016-12-06 Microsoft Technology Licensing, Llc Digital personal assistant interaction with impersonations and rich multimedia in responses

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7873519B2 (en) 1999-11-12 2011-01-18 Phoenix Solutions, Inc. Natural language speech lattice containing semantic variants
US20100049513A1 (en) 2008-08-20 2010-02-25 Aruze Corp. Automatic conversation system and conversation scenario editing device
WO2013172534A1 (ko) 2012-05-17 2013-11-21 포항공과대학교 산학협력단 대화 관리 시스템 및 방법

Also Published As

Publication number Publication date
CN105940394B (zh) 2019-07-26
CN105940394A (zh) 2016-09-14
US20150235643A1 (en) 2015-08-20
KR20150097872A (ko) 2015-08-27
US9837082B2 (en) 2017-12-05
WO2015126097A1 (en) 2015-08-27

Similar Documents

Publication Publication Date Title
JP6751122B2 (ja) ページ制御方法および装置
KR102193559B1 (ko) 대화형 서버 및 이의 제어 방법
US11817013B2 (en) Display apparatus and method for question and answer
US20240096345A1 (en) Electronic device providing response to voice input, and method and computer readable medium thereof
US10250538B2 (en) Detecting messages with offensive content
US9886952B2 (en) Interactive system, display apparatus, and controlling method thereof
US10891322B2 (en) Automatic conversation creator for news
US10872207B2 (en) Determining translation similarity of reverse translations for a plurality of languages
US20140242955A1 (en) Method and system for supporting a translation-based communication service and terminal supporting the service
US20160092437A1 (en) Translation method and translation system for translating input expression into expression in another language
US20170103757A1 (en) Speech interaction apparatus and method
CN105408952A (zh) 识别带口音的语音
US20200167429A1 (en) Efficient use of word embeddings for text classification
WO2020119541A1 (zh) 一种语音数据的识别方法、装置及系统
WO2014013886A1 (ja) 情報処理装置、サーバ、情報処理方法、および情報処理システム
WO2023142451A1 (zh) 工作流生成方法、装置、电子设备
US20160042736A1 (en) Method for processing dialogue based on processing instructing expression and apparatus therefor
US11056103B2 (en) Real-time utterance verification system and method thereof
JP2014215685A (ja) レコメンドサーバおよびレコメンドコンテンツ決定方法
EP3617907A1 (en) Translation device
US9870197B2 (en) Input information support apparatus, method for supporting input information, and computer-readable recording medium
CN116913278A (zh) 语音处理方法、装置、设备和存储介质
WO2019235100A1 (ja) 対話装置
JPWO2019216053A1 (ja) 対話装置
KR102717425B1 (ko) 인공 지능을 이용한 명상 제공 장치 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant