KR20140093303A - 디스플레이 장치 및 그의 제어 방법 - Google Patents

디스플레이 장치 및 그의 제어 방법 Download PDF

Info

Publication number
KR20140093303A
KR20140093303A KR1020130001752A KR20130001752A KR20140093303A KR 20140093303 A KR20140093303 A KR 20140093303A KR 1020130001752 A KR1020130001752 A KR 1020130001752A KR 20130001752 A KR20130001752 A KR 20130001752A KR 20140093303 A KR20140093303 A KR 20140093303A
Authority
KR
South Korea
Prior art keywords
user
display device
delta delta
voice
server
Prior art date
Application number
KR1020130001752A
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 KR1020130001752A priority Critical patent/KR20140093303A/ko
Priority to US14/148,956 priority patent/US20140195230A1/en
Priority to CN201480004205.5A priority patent/CN104904227A/zh
Priority to PCT/KR2014/000165 priority patent/WO2014107101A1/en
Priority to EP14735189.4A priority patent/EP2941894A4/en
Publication of KR20140093303A publication Critical patent/KR20140093303A/ko

Links

Images

Classifications

    • 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/4227Providing Remote input by a user located remotely from the client device, e.g. at work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • 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/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • 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/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • 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/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • 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/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4394Processing of audio elementary streams involving operations for analysing the audio stream, e.g. detecting features or characteristics in audio streams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

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

Abstract

디스플레이 장치가 개시된다. 본 디스플레이 장치는 출력부, 사용자의 음성을 수집하는 음성 수집부, 사용자의 음성을 제1 서버로 전송하고, 제1 서버로부터 사용자의 음성에 대응되는 텍스트 정보를 수신하는 제1 통신부, 수신된 텍스트 정보를 제2 서버로 전송하는 제2 통신부 및, 텍스트 정보에 대응되는 응답 정보가 제2 서버로부터 수신되면, 응답 정보에 기초하여 사용자의 발화 의도에 대응되는 시스템 응답을 출력하도록 출력부를 제어하는 제어부를 포함하며, 시스템 응답은, 사용자의 발화 의도가 디스플레이 장치의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 포함한다.

Description

디스플레이 장치 및 그의 제어 방법 { DISPLAY APPARATUS AND METHOD FOR CONTROLLING THE DISPLAY APPARATUS }
본 발명은 디스플레이 장치 및 그의 제어 방법에 관한 것으로, 더욱 상세하게는 사용자의 음성에 따라 제어되는 디스플레이 장치 및 그의 제어 방법에 관한 것이다.
전자 기술의 발달에 힘입어 다양한 종류의 디스플레이 장치가 개발되어 보급되고 사용자의 요구에 따라 점차 다양한 기능을 구비하게 되었다. 특히, TV의 경우, 최근에는 인터넷과 연결되어 인터넷 서비스까지 지원하고, 사용자는 TV를 통해 많은 수의 디지털 방송 채널까지 시청할 수 있게 되었다.
한편, 최근에는 디스플레이 장치를 조금 더 편리하고 직관적으로 제어하기 위하여 음성 인식을 이용한 기술이 개발되고 있다. 특히, TV의 경우, 사용자의 음성을 인식하고, 볼륨 조절 또는 채널 변경과 같이 사용자의 음성에 대응되는 기능을 수행할 수 있게 되었다.
그러나, 종래 사용자의 음성을 인식하는 디스플레이 장치들은 인식된 음성에 대응되는 기능을 제공할 뿐, 사용자와의 대화를 통해 인터랙티브한 정보를 제공하지 못하는 점에서 한계가 존재하였다.
본 발명은 상술한 필요성에 따른 것으로, 본 발명의 목적은 사용자의 발화 의도가 디스플레이 장치의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 시스템 응답으로 출력하는 디스플레이 장치 및 그의 제어 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 디스플레이 장치는 출력부, 사용자의 음성을 수집하는 음성 수집부, 상기 사용자의 음성을 제1 서버로 전송하고, 상기 제1 서버로부터 상기 사용자의 음성에 대응되는 텍스트 정보를 수신하는 제1 통신부, 상기 수신된 텍스트 정보를 제2 서버로 전송하는 제2 통신부 및, 상기 텍스트 정보에 대응되는 응답 정보가 상기 제2 서버로부터 수신되면, 상기 응답 정보에 기초하여 상기 사용자의 발화 의도에 대응되는 시스템 응답을 출력하도록 상기 출력부를 제어하는 제어부를 포함하며, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 상기 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 포함한다.
여기에서, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련된 경우, 상기 기능 수행 여부를 확인하기 위한 추가 질문을 포함할 수 있다.
또한, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련되고 상기 기능을 수행하기 전에 선행 기능 수행이 필요한 경우, 상기 선행 기능 수행과 관련된 추가 질문을 포함할 수 있다.
그리고, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 컨텐츠 검색과 관련된 경우, 상기 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 포함할 수 있다.
여기에서, 상기 시스템 응답은, 상기 컨텐츠 검색이 특정 컨텐츠의 방송 시간 문의와 관련된 경우, 상기 특정 컨텐츠의 방송 시간 검색 및 상기 특정 컨텐츠의 유사 컨텐츠에 대한 검색 중 적어도 하나와 관련된 추가 질문을 포함할 수 있다.
또한, 상기 시스템 응답은, 상기 컨텐츠 검색이 특정 컨텐츠와 관련된 인물 검색인 경우, 상기 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 포함할 수 있다.
한편, 본 발명의 일 실시 예에 따른 디스플레이 장치의 제어 방법은 사용자의 음성을 수집하는 단계, 상기 사용자의 음성을 제1 서버로 전송하고, 상기 제1 서버로부터 상기 사용자의 음성에 대응되는 텍스트 정보를 수신하는 단계, 상기 수신된 텍스트 정보를 제2 서버로 전송하는 단계 및, 상기 텍스트 정보에 대응되는 응답 정보가 상기 제2 서버로부터 수신되면, 상기 응답 정보에 기초하여 상기 사용자의 발화 의도에 대응되는 시스템 응답을 출력하는 단계를 포함하며, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 상기 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 포함할 수 있다.
여기에서, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련된 경우, 상기 기능 수행 여부를 확인하기 위한 추가 질문을 포함할 수 있다.
또한, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련되고 상기 기능을 수행하기 전에 선행 기능 수행이 필요한 경우, 상기 선행 기능 수행과 관련된 추가 질문을 포함할 수 있다.
그리고, 상기 시스템 응답은, 상기 사용자의 발화 의도가 상기 컨텐츠 검색과 관련된 경우, 상기 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 포함할 수 있다.
여기에서, 상기 시스템 응답은, 상기 컨텐츠 검색이 특정 컨텐츠의 방송 시간 문의와 관련된 경우, 상기 특정 컨텐츠의 방송 시간 검색 및 상기 특정 컨텐츠의 유사 컨텐츠에 대한 검색 중 적어도 하나와 관련된 추가 질문을 포함할 수 있다.
또한, 상기 시스템 응답은, 상기 컨텐츠 검색이 특정 컨텐츠와 관련된 인물 검색인 경우, 상기 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 포함할 수 있다.
이상과 같은 본 발명의 다양한 실시 예에 따르면, 사용자들은 추가 질문을 통해 디스플레이 장치와 연속적인 대화를 진행한다는 점에서, 사용자들은 자신의 의도에 최적화된 결과를 얻을 수 있게 된다.
도 1은 본 발명의 일 실시 예에 따른 대화형 시스템을 설명하기 위한 도면,
도 2는 본 발명의 일 실시 예에 따른 디스플레이 장치에 대한 블록도,
도 3은 도 2에 도시된 디스플레이 장치의 세부 구성을 설명하기 위한 블록도,
도 4는 도 1에 도시된 제1 서버에 대한 블록도,
도 5는 도 1에 도시된 제2 서버에 대한 블록도,
도 6 내지 도 9를 본 발명의 다양한 실시 예에 따라 디스플레이 장치에서 출력되는 시스템 응답의 일 예를 도시한 도면들, 그리고,
도 10은 본 발명의 일 실시 예에 따른 디스플레이 장치의 제어 방법을 설명하기 위한 흐름도이다.
이하에서는 첨부된 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 대화형 시스템을 설명하기 위한 도면이다. 도 1에 도시된 바와 같이, 대화형 시스템(1000)은 디스플레이 장치(100), 제1 서버(200) 및 제2 서버(300)를 포함한다.
디스플레이 장치(100)는 디스플레이 장치(100)를 제어하기 위한 리모컨(미도시)에 의해 제어될 수 있다. 구체적으로, 디스플레이 장치(100)는 리모컨(미도시)로부터 수신된 리모컨 제어 신호에 대응되는 기능을 수행할 수 있다. 예를 들어, 디스플레이 장치(100)가 도 1과 같이 TV로 구현된 경우, 디스플레이 장치(100)는 수신된 리모컨 제어 신호에 따라 전원 온/오프, 채널 전환, 볼륨 변경 등의 기능을 수행할 수 있다.
또한, 디스플레이 장치(100)는 사용자의 음성에 대응되는 다양한 동작을 수행할 수 있다.
구체적으로, 디스플레이 장치(100)는 사용자의 음성에 대응되는 기능을 수행하거나, 사용자의 음성에 대응되는 시스템 응답을 출력할 수 있다.
이를 위해, 디스플레이 장치(100)는 수집된 사용자의 음성을 제1 서버(200)로 전송한다. 제1 서버(200)는 디스플레이 장치(100)로부터 사용자의 음성이 수신되면, 수신된 사용자의 음성을 텍스트 정보(즉, 텍스트)로 변환하고 텍스트 정보를 디스플레이 장치(100)로 전송한다.
그리고, 디스플레이 장치(100)는 제1 서버(200)로부터 수신된 텍스트 정보를 제2 서버(300)로 전송한다. 제2 서버(300)는 디스플레이 장치(100)로부터 텍스트 정보가 수신되면, 수신된 텍스트 정보에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송한다.
디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여, 다양한 동작을 수행할 수 있다.
여기에서, 응답 정보는 디스플레이 장치(100)가 특정 기능을 수행하기 위한 제어 명령, 디스플레이 장치(100)에서 시스템 응답을 출력하기 위한 제어 명령 및, 디스플레이 장치(100)에서 출력되는 시스템 응답에 대한 시스템 응답 정보 중 적어도 하나를 포함할 수 있다.
구체적으로, 디스플레이 장치(100)는 사용자의 음성에 대응되는 기능을 수행할 수 있다. 즉, 디스플레이 장치(100)는 디스플레이 장치(100)에서 제공 가능한 기능 중 사용자의 음성에 대응되는 기능을 수행할 수 있다. 예를 들어, 디스플레이 장치(100)는 "○번(채널번호) 틀어줘"라는 사용자의 음성이 입력되면, 제2 서버(300)로부터 수신된 제어 명령에 기초하여 채널을 ○번을 전환할 수 있다. 이 경우, 제2 서버(300)는 디스플레이 장치(100)의 채널을 ○번으로 전환하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
또한, 디스플레이 장치(100)는 사용자의 음성에 대응되는 시스템 응답을 출력할 수 있다. 여기에서, 시스템 응답은 음성 및 UI 화면 중 적어도 하나의 형태로 출력될 수 있다.
예를 들어, 디스플레이 장치(100)는 특정 방송 프로그램의 방송 시간을 문의하는 사용자의 음성이 입력되면, 제2 서버(300)로부터 수신된 시스템 응답 정보에 기초하여 해당 방송 프로그램의 방송 시간을 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다. 이 경우, 제2 서버(300)는 디스플레이 장치(100)에서 출력되는 시스템 응답이 텍스트 형식으로 표현된 시스템 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
또는, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 제어 명령에 기초하여 해당 방송 프로그램의 방송 시간을 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다. 이 경우, 제2 서버(300)는 디스플레이 장치(100)에서 사용자가 문의한 방송 프로그램의 방송 시간을 시스템 응답으로 출력하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
한편, 디스플레이 장치(100)는 사용자의 발화 의도가 디스플레이 장치(100)의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 시스템 응답으로 출력할 수 있다. 즉, 디스플레이 장치(100)는 사용자가 의도한 기능을 실행하거나 사용자가 의도한 시스템 응답을 출력하기 위해, 사용자의 음성에 대한 시스템 응답으로 추가 질문을 출력할 수 있다.
예를 들어, 디스플레이 장치(100)는 사용자의 발화 의도가 디스플레이 장치(100)의 기능 수행과 관련된 경우를 가정한다. 이 경우, 디스플레이 장치(100)는 기능 수행 여부를 확인하거나, 해당 기능 수행을 위해 요구되는 선행 기능 수행이 필요한 경우 선행 기능 수행과 관련된 추가 질문을 시스템 응답으로 출력할 수 있다.
다른 예로, 디스플레이 장치(100)는 사용자의 발화 의도가 컨텐츠 검색과 관련된 경우, 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 시스템 응답으로 출력할 수도 있다.
그 밖에도 디스플레이 장치(100)는 다양한 추가 질문을 시스템 응답으로 출력할 수 있으며, 구체적인 실시 예에 대해서는 첨부된 도면과 함께 후술하기로 한다.
이에 따라, 사용자들은 추가 질문을 통해 디스플레이 장치(100)와 연속적인 대화를 진행한다는 점에서, 사용자들은 자신의 의도에 최적화된 결과를 얻을 수 있게 된다.
한편, 도 1에서 디스플레이 장치(100)는 TV인 것으로 도시하였지만, 이는 일 예에 불과하다. 즉, 디스플레이 장치(100)는 TV뿐만 아니라, 스마트폰과 같은 휴대폰, 데스크탑 PC, 노트북, 네비게이션 등과 같은 다양한 전자 장치로 구현될 수 있다.
또한, 도 1에서 제1 서버(200) 및 제2 서버(300)가 별도의 서버로 구현되는 것으로 도시하였으나 이 역시 일 예에 불과하다. 즉, 제1 서버(200)와 제2 서버(300)를 포함하는 하나의 대화형 서버로 구현될 수 있음은 물론이다.
도 2는 본 발명의 일 실시 예에 따른 디스플레이 장치에 대한 블록도를 도시한다. 도 2에 도시된 바와 같이, 디스플레이 장치(100)는 출력부(110), 음성 수집부(120), 제1 통신부(130), 제2 통신부(140) 및 제어부(150)를 포함한다.
출력부(110)는 음성 및 영상 중 적어도 하나를 출력한다. 구체적으로, 출력부(110)는 음성 수집부(120)를 통해 수집된 사용자의 음성에 대응되는 시스템 응답을 음성 및 그래픽 UI 중 적어도 하나의 형태로 출력할 수 있다.
이를 위해, 출력부(110)는 디스플레이부(미도시) 및 오디오 출력부(미도시)를 구비할 수 있다.
구체적으로, 디스플레이부(미도시)는 디스플레이 장치(100)를 통해 제공 가능한 다양한 영상을 제공할 수 있다. 특히, 디스플레이부(미도시)는 사용자의 음성에 대응되는 시스템 응답을 텍스트, 이미지, 아이콘, GUI 중 적어도 하나를 포함하는 UI 화면을 구성하여 디스플레이할 수 있다. 한편, 디스플레이부(미도시)는 액정 표시 장치(Liquid Crystal Display, LCD), 유기 전기 발광 다이오드(Organic Light Emitting Display, OLED) 또는 플라즈마 표시 패널(Plasma Display Panel, PDP) 등으로 구현될 수 있다.
오디오 출력부(미도시)는 사용자의 음성에 대응되는 시스템 응답을 음성 형태로 출력할 수 있다. 오디오 출력부(미도시)는 잭 등과 같은 출력 포트 또는 스피커 등으로 구현될 수 있다.
또한, 출력부(110)는 다양한 컨텐츠를 출력할 수 있다. 여기에서, 컨텐츠는 방송 컨텐츠, VOD 컨텐츠, DVD 컨텐츠 등을 포함할 수 있다. 구체적으로, 디스플레이부(미도시)는 컨텐츠를 구성하는 영상을 출력하고, 오디오 출력부(미도시)는 컨텐츠를 구성하는 오디오를 출력할 수 있다.
음성 수집부(120)는 사용자의 음성을 수집한다. 예를 들어, 음성 수집부(120)는 사용자의 음성을 수집하기 위한 마이크로 구현되어, 디스플레이 장치(100)에 내장되어 일체형을 이루거나, 디스플레이 장치(100)와 분리된 형태로 구현될 수 있다. 분리된 형태로 구현되는 경우, 음성 수집부(120)는 사용자가 손으로 쥐는 형태, 또는 식탁이나 테이블에 놓일 수 있는 형태로 구현될 수 있으며, 디스플레이 장치(100)와 유선 또는 무선 네트워크를 통하여 연결되어, 수집된 사용자의 음성을 디스플레이 장치(100)로 전송할 수 있다.
한편, 음성 수집부(120)는 수집된 음성이 사용자의 음성인지를 판단하고, 사용자의 음성에서 노이즈(예를 들어, 에어컨 소리, 청소기 소리, 음악 소리 등)를 필터링할 수도 있다.
예를 들어, 음성 수집부(120)는 아날로그 형태의 사용자 음성이 입력되면, 이를 샘플링하여 디지털 신호로 변환한다. 그리고, 음성 수집부(120)는 변환된 디지털 신호의 에너지를 계산하여, 디지털 신호의 에너지가 기설정된 값 이상인지 여부를 판단한다.
디지털 신호의 에너지가 기설정된 값 이상인 경우, 음성 수집부(120)는 디지털 신호에서 노이즈 성분을 제거하여 제1 통신부(130)로 전달한다. 이때, 노이즈 성분은 가정 환경에서 발생할 수 있는 돌발성 잡음으로써, 에어컨 소리, 청소기 소리, 음악 소리 등이 포함될 수 있다. 한편, 디지털 신호의 에너지가 기설정된 값 미만인 경우, 음성 수집부(120)는 디지털 신호에 별다른 처리 과정을 수행하지 않고, 다른 입력을 기다린다.
이에 따라, 사용자의 음성이 아닌 다른 소리에 의해 전체 오디오 처리 과정이 활성화되지 않아, 불필요한 전력 소모를 방지할 수 있다.
제1 통신부(130)는 제1 서버(도 1의 200)와 통신을 수행한다. 구체적으로, 제1 통신부(130)는 사용자의 음성을 제1 서버(200)로 전송하고, 사용자의 음성에 대응되는 텍스트 정보를 제1 서버(200)로부터 수신할 수 있다.
제2 통신부(140)는 제2 서버(도 1의 300)와 통신을 수행한다. 구체적으로, 제2 통신부(140)는 수신된 텍스트 정보를 제2 서버(300)로 전송하고, 텍스트 정보에 대응되는 응답 정보를 제2 서버(300)로부터 수신할 수 있다.
이를 위해, 제1 통신부(130) 및 제2 통신부(140)는 다양한 통신 방식을 이용하여 제1 서버(200) 및 제2 서버(300)와 통신을 수행할 수 있다.
예를 들어, 제1 통신부(130) 및 제2 통신부(140)는 유/무선 LAN(Local Area Network), WAN, 이더넷, 블루투스(Bluetooth), 지그비(Zigbee), USB(Universal Serial Bus), IEEE 1394, 와이파이(Wifi) 등을 이용하여, 제1 서버(200) 및 제2 서버(300)와 통신을 수행할 수 있다. 이를 위해, 제1 통신부(130) 및 제2 통신부(140)는 각 통신 방식에 대응되는 칩 또는 입력 포트 등을 구비할 수 있다. 예를 들어, 유선 LAN 방식으로 통신을 수행하는 경우, 제1 통신부(130) 및 제2 통신부(140)는 유선 LAN 카드(미도시) 및 입력 포트(미도시)를 구비할 수 있다.
한편, 상술한 실시 예에서는, 디스플레이 장치(100)가 제1 서버(200) 및 제2 서버(300)와 통신을 수행하기 위해, 별도의 통신부(130, 140)를 구비하는 것으로 설명하였으나 이는 일 예에 불과하다. 즉, 디스플레이 장치(100)는 하나의 통신 모듈을 통해 제1 서버(200) 및 제2 서버(300)와 통신을 할 수 있음은 물론이다.
또한, 상술한 실시 예에서는, 제1 통신부(130) 및 제2 통신부(140)는 제1 서버(200) 및 제2 서버(300)와 통신을 수행하는 것으로 설명하였으나, 이는 일 예에 불과하다. 즉, 제1 통신부(130) 및 제2 통신부(140)는 웹 서버(미도시)에 연결되어 웹 브라우징을 수행할 수도 있으며, VOD 서비스를 제공하는 컨텐츠 프로바이더 서버에 연결되어, VOD 컨텐츠를 검색할 수도 있다.
제어부(150)는 디스플레이 장치(100)의 전반적인 동작을 제어한다. 즉, 제어부(150)는 출력부(110), 음성 수집부(120), 제1 통신부(130) 및 제2 통신부(140)의 동작을 제어할 수 있다. 제어부(150)는 CPU(central processing unit) 및 디스플레이 장치(100)를 제어하기 위한 모듈 및 데이터를 저장하는 ROM(Read Only Memory) 및 RAM(Random Access Memory)을 포함할 수 있다.
구체적으로, 제어부(150)는 음성 수집부(120)를 통해 사용자의 음성을 수집하고, 수집된 사용자의 음성을 제1 서버(300)로 전송하도록 제1 통신부(130)를 제어할 수 있다. 그리고, 제어부(150)는 사용자의 음성에 대응되는 텍스트 정보가 제1 서버(200)로부터 수신되면, 수신된 텍스트 정보를 제2 서버(300)로 전송하도록 제2 통신부(140)를 제어할 수 있다.
또한, 제어부(150)는 텍스트 정보에 대응되는 응답 정보가 상기 제2 서버로부터 수신되면, 응답 정보에 기초하여 다양한 동작을 수행할 수 있다.
구체적으로, 제어부(150)는 응답 정보에 기초하여 사용자의 발화 의도에 대응되는 기능을 수행할 수 있다.
여기에서, 응답 정보는 디스플레이 장치(100)의 기능을 제어하기 위한 제어 명령을 포함할 수 있다. 구체적으로, 제어 명령은 디스플레이 장치(100)에서 실행 가능한 기능들 중 사용자의 음성에 대응되는 기능을 실행하기 위한 명령을 포함할 수 있다. 이에 따라, 제어부(150)는 제2 서버(300)로부터 수신된 제어 명령에 기초하여, 사용자의 음성에 대응되는 기능이 실행되도록 디스플레이 장치(100)의 각 구성요소를 제어할 수 있다.
예를 들어, TV로 구현된 디스플레이 장치(100)가 "○번(채널 번호) 틀어줘"라는 사용자의 음성을 수집하면, 제2 서버(300)는 "○번(채널 번호) 틀어줘"의 발화 의도는 ○번(채널 번호)으로 채널 변경을 요청하는 것으로 판단하고, 판단된 발화 의도에 따라 ○번(채널 번호)으로 채널 변경을 변경하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 제어부(150)는 수신된 제어 명령에 기초하여 ○번(채널 번호)을 채널을 변경하고 변경된 채널을 통해 제공되는 컨텐츠를 출력하도록 제어할 수 있다.
다만, 이는 일 예일 뿐, 제어부(150)는 수집된 사용자의 음성에 따라 전원 온/오프, 볼륨 조절 등 다양한 동작이 수행되도록 디스플레이 장치(100)의 각 구성요소를 제어할 수도 있음은 물론이다.
또한, 제어부(150)는 응답 정보에 기초하여 사용자의 발화 의도에 대응되는 시스템 응답을 출력하도록 제어할 수 있다.
여기에서, 응답 정보는 디스플레이 장치(100)에서 사용자의 음성에 대응되는 시스템 응답을 출력하기 위한 시스템 응답 정보를 포함할 수 있다. 이 경우, 응답 정보는 디스플레이 장치(100)에서 사용자의 음성에 대응되는 시스템 응답을 출력하기 위한 제어 명령을 더 포함할 수 있다.
구체적으로, 시스템 응답 정보는 사용자의 음성에 대해 디스플레이 장치(100)에서 출력되는 시스템 응답이 텍스트 형식으로 표현된 것일 수 있다.
이에 따라, 제어부(150)는 수신된 시스템 응답 정보를 이용하여, 사용자의 음성에 대응되는 시스템 응답을 출력하도록 출력부(110)를 제어할 수 있다.
예를 들어, 제어부(150)는 수신된 시스템 응답 정보를 구성하는 텍스트가 포함되도록 UI 화면을 구성하여 디스플레이부(미도시)를 통해 출력할 수 있다. 또한, 제어부(150)는 TTS(Text to Speech) 엔진을 이용하여, 텍스트 형식의 시스템 응답 정보를 음성으로 변환하여 오디오 출력부(미도시)를 통해 출력할 수 있다. TTS 엔진은 텍스트를 음성으로 변환하기 위한 모듈로서, 제어부(150)는 종래 개시되어 있는 다양한 TTS 알고리즘을 이용하여 텍스트 형식의 시스템 응답 정보를 음성으로 변환할 수 있다.
예를 들어, TV로 구현된 디스플레이 장치(100)가 "○○○(방송 프로그램 명칭)은 언제 해?"라는 사용자의 음성을 수집하면, 제2 서버(300)는 "○○○(방송 프로그램 명칭)은 언제 해?"의 발화 의도는 ○○○(방송 프로그램 명칭)에 대한 방송 시간을 문의하는 것으로 판단하고, 판단된 발화 의도에 기초하여 "문의하신 ○○○(방송 프로그램 명칭)의 방송 시간은 ○시(방송 시간)입니다"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다.
이 경우, 제어부(150)는 텍스트 형식으로 표현된 "문의하신 ○○○(방송 프로그램 명칭)의 방송 시간은 ○시입니다"를 음성으로 변환하여 오디오 출력부(미도시)를 통해 출력하거나, "문의하신 ○○○(방송 프로그램 명칭)의 방송 시간은 ○시(방송 시간)입니다"라는 텍스트가 포함되도록 UI 화면을 구성하여 디스플레이부(미도시)를 통해 출력할 수 있다.
상술한 바와 같이, 제어부(150)는 사용자의 음성에 대응되는 기능을 실행하거나, 사용자의 음성에 대응되는 시스템 응답을 출력하도록 제어할 수 있다.
한편, 디스플레이 장치(100)에서 별도의 기능을 실행함이 없이 사용자의 음성에 대응되는 시스템 응답을 출력하는 경우는, 사용자의 음성이 디스플레이 장치(100)에서 실행될 수 없는 기능을 실행시키고자 하는 경우를 더 포함할 수 있다.
예를 들어, 디스플레이 장치(100)가 화상통화 기능을 지원하지 않는 TV로 구현된 경우를 가정한다. 이 경우, 디스플레이 장치(100)에서 "XXX에게 전화 걸어줘"라는 사용자의 음성을 수집하면, 제2 서버(300)는 화상통화 수행을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 하지만, 디스플레이 장치(100)에서는 해당 제어 명령에 대응되는 기능이 지원되지 않는다는 점에서, 제어부(150)는 제2 서버(300)로부터 수신된 제어 명령을 인식할 수 없게 된다. 이 경우, 제어부(150)는 "지원되지 않는 기능입니다"라는 시스템 응답을 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
한편, 상술한 실시 예에서, 제2 서버(300)는 디스플레이 장치(100)에서 시스템 응답을 출력하기 위해, 텍스트 형식의 시스템 응답 정보를 디스플레이 장치(100)로 전송하는 것으로 설명하였으나, 이는 일 예에 불과하다.
즉, 제2 서버(300)는 디스플레이 장치(100)에서 출력되는 시스템 응답을 구성하는 음성 데이터 자체 또는, 해당 시스템 응답을 구성하는 음성 데이터의 일부를 디스플레이 장치(100)로 전송할 수 있다. 또한, 제2 서버(300)는 디스플레이 장치(100)에서 기저장된 데이터를 이용하여 시스템 응답을 출력하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수도 있다.
이에 따라, 제어부(150)는 제2 서버(300)로부터 수신되는 응답 정보의 형태를 고려하여, 시스템 응답을 출력하도록 제어할 수 있다.
구체적으로, 제어부(150)는 시스템 응답을 구성하는 음성 데이터 자체 또는, 음성 데이터의 일부가 수신되면, 해당 데이터를 출력부(110)에서 출력가능한 형태로 처리하여 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
또한, 제어부(150)는 디스플레이 장치(100)에서 기저장된 데이터를 이용하여 시스템 응답을 출력하기 위한 제어 명령을 디스플레이 장치(100)에 기저장된 데이터들 중에서 제어 명령에 매칭되는 데이터를 검색하고, 검색된 데이터를 음성 또는 UI 화면 중 적어도 하나의 형태로 처리하여 출력할 수 있다. 이를 위해, 디스플레이 장치(100)는 시스템 응답을 제공하기 위한 및 UI 화면과 관련된 데이터를 저장하고 있을 수 있다.
예를 들어, 디스플레이 장치(100)는 "지원되지 않는 기능입니다"와 같이 완전한 문장 형태의 데이터를 저장하고 있을 수 있다.
또는, 디스플레이 장치(100)는 "문의하신 <방송 프로그램 명칭>의 방송 시간은 <방송 시간>입니다"와 같이 시스템 응답을 구성하는 일부 데이터를 저장하고 있을 수 있다. 이 경우, 시스템 응답을 완성시키기 위한 정보는 제2 서버(300)로부터 수신될 수 있다. 예를 들어, 제어부(150)는 제2 서버(300)로부터 수신된 방송 프로그램 명칭 또는 채널 번호 등을 이용하여 시스템 응답을 완성한 후, "문의하신 ○○○(방송 프로그램 명칭)의 방송 시간은 ○시(방송 시간)입니다"와 같은 시스템 응답을 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
한편, 제어부(150)는 사용자의 발화 의도가 디스플레이 장치(100)의 기능 수행 및 컨텐츠 검색과 관련되는 경우, 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 시스템 응답으로 출력할 수 있다. 이 경우에도, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보를 이용할 수 있다.
이와 관련된 구체적인 설명은 도 6 내지 도 ??를 참조하여 후술하기로 한다.
도 3은 도 2에 도시된 디스플레이 장치의 세부 구성을 설명하기 위한 블록도이다. 도 3에 따르면, 디스플레이 장치(100)는 도 2에 도시된 구성요소 외에 저장부(160), 수신부(170), 신호 처리부(180), 리모컨 신호 수신부(191), 입력부(193) 및 인터페이스부(195)를 더 포함할 수 있다. 이들 각 구성요소는 제어부(150)에 의해 제어될 수 있다. 한편, 도 3에 도시된 구성요소들 중 도 2에 도시된 구성요소와 중복되는 구성요소들은 그 기능이 동일하므로 자세한 설명은 생략하도록 한다.
저장부(160)는 디스플레이 장치(100)를 동작시키기 위해 필요한 각종 프로그램 등이 저장되는 저장매체로서, 메모리, HDD(Hard Disk Drive) 등으로 구현가능하다. 예를 들어, 저장부(160)는 제어부(150)의 동작 수행을 위한 프로그램을 저장하기 위한 ROM, 제어부(150)의 동작 수행에 따른 데이터를 일시적으로 저장하기 위한 RAM 등을 구비할 수 있다. 또한 각종 참조 데이터를 저장하기 위한 EEROM(Electrically Erasable and Programmable ROM) 등을 더 구비할 수 있다.
수신부(170)는 다양한 컨텐츠를 수신한다. 구체적으로, 수신부(170)는 방송 네트워크를 이용하여 방송 프로그램을 전송하는 방송국 또는 인터넷을 이용하여 컨텐츠 파일을 전송하는 웹 서버로부터 컨텐츠를 수신할 수 있다.
방송국으로부터 컨텐츠를 수신하는 실시 예의 경우에는, 수신부(170)는 튜너(미도시), 복조기(미도시), 등화기(미도시) 등과 같은 구성을 포함하는 형태로 구현될 수 있다. 반면, 웹 서버와 같은 소스로부터 컨텐츠를 수신하는 실시 예의 경우에는, 수신부(170)는 네트워크 인터페이스 카드(미도시)로 구현될 수 있다.
이와 같이, 수신부(170)는 실시 예에 따라 다양한 형태로 구현될 수 있다.
신호 처리부(180)는 수신부(170) 또는 인터페이스부(195)를 통해 수신된 컨텐츠가 출력부(110)를 통해 출력될 수 있도록 컨텐츠에 대한 신호처리를 수행한다.
구체적으로, 신호 처리부(180)는 컨텐츠를 구성하는 영상에 대해 디코딩, 스케일링 및 프레임 레이트 변환 등의 동작을 수행하여, 디스플레이부(111)에서 출력 가능한 형태로 변환할 수 있다. 또한, 신호 처리부(180)는 컨텐츠를 구성하는 오디오에 대해 디코딩 등의 신호 처리를 수행하여 오디오 출력부(112)에서 출력 가능한 형태로 변환할 수 있다.
리모컨 신호 수신부(191)는 외부의 리모컨으로부터 입력되는 리모컨 제어 신호를 수신한다. 제어부(150)는 리모컨 신호 수신부(191)에 입력된 리모컨 제어 신호에 기초하여, 다양한 기능을 실행할 수 있다. 예를 들어, 제어부(150)는 리모컨 신호 수신부(191)로부터 입력된 제어 신호에 따라, 전원 온/오프, 채널 변경, 볼륨 조절 등의 기능을 실행할 수 있다.
입력부(193)는 다양한 사용자 명령을 입력받는다. 제어부(150)는 입력부(193)에서 입력된 사용자 명령에 대응되는 기능을 실행할 수 있다. 예를 들어, 제어부(150)는 입력부(193)에서 입력된 사용자 명령에 따라 전원 온/오프, 채널 변경, 볼륨 조절 등을 실행할 수 있다.
이를 위해, 입력부(193)는 입력 패널로 구현될 수 있다. 입력 패널은 터치패드(Touch Pad) 혹은 각종 기능키, 숫자키, 특수키, 문자키 등을 구비한 키패드(Key Pad) 또는 터치 스크린(Touch Screen) 방식으로 이루어질 수 있다.
인터페이스부(195)는 외부 장치(미도시)와 통신을 수행한다. 여기에서, 외부 기기(미도시)는 다양한 유형의 전자 장치로 구현되어, 디스플레이 장치(100)로 컨텐츠를 전송할 수 있다.
가령, 디스플레이 장치(100)가 TV로 구현된 경우, 외부 장치(미도시)는 셋탑박스, 음향 기기, 게임기, DVD 플레이어, 블루레이 디스크 플레이어 등과 같이 디스플레이 장치(100)에 연결되어 기능을 수행할 수 있는 다양한 형태의 전자 장치로 구현될 수 있다.
예를 들어, 인터페이스부(195)는 HDMI, USB 등의 각종 유선 통신 방식, 블루투스, 지그비 등의 무선 통신 방식에 따라 외부 기기(미도시)와 통신을 수행할 수 있다. 이를 위해, 인터페이스부(195)는 각 통신 방식에 대응되는 칩 또는 입력 포트 등을 구비할 수 있다. 예를 들어, HDMI 통신 방식에 따라 외부 기기(미도시)와 통신을 수행하는 경우, 인터페이스부(195)는 HDMI 포트를 구비할 수 있다.
한편, 제어부(150)는 사용자 선호도 정보를 저장부(160)에 저장할 수 있다. 여기에서, 사용자 선호도 정보는 사용자가 자주 시청하는 방송 프로그램에 대한 정보를 포함할 수 있다.
구체적으로, 제어부(150)는 전원 온 및 채널 전환 명령이 입력될 때마다, EPG 정보에 기초하여 수신부(170)를 통해 선국된 채널에서 제공되는 방송 프로그램을 판단하고, 전원 온 및 채널 전환 명령이 입력된 시간, 판단된 방송 프로그램의 타이틀, 장르, 해당 방송 프로그램을 제공하는 채널 번호, 채널 명 중 적어도 하나에 대한 정보를 저장부(160)에 저장할 수 있다.
그리고, 제어부(150)는 저장된 정보를 분석하여, 기설정된 횟수이상 시청한 컨텐츠를 사용자가 자주 시청하는 방송 프로그램으로 판단할 수 있다. 그리고, 제어부(150)는 사용자가 자주 시청하는 방송 프로그램에 대한 정보를 저장부(160)에 저장하거나, 제2 서버(300)로 전송하도록 제2 통신부(140)를 제어할 수 있다.
한편, 도 3에서는 디스플레이 장치(100)에 포함될 수 있는 다양한 구성요소에 대하여 도시하였으나, 디스플레이 장치(100)가 반드시 전체 구성요소들을 포함하여야 하는 것은 아니며, 이들 구성요소만을 가지는 것으로 한정되는 것도 아니다. 즉, 디스플레이 장치(100)의 제품 종류에 따라 구성요소들 일부가 생략되거나 추가될 수 있고, 또는, 타 구성요소들로 대체될 수도 있음은 물론이다.
도 4는 도 1에 도시된 제1 서버에 대한 블록도이다. 도 4에 도시된 바와 같이, 제1 서버(200)는 통신부(210) 및 제어부(220)를 포함한다.
통신부(210)는 디스플레이 장치(100)와 통신을 수행한다. 구체적으로, 통신부(210)는 디스플레이 장치(100)로부터 사용자의 음성을 수신하고, 사용자의 음성에 대응되는 텍스트 정보를 디스플레이 장치(100)로 전송할 수 있다. 이를 위해, 통신부(210)는 다양한 통신 모듈을 포함할 수 있다.
제어부(220)는 제1 서버(200)의 전반적인 동작을 제어한다. 특히, 제어부(220)는 디스플레이 장치(100)로부터 사용자의 음성이 수신되면, 사용자의 음성에 대응되는 텍스트 정보를 생성하고, 이를 디스플레이 장치(100)로 전송하도록 통신부(210)를 제어한다.
구체적으로, 제어부(220)는 STT(Speech to Text) 엔진을 이용하여, 사용자의 음성에 대응되는 텍스트 정보를 생성할 수 있다. 여기에서, STT 엔진은 음성 신호를 텍스트로 변환하기 위한 모듈로서, 종래 개시되어 있는 다양한 STT 알고리즘을 이용하여 음성 신호를 텍스트로 변환할 수 있다.
예를 들어, 제어부(220)는 수신된 사용자의 음성 내에서 사용자가 발화한 음성의 시작과 끝을 검출하여 음성 구간을 판단한다. 구체적으로, 제어부(220)는 수신된 음성 신호의 에너지를 계산하고, 계산된 에너지에 따라 음성 신호의 에너지 레벨을 분류하여, 동적 프로그래밍을 통해 음성 구간을 검출할 수 있다. 그리고, 제어부(220)은 검출된 음성 구간 내에서 음향 모델(Acoustic Model)을 기초로 음성의 최소 단위인 음소를 검출하여 음소 데이터를 생성하고, 생성된 음소 데이터에 HMM(Hidden Markov Model) 확률 모델을 적용하여 사용자의 음성을 텍스트로 변환할 수 있다.
도 5는 도 1에 도시된 제2 서버에 대한 블록도이다. 도 5에 도시된 바와 같이, 제2 서버(300)는 통신부(310), 저장부(320) 및 제어부(330)를 포함한다.
통신부(310)는 디스플레이 장치(100)와 통신을 수행한다. 구체적으로, 통신부(310)는 디스플레이 장치(100)로부터 텍스트 정보를 수신하고, 텍스트 정보에 대응되는 응답 정보를 디스플레이 장치(100)로 전송할 수 있다. 이를 위해, 통신부(310)는 다양한 통신 모듈을 포함할 수 있다.
저장부(320)는 디스플레이 장치(100)로부터 수신된 텍스트 정보에 대응되는 응답 정보를 생성하기 위한 다양한 정보를 저장한다.
구체적으로, 저장부(320)는 서비스 도메인별 대화 패턴을 저장한다. 여기에서, 서비스 도메인은 사용자가 발화한 음성이 속하는 주제에 따라 "방송", "VOD", "기기 제어", "어플 관리", "정보(날씨, 주식, 뉴스 등) 제공" 등으로 구분될 수 있다. 하지만, 이는 일 예일 뿐, 서비스 도메인은 상술한 주제 외에도 다양한 주제에 따라 구분될 수 있고, 상술한 주제들은 서로 통합될 수도 있다. 예를 들어, 방송 컨텐츠에 대한 방송 서비스 도메인과 기기 제어 도메인은 하나의 도메인을 구성할 수도 있다.
보다 구체적으로, 저장부(320)는 각 서비스 도메인별 말뭉치(corpus) 데이터베이스를 구비할 수 있다. 여기에서, 말뭉치 데이터베이스는 예문 및 그에 대한 답변을 저장하는 형태로 구현될 수 있다.
즉, 저장부(320)는 각 서비스 도메인별로 복수의 예문 및 각 예문에 대한 답변을 저장할 수 있다. 또한, 저장부(320)는 예문을 해석하기 위한 정보 및 예문에 대응되는 답변을 각 예문마다 태깅(tagging)하여 저장할 수 있다.
예를 들어, 방송 서비스 도메인 내에 "○○○(방송 프로그램명)은 언제 해?"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"와 같은 예문에서 "○○○(방송 프로그램명)"은 방송 프로그램을 나타내며, "언제"는 방송 시간 문의를 나타내며, "해?"는 예문의 타입이 의문문인 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "~은 언제 해?"라는 형식을 갖는 예문의 앞부분에는 방송 프로그램과 관련된 단어가 배치된다는 정보를 해당 예문에 태깅하여 저장할 수 있다. 여기에서, 방송 프로그램과 관련된 단어는 방송 프로그램명, 출연자, 연출자 등이 포함될 수 있다.
또한, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"에 대한 답변을 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○○○(방송 프로그램명)은 언제 해?"에 대한 답변으로 "문의하신 <방송 프로그램 명>의 방송 시간은 <방송 시간> 입니다”를 태깅하여 저장할 수 있다.
다른 예로, 기기 제어 서비스 도메인 내에 "○번(채널 번호) 틀어줘"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "○번(채널 번호) 틀어줘"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "○번(채널 번호) 틀어줘"와 같은 예문에서 "○번(채널 번호)"은 채널 번호를 나타내며, "틀어"는 채널 선국 명령을 나타내며, "줘"는 예문의 타입이 요청문인 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다. 또한, 저장부(320)는 "~ 틀어줘"라는 형식을 갖는 예문의 앞부분에는 방송 프로그램과 관련된 단어가 배치된다는 정보를 해당 예문에 태깅하여 저장할 수 있다. 여기에서, 방송 프로그램과 관련된 단어는 채널 번호, 채널 명, 방송 프로그램 명칭, 출연자, 제작자 등이 될 수 있다.
또 다른 예로, 저장부(320)는 각 서비스 도메인 내에서 "예", "그래", "아니요", "싫어" 등과 같은 예문을 저장할 수 있다. 이 경우, 저장부(320)는 각 예문에 해당 예문을 해석하기 위한 정보를 각 예문에 태깅하여 저장할 수 있다.
구체적으로, 저장부(320)는 "예", "그래" 등과 같은 예문은 긍정의 의미를 나타내며, "아니요", "싫어" 등과 같은 예문은 부정의 의미를 나타내는 정보를 태깅하여 저장할 수 있다.
또한, 저장부(320)는 디스플레이 장치(100)를 제어하기 위한 제어 명령을 각 예문에 태깅하여 저장할 수 있다. 특히, 저장부(320)는 디스플레이 장치(100)를 제어하기 위한 사용자의 음성에 대응되는 예문에 디스플레이 장치(100)를 제어하기 위한 제어 명령을 태깅하여 저장할 수 있다. 예를 들어, 저장부(320)는 "○번(채널 번호) 틀어줘"와 같은 예문에 디스플레이 장치(100)의 채널을 ○번으로 변경하기 위한 제어 명령을 태깅하여 저장할 수 있다. 여기에서, 제어 명령은 스크립트 형태의 시스템 명령일 수 있다.
한편, 예문에 대한 답변은 추가 질문을 포함할 수 있다. 이 경우, 저장부(320)는 추가 질문이 나타내는 의미를 추가 질문마다 태깅하여 저장하고, 디스플레이 장치(100)를 제어하기 위한 제어 명령을 추가 질문에 태깅하여 저장할 수 있다.
예를 들어, 기기 제어 도메인 내에 "설정 초기화"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "설정 초기화"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "설정 초기화"와 같은 예문에서 "설정"은 디스플레이 장치(100)의 세팅 상태를 나타내며, "초기화"는 디스플레이 장치(100)의 세팅 상태 초기화 실행 요청으로 해당 예문의 타입은 요청문인 것을 나타내는 정보를 해당 예문에 저장할 수 있다.
또한, 저장부(320)는 "설정 초기화"와 같은 예문에 "모든 설정을 초기화 하시겠습니까?"와 같은 추가 질문을 태깅하여 저장할 수 있다. 그리고, 저장부(320)는 "모든 설정을 초기화 하시겠습니까?"가 나타내는 의미는 디스플레이 장치(100)의 모든 세팅 상태를 초기화할 것인지 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)의 모든 세팅 상태를 초기화하기 위한 제어 명령을 태깅하여 저장할 수 있다.
다른 예로, 기기 제어 도메인 내에 "볼륨 적당히 올려봐"라는 예문이 저장된 경우를 가정한다.
이 경우, 저장부(320)는 "볼륨 적당히 올려봐"와 같은 예문을 해석하기 위한 정보를 해당 예문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "볼륨 적당히 올려봐"와 같은 예문에서 "볼륨"은 디스플레이 장치(100)의 볼륨을 나타내며, "적당히", "올려"는 기설정된 볼륨값(가령, 10)까지 볼륨의 증가 요청을 나타내며, "봐"는 예문의 타입이 요청문인 것을 나타내는 정보를 해당 예문에 태깅하여 저장할 수 있다.
그리고, 저장부(320)는 "볼륨 적당히 올려봐"와 같은 예문에 디스플레이 장치(100)의 볼륨을 기설정된 볼륨값(가령, 10)으로 증가시키기 위한 제어 명령을 태깅하여 저장할 수 있다.
또한, 저장부(320)는 "볼륨 적당히 올려봐"와 같은 예문에 "볼륨을 10으로 조절하였습니다. 적당한가요?"와 같은 추가 질문을 태깅하여 저장할 수 있다. 그리고, 저장부(320)는 "볼륨을 10으로 조절하였습니다. 적당한가요?"가 나타내는 의미를 해당 추가 질문에 태깅하여 저장할 수 있다. 구체적으로, 저장부(320)는 "볼륨을 10으로 조절하였습니다. 적당한가요?"가 나타내는 의미는 볼륨값이 10으로 증가된 디스플레이 장치(100)의 볼륨 상태에 대한 동의 여부를 나타내는 것으로 저장할 수 있다.
이와 같이, 저장부(320)는 예문, 답변 및 추가 질문을 저장할 수 있다. 이 경우, 저장부(320)는 예문, 답변 및 추가 질문을 구성하는 각 단어의 의미, 속성 등을 고려하여 예문을 해석하기 위한 정보 및 추가 질문이 갖는 의미 등을 각 예문, 답변 및 추가 질문에 태깅하여 저장할 수 있다.
뿐만 아니라, 저장부(320)는 상술한 방식을 이용하여 다양한 예문, 답변 및 그에 대한 추가 질문을 저장할 수도 있다. 이 경우, 저장부(320)는 디스플레이 장치(100)를 제어하기 위한 제어 명령을 추가 질문에 태깅하여 저장할 수도 있다.
예를 들어, 저장부(320)는 기기 제어 도메인 내에서 "TV(디스플레이 장치(100) 명칭) 그만 볼래"와 같은 예문. 해당 예문을 해석하기 위한 정보 및 "전원을 끄시겠습니까?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이때, 저장부(320)는 "전원을 끄시겠습니까?"가 나타내는 의미는 디스플레이 장치(100)의 전원 오프를 문의하는 것으로 저장하고, 디스플레이 장치(100)의 전원 오프시키기 위한 제어 명령을 저장할 수 있다.
다른 예로, 저장부(320)는 기기 제어 도메인 내에서 "○시(시간)까지만 TV(디스플레이 장치(100) 명칭) 볼래"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "○시(시간)에 TV 시청을 종료할까요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이때, 저장부(320)는 "○시(시간)에 TV 시청을 종료할까요?"가 나타내는 의미는 ○시(시간)에 디스플레이 장치(100)의 전원 오프를 문의하는 것으로 저장하고, 디스플레이 장치(100)의 전원 오프시키기 위한 제어 명령을 저장할 수 있다.
또 다른 예로, 저장부(320)는 기기 제어 도메인 내에서 "○시(시간)에 알람 맞춰줘"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "먼저, 현재 시각을 설정해야합니다. 시간을 설정하시겠어요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "먼저, 현재 시각을 설정해야 합니다. 시간을 설정하시겠어요?"가 나타내는 의미는 디스플레이 장치(100)의 시간 설정 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)의 시간 설정 메뉴를 표시하기 위한 제어 명령을 저장할 수 있다.
또 다른 예로, 저장부(320)는 방송 서비스 도메인 내에서 "○○(날짜)에 ○○○(방송 프로그램 명칭) 몇 시에 시작해?"와 같은 예문, 해당 예문을 해석하기 위한 정보를 저장할 수 있다. 이 경우, 저장부(320)는 "~ ○○○(방송 프로그램 명칭) 몇 시에 시작해?"와 같은 형식을 갖는 예문의 앞부분에는 방송 날짜(가령, 지금, 내일 등)와 관련된 단어가 배치되거나 또는, 생략될 수 있다는 정보를 해당 예문에 태깅하여 저장할 수 있다.
이 경우, 저장부(320)는 "○○(날짜)에 ○○○(방송 프로그램 명칭) 몇 시에 시작해?"에 대해 다양한 추가 질문을 태깅하여 저장할 수 있다.
먼저, 저장부(320)는 "○시(방송 시간)에 시작합니다. 알림 설정해 드릴까요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "○시(방송 시간)에 시작합니다. 알림 설정해 드릴까요?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)에 대한 알림 설정 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)의 알림을 ○시로 설정하기 위한 제어 명령을 저장할 수 있다.
이 경우, 저장부(320)는 "○시(방송 시간)에 시작합니다. 알림 설정해 드릴까요?"와 같은 추가 질문에 "예약 녹화가 필요하신가요?"와 같은 또 다른 추가 질문을 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "예약 녹화가 필요하신가요?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)에 대한 예약 녹화 설정 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)가 ○○○(방송 프로그램 명칭)에 대한 예약 녹화를 설정하기 위한 제어 명령을 저장할 수 있다.
두 번째로, 저장부(320)는 "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 언제 하는지 알아봐 드릴까요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 언제 하는지 알아봐 드릴까요?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)에 ○○○(방송 프로그램 명칭) 방송 시간의 검색 여부를 문의하는 것으로 저장할 수 있다. 이 경우, 저장부(320)는 추가 질문 이후 수신되는 사용자의 음성에 대한 답변으로 "○○○(방송 프로그램 명칭)의 방송 시간은 <방송 시간>입니다"를 태깅하여 저장할 수 있다.
세 번째로, 저장부(320)는 "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 시청 가능한 다른 방송 프로그램을 찾아봐 드릴까요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 시청 가능한 다른 방송 프로그램을 찾아봐 드릴까요?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)와 동일한 장르를 갖는 다른 방송 프로그램의 방송 시간의 검색 여부를 문의하는 것으로 저장할 수 있다. 이 경우, 저장부(320)는 추가 질문 이후 수신되는 사용자의 음성에 대한 답변으로 <방송 프로그램 명칭>은 <방송 시간>에 합니다"를 태깅하여 저장할 수 있다.
네 번째로, 저장부(320)는 "이미 ○○(시간) 전에 시작했습니다. 채널을 변경하시겠습니까?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "이미 ○○(시간) 전에 시작했습니다. 채널을 변경하시겠습니까?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)가 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경을 위한 제어 명령을 저장할 수 있다.
이와 같이, 저장부(320)는 하나의 예문에 대해 복수의 추가 질문을 태깅하여 저장할 수 있다.
한편, 또 다른 예로, 저장부(320)는 기기 제어 도메인 내에서 "○○○(방송 프로그램 명칭) 몇 살까지 볼 수 있어?"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "○(나이) 이상부터 시청 가능한 방송 프로그램입니다. 시청하시겠습니까?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "○(나이) 이상부터 시청 가능한 방송 프로그램입니다. 시청하시겠습니까?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)가 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경을 위한 제어 명령을 저장할 수 있다.
또 다른 예로, 저장부(320)는 방송 도메인 내에서 "○○○(방송 프로그램 명칭) 감독이 누구야?"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "○○○(감독 명칭)입니다. 감독한 작품을 검색해 드릴까요?"와 같은 추가 질문을 해당 에문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "<감독 명칭>입니다. 감독한 작품을 검색해 드릴까요?"가 나타내는 의미는 ○○○(감독 명칭)가 만든 방송 프로그램에 대한 검색 여부를 문의하는 것으로 저장할 수 있다. 또한, 저장부(320)는 추가 질문 이후 수신되는 사용자의 음성에 대한 답변으로 "<방송 프로그램 명칭> 입니다"를 태깅하여 저장할 수 있다.
또 다른 예로, 저장부(320)는 방송 도메인 내에서 "○○○(방송 프로그램 명칭) 시작하면 알려줘"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "○○○(방송 프로그램 명칭)이 시작합니다. 채널을 변경할까요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "○○○(방송 프로그램 명칭)이 시작합니다. 채널을 변경할까요?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)가 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경을 위한 제어 명령을 저장할 수 있다.
또 다른 예로, 저장부(320)는 방송 서비스 도메인 내에서 "내가 ○○○(요일)에 즐겨보던 거 하나?"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "○○○(방송 프로그램 명칭)은 ○(방송 시간)에 방송됩니다. 알림 설정 해드릴까요?" 및, "○○○(방송 프로그램 명칭)은 지금 방송 중입니다. 채널 변경하시겠어요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다.
이 경우, 저장부(320)는 "○○○(방송 프로그램 명칭)은 ○시(방송 시간)에 방송됩니다. 알림 설정 해드릴까요?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)에 대한 알림 설정의 여부 문의인 것으로 저장하고, 디스플레이 장치(100)의 알림을 ○시로 설정하기 위한 제어 명령을 저장할 수 있다. 또한, 저장부(320)는 "○○○(방송 프로그램 명칭)은 지금 방송 중입니다. 채널 변경하시겠어요?"가 나타내는 의미는 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)의 채널을 ○○○(방송 프로그램 명칭)이 제공되는 채널로 변경하기 위한 제어 명령을 저장할 수 있다.
또 다른 예로, 저장부(320)는 방송 서비스 도메인 내에서 "○○(채널 명)에서 지금 ○○(장르) 해?"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "○○(채널 명)에서는 지금 <방송 프로그램 명칭>을 방송하고 있습니다. ○○(장르)를 찾아드릴까요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "○○(채널 명)에서는 지금 <방송 프로그램 명칭>을 방송하고 있습니다. ○○(장르)를 찾아드릴까요?"가 나타내는 의미는 장르가 ○○(장르)인 방송 프로그램에 대한 검색 여부를 문의하는 것으로 저장할 수 있다.
또 다른 예로, 저장부(320)는 방송 서비스 도메인 내에서 "녹화한 방송 리스트 보여줘"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "녹화된 방송 프로그램은 다음과 같습니다. 어느 방송 프로그램을 보시겠어요?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "녹화된 방송 프로그램은 다음과 같습니다. 몇 번을 보시겠어요?"가 나타내는 의미는 녹화된 방송 프로그램에 대한 리스트에서 몇 번째 방송 프로그램의 시청 여부를 문의하는 것으로 저장하고, 녹화 목록에서 ○번째 방송 프로그램을 출력하기 위한 제어 명령을 저장할 수 있다.
또 다른 예로, 저장부(320)는 방송 서비스 도메인 내에서 "○○○(방송 프로그램 명칭) 왜 이렇게 재미없어?"와 같은 예문, 해당 예문을 해석하기 위한 정보 및 "아직 초반부라서 그렇습니다. 채널을 변경하기겠습니까?"와 같은 추가 질문을 해당 예문에 태깅하여 저장할 수 있다. 이 경우, 저장부(320)는 "아직 초반부라서 그렇습니다. 채널을 변경하기겠습니까?"가 나타내는 의미는 채널 변경 여부를 문의하는 것으로 저장하고, 디스플레이 장치(100)가 ○(채널 번호)로 채널을 변경하기 위한 제어 명령을 저장할 수 있다.
이와 같이, 저장부(320)는 다양한 예문, 답변 및 추가 질문을 저장할 수 있다.
제어부(330)는 제2 서버(300)의 전반적인 동작을 제어한다. 특히, 디스플레이 장치(100)로부터 사용자의 음성에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 수신된 텍스트 정보에 대응하는 응답 정보를 생성하고, 생성된 응답 정보를 통신부(310)를 통해 디스플레이 장치(100)로 전송하도록 제어할 수 있다.
구체적으로, 제어부(330)는 텍스트 정보를 분석하여 사용자의 음성에 포함된 발화 의도를 판단하고, 판단된 발화 의도에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송하도록 통신부(310)를 제어할 수 있다.
이를 위해, 제어부(330)는 수신된 텍스트 정보에 매칭되는 대화 패턴이 존재하는 말뭉치 데이터베이스를 검출하여, 사용자의 음성이 속하는 서비스 도메인을 판단할 수 있다.
구체적으로, 제어부(330)는 수신된 텍스트 정보를 각 서비스 도메인 별로 저장된 예문과 비교하고, 수신된 텍스트 정보에 매칭되는 예문이 속하는 서비스 도메인을 사용자의 음성이 속하는 서비스 도메인으로 판단할 수 있다.
예를 들어, 제어부(320)는 디스플레이 장치(100)로부터 "○○○(방송 프로그램명)은 언제 해?", "○번(채널 번호) 틀어줘", "볼륨 적당히 올려봐"라는 텍스트가 수신되면 디스플레이 장치(100)에서 수집한 사용자의 음성이 방송 서비스 도메인에 속하는 것으로 판단할 수 있다. 하지만, 이는 일 예일 뿐, 저장부(320)에 저장된 다양한 예문에 매칭되는 텍스트 정보가 수신되면, 사용자의 음성은 매핑되는 예문이 존재하는 서비스 도메인에 속하는 것으로 판단할 수 있다.
한편, 제어부(330)는 수신된 텍스트 정보에 매칭되는 예문이 존재하지 않는 경우, 통계적으로 사용자의 음성이 속하는 도메인을 판단할 수 있다.
예를 들어, 디스플레이 장치(100)가 "○번(채널 번호) 틀어주세요"을 수집하고, 수집된 사용자의 음성에 대한 텍스트를 제2 서버(300)로 전송한 경우를 가정한다. 이 경우, 제어부(330)는 HMM(Hidden Markov Model), CRF(Condition Random Fields), SVM(Support Vector Machine) 등의 분류 모델을 사용하여 사용자의 음성이 "○번(채널 번호) 틀어줘"와 통계적으로 유사한 것으로 판단하고, "○번(채널 번호) 틀어주세요"는 방송 서비스 도메인에 속하는 것으로 판단할 수 있다. 하지만, 이는 일 예일 뿐, 제어부(330)는 저장부(320)에 저장된 다양한 예문과 사용자의 음성이 통계적으로 유사한지 여부를 판단하여 사용자의 음성이 속하는 도메인을 판단할 수 있다.
한편, 제어부(330)는 사용자의 음성이 속하는 서비스 도메인에 기초하여, 사용자의 음성으로부터 화행(dialogue act), 주행(main action) 및 구성요소(component slot)(또는, 개체명)를 추출한다.
여기에서, 화행은 문장의 형태와 관련된 분류 기준으로, 해당 문장이 서술문(Statement), 요청문(Request) 또는 의문문(Question)인지를 나타내는 것이다.
주행은 해당 발화가 특정 도메인에서 대화를 통해 원하는 행위를 나타내는 의미적 정보이다. 예를 들어, 방송 서비스 도메인에서, 주행은 TV 전원 온/오프, 방송 프로그램 찾기, 방송 프로그램 시간 찾기, 방송 프로그램 예약 등을 포함할 수 있다. 다른 예로, 기기 제어 도메인에서, 주행은 기기 전원 온/오프, 재생, 일시 정지 등을 포함할 수 있다.
구성요소는 발화에 나타나는 특정 도메인에 대한 개체 정보 즉, 특정 도메인에서 의도하는 행동의 의미를 구체화하기 위해서 부가되는 정보이다. 예를 들어, 방송 서비스 도메인에서 구성요소는 장르, 방송 프로그램 명칭, 방송 시간, 채널 번호, 채널 명, 출연자, 제작자 등을 포함할 수 있으며, 기기 제어 서비스 도메인에서 구성요소는 외부 기기 명칭, 제조사 등을 포함할 수 있다.
그리고, 제어부(330)는 추출된 화행, 주행 및 구성요소를 이용하여 사용자의 음성에 포함된 발화 의도를 판단하고, 판단된 발화 의도에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
여기에서, 응답 정보는 디스플레이 장치(100)가 특정 기능을 수행하기 위한 제어 명령을 포함할 수 있다. 이를 위해, 제어부(330)는 사용자의 음성과 매칭되는 것으로 판단된 예문에 태깅된 제어 명령을 디스플레이 장치(100)로 전송하도록 제어할 있다. 또한, 제어부(330)는 판단된 발화 의도에 대응되는 제어 명령을 생성하고, 생성된 제어 명령을 디스플레이 장치(100)로 전송하도록 제어할 수도 있다.
한편, 응답 정보는 디스플레이 장치(100)에서 출력되는 시스템 응답에 대한 시스템 응답 정보를 포함할 수 있다. 이를 위해, 제어부(330)는 판단된 발화 의도에 대한 답변 및 추가 질문을 저장부(320)에서 추출하고, 추출된 답변 및 추가 질문을 텍스트 형식으로 변환하여 디스플레이 장치(100)로 전송할 수 있다. 즉, 제어부(330)는 사용자의 음성과 매칭되는 예문에 태깅된 답변 및 추가 질문을 추출하고, 추출된 답변 및 추가 질문을 텍스트 형식으로 변환하여 디스플레이 장치(100)로 전송할 수 있다.
이 경우, 제어부(330)는 디스플레이 장치(100)에서 시스템 응답을 출력하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수도 있다.
이하에서는, 제어부(330)가 사용자의 음성에 대응되는 응답 정보를 생성하는 보다 구체적인 방법을 예를 들어 설명하도록 한다.
먼저, 제어부(330)는 사용자의 음성과 매칭되는 예문 또는 사용자의 음성과 통계적으로 유사한 것으로 판단된 예문에 태깅된 정보를 이용하여, 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 사용자의 음성에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
예를 들어, 디스플레이 장치(100)로부터 텍스트 "○○○(방송 프로그램명)은 언제 해?"가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 수신된 텍스트가 방송 서비스 도메인에 속하는 것으로 판단하고, 방송 서비스 도메인 내에서 수신된 텍스트와 매칭되는 예문인 "○○○(방송 프로그램명)은 언제 해?"에 태깅된 정보를 이용하여 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
즉, 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"에는 예문을 해석하기 위한 정보로, "○○○(방송 프로그램명)"은 방송 프로그램을 나타내고, "언제"는 방송 시간 문의를 나타내며, "해?"는 예문의 타입이 의문문인 것을 나타내는 정보가 태깅되어 있다.
따라서, 제어부(330)는 이들 정보를 참조하여 디스플레이 장치(100)로부터 수신된 텍스트 "○○○(방송 프로그램명)은 언제 해?"의 화행은 의문문이고 주행은 방송 시간 문의이고 구성요소는 ○○○(방송 프로그램명)인 것으로 판단할 수 있다. 그에 따라, 제어부(330)는 사용자의 발화 의도는 ○○○에 대한 방송 시간을 문의하는 것으로 판단할 수 있다.
또한, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"에 태깅된 답변을 저장부(320)에서 검색하고, 태깅된 답변을 이용하여 응답 정보를 생성할 수 있다.
즉, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○○○(방송 프로그램명)은 언제 해?"에 태깅된 답변인 "문의하신 <방송 프로그램 명>의 방송 시간은 <방송 시간> 입니다"를 사용자의 음성에 대응되는 답변으로 검색한다.
이 경우, 제어부(330)는 검색된 답변에 포함된 블랭크를 완성하여, 완전한 형태의 문장을 생성할 수 있다.
예를 들어, 제어부(330)는 "문의하신 <방송 프로그램 명>의 방송 시간은 <방송 시간> 입니다"와 같은 답변에서 블랭크 <방송 프로그램 명>는 방송 프로그램명인 "○○○(방송 프로그램명)"을 기입할 수 있다. 그리고, 제어부(330)는 EPG 정보를 통해 "○○○(방송 프로그램명)"의 방송 시간을 검색하고 검색된 방송 시간을 또 다른 블랭크인 <방송 시간>에 기입할 수 있다. 이에 따라, 제어부(330)는 "문의하신 ○○○(방송 프로그램명)의 방송 시간은 토요일 ○시(방송 시간)입니다"라는 완전한 형태의 문장을 텍스트 형식으로 표현하여 응답 정보를 생성하고, 생성된 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여, "문의하신 ○○○(방송 프로그램명)의 방송 시간은 토요일 7시입니다"를 음성 및 UI 화면 중 적어도 하나의 형태로 출력할 수 있다.
다른 예로, 디스플레이 장치(100)로부터 텍스트 "○번(채널 번호) 틀어줘"가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 수신된 텍스트가 방송 서비스 도메인에 속하는 것으로 판단하고, 방송 서비스 도메인 내에서 수신된 텍스트와 매칭되는 예문인 "○번(채널 번호)을 틀어줘"에 태깅된 정보를 이용하여 사용자의 음성에서 화행, 주행 및 구성요소를 추출하고, 그에 대한 응답 정보를 생성할 수 있다.
즉, 방송 서비스 도메인에 저장된 예문인 "○번(채널 번호)을 틀어줘"에는 예문을 해석하기 위한 정보로, "○번(채널 번호)"은 채널 번호를 나타내고, "틀어"는 방송 선국 명령을 나타내며, "줘"는 예문의 타입이 요청문인 것을 나타내는 정보가 태깅되어 있다. 따라서, 제어부(330)는 이들 정보를 참조하여 디스플레이 장치(100)로부터 수신된 텍스트 "○번(채널 번호)을 틀어줘"의 화행은 요청문이고 주행은 방송 선국 명령이고 구성요소는 ○번(채널 번호)인 것으로 판단할 수 있다. 그에 따라, 제어부(330)는 사용자의 발화 의도는 ○번에 대한 방송 선국을 요청하는 것으로 판단할 수 있다.
또한, 제어부(330)는 방송 서비스 도메인에 저장된 예문인 "○번(채널 번호) 틀어줘"에 태깅된 제어 명령을 저장부(320)에서 검색하고, 검색된 제어 명령을 디스플레이 장치(100)로 전송하도록 제어할 수 있다. 즉, 제어부(330)는 디스플레이 장치(100)의 채널을 ○번으로 변경하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 ○번으로 채널을 변경할 수 있다.
한편, 상술한 예에서, 제어부(330)가 예문에 태깅된 제어 명령에 기초하여 디스플레이 장치(100)의 기능을 실행시키기 위한 제어 명령을 생성하는 것으로 설명하였으나 이는 일 예에 불과하다.
즉, 제어부(330)는 판단된 발화 의도에 기초하여 제어 명령을 생성하고, 이를 디스플레이 장치(100)로 전송할 수 있다. 예를 들어, 제어부(330)는 사용자의 발화 의도가 ○번에 대한 방송 선국을 요청인 것으로 판단된 경우, ○번으로 채널을 변경하기 위한 제어 명령을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
또한, 상술한 예에서, 제어부(330)는 디스플레이 장치(100)에서 시스템 응답을 출력하기 위한 시스템 응답 정보를 전송하는 것으로 설명하였으나 이는 일 예에 불과하다.
즉, 제어부(330)는 디스플레이 장치(100)에서 시스템 응답을 구성하는 데이터를 기저장하고 있는 경우, 해당 데이터를 시스템 응답으로 출력하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수도 있다. 또한, 제어부(330)는 디스플레이 장치(100)에서 시스템 응답을 구성하는 데이터의 일부를 기저장하고 있는 경우, 완전한 시스템 응답을 출력하기 위한 정보만을 디스플레이 장치(100)로 전송할 수도 있다.
예를 들어, 디스플레이 장치(100)에 "문의하신 <방송 프로그램 명>의 방송 시간은 <방송 시간> 입니다"와 같은 답변이 기저장된 경우, 제어부(330)는 디스플레이 장치(100)에 저장된 답변을 완전한 형태의 문장으로 구성하기 위해 사용자가 문의하는 방송 프로그램 명칭 및 방송 시간에 대한 정보를 디스플레이 장치(100)로 전송하도록 제어할 수 있다. 이 경우, 제어부(330)는 디스플레이 장치(100)에 기저장된 답변을 출력하기 위한 별도의 제어 명령을 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 정보를 기저장된 답변에 기입하여 "문의하신 ○○○(방송 프로그램명)의 방송 시간은 토요일 ○시입니다"를 시스템 응답으로 출력할 수 있다.
한편, 상술한 실시 예에서, 제어부(330)는 예문에 태깅된 정보를 이용하여 화행, 주행 및 구성요소를 추출하는 것으로 설명하였으나 이는 일 예에 불과하다. 즉, 제어부(330)는 사용자의 음성에서 MaxEnt(Maximum Entropy Classifier)를 이용하여 화행, 주행을 추출하고, CRF(Conditional Random Field)를 이용하여 구성요소를 추출할 수도 있다.
하지만, 이들 실시 예에 한정되는 것은 아니며 제어부(330)는 이미 공지된 다양한 방식을 통해 사용자의 음성으로부터 화행, 주행 및 구성요소를 추출할 수도 있다.
한편, 제어부(330)는 판단된 발화 의도에 대응되는 응답 정보 생성시, 판단된 발화 의도에 따라 사용자의 음성에 대응되는 추가 질문이 존재하는 경우 이를 이용하여 응답 정보를 생성할 수도 있다.
그리고, 제어부(330)는 추가 질문에 대한 사용자의 음성에 대한 텍스트 정보가 수신되면, 추가 질문을 고려하여 수신된 텍스트 정보에 대응되는 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
이 경우, 제어부(330)는 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 없는 경우, 이전에 수신된 사용자의 음성에 참조하여, 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 있다. 구체적으로, 제어부(330)는 이전에 수신된 사용자의 음성이 속하는 서비스 도메인을 기초로 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 없는 경우, 이전에 수신된 사용자의 음성에 참조하여, 현재 수신된 사용자의 음성에 포함된 사용자의 발화 의도를 판단할 수 있다.
구체적으로, 제어부(330)는 사용자의 발화 의도가 디스플레이 장치(100)의 기능 수행과 관련된 경우, 기능 수행 여부를 확인하기 위한 추가 질문을 생성하고, 디스플레이 장치(100)에서 추가 질문을 출력하기 위한 응답 정보를 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(330)는 사용자의 음성에 매칭되는 예문에 태깅된 추가 질문을 판단하고, 추가 질문을 출력하기 위한 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
예를 들어, 제어부(330)는 "TV 그만 볼래", "10시까지만 TV 볼래" 또는, "설정 초기화"와 같이 사용자의 음성에 대응되는 기능을 바로 실행하는 것이 리스크가 있는 것으로 판단되면, 시스템 응답으로 추가 질문을 출력하기 위한 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
이하에서, 디스플레이 장치(100)로부터 "TV 그만 볼래", "10시까지만 TV 볼래", "설정 초기화"에 대응되는 텍스트 정보가 수신된 경우를 가정한다.
이 경우, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여, "TV 그만 볼래"에 대한 발화 의도는 디스플레이 장치(100)의 전원 오프를 요청으로 판단하고, "10시까지만 TV 볼래"에 대한 발화 의도는 10시에 디스플레이 장치(100)의 전원 오프를 요청하는 것으로 판단할 수 있다. 또한, 제어부(330)는 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여, "설정 초기화"에 대한 발화 의도는 디스플레이 장치(100)의 세팅 상태 초기화를 요청하는 것으로 판단할 수 있다.
다만, 디스플레이 장치(100)의 전원을 오프시키거나, 디스플레이 장치(100)의 세팅 상태 초기화하는 것은 리스크가 있다는 점에서, 제어부(330)는 해당 기능을 수행하기 위한 제어 명령을 디스플레이 장치(100)로 전송하기 전에, 추가 질문을 출력하기 위한 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
구체적으로, 제어부(330)는 "TV 그만 볼래"에 태깅된 추가 질문인 "전원을 끄시겠습니까?", "10시까지만 TV 볼래"에 태깅된 추가 질문인 "10시에 TV 시청을 종료할까요?", "설정 초기화"에 태깅된 추가 질문인 "모든 설정을 초기화하시겠습니까?"을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 "전원을 끄시겠습니까?", "10시에 TV 시청을 종료할까요?" 또는, "모든 설정을 초기화하시겠습니까?"를 음성으로 출력하거나, "전원을 끄시겠습니까?", "10시에 TV 시청을 종료할까요?" 또는, "모든 설정을 초기화하시겠습니까?"를 포함하는 UI 화면을 출력할 수 있다.
이후, 제어부(330)는 추가 질문 이후 수신된 사용자의 음성에 따라 디스플레이 장치(100)의 기능을 제어하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(330)는 추가 질문이 나타내는 의미를 고려하여 이후 수신된 사용자의 음성에 대한 발화 의도를 판단하고, 추가 질문에 태깅된 제어 명령을 디스플레이 장치(100)로 전송하여 디스플레이 장치(100)의 기능을 제어할 수 있다.
예를 들어, 제어부(330)는 "전원을 끄시겠습니까?" 이후 "예"와 같은 텍스트 정보가 수신된 경우, 발화 의도는 디스플레이 장치(100)의 전원 오프를 요청하는 것으로 판단하고, 디스플레이 장치(100)의 전원을 오프시키기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 디스플레이 장치(100)의 전원을 오프할 수 있다.
다른 예로, 제어부(330)는 "10시에 TV 시청을 종료할까요?" 이후 "예"와 같은 텍스트 정보가 수신된 경우, 발화 의도는 10시에 디스플레이 장치(100)의 전원 오프를 요청하는 것으로 판단하고, 10시에 디스플레이 장치(100)의 전원을 오프시키기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 10시에 전원을 오프할 수 있다.
또 다른 예로, 제어부(330)는 "모든 설정을 초기화하시겠습니까?" 이후 "예"와 같은 텍스트 정보가 수신된 경우, 발화 의도는 디스플레이 장치(100)의 모든 세팅 상태를 초기화 요청하는 것으로 판단하고, 디스플레이 장치(100)의 모든 세팅 상태를 초기화하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 모든 세팅 상태를 초기화할 수 있다.
한편, 제어부(330)는 "볼륨 적당히 올려봐"와 같이 사용자가 불확실한 말을 임의로 정량화한 것으로 판단되면, 시스템 응답으로 추가 질문을 출력하기 위한 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
구체적으로, 디스플레이 장치(100)로부터 "볼륨 적당히 올려봐"에 대응되는 텍스트 정보가 수신된 경우, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여, "볼륨 적당히 올려봐"에 대한 발화 의도는 기설정된 볼륨값(가령, 10)까지 볼륨의 증가 요청으로 판단하고, 디스플레이 장치(100)의 볼륨을 기설정된 볼륨값(가령, 10)으로 증가시키기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 볼륨을 기설정된 볼륨값(가령, 10)으로 증가시킬 수 있다.
그리고, 제어부(330)는 기설정된 볼륨값으로 증가시키기 위한 것인지 여부를 확인하기 위한 추가 질문 즉, "볼륨을 10으로 조절하였습니다. 적당한가요?"을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 볼륨값이 10으로 조정된 것을 만족하는 것으로 판단할 수 있다.
다른 한편, 제어부(330)는 사용자의 발화 의도가 디스플레이 장치(100)의 기능 수행과 관련되고 기능을 수행하기 전에 선행 기능 수행이 필요한 경우, 선행 기능 수행과 관련된 추가 질문을 생성하고, 디스플레이 장치(100)에서 추가 질문을 출력하기 위한 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
예를 들어, 제어부(330)는 "○시(시간)에 알람 맞춰줘"와 같이 알람 기능을 설정하기 전에 현재 시간을 설정하여야 하는 선행 기능 수행이 요구되는 경우, 시스템 응답으로 추가 질문을 출력하기 위한 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
구체적으로, 디스플레이 장치(100)로부터 "○시(시간)에 알람 맞춰줘"에 대응되는 텍스트 정보가 수신된 경우, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여, "○시(시간)에 알람 맞춰줘"에 대한 발화 의도는 디스플레이 장치(100)에서 ○시(시간)에 알람 설정을 요청하는 것으로 판단할 수 있다.
이 경우, 제어부(330)는 알람 설정 전에 선행적으로 디스플레이 장치(100)에서 현재 시간을 설정하여야 하는 것으로 판단하고, 추가 질문인 "먼저, 현재 시각을 설정해야 합니다. 시간을 설정하시겠어요?"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 "먼저, 현재 시각을 설정해야 합니다. 시간을 설정하시겠어요?"를 음성으로 출력하거나, "먼저, 현재 시각을 설정해야 합니다. 시간을 설정하시겠어요?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 디스플레이 장치(100)의 시간 설정을 요청하는 것으로 판단하고, 디스플레이 장치(100)에서 시간 설정 메뉴를 표시하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 시간을 설정하기 메뉴 화면을 디스플레이할 수 있다.
또 다른 한편, 제어부(330)는 사용자의 발화 의도가 컨텐츠 검색과 관련된 경우, 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 생성하고, 디스플레이 장치(100)에서 추가 질문을 출력하기 위한 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
예를 들어, 디스플레이 장치(100)로부터 "○○○(방송 프로그램 명칭) 몇 시에 시작해?"에 대응되는 텍스트 정보가 수신된 경우, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 "○○○(방송 프로그램 명칭) 몇 시에 시작해?"에 대한 발화 의도는 ○○○(방송 프로그램 명칭)의 방송 시간 검색을 요청하는 것으로 판단할 수 있다. 이 경우, 제어부(330)는 EPG 정보를 참조하여 ○○○(방송 프로그램 명칭)의 방송 시간은 ○시(방송 시간)인 것으로 검색하고, "○시(방송 시간)에 시작합니다. 알림 설정해 드릴까요?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 "○시(방송 시간)에 시작합니다. 알림 설정해 드릴까요?"를 음성으로 출력하거나, "○시(방송 시간)에 시작합니다. 알림 설정해 드릴까요?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○시(방송 시간)에 디스플레이 장치(100)의 알람 설정을 요청하는 것으로 판단하고, ○시(방송 시간)에 디스플레이 장치(100)의 알람 설정을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 ○시(방송 시간)에 알람을 설정할 수 있다.
다만, "아니요"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○시(방송 시간)에 디스플레이 장치(100)의 알람 설정을 거부하는 것으로 판단할 수 있다. 이 경우, 제어부(330)는 추가 질문에 태깅된 다른 추가 질문을 출력하기 위한 응답 정보를 디스플레이 장치(100)로 전송할 수 있다. 예를 들어, 제어부(330)는 "○시(방송 시간)에 시작합니다. 알림 설정해 드릴까요?"에 태깅된 다른 추가 질문인 "예약 녹화가 필요하신가요?"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 "예약 녹화가 필요하신가요?"를 음성으로 출력하거나, "예약 녹화가 필요하신가요?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○시(방송 시간)에 디스플레이 장치(100)의 예약 녹화 설정을 요청하는 것으로 판단하고, ○시(방송 시간)에 시작하는 ○○○시(방송 프로그램 명칭)에 대한 예약 녹화를 설정하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 ○시(방송 시간)에 시작하는 ○○○시(방송 프로그램 명칭)에 대한 예약 녹화를 설정할 수 있다.
이와 같이, 제어부(330)는 사용자의 발화 의도가 특정 방송 프로그램의 방송 시간 문의이고, 그에 따라 검색된 특정 방송 프로그램이 한 개일 경우 알림 설정 및 예약 녹화 설정을 위한 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
다른 예로, 디스플레이 장치(100)로부터 "오늘 ○○○(방송 프로그램 명칭) 몇 시에 시작해?"에 대응되는 텍스트 정보가 수신된 경우, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 "오늘 ○○○(방송 프로그램 명칭) 몇 시에 시작해?"에 대한 발화 의도는 오늘 ○○○(방송 프로그램 명칭)의 방송 시간 검색을 요청하는 것으로 판단할 수 있다. 이 경우, 제어부(330)는 EPG 정보를 참조하여 오늘 ○○○(방송 프로그램 명칭)이 방송되는지 여부를 검색할 수 있다.
검색 결과, 제어부(330)는 오늘 ○○○(방송 프로그램 명칭)이 방송되지 않는 것으로 판단되면, "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 언제 하는지 알아봐 드릴까요?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 언제 하는지 알아봐 드릴까요?"를 음성으로 출력하거나, "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 언제 하는지 알아봐 드릴까요?"을 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 다른 날짜에 ○○○(방송 프로그램 명칭)의 방송 시간 검색을 요청하는 것으로 판단하고, EPG 정보를 참조하여 ○○○(방송 프로그램 명칭)의 방송 시간을 검색할 수 있다. 그리고, 제어부(330)는 검색된 방송 시간을 이용하여 "○○○(방송 프로그램 명칭)의 방송 시간은 ○요일 ○시(방송 시간)입니다"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 따라 "○○○(방송 프로그램 명칭)의 방송 시간은 ○요일 ○시(방송 시간)입니다"를 음성으로 출력하거나, "○○○(방송 프로그램 명칭)의 방송 시간은 ○요일 ○시(방송 시간)입니다"을 포함하는 UI 화면을 출력할 수 있다.
또한, 검색 결과, 제어부(330)는 오늘 ○○○(방송 프로그램 명칭)이 방송되지 않는 것으로 판단되면, "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 시청 가능한 다른 방송 프로그램을 찾아봐 드릴까요?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 시청 가능한 다른 방송 프로그램을 찾아봐 드릴까요?"를 음성으로 출력하거나, "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 시청 가능한 다른 방송 프로그램을 찾아봐 드릴까요?"을 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○○○(방송 프로그램 명칭)와 동일한 장르를 갖는 방송 프로그램의 검색 요청인 것으로 판단하고, EPG 정보를 참조하여 ○○○(방송 프로그램 명칭)과 동일한 장르를 갖는 방송 프로그램을 검색하고, "△△△(방송 프로그램 명칭)은 △요일 △시(방송 시간)에 합니다"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "△△△(방송 프로그램 명칭)은 △요일 △시(방송 시간)에 합니다"를 음성으로 출력하거나, "△△△(방송 프로그램 명칭)은 △요일 △시(방송 시간)에 합니다"를 포함하는 UI 화면을 출력할 수 있다.
이와 같이, 제어부(330)는 컨텐츠 검색이 특정 컨텐츠의 방송 시간 문의와 관련된 경우, 특정 컨텐츠의 방송 시간 검색 및 특정 컨텐츠의 유사 컨텐츠에 대한 검색 중 적어도 하나와 관련된 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다. 즉, 제어부(330)는 사용자의 발화 의도가 특정 날짜를 지칭하여 특정 방송 프로그램의 문의를 포함하는 경우, 특정 방송 프로그램의 방송 시간 검색 및 특정 방송 프로그램의 유사 방송 프로그램에 대한 검색 중 적어도 하나와 관련된 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
이 경우, 제어부(330)는 특정 방송 프로그램의 방송 시간 검색과 관련된 추가 질문을 먼저 생성하고, 디스플레이 장치(100)로부터 부정의 의미를 갖는 텍스트 정보가 수신되면 유사 방송 프로그램에 대한 검색과 관련된 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 "○○○(방송 프로그램 명칭) 몇 시에 시작해?"에 대응되는 텍스트 정보가 수신된 경우, 제어부(330)는 "○○○(방송 프로그램 명칭) 몇 시에 시작해?"의 발화 의도는 ○○○(방송 프로그램 명칭)의 방송 시간 검색을 요청하는 것으로 판단하고, EPG 정보를 참조하여 ○○○(방송 프로그램 명칭)의 방송 시간을 검색할 수 있다. 검색 결과, ○○○(방송 프로그램 명칭)가 현재 방송 중인 경우, 제어부(330)는 "이미 ○○(시간) 전에 시작했습니다. 채널을 변경하시겠습니까?"를 텍스트 형식으로 변환하여 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "이미 ○○(시간) 전에 시작했습니다. 채널을 변경하시겠습니까?"를 음성으로 출력하거나, "이미 ○○(시간) 전에 시작했습니다. 채널을 변경하시겠습니까?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경 요청인 것으로 판단하고, ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널을 변경할 수 있다.
이와 같이. 제어부(330)는 컨텐츠 검색이 특정 컨텐츠의 방송 시간 문의와 관련되고, 검색된 특정 컨텐츠가 현재 방송 중인 경우 특정 컨텐츠를 제공하는 채널로 채널 변경을 문의하기 위한 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 "○○○(방송 프로그램 명칭) 몇 살까지 볼 수 있어?"에 대응되는 텍스트 정보가 수신된 경우, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 "○○○(방송 프로그램 명칭) 몇 살까지 볼 수 있어?"의 발화 의도는 ○○○(방송 프로그램 명칭)의 시청 등급 검색을 요청하는 것으로 판단할 수 있다. 이 경우, 제어부(330)는 EPG 정보를 참조하여 ○○○(방송 프로그램 명칭)의 시청 등급을 검색하고, "○(나이) 이상부터 시청 가능한 방송 프로그램입니다. 시청하시겠습니까?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다.
이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "○(나이) 이상부터 시청 가능한 방송 프로그램입니다. 시청하시겠습니까?"를 음성으로 출력하거나, "○(나이) 이상부터 시청 가능한 방송 프로그램입니다. 시청하시겠습니까?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경 요청인 것으로 판단하고, ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널 변경을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 ○○○(방송 프로그램 명칭)이 제공되는 채널로 채널을 변경할 수 있다.
이와 같이, 제어부(330)는 컨텐츠 검색이 특정 컨텐츠의 시청 등급과 관련된 경우, 특정 컨텐츠를 제공하는 채널로 채널 변경을 문의하기 위한 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다. 특히, 제어부(330)는 특정 컨텐츠의 시청 등급이 미성년자 관람 불가 등급인 경우, 특정 컨텐츠를 제공하는 채널로 채널 변경을 문의하기 위한 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 "○○○(방송 프로그램 명칭) 감독이 누구야?에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 "○○○(방송 프로그램 명칭) 감독이 누구야?"의 발화 의도는 ○○○(방송 프로그램 명칭)의 감독 검색을 요청하는 것으로 판단할 수 있다. 이 경우, 제어부(330)는 EPG 정보를 참조하여 ○○○(방송 프로그램 명칭)의 감독을 검색하고, "○○○(검색된 감독 명칭)입니다. 감독한 작품을 검색해 드릴까요?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "○○○(검색된 감독 명칭)입니다. 감독한 작품을 검색해 드릴까요?"를 음성으로 출력하거나, "○○○(검색된 감독 명칭)입니다. 감독한 작품을 검색해 드릴까요?을 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○○○(감독 명칭)이 만든 방송 프로그램에 대한 검색 요청인 것으로 판단하고, EPG 정보를 참조하여 ○○○(감독 명칭)이 제작한 방송 프로그램을 검색할 수 있다. 그리고, 제어부(330)는 "△△△(검색된 방송 프로그램 명칭)입니다"와 같은 답변을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "△△△(검색된 방송 프로그램 명칭)입니다"를 음성으로 출력하거나, "△△△(검색된 방송 프로그램 명칭)입니다"을 포함하는 UI 화면을 출력할 수 있다.
이와 같이, 제어부(330)는 컨텐츠 검색이 특정 컨텐츠와 관련된 인물 검색인 경우, 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 생성하고, 추가 질문을 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(330)는 발화 의도에 따라 검색된 인물이 1명인 경우, 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 "○○○(방송 프로그램 명칭) 시작하면 알려줘"에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 ○○○(방송 프로그램 명칭) 시작하면 알려줘"의 발화 의도는 ○○○(방송 프로그램 명칭)의 방송 시간 검색 및 알림 요청인 것으로 판단할 수 있다. 이 경우, 제어부(330)는 EPG 정보를 참조하여 ○○○(방송 프로그램 명칭)의 방송 시간을 검색하고, 검색된 방송 시간이 도래하면 "○○○(방송 프로그램 명칭)이 시작합니다. 채널을 변경할까요?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "○○○(방송 프로그램 명칭)이 시작합니다. 채널을 변경할까요?"를 음성으로 출력하거나, "○○○(방송 프로그램 명칭)이 시작합니다. 채널을 변경할까요?"을 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○○○(방송 프로그램 명칭)을 제공하는 채널로 채널 변경 요청인 것으로 판단하고, ○○○(방송 프로그램 명칭)을 제공하는 채널로 채널 변경을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 ○○○(방송 프로그램 명칭)을 제공하는 채널로 채널을 변경할 수 있다.
또 다른 예로, 디스플레이 장치(100)는 "내가 ○○○(요일)에 즐겨보던 거 하나?"에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 사용자가 ○○○(요일)에 자주 시청하는 방송 프로그램의 방송 시간 검색 요청인 것으로 판단할 수 있다. 한편, 사용자가 자주 시청하는 방송 프로그램에 대한 정보(가령, 방송 프로그램 명칭)는 저장부(320)에 기저장되어 있거나, 디스플레이 장치(100)로부터 수신받을 수 있다.
이에 따라, 제어부(330)는 EPG 정보를 참조하여 사용자가 자주 시청하는 방송 프로그램의 방송 시간을 검색하고, "○○○(방송 프로그램 명칭)은 ○(방송 시간)에 방송됩니다. 알림 설정 해드릴까요?"와 같은 추가 질문을 텍스트 형식으로 변환하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "○○○(방송 프로그램 명칭)은 ○(방송 시간)에 방송됩니다. 알림 설정 해드릴까요?"를 음성으로 출력하거나, "○○○(방송 프로그램 명칭)은 ○(방송 시간)에 방송됩니다. 알림 설정 해드릴까요?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○○○(방송 프로그램 명칭)에 대한 알림 설정 요청인 것으로 판단하고, ○○○(방송 프로그램 명칭)에 대한 알림 설정을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 ○○○(방송 프로그램 명칭)에 대한 알림을 설정할 수 있다.
또는, 제어부(330)는 EPG 정보를 참조하여 사용자가 자주 시청하는 방송 프로그램의 방송 시간을 검색하고, "○○○(방송 프로그램 명칭)은 지금 방송 중입니다. 채널 변경하시겠어요?"와 같은 추가 질문을 텍스트 형식으로 변환하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "○○○(방송 프로그램 명칭)은 지금 방송 중입니다. 채널 변경하시겠어요?"를 음성으로 출력하거나, "○○○(방송 프로그램 명칭)은 지금 방송 중입니다. 채널 변경하시겠어요?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○○○(방송 프로그램 명칭)을 제공하는 채널로 채널 변경 요청인 것으로 판단하고, ○○○(방송 프로그램 명칭)을 제공하는 채널로 채널을 변경하기 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 ○○○(방송 프로그램 명칭)을 제공하는 채널로 채널을 변경할 수 있다.
이와 같이, 제어부(330)는 컨텐츠 검색이 사용자가 자주 시청하는 컨텐츠 검색인 경우, 알림 설정 또는, 채널 변경을 문의하기 위한 추가 질문을 생성하고, 추가 질문을 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(330)는 현재 시간을 고려하여 기설정된 시간 이내에 검색된 컨텐츠의 방송 시간이 도래할 경우 알림 설정을 위한 추가 질문을 생성하고, 현재 방송 중인 경우 채널 변경을 문의하기 위한 추가 질문을 생성할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 "○○(채널 명)에서 지금 ○○(장르) 해?"에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 "○○(채널 명)에서 지금 ○○(장르) 해?"의 발화 의도는 ○○(채널 명)에서 장르가 ○○(장르)인 방송 프로그램의 방송 여부 검색인 것으로 판단할 수 있다. 이 경우, 제어부(330)는 EPG 정보를 참조하여 현재 ○○(채널 명)에서 장르가 ○○(장르)인 방송 프로그램이 방송하는지 여부를 판단할 수 있다.
판단 결과, 현재 ○○(채널 명)에서 장르가 ○○(장르)인 방송 프로그램이 방송되지 않는 경우, 제어부(330)는 ○○(채널 명)에서 현재 방송 중인 방송 프로그램을 검색하고, "○○(채널 명)에서는 지금 ○○○(검색된 방송 프로그램 명칭)을 방송하고 있습니다. ○○(장르)를 찾아드릴까요?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "○○(채널 명)에서는 지금 ○○○(검색된 방송 프로그램 명칭)을 방송하고 있습니다. ○○(장르)를 찾아드릴까요?"를 음성으로 출력하거나, "○○(채널 명)에서는 지금 ○○○(검색된 방송 프로그램 명칭)을 방송하고 있습니다. ○○(장르)를 찾아드릴까요?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "예"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 장르가 ○○(장르)인 방송 프로그램의 검색 요청인 것으로 판단하고, EPG 정보를 참조하여 장르가 ○○(장르)인 방송 프로그램을 검색할 수 있다. 그리고, 제어부(330)는 "△△△(추가 검색된 방송 프로그램 명칭)입니다"를 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "△△△(추가 검색된 방송 프로그램 명칭)입니다"를 음성으로 출력하거나, "△△△(추가 검색된 방송 프로그램 명칭)입니다"를 포함하는 UI 화면을 출력할 수 있다.
이와 같이, 제어부(330)는 사용자의 발화 의도가 특정 상황 즉, 채널 및 시간대를 지정하고 특정 컨텐츠의 검색 요청이지만, 발화 의도에 부합하는 컨텐츠가 검색되지 않은 경우 다른 컨텐츠의 추가 검색을 위한 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 "녹화한 방송 리스트 보여줘"에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 "녹화한 방송 리스트 보여줘"의 발화 의도는 녹화된 방송 프로그램에 대한 리스트 출력을 요청하는 것으로 판단할 수 있다. 그리고, 제어부(330)는 디스플레이 장치(100)가 녹화된 방송 프로그램에 대한 리스트를 출력하기 위한 제어 명령 및 "녹화된 방송 프로그램은 다음과 같습니다. 몇 번을 보시겠어요?"와 같은 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "녹화된 방송 프로그램은 다음과 같습니다. 몇 번을 보시겠어요?"를 음성으로 출력하거나, "녹화된 방송 프로그램은 다음과 같습니다. 몇 번을 보시겠어요?"을 포함하는 UI 화면을 출력할 수 있다. 그리고, 디스플레이 장치(100)는 녹화된 방송 프로그램에 대한 리스트를 출력할 수 있다.
이후, "세 번째"와 같은 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 장르가 녹화된 방송 프로그램에 대한 리스트에서 세 번째 나열된 방송 프로그램의 재생을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 녹화된 방송 프로그램에 대한 리스트에서 세 번째 나열된 방송 프로그램을 재생할 수 있다.
또 다른 예로, 디스플레이 장치(100)로부터 "○○○(방송 프로그램 명칭) 왜 이렇게 재미없어?"에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 저장부(320)에 저장된 예문 및 해당 예문을 해석하기 위한 정보를 이용하여 "○○○(방송 프로그램 명칭) 왜 이렇게 재미없어?"의 발화 의도는 다른 방송 프로그램으로의 채널 변경인 것으로 판단할 수 있다. 이 경우, 제어부(330)는 "아직 초반부라서 그렇습니다. 채널을 변경하시겠습니까?"와 같은 추가 질문을 텍스트 형식으로 변환하여 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "아직 초반부라서 그렇습니다. 채널을 변경하시겠습니까?"를 음성으로 출력하거나, "아직 초반부라서 그렇습니다. 채널을 변경하시겠습니까?"를 포함하는 UI 화면을 출력할 수 있다.
이후, "○번(채널 번호)로 변경해줘"에 대응되는 텍스트 정보가 수신되면, 제어부(330)는 발화 의도는 ○번(채널 번호)으로 채널 변경인 것으로 판단하고, ○번(채널 번호)으로 채널 변경을 위한 제어 명령을 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 ○번(채널 번호)으로 채널을 변경할 수 있다.
이와 같이, 제어부(330)는 사용자가 현재 시청하는 방송 프로그램을 명확히 인지한 경우, 다른 방송 프로그램의 시청 여부를 문의하기 위한 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다. 이 경우, 제어부(330)는 사용자가 현재 시청하는 방송 프로그램의 런닝 타임 중 기설정된 분량(가령, 전체 분량의 1/3)이 방송되지 않은 경우, 상기와 같은 추가 질문을 생성하여 디스플레이 장치(100)로 전송할 수 있다.
이와 같이, 제2 서버(300)는 사용자의 발화 의도에 따라 추가 질문을 생성하여 디스플레이 장치(100)로 전송하며, 디스플레이 장치(100)는 제2 서버(300)로부터 수신된 추가 질문을 시스템 응답으로 출력할 수 있다. 그리고, 제2 서버(300)는 추가 질문에 대한 사용자의 음성에 포함된 발화 의도를 분석하고, 발화 의도에 대응되는 기능을 수행하거나, 발화 의도에 대응되는 기능을 수행하도록 디스플레이 장치(100)를 제어할 수 있다.
한편, 상술한 예에서는 제2 서버(300)는 사용자의 음성에 대한 답변 및 추가 질문을 텍스트 형식으로 표현하여 디스플레이 장치(100)로 전송하는 것으로 설명하였으나 이는 일 예에 불과하다. 제2 서버(300)는 디스플레이 장치(100)에서 시스템 응답을 출력할 수 있는 다양한 형태로 사용자의 음성에 대한 답변 및 추가 질문에 대한 정보를 디스플레이 장치(100)로 전송할 수 있다.
이하에서는, 도 6 내지 도 9를 참조하여 본 발명의 다양한 실시 예를 설명하기로 한다. 구체적으로, 도 6 내지 도 9는 디스플레이 장치(100)에서 사용자의 발화 의도에 따른 시스템 응답으로 추가 질문을 출력하는 다양한 예들을 설명하기 위한 도면들이다.
먼저, 시스템 응답은 사용자의 발화 의도가 디스플레이 장치(100)의 기능과 관련된 경우, 기능 수행 여부를 확인하기 위한 추가 질문을 포함할 수 있다.
예를 들어, 도 6a와 같이, 사용자가 "설정 초기화"라고 발화한 경우를 가정한다. 이 경우, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 도 6b와 같이, "모든 설정을 초기화하시겠습니까?"라는 텍스트를 포함하는 UI 화면(610)을 시스템 응답으로 출력할 수 있다.
이후, 도 6c와 같이, 사용자가 "예"라고 발화하면, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 디스플레이 장치(100)의 모든 세팅 상태를 초기화할 수 있다. 여기에서, 세팅은 선호 채널, 화면 설정 등 디스플레이 장치(100)에서 설정 가능한 모든 세팅을 포함할 수 있다.
비록, 도 6에서는 사용자가 "설정 초기화"라고 발화한 경우를 설명하였으나 이는 일 예에 불과하다. 즉, 제어부(150)는 "TV 그만 볼래", "10시까지만 TV 볼래"와 같이 사용자의 발화 의도가 디스플레이 장치(100)의 기능과 관련된 경우, 제2 서버(300)로부터 수신된 응답 정보에 기초하여 기능 수행 여부를 확인하기 위한 추가 질문을 시스템 응답으로 출력할 수 있다.
또한, 시스템 응답은 사용자의 발화 의도가 디스플레이 장치의 기능 수행과 관련되고 기능을 수행하기 전에 선행 기능 수행이 필요한 경우, 선행 기능 수행과 관련된 추가 질문을 포함할 수 있다. 즉, 제어부(150)는 "7시에 알람 맞춰줘"와 같이 사용자의 발화 의도가 디스플레이 장치의 기능 수행과 관련되고 기능을 수행하기 전에 선행 기능 수행이 필요한 경우 선행 기능 수행과 관련된 추가 질문을 시스템 응답으로 출력할 수 있다.
그리고, 제어부(150)는 제2 서버(300)로부터 재차 수신된 응답 정보에 기초하여, "TV 그만 볼래", "10시까지만 TV 볼래", "7시에 알람 맞춰줘" 등과 같은 추가 질문에 대한 사용자의 음성에 대응되는 기능을 수행할 수 있다. 이에 대해서는 도 5와 함께 상술한바 있다는 점에서 중복 설명은 생략하기로 한다.
또한, 시스템 응답은 사용자의 발화 의도가 컨텐츠 검색과 관련된 경우, 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 포함할 수 있다.
구체적으로, 시스템 응답은 특정 컨텐츠의 방송 시간 문의와 관련된 경우, 특정 컨텐츠의 방송 시간 검색 및 특정 컨텐츠의 유사 컨텐츠에 대한 검색 중 적어도 하나와 관련된 추가 질문을 포함할 수 있다.
예를 들어, 도 7a와 같이, 사용자가 "오늘 ○○○(방송 프로그램 명칭) 몇 시에 해?"라고 발화한 경우를 가정한다. 이 경우, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 도 7b와 같이, "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 언제 하는지 알아봐 드릴까요?"라는 텍스트를 포함하는 UI 화면(710)을 시스템 응답으로 출력할 수 있다.
이후, 도 7c와 같이, 사용자가 "예"라고 발화하면, 도 7d와 같이, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "○○○(방송 프로그램 명칭)은 ○요일 ○시입니다"라는 텍스트를 포함하는 UI 화면(720)을 시스템 응답으로 출력할 수 있다.
다른 예로, 도 8a와 같이, 사용자가 "오늘 ○○○(방송 프로그램 명칭) 몇 시에 해?"라고 발화한 경우를 가정한다. 이 경우, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 도 8b와 같이, "오늘은 ○○○(방송 프로그램 명칭)이 방송되지 않습니다. 시청 가능한 다른 방송 프로그램을 찾아봐 드릴까요?"라는 텍스트를 포함하는 UI 화면(810)을 시스템 응답으로 출력할 수 있다.
이후, 도 8c와 같이, 사용자가 "예"라고 발화하면, 도 8d와 같이, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "△△△(방송 프로그램 명칭)은 △요일 △시입니다"라는 텍스트를 포함하는 UI 화면(820)을 시스템 응답으로 출력할 수 있다.
또한, 시스템 응답은 컨텐츠 검색이 특정 컨텐츠와 관련된 인물 검색인 경우, 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 포함할 수 있다.
예를 들어, 도 9a와 같이, 사용자가 "○○○(방송 프로그램 명칭) 감독이 누구야?"라고 발화한 경우를 가정한다. 이 경우, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 도 9b와 같이, "○○(검색된 감독 명칭)입니다. 감독한 작품을 검색해 드릴까요?"라는 텍스트를 포함하는 UI 화면(910)을 시스템 응답으로 출력할 수 있다.
이후, 도 9c와 같이, 사용자가 "예"라고 발화하면, 도 9d와 같이, 제어부(150)는 제2 서버(300)로부터 수신된 응답 정보에 기초하여 "△△△(검색된 방송 프로그램 명칭)입니다"라는 텍스트를 포함하는 UI 화면(920)을 시스템 응답으로 출력할 수 있다.
비록, 도 7 내지 도 9에서는 사용자가 "오늘 ○○○(방송 프로그램 명칭) 몇 시에 해?" 또는, "○○○(방송 프로그램 명칭) 감독이 누구야?"라고 발화한 경우를 설명하였으나 이는 일 예에 불과하다. 즉, 제어부(150)는 "내가 ○○○(요일)에 즐겨보던 거 하나?", "○○(채널 명)에서 지금 ○○(장르) 해?" 등과 같이 사용자의 발화 의도가 컨텐츠 검색과 관련된 경우, 제2 서버(300)로부터 수신된 응답 정보에 기초하여 기능 수행 여부를 확인하기 위한 추가 질문을 시스템 응답으로 출력할 수 있다. 그리고, 제어부(150)는 제2 서버(300)로부터 재차 수신된 응답 정보에 기초하여, 각 추가 질문에 대한 사용자의 음성에 대응되는 기능을 수행할 수 있다. 이에 대해서는 도 5와 함께 상술한바 있다는 점에서 중복 설명은 생략하기로 한다.
도 10은 본 발명의 일 실시 예에 따른 디스플레이 장치의 제어 방법을 설명하기 위한 흐름도이다.
먼저, 사용자의 음성을 수집한다(S1010).
이후, 사용자의 음성을 제1 서버로 전송하고, 제1 서버로부터 사용자의 음성에 대응되는 텍스트 정보를 수신한다(S1020).
그리고, 수신된 텍스트 정보를 제2 서버로 전송한다(S1030).
그리고, 텍스트 정보에 대응되는 응답 정보가 제2 서버로부터 수신되면, 응답 정보에 기초하여 사용자의 발화 의도에 대응되는 시스템 응답을 출력한다(S1040). 이 경우, 시스템 응답은, 사용자의 발화 의도가 디스플레이 장치의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 포함한다.
구체적으로, 시스템 응답은, 사용자의 발화 의도가 디스플레이 장치의 기능 수행과 관련된 경우, 기능 수행 여부를 확인하기 위한 추가 질문을 포함할 수 있다.
또한, 시스템 응답은, 사용자의 발화 의도가 디스플레이 장치의 기능 수행과 관련되고 기능을 수행하기 전에 선행 기능 수행이 필요한 경우, 선행 기능 수행과 관련된 추가 질문을 포함할 수 있다.
그리고, 시스템 응답은, 사용자의 발화 의도가 상기 컨텐츠 검색과 관련된 경우, 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 포함할 수 있다. 구체적으로, 시스템 응답은, 컨텐츠 검색이 특정 컨텐츠의 방송 시간 문의와 관련된 경우, 특정 컨텐츠의 방송 시간 검색 및 특정 컨텐츠의 유사 컨텐츠에 대한 검색 중 적어도 하나와 관련된 추가 질문을 포함할 수 있다. 또한, 시스템 응답은, 컨텐츠 검색이 특정 컨텐츠와 관련된 인물 검색인 경우, 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 포함할 수 있다.
디스플레이 장치에서 추가 질문을 출력하기 위한 방법 및 추가 질문에 대한 구체적인 실시 예에 대해서는 상술한 바 있다는 점에서, 구체적인 중복 설명은 생략하도록 한다.
한편, 본 발명에 따른 제어 방법을 순차적으로 수행하는 프로그램이 저장된 비일시적 판독 가능 매체(non-transitory computer readable medium)가 제공될 수 있다.
비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 디스플레이 장치 및 서버에 대해 도시한 상술한 블록도에서는 버스(bus)를 미도시하였으나, 디스플레이 장치 및 서버에서 각 구성요소 간의 통신은 버스를 통해 이루어질 수도 있다. 또한, 각 디바이스에는 상술한 다양한 단계를 수행하는 CPU, 마이크로 프로세서 등과 같은 프로세서가 더 포함될 수도 있다.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100 : 디스플레이 장치 110 : 출력부
120 : 음성수집부 130 : 제1 통신부
140 : 제2 통신부 150 : 제어부

Claims (12)

  1. 디스플레이 장치에 있어서,
    출력부;
    사용자의 음성을 수집하는 음성 수집부;
    상기 사용자의 음성을 제1 서버로 전송하고, 상기 제1 서버로부터 상기 사용자의 음성에 대응되는 텍스트 정보를 수신하는 제1 통신부;
    상기 수신된 텍스트 정보를 제2 서버로 전송하는 제2 통신부; 및,
    상기 텍스트 정보에 대응되는 응답 정보가 상기 제2 서버로부터 수신되면, 상기 응답 정보에 기초하여 상기 사용자의 발화 의도에 대응되는 시스템 응답을 출력하도록 상기 출력부를 제어하는 제어부;를 포함하며,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 상기 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 포함하는 것을 특징으로 하는 디스플레이 장치.
  2. 제1항에 있어서,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련된 경우, 상기 기능 수행 여부를 확인하기 위한 추가 질문을 포함하는 것을 특징으로 하는 디스플레이 장치.
  3. 제1항에 있어서,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련되고 상기 기능을 수행하기 전에 선행 기능 수행이 필요한 경우, 상기 선행 기능 수행과 관련된 추가 질문을 포함하는 것을 특징으로 하는 디스플레이 장치.
  4. 제1항에 있어서,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 컨텐츠 검색과 관련된 경우, 상기 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 포함하는 것을 특징으로 하는 디스플레이 장치.
  5. 제4항에 있어서,
    상기 시스템 응답은,
    상기 컨텐츠 검색이 특정 컨텐츠의 방송 시간 문의와 관련된 경우, 상기 특정 컨텐츠의 방송 시간 검색 및 상기 특정 컨텐츠의 유사 컨텐츠에 대한 검색 중 적어도 하나와 관련된 추가 질문을 포함하는 것을 특징으로 하는 디스플레이 장치.
  6. 제4항에 있어서,
    상기 시스템 응답은,
    상기 컨텐츠 검색이 특정 컨텐츠와 관련된 인물 검색인 경우, 상기 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 포함하는 것을 특징으로 하는 디스플레이 장치.
  7. 디스플레이 장치의 제어 방법에 있어서,
    사용자의 음성을 수집하는 단계;
    상기 사용자의 음성을 제1 서버로 전송하고, 상기 제1 서버로부터 상기 사용자의 음성에 대응되는 텍스트 정보를 수신하는 단계;
    상기 수신된 텍스트 정보를 제2 서버로 전송하는 단계; 및,
    상기 텍스트 정보에 대응되는 응답 정보가 상기 제2 서버로부터 수신되면, 상기 응답 정보에 기초하여 상기 사용자의 발화 의도에 대응되는 시스템 응답을 출력하는 단계;를 포함하며,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행 및 컨텐츠 검색 중 적어도 하나와 관련되는 경우, 상기 사용자의 발화 의도에 대응되는 기능 수행 및 컨텐츠 검색을 위한 추가 질문을 포함하는 것을 특징으로 하는 제어 방법.
  8. 제7항에 있어서,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련된 경우, 상기 기능 수행 여부를 확인하기 위한 추가 질문을 포함하는 것을 특징으로 하는 제어 방법.
  9. 제7항에 있어서,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 디스플레이 장치의 기능 수행과 관련되고 상기 기능을 수행하기 전에 선행 기능 수행이 필요한 경우, 상기 선행 기능 수행과 관련된 추가 질문을 포함하는 것을 특징으로 하는 제어 방법.
  10. 제7항에 있어서,
    상기 시스템 응답은,
    상기 사용자의 발화 의도가 상기 컨텐츠 검색과 관련된 경우, 상기 컨텐츠 검색 결과에 따라 예상되는 추가 질문을 포함하는 것을 특징으로 하는 제어 방법.
  11. 제10항에 있어서,
    상기 시스템 응답은,
    상기 컨텐츠 검색이 특정 컨텐츠의 방송 시간 문의와 관련된 경우, 상기 특정 컨텐츠의 방송 시간 검색 및 상기 특정 컨텐츠의 유사 컨텐츠에 대한 검색 중 적어도 하나와 관련된 추가 질문을 포함하는 것을 특징으로 하는 제어 방법.
  12. 제10항에 있어서,
    상기 시스템 응답은,
    상기 컨텐츠 검색이 특정 컨텐츠와 관련된 인물 검색인 경우, 상기 인물과 관련된 타 컨텐츠 검색을 문의하기 위한 추가 질문을 포함하는 것을 특징으로 하는 제어 방법.

KR1020130001752A 2013-01-07 2013-01-07 디스플레이 장치 및 그의 제어 방법 KR20140093303A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020130001752A KR20140093303A (ko) 2013-01-07 2013-01-07 디스플레이 장치 및 그의 제어 방법
US14/148,956 US20140195230A1 (en) 2013-01-07 2014-01-07 Display apparatus and method for controlling the same
CN201480004205.5A CN104904227A (zh) 2013-01-07 2014-01-07 显示设备以及用于控制显示设备的方法
PCT/KR2014/000165 WO2014107101A1 (en) 2013-01-07 2014-01-07 Display apparatus and method for controlling the same
EP14735189.4A EP2941894A4 (en) 2013-01-07 2014-01-07 DISPLAY APPARATUS AND METHOD FOR CONTROLLING THE SAME

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130001752A KR20140093303A (ko) 2013-01-07 2013-01-07 디스플레이 장치 및 그의 제어 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020170038702A Division KR20170038772A (ko) 2017-03-27 2017-03-27 디스플레이 장치 및 그의 제어 방법

Publications (1)

Publication Number Publication Date
KR20140093303A true KR20140093303A (ko) 2014-07-28

Family

ID=51061665

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130001752A KR20140093303A (ko) 2013-01-07 2013-01-07 디스플레이 장치 및 그의 제어 방법

Country Status (5)

Country Link
US (1) US20140195230A1 (ko)
EP (1) EP2941894A4 (ko)
KR (1) KR20140093303A (ko)
CN (1) CN104904227A (ko)
WO (1) WO2014107101A1 (ko)

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
EP3809407A1 (en) 2013-02-07 2021-04-21 Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
KR101922663B1 (ko) 2013-06-09 2018-11-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
JP2015133047A (ja) * 2014-01-15 2015-07-23 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
KR102281341B1 (ko) * 2015-01-26 2021-07-23 엘지전자 주식회사 싱크 디바이스 및 그 제어 방법
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
KR102505347B1 (ko) * 2015-07-16 2023-03-03 삼성전자주식회사 사용자 관심 음성 알림 장치 및 방법
CN105224278B (zh) * 2015-08-21 2019-02-22 百度在线网络技术(北京)有限公司 语音交互服务处理方法及装置
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US11587559B2 (en) * 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
KR102453603B1 (ko) 2015-11-10 2022-10-12 삼성전자주식회사 전자 장치 및 그 제어 방법
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US11170768B2 (en) * 2017-04-17 2021-11-09 Samsung Electronics Co., Ltd Device for performing task corresponding to user utterance
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
EP3401797A1 (en) * 2017-05-12 2018-11-14 Samsung Electronics Co., Ltd. Speech navigation for multilingual web pages
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
KR102392087B1 (ko) * 2017-07-10 2022-04-29 삼성전자주식회사 원격 조정 장치 및 원격 조정 장치의 사용자 음성 수신방법
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
JP7012939B2 (ja) * 2017-12-07 2022-01-31 トヨタ自動車株式会社 サービス提供装置及びサービス提供プログラム
KR102532300B1 (ko) * 2017-12-22 2023-05-15 삼성전자주식회사 어플리케이션 실행 방법 및 이를 위한 장치
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
EP3739892A4 (en) * 2018-01-08 2021-08-04 LG Electronics Inc. DISPLAY DEVICE AND PROVIDED SYSTEM
US11290802B1 (en) * 2018-01-30 2022-03-29 Amazon Technologies, Inc. Voice detection using hearable devices
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
CN109271130B (zh) * 2018-09-12 2021-12-17 网易(杭州)网络有限公司 音频播放方法、介质、装置和计算设备
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
CN109326298B (zh) * 2018-10-16 2021-06-15 竞技世界(北京)网络技术有限公司 一种游戏语音聊天音量自适应调节方法
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
CN110162611B (zh) * 2019-04-23 2021-03-26 苏宁金融科技(南京)有限公司 一种智能客服应答方法及系统
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11061958B2 (en) 2019-11-14 2021-07-13 Jetblue Airways Corporation Systems and method of generating custom messages based on rule-based database queries in a cloud platform
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11474773B2 (en) * 2020-09-02 2022-10-18 Google Llc Automatic adjustment of muted response setting
CN112272320B (zh) * 2020-10-20 2022-04-15 Vidaa美国公司 一种显示设备及其重名检测方法

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) * 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US6469753B1 (en) * 1996-05-03 2002-10-22 Starsight Telecast, Inc. Information system
CN100442844C (zh) * 1996-05-03 2008-12-10 星视电视广播公司 信息系统
EP0940980A2 (en) * 1998-03-05 1999-09-08 Matsushita Electric Industrial Co., Ltd. User interface apparatus and broadcast receiving apparatus
CN1867068A (zh) * 1998-07-14 2006-11-22 联合视频制品公司 交互式电视节目导视系统及其方法
KR100305320B1 (ko) * 1998-10-30 2001-11-22 전주범 음성다중텔레비전에서의음성제어방법
US6314398B1 (en) * 1999-03-01 2001-11-06 Matsushita Electric Industrial Co., Ltd. Apparatus and method using speech understanding for automatic channel selection in interactive television
US6553345B1 (en) * 1999-08-26 2003-04-22 Matsushita Electric Industrial Co., Ltd. Universal remote control allowing natural language modality for television and multimedia searches and requests
US6622119B1 (en) * 1999-10-30 2003-09-16 International Business Machines Corporation Adaptive command predictor and method for a natural language dialog system
JP2001197379A (ja) * 2000-01-05 2001-07-19 Matsushita Electric Ind Co Ltd 機器設定装置、機器設定システムおよび機器設定処理プログラムを記録した記録媒体
US7096185B2 (en) * 2000-03-31 2006-08-22 United Video Properties, Inc. User speech interfaces for interactive media guidance applications
JP2002041276A (ja) * 2000-07-24 2002-02-08 Sony Corp 対話型操作支援システム及び対話型操作支援方法、並びに記憶媒体
US20030061029A1 (en) * 2001-08-29 2003-03-27 Efraim Shaket Device for conducting expectation based mixed initiative natural language dialogs
JP3997459B2 (ja) * 2001-10-02 2007-10-24 株式会社日立製作所 音声入力システムおよび音声ポータルサーバおよび音声入力端末
US7984468B2 (en) * 2003-11-06 2011-07-19 United Video Properties, Inc. Systems and methods for providing program suggestions in an interactive television program guide
US20060041926A1 (en) * 2004-04-30 2006-02-23 Vulcan Inc. Voice control of multimedia content
US20060075429A1 (en) * 2004-04-30 2006-04-06 Vulcan Inc. Voice control of television-related information
JP2005348055A (ja) * 2004-06-02 2005-12-15 Toshiba Corp ユーザプロファイル編集装置及びユーザプロファイル編集方法並びにプログラム
TWI334703B (en) * 2004-09-02 2010-12-11 Inventec Multimedia & Telecom Voice-activated remote control system
US20060235701A1 (en) * 2005-04-13 2006-10-19 Cane David A Activity-based control of a set of electronic devices
US20070118857A1 (en) * 2005-11-18 2007-05-24 Sbc Knowledge Ventures, L.P. System and method of recording video content
US8079044B1 (en) * 2006-04-10 2011-12-13 Rovi Guides, Inc. Systems and methods for providing parental control asset searching
US9318108B2 (en) * 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8073681B2 (en) * 2006-10-16 2011-12-06 Voicebox Technologies, Inc. System and method for a cooperative conversational voice user interface
US20080104127A1 (en) * 2006-11-01 2008-05-01 United Video Properties, Inc. Presenting media guidance search results based on relevancy
KR20080114274A (ko) * 2007-06-27 2008-12-31 엘지전자 주식회사 디지털 방송 신호와 상기 신호를 처리하는 방법 및 수신기
US20090025027A1 (en) * 2007-07-20 2009-01-22 Michael Craner Systems & methods for allocating bandwidth in switched digital video systems based on interest
US8140335B2 (en) * 2007-12-11 2012-03-20 Voicebox Technologies, Inc. System and method for providing a natural language voice user interface in an integrated voice navigation services environment
US8296144B2 (en) * 2008-06-04 2012-10-23 Robert Bosch Gmbh System and method for automated testing of complicated dialog systems
JP4768057B2 (ja) * 2009-08-06 2011-09-07 シャープ株式会社 コンテンツ視聴装置及びコンテンツ表示装置
US8522283B2 (en) * 2010-05-20 2013-08-27 Google Inc. Television remote control data transfer
US20120089392A1 (en) * 2010-10-07 2012-04-12 Microsoft Corporation Speech recognition user interface
JP5771002B2 (ja) * 2010-12-22 2015-08-26 株式会社東芝 音声認識装置、音声認識方法および音声認識装置を搭載したテレビ受像機
US20140074466A1 (en) * 2012-09-10 2014-03-13 Google Inc. Answering questions using environmental context
KR20140087717A (ko) 2012-12-31 2014-07-09 삼성전자주식회사 디스플레이 장치 및 제어 방법

Also Published As

Publication number Publication date
EP2941894A4 (en) 2016-01-13
US20140195230A1 (en) 2014-07-10
EP2941894A1 (en) 2015-11-11
CN104904227A (zh) 2015-09-09
WO2014107101A1 (en) 2014-07-10

Similar Documents

Publication Publication Date Title
KR20140093303A (ko) 디스플레이 장치 및 그의 제어 방법
KR101309794B1 (ko) 디스플레이 장치, 디스플레이 장치의 제어 방법 및 대화형 시스템
US20190333515A1 (en) Display apparatus, method for controlling the display apparatus, server and method for controlling the server
US9520133B2 (en) Display apparatus and method for controlling the display apparatus
KR20140089862A (ko) 디스플레이 장치 및 그의 제어 방법
KR102030114B1 (ko) 서버 및 그의 제어 방법
US9230559B2 (en) Server and method of controlling the same
KR20180014137A (ko) 디스플레이 장치 및 그의 제어 방법
KR102091006B1 (ko) 디스플레이 장치 및 그의 제어 방법
KR20170038772A (ko) 디스플레이 장치 및 그의 제어 방법
KR20190140890A (ko) 디스플레이 장치 및 디스플레이 장치의 제어 방법
KR20160022326A (ko) 디스플레이 장치 및 그의 제어 방법
KR102182689B1 (ko) 서버 및 그의 제어 방법
KR102118195B1 (ko) 서버 및 그의 제어 방법
KR20200133697A (ko) 서버 및 그의 제어 방법

Legal Events

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