[go: up one dir, main page]

KR20140089871A - 대화형 서버, 그 제어 방법 및 대화형 시스템 - Google Patents

대화형 서버, 그 제어 방법 및 대화형 시스템 Download PDF

Info

Publication number
KR20140089871A
KR20140089871A KR1020130001829A KR20130001829A KR20140089871A KR 20140089871 A KR20140089871 A KR 20140089871A KR 1020130001829 A KR1020130001829 A KR 1020130001829A KR 20130001829 A KR20130001829 A KR 20130001829A KR 20140089871 A KR20140089871 A KR 20140089871A
Authority
KR
South Korea
Prior art keywords
speech
utterance
information
word
received
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
KR1020130001829A
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 KR1020130001829A priority Critical patent/KR20140089871A/ko
Priority to EP13199897.3A priority patent/EP2753054B1/en
Priority to US14/149,296 priority patent/US10891968B2/en
Priority to CN202211532442.1A priority patent/CN115793945A/zh
Priority to CN201710749861.3A priority patent/CN107564519B/zh
Priority to CN202210035613.3A priority patent/CN114360543B/zh
Priority to CN201410006748.2A priority patent/CN103914234A/zh
Publication of KR20140089871A publication Critical patent/KR20140089871A/ko
Priority to US17/112,170 priority patent/US11854570B2/en
Priority to US18/512,348 priority patent/US20240096345A1/en
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4936Speech interaction details
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/06Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/35Aspects of automatic or semi-automatic exchanges related to information services provided via a voice call
    • H04M2203/355Interactive dialogue design tools, features or methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

대화형 서버, 그 제어 방법 및 대화형 시스템이 개시된다. 본 발명에 따른 대화형 서버는 디스플레이 장치와 통신을 수행하여 발화 음성 신호를 수신하는 통신부, 디스플레이 장치로부터 수신된 발화 음성 신호에 대한 발화 이력 정보를 저장하는 저장부, 수신된 발화 음성 신호로부터 발화 요소를 추출하는 추출부 및 저장부에 저장된 발화 이력 정보 및 추출된 발화 요소에 기초하여 응답 정보를 생성하고, 생성된 응답 정보를 디스플레이 장치로 전송하는 제어부를 포함한다. 이에 따라, 대화형 서버는 다양한 사용자의 발화 음성에 대해서 사용자의 의도를 파악하고, 그에 따른 응답 정보를 생성하여 디스플레이 장치로 제공할 수 있다.

Description

대화형 서버, 그 제어 방법 및 대화형 시스템{Interactive server, control method thereof and interactive system}
본 발명은 대화형 서버, 그 제어 방법 및 대화형 시스템에 관한 것으로써, 보다 상세하게는 사용자의 다양한 발화에 대응되는 응답 정보를 제공하기 위한 대화형 서버, 그 제어 방법 및 대화형 시스템에 관한 것이다.
일반적으로, 대화형 시스템에서 음성 인식이 가능한 디스플레이 장치는 사용자의 발화 음성을 수집하고, 그 수집한 발화 음성을 네트워크를 통해 연결된 외부 서버로 전송한다. 발화 음성을 수신한 외부 서버는 발화 음성을 분석하여 사용자의 의도를 파악하고, 그에 따른 응답 정보를 생성하여 디스플레이 장치로 전송한다. 이에 따라, 디스플레이 장치는 외부 서버로부터 수신한 응답 정보에 기초하여 사용자의 발화 음성에 대응하는 기능을 실행하거나 정보를 제공할 수 있다.
그러나, 이 같은 종래의 대화형 시스템은 사용자의 발화 음성을 분석하고, 그 분석 결과에 기초하여 사용자의 의도를 파악하는데 한계가 있다. 예를 들어, "제1 컨텐츠 보여줘"와 같이 지칭하는 대상이 명확한 발화 음성의 경우, 외부 서버는 이 같은 발화 음성을 분석하여 사용자의 의도를 올바르게 파악하고, 그에 따른 응답 정보를 생성하여 디스플레이 장치로 전송할 수 있다. 따라서, 디스플레이 장치는 응답 정보에 기초하여 사용자가 요청한 제1 컨텐츠를 디스플레이할 수 있다.
그러나, "이거 보여줘"와 같이 사용자의 발화가 모호한 경우, 외부 서버는 이 같은 발화 음성으로부터 사용자의 의도를 명확하게 파악하지 못하는 문제가 있다. 다시 말해, 종래의 대화형 시스템은 기정의된 발화 음성에 대해서만 사용자의 의도를 파악하고 그에 따른 동작을 수행하거나 정보를 제공하기 때문에 사용자의 발화에 제약이 따르는 문제가 있다.
본 발명은 상술한 필요성에 따라 안출된 것으로, 본 발명의 목적은, 대화형 시스템에서 다양한 사용자의 발화에 대응되는 동작을 수행하도록 함을 목적으로 한다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 대화형 서버는 디스플레이 장치와 통신을 수행하여 발화 음성 신호를 수신하는 통신부, 상기 디스플레이 장치로부터 수신된 발화 음성 신호에 대한 발화 이력 정보를 저장하는 저장부, 상기 수신된 발화 음성 신호로부터 발화 요소를 추출하는 추출부 및 상기 저장부에 저장된 발화 이력 정보 및 상기 추출된 발화 요소에 기초하여 응답 정보를 생성하고, 상기 생성된 응답 정보를 디스플레이 장치로 전송하는 제어부를 포함한다.
그리고, 상기 제어부는, 상기 저장부에 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 상기 발화 요소에 대응되는 실행어 및 명령어를 조합하여 상기 응답 정보를 생성하고, 상기 저장부에 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 저장부에 저장된 발화 이력 정보에 기초하여 상기 추출된 발화 요소에 대응되는 실행어 및 명령어를 추정하고, 추정된 실행어 및 명령어를 조합하여 상기 응답 정보를 생성할 수 있다.
또한, 상기 발화 음성 신호는 제1 발화 요소 및 제2 발화 요소를 포함하며, 상기 제어부는, 상기 저장부에 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보를 획득하고, 상기 획득된 발화 이력 정보 내에서 상기 제1 발화 요소에 대응되는 실행어 및 상기 제2 발화 요소에 대응되는 명령어를 상기 발화 음성 신호에 대응되는 실행어 및 명령어로 추정할 수 있다.
그리고, 상기 제어부는, 상기 저장부에 저장된 발화 이력 정보 중 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보가 저장되어 있지 않으면, 상기 응답 정보를 생성하지 않을 수 있다.
또한, 상기 제어부는, 상기 발화 음성 신호 내에 제1 발화 요소 및 제2 발화 요소 중 적어도 하나가 포함되어 있지 않으면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보에 기초하여 상기 발화 음성 신호에 대응되는 응답 정보를 생성할 수 있다.
그리고, 상기 수신된 발화 음성 신호를 텍스트 정보로 변환하는 음성 처리부를 더 포함할 수 있다.
한편, 본 발명의 일 실시 예에 따르면, 대화형 서버의 제어 방법에 있어서, 상기 방법은 디스플레이 장치로부터 발화 음성 신호를 수신하는 단계, 상기 수신된 발화 음성 신호로부터 발화 요소를 추출하는 단계, 상기 디스플레이 장치로부터 수신된 발화 음성 신호와 관련하여 기저장된 발화 이력 정보 및 상기 추출된 발화 요소에 기초하여 응답 정보를 생성하는 단계 및 상기 생성된 응답 정보를 상기 디스플레이 장치로 전송하는 단계를 포함한다.
그리고, 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 존재하는지 여부를 판단하는 단계를 더 포함하며, 상기 생성하는 단계는, 상기 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 상기 발화 요소에 대응되는 실행어 및 명령어를 조합하여 응답 정보를 생성하고, 상기 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 기저장된 발화 이력 정보에 기초하여 상기 추출된 발화 요소에 대응되는 실행어 및 명령어를 추정하고, 상기 추정된 실행어 및 명령어를 조합하여 상기 응답 정보를 생성할 수 있다.
또한, 상기 발화 음성 신호는 제1 발화 요소 및 제2 발화 요소를 포함하며, 상기 생성하는 단계는, 상기 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보를 획득하고, 상기 획득된 발화 이력 정보 내에서 상기 제1 발화 요소에 대응되는 실행어 및 상기 제2 발화 요소에 대응되는 명령어를 상기 발화 음성 신호에 대응되는 실행어 및 명령어로 추정할 수 있다.
그리고, 상기 생성하는 단계는, 상기 발화 이력 정보 중 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보가 저장되어 있지 않으면, 상기 응답 정보를 생성하지 않을 수 있다.
또한, 상기 생성하는 단계는, 상기 발화 음성 신호 내에 제1 발화 요소 및 제2 발화 요소 중 적어도 하나가 포함되어 있지 않으면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보에 기초하여 상기 발화 음성 신호에 대응되는 응답 정보를 생성할 수 있다.
그리고, 상기 수신된 발화 음성 신호를 텍스트 정보로 변환하는 단계를 더 포함할 수 있다.
한편, 본 발명의 일 실시 예에 따르면, 대화형 시스템은 사용자의 발화 음성이 입력되면, 입력된 발화 음성에 대응되는 기능을 수행하는 디스플레이 장치 및 상기 디스플레이 장치로부터 발화 음성 신호가 수신되면, 상기 발화 음성 신호로부터 발화 요소를 추출하고, 기저장된 발화 이력 정보 및 상기 추출된 발화 요소에 기초하여 응답 정보를 생성하여 상기 디스플레이 장치로 전송하는 대화형 서버;를 포함하며, 상기 디스플레이 장치는, 상기 대화형 서버로부터 수신한 응답 정보에 기초하여 상기 사용자 의도에 대응되는 기능을 수행할 수 있다.
그리고, 상기 대화형 서버는, 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 상기 발화 요소에 대응되는 실행어 및 명령어에 기초하여 상기 응답 정보를 생성하고, 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 기저장된 발화 이력 정보에 기초하여 상기 추출된 발화요소에 대응되는 실행어 및 명령어를 추정하고, 추정된 실행어 및 명령어를 조합하여 상기 응답 정보를 생성할 수 있다.
이상과 같이 본 발명의 다양한 실시 예에 따르면, 대화형 시스템에서 대화형 서버는 다양한 사용자의 발화 음성에 대해서 사용자의 의도를 파악하고, 그에 따른 응답 정보를 생성하여 디스플레이 장치로 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 사용자 발화 음성에 적합한 응답 정보를 제공하는 대화형 시스템의 제1 예시도,
도 2는 본 발명의 또다른 실시예에 따른 사용자 발화 음성에 적합한 응답 정보를 제공하는 대화형 시스템의 제2 예시도,
도 3은 본 발명의 일 실시예에 따른 대화형 서버의 블록도,
도 4는 본 발명의 일 실시예에 따른 디스플레이 장치에서 화면상에 표시된 객체의 표시 상태에 기초하여 발화 정보를 생성하는 예시도,
도 5는 본 발명의 일 실시예에 따른 디스플레이 장치의 블록도,
도 6은 본 발명의 일 실시예에 따른 대화형 서버의 제어 방법에 대한 흐름도,
도 7은 본 발명의 일 실시에에 따른 대화형 서버에서 응답 정보를 생성하는 방법의 흐름도이다.
이하 첨부된 도면들을 참조하여 본 발명의 일시 예를 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 사용자 발화 음성에 적합한 응답 정보를 제공하는 대화형 시스템의 제1 예시도이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 대화형 시스템은 디스플레이 장치(100) 및 대화형 서버(200)를 포함한다.
디스플레이 장치(100)는 인터넷이 가능한 장치로써, 스마트 TV, 스마트폰과 같은 휴대폰, 데스크탑 PC, 노트북, 네비게이션 등과 같은 다양한 전자 장치로 구현될 수 있다. 이 같은 디스플레이 장치(100)는 사용자의 발화 음성이 입력되면, 입력된 사용자의 발화 음성에 대응되는 동작을 수행한다. 구체적으로, 디스플레이 장치(100)는 사용자의 발화 음성에 대응되는 응답 메시지를 출력하거나 또는 사용자의 발화 음성에 대응되는 기능을 수행할 수 있다. 즉, 디스플레이 장치(100)는 입력된 발화 음성을 분석하여 내부적으로 수행가능한지 여부를 판단하고, 그 판단 결과에 따라, 입력된 발화 음성에 대응되는 기능을 수행하거나 또는 대화형 서버(200)로부터 수신한 응답 정보에 기초하여 동작을 수행할 수 있다.
예를 들어, "볼륨 올려"라는 발화 음성이 입력되면, 디스플레이 장치(100)는 기저장된 제어 정보 중 입력된 발화 음성에 대응되는 제어 정보에 기초하여 볼륨을 조정할 수 있다.
또다른 예를 들어, "오늘 날씨 어때?"라는 발화 음성이 입력되면, 디스플레이 장치(100)는 입력된 발화 음성에 대한 발화 음성 신호를 대화형 서버(200)로 전송한다. 여기서, 발화 음성은 아날로그 신호가 될 수 있다. 따라서, 디스플레이 장치(100)는 아날로그 신호인 발화 음성을 디지털 신호(이하 발화 음성이라 함)로 변환하여 대화형 서버(200)로 전송한다. 이후, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 기초하여 오늘 날씨에 대한 결과를 음성 또는 텍스트 형태의 영상으로 출력할 수 있다.
또다른 예를 들어, "○○○(컨텐츠명) 보여줘"라는 발화 음성이 입력되면, 디스플레이 장치(100)는 입력된 발화 음성을 대화형 서버(200)로 전송한다. 이후, 대화형 서버(200)로부터 응답 정보가 수신되면, 디스플레이 장치(100)는 수신한 응답 정보에 기초하여 ○○○(컨텐츠명)에 대한 검색 리스트를 디스플레이할 수 있다. 여기서, 검색 리스트는 ○○○(컨텐츠명)에 대한 회차별 컨텐츠 정보를 포함할 수 있다. 따라서, 사용자는 검색 리스트 상에 표시된 회차별 컨텐츠 정보를 확인하여 자신이 시청하고자하는 회차의 ○○○(컨텐츠명)를 선택하기 위한 발화를 할 수 있다. 예를 들어, 사용자는 검색 리스트 상에 표시된 회차별 컨텐츠 정보 중 첫번째 컨텐츠 정보에 해당하는 ○○○(컨텐츠명)를 시청하기 위하여 "첫번째 거 보여줘"라는 발화를 할 수 있다. 따라서, 디스플레이 장치(100)는 "첫번째 거 보여줘"라는 발화 음성을 입력받아 이를 대화형 서버(200)로 전송한다. 이후, 대화형 서버(200)로부터 수신된 발화 음성에 대응되는 응답 정보가 수신되면, 디스플레이 장치(100)는 수신된 응답 정보에 기초하여 첫번째 컨텐츠 정보에 해당하는 ○○○(컨텐츠명)를 컨텐츠 제공 서버(300)로부터 수신하여 디스플레이할 수 있다.
대화형 서버(200)는 디스플레이 장치(100)로부터 수신한 사용자의 발화 음성에 기초하여 사용자의 의도에 적합한 응답 정보를 제공한다. 구체적으로, 대화형 서버(200)는 디스플레이 장치(100)로 사용자의 발화 음성이 수신되면, 수신된 발화 음성으로부터 발화 요소를 추출하고, 그 추출된 발화 요소에 기초하여 사용자의 발화 음성과 관련된 응답 정보를 생성하여 전송할 수 있다. 전술한 바와 같이, 디스플레이 장치(100)로부터 수신한 사용자의 발화 음성은 디지털 신호가 될 수 있다. 따라서, 대화형 서버(200)는 디지털 신호로 변환된 발화 음성이 수신되면, 이를 텍스트 정보로 생성한 후, 생성된 텍스트 정보를 분석하여 발화 요소를 추출하고, 추출된 발화 요소에 기초하여 사용자의 발화 음성에 대응되는 응답 정보를 생성할 수 있다. 디지털 신호로 변환된 발화 음성으로부터 텍스트 정보를 생성하는 것은 공지된 기술이기에 본 발명에서는 상세한 설명을 생략하도록 한다.
한편, 발화 요소는 사용자의 발화 음성 내에서 사용자가 요청한 동작을 수행하기 위한 핵심 키워드로써, 목적 영역(domain), 목적 기능(user action) 및 주요 특징(feature) 별로 추출된 발화 요소를 분류할 수 있다. 전술한 예와 같이, "오늘 날씨 어때?"라는 사용자의 발화 음성에 대한 텍스트 정보가 생성되면, 대화형 서버(200)는 "오늘", "날씨", "어때?"라는 발화 요소를 추출할 수 있다. 이후, 대화형 서버(200)는 추출된 발화 요소 중 "오늘" 및 "날씨"를 주요 특징(이하 실행 대상이라 함)에 대한 발화 요소(이하 제1 발화 요소라 함)로 분류하고, "어때?"를 목적 기능(이하 실행 명령이라 함)에 대한 발화 요소(이하 제2 발화 요소라 함)로 분류할 수 있다. 또한, 대화형 서버(200)는 추출된 발화 요소에 기초하여 목적 영역에 대한 발화 요소(이하 제3 발화 요소라 함)가 웹 서치라는 도메인에 속하는 것으로 분류할 수 있다. 이 같이, 사용자의 발화 음성에 대한 텍스트 정보로부터 제1 내지 제3 발화 요소가 분류되면, 대화형 서버(200)는 다양한 컨텐츠를 제공하는 외부 서버(400)로부터 날씨 정보를 제공받아, 이를 포함하는 응답 정보를 생성하여 디스플레이 장치(100)로 전송한다. 이에 따라, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 기초하여 오늘 날씨 정보를 음성 및 텍스트 중 적어도 하나를 통해 디스플레이할 수 있다.
한편, 대화형 서버(200)는 "첫번째 거 선택해줘"라는 발화 음성에 대한 텍스트 정보가 생성되면, 생성된 텍스트 정보로부터 "첫번째"라는 제1 발화 요소 및 "선택해줘"라는 제2 발화 요소를 추출할 수 있다. 이 같은 제1 및 제2 발화 요소가 추출되면, 대화형 서버(200)는 추출된 제1 및 제2 발화 요소에 기초하여 사용자 의도에 적합한 응답 정보를 생성할 수 있는지 여부를 판단한다. 실시예에 따라, 대화형 서버(200)는 추출된 제1 및 제2 발화 요소에 대응되는 정보가 데이터베이스 내에 존재하는지 여부에 따라 사용자 의도에 적합한 응답 정보의 생성 여부를 판단할 수 있다. 여기서, 제1 및 제2 발화 요소에 대응되는 정보는 제1 발화 요소에 대응되는 실행어 및 제2 발화 요소에 대응되는 명령어가 될 수 있다. 따라서, 대화형 서버(200)는 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 데이터베이스 내에 존재하는지 여부를 판단한다. 판단 결과, 추출된 제1 및 제2 발화 요소에 대응되는 정보가 데이터베이스 내에 존재하지 않으면, 대화형 서버(200)는 기저장된 발화 이력 정보 중 "첫번째 거 선택해줘"라는 발화 음성이 수신되기 직전의 발화 이력 정보와 추출된 제1 및 제2 발화 요소에 기초하여 응답 정보를 생성하고, 이를 디스플레이 장치(100)로 전송할 수 있다. 예를 들어, "첫번째 거 선택해줘"라는 발화 음성이 수신되기 직전에 "○○○(컨텐츠명) 찾아줘"라는 발화 음성이 수신될 수 있으며, 이 같은 발화 음성에 대한 발화 이력 정보가 저장될 수 있다. 따라서, 대화형 서버(200)는 이전 발화 이력 정보에 기초하여 "○○○(컨텐츠명)"에 대한 컨텐츠 실행 관련 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다. 따라서, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 기초하여 "○○○(컨텐츠명)"에 대한 첫번째 컨텐츠를 디스플레이할 수 있다.
한편, 전술한 대화형 서버(200)는 디지털 신호로 변환된 사용자의 발화 음성을 텍스트 정보로 생성하는 제1 서버(10) 및 텍스트 정보로 생성된 발화 음성에 대응하는 응답 정보를 생성하는 제2 서버(20)를 포함할 수 있다. 이하에서는, 디스플레이 장치(100), 제1 및 제2 서버(10,20)를 통해 사용자의 발화 음성에 적합한 응답 정보를 제공하는 대화형 시스템에 대해서 상세히 설명하도록 한다.
도 2는 본 발명의 또다른 실시예에 따른 사용자 발화 음성에 적합한 응답 정보를 제공하는 대화형 시스템의 제2 예시도이다.
도 2에 도시된 바와 같이, 디스플레이 장치(100)는 사용자로부터 발화된 발화 음성이 입력되면, 입력된 발화 음성을 디지털 신호로 변환하여 제1 서버(10)로 전송한다. 디지털 신호로 변환된 발화 음성이 수신되면, 제1 서버(10)는 기저장된 다양한 발화 음성에 대한 특정 패턴에 따라, 사용자의 발화 음성에 대한 텍스트 정보를 생성하여 디스플레이 장치(100)로 전송한다.
제1 서버(10)로부터 사용자의 발화 음성에 대한 텍스트 정보를 수신한 디스플레이 장치(100)는 사용자의 발화 음성에 대한 텍스트 정보를 제2 서버(20)로 전송한다. 사용자의 발화 음성에 대한 텍스트 정보를 수신한 제2 서버(20)는 수신한 텍스트 정보를 분석하여 발화 요소를 추출하고, 그 추출된 발화 요소에 기초하여 사용자의 발화 음성에 대응되는 동작을 수행하기 위한 응답 정보를 생성하여 디스플레이 장치(100)로 전송할 수 있다.
지금까지, 본 발명에 따른 디스플레이 장치(100)와 대화형 서버(200)로 이루어진 대화형 시스템에서 사용자의 발화 음성에 대응하는 응답 정보를 제공하는 동작에 대해서 개략적으로 설명하였다. 이하에서는, 전술한 디스플레이 장치(100) 및 대화형 서버(200)의 각 구성에 대해서 상세히 설명하도록 한다.
도 3은 본 발명의 일 실시예에 따른 대화형 서버의 블록도이다.
도 3에 도시된 바와 같이, 대화형 서버(200)는 통신부(210), 음성 처리부(220), 저장부(230), 추출부(240) 및 제어부(250)를 포함한다.
통신부(210)는 사용자의 발화 음성을 제공하는 디스플레이 장치(100)와 통신을 수행한다. 특히, 통신부(210)는 실행 대상을 나타내는 제1 발화 요소 및 실행 명령을 나타내는 제2 발화 요소를 포함하는 발화 음성에 대한 디지털 신호(이하 발화 음성이라 함)를 수신할 수 있다. 여기서, 실행 명령을 나타내는 제1 발화 요소는 사용자의 발화 음성 내에서 주요 특징(feature)으로 분류되는 발화 요소이며, 실행 명령을 나타내는 제2 발화 요소는 사용자의 발화 음성에 내에서 목적 기능(user action)으로 분류되는 발화 요소이다. 예를 들어, "액션 영화 찾아줘"라는 발화 음성의 경우, "액션"은 주요 특징으로 분류되는 제1 발화 요소이며, "찾아줘"는 목적 기능으로 분류되는 제2 발화 요소가 될 수 있다.
이 같은 제1 및 제2 발화 요소를 포함하는 발화 음성이 수신되면, 음성 처리부(220)는 수신된 발화 음성을 텍스트 정보로 변환한다. 실시예에 따라, 음성 처리부(220)는 STT(Speech to Text) 알고리즘을 이용하여 수신된 사용자의 발화 음성을 텍스트로 변환할 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 통신부(210)는 디스플레이 장치(100)로부터 사용자의 발화 음성에 대한 텍스트 정보를 수신할 수 있다. 이 경우, 디스플레이 장치(100)는 입력된 사용자의 발화 음성에 대한 텍스트 정보를 전술한 제1 서버(10)와 같은 음성 인식 장치(미도시)로부터 수신하여 대화형 서버(200)로 전송한다. 따라서, 통신부(210)는 디스플레이 장치(100)로부터 사용자의 발화 음성에 대한 텍스트 정보를 수신할 수 있다. 이 같이, 디스플레이 장치(100)로부터 사용자의 발화 음성에 대한 텍스트 정보를 수신할 경우, 전술한 음성 처리부(220)의 구성은 생략될 수 있다.
한편, 사용자의 발화 음성이 텍스트 정보로 변환되거나 혹은 디스플레이 장치(100)로부터 사용자의 발화 음성에 대한 텍스트 정보가 수신되면, 추출부(240)는 텍스트 정보로 변환된 발화 음성으로부터 발화 요소를 추출한다. 전술한 바와 같이, 추출부(240)는 텍스트 정보로 변환된 발화 음성으로부터 주요 특징을 나타내는 제1 발화 요소 및 실행 명령을 나타내는 제2 발화 요소를 추출할 수 있다.
전술한 예와 같이, "액션 영화 찾아줘"라는 발화 음성의 경우, 추출부(240)는 "액션" 및 "영화"라는 제1 발화 요소와 "찾아줘"라는 제2 발화 요소를 추출할 수 있다. 또다른 예를 들어, "이거 실행해줘"라는 발화 음성의 경우, 추출부(240)는 "이거"라는 제1 발화 요소 및 "실행해줘"라는 제2 발화 요소를 추출할 수 있다.
이 같은 발화 요소가 추출되면, 제어부(250)는 저장부(230)에 저장된 발화 이력 정보 및 추출된 발화 요소에 기초하여 응답 정보를 생성하고, 생성된 응답 정보를 디스플레이 장치(100)로 전송한다. 여기서, 저장부(230)는 대화형 서버(200)를 동작시키기 위해 필요한 각종 프로그램 등이 저장되는 저장매체로써, 메모리, HDD(Hard Disk Drvie) 등으로 구현될 수 있다. 예를 들어, 저장부(230)는 제어부(250)의 동작을 수행하기 위한 프로그램을 저장하는 ROM, 제어부(250)의 동작 수행에 따른 데이터를 일시적으로 저장하는 RAM 등을 구비할 수 있다. 뿐만 아니라, 저장부(230)는 각종 참조 데이터를 저장하는 EEROM(Electrically Eraasable and Programmable ROM) 등을 더 구비할 수 있다. 특히, 저장부(230)는 디스플레이 장치(100)로부터 수신된 발화 음성에 대한 발화 이력 정보를 저장할 수 있다. 여기서, 발화 이력 정보는 디스플레이 장치(100)로부터 현재 발화 음성이 수신되기 이전에 수신된 발화 음성에 기초하여 생성된 정보이다. 구체적으로, 저장부(230)는 디스플레이 장치(100)로부터 수신된 발화 음성으로부터 생성된 텍스트 정보, 해당 발화 음성이 수신된 시간 정보, 해당 발화 음성에 기초하여 생성된 응답 정보 및 해당 응답 정보가 생성된 시간 정보 중 적어도 하나를 포함하는 발화 이력 정보를 저장할 수 있다.
따라서, 제어부(250)는 저장부(230)에 저장된 이전 발화 이력 정보 중 현재 발화 음성이 수신되기 이전의 발화 이력 정보와 수신된 발화 음성으로부터 추출된 발화 요소 중 적어도 하나에 기초하여 응답 정보를 생성하고, 이를 디스플레이 장치(100)로 전송할 수 있다. 구체적으로, 제어부(250)는 추출부(240)로부터 추출된 발화 요소에 대응되는 정보가 저장부(230)에 존재하는지 여부를 판단하여, 추출된 발화 요소에 대응되는 정보가 존재하면 추출된 발화 요소에 대응되는 정보에 기초하여 응답 정보를 생성한다. 여기서, 추출된 발화 요소에 대응되는 정보는 실행 대상을 나타내는 제1 발화 요소에 대응되는 실행어 및 실행 명령을 나타내는 제2 발화 요소에 대응되는 명령어 중 적어도 하나를 포함할 수 있다. 이 같은 실행어 및 명령어는 저장부(230)에 저장될 수 있다. 즉, 저장부(230)는 제1 발화 요소별로 정의된 실행어 및 제2 발화 요소별로 정의된 명령어를 더 저장할 수 있다. 예를 들어, "이거"라는 실행 대상을 간접적으로 나타내는 제1 발화 요소는 "$this$"라는 실행어로 정의될 수 있으며, "다음"이라는 실행 대상을 간접적으로 나타내는 제1 발화 요소는 "$this$"라는 실행어로 정의될 수 있으며, "세번째"라는 실행 대상을 간접적으로 나타내는 제1 발화 요소는 "$3rd$"라는 실행어로 정의될 수 있다. 또한, "○○○(컨텐츠명)"와 같이 실행 대상을 직접적으로 나타내는 제1 발화 요소는 "$○○○(컨텐츠명)$"라는 실행어로 정의될 수 있다. 한편, 실행 명령을 나타내는 제2 발화 요소는 실행 대상을 직접적으로 나타내는 제1 발화 요소 및 발화 음성에 대응되는 응답 정보를 제공할 실행 영역에 기초하여 컨텐츠 검색, 컨텐츠 추천, 장치 기능 실행, 장치 UI 제어 및 웹 검색 등으로 분류될 수 있으며, 각각의 분류된 타입에 대응하여 명령어가 정의될 수 있다. 따라서, 제어부(250)는 사용자의 발화 음성으로부터 발화 요소가 추출되면, 추출된 발화 요소에 대응되는 실행어 및 명령어가 저장부(230)에 저장되어 있는지 여부를 판단한다. 판단 결과, 추출된 발화 요소에 대응되는 실행어 및 명령어가 저장되어 있으면, 제어부(250)는 추출된 발화 요소에 대응되는 실행어 및 명령어를 획득하고, 획득한 실행어 및 명령어를 조합하여 응답 정보를 생성할 수 있다.
예를 들어, "○○○(컨텐츠명) 찾아줘"라는 발화 음성의 경우, 추출부(240)는 "○○○(컨텐츠명)"에 대한 제1 발화 요소 및 "찾아줘"라는 제2 발화 요소를 추출할 수 있다. 이 같이, "○○○(컨텐츠명) 찾아줘"라는 발화 음성으로부터 제1 및 제2 발화 요소가 추출되면, 제어부(250)는 추출된 제1 발화 요소에 기초하여 실행 영역이 컨텐츠인 것으로 판단한다. 또한, 제어부(250)는 저장부(230)에 저장된 제1 발화 요소별 정의된 실행어를 참조하여 ""○○○(컨텐츠명)"에 대한 제1 발화 요소에 대응되는 실행어 "$○○○(컨텐츠명)$"를 획득할 수 있다. 또한, 제어부(250)는 컨텐츠로 판단된 실행 영역에 기초하여 "찾아줘"에 대한 제2 발화 요소의 타입이 컨텐츠 검색과 관련된 것으로 판단한다. 따라서, 제어부(250)는 저장부(230)에 저장된 제2 발화 요소별 정의된 명령어 중 컨텐츠 검색에 대응되는 명령어 "content_search"를 획득할 수 있다. 이후, 제어부(250)는 제1 및 제2 발화 요소에 대응되는 실행어 "$○○○(컨텐츠명)$" 및 명령어 "content_search"를 조합하여 "content_search($○○○(컨텐츠명)$)"라는 실행 명령 스크립트를 생성할 수 있다. 이 같은 실행 명령 스크립트가 생성되면, 제어부(250)는 생성된 실행 명령 스크립트를 포함하는 응답 정보를 디스플레이 장치(100)로 전송한다. 이에 따라, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 포함된 실행 명령 스크립트에 기초하여 컨텐츠 제공 서버(300)로부터 "○○○(컨텐츠명)"에 대한 회차별 컨텐츠 정보를 수신하고, 수신된 회차별 컨텐츠 정보에 대한 컨텐츠 리스트를 화면상에 디스플레이할 수 있다.
그러나, 본 발명은 이에 한정되지 않으며, 제어부(250)는 "content_search($○○○(컨텐츠명)$)"라는 실행 명령 스크립트에 기초하여 저장부(230)에 기저장된 EPG 정보로부터 "○○○(컨텐츠명)"에 대한 회차별 컨텐츠 정보를 획득하거나 혹은 외부 서버(400)로부터 수신하여 디스플레이 장치(100)로 전송할 수 있다.
또다른 예를 들어, "취침예약 해줘"라는 발화 음성의 경우, 추출부(240)는 "취침예약"에 대한 제1 발화 요소 및 "해줘"라는 제2 발화 요소를 추출할 수 있다. 이 같이, "취침예약 해줘"라는 발화 음성으로부터 제1 및 제2 발화 요소가 추출되면, 제어부(250)는 추출된 제1 발화 요소에 기초하여 실행 영역이 장치 제어인 것으로 판단한다. 또한, 제어부(250)는 저장부(230)에 저장된 제1 발화 요소별 정의된 실행어를 참조하여 "취침예약"에 대한 제1 발화 요소에 대응되는 실행어 "$취침예약$"를 획득할 수 있다. 또한, 제어부(250)는 장치 제어로 판단된 실행 영역에 기초하여 "해줘"에 대한 제2 발화 요소의 타입이 장치 기능 실행에 해당하는 것으로 판단한다. 따라서, 제어부(250)는 저장부(230)에 저장된 제2 발화 요소별 정의된 명령어 중 장치 기능 실행에 대응되는 명령어 "device_execute"를 획득할 수 있다. 이후, 제어부(250)는 제1 및 제2 발화 요소에 대응되는 실행어 "$취침예약$" 및 명령어 "device_execute"를 조합하여 "device_execute($취침예약$)"라는 실행 명령 스크립트를 생성할 수 있다. 이 같은 실행 명령 스크립트가 생성되면, 제어부(250)는 생성된 실행 명령 스크립트를 포함하는 응답 정보를 디스플레이 장치(100)로 전송한다. 이에 따라, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 포함된 실행 명령 스크립트에 기초하여 취침예약을 설정하고, 취침예약이 설정되었음을 안내하는 알림 메시지를 음성 및 텍스트 중 적어도 하나를 통해 출력할 수 있다.
또다른 예를 들어, "첫번째 거 선택해줘"라는 발화 음성과 실행 정보를 포함하는 발화 정보가 수신되면, 추출부(240)는 "첫번째 거 선택해줘"라는 발화 음성으로부터 "첫번째"라는 제1 발화 요소 및 "선택해줘"라는 제2 발화 요소를 추출할 수 있다. 이 같이, "첫번째 거 선택해줘"라는 발화 음성으로부터 제1 및 제2 발화 요소가 추출되면, 제어부(250)는 저장부(230)에 저장된 제1 발화 요소별 정의된 실행어를 참조하여 "첫번째"에 대한 제1 발화 요소에 대응되는 실행어 "$1st$"를 획득할 수 있다. 또한, 제어부(250)는 수신된 발화 정보에 포함된 실행 정보에 기초하여 실행 영역이 장치 UI 제어인 것으로 판단하고, 그 판단된 실행 영역에 기초하여 "선택해줘"에 대한 제2 발화 요소의 타입이 장치 UI 제어에 해당하는 것으로 판단한다. 따라서, 제어부(250)는 저장부(230)에 저장된 제2 발화 요소별 정의된 명령어 중 장치 UI 제어에 대응되는 명령어 "device_select"를 획득할 수 있다. 한편, 제어부(250)는 "첫번째"에 대한 제1 발화 요소에 대응되는 실행어 "$1st$"가 획득되면, 디스플레이 장치(100)로부터 수신한 발화 정보에 포함된 실행 정보에 기초하여 기획득한 실행어 "$1st$"에 대응되는 실행어로 변환한다. 이후, 제어부(250)는 기회득한 실행어 "$1st$"에서 변환된 실행어 및 명령어를 조합하여 실행 명령 스크립트를 생성할 수 있다.
이하에서는 전술한 예와 같이, 디스플레이 장치(100)에서 발화 음성과 실행 정보를 포함하는 발화 정보를 대화형 서버(200)로 전송하는 동작 및 대화형 서버(200)에서 디스플레이 장치(100)로부터 수신된 발화 정보에 기초하여 응답 정보를 생성하는 동작에 대해서 구체적으로 설명하도록 한다.
도 4는 본 발명의 일 실시예에 따른 디스플레이 장치에서 화면상에 표시된 객체의 표시 상태에 기초하여 발화 정보를 생성하는 예시도이다.
도 4에 도시된 바와 같이, 디스플레이 장치(100)는 사용자가 요청한 채널을 통해 제1 컨텐츠(30)를 수신하여 디스플레이할 수 있다. 또한, 디스플레이 장치(100)는 사용자 명령에 기초하여 사용자가 요청한 제2 컨텐츠에 대한 컨텐츠 리스트(40)를 화면상에 디스플레이할 수 있다. 도시된 바와 같이, 컨텐츠 리스트(40) 상에는 지금까지 방송된 제2 컨텐츠에 대한 회차별 컨텐츠 정보(41~45)가 표시될 수 있다. 한편, 디스플레이 장치(100)는 기설정된 우선 순위에 기초하여 컨텐츠 리스트(40) 상에 표시되는 회차별 컨텐츠 정보(41~45) 각각에 대한 식별 정보를 부여할 수 있다. 이 같이 제1 컨텐츠(30) 및 제2 컨텐츠에 대한 컨텐츠 리스트(40)가 화면상에 표시된 상태에서, 사용자는 컨텐츠 리스트(40) 상에 표시된 컨텐츠 정보(41~45)를 참조하여 특정 회차에 대응되는 제2 컨텐츠를 시청하기 위한 발화를 할 수 있다. 예를 들어, 사용자는 3회차 컨텐츠 정보(43)에 대응되는 제2 컨텐츠를 시청하기 위해 "세번째 거 선택해줘"라는 발화를 할 수 있다. 이 같은 발화 음성이 입력되면, 디스플레이 장치(100)는 이전 발화 음성이 입력된 입력 시간을 기준으로 현재 입력된 발화 음성이 기설정된 시간 내에 입력되었는지 여부를 판단한다. 판단 결과, 기설정된 시간 내에 입력된 것으로 판단되면, 디스플레이 장치(100)는 "세번째 거 선택해줘"라는 발화 음성을 대화형 서버(200)로 전송한다. 한편, 현재 입력된 발화 음성이 기설정된 시간 내에 입력되지 않은 것으로 판단되면, 디스플레이 장치(100)는 "세번째 거 선택해줘"라는 발화 음성과 컨텐츠 리스트(40) 상에 표시된 회차별 컨텐츠 정보(41~45)에 부여된 식별 정보(전술한 실행 정보)를 포함하는 발화 정보를 대화형 서버(200)로 전송한다.
이 같은 발화 정보가 수신되면, 추출부(240)는 수신된 발화 정보에 포함된 발화 음성으로부터 "세번째"라는 제1 발화 요소 및 "선택해줘"라는 제2 발화 요소를 추출할 수 있다. 제1 및 제2 발화 요소가 추출되면, 제어부(250)는 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 저장부(230)에 저장되어 있는지 여부를 판단한다. 전술한 바와 같이, 저장부(230)는 제1 및 제2 발화 요소별 정의된 실행어 및 명령어를 저장할 수 있다. 따라서, 제어부(250)는 저장부(230)에 저장된 제1 발화 요소별 정의된 실행어를 참조하여 "세번째"에 대한 제1 발화 요소에 대응되는 실행어 "$3rd$"를 획득할 수 있다. 또한, 제어부(250)는 수신된 발화 정보에 포함된 식별 정보에 기초하여 실행 영역이 장치 UI 제어인 것으로 판단하고, 그 판단된 실행 영역에 기초하여 "선택해줘"에 대한 제2 발화 요소의 타입이 장치 UI 제어에 해당하는 것으로 판단한다. 따라서, 제어부(250)는 저장부(230)에 저장된 제2 발화 요소별 정의된 명령어 중 장치 UI 제어에 대응되는 명령어 "device_select"를 획득할 수 있다. 한편, 제어부(250)는 "첫번째"에 대한 제1 발화 요소에 대응되는 실행어 "$3rd$"가 획득되면, 디스플레이 장치(100)로부터 수신한 발화 정보에 포함된 식별 정보에 기초하여 기회득한 실행어 "$3rd$"에 대응되는 실행어로 변환한다. 예를 들어, 회차별 컨텐츠 정보(41~45) 중 "$3rd$"에 대응되는 컨텐츠 정보(43)의 식별 정보가 "#3"이면, 제어부(250)는 기회득한 실행어 "$3rd$"에서 변환된 실행어 "#3"으로 변환할 수 있다. 이후, 제어부(250)는 변환된 실행어 "#3"과 명령어 "device_select"를 조합하여 "device_select(#3)"이라는 실행 명령 스크립트를 생성하고, 이를 포함하는 응답 정보를 디스플레이 장치(100)로 전송할 수 있다. 이에 따라, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 포함된 실행 명령 스크립트에 기초하여 컨텐츠 정보(43)에 대응되는 회차의 제2 컨텐츠를 컨텐츠 제공 서버(300)로부터 수신하여 디스플레이할 수 있다.
이와 같이, 본 발명에 따른 제어부(250)는 사용자의 발화 음성으로부터 추출된 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 발화 요소에 대응되는 실행어 및 명령어에 기초하여 사용자의 의도에 대응되는 응답 정보를 생성할 수 있다.
한편, 제어부(250)는 사용자의 발화 음성으로부터 추출된 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 저장부(230)에 기저장된 발화 이력 정보에 기초하여 추출된 발화 요소에 대응되는 실행어 및 명령어를 추정한다. 이후, 제어부(250)는 추정된 지시어 및 명령어를 조합하여 사용자의 의도에 적합한 응답 정보를 생성할 수 있다.
실시예에 따라, 제어부(250)는 추출된 발화 요소 즉, 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 저장부(230)에 저장된 발화 이력 정보 중, 현재 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보를 획득한다. 이후, 제어부(250)는 획득된 발화 이력 정보 내에서 제1 발화 요소에 대응되는 실행어 및 제2 발화 요소에 대응되는 명령어를 수신된 발화 음성에 대응되는 실행어 및 명령어로 추정할 수 있다. 한편, 제어부(250)는 저장부(230)에 저장된 발화 이력 정보 중, 현재 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보가 저장되어 있지 않으면 응답 정보를 생성하지 않는다.
전술한 바와 같이, 저장부(230)는 디스플레이 장치(100)로부터 수신된 발화 음성으로부터 생성된 텍스트 정보, 해당 발화 음성이 수신된 시간 정보, 해당 발화 음성에 기초하여 생성된 응답 정보 및 해당 응답 정보가 생성된 시간 정보 중 적어도 하나를 포함하는 발화 이력 정보를 저장할 수 있다. 따라서, 제어부(250)는 현재 수신된 발화 음성으로부터 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어 중 적어도 하나가 저장부(230)에 저장되어 있지 않으면, 저장부(230)에 기저장된 발화 이력 정보에 기초하여 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어를 추정할 수 있다.
예를 들어, "첫번째 거 선택해줘"라는 발화 음성의 경우, 추출부(230)는 "첫번째"라는 제1 발화 요소와 "선택해줘"라는 제2 발화 요소를 추출할 수 있다. 이 같은 제1 및 제2 발화 요소가 추출되면, 제어부(250)는 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 저장부(230)에 저장되어 있는지 여부를 판단한다. 구체적으로, 제어부(250)는 저장부(230)에 저장된 제1 발화 요소별 정의된 실행어를 참조하여 "첫번째"라는 제1 발화 요소에 대응되는 실행어 "$1st$"를 획득할 수 있다. 한편, 제어부(250)는 추출된 발화 요소 중 제1 발화 요소에 기초하여 실행 영역 판단이 가능한지 여부를 판단한다. 판단 결과, "첫번째"에 대한 제1 발화 요소로부터 실행 영역이 불가능한 것으로 판단되면, 제어부(250)는 제2 발화 요소별 정의된 명령어를 저장하는 저장부(230)로부터 "선택해줘"라는 제2 발화 요소에 대응되는 명령어를 획득하지 못한다. 따라서, 제어부(250)는 "첫번째 거 선택해줘"라는 발화 음성으로부터 발화 음성에 대한 서비스를 제공하기 위한 실행 영역 및 실행 명령이 불명확한 것으로 판단한다. 이 같은 판단 결과에 따라, 제어부(250)는 저장부(230)에 저장된 발화 이력 정보 중 "첫번째 거 선택해줘"라는 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내에 저장된 발화 이력 정보가 있는지 여부를 판단한다. 즉, 제어부(250)는 저장부(230)에 저장된 발화 이력 정보 중 "첫번째 거 선택해줘"라는 발화 음성이 수신된 시간과 가장 최근에 저장된 이전 발화 이력 정보의 시간 차이가 기설정된 시간 범위 내에 속하는지 여부를 판단한다. 판단 결과, 이전 발화 이력 정보가 기설정된 시간 범위 내에 속하지 않은 것으로 판단되면, 제어부(250)는 "첫번째 거 선택해줘"라는 발화 음성에 대한 응답 정보를 생성하지 않는다. 한편, 이전 발화 이력 정보가 기설정된 시간 범위 내에 속하는 것으로 판단되면, 추출부(240)는 이전 발화 이력 정보에 포함된 발화 음성의 텍스트 정보로부터 제1 및 제2 발화 요소를 추출한다.
예를 들어, 이전 발화 이력 정보에 포함된 발화 음성이 "○○○(컨텐츠명) 찾아줘"이면, 추출부(240)는 "○○○(컨텐츠명)"에 대한 제1 발화 요소와 "찾아줘"라는 제2 발화 요소를 추출한다. 이후, 제어부(250)는 이전 발화 이력 정보에 포함된 발화 음성으로부터 추출된 제1 및 제2 발화 요소 중 "○○○(컨텐츠명)"에 대한 제1 발화 요소에 기초하여 "첫번째"에 대한 제1 발화 요소가 "○○○(컨텐츠명)"에 대한 제1 발화 요소인 것으로 추정한다. 이후, 제어부(250)는 추정된 제1 발화 요소에 기초하여 실행 영역이 장치 UI 제어인 것으로 판단하고, 저장부(230)에 저장된 제2 발화 요소별 정의된 명령어 중 장치 UI 제어에 대응되는 명령어 "device_select"를 획득할 수 있다. 이후, 제어부(250)는 기획득한 제1 발화 요소에 대응되는 실행어 "$1st$"와 제2 발화 요소에 대응되는 명령어 "device_select"를 조합하여 "device_select($1st$)"라는 실행 명령 스크립트를 생성할 수 있다. 이후, 제어부(250)는 생성된 실행 명령 스크립트를 포함하는 응답 정보를 디스플레이 장치(100)로 전송한다. 따라서, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 기초하여 "첫번째 컨텐츠를 선택하셨습니다."라는 응답 메시지를 음성 및 텍스트 중 적어도 하나를 출력할 수 있다. 이와 함께, 디스플레이 장치는 응답 정보에 포함된 실행 명령 스크립트에 기초하여 컨텐츠 제공 서버(300)로부터 첫번째 컨텐츠를 수신하여 디스플레이할 수 있다.
한편, 본 발명의 추가적인 양상에 따라 제어부(250)는 수신된 발화 음성 내에 제1 발화 요소 및 제2 발화 요소 중 적어도 하나가 포함되어 있지 않으면, 저장부(230)에 저장된 발화 이력 정보 중 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보에 기초하여 응답 정보를 생성할 수 있다.
예를 들어, "그래"와 같은 발화 음성의 경우, 추출부(240)는 "그래"라는 발화 음성으로부터 제1 및 제2 발화 요소를 추출하지 못한다. 이 경우, 제어부(250)는 "그래"라는 발화 음성이 불명확한 것으로 판단하고, 저장부(230)에 저장된 발화 이력 정보 중 "그래"라는 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내에 저장된 이전 발화 이력 정보를 획득한다. 예를 들어, 획득한 이전 발화 이력 정보에 포함된 발화 음성이 "TV 꺼줘"이면, 제어부(250)는 "TV"에 대한 제1 발화 요소와 "꺼줘"라는 제2 발화 요소를 추출한다. 이후, 제어부(250)는 추출된 제1 및 제2 발화 요소에 기초하여 현재 수신된 "그래"라는 발화 음성이 컨펌(confirm)인 것으로 추정한다. 이에 따라, 제어부(250)는 이전 발화 이력 정보로부터 추출된 "TV"에 대한 제1 발화 요소에 기초하여 실행 영역이 장치 제어인 것으로 판단한다. 또한, 제어부(250)는 저장부(230)에 저장된 제1 발화 요소별 정의된 실행어를 참조하여 "TV"에 대한 제1 발화 요소에 대응되는 실행어 "$TV$"를 획득할 수 있다. 또한, 제어부(250)는 장치 제어로 판단된 실행 영역에 기초하여 "꺼줘"에 대한 제2 발화 요소의 타입이 장치 기능 실행과 관련된 것으로 판단한다. 따라서, 제어부(250)는 저장부(230)에 제2 발화 요소별 정의된 명령어 중 장치 기능 실행에 대응되는 명령어를 획득한다. 이후, 제어부(250)는 장치 기능 실행에 대응하여 획득한 명령어 중 전원 제어에 대응되는 명령어 "device_exectue_turn off"를 획득할 수 있다. 이후, 제어부(250)는 제1 발화 요소에 대응되는 실행어 "$TV$"와 제2 발화 요소에 대응되는 명령어 "device_exectue_turn off"를 조합하여 "device_exectue_turn off($TV$)"라는 실행 명령 스크립트를 생성한다. 이 같은 실행 명령 스크립트가 생성되면, 제어부(250)는 생성된 실행 명령 스크립트를 포함하는 응답 정보를 디스플레이 장치(100)로 전송한다. 이에 따라, 디스플레이 장치(100)는 대화형 서버(200)로부터 수신한 응답 정보에 포함된 실행 명령 스크립트에 기초하여 TV 전원을 오프시킬 수 있다.
지금까지, 본 발명에 따른 대화형 서버(200)에 각 구성에 대해서 상세히 설명하였다. 이하에서는, 사용자의 발화 음성을 입력받는 디스플레이 장치(100)의 각 구성에 대해서 상세히 설명하도록 한다.
도 5는 본 발명의 일 실시예에 따른 디스플레이 장치의 블록도이다.
도 5에 도시된 바와 같이, 디스플레이 장치(100)는 입력부(110), 통신부(120), 디스플레이부(130), 제어부(140) 및 저장부(150)를 포함한다.
입력부(110)는 사용자로부터 발화된 발화 음성을 입력받는다. 구체적으로, 입력부(110)는 아날로그 형태의 사용자의 발화 음성이 입력되면, 입력된 사용자 발화 음성을 샘플링하여 디지털 신호로 변환한다. 이때, 입력부(110)는 입력된 사용자의 발화 음성에 노이즈(예를 들어, 에어컨 소리, 청소기 소리 등)가 있는 경우, 노이즈를 제거한 후, 노이즈가 제거된 사용자의 발화 음성을 디지털 신호로 변환함이 바람직하다. 뿐만 아니라, 입력부(110)는 다양한 사용자 조작을 입력받아 제어부(130)로 전달하는 기능을 수행할 수 있다. 이 경우, 입력부(110)는 터치패드(Touch Pad) 혹은 각종 기능키, 숫자키, 특수키, 문자키 등을 구비한 키패드(Key Pad) 또는 터치 스크린(Touch Screen)을 통해 사용자 조작 명령을 입력받을 수 있다.
통신부(120)는 입력부(110)를 통해 입력된 사용자의 발화 음성을 서버 장치(이하 대화형 서버라 함)로 전송하고, 전성된 발화 음성에 대응되는 응답 정보를 수신한다. 여기서, 통신부(120)는 근거리 무선 통신 모듈(미도시), 무선 통신 모듈(미도시) 등과 같은 다양한 통신 모듈을 포함할 수 있다. 여기서, 근거리 무선 통신 모듈(미도시)은 근거리에 위치한 대화형 서버(200) 및 컨텐츠를 제공하는 외부 서버(미도시)와 무선 통신을 수행하는 통신 모듈로써, 예를 들어, 블루투스, 지그비 등이 될 수 있다. 무선 통신 모듈(미도시)은 와이파이(WiFi), IEEE 등과 같은 무선 통신 프로토콜에 따라 외부 네트워크에 연결되어 통신을 수행하는 모듈이다. 이 밖에 무선 통신 모듈은 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution) 등과 같은 다양한 이동 통신 규격에 따라 이동 통신 망에 접속하여 통신을 수행하는 이동 통신 모듈을 더 포함할 수도 있다.
디스플레이부(130)는 액정 표시 장치(Liquid Crystal Display, LCD), 유기 전기 발광 다이오드(Organic Light Emitting Display, OLED) 또는 플라즈마 표시 패널(Plasma Display Panel, PDP) 등으로 구현되어, 디스플레이 장치(100)를 통해 제공 가능한 다양한 디스플레이 화면을 제공할 수 있다. 특히, 디스플레이부(161) 대화형 서버(200)로부터 수신한 응답 정보에 기초하여 사용자의 발화 음성에 대응되는 컨텐츠 혹은 컨텐츠 정보를 디스플레이한다.
제어부(140)는 디스플레이 장치(100)의 구성을 전반적으로 제어한다. 특히, 제어부(140)는 대화형 서버(200)로부터 실행어 및 명령어의 조합으로 생성된 실행 명령 스크립트를 포함하는 응답 정보가 수신되면, 수신된 응답 정보에 포함된 실행 명령 스크립트에 기초하여 동작을 수행한다.
전술한 예와 같이, "○○○(컨텐츠명) 찾아줘"라는 사용자의 발화 음성에 대한 응답 정보가 대화형 서버(200)로부터 수신되면, 제어부(140)는 수신된 응답 정보에 포함된 실행 명령 스크립트에 기초하여 통신부(120)를 통해 컨텐츠 제공 서버(300)로부터 "○○○(컨텐츠명)"에 대한 회차별 컨텐츠 정보를 수신하고, 수신된 회차별 컨텐츠 정보에 대한 컨텐츠 리스트를 디스플레이부(130)를 통해 화면상에 디스플레이할 수 있다. 구체적으로, 대화형 서버(200)로부터 수신되는 응답 정보에는 "content_search($○○○(컨텐츠명)$)"라는 실행 명령 스크립트가 포함될 수 있다. 따라서, 제어부(140)는 "content_search($○○○(컨텐츠명)$)"라는 실행 명령 스크립트를 해석하여, 실행어는 "$○○○(컨텐츠명)$"이며, 명령어는 "content_search"라고 구분할 수 있다. 이 같이, 실행 명령 스크립트로부터 지시자 및 명령어가 구분되면, 제어부(140)는 구분된 지시자에 기초하여 컨텐츠 제공 서버(300)로부터 "○○○(컨텐츠명)"에 대한 회차별 컨텐츠 정보를 수신하고, 수신된 회차별 컨텐츠 정보에 대한 컨텐츠 리스트가 화면상에 디스플레이되도록 디스플레이부(130)를 제어할 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 통신부(120)는 대화형 서버(200)로부터 "○○○(컨텐츠명)"에 대한 회차별 컨텐츠 정보를 포함하는 응답 정보를 수신할 수 있다. 이 경우, 제어부(140)는 대화형 서버(200)로부터 수신된 응답 정보에 포함된 "○○○(컨텐츠명)"에 대한 회차별 컨텐츠 정보를 디스플레이부(130)를 통해 화면상에 디스플레이할 수 있다.
전술한 또다른 예와 같이, "취침예약 해줘"라는 사용자의 발화 음성에 대한 응답 정보가 대화형 서버(200)로부터 수신되면, 제어부(140)는 수신된 응답 정보에 포함된 실행 명령 스크립트에 기초하여 기설정된 시간으로 취침예약을 자동 설정할 수 있다. 구체적으로, 대화형 서버(200)로부터 수신되는 응답 정보에는 "device_execute($취침예약$)"라는 실행 명령 스크립트가 포함될 수 있다. 따라서, 제어부(140)는 "device_execute($취침예약$)"라는 실행 명령 스크립트를 해석하여, 실행어는 "$$취침예약$$"이며, 명령어는 "device_execute"라고 구분할 수 있다. 이 같이, 실행 명령 스크립트로부터 지시자 및 명령어가 구분되면, 제어부(140)는 구분된 지시자에 기초하여 기설정된 시간으로 취침예약을 자동 설정할 수 있다. 이 같은 취침예약이 자동 설정되면, 제어부(140)는 수신된 응답 정보에 기초하여 "취침예약 설정이 완료되었습니다."라는 텍스트 형태의 알림 메시지를 디스플레이부(130)를 통해 화면상에 출력할 수 있다.
한편, 도 4에서 설명한 바와 같이, 디스플레이부(130)는 제어부(140)의 제어 명령에 따라, 사용자가 요청한 채널을 통해 제1 컨텐츠(30)를 수신하여 디스플레이할 수 있다. 또한, 디스플레이부(130)는 사용자 명령에 기초하여 사용자가 요청한 제2 컨텐츠에 대한 컨텐츠 리스트(40)를 화면상에 디스플레이할 수 있다. 이 같이, 제2 컨텐츠에 대한 회차별 컨텐츠 정보(41~45)를 포함하는 컨텐츠 리스트(40)가 화면상에 디스플레이되면, 제어부(140)는 기설정된 우선 순위에 기초하여 회차별 컨텐츠 정보(41~45) 각각에 대한 식별 정보를 부여할 수 있다. 이 같이, 제1 컨텐츠(30) 및 제2 컨텐츠에 대한 컨텐츠 리스트(40)가 화면상에 디스플레이된 상태에서, 사용자로부터 특정 회차에 대응되는 제2 컨텐츠를 시청하기 위한 발화 음성이 입력될 수 있다. 예를 들어, 사용자는 3회차 컨텐츠 정보(43)에 대응되는 제2 컨텐츠를 시청하기 위해 "세번째 거 선택해줘"라는 발화를 할 수 있다. 이 같은 발화 음성이 입력되면, 제어부(140)는 "세번째 거 선택해줘"라는 발화 음성에 대한 발화 이력 정보가 저장부(150)에 저장되어 있는지 여부를 판단한다. 여기서, 발화 이력 정보는 이전 사용자로부터 입력된 발화 음성 및 해당 발화 음성이 입력된 시간 정보를 포함할 수 있다. 판단 결과, 발화 이력 정보가 저장되어 있지 않을 경우, 제어부(140)는 "세번째 거 선택해줘"라는 발화 음성과 회차별 컨텐츠 정보(41~45)에 부여된 식별 정보를 포함하는 발화 정보를 대화형 서버(200)로 전송할 수 있다.
한편, 저장부(150)에 발화 이력 정보가 저장되어 있으면, 제어부(140)는 저장된 발화 이력 정보에 포함된 시간 정보에 기초하여 가장 최근의 발화 이력 정보를 획득한다. 이후, 제어부(140)는 기획득한 발화 이력 정보에 포함된 시간 정보를 기준으로 "세번째 거 선택해줘"라는 발화 음성이 기설정된 시간 내에 입력되었는지 여부를 판단한다. 판단 결과, 기설정된 시간 내에 입력된 것으로 판단되면, 제어부(140)는 통신부(120)를 통해 "세번째 거 선택해줘"라는 발화 음성을 대화형 서버(200)로 전송한다. 한편, 현재 입력된 발화 음성이 기설정된 시간 내에 입력되지 않은 것으로 판단되면, 제어부(140)는 "세번째 거 선택해줘"라는 발화 음성과 컨텐츠 리스트(40) 상에 표시된 회차별 컨텐츠 정보(41~45)에 부여된 식별 정보(전술한 실행 정보)를 포함하는 발화 정보를 대화형 서버(200)로 전송한다.
이후, 대화형 서버(200)로부터 "세번째 거 선택해줘"라는 발화 음성에 대한 응답 정보가 수신되면, 제어부(140)는 수신된 응답 정보에 포함된 실행 명령 스크립트에 기초하여 회차별 컨텐츠 정보(41~45) 중 3회차 컨텐츠 정보(43)에 대응되는 제2 컨텐츠를 컨텐츠 제공 서버(300)로부터 수신하여 디스플레이부(130)를 통해 디스플레이할 수 있다.
지금까지, 본 발명에 따른 사용자의 발화 음성을 인식하고, 인식된 발화 음성에 대응되는 응답 정보에 기초하여 동작을 수행하는 디스플레이 장치(100)의 각 구성에 대해서 상세히 설명하였다. 이하에서는, 사용자의 발화 음성에 대응되는 응답 정보를 제공하는 대화형 서버(200) 및 응답 정보에 기초하여 동작을 수행하는 디스플레이 장치(100)의 제어 방법에 대해서 상세히 설명하도록 한다.
도 6은 본 발명의 일 실시예에 따른 대화형 서버의 제어 방법에 대한 흐름도이다.
도 6에 도시된 바와 같이, 대화형 서버(200)는 디스플레이 장치(100)로부터 발화 음성 신호(이하 발화 음성이라 함)를 수신한다(S610). 여기서, 사용자의 발화 음성은 아날로그 형태의 음성 신호에서 디지털 신호로 변환된 음성 신호이다. 이 같은 발화 음성이 수신되면, 대화형 서버(200)는 수신된 발화 음성을 텍스트 정보로 변환한다(S620). 실시예에 따라, 대화형 서버(200)는 STT(Speech to Text) 알고리즘을 이용하여 사용자의 발화 음성을 텍스트로 변환할 수 있다. 그러나, 본 발명은 이에 한정되지 않으며, 대화형 서버(200)는 디스플레이 장치(100)로부터 사용자의 발화 음성에 대한 텍스트 정보를 수신할 수 있다. 이 경우, 디스플레이 장치(100)는 입력된 사용자의 발화 음성에 대한 텍스트 정보를 전술한 제1 서버(10)와 같은 ASR 서버로부터 수신하여 대화형 서버(200)로 전송한다. 따라서, 대화형 서버(200)는 디스플레이 장치(100)로부터 사용자의 발화 음성에 대한 텍스트 정보를 수신할 수 있다.
이 같은 사용자의 발화 음성이 텍스트 정보로 변환되거나 혹은 디스플레이 장치(100)로부터 사용자의 발화 음성에 대한 텍스트 정보가 수신되면, 대화형 서버(200)는 텍스트 정보로 변환된 발화 음성으로부터 발화 요소를 추출한다(S630). 즉, 대화형 서버(200)는 텍스트 정보로 변환된 발화 음성으로부터 주요 특징을 나타내는 제1 발화 요소 및 실행 명령을 나타내는 제2 발화 요소를 추출한다. 이 같은 제1 및 제2 발화 요소 중 적어도 하나의 발화 요소가 추출되면, 대화형 서버(200)는 추출된 발화 요소에 기초하여 사용자의 의도에 적합한 응답 정보의 생성 여부를 판단한다(S640). 판단 결과, 추출된 발화 요소에 기초하여 응답 정보 생성이 불가능한 것으로 판단되면, 대화형 서버(200)는 사용자의 발화 음성으로부터 응답 정보를 생성하지 않는다. 한편, 판단 결과, 추출된 발화 요소에 기초하여 응답 정보 생성이 가능한 것으로 판단되면, 대화형 서버(200)는 사용자의 발화 음성으로부터 응답 정보를 생성한다. 이후, 대화형 서버(200)는 생성된 응답 정보를 디스플레이 장치(100)로 전송한다(S650).
구체적으로, 대화형 서버(200)는 사용자의 발화 음성으로부터 제1 및 제2 발화 요소가 추출되면, 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 기저장되어 있는지 여부를 판단한다. 여기서, 제1 발화 요소는 주요 특징을 나타내는 발화 요소이며, 제2 발화 요소는 실행 명령을 나타내는 발화 요소이다. 따라서, 대화형 서버(200)는 주요 특징을 나타내는 제1 발화 요소에 대응되는 실행어 및 실행 명령을 나태는 제2 발화 요소에 대응되는 명령어가 기저장되어 있는지 여부를 판단한다. 판단 결과, 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 저장되어 있으면, 대화형 서버(200)는 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어의 조합하여 실행 명령 스크립트를 생성한다. 한편, 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 저장되어 있지 않으면, 대화형 서버(200)는 기저장된 발화 이력 정보에 기초하여 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어 추정이 가능한지 여부를 판단한다. 판단 결과, 기저장된 발화 이력 정보에 기초하여 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어 추정이 가능하면, 대화형 서버(200)는 추정된 실행어 및 명령어를 조합하여 실행 명령 스크립트를 생성한다. 한편, 기저장된 발화 이력 정보에 기초하여 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어 추정이 불가능하면, 대화형 서버(200)는 사용자의 발화 음성에 대한 응답 정보를 생성하지 않는다. 이와 같이, 본 발명에 따른 대화형 서버(200)는 사용자의 발화 음성으로부터 추출된 발화 요소 및 기저장된 발화 이력 정보에 기초하여 사용자의 발화 음성에 대한 응답 정보 생성 여부를 판단하고, 그 판단 결과에 따라 생성된 응답 정보를 디스플레이 장치(100)로 전송할 수 있다.
이하에서는, 도 7를 통해 대화형 서버(200)에서 사용자의 발화 음성으로부터 추출된 발화 요소 및 기저장된 발화 이력 정보에 기초하여 응답 정보를 생성하는 방법에 대해서 보다 구체적으로 설명하도록 한다.
도 7은 본 발명의 일 실시에에 따른 대화형 서버에서 응답 정보를 생성하는 방법의 흐름도이다.
도 7에 도시된 바와 같이, 전술한 단계 S620을 통해 사용자의 발화 음성이 텍스트 정보로 변환되거나, 혹은 디스플레이 장치(200)로부터 텍스트 정보로 변환된 발화 음성이 수신될 수 있다. 이 같이, 사용자의 발화 음성이 텍스트 정보로 변환되거나 혹은 수신되면, 대화형 서버(200)는 텍스트 정보로 변환된 발화 음성으로부터 발화 요소를 추출한다. 발화 요소가 추출되면, 대화형 서버(200)는 추출된 발화 요소를 분석하여 주요 특징을 나타내는 제1 발화 요소와 실행 명령을 나타내는 제2 발화 요소가 있는지 여부를 판단한다(S710). 판단 결과, 추출된 발화 요소가 제1 발화 요소 및 제2 발화 요소 중 적어도 하나의 발화 요소를 포함하지 않는 것으로 판단되면, 대화형 서버(200)는 후술할 단계 S740을 통해 이전 발화 이력 정보가 있는지 여부를 판단한다.
한편, 사용자의 발화 음성으로부터 제1 및 제2 발화 요소가 추출되면, 대화형 서버(200)는 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 존재하는지 여부를 판단한다(S720). 판단 결과, 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 대화형 서버(200)는 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어를 조합하여 응답 정보를 생성한다(S730). 한편, 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 존재하지 않으면, 대화형 서버(200)는 사용자의 발화 음성이 수신되기 이전에 수신된 발화 음성에 대한 발화 이력 정보가 존재하는지 여부를 판단한다(S740). 판단 결과, 발화 이력 정보가 존재하지 않으면, 대화형 서버(200)는 사용자의 발화 음성에 대한 응답 정보를 생성하지 않는다. 한편, 발화 이력 정보가 존재하면, 대화형 서버(200)는 사용자의 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보를 획득한다(S750). 이후, 대화형 서버(200)는 획득한 발화 이력 정보 내에서 사용자의 발화 음성으로부터 추출된 제1 발화 요소에 대응되는 실행어 및 제2 발화 요소에 대응되는 명령어를 사용자의 발화 음성에 대응되는 실행어 및 명령어로 추정한다(S760). 이 같이, 사용자의 발화 음성에 대응되는 실행어 및 명령어가 추정되면, 대화형 서버(200)는 추정된 실행어 및 명령어를 조합하여 응답 정보를 생성한다(S770).
먼저, 사용자의 발화 음성으로부터 추출된 발화 요소가 제1 및 제2 발화 요소 중 적어도 하나를 포함하지 않는 경우, 대화형 서버(200)에서 사용자의 발화 음성에 대한 응답 정보를 생성하는 방법에 대해서 설명하도록 한다.
예를 들어, "그래"와 같은 발화 음성의 경우, 대화형 서버(200)는 "그래"라는 발화 음성으로부터 제1 및 제2 발화 요소를 추출하지 못한다. 이 경우, 대화형 서버(200)는 "그래"라는 발화 음성이 불명확한 것으로 판단하고, 기저장된 발화 이력 정보 중 "그래"라는 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내에 저장된 이전 발화 이력 정보를 획득한다. 예를 들어, 획득한 이전 발화 이력 정보에 포함된 발화 음성이 "TV 꺼줘"이면, 대화형 서버(200)는 "TV"에 대한 제1 발화 요소와 "꺼줘"라는 제2 발화 요소를 추출한다. 이후, 대화형 서버(200)는 추출된 제1 및 제2 발화 요소에 기초하여 현재 수신된 "그래"라는 발화 음성이 컨펌(confirm)인 것으로 추정한다. 이에 따라, 대화형 서버(200)는 이전 발화 이력 정보로부터 추출된 "TV"에 대한 제1 발화 요소에 기초하여 실행 영역이 장치 제어인 것으로 판단한다. 또한, 대화형 서버(200)는 기저장된 제1 발화 요소별 정의된 실행어를 참조하여 "TV"에 대한 제1 발화 요소에 대응되는 실행어 "$TV$"를 획득할 수 있다. 또한, 대화형 서버(200)는 장치 제어로 판단된 실행 영역에 기초하여 "꺼줘"에 대한 제2 발화 요소의 타입이 장치 기능 실행과 관련된 것으로 판단한다. 따라서, 대화형 서버(200)는 기저장된 제2 발화 요소별 정의된 명령어 중 장치 기능 실행에 대응되는 명령어를 획득한다. 이후, 대화형 서버(200)는 장치 기능 실행에 대응하여 획득한 명령어 중 전원 제어에 대응되는 명령어 "device_exectue_turn off"를 획득할 수 있다. 이후, 대화형 서버(200)는 제1 발화 요소에 대응되는 실행어 "$TV$"와 제2 발화 요소에 대응되는 명령어 "device_exectue_turn off"를 조합하여 "device_exectue_turn off($TV$)"라는 실행 명령 스크립트를 생성한다. 이 같은 실행 명령 스크립트가 생성되면, 대화형 서버(200)는 생성된 실행 명령 스크립트를 포함하는 응답 정보를 생성할 수 있다.
이하에서는, 사용자의 발화 음성으로부터 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 존재하는 경우, 대화형 서버(200)에서 사용자의 발화 음성에 대한 응답 정보를 생성하는 방법에 대해서 설명하도록 한다.
한편, "○○○(컨텐츠명) 보여줘"라는 발화 음성이 입력되면, 대화형 서버(200)는 입력된 발화 음성으로부터 "○○○(컨텐츠명)"에 대한 제1 발화 요소 및 "찾아줘"라는 제2 발화 요소를 추출할 수 있다. 이 같은 제1 및 제2 발화 요소가 추출되면, 대화형 서버(200)는 추출된 제1 발화 요소에 기초하여 실행 영역이 컨텐츠인 것으로 판단한다. 또한, 대화형 서버(200)는 기저장된 제1 발화 요소별 정의된 실행어 중 "○○○(컨텐츠명)"에 대한 제1 발화 요소에 대응되는 실행어 "$○○○(컨텐츠명)$"를 획득할 수 있다. 또한, 대화형 서버(200)는 컨텐츠로 판단된 실행 영역에 기초하여 "찾아줘"에 대한 제2 발화 요소의 타입이 컨텐츠 검색과 관련된 것으로 판단한다. 따라서, 대화형 서버(200)는 기저장된 제2 발화 요소별 정의된 명령어 중 컨텐츠 검색에 대응되는 명령어 "content_search"를 획득할 수 있다.
이와 같이, 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 획득되면, 대화형 서버는 획득한 실행어 "$○○○(컨텐츠명)$"와 명령어 "content_search"를 조합하여 "content_search($○○○(컨텐츠명)$)"라는 실행 명령 스크립트를 생성한다. 이 같은 실행 명령 스크립트가 생성되면, 대화형 서버(200)는 생성된 실행 명령 스크립트를 포함하는 응답 정보를 생성할 수 있다.
이하에서는, 사용자의 발화 음성으로부터 추출된 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 부존재하는 경우, 대화형 서버(200)에서 사용자의 발화 음성에 대한 응답 정보를 생성하는 방법에 대해서 설명하도록 한다.
예를 들어, "첫번째 거 선택해줘"라는 발화 음성의 경우, 대화형 서버(200)는 "첫번째"라는 제1 발화 요소와 "선택해줘"라는 제2 발화 요소를 추출할 수 있다. 이 같은 제1 및 제2 발화 요소가 추출되면, 대화형 서버(200)는 제1 및 제2 발화 요소에 대응되는 실행어 및 명령어가 기저장되어 있는지 여부를 판단한다. 구체적으로, 대화형 서버(200)는 기저장된 제1 발화 요소별 정의된 실행어를 참조하여 "첫번째"라는 제1 발화 요소에 대응되는 실행어 "$1st$"를 획득할 수 있다. 한편, 대화형 서버(200)는 추출된 제1 발화 요소에 기초하여 실행 영역 판단이 가능한지 여부를 판단한다. 판단 결과, "첫번째"에 대한 제1 발화 요소로부터 실행 영역이 불가능한 것으로 판단되면, 대화형 서버(200)는 기저장된 제2 발화 요소별 정의된 명령어로부터 "선택해줘"라는 제2 발화 요소에 대응되는 명령어를 획득하지 못한다. 따라서, 대화형 서버(200)는 "첫번째 거 선택해줘"라는 발화 음성으로부터 발화 음성에 대한 서비스를 제공하기 위한 실행 영역 및 실행 명령이 불명확한 것으로 판단한다. 이 같은 판단 결과에 따라, 대화형 서버(200)는 기저장된 발화 이력 정보 중 "첫번째 거 선택해줘"라는 발화 음성이 수신된 시점을 기준으로 기설정된 시간 범위 이내에 저장된 발화 이력 정보가 있는지 여부를 판단한다. 즉, 대화형 서버(200)는 기저장된 발화 이력 정보 중 "첫번째 거 선택해줘"라는 발화 음성이 수신된 시간과 가장 최근에 저장된 이전 발화 이력 정보의 시간 차이가 기설정된 시간 범위 내에 속하는지 여부를 판단한다. 판단 결과, 이전 발화 이력 정보가 기설정된 시간 범위 내에 속하지 않은 것으로 판단되면, 대화형 서버(200)는 "첫번째 거 선택해줘"라는 발화 음성에 대한 응답 정보를 생성하지 않는다. 한편, 이전 발화 이력 정보가 기설정된 시간 범위 내에 속하는 것으로 판단되면, 대화형 서버(200)는 이전 발화 이력 정보에 포함된 발화 음성의 텍스트 정보로부터 제1 및 제2 발화 요소를 추출한다.
예를 들어, 이전 발화 이력 정보에 포함된 발화 음성이 "○○○(컨텐츠명) 찾아줘"이면, 대화형 서버(200)는 "○○○(컨텐츠명)"에 대한 제1 발화 요소와 "찾아줘"라는 제2 발화 요소를 추출한다. 이후, 대화형 서버(200)는 이전 발화 이력 정보에 포함된 발화 음성으로부터 추출된 제1 및 제2 발화 요소 중 "○○○(컨텐츠명)"에 대한 제1 발화 요소에 기초하여 "첫번째"에 대한 제1 발화 요소가 "○○○(컨텐츠명)"에 대한 제1 발화 요소인 것으로 추정한다. 이후, 대화형 서버(200)는 추정된 제1 발화 요소에 기초하여 실행 영역이 장치 UI 제어인 것으로 판단하고, 기저장된 제2 발화 요소별 정의된 명령어 중 장치 UI 제어에 대응되는 명령어 "device_select"를 획득할 수 있다. 이후, 대화형 서버(200)는 기획득한 제1 발화 요소에 대응되는 실행어 "$1st$"와 제2 발화 요소에 대응되는 명령어 "device_select"를 조합하여 "device_select($1st$)"라는 실행 명령 스크립트를 생성한다. 이 같은 실행 명령 스크립트가 생성되면, 대화형 서버(200)는 생성된 실행 명령 스크립트를 포함하는 응답 정보를 생성할 수 있다.
이와 같이, 본 발명에 따른 대화형 서버(200)는 사용자의 발화 음성을 분석하여 사용자의 발화 의도를 파악하고, 그 파악된 발화 의도에 기초하여 응답 정보 생성 여부를 판단한다. 판단 결과, 사용자의 발화 의도에 기초하여 응답 정보 생성이 불가능하면, 대화형 서버(200)는 사용자의 이전 발화 음성에 기초하여 현재 사용자의 발화 음성에 대한 응답 정보를 생성할 수 있다. 따라서, 사용자는 특정 발화에 국한되지 않고 자신이 표현하고자 하는 방식대로 발화하여 그에 따른 서비스를 제공받을 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다.
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
10 : 제1 서버 20 : 제2 서버
100 : 디스플레이 장치 110 : 입력부
120,210 : 통신부 130 : 디스플레이부
140,250 : 제어부 150,230 : 저장부
200 : 대화형 서버 220 : 음성 처리부
240 : 추출부 300 : 컨텐츠 제공 서버
400 : 외부 서버

Claims (14)

  1. 디스플레이 장치와 통신을 수행하여 발화 음성 신호를 수신하는 통신부;
    상기 발화 음성 신호가 수신되기 이전에 상기 디스플레이 장치로부터 수신된 발화 음성 신호에 대한 발화 이력 정보를 저장하는 저장부;
    상기 수신된 발화 음성 신호로부터 발화 요소를 추출하는 추출부; 및
    상기 저장부에 저장된 발화 이력 정보 및 상기 추출된 발화 요소에 기초하여 응답 정보를 생성하고, 상기 생성된 응답 정보를 디스플레이 장치로 전송하는 제어부;
    를 포함하는 대화형 서버.
  2. 제 1 항에 있어서,
    상기 제어부는,
    상기 저장부에 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 상기 발화 요소에 대응되는 실행어 및 명령어를 조합하여 상기 응답 정보를 생성하고,
    상기 저장부에 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 저장부에 저장된 발화 이력 정보에 기초하여 상기 추출된 발화 요소에 대응되는 실행어 및 명령어를 추정하고, 추정된 실행어 및 명령어를 조합하여 상기 응답 정보를 생성하는 것을 특징으로 하는 대화형 서버.
  3. 제 2 항에 있어서,
    상기 발화 음성 신호는 제1 발화 요소 및 제2 발화 요소를 포함하며,
    상기 제어부는,
    상기 저장부에 상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보를 획득하고, 상기 획득된 발화 이력 정보 내에서 상기 제1 발화 요소에 대응되는 실행어 및 상기 제2 발화 요소에 대응되는 명령어를 상기 발화 음성 신호에 대응되는 실행어 및 명령어로 추정하는 것을 특징으로 하는 대화형 서버.
  4. 제 3 항에 있어서,
    상기 제어부는,
    상기 저장부에 저장된 발화 이력 정보 중 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보가 저장되어 있지 않으면, 상기 응답 정보를 생성하지 않는 것을 특징으로 하는 대화형 서버.
  5. 제 3 항에 있어서,
    상기 제어부는,
    상기 발화 음성 신호 내에 제1 발화 요소 및 제2 발화 요소 중 적어도 하나가 포함되어 있지 않으면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보에 기초하여 상기 발화 음성 신호에 대응되는 응답 정보를 생성하는 것을 특징으로 하는 대화형 서버.
  6. 제 1 항에 있어서,
    상기 수신된 발화 음성 신호를 텍스트 정보로 변환하는 음성 처리부;
    를 더 포함하는 것을 특징으로 하는 대화형 서버.
  7. 대화형 서버의 제어 방법에 있어서,
    디스플레이 장치로부터 발화 음성 신호를 수신하는 단계;
    상기 수신된 발화 음성 신호로부터 발화 요소를 추출하는 단계;
    기저장된 발화 이력 정보 및 상기 추출된 발화 요소에 기초하여 응답 정보를 생성하는 단계; 및
    상기 생성된 응답 정보를 상기 디스플레이 장치로 전송하는 단계;를 포함하며,
    상기 기저장된 발화 이력 정보는
    상기 발화 음성 신호가 수신되기 이전에 상기 디스플레이 장치로부터 수신된 발화 음성 신호에 기초하여 생성된 정보인 것을 특징으로 하는 제어 방법.
  8. 제 7 항에 있어서,
    상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 존재하는지 여부를 판단하는 단계;를 더 포함하며,
    상기 생성하는 단계는,
    상기 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 상기 발화 요소에 대응되는 실행어 및 명령어를 조합하여 응답 정보를 생성하고,
    상기 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 기저장된 발화 이력 정보에 기초하여 상기 추출된 발화 요소에 대응되는 실행어 및 명령어를 추정하고, 상기 추정된 실행어 및 명령어를 조합하여 상기 응답 정보를 생성하는 것을 특징으로 하는 제어 방법.
  9. 제 8 항에 있어서,
    상기 발화 음성 신호는 제1 발화 요소 및 제2 발화 요소를 포함하며,
    상기 생성하는 단계는,
    상기 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보를 획득하고, 상기 획득된 발화 이력 정보 내에서 상기 제1 발화 요소에 대응되는 실행어 및 상기 제2 발화 요소에 대응되는 명령어를 상기 발화 음성 신호에 대응되는 실행어 및 명령어로 추정하는 것을 특징으로 하는 제어 방법
  10. 제 9 항에 있어서,
    상기 생성하는 단계는,
    상기 발화 이력 정보 중 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보가 저장되어 있지 않으면, 상기 응답 정보를 생성하지 않는 것을 특징으로 하는 제어 방법.
  11. 제 9 항에 있어서,
    상기 생성하는 단계는,
    상기 발화 음성 신호 내에 제1 발화 요소 및 제2 발화 요소 중 적어도 하나가 포함되어 있지 않으면, 상기 발화 이력 정보 중에서 상기 발화 음성 신호가 수신된 시점을 기준으로 기설정된 시간 범위 이내의 발화 이력 정보에 기초하여 상기 발화 음성 신호에 대응되는 응답 정보를 생성하는 것을 특징으로 하는 제어 방법.
  12. 제 7 항에 있어서,
    상기 수신된 발화 음성 신호를 텍스트 정보로 변환하는 단계;
    를 더 포함하는 것을 특징으로 하는 대화형 서버.
  13. 대화형 시스템에 있어서,
    사용자의 발화 음성이 입력되면, 입력된 발화 음성에 대응되는 기능을 수행하는 디스플레이 장치; 및
    상기 디스플레이 장치로부터 발화 음성 신호가 수신되면, 상기 발화 음성 신호로부터 발화 요소를 추출하고, 기저장된 발화 이력 정보 및 상기 추출된 발화 요소에 기초하여 응답 정보를 생성하여 상기 디스플레이 장치로 전송하는 대화형 서버;를 포함하며,
    상기 디스플레이 장치는,
    상기 대화형 서버로부터 수신한 응답 정보에 기초하여 상기 사용자 의도에 대응되는 기능을 수행하며,
    상기 기저장된 발화 이력 정보는 상기 발화 음성 신호가 수신되기 이전에 상기 디스플레이 장치로부터 수신된 발화 음성 신호에 기초하여 생성된 정보인 것을 특징으로 하는 대화형 시스템.
  14. 제 13 항에 있어서,
    상기 대화형 서버는,
    상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 존재하면, 상기 발화 요소에 대응되는 실행어 및 명령어에 기초하여 상기 응답 정보를 생성하고,
    상기 추출된 발화 요소에 대응되는 실행어 및 명령어가 부존재하면, 기저장된 발화 이력 정보에 기초하여 상기 추출된 발화요소에 대응되는 실행어 및 명령어를 추정하고, 추정된 실행어 및 명령어를 조합하여 상기 응답 정보를 생성하는 것을 특징으로 하는 대화형 시스템.
KR1020130001829A 2013-01-07 2013-01-07 대화형 서버, 그 제어 방법 및 대화형 시스템 Ceased KR20140089871A (ko)

Priority Applications (9)

Application Number Priority Date Filing Date Title
KR1020130001829A KR20140089871A (ko) 2013-01-07 2013-01-07 대화형 서버, 그 제어 방법 및 대화형 시스템
EP13199897.3A EP2753054B1 (en) 2013-01-07 2013-12-31 Interactive Server, Control Method thereof, and Interactive System
US14/149,296 US10891968B2 (en) 2013-01-07 2014-01-07 Interactive server, control method thereof, and interactive system
CN202211532442.1A CN115793945A (zh) 2013-01-07 2014-01-07 交互服务器及其控制方法和交互系统
CN201710749861.3A CN107564519B (zh) 2013-01-07 2014-01-07 交互服务器及其控制方法和交互系统
CN202210035613.3A CN114360543B (zh) 2013-01-07 2014-01-07 交互服务器及其控制方法和交互系统
CN201410006748.2A CN103914234A (zh) 2013-01-07 2014-01-07 交互服务器及其控制方法和交互系统
US17/112,170 US11854570B2 (en) 2013-01-07 2020-12-04 Electronic device providing response to voice input, and method and computer readable medium thereof
US18/512,348 US20240096345A1 (en) 2013-01-07 2023-11-17 Electronic device providing response to voice input, and method and computer readable medium thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130001829A KR20140089871A (ko) 2013-01-07 2013-01-07 대화형 서버, 그 제어 방법 및 대화형 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020160004252A Division KR101660269B1 (ko) 2016-01-13 2016-01-13 대화형 서버, 그 제어 방법 및 대화형 시스템

Publications (1)

Publication Number Publication Date
KR20140089871A true KR20140089871A (ko) 2014-07-16

Family

ID=49911359

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130001829A Ceased KR20140089871A (ko) 2013-01-07 2013-01-07 대화형 서버, 그 제어 방법 및 대화형 시스템

Country Status (4)

Country Link
US (3) US10891968B2 (ko)
EP (1) EP2753054B1 (ko)
KR (1) KR20140089871A (ko)
CN (4) CN103914234A (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018135753A1 (ko) * 2017-01-17 2018-07-26 삼성전자주식회사 전자 장치 및 그의 동작 방법
WO2019039915A1 (en) * 2017-08-25 2019-02-28 Samsung Electronics Co., Ltd. METHOD FOR ACTIVATION OF VOICE RECOGNITION SERVICE AND ELECTRONIC DEVICE IMPLEMENTING THE SAME
WO2021162363A1 (en) * 2020-02-10 2021-08-19 Samsung Electronics Co., Ltd. Method and apparatus for providing voice assistant service
WO2023008781A1 (ko) * 2021-07-28 2023-02-02 삼성전자 주식회사 전자 장치 및 전자 장치의 동작 방법
US12315494B2 (en) 2021-07-28 2025-05-27 Samsung Electronics Co., Ltd. Electronic device and operation method

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
KR20140089871A (ko) * 2013-01-07 2014-07-16 삼성전자주식회사 대화형 서버, 그 제어 방법 및 대화형 시스템
US10157618B2 (en) * 2013-05-02 2018-12-18 Xappmedia, Inc. Device, system, method, and computer-readable medium for providing interactive advertising
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
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
US10018977B2 (en) * 2015-10-05 2018-07-10 Savant Systems, Llc History-based key phrase suggestions for voice control of a home automation system
US9978366B2 (en) 2015-10-09 2018-05-22 Xappmedia, Inc. Event-based speech interactive media player
CN107293294B (zh) * 2016-03-31 2019-07-16 腾讯科技(深圳)有限公司 一种语音识别处理方法及装置
US12197817B2 (en) 2016-06-11 2025-01-14 Apple Inc. Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
CN108663942B (zh) * 2017-04-01 2021-12-07 青岛有屋科技有限公司 一种语音识别设备控制方法、语音识别设备和中控服务器
CN107919120B (zh) 2017-11-16 2020-03-13 百度在线网络技术(北京)有限公司 语音交互方法及装置,终端,服务器及可读存储介质
EP3739892A4 (en) * 2018-01-08 2021-08-04 LG Electronics Inc. DISPLAY DEVICE AND PROVIDED SYSTEM
KR102515023B1 (ko) 2018-02-23 2023-03-29 삼성전자주식회사 전자 장치 및 그 제어 방법
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
JP7231342B2 (ja) * 2018-07-09 2023-03-01 シャープ株式会社 コンテンツ表示システム及び表示装置
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
CN109947252A (zh) * 2019-03-21 2019-06-28 百度在线网络技术(北京)有限公司 配置智能设备交互功能的方法和装置
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
WO2020230923A1 (ko) * 2019-05-15 2020-11-19 엘지전자 주식회사 음성 인식 서비스를 제공하기 위한 디스플레이 장치 및 그의 동작 방법
CN110176229A (zh) * 2019-05-28 2019-08-27 北京增强智能科技有限公司 一种语音处理方法和装置
JP7405660B2 (ja) * 2020-03-19 2023-12-26 Lineヤフー株式会社 出力装置、出力方法及び出力プログラム
US12301635B2 (en) 2020-05-11 2025-05-13 Apple Inc. Digital assistant hardware abstraction
KR20220005348A (ko) * 2020-07-06 2022-01-13 삼성전자주식회사 인공지능 가상 비서 서비스에서의 화면 제공 방법 및 이를 지원하는 사용자 단말 장치 및 서버
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US20220076694A1 (en) * 2020-09-08 2022-03-10 Lifeline Systems Company Cognitive impairment detected through audio recordings
US11908473B2 (en) * 2022-05-10 2024-02-20 Apple Inc. Task modification after task initiation

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2734750B2 (ja) * 1990-07-02 1998-04-02 日本電気株式会社 音声認識装置
US5748841A (en) * 1994-02-25 1998-05-05 Morin; Philippe Supervised contextual language acquisition system
JPH08331237A (ja) * 1995-05-31 1996-12-13 Sharp Corp 留守番電話装置
US6275788B1 (en) * 1996-09-26 2001-08-14 Mitsubishi Denki Kabushiki Kaisha Interactive processing apparatus having natural language interfacing capability, utilizing goal frames, and judging action feasibility
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
US6233561B1 (en) * 1999-04-12 2001-05-15 Matsushita Electric Industrial Co., Ltd. Method for goal-oriented speech translation in hand-held devices using meaning extraction and dialogue
JP2000339250A (ja) * 1999-05-25 2000-12-08 Nippon Telegr & Teleph Corp <Ntt> 対話メッセージ生成方法、その装置、そのプログラムを記録した媒体
KR20010004832A (ko) 1999-06-30 2001-01-15 구자홍 음성인식을 이용한 기기 제어장치
EP1079387A3 (en) * 1999-08-26 2003-07-09 Matsushita Electric Industrial Co., Ltd. Mechanism for storing information about recorded television broadcasts
US8130918B1 (en) * 1999-09-13 2012-03-06 Microstrategy, Incorporated System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with closed loop transaction processing
US6442522B1 (en) * 1999-10-12 2002-08-27 International Business Machines Corporation Bi-directional natural language system for interfacing with multiple back-end applications
US6622119B1 (en) * 1999-10-30 2003-09-16 International Business Machines Corporation Adaptive command predictor and method for a natural language dialog system
US6526382B1 (en) * 1999-12-07 2003-02-25 Comverse, Inc. Language-oriented user interfaces for voice activated services
US6456978B1 (en) * 2000-01-31 2002-09-24 Intel Corporation Recording information in response to spoken requests
US6757362B1 (en) * 2000-03-06 2004-06-29 Avaya Technology Corp. Personal virtual assistant
US6567805B1 (en) * 2000-05-15 2003-05-20 International Business Machines Corporation Interactive automated response system
JP2002041276A (ja) * 2000-07-24 2002-02-08 Sony Corp 対話型操作支援システム及び対話型操作支援方法、並びに記憶媒体
BR0114879A (pt) * 2000-10-24 2003-08-12 Thomson Licensing Sa Método de dimensionar uma página de executor de meios embutido
US20020198714A1 (en) * 2001-06-26 2002-12-26 Guojun Zhou Statistical spoken dialog system
US20120087637A1 (en) * 2002-01-29 2012-04-12 Logan James D Methods and apparatus for recording and replaying video broadcasts
US7398209B2 (en) 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US20030235183A1 (en) * 2002-06-21 2003-12-25 Net2Phone, Inc. Packetized voice system and method
KR100490406B1 (ko) * 2002-07-11 2005-05-17 삼성전자주식회사 음성 명령어 처리 장치 및 방법
JP4223832B2 (ja) * 2003-02-25 2009-02-12 富士通株式会社 適応型音声対話システム及び方法
JP2005065156A (ja) * 2003-08-20 2005-03-10 Victor Co Of Japan Ltd 音声認識処理システム及びそれに用いる映像信号記録再生装置
GB2409750B (en) * 2004-01-05 2006-03-15 Toshiba Res Europ Ltd Speech recognition system and technique
US20060075429A1 (en) * 2004-04-30 2006-04-06 Vulcan Inc. Voice control of television-related information
KR100617711B1 (ko) 2004-06-25 2006-08-28 삼성전자주식회사 휴대단말기에서 음성인식구동 방법
US7716056B2 (en) * 2004-09-27 2010-05-11 Robert Bosch Corporation Method and system for interactive conversational dialogue for cognitively overloaded device users
US7925506B2 (en) * 2004-10-05 2011-04-12 Inago Corporation Speech recognition accuracy via concept to keyword mapping
WO2006085565A1 (ja) * 2005-02-08 2006-08-17 Nippon Telegraph And Telephone Corporation 情報通信端末、情報通信システム、情報通信方法、情報通信プログラムおよびそれを記録した記録媒体
WO2007019583A2 (en) * 2005-08-09 2007-02-15 Sipera Systems, Inc. System and method for providing network level and nodal level vulnerability protection in voip networks
WO2007074797A1 (ja) * 2005-12-28 2007-07-05 International Business Machines Corporation クライアント・サーバ・システムにおける負荷分散
CN1794233A (zh) * 2005-12-28 2006-06-28 刘文印 一种网上用户交互问答方法及其系统
US8204751B1 (en) 2006-03-03 2012-06-19 At&T Intellectual Property Ii, L.P. Relevance recognition for a human machine dialog system contextual question answering based on a normalization of the length of the user input
JP4906379B2 (ja) * 2006-03-22 2012-03-28 富士通株式会社 音声認識装置、音声認識方法、及びコンピュータプログラム
CN101064753B (zh) * 2006-04-28 2011-11-30 朗迅科技公司 未应答电话呼叫的电子邮件通知系统和方法
US20070294721A1 (en) * 2006-06-20 2007-12-20 Sbc Knowledge Ventures, Lp System and method of providing supplemental video content related to targeted advertisements in a video stream
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
US20080183852A1 (en) * 2007-01-26 2008-07-31 Pramer David M Virtual information technology assistant
WO2008106733A1 (en) * 2007-03-02 2008-09-12 Enikos Pty Limited A graphical user interface
TWI321313B (en) 2007-03-03 2010-03-01 Ind Tech Res Inst Apparatus and method to reduce recognization errors through context relations among dialogue turns
US10210531B2 (en) * 2007-06-18 2019-02-19 Yellowpages.Com Llc Systems and methods to facilitate the specification of a complex geographic area
KR101322486B1 (ko) 2007-06-28 2013-10-25 주식회사 케이티 범용 대화서비스 장치 및 그 방법
DE112008001334B4 (de) * 2007-07-02 2016-12-15 Mitsubishi Electric Corp. Spracherkennungsvorrichtung
US8091103B2 (en) * 2007-07-22 2012-01-03 Overlay.Tv Inc. Server providing content directories of video signals and linkage to content information sources
US8560307B2 (en) * 2008-01-28 2013-10-15 Qualcomm Incorporated Systems, methods, and apparatus for context suppression using receivers
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8531522B2 (en) * 2008-05-30 2013-09-10 Verint Systems Ltd. Systems and methods for video monitoring using linked devices
EP4224472B1 (en) * 2008-07-11 2024-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder
US9858925B2 (en) * 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
WO2011004305A1 (en) * 2009-07-05 2011-01-13 Delegate Communications Ltd. System and method for brokering communication dependent tasks
JP5380543B2 (ja) * 2009-09-25 2014-01-08 株式会社東芝 音声対話装置およびプログラム
KR101673032B1 (ko) * 2010-01-25 2016-11-04 엘지전자 주식회사 화상 통신 방법 및 그를 이용한 디지털 tv
US20110227911A1 (en) * 2010-03-22 2011-09-22 Lg Electronics Inc. Image display device and method for operating the same
JP2011215421A (ja) * 2010-03-31 2011-10-27 Toshiba Corp 音声対話装置
US8522283B2 (en) * 2010-05-20 2013-08-27 Google Inc. Television remote control data transfer
JP2011250367A (ja) * 2010-05-31 2011-12-08 Sony Corp 表示装置、映像装置、メニュー画面表示方法、および映像表示システム
US8738377B2 (en) * 2010-06-07 2014-05-27 Google Inc. Predicting and learning carrier phrases for speech input
US20120131609A1 (en) * 2010-11-19 2012-05-24 Media Patents, S.L. Methods, apparatus and systems for delivering and receiving data
US20120131626A1 (en) * 2010-11-19 2012-05-24 Media Patents, S.L. Methods, apparatus and systems for delivering and receiving data
US20120154255A1 (en) * 2010-12-17 2012-06-21 Microsoft Corporation Computing device having plural display parts for presenting plural spaces
KR20120080069A (ko) 2011-01-06 2012-07-16 삼성전자주식회사 디스플레이 장치 및 그 음성 제어 방법
EP3734408A1 (en) * 2011-02-10 2020-11-04 Samsung Electronics Co., Ltd. Portable device comprising a touch-screen display, and method for controlling same
CN102750125A (zh) 2011-04-19 2012-10-24 无锡天堂软件技术有限公司 基于语音的控制方法与控制系统
CN102324241A (zh) * 2011-05-04 2012-01-18 鸿富锦精密工业(深圳)有限公司 具有语音控制功能的电子装置及语音控制方法
US20130018659A1 (en) * 2011-07-12 2013-01-17 Google Inc. Systems and Methods for Speech Command Processing
US20180032997A1 (en) * 2012-10-09 2018-02-01 George A. Gordon System, method, and computer program product for determining whether to prompt an action by a platform in connection with a mobile device
US20140095171A1 (en) * 2012-10-01 2014-04-03 Nuance Communications, Inc. Systems and methods for providing a voice agent user interface
KR20140089871A (ko) * 2013-01-07 2014-07-16 삼성전자주식회사 대화형 서버, 그 제어 방법 및 대화형 시스템

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018135753A1 (ko) * 2017-01-17 2018-07-26 삼성전자주식회사 전자 장치 및 그의 동작 방법
US11450315B2 (en) 2017-01-17 2022-09-20 Samsung Electronics Co., Ltd. Electronic apparatus and method for operating same
WO2019039915A1 (en) * 2017-08-25 2019-02-28 Samsung Electronics Co., Ltd. METHOD FOR ACTIVATION OF VOICE RECOGNITION SERVICE AND ELECTRONIC DEVICE IMPLEMENTING THE SAME
US10692495B2 (en) 2017-08-25 2020-06-23 Samsung Electronics Co., Ltd Method of receiving commands for activating voice-recognition service and electronic device for implementing same
WO2021162363A1 (en) * 2020-02-10 2021-08-19 Samsung Electronics Co., Ltd. Method and apparatus for providing voice assistant service
WO2023008781A1 (ko) * 2021-07-28 2023-02-02 삼성전자 주식회사 전자 장치 및 전자 장치의 동작 방법
US12315494B2 (en) 2021-07-28 2025-05-27 Samsung Electronics Co., Ltd. Electronic device and operation method

Also Published As

Publication number Publication date
EP2753054A1 (en) 2014-07-09
CN107564519A (zh) 2018-01-09
US20140195249A1 (en) 2014-07-10
US11854570B2 (en) 2023-12-26
CN114360543A (zh) 2022-04-15
US20240096345A1 (en) 2024-03-21
CN114360543B (zh) 2023-03-24
US10891968B2 (en) 2021-01-12
EP2753054B1 (en) 2018-02-28
CN115793945A (zh) 2023-03-14
US20210118463A1 (en) 2021-04-22
CN103914234A (zh) 2014-07-09
CN107564519B (zh) 2022-03-15

Similar Documents

Publication Publication Date Title
KR20140089871A (ko) 대화형 서버, 그 제어 방법 및 대화형 시스템
JP6802305B2 (ja) 対話型サーバ、ディスプレイ装置及びその制御方法
US9721572B2 (en) Device control method and electric device
KR102245747B1 (ko) 사용자 명령어 등록을 위한 디스플레이 장치 및 방법
KR102215579B1 (ko) 대화형 시스템, 디스플레이 장치 및 그 제어 방법
KR102056461B1 (ko) 디스플레이 장치 및 디스플레이 장치의 제어 방법
KR102211595B1 (ko) 음성 인식 장치 및 그 제어 방법
KR102084739B1 (ko) 대화형 서버, 디스플레이 장치 및 제어 방법
KR101914708B1 (ko) 서버 및 서버의 제어 방법
EP2725577A2 (en) Voice recognition apparatus and voice recognition method thereof
US10535337B2 (en) Method for correcting false recognition contained in recognition result of speech of user
EP2557565A1 (en) Voice recognition method and apparatus
US20140123185A1 (en) Broadcast receiving apparatus, server and control methods thereof
KR20140087717A (ko) 디스플레이 장치 및 제어 방법
KR101660269B1 (ko) 대화형 서버, 그 제어 방법 및 대화형 시스템
KR102049833B1 (ko) 대화형 서버, 디스플레이 장치 및 그 제어 방법
KR20140137263A (ko) 대화형 서버, 디스플레이 장치 및 제어 방법
KR20140115844A (ko) 대화형 서버, 디스플레이 장치 및 제어 방법

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20130107

PG1501 Laying open of application
AMND Amendment
A201 Request for examination
A302 Request for accelerated examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20150730

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20130107

Comment text: Patent Application

PA0302 Request for accelerated examination

Patent event date: 20150730

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

Patent event date: 20130107

Patent event code: PA03021R01I

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20150818

Patent event code: PE09021S01D

AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20151023

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20150818

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

AMND Amendment
PX0901 Re-examination

Patent event code: PX09011S01I

Patent event date: 20151023

Comment text: Decision to Refuse Application

Patent event code: PX09012R01I

Patent event date: 20151019

Comment text: Amendment to Specification, etc.

Patent event code: PX09012R01I

Patent event date: 20150728

Comment text: Amendment to Specification, etc.

PX0601 Decision of rejection after re-examination

Comment text: Decision to Refuse Application

Patent event code: PX06014S01D

Patent event date: 20151214

Comment text: Amendment to Specification, etc.

Patent event code: PX06012R01I

Patent event date: 20151125

Comment text: Decision to Refuse Application

Patent event code: PX06011S01I

Patent event date: 20151023

Comment text: Amendment to Specification, etc.

Patent event code: PX06012R01I

Patent event date: 20151019

Comment text: Notification of reason for refusal

Patent event code: PX06013S01I

Patent event date: 20150818

Comment text: Amendment to Specification, etc.

Patent event code: PX06012R01I

Patent event date: 20150728

A107 Divisional application of patent
PA0107 Divisional application

Comment text: Divisional Application of Patent

Patent event date: 20160113

Patent event code: PA01071R01D