KR102384643B1 - 전자 장치 및 그 제어 방법 - Google Patents

전자 장치 및 그 제어 방법 Download PDF

Info

Publication number
KR102384643B1
KR102384643B1 KR1020170104238A KR20170104238A KR102384643B1 KR 102384643 B1 KR102384643 B1 KR 102384643B1 KR 1020170104238 A KR1020170104238 A KR 1020170104238A KR 20170104238 A KR20170104238 A KR 20170104238A KR 102384643 B1 KR102384643 B1 KR 102384643B1
Authority
KR
South Korea
Prior art keywords
artificial intelligence
voice
information
result information
intelligence servers
Prior art date
Application number
KR1020170104238A
Other languages
English (en)
Other versions
KR20190019401A (ko
Inventor
노시봉
정태호
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1020170104238A priority Critical patent/KR102384643B1/ko
Priority to US15/877,275 priority patent/US10593322B2/en
Publication of KR20190019401A publication Critical patent/KR20190019401A/ko
Application granted granted Critical
Publication of KR102384643B1 publication Critical patent/KR102384643B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Abstract

본 발명은 복수의 인공 지능 서버와 통신 가능한 이동 단말기에 관한 것으로, 음성을 수신하도록 형성된 음성 수신부와 서로 다른 시동어에 의하여 활성화되도록 설정된 복수의 인공 지능 서버와 통신하는 무선 통신부 및 기 설정된 시동어를 포함한 음성이 입력되는 것에 응답하여, 상기 복수의 인공 지능 서버마다 서로 다르게 설정된 복수의 시동어를 생성하고, 상기 생성된 복수의 시동어가 포함되도록 상기 음성을 변환하여, 상기 변환된 음성을 상기 복수의 인공 지능 서버에 각각 전송하며, 상기 복수의 인공 지능 서버로부터 상기 변환된 음성에 응답하여 생성된 복수의 결과 정보를 수신되면, 상기 복수의 결과 정보를 출력하는 제어부를 포함한다.

Description

전자 장치 및 그 제어 방법{ELECTRIC TERMINAL AND METHOD FOR CONTROLLING THE SAME}
본 발명은 복수의 인공 지능 서버와 통신 가능한 이동 단말기에 관한 것이다.
최근 하드웨어의 발전과 함께, 인간의 사고 과정, 즉 인지, 추론, 학습 등을 컴퓨팅 기술로 구현하는 인공 지능 기술이 비약적으로 발전하고 있다.
인공 지능 기술은 그 자체로 연구 대상이 될 뿐만 아니라, 컴퓨터 과학의 다른 분야와 직간접으로 결합되어, 다양한 기능들을 제공할 수 있다. 특히, 정보기술의 여러 분야에서 인공지능적 요소를 도입하여, 그 분야의 문제 풀이에 활용하려는 시도가 매우 활발하게 이루어지고 있다.
인공 지능 기술은 강한 인공지능과 약한 인공지능으로 구분된다. 강한 인공지능은 인간과 유사한 사고 및 의사 결정을 내릴 수 있는 기술 방식으로, 스스로 학습하여, 스스로 판단을 내리는 수준의 기술이다. 약한 인공지능은 계산 모델을 통하여, 지각, 추론 등의 인지 과정을 수행하여, 최적의 솔루션을 제공하는 수준의 기술이다.
이러한 개술 개발의 일환으로 사용자에게 가장 친숙한 단말기 상에 인공 지능 기술이 적용되어, 다양한 기능을 제공하고자 하는 시도들이 늘어나고 있다.
이러한 단말기는 이동 가능여부에 따라 이동 단말기(mobile/portable terminal) 및 고정 단말기(stationary terminal)으로 나뉠 수 있다. 다시 이동 단말기는 사용자의 직접 휴대 가능 여부에 따라 휴대(형) 단말기(handheld terminal) 및 거치형 단말기(vehicle mounted terminal)로 나뉠 수 있다.
현재 단말기는 인공 지능 기술을 통하여 정보를 처리하는 인공 지능 서버를 활용하여, 인공 지능 기술에 기반한 정보 처리를 수행하도록 구현되어 있다.
한편, 이러한 인공 지능 기술을 통하여 정보를 처리하는 인공 지능 서버는 서버를 제공하는 제공사 별로, 다양한 알고리즘으로 정보를 처리하도록 설정되어 있다. 따라서, 인공 지능 알고리즘의 종류나 서버가 학습한 정보의 량에 따라, 서버의 정보 처리 능력에 차이가 생기게 된다.
다만, 현재의 단말기는 인공 지능 기술을 통하여 정보를 처리하는 하나의 인공 지능 서버와만 통신을 수행하도록 설정되어 있다. 이에, 단말기와 통신하도록 설정된 인공 지능 서버는 특정 서버에서 학습하지 못한 정보를 처리하도록 요구하는 경우, 부정확한 정보 처리의 결과를 제공하게 되는 문제점이 발생하였다.
앞서 설명한 문제점을 해결하기 위하여, 본 발명은 인공 지능 기술을 통하여 정보를 처리하는 복수의 인공 지능 서버와의 통신을 통하여, 정보 처리의 정확도를 향상시키는 것을 일 목적으로 한다.
또한, 본 발명은 하나의 시동어을 이용하여, 서로 다른 시동어으로 구동되는 복수의 인공 지능 서버를 구동시키는 방법을 제공하는 것을 또 다른 목적으로 한다.
또한, 본 발명은 복수의 인공 지능 서버 중 가장 정확도가 높은 인공 지능 서버의 결과 정보를 사용자에게 제공하는 것을 또 다른 목적으로 한다.
본 발명에 따른 이동 단말기는, 음성을 수신하도록 형성된 음성 수신부와 서로 다른 시동어에 의하여 활성화되도록 설정된 복수의 인공 지능 서버와 통신하는 무선 통신부 및 기 설정된 시동어를 포함한 음성이 입력되는 것에 응답하여, 상기 복수의 인공 지능 서버마다 서로 다르게 설정된 복수의 시동어를 생성하고, 상기 생성된 복수의 시동어가 포함되도록 상기 음성을 변환하여, 상기 변환된 음성을 상기 복수의 인공 지능 서버에 각각 전송하며, 상기 복수의 인공 지능 서버로부터 상기 변환된 음성에 응답하여 생성된 복수의 결과 정보를 수신되면, 상기 복수의 결과 정보를 출력하는 제어부를 포함한다.
일 실시 예에 있어서, 상기 제어부는 상기 무선 통신부를 통하여 통신 연결 가능한 복수의 인공 지능 서버를 검색하고, 상기 복수의 인공 지능 서버와 통신 가능하도록 상기 검색된 복수의 인공 지능 서버 각각에 해당하는 통신 노드를 생성하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 복수의 인공 지능 서버에 통신 노드가 생성되는 경우, 상기 복수의 인공 지능 서버로부터 서로 다르게 설정된 시동어 정보 및 복수의 인공 지능 서버의 등록 정보를 수신하고, 상기 복수의 인공 지능 서버와 통신 수행을 위하여, 상기 수신된 시동어 및 등록 정보를 각 서버의 통신 노드에 등록하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 복수의 인공 지능 서버 각각에 대한 통신 노드가 생성되면, 상기 복수의 인공 지능 서버에 복수의 질문을 항목으로 포함하는 질문 리스트를 전송하고, 상기 복수의 인공 지능 서버로부터 상기 질문 리스트에 응답하여 생성된 답변 정보가 수신되면, 상기 답변 정보에 근거하여, 상기 복수의 인공 지능 서버 각각에 대한 평가 점수를 계산하며, 상기 계산된 평가 점수에 근거하여, 상기 복수의 인공 지능 서버 간의 우선 순위를 결정하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 결정된 우선 순위에 따라 복수의 결과 정보를 순차적으로 출력하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 답변 정보를 긍정 답변 및 부정 답변 중 어느 하나에 해당하는지 여부를 판단하고, 상기 판단 결과에 근거하여, 답변 정보를 전송한 인공 지능 서버의 평가 점수를 계산하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 답변 정보가 긍정 답변 및 부정 답변으로 분류되지 않는 경우, 상기 답변 정보를 모호한 답변으로 판단하고, 상기 답변 정보를 전송한 서버에 대하여 모호한 답변을 전송한 횟수를 저장하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 적어도 두 개의 인공 지능 서버가 동일한 평가 점수를 갖는 경우, 모호한 답변을 전송한 횟수가 적은 인공 지능 서버의 우선 순위를 높게 설정하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 수신된 복수의 결과 정보를 출력한 이 후, 상기 음성 수신부를 통하여 새로운 사용자 음성이 수신되는 경우, 상기 새로운 사용자 음성이 상기 복수의 결과 정보와 관련된 음성인지 여부를 판단하고, 판단 결과, 상기 새로운 사용자 음성이 복수의 결과 정보와 관련된 음성인 경우, 상기 새로운 사용자 음성에 근거하여, 상기 복수의 인공 지능 서버에 대한 평가 점수를 업데이트 하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 편단 결과, 상기 새로운 사용자 음성이 상기 복수의 결과 정보와 관련된 음성이 아닌 경우, 음성 인식 기능을 종료하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 복수의 결과 정보 중 우선 순위가 높은 일부 결과 정보가 출력된 경우, 상기 일부 결과 정보 이외의 나머지 결과 정보의 출력을 위한 사용자 제어 명령이 수신되는 경우, 상기 수신된 사용자 제어 명령에 응답하여, 나머지 결과 정보를 출력하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 복수의 결과 정보의 출력 이 후, 상기 복수의 결과 정보 중 특정 결과 정보에 관련된 새로운 음성이 수신되는 경우, 특정 결과 정보를 전송한 인공 지능 서버에만 상기 새로운 음성에 대응되는 음성 정보를 전송하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 기 설정된 시동어가 특정 인공 지능 서버에 설정된 시동어인 경우, 상기 특정 서버에만, 상기 음성을 전송하는 것을 특징으로 한다.
일 실시 예에 있어서, 상기 제어부는 상기 복수의 인공 지능 서버에서 전송한 결과 정보마다, 각 결과 정보를 전송한 인공 지능 서버의 식별 정보를 결합하여 출력하는 것을 특징으로 한다.
본 발명에 따른 이동 단말기의 제어 방법에 있어서, 복수의 인공 지능 서버와 통신 수행이 가능한 전자 장치에 있어서, 기 설정된 시동어가 포함된 음성을 수신하는 단계와 상기 기 설정된 시동어에 근거하여, 상기 복수의 인공 지능 서버마다 서로 다르게 설정된 복수의 시동어를 생성하는 단계와 상기 복수의 시동어가 포함되도록 상기 음성을 변환하는 단계와 상기 변환된 음성을 상기 복수의 인공 지능 서버에 전송하는 단계 및 상기 복수의 인공 지능 서버로부터 상기 변환된 음성에 응답하여 생성된 복수의 결과 정보가 수신되면, 상기 복수의 결과 정보를 출력하는 단계를 포함한다.
본 발명은 복수의 인공 지능 서버와의 통신을 통하여, 특정 정보를 인공 지능 기술을 이용하여 처리한 복수의 결과 정보를 획득할 수 있다. 이를 통하여, 본 발명은 사용자에게 인공 지능 기술을 이용하여 처리된 복수의 결과 정보를 제공할 수 있으며, 사용자는, 복수의 결과 정보 중 가장 정확도가 높은 결과 정보를 스스로 확인할 수 있다.
또한, 본 발명은 서로 다른 시동어를 통하여 활성화되도록 설정된 복수의 인공 지능 서버에 대하여, 하나의 시동어를 이용하여, 복수의 인공 지능 서버를 동시에 활성화시킴으로써, 인공 지능 서버를 이용하는 사용자의 편의성을 향상시킬 수 있다.
또한, 본 발명은 복수의 인공 지능 서버로부터 수신된 결과 정보에 대한 사용자의 응답 반응을 이용하여, 각 서버의 결과 정보에 대한 사용자의 평가 점수를 계산하고, 계산된 평가 정보에 근거하여, 복수의 인공 지능 서버 간의 우선 순위를 설정하여, 복수의 결과 정보를 우선 순위에 따라 순차적으로 제공할 수 있다. 이를 통하여, 본 발명은 사용자의 선호도가 높은 결과 정보를 우선적으로 제공받을 수 있다.
도 1은 본 발명과 관련된 전자 장치를 설명하기 위한 블록도이다.
도 2는 음성 인식 기능을 실행하는 전자 장치의 동작 상태를 나타낸 개념도이다.
도 3은 본 발명과 관련된 전자 장치와 복수의 인공 지능 서버가 통신을 수행하는 방법을 나타낸 개념도이다.
도 4는 본 발명과 관련된 전자 장치가 복수의 인공 지능 서버와 통신을 수행하기 위하여, 통신 노드를 설정하는 모습을 나타낸 개념도이다.
도 5는 본 발명과 관련된 전자 장치가 복수의 인공 지능 서버와의 통신을 통하여 결과 정보를 제공하는 방법을 나타낸 흐름도이다.
도 6은 도 5의 제어 방법으로 구현된 일 실시 예를 나타낸 개념도이다.
도 7은 본 발명과 관련된 전자 장치에서 인공 지능 서버를 등록하는 방법을 나타낸 흐름도이다.
도 8a 내지 도 9b는 도 7의 등록 방법을 나타낸 개념도들이다.
도 10은 복수의 인공 지능 서버가 등록된 이후, 복수의 인공 지능 서버 간의 우선 순위를 업데이트하는 방법을 나타낸 흐름도이다.
도 11은 결과 정보에 대한 사용자의 응답 종류를 나타낸 개념도이다.
도 12a내지 도 12c는 복수의 인공 지능 서버로부터 수신된 복수의 결과 정보를 우선 순위에 따라 출력하는 방법을 나타낸 개념도들이다.
도 13은 복수의 결과 정보가 출력된 이후, 사용자로부터 추가 제어 명령이 수신되는 경우, 전자 장치의 동작을 나타낸 흐름도이고, 도 14는, 도 13의 동작의 일 실시 예를 나타낸 개념도이다.
도 15는 복수의 인공 지능 서버와 통신하지 않는 전자 장치의 동작 방법의 일 실시 예를 나타낸 개념도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에서 설명되는 이동 단말기에는 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 예를 들어, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)) 등이 포함될 수 있다.
그러나, 본 명세서에 기재된 실시 예에 따른 구성은 이동 단말기에만 적용 가능한 경우를 제외하면, 디지털 TV, 데스크탑 컴퓨터, 디지털 사이니지 등과 같은 고정 단말기에도 적용될 수도 있음을 본 기술분야의 당업자라면 쉽게 알 수 있을 것이다.
도 1a 내지 도 1c를 참조하면, 도 1a는 본 발명과 관련된 이동 단말기를 설명하기 위한 블록도이고, 도 1b 및 1c는 본 발명과 관련된 이동 단말기의 일 예를 서로 다른 방향에서 바라본 개념도이다.
상기 이동 단말기(100)는 무선 통신부(110), 입력부(120), 감지부(140), 출력부(150), 인터페이스부(160), 메모리(170), 제어부(180) 및 전원 공급부(190) 등을 포함할 수 있다. 도 1a에 도시된 구성요소들은 이동 단말기를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 이동 단말기는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
보다 구체적으로, 상기 구성요소들 중 무선 통신부(110)는, 이동 단말기(100)와 무선 통신 시스템 사이, 이동 단말기(100)와 다른 이동 단말기(100) 사이, 또는 이동 단말기(100)와 외부서버 사이의 무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 상기 무선 통신부(110)는, 이동 단말기(100)를 하나 이상의 네트워크에 연결하는 하나 이상의 모듈을 포함할 수 있다.
이러한 무선 통신부(110)는, 방송 수신 모듈(111), 이동통신 모듈(112), 무선 인터넷 모듈(113), 근거리 통신 모듈(114), 위치정보 모듈(115) 중 적어도 하나를 포함할 수 있다.
입력부(120)는, 영상 신호 입력을 위한 카메라(121) 또는 영상 입력부, 오디오 신호 입력을 위한 마이크로폰(microphone, 122), 또는 오디오 입력부, 사용자로부터 정보를 입력받기 위한 사용자 입력부(123, 예를 들어, 터치키(touch key), 푸시키(mechanical key) 등)를 포함할 수 있다. 입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어명령으로 처리될 수 있다.
센싱부(140)는 이동 단말기 내 정보, 이동 단말기를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하기 위한 하나 이상의 센서를 포함할 수 있다. 예를 들어, 센싱부(140)는 근접센서(141, proximity sensor), 조도 센서(142, illumination sensor), 터치 센서(touch sensor), 가속도 센서(acceleration sensor), 자기 센서(magnetic sensor), 중력 센서(G-sensor), 자이로스코프 센서(gyroscope sensor), 모션 센서(motion sensor), RGB 센서, 적외선 센서(IR 센서: infrared sensor), 지문인식 센서(finger scan sensor), 초음파 센서(ultrasonic sensor), 광 센서(optical sensor, 예를 들어, 카메라(121 참조)), 마이크로폰(microphone, 122 참조), 배터리 게이지(battery gauge), 환경 센서(예를 들어, 기압계, 습도계, 온도계, 방사능 감지 센서, 열 감지 센서, 가스 감지 센서 등), 화학 센서(예를 들어, 전자 코, 헬스케어 센서, 생체 인식 센서 등) 중 적어도 하나를 포함할 수 있다. 한편, 본 명세서에 개시된 이동 단말기는, 이러한 센서들 중 적어도 둘 이상의 센서에서 센싱되는 정보들을 조합하여 활용할 수 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부(151), 음향 출력부(152), 햅팁 모듈(153), 광 출력부(154) 중 적어도 하나를 포함할 수 있다. 디스플레이부(151)는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은, 이동 단말기(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부(123)로써 기능함과 동시에, 이동 단말기(100)와 사용자 사이의 출력 인터페이스를 제공할 수 있다.
인터페이스부(160)는 이동 단말기(100)에 연결되는 다양한 종류의 외부 기기와의 통로 역할을 수행한다. 이러한 인터페이스부(160)는, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 중 적어도 하나를 포함할 수 있다. 이동 단말기(100)에서는, 상기 인터페이스부(160)에 외부 기기가 연결되는 것에 대응하여, 연결된 외부 기기와 관련된 적절할 제어를 수행할 수 있다.
또한, 메모리(170)는 이동 단말기(100)의 다양한 기능을 지원하는 데이터를 저장한다. 메모리(170)는 이동 단말기(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 이동 단말기(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한 이러한 응용 프로그램 중 적어도 일부는, 이동 단말기(100)의 기본적인 기능(예를 들어, 전화 착신, 발신 기능, 메시지 수신, 발신 기능)을 위하여 출고 당시부터 이동 단말기(100)상에 존재할 수 있다. 한편, 응용 프로그램은, 메모리(170)에 저장되고, 이동 단말기(100) 상에 설치되어, 제어부(180)에 의하여 상기 이동 단말기의 동작(또는 기능)을 수행하도록 구동될 수 있다.
제어부(180)는 상기 응용 프로그램과 관련된 동작 외에도, 통상적으로 이동 단말기(100)의 전반적인 동작을 제어한다. 제어부(180)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(170)에 저장된 응용 프로그램을 구동함으로써, 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.
또한, 제어부(180)는 메모리(170)에 저장된 응용 프로그램을 구동하기 위하여, 도 1a와 함께 살펴본 구성요소들 중 적어도 일부를 제어할 수 있다. 나아가, 제어부(180)는 상기 응용 프로그램의 구동을 위하여, 이동 단말기(100)에 포함된 구성요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.
전원공급부(190)는 제어부(180)의 제어 하에서, 외부의 전원, 내부의 전원을 인가 받아 이동 단말기(100)에 포함된 각 구성요소들에 전원을 공급한다. 이러한 전원공급부(190)는 배터리를 포함하며, 상기 배터리는 내장형 배터리 또는 교체가능한 형태의 배터리가 될 수 있다.
상기 각 구성요소들 중 적어도 일부는, 이하에서 설명되는 다양한 실시 예들에 따른 이동 단말기의 동작, 제어, 또는 제어방법을 구현하기 위하여 서로 협력하여 동작할 수 있다. 또한, 상기 이동 단말기의 동작, 제어, 또는 제어방법은 상기 메모리(170)에 저장된 적어도 하나의 응용 프로그램의 구동에 의하여 이동 단말기 상에서 구현될 수 있다.
이하에서는, 위에서 살펴본 이동 단말기(100)를 통하여 구현되는 다양한 실시 예들을 살펴보기에 앞서, 위에서 열거된 구성요소들에 대하여 도 1a를 참조하여 보다 구체적으로 살펴본다.
먼저, 무선 통신부(110)에 대하여 살펴보면, 무선 통신부(110)의 방송 수신 모듈(111)은 방송 채널을 통하여 외부의 방송 관리 서버로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 상기 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 적어도 두 개의 방송 채널들에 대한 동시 방송 수신 또는 방송 채널 스위칭을 위해 둘 이상의 상기 방송 수신 모듈이 상기 이동단말기(100)에 제공될 수 있다.
이동통신 모듈(112)은, 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다.
상기 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
무선 인터넷 모듈(113)은 무선 인터넷 접속을 위한 모듈을 말하는 것으로, 이동 단말기(100)에 내장되거나 외장될 수 있다. 무선 인터넷 모듈(113)은 무선 인터넷 기술들에 따른 통신망에서 무선 신호를 송수신하도록 이루어진다.
무선 인터넷 기술로는, 예를 들어 WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등이 있으며, 상기 무선 인터넷 모듈(113)은 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다.
WiBro, HSDPA, HSUPA, GSM, CDMA, WCDMA, LTE, LTE-A 등에 의한 무선인터넷 접속은 이동통신망을 통해 이루어진다는 관점에서 본다면, 상기 이동통신망을 통해 무선인터넷 접속을 수행하는 상기 무선 인터넷 모듈(113)은 상기 이동통신 모듈(112)의 일종으로 이해될 수도 있다.
근거리 통신 모듈(114)은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 근거리 통신을 지원할 수 있다. 이러한, 근거리 통신 모듈(114)은, 근거리 무선 통신망(Wireless Area Networks)을 통해 이동 단말기(100)와 무선 통신 시스템 사이, 이동 단말기(100)와 다른 이동 단말기(100) 사이, 또는 이동 단말기(100)와 다른 이동 단말기(100, 또는 외부서버)가 위치한 네트워크 사이의 무선 통신을 지원할 수 있다. 상기 근거리 무선 통신망은 근거리 무선 개인 통신망(Wireless Personal Area Networks)일 수 있다.
여기에서, 다른 이동 단말기(100)는 본 발명에 따른 이동 단말기(100)와 데이터를 상호 교환하는 것이 가능한(또는 연동 가능한) 웨어러블 디바이스(wearable device, 예를 들어, 스마트워치(smartwatch), 스마트 글래스(smart glass), HMD(head mounted display))가 될 수 있다. 근거리 통신 모듈(114)은, 이동 단말기(100) 주변에, 상기 이동 단말기(100)와 통신 가능한 웨어러블 디바이스를 감지(또는 인식)할 수 있다. 나아가, 제어부(180)는 상기 감지된 웨어러블 디바이스가 본 발명에 따른 이동 단말기(100)와 통신하도록 인증된 디바이스인 경우, 이동 단말기(100)에서 처리되는 데이터의 적어도 일부를, 상기 근거리 통신 모듈(114)을 통해 웨어러블 디바이스로 전송할 수 있다. 따라서, 웨어러블 디바이스의 사용자는, 이동 단말기(100)에서 처리되는 데이터를, 웨어러블 디바이스를 통해 이용할 수 있다. 예를 들어, 이에 따르면 사용자는, 이동 단말기(100)에 전화가 수신된 경우, 웨어러블 디바이스를 통해 전화 통화를 수행하거나, 이동 단말기(100)에 메시지가 수신된 경우, 웨어러블 디바이스를 통해 상기 수신된 메시지를 확인하는 것이 가능하다.
위치정보 모듈(115)은 이동 단말기의 위치(또는 현재 위치)를 획득하기 위한 모듈로서, 그의 대표적인 예로는 GPS(Global Positioning System) 모듈 또는 WiFi(Wireless Fidelity) 모듈이 있다. 예를 들어, 이동 단말기는 GPS모듈을 활용하면, GPS 위성에서 보내는 신호를 이용하여 이동 단말기의 위치를 획득할 수 있다. 다른 예로서, 이동 단말기는 Wi-Fi모듈을 활용하면, Wi-Fi모듈과 무선신호를 송신 또는 수신하는 무선 AP(Wireless Access Point)의 정보에 기반하여, 이동 단말기의 위치를 획득할 수 있다. 필요에 따라서, 위치정보모듈(115)은 치환 또는 부가적으로 이동 단말기의 위치에 관한 데이터를 얻기 위해 무선 통신부(110)의 다른 모듈 중 어느 기능을 수행할 수 있다. 위치정보모듈(115)은 이동 단말기의 위치(또는 현재 위치)를 획득하기 위해 이용되는 모듈로, 이동 단말기의 위치를 직접적으로 계산하거나 획득하는 모듈로 한정되지는 않는다.
다음으로, 입력부(120)는 영상 정보(또는 신호), 오디오 정보(또는 신호), 데이터, 또는 사용자로부터 입력되는 정보의 입력을 위한 것으로서, 영상 정보의 입력을 위하여, 이동 단말기(100) 는 하나 또는 복수의 카메라(121)를 구비할 수 있다. 카메라(121)는 화상 통화모드 또는 촬영 모드에서 이미지 센서에 의해 얻어지는 정지영상 또는 동영상 등의 화상 프레임을 처리한다. 처리된 화상 프레임은 디스플레이부(151)에 표시되거나 메모리(170)에 저장될 수 있다. 한편, 이동 단말기(100)에 구비되는 복수의 카메라(121)는 매트릭스 구조를 이루도록 배치될 수 있으며, 이와 같이 매트릭스 구조를 이루는 카메라(121)를 통하여, 이동 단말기(100)에는 다양한 각도 또는 초점을 갖는 복수의 영상정보가 입력될 수 있다. 또한, 복수의 카메라(121)는 입체영상을 구현하기 위한 좌 영상 및 우 영상을 획득하도록, 스트레오 구조로 배치될 수 있다.
마이크로폰(122)은 외부의 음향 신호를 전기적인 음성 데이터로 처리한다. 처리된 음성 데이터는 이동 단말기(100)에서 수행 중인 기능(또는 실행 중인 응용 프로그램)에 따라 다양하게 활용될 수 있다. 한편, 마이크로폰(122)에는 외부의 음향 신호를 입력 받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘이 구현될 수 있다.
사용자 입력부(123)는 사용자로부터 정보를 입력받기 위한 것으로서, 사용자 입력부(123)를 통해 정보가 입력되면, 제어부(180)는 입력된 정보에 대응되도록 이동 단말기(100)의 동작을 제어할 수 있다. 이러한, 사용자 입력부(123)는 기계식 (mechanical) 입력수단(또는, 메커니컬 키, 예를 들어, 이동 단말기(100)의 전·후면 또는 측면에 위치하는 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 터치식 입력수단을 포함할 수 있다. 일 예로서, 터치식 입력수단은, 소프트웨어적인 처리를 통해 터치스크린에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있 한편, 상기 가상키 또는 비주얼 키는, 다양한 형태를 가지면서 터치스크린 상에 표시되는 것이 가능하며, 예를 들어, 그래픽(graphic), 텍스트(text), 아이콘(icon), 비디오(video) 또는 이들의 조합으로 이루어질 수 있다.
러닝 데이터부(130)는, 데이터 마이닝(data mining), 데이터 분석, 지능형 의사결정 및 머신 러닝 알고리즘 및 기술을 위해 이용될 정보를 수신, 분류, 저장 및 출력하도록 구성될 수 있다. 러닝 데이터 부(130)는 단말기를 통해 수신, 검출, 감지, 생성, 사전 정의된 정보 또는 상기 단말기를 통해 다른 방식으로 출력된 정보를 저장하거나, 다른 구성, 장치 및 단말기에 의하여 수신, 검출, 감지, 생성, 사전 정의 또는 출력된 데이터를 저장하도록 구성된 하나 이상의 메모리 유닛을 포함 할 수 있다.
러닝 데이터부(130)는 이동 단말기에 통합되거나, 구비된 메모리를 포함 할 수 있다. 일 실시 예에 있어서, 러닝 데이터부(130)는 메모리(170)를 통해 구현될 수 있다. 다만 이에 한정되지 않고, 러닝 데이터부(130)는 이동 단말기(100) 와 관련된 메모리(예를 들어, 이동 단말기(100)에 연결된(유선으로(또는 전기적으로) 연결된?) 외부 메모리)에 구현되거나, 이동 단말기(100)와 통신 가능한 서버에 포함된 메모리를 통해 구현될 수 있다. 다른 일 실시 예에 있어서, 러닝 데이터부(130)는 클라우드 컴퓨팅 환경에서 유지되는 메모리, 또는 네트워크와 같은 통신 방식을 통해 단말기에 의해 액세스 가능한 다른 원격 메모리를 통해 구현될 수 있다.
러닝 데이터부(130)는 일반적으로 감독 또는 감독되지 않은 학습, 데이터 마이닝, 예측 분석 또는 다른 머신 러닝 기술에서 사용하기 위한 데이터를 식별, 색인화, 분류, 조작, 저장, 검색 및 출력하기 위해, 상기 데이터를 하나 이상의 데이터베이스에 저장하도록 이루어진다. 러닝 데이터부(130)에 저장된 정보는 서로 다른 유형의 데이터 분석, 기계 학습 알고리즘 및 기계 학습 기술 중 적어도 하나를 사용하는 제어부(180) 또는 이동 단말기에 포함된 복수의 제어부들에 의하여 이용 될 수 있다. 이러한 알고리즘 및 기법의 예로는 K 최근접 이웃 시스템(k-Nearest neighbor system), 퍼지 논리(fuzzy logic)(예를 들어, 가능성 이론(possibility theory)), 신경 회로망(neural networks), 볼츠만 머신(Boltzmann machines), 벡터 양자화, 펄스 신경망(pulsed neural nets), 서포트 벡터 머신(support vector machines), 최대-마진 분류기(maximum margin classifiers), 힐 클라이밍(hill-climbing), 유도 논리 시스템(inductive logic systems), 베이지안 네트워크(baysian networks), 페트리 네트(petri nets) (예를 들어, 유한 상태 기계(finite state machines), 밀리 머신(mealy machines), 무어 유한 상태 머신(moore finite state machines)), 분류 트리(classifier trees)(예를 들어, 퍼셉트론 트리(perceptron trees), 서포트 벡터 트리(support vector trees), 마코브 트리(markov trees), 트리-숲 결정(decision tree forests), 랜덤 숲(random forests)), 목마전 모형 및 시스템(pandemonium models and systems), 클러스터링(clustering), 인공 지능 플래닝(artificially intelligent planning), 인공 지능 예측(artificially intelligent forecasting), 데이터 퓨전(data fusion), 센서 퓨전(sensor fusion), 이미지 퓨전(image fusion), 강화 학습(reinforcement learning), 증강 현실(augmented reality), 패턴 인식(pattern recognition), 자동 플래닝(automated planning) 등이 있다.
제어부(180)는 데이터 분석, 머신 러닝 알고리즘 및 머신 러닝 기술을 사용하여 결정 또는 생성된 정보에 기초하여 이동 단말기의 적어도 하나의 실행 가능한 동작을 결정 또는 예측할 수 있다. 이를 위해, 제어부(180)는 러닝 데이터부(130)의 데이터를 요청, 검색, 수신 또는 활용할 수 있다. 제어부 (180)는 지식 기반 시스템, 추론 시스템 및 지식 획득 시스템 등을 구현하는 다양한 기능을 수행할 수 있으며, 불확실한 추론을 위한 시스템(예를 들어, 퍼지 논리 시스템), 적응 시스템, 기계 학습 시스템, 인공 신경망 등을 포함하는 다양한 기능을 수행할 수 있다.
제어부(180)는 I/O 처리 모듈, 환경 조건 모듈, 음성-텍스트(STT) 처리 모듈, 자연 언어 처리 모듈, 작업 흐름 처리 모듈 및 서비스 처리 모듈 등과 같은 음성 및 자연 언어 처리를 가능하게 하는 서브 모듈들을 포함 할 수 있다. 서브 모듈들 각각은 이동 단말기에서의 하나 이상의 시스템 또는 데이터 및 모델, 또는 이들의 서브셋 또는 수퍼셋에 대한 접근권한을 가질 수 있다. 여기서, 서브 모듈들 각각이 접근권한을 가지는 대상은 스케줄링, 어휘 인덱스, 사용자 데이터, 태스크 플로우 모델, 서비스 모델 및 자동 음성 인식(ASR) 시스템을 포함할 수 있다. 다른 일 실시 예에 있어서, 제어부(180) 또는 이동 단말기는 상기 서브 모듈, 시스템, 또는 데이터 및 모델로 구현 될 수 있다.
일부 실시 예에서, 러닝 데이터부(130)에서의 데이터에 기초하여, 제어부(180)는 사용자 입력 또는 자연 언어 입력으로 표현된 문맥 조건 또는 사용자의 의도에 기초하여 사용자가 요구하는 것을 검출하고 감지하도록 구성 될 수 있다. 또한, 제어부(180)는 문맥 조건이나 사용자의 의도에 따라 사용자가 요구하는 것을 완전히 결정하는 데 필요한 정보를 적극적으로 이끌어 내거나, 이를 획득할 수 있다. 예를 들어, 제어부(180)는 과거 입력 및 출력, 패턴 매칭, 모호하지 않은 단어, 입력 의도 등을 포함하는 과거 데이터를 분석함으로써, 사용자가 요구하는 것을 검출하고 감지할 수 있다. 또한, 제어부(180)는 문맥 조건이나 사용자의 의도에 따라 사용자가 요구하는 기능을 실행하기 위한 작업 흐름을 결정할 수 있다. 또한, 제어부(180)는 문맥 조건 또는 사용자의 의도에 기초하여 사용자가 요구하는 것을 충족시키기 위한 작업 흐름을 실행할 수 있다.
일부 실시 예에 있어서, 제어부(180)는 memistor, memristors, 상호 컨덕턴스 증폭기, 펄스 형 신경 회로, 인공지능형 나노 기술 시스템(예를 들어, 자율 나노머신) 또는 인공지능형 양자 기계 시스템(예를 들어, 양자 신경 네트워크) 등을 포함하는 러닝 데이터 프로세스를 위한 전용 하드웨어 요소를 구현할 수 있다. 일부 실시 예에 있어서, 제어부(180)는 머신 비전 시스템, 음향 인식 시스템, 필기 인식 시스템, 데이터 융합 시스템, 센서 융합 시스템 및 소프트 센서와 같은 패턴 인식 시스템을 포함 할 수 있다. 머신 비전 시스템은 컨텐츠 기반 이미지 검색, 광학 문자 인식, 증강 현실, 자체 운동(egomotion), 트래킹 및 광학 흐름(optical flow) 등을 포함 할 수 있다.
제어부(180)는 센싱부(140)를 통하여, 이동 단말기 내 정보, 이동 단말기를 둘러싼 주변 환경 정보 또는 다른 정보를 감지 또는 수신할 수 있다. 또한, 제어부(180)는 무선 통신부(110)를 통하여, 방송 신호 및/또는 방송 관련된 정보, 무선 신호, 무선 데이터 등을 수신할 수 있다. 또한, 제어부(180)는 입력부로부터 영상 정보(또는 해당 신호), 오디오 정보(또는 해당 신호), 데이터 또는 사용자로부터 입력되는 정보를 입력받을 수 있다.
이러한 제어부(180)는 정보들을 수집하고, 이를 처리 또는 분류(예를 들어, 지식 그래프, 명령어 정책, 개인화 데이터베이스, 대화 엔진 등)하고, 상기 처리 또는 분류된 정보를 메모리(170) 또는 러닝 데이터 부(130)에 저장할 수 있다.
그리고, 러닝 데이터부(130)는 데이터 분석, 머신 러닝 알고리즘 및 머신 러닝기술을 바탕으로, 이동 단말기의 동작이 결정되면, 제어부(180)는 이러한 결정된 동작을 실행하기 위하여, 이동 단말기의 구성 요소들을 제어할 수 있다. 제어부(180)는 제어 명령에 근거하여, 이동 단말기를 제어함으로써, 결정된 동작을 실행할 수 있다.
일 실시 예에 있어서, 제어부(180)는 특정 동작이 수행되면, 데이터 분석, 머신 러닝 알고리즘 및 머신 러닝기술을 통하여, 특정 동작의 수행을 나타내는 이력 정보를 분석하고, 이러한 분석 정보를 바탕으로 기존의 학습된 정보에 대한 업데이트를 수행할 수 있다. 이에, 제어부(180)는 러닝 데이터 부(130)와 함께, 업데이트 된 정보에 기반한 데이터 분석, 머신 러닝 알고리즘 및 머신 러닝 기술의 미래 성능의 정확도를 향상시킬 수 있다.
한편, 센싱부(140)는 이동 단말기 내 정보, 이동 단말기를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하고, 이에 대응하는 센싱 신호를 발생시킨다. 제어부(180)는 이러한 센싱 신호에 기초하여, 이동 단말기(100)의 구동 또는 동작을 제어하거나, 이동 단말기(100)에 설치된 응용 프로그램과 관련된 데이터 처리, 기능 또는 동작을 수행 할 수 있다. 센싱부(140)에 포함될 수 있는 다양한 센서 중 대표적인 센서들의 대하여, 보다 구체적으로 살펴본다.
먼저, 근접 센서(141)는 소정의 검출면에 접근하는 물체, 혹은 근방에 존재하는 물체의 유무를 전자계의 힘 또는 적외선 등을 이용하여 기계적 접촉이 없이 검출하는 센서를 말한다. 이러한 근접 센서(141)는 위에서 살펴본 터치 스크린에 의해 감싸지는 이동 단말기의 내부 영역 또는 상기 터치 스크린의 근처에 근접 센서(141)가 배치될 수 있다.
근접 센서(141)의 예로는 투과형 광전 센서, 직접 반사형 광전 센서, 미러 반사형 광전 센서, 고주파 발진형 근접 센서, 정전 용량형 근접 센서, 자기형 근접 센서, 적외선 근접 센서 등이 있다. 터치 스크린이 정전식인 경우에, 근접 센서(141)는 전도성을 갖는 물체의 근접에 따른 전계의 변화로 상기 물체의 근접을 검출하도록 구성될 수 있다. 이 경우 터치 스크린(또는 터치 센서) 자체가 근접 센서로 분류될 수 있다.
한편, 설명의 편의를 위해, 터치 스크린 상에 물체가 접촉되지 않으면서 근접되어 상기 물체가 상기 터치 스크린 상에 위치함이 인식되도록 하는 행위를 "근접 터치(proximity touch)"라고 명명하고, 상기 터치 스크린 상에 물체가 실제로 접촉되는 행위를 "접촉 터치(contact touch)"라고 명명한다. 상기 터치 스크린 상에서 물체가 근접 터치 되는 위치라 함은, 상기 물체가 근접 터치될 때 상기 물체가 상기 터치 스크린에 대해 수직으로 대응되는 위치를 의미한다. 상기 근접 센서(141)는, 근접 터치와, 근접 터치 패턴(예를 들어, 근접 터치 거리, 근접 터치 방향, 근접 터치 속도, 근접 터치 시간, 근접 터치 위치, 근접 터치 이동 상태 등)을 감지할 수 있다. 한편, 제어부(180)는 위와 같이, 근접 센서(141)를 통해 감지된 근접 터치 동작 및 근접 터치 패턴에 상응하는 데이터(또는 정보)를 처리하며, 나아가, 처리된 데이터에 대응하는 시각적인 정보를 터치 스크린상에 출력시킬 수 있다. 나아가, 제어부(180)는, 터치 스크린 상의 동일한 지점에 대한 터치가, 근접 터치인지 또는 접촉 터치인지에 따라, 서로 다른 동작 또는 데이터(또는 정보)가 처리되도록 이동 단말기(100)를 제어할 수 있다.
터치 센서는 저항막 방식, 정전용량 방식, 적외선 방식, 초음파 방식, 자기장 방식 등 여러 가지 터치방식 중 적어도 하나를 이용하여 터치 스크린(또는 디스플레이부(151))에 가해지는 터치(또는 터치입력)을 감지한다.
일 예로서, 터치 센서는, 터치 스크린의 특정 부위에 가해진 압력 또는 특정 부위에 발생하는 정전 용량 등의 변화를 전기적인 입력신호로 변환하도록 구성될 수 있다. 터치 센서는, 터치 스크린 상에 터치를 가하는 터치 대상체가 터치 센서 상에 터치 되는 위치, 면적, 터치 시의 압력, 터치 시의 정전 용량 등을 검출할 수 있도록 구성될 수 있다. 여기에서, 터치 대상체는 상기 터치 센서에 터치를 인가하는 물체로서, 예를 들어, 손가락, 터치펜 또는 스타일러스 펜(Stylus pen), 포인터 등이 될 수 있다.
이와 같이, 터치 센서에 대한 터치 입력이 있는 경우, 그에 대응하는 신호(들)는 터치 제어기로 보내진다. 터치 제어기는 그 신호(들)를 처리한 다음 대응하는 데이터를 제어부(180)로 전송한다. 이로써, 제어부(180)는 디스플레이부(151)의 어느 영역이 터치 되었는지 여부 등을 알 수 있게 된다. 여기에서, 터치 제어기는, 제어부(180)와 별도의 구성요소일 수 있고, 제어부(180) 자체일 수 있다.
한편, 제어부(180)는, 터치 스크린(또는 터치 스크린 이외에 구비된 터치키)을 터치하는, 터치 대상체의 종류에 따라 서로 다른 제어를 수행하거나, 동일한 제어를 수행할 수 있다. 터치 대상체의 종류에 따라 서로 다른 제어를 수행할지 또는 동일한 제어를 수행할 지는, 현재 이동 단말기(100)의 동작상태 또는 실행 중인 응용 프로그램에 따라 결정될 수 있다.
한편, 위에서 살펴본 터치 센서 및 근접 센서는 독립적으로 또는 조합되어, 터치 스크린에 대한 숏(또는 탭) 터치(short touch), 롱 터치(long touch), 멀티 터치(multi touch), 드래그 터치(drag touch), 플리크 터치(flick touch), 핀치-인 터치(pinch-in touch), 핀치-아웃 터치(pinch-out 터치), 스와이프(swype) 터치, 호버링(hovering) 터치 등과 같은, 다양한 방식의 터치를 센싱할 수 있다.
초음파 센서는 초음파를 이용하여, 감지대상의 위치정보를 인식할 수 있다. 한편 제어부(180)는 광 센서와 복수의 초음파 센서로부터 감지되는 정보를 통해, 파동 발생원의 위치를 산출하는 것이 가능하다. 파동 발생원의 위치는, 광이 초음파보다 매우 빠른 성질, 즉, 광이 광 센서에 도달하는 시간이 초음파가 초음파 센서에 도달하는 시간보다 매우 빠름을 이용하여, 산출될 수 있다. 보다 구체적으로 광을 기준 신호로 초음파가 도달하는 시간과의 시간차를 이용하여 파동 발생원의 위치가 산출될 수 있다.
한편, 입력부(120)의 구성으로 살펴본, 카메라(121)는 카메라 센서(예를 들어, CCD, CMOS 등), 포토 센서(또는 이미지 센서) 및 레이저 센서 중 적어도 하나를 포함한다.
카메라(121)와 레이저 센서는 서로 조합되어, 3차원 입체영상에 대한 감지대상의 터치를 감지할 수 있다. 포토 센서는 디스플레이 소자에 적층될 수 있는데, 이러한 포토 센서는 터치 스크린에 근접한 감지대상의 움직임을 스캐닝하도록 이루어진다. 보다 구체적으로, 포토 센서는 행/열에 Photo Diode와 TR(Transistor)를 실장하여 Photo Diode에 인가되는 빛의 양에 따라 변화되는 전기적 신호를 이용하여 포토 센서 위에 올려지는 내용물을 스캔한다. 즉, 포토 센서는 빛의 변화량에 따른 감지대상의 좌표 계산을 수행하며, 이를 통하여 감지대상의 위치정보가 획득될 수 있다.
디스플레이부(151)는 이동 단말기(100)에서 처리되는 정보를 표시(출력)한다. 예를 들어, 디스플레이부(151)는 이동 단말기(100)에서 구동되는 응용 프로그램의 실행화면 정보, 또는 이러한 실행화면 정보에 따른 UI(User Interface), GUI(Graphic User Interface) 정보를 표시할 수 있다.
또한, 상기 디스플레이부(151)는 입체영상을 표시하는 입체 디스플레이부로서 구성될 수 있다.
상기 입체 디스플레이부에는 스테레오스코픽 방식(안경 방식), 오토 스테레오스코픽 방식(무안경 방식), 프로젝션 방식(홀로그래픽 방식) 등의 3차원 디스플레이 방식이 적용될 수 있다.
음향 출력부(152)는 호신호 수신, 통화모드 또는 녹음 모드, 음성인식 모드, 방송수신 모드 등에서 무선 통신부(110)로부터 수신되거나 메모리(170)에 저장된 오디오 데이터를 출력할 수 있다. 음향 출력부(152)는 이동 단말기(100)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음 등)과 관련된 음향 신호를 출력하기도 한다. 이러한 음향 출력부(152)에는 리시버(receiver), 스피커(speaker), 버저(buzzer) 등이 포함될 수 있다.
햅틱 모듈(haptic module)(153)은 사용자가 느낄 수 있는 다양한 촉각 효과를 발생시킨다. 햅틱 모듈(153)이 발생시키는 촉각 효과의 대표적인 예로는 진동이 될 수 있다. 햅틱 모듈(153)에서 발생하는 진동의 세기와 패턴 등은 사용자의 선택 또는 제어부의 설정에 의해 제어될 수 있다. 예를 들어, 상기 햅틱 모듈(153)은 서로 다른 진동을 합성하여 출력하거나 순차적으로 출력할 수도 있다.
햅틱 모듈(153)은, 진동 외에도, 접촉 피부면에 대해 수직 운동하는 핀 배열, 분사구나 흡입구를 통한 공기의 분사력이나 흡입력, 피부 표면에 대한 스침, 전극(electrode)의 접촉, 정전기력 등의 자극에 의한 효과와, 흡열이나 발열 가능한 소자를 이용한 냉온감 재현에 의한 효과 등 다양한 촉각 효과를 발생시킬 수 있다.
햅틱 모듈(153)은 직접적인 접촉을 통해 촉각 효과를 전달할 수 있을 뿐만 아니라, 사용자가 손가락이나 팔 등의 근 감각을 통해 촉각 효과를 느낄 수 있도록 구현할 수도 있다. 햅틱 모듈(153)은 이동 단말기(100)의 구성 태양에 따라 2개 이상이 구비될 수 있다.
광출력부(154)는 이동 단말기(100)의 광원의 빛을 이용하여 이벤트 발생을 알리기 위한 신호를 출력한다. 이동 단말기(100)에서 발생 되는 이벤트의 예로는 메시지 수신, 호 신호 수신, 부재중 전화, 알람, 일정 알림, 이메일 수신, 애플리케이션을 통한 정보 수신 등이 될 수 있다.
광출력부(154)가 출력하는 신호는 이동 단말기가 전면이나 후면으로 단색이나 복수색의 빛을 발광함에 따라 구현된다. 상기 신호 출력은 이동 단말기가 사용자의 이벤트 확인을 감지함에 의하여 종료될 수 있다.
인터페이스부(160)는 이동 단말기(100)에 연결되는 모든 외부 기기와의 통로 역할을 한다. 인터페이스부(160)는 외부 기기로부터 데이터를 전송받거나, 전원을 공급받아 이동 단말기(100) 내부의 각 구성요소에 전달하거나, 이동 단말기(100) 내부의 데이터가 외부 기기로 전송되도록 한다. 예를 들어, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트(port), 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 등이 인터페이스부(160)에 포함될 수 있다.
한편, 식별 모듈은 이동 단말기(100)의 사용 권한을 인증하기 위한 각종 정보를 저장한 칩으로서, 사용자 인증 모듈(user identify module; UIM), 가입자 인증 모듈(subscriber identity module; SIM), 범용 사용자 인증 모듈(universal subscriber identity module; USIM) 등을 포함할 수 있다. 식별 모듈이 구비된 장치(이하 '식별 장치')는, 스마트 카드(smart card) 형식으로 제작될 수 있다. 따라서 식별 장치는 상기 인터페이스부(160)를 통하여 단말기(100)와 연결될 수 있다.
또한, 상기 인터페이스부(160)는 이동 단말기(100)가 외부 크래들(cradle)과 연결될 때 상기 크래들로부터의 전원이 상기 이동 단말기(100)에 공급되는 통로가 되거나, 사용자에 의해 상기 크래들에서 입력되는 각종 명령 신호가 상기 이동 단말기(100)로 전달되는 통로가 될 수 있다. 상기 크래들로부터 입력되는 각종 명령 신호 또는 상기 전원은 상기 이동 단말기(100)가 상기 크래들에 정확히 장착되었음을 인지하기 위한 신호로 동작될 수 있다.
메모리(170)는 제어부(180)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 폰북, 메시지, 정지영상, 동영상 등)을 임시 저장할 수도 있다. 상기 메모리(170)는 상기 터치 스크린 상의 터치 입력시 출력되는 다양한 패턴의 진동 및 음향에 관한 데이터를 저장할 수 있다.
메모리(170)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 이동 단말기(100)는 인터넷(internet)상에서 상기 메모리(170)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작될 수도 있다.
한편, 앞서 살펴본 것과 같이, 제어부(180)는 응용 프로그램과 관련된 동작과, 통상적으로 이동 단말기(100)의 전반적인 동작을 제어한다. 예를 들어, 제어부(180)는 상기 이동 단말기의 상태가 설정된 조건을 만족하면, 애플리케이션들에 대한 사용자의 제어 명령의 입력을 제한하는 잠금 상태를 실행하거나, 해제할 수 있다.
또한, 제어부(180)는 음성 통화, 데이터 통신, 화상 통화 등과 관련된 제어 및 처리를 수행하거나, 터치 스크린 상에서 행해지는 필기 입력 또는 그림 그리기 입력을 각각 문자 및 이미지로 인식할 수 있는 패턴 인식 처리를 행할 수 있다. 나아가 제어부(180)는 이하에서 설명되는 다양한 실시 예들을 본 발명에 따른 이동 단말기(100) 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다.
전원 공급부(190)는 제어부(180)의 제어에 의해 외부의 전원, 내부의 전원을 인가 받아 각 구성요소들의 동작에 필요한 전원을 공급한다. 전원공급부(190)는 배터리를 포함하며, 배터리는 충전 가능하도록 이루어지는 내장형 배터리가 될 수 있으며, 충전 등을 위하여 단말기 바디에 착탈 가능하게 결합될 수 있다.
또한, 전원공급부(190)는 연결포트를 구비할 수 있으며, 연결포트는 배터리의 충전을 위하여 전원을 공급하는 외부 충전기가 전기적으로 연결되는 인터페이스(160)의 일 예로서 구성될 수 있다.
다른 예로서, 전원공급부(190)는 상기 연결포트를 이용하지 않고 무선방식으로 배터리를 충전하도록 이루어질 수 있다. 이 경우에, 전원공급부(190)는 외부의 무선 전력 전송장치로부터 자기 유도 현상에 기초한 유도 결합(Inductive Coupling) 방식이나 전자기적 공진 현상에 기초한 공진 결합(Magnetic Resonance Coupling) 방식 중 하나 이상을 이용하여 전력을 전달받을 수 있다.
한편, 이하에서 다양한 실시 예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 장치로 읽을 수 있는 기록매체 내에서 구현될 수 있다.
본 발명에 따른 전자 장치는, 음성을 인식하고, 인식된 음성에 기반하여, 전자 장치의 동작을 제어하는 음성 인식 기능을 실행할 수 있다. 음성 인식 기능은 음성을 통하여 전자 장치를 제어할 수 있는 기능으로, 자연적 언어를 분석하는 자연어 처리 기능, 질문에 대한 답변을 제시하는 질의 응답 기능, 디지털 음성 신호를 컴퓨터에서 처리 가능한 언어로 변환하는 음성 처리 기능, 다국어로 음성을 변환하는 자동통번역 기능 등이 포함될 수 있다.
이하의 도면에서는, 전자 장치가 음성을 출력하는 스피커의 형태로 구현된 상태를 기준으로 설명하나 본 발명은 이에 한정되지 아니하며, 스마트폰 등과 같은 다양한 전자 기기의 형태로 구현될 수 있음을 당업자에게 자명하다.
우선 본 발명에 따른 전자 장치에서 음성 인식 기능의 실행과 관련된 전자 장치의 동작 상태에 대하여 설명한다. 도 2는 음성 인식 기능을 실행하는 전자 장치의 동작 상태를 나타낸 개념도이다.
도 2를 참조하면, 본 발명에 따른 전자 장치는 대기 상태(210) 또는 음성 인식 상태(220)로 설정될 수 있다.
대기 상태(210)는 음성 인식 기능의 실행 전, 전자 장치 주변에 음성 인식 기능의 실행과 관련된 음성이 존재하는지 여부를 감지하는 상태이다. 이를 위하여, 제어부(180)는, 대기 상태(210)에서 마이크를 통하여 지속적으로 특정 음량(loudness) 이상의 소리가 감지되는지 여부를 감시(또는 모니터링)할 수 있다.
상기 대기 상태(210)에서는 음성 분석이 수행되지 않기 때문에, 저전력, 예를 들어, 4.4mA 정도의 전류만을 소모할 수 있다. 이러한 대기 상태(310)는 "리스닝 상태(listening phase)"로도 명명될 수 있다.
상기 제어부(180)는 대기 상태(210)에서 특정 음량 이상의 소리가 감지되면, 대기 상태(210)에서 음성 인식 상태(220)로 전환할 수 있다.
상기 음성 인식 상태(220)는 제어부(180)가 마이크를 통하여 입력된 음성을 분석하는 상태이다. 음성 인식 상태(220)는 음성 분석을 수행하기 때문에, 대기 상태(210)에서보다 더 많은 전류를 소모하게 된다. 즉, 본 발명에 따른 전자 장치는 시동어가 수신되기 이전에는, 음성 분석을 수행하지 않는 대기 상태(210)로 존재하여, 소모 전류를 감소시킬 수 있다.
음성 분석 방법에 대하여 보다 구체적으로 살펴보면, 제어부(180)는 음성 분석 전, 상기 음성 인식 상태(220)에서 음성 인식을 시작하는 시동어가 수신되었는지 여부를 판단할 수 있다.
상기 시동어는, 음성 분석을 시작하기 위한 제어 명령으로, 장치마다 다양한 단어로 설정될 수 있다. 예를 들어, 시동어는, "Hello, my phone", “Alexa”, “OK, google” 등과 같이 설정될 수 있다. 제어부(180)는 시동어 이후에 발화된 음성에 대하여, 음성 분석을 시작할 수 있다.
상기 제어부(180)는 음성 인식 상태(220)에서, 시동어 이후에 수신된 음성 정보에 대하여, 음성 인식 알고리즘을 이용하여, 음성 정보를 분석할 수 있다. 또한, 상기 제어부(180)는 상기 분석 결과에 근거하여, 음성 정보에 대응되는 음성 명령에 따라, 전자 장치를 제어할 수 있다. 또는 이러한 음성 분석은 전자 장치에 설치된 별도의 서드 파티 애플리케이션(3rd party application)을 이용하여 수행될 수도 있다.
상기 제어부(180)는 인공 지능 알고리즘을 통하여 음성 분석된 분석 정보를 처리하기 위하여, 기 설정된 인공 지능 서버에 전송할 수 있다. 상기 기 설정된 인공 지능 서버는, 인공 지능 알고리즘을 이용하여 방대한 량의 정보를 학습하고, 학습된 정보를 바탕으로 최적의 결과 정보를 도출하는 기능을 제공하는 서버이다. 기 설정된 인공 지능 서버는, 전자 장치와 통신 가능한 서버로써, 학습된 데이터를 저장하는 러닝 데이터부(130)를 포함할 수 있다.
또는 제어부(180)는 자체적으로 러닝 데이터부(130)를 구비하고, 러닝 데이터부(130)에 저장된 데이터들을 바탕으로, 입력된 음성 정보에 응답한 결과 정보를 생성할 수도 있다. 이하의 설명에서는, 전자 장치가 인공 지능 서버와의 통신을 통하여, 결과 정보를 수신하도록 설정되어 있음을 바탕으로 설명한다.
한편, 제어부(180)는 음성 인식 상태(220)에서, 기 설정된 시동어가 수신되지 않거나, 또는 기 설정된 시간 동안 음성이 수신되지 않는 경우, 음성 인식 상태(220)를 다시 대기 상태(210)로 전환할 수 있다. 이상에서는, 음성 인식 기능과 관련된 전자 장치의 동작 상태에 대하여 설명하였다.
이하에서는, 이러한 전자 장치가 복수의 인공 지능 서버와 통신을 수행하는 방법에 대하여 설명한다. 도 3은 본 발명과 관련된 전자 장치와 복수의 인공 지능 서버가 통신을 수행하는 방법을 나타낸 개념도이고, 도 4는 본 발명과 관련된 전자 장치가 복수의 인공 지능 서버와 통신을 수행하기 위하여, 통신 노드를 설정하는 모습을 나타낸 개념도이다. 도 5는 본 발명과 관련된 전자 장치가 복수의 인공 지능 서버와의 통신을 통하여 결과 정보를 제공하는 방법을 나타낸 흐름도이다. 도 6은 도 5의 제어 방법으로 구현된 일 실시 예를 나타낸 개념도이다.
도 3을 참조하면, 전자 장치(100)는 복수의 인공 지능 서버와 통신을 수행하도록 형성될 수 있다. 따라서, 사용자는 전자 장치(100)에 제어 명령을 한 번만 입력하면, 전자 장치(100)를 통하여, 복수의 인공 지능 서버에서 생성된 결과 정보를 제공받을 수 있다.
이를 위하여, 우선 전자 장치(100)는, 도 4와 같이, 복수의 인공 지능 서버 별로 통신 노드(network node)를 생성할 수 있다. 상기 통신 노드(410, 420, 등)들은 각 노드와 연계된 인공 지능 서버의 등록 정보를 저장할 수 있다. 제어부(180)는 노드에 저장된 인공 지능 서버의 등록 정보를 이용하여, 각 인공 지능 서버와 통신을 수행할 수 있다. 상기 등록 정보에는, 인공 지능 서버를 활성화하는 시동어 정보, 인공 지능 서버에서 처리 가능한 데이터의 형태 정보, 인공 지능 서버의 통신 주소 등 인공 지능 서버와 관련된 고유 정보들이 포함될 수 있다. 이러한 과정을 인공 지능 서버를 전자 장치에 등록하는 등록 절차로 명명할 수 있다.
보다 구체적으로, 전자 장치(100)는 사용자의 제어 명령에 근거하여, 이러한 복수의 인공 지능 서버를 등록하는 등록 절차를 진행할 수 있다.
우선, 상기 전자 장치는, 전자 장치의 제조 당시에 특정 인공 지능 서버와 통신 가능하도록 설정되어 출고될 수 있다. 이러한 특정 인공 지능 서버는, 기본으로 설정되어, 사용자가 별도의 다른 등록 과정을 거치지 않더라도, 전자 장치와 통신을 수행할 수 있다.
제어부(180)는 이러한 기본으로 설정된 인공 지능 서버를 이용하여, 전자 장치와 등록 가능한 복수의 인공 지능 서버를 검색할 수 있다. 그리고, 제어부(180)는 검색된 인공 지능 서버와의 통신 연결이 필요한 경우, 무선 통신부(110)의 상태를 확인할 수 있다. 확인 결과, 제어부(180)는 무선 통신부(110)가 활성화되어 있지 않은 경우, 무선 통신부를 활성화시킬 수 있다.
확인 결과, 제어부(180)는 무선 통신부(110)가 활성화 되어 있는 경우, 검색된 인공 지능 서버의 등록을 위한 등록 절차를 진행할 수 있다. 예를 들어, 제어부(180)는 인공 지능 서버에서 요구하는 사용자 정보(로그인 정보)를 입력받기 위한 사용자 인터페이스를 출력할 수 있다. 제어부(180)는 복수의 인공 지능 서버가 등록되면, 각 서버마다 통신 노드를 생성하여, 복수의 인공 지능 서버와의 통신을 수행할 수 있다. 이상에서는, 복수의 인공 지능 서버를 전자 장치에 등록하는 방법에 대하여 설명하였다.
이하에서는, 이러한 방식으로 등록된 복수의 인공 지능 서버를 활용하여, 결과 정보를 제공하는 방법에 대하여 살펴본다.
도 5를 참조하면, 우선, 본 발명에 따른 전자 장치(100)의 제어부(180)는 기 설정된 시동어가 포함된 음성을 수신할 수 있다(S510).
제어부(180)는 대기 상태(210)에서 전자 장치(100) 주변에 특정 음량 이상의 음성이 발생하였음을 감지할 수 있다. 이 경우, 제어부(180)는 대기 상태(210)를 음성 인식 상태(220)로 전환하고, 특정 음량 이상의 음성이 기 설정된 시동어가 포함되어 있는지 여부를 판단할 수 있다.
상기 기 설정된 시동어는, 복수의 인공 지능 서버를 모두 활성화하기 위하여 설정된 제어 명령이다. 예를 들어, 상기 기 설정된 시동어는 “안녕, 여러분(Hello, everyone)”, “안녕, 모두들(Hi, everybody)”, “여러분(Hey everyone)” 등으로 설정될 수 있다. 상기 기 설정된 시동어는 사용자에 의하여 변경될 수 있다.
상기 기 설정된 시동어는 복수의 인공 지능 서버마다 설정된 시동어와 다르게 설정될 수 있다. 예를 들어, 복수의 인공 지능 서버에는, “알렉사(alexa)”, “오케이, 구글(OK, google)”, “헤이, 시리(Hey, siri)”, “아리야(aria)”와 같은 시동어가 미리 설정되어 있을 수 있다. 이에, 특정 인공 지능 서버의 시동어와 혼동되지 않도록 기 설정된 시동어는 복수의 인공 지능 서버 모두를 지칭하는 일반적인 용어로 설정될 수 있다.
제어부(180)는 특정 음량 이상의 음성에 기 설정된 시동어가 포함되어 있는 경우, 기 설정된 시동어가 수신된 이후에 수신된 음성을 분석할 수 있다. 그리고, 제어부(180)는 분석된 음성 정보를 복수의 인공 지능 서버에 전송할 수 있다.
이와 달리 제어부(180)는 특정 음량 이상의 음성에 특정 인공 지능 서버에 설정된 시동어가 포함되어 있는 경우, 기 설정된 시동어가 수신된 이후에 수신된 음성을 특정 인공 지능 서버에만 선택적으로 전송할 수 있다. 나머지 인공 지능 서버의 경우, 분석된 음성 정보를 수신하지 않게 된다.
또는 제어부(180)는 특정 음량 이상의 음성에 기 설정된 시동어 및 특정 인공 지능 서버에 설정된 시동어가 모두 포함되지 않는 경우, 음성 인식 상태(210)를 다시 대기 상태(220)로 전환할 수 있다. 따라서, 제어부(180)는 기 설정된 시동어 이후에 수신된 음성을 분석하지 않는다.
이하, 특정 음량 이상의 음성에 기 설정된 시동어가 포함되어 있는 경우, 이동 단말기의 동작에 대하여 보다 구체적으로 설명한다.
다시 도 5를 참조하면, 상기 제어부(180)는 기 설정된 시동어가 수신되면, 복수의 인공 지능 서버마다 설정된 서로 다른 시동어를 생성할 수 있다(S520). 또한, 제어부(180)는 상기 수신된 음성을 분석하고, 분석된 음성 정보를 복수의 인공 지능 서버에서 처리 가능한 형태로 변환할 수 있다(S530).
제어부(180)는 기 설정된 시동어가 수신되면, 복수의 인공 지능 서버의 등록 정보를 검색할 수 있다. 그리고, 제어부(180)는 복수의 인공 지능 서버마다 설정된 서로 다른 시동어를 생성할 수 있다. 상기 서로 다른 시동어는, 복수의 인공 지능 서버와 전자 장치(100)의 통신을 위하여, 복수의 인공 지능 서버를 활성화하도록 설정된 명령어이다.
여기에서, 인공 지능 서버의 활성화는, 인공 지능 서버가 전자 장치로부터 정보를 수신하고, 수신된 정보에 응답하여 결과 정보를 다시 전자 장치에 전송 가능하도록 설정된 상태이다. 반대로, 인공 지능 서버의 비활성화는, 인공 지능 서버가 전자 장치로부터 정보를 수신하지 않는 상태이다.
또한, 상기 제어부(180)는 기 설정된 시동어가 수신되면, 상기 수신된 음성에 대응되는 음성 정보를 분석할 수 있다. 보다 구체적으로, 제어부(180)는 음성 수신부를 통하여 수신된 음성을 자연어 처리 알고리즘을 통하여, 분석할 수 있다. 그리고, 제어부(180)는 분석된 음성 정보를 컴퓨터에서 처리 가능한 언어로 변환할 수 있다.
보다 구체적으로, 제어부(180)는 상기 생성된 서로 다른 시동아가 상기 음성에 포함되도록 상기 음성을 변환할 수 있다.
한편, 상기 복수의 인공 지능 서버는, 서로 다른 형태의 데이터를 처리 가능하도록 설정될 수 있다. 이 경우, 제어부(180)는 각 인공 지능 서버에서 요구하는 데이터 형식으로, 분석된 음성 정보를 변환할 수 있다. 예를 들어, 상기 제1인공 지능 서버는 음성 데이터의 처리가 가능한 경우, 음성 데이터의 형태로 상기 수신된 음성을 변환하고, 제2인공 지능 서버는, 텍스트 데이터의 처리가 가능한 경우, 텍스트 데이터의 형태로 상기 수신된 음성을 변환할 수 있다.
그 후, 상기 제어부(180)는 상기 생성된 서로 다른 시동어가 포함된 상기 변환된 음성 정보를 상기 복수의 인공 지능 서버에 각각 전송할 수 있다(S540).
상기 제어부(180)는 복수의 인공 지능 서버마다 서로 다른 시동어가 포함된 음성 정보를 전송할 수 있다. 예를 들어, 도 6을 참조하면, 제어부(180)는 사용자로부터 “Hello, everyone, 음악 틀어줘”라는 음성을 수신할 수 있다.
제어부(180)는 “Hello, everyone”이 기 설정된 시동어에 해당하는 경우, 복수의 인공 지능 서버에 설정된 서로 다른 시동어를 생성할 수 있다. 예를 들어, 제어부(180)는 제1서버(310)에 설징된 시동어인 “ANA”, 제2서버(320)에 설정된 시동어인 “BYN”, 제3서버에 설정된 시동어인 “GOIN”을 각각 생성할 수 있다.
또한, 제어부(180)는 기 설정된 시동어 이후에 수신된 “음악 틀어줘”라는 음성을 분석할 수 있다. 그리고, 제어부(180)는 상기 분석된 음성 정보를, 제1, 제2 및 제3 서버(310, 320, 330)에서 요구하는 데이터 형식에 맞도록 변환할 수 있다.
제어부(180)는 상기 생성된 서로 다른 시동어가 포함되도록 상기 변환된 음성 정보를 제1, 제2 및 제3 서버(310, 320, 330)에 전송할 수 있다. 이를 통하여, 본 발명은 서로 다른 인공 지능 서버에서 인식 가능한 형태로 사용자의 음성을 전송할 수 있다.
상기 복수의 인공 지능 서버들은 각 서버에 설정된 시동어 및 음성 정보가 수신되면, 머신 러닝 알고리즘을 이용하여, 음성 정보에 대응되는 결과 정보를 생성할 수 있다. 그리고, 복수의 인공 지능 서버들은 결과 정보를 전자 장치(100)에 전송할 수 있다.
상기 전자 장치의 제어부(180)는 상기 서로 다른 시동어 및 상기 변환된 음성 정보를 전송 후, 상기 복수의 인공 지능 서버로부터 복수의 결과 정보를 수신할 수 있다(S550). 그리고, 제어부(180)는 상기 수신된 결과 정보를 출력할 수 있다(S560).
제어부(180)는 복수의 결과 정보가 수신되면, 출력부를 통하여, 복수의 결과 정보를 순차적으로 출력할 수 있다. 상기 출력부에는 디스플레이부 및 음성 출력부(즉, 스피커)가 포함될 수 있다.
보다 구체적으로, 상기 제어부(180)는 복수의 인공 지능 서버 사이의 우선 순위에 근거하여, 복수의 결과 정보를 순차적으로 출력할 수 있다. 즉, 제어부(180)는 우선 순위가 높은 서버에서 전송된 결과 정보부터 순차적으로 결과 정보들을 출력할 수 있다.
또는 제어부(180)는 복수의 결과 정보 중 우선 순위가 높은 일부 결과 정보만을 선택적으로 출력할 수 있다. 이 경우, 제어부(180)는 사용자의 요청이 수신되는 것에 응답하여, 우선 순위가 낮은 나머지 결과 정보를 출력할 수 있다.
상기 우선 순위는, 다양한 평가 요소들에 의하여 결정될 수 있다. 이를 위하여, 제어부(180)는 복수의 인공 지능 서버의 등록 단계에서 각 인공 지능 서버를 평가하는 평가 단계를 더 진행할 수 있다.
상기 제어부(180)는 특정 인공 지능 서버에 대한 평가 단계에서, 서버 평가를 위하여 미리 설정된 복수의 질문 정보를 포함한 질문 리스트를 특정 인공 지능 서버에 전송할 수 있다. 전자 장치(100)에는 상기 질문 리스트에 포함된 질문 정보에 대한 답변 정보가 미리 메모리 상에 저장되어 있을 수 있다.
그리고, 제어부(180)는 이러한 질문 리스트에 대한 응답으로, 상기 특정 인공 지능 서버로부터 답변 정보를 수신하고, 수신된 답변 정보에 근거하여, 특정 인공 지능 서버에 대하여 평가 점수를 계산할 수 있다. 예를 들어, 제어부(180)는 기 저장된 답변 정보와 인공 지능 서버로부터 수신된 답변 정보를 비교하여, 평가 점수를 계산할 수 있다.
상기 제어부(180)는 복수의 인공 지능 서버에 대하여, 각각 평가 단계를 수행한 후, 각각의 인공 지능 서버의 평가 점수에 근거하여, 우선 순위를 설정할 수 있다.
또한, 제어부(180)는 등록 단계가 완료된 이후, 사용자의 응답 정보를 이용하여, 우선 순위의 업데이트를 수행할 수 있다. 보다 구체적으로, 제어부(180)는 인공 지능 서버에서 전송한 결과 정보에 대한 사용자의 응답 정보를 감지하고, 상기 감지된 응답 정보에 따라 인공 지능 서버의 평가 점수를 다시 계산할 수 있다. 예를 들어, 제어부(180)는 제1인공 지능 서버에서 전송한 결과 정보에 대하여, 긍정 응답이 감지되는 경우, 제1인공 지능 서버의 평가 점수를 상향시킬 수 있다. 이 경우, 제어부(180)는 평가 점수가 상향됨에 따라 제1인공 지능 서버의 우선 순위도 높아질 수 있다.
이상에서는 서로 다른 시동어에 근거하여 동작하도록 설정된 복수의 인공 지능 서버를 하나의 시동어로 동작시키는 방법에 대하여 설명하였다. 이를 통하여, 본 발명은 사용자가 원하는 결과 정보를 검색하는데 있어서의 검색 정확도를 향상시킬 수 있다. 또한, 본 발명은 간단한 명령을 통하여 여러 서버들을 동시에 동작시킬 수 있어, 사용자 편의성이 향상될 수 있다.
이하에서는, 전자 장치(100)에 있어서, 복수의 인공 지능 서버를 등록 하는 방법에 대하여 구체적으로 살펴본다. 도 7은 본 발명과 관련된 전자 장치에서 인공 지능 서버를 등록하는 방법을 나타낸 흐름도이다. 도 8a 내지 도 9b는 도 7의 등록 방법을 나타낸 개념도들이다.
본 발명에 따른 전자 장치(100)는 기본으로 설정된 인공 지능 서버를 통하여, 등록 가능한 복수의 인공 지능 서버를 검색할 수 있다. 그리고, 제어부(180)는 사용자 요청에 근거하여, 복수의 인공 지능 서버의 등록 절차를 진행할 수 있다.
상기 제어부(180)는 복수의 인공 지능 서버에 대한 등록 절차의 진행 시, 각 인공 지능 서버의 질의 능력에 대한 평가를 진행할 수 있다.
보다 구체적으로, 도 7을 참조하면, 제어부(180)는 기 설정된 복수의 질문이 포함된 질문 리스트를 복수의 인공 지능 서버에 전송할 수 있다(S710).
본 발명에 따른 전자 장치(100)의 메모리(170)에는, 전자 장치(100)에 인공 지능 서버를 등록하는 경우, 인공 지능 서버의 답변 능력에 대한 사전 평가를 수행하기 위한 질문 리스트가 저장될 수 있다.
상기 질문 리스트는, 복수의 질문이 항목으로 구성된 리스트이다. 이러한 질문 리스트에 포함된 질문은 인류 보편적인 사실에 대한 질문을 포함할 수 있다. 예를 들어, 대한민국의 수도의 이름을 묻는 질문이거나, 대한민국의 현재 대통령의 이름을 묻는 질문과 같이 보편적인 사실을 묻는 질문일 수 있다.
또한, 질문 리스트에는, 돌발 질문이 포함될 수 있다. 상기 돌발 질문은 전자 장치에서 제공 가능한 언어가 아닌 다른 언어로 구성된 질문, 사용자 데이터베이스 상에 포함된 정보와 관련된 질문 등이 포함될 수 있다. 본 발명은 이러한 돌발 질문을 통하여, 다각도로 인공 지능 서버의 답변 능력을 평가할 수 있다.
한편, 상기 제어부(180)는 전자 장치(100)가 위치한 국가에 따라, 질문 리스트에 포함된 질문을 변경할 수 있다. 상기 전자 장치(100)의 위치는, 사용자에 의하여 설정되거나, 전자 장치(100)에 구비된 위치 수신부에서 수신된 위치 정보에 의하여 판단될 수 있다.
예를 들어, 도 8b와 같이, 제어부(180)는 전자 장치(100)가 미국에 위치한 경우, 미국의 수도를 묻는 질문을 질문 리스트에 포함하고, 도 8a와 같이, 전자 장치(100)가 한국에 위치한 경우, 한국의 수도를 묻는 질문을 질문 리스트에 포함할 수 있다.
이를 통하여, 본 발명은 전자 장치가 사용되는 국가에서 보편적으로 통용되는 질문으로 전자 장치를 평가할 수 있다. 이를 통하여, 본 발명은 전자 장치를 이용하는 사용자의 국가 정보를 반영하여, 전자 장치에 대한 평가 시, 좀 더 사용자 특화된 평가 점수를 계산할 수 있다.
이외에도, 상기 제어부(180)는 전자 장치가 위치한 국가 이외에도, 사용자가 발화하는 언어의 종류, 전자 장치에서 제공되는 언어의 종류에 따라 질문 리스트에 포함된 질문을 변경할 수도 있다.
제어부(180)는 기본으로 설정된 인공 지능 서버에서 등록 가능한 복수의 인공 지능 서버가 검색되고, 상기 복수의 인공 지능 서버에 대한 등록 절차가 진행되면, 각 인공 지능 서버마다 질문 리스트를 송부할 수 있다.
상기 제어부(180)는 상기 복수의 인공 지능 서버로부터 상기 질문에 대한 답변이 포함된 답변 정보를 수신할 수 있다(S720). 그리고, 상기 제어부(180)는 상기 수신된 답변 정보와 기 저장된 답변 정보를 비교하여, 복수의 인공 지능 서버에 대한 평가 점수를 계산할 수 있다(S730).
상기 제어부(180)는 상기 복수의 인공 지능 서버로부터 상기 질문 리스트에 응답하여 생성된 답변이 포함된 답변 정보를 수신할 수 있다. 답변 정보는, 인공 지능 서버마다 구비된 데이터베이스를 이용하여 생성된 질문에 대한 답변일 수 있다. 따라서, 답변 정보는 인공 지능 서버에 구비된 데이터베이스에 저장된 정보, 인공 지능 서버가 답변 정보를 생성하는 알고리즘 등에 의하여 결정되기 때문에, 인공 지능 서버마다 서로 다르게 생성될 수 있다.
상기 제어부(180)는 복수의 인공 지능 서버 별로 수신된 답변 정보에 근거하여, 각 인공 지능 서버의 답변 능력을 평가하는 평가 점수를 계산할 수 있다.
우선, 전자 장치(100)의 메모리(170)에는 질문 리스트에 포함된 질문에 대한 정답 정보들이 질문 정보와 함께 저장될 수 있다. 예를 들어, 대한민국의 수도의 이름을 묻는 질문에는 “서울”이라는 정답 정보가 저장될 수 있고, 대한민국의 현재 대통령의 이름을 묻는 질문에는 “대한민국 19대 대통령은 문재인입니다”와 같은 정답 정보가 저장될 수 있다.
그리고, 메모리(170)에는, 각 답변마다 평가 점수가 미리 설정될 수 있다. 정답으로 설정된 정보는 10점, 정답과 유사한 정보는 5점, 무응답 정보에는 0점, 기타 정보에는 “-1점”을 설정할 수 있다. 상기 기타 정보는, 메모리(170)에 저장되지 않은 답변으로, 틀린 답변일 수 있다. 예를 들어, 대한 민국의 수도를 묻는 질문에 대하여, “서울”이라는 답변은 10점, “부산” 또는 “세종”이라는 답변은 5점, “모르겠음”이라는 답변은 0점, “뉴욕”이라는 답변은 “-1점”이 설정되어 있을 수 있다.
제어부(180)는 메모리(170)에 저장된 답변 정보와 인공 지능 서버에서 수신된 답변 정보를 비교하고, 비교 결과에 따라 평가 점수를 계산할 수 있다. 보다 구체적으로, 제어부(180)는 인공 지능 서버에서 수신된 답변 정보가 메모리(170)에 저장된 답변 정보의 어느 답변에 해당하는지 여부를 판단하고, 판단 결과에 근거하여, 인공 지능 서버의 평가 점수로 부여할 수 있다.
또는 제어부(180)는 메모리(170) 상에 저장된 답변 정보와 인공 지능 서버에서 수신된 답변 정보 사이의 유사성을 판단하고, 유사성에 따라 평가 점수를 부여할 수 있다. 이 경우, 메모리(170)에는 정답 정보와의 유사성에 따라 평가 점수가 설정될 수 있다.
예를 들어, 제어부(180)는 인공 지능 서버로부터 “서울”과 유사한 “city of seoul”, “서울특별시”, “강남”, “종로” 등의 답변 정보가 수신되면, 메모리(170)에 저장된 정답 정보인 “서울”과의 유사성을 판단하여, 유사성이 가장 높은 순서대로 평가 점수를 부여할 수 있다. 예를 들어, 100% 일치하는 “city of seoul” 및 “서울특별시”의 경우, 10점, 60%일치하는 “강남” 및 “종로”의 경우, 6점을 부여할 수 있다.
한편, 제어부(180)는 돌발 질문에 대한 답변 정보의 경우, 질문 언어의 종류에 근거하여, 평가 점수를 계산할 수 있다. 예를 들어, 제어부(180)는 “what’s a capital of korea?”이라는 질문에 대한 답변으로 영어로 “seoul”이라는 답변이 수신되면, 10점, 한국어로 “서울”이라는 답변이 수신되면, 9점을 부여할 수 있다.
상기 제어부(180)는 복수의 인공 지능 서버에 대한 평가 점수에 근거하여, 복수의 인공 지능 서버 간의 우선 순위를 설정할 수 있다(S740).
제어부(180)는 상기 계산된 복수의 인공 지능 별 평가 점수에 근거하여, 복수의 인공 지능 간의 우선 순위를 설정할 수 있다. 보다 구체적으로 제어부(180)는 평가 점수가 높은 순서대로, 우선 순위를 높게 설정할 수 있다. 상기 우선 순위는 복수의 인공 지능에서 수신된 결과 정보들을 출력하는 순서이다. 즉, 제어부(180)는 우선 순위에 따라, 결과 정보들을 순차적으로 출력할 수 있다.
한편, 제어부(180)는 평가 점수가 동일한 경우, 제어부(180)는 전자 장치(100)가 사용되는 위치, 전자 장치(100)를 사용하는 사용자의 언어 중 적어도 하나에 근거하여, 우선 순위를 결정할 수 있다. 예를 들어, 제어부(180)는 전자 장치(100)가 사용되는 위치가 한국인 경우, 평가 점수가 동일한 제1인공 지능 서버를 제2인공 지능 서버에 대하여, 제1인공 지능 서버가 더 높은 우선 순위를 갖도록 설정할 수 있다. 또 다른 예로, 도 9a와 같이, 제어부(180)는 전자 장치(100)의 사용자가 영어를 사용하는 경우, 평가 점수가 동일한 제1, 제2 및 제3 인공 지능 서버에 대하여, 제1, 제2 및 제3인공 지능 서버 순서대로, 우선 순위를 갖도록 설정할 수 있다. 또한, 도 9b와 같이, 제어부(180)는 전자 장치(100)의 사용자가 한국어를 사용하는 경우, 평가 점수가 동일한 제1, 제2 및 제3 인공 지능 서버에 대하여, 제3, 제1 및 제2 인공 지능 서버의 순서대로 우선 순위를 갖도록 설정할 수 있다.
더 높은 우선 순위를 갖도록 설정할 수 있다. 즉, 제어부(180)는 전자 장치가 사용되는 위치나, 사용자의 언어에 따라, 해당 국가에서 제공하는 인공 지능 서버에 우선 순위를 높게 부여할 수 있다.
이상에서는, 인공 지능 서버가 전자 장치에 등록되는 경우, 복수의 인공 지능 서버 간의 우선 순위를 설정하는 방법에 대하여 설명하였다. 이를 통하여, 본 발명은 복수의 인공 지능 서버에서 수신된 결과 정보들을 서버 간의 우선 순위에 따라 순차적으로 출력할 수 있다.
이하에서는 복수의 인공 지능 서버가 등록된 이후, 복수의 인공 지능 서버 간의 우선 순위를 업데이트하는 방법을 설명한다. 도 10은 복수의 인공 지능 서버가 등록된 이후, 복수의 인공 지능 서버 간의 우선 순위를 업데이트하는 방법을 나타낸 흐름도이다. 도 11은 결과 정보에 대한 사용자의 응답 종류를 나타낸 개념도이다.
제어부(180)는 복수의 인공 지능 서버가 전자 장치(100)에 등록된 경우, 복수의 인공 지능 서버를 이용하여 사용자의 요청에 대한 결과 정보를 획득할 수 있다. 한편, 제어부(180)는 상기 획득된 결과 정보에 대한 사용자 응답에 근거하여, 복수의 인공 지능 서버의 등록 당시에 설정한 우선 순위를 업데이트할 수 있다.
도 10를 참조하면, 우선 제어부(180)는 인공 지능 서버로부터 결과 정보가 수신되면, 상기 수신된 결과 정보에 대한 사용자 응답을 감지할 수 있다(S1010).
상기 제어부(180)는 복수의 인공 지능 서버에서 수신된 복수의 결과 정보를 순차적으로 출력할 수 있다. 이때, 상기 제어부(180)는 각 결과 정보에 대하여, 사용자 응답을 감지할 수 있다.
보다 구체적으로, 제어부(180)는 카메라(121)를 통하여, 결과 정보 출력 당시의 사용자를 촬영하고, 촬영된 사용자의 이미지를 분석하여, 사용자의 응답을 감지할 수 있다. 예를 들어, 제어부(180)는 사용자의 얼굴 이미지를 촬영하고, 촬영된 얼굴 이미지를 분석하고, 분석 결과에 근거하여, 사용자의 응답 정보를 생성할 수 있다. 예를 들어, 얼굴 이미지가 긍정 이미지인 경우, 긍정 응답 정보, 얼굴 이미지가 부정 응답인 경우, 부정 응답 정보를 생성할 수 있다.
또는, 제어부(180)는 결과 정보의 출력 이후 또는 결과 정보의 출력과 동시에 사용자로부터 발화된 음성 정보에 근거하여, 사용자의 응답 정보를 생성할 수 있다. 보다 구체적으로, 도 11과 같이, 제어부(180)는 결과 정보의 출력 직후, 또는 결과 정보의 출력과 동시에 사용자로부터 발화된 음성을 수신할 수 있다. 그리고, 제어부(180)는 수신된 음성을 분석하고, 분석 결과를 이용하여, 긍정 응답 정보, 부정 응답 정보, 모호한 응답 정보를 생성할 수 있다. 예를 들어, 제어부(180)는, “응 좋아”라는 음성에 대하여, 긍정 응답 정보로 분류하고, “아니, 다른거 없어?’라는 음성에 대하여, 부정 응답 정보로 분류하고, “고민되네’라는 음성에 대하여, 모호한 응답 정보로 분류할 수 있다.
상기 제어부(180)는 상기 사용자 응답이 긍정 응답인지 여부를 판단하고(S1020), 긍정 응답인 경우, 긍정 응답을 전송한 인공 지능 서버의 평가 점수를 상향할 수 있다(S1021). 그 후, 제어부(180)는 상기 상향된 평가 점수를 우선 순위에 반영할 수 있다(S1050).
제어부(180)는 결과 정보에 대한 응답이 긍정 응답 정보인 경우, 평가 점수를 상향하여, 우선 순위를 높이도록 우선 순위를 업데이트할 수 있다. 이를 통하여, 본 발명은 사용자의 긍정 응답이 많은 인공 지능 서버의 우선 순위를 높여, 복수의 결과 정보 중 사용자가 선호하는 결과 정보를 먼저 제공할 수 있다.
또한, 상기 제어부(180)는 상기 사용자 응답이 긍정 응답이 아닌 경우, 부정 응답인지 여부를 판단하고(S1030), 부정 응답인 경우, 부정 응답을 전송한 인공 지능 서버의 평가 점수를 하향할 수 있다(S1031). 그 후, 제어부(180)는 상기 하향된 평가 점수를 우선 순위에 반영할 수 있다(S1050).
제어부(180)는 결과 정보에 대한 응답이 부정 응답인 경우, 평가 점수를 하향하여, 우선 순위를 낮추도록 우선 순위를 업데이트할 수 있다. 이를 통하여, 본 발명은 사용자의 부정 응답이 많은 인공 지능 서버의 우선 순위를 낮춰, 복수의 결과 정보 중 사용자가 선호하지 않는 결과 정보를 나중에 제공할 수 있다.
그리고, 상기 제어부(180)는 상기 사용자 응답이 긍정 및 부정 응답에 모두 해당하지 않는 경우, 모호한 응답으로 분류하고(S1040), 모호한 응답을 전송한 인공 지능 서버에 모호한 응답의 전송 횟수를 상향할 수 있다(S1041). 그 후, 제어부(180)는 상기 상향된 모호한 응답의 전송 횟수를 우선 순위에 반영할 수 있다(S1050).
제어부(180)는 결과 정보가 긍정 응답 및 부정 응답 모두에 해당하지 않은 경우, 모호한 응답으로 분류할 수 있다. 그리고, 제어부(180)는 평가 점수가 동일한 두 개의 인공 지능 서버에 대하여, 모호한 응답으로 분류된 횟수에 따라, 우선 순위를 결정할 수 있다. 보다 구체적으로, 제어부(180)는 평가 점수가 동일한 두 개의 인공 지능 서버가 존재하는 경우, 모호한 응답으로 분류된 횟수가 많을수록 우선 순위를 낮게 설정할 수 있다.
이상에서는, 복수의 인공 지능 서버에서 전송한 결과 정보에 대한 사용자 응답에 따라 복수의 인공 지능 서버 간의 우선 순위를 업데이트하는 방법을 설명하였다. 이를 통하여, 본 발명은 사용자가 선호하는 인공 지능 서버로부터 수신된 결과 정보를 우선적으로 제공할 수 있다.
이하에서는 복수의 인공 지능 서버로부터 수신된 복수의 결과 정보를 우선 순위에 따라 출력하는 방법을 설명한다. 도 12a내지 도 12c는 복수의 인공 지능 서버로부터 수신된 복수의 결과 정보를 우선 순위에 따라 출력하는 방법을 나타낸 개념도들이다.
도 12a의 (a)와 같이, 본 발명에 따른 전자 장치(100)의 제어부(180)는 복수의 인공 지능 서버로부터 수신된 복수의 결과 정보를 수신할 수 있다.
이때 제어부(180)는 각 인공 지능 서버의 식별 정보를 각 인공 지능 서버에서 전송한 결과 정보를 조합할 수 있다. 예를 들어, 도 12a의 (b)와 같이, 제2인공 지능 서버로부터 수신된 결과 정보 2의 경우, 제어부(180)는 제2인공 지능 서버의 식별 정보인 “서버 2”와 제2인공 지능 서버로부터 수신된 “결과 정보 2”를 함께 출력할 수 있다. 즉, 제어부(180)는, “서버 2의 응답은 결과 정보 2입니다”라고 결과 정보를 조합할 수 있다.
그리고, 상기 제어부(180)는 각 인공 지능 서버에서 수신된 결과 정보를, 각 인공 지능 서버의 식별 정보와 조합한 후, 인공 지능 서버 간의 우선 순위 순서에 따라 상기 결과 정보들을 순차적으로 출력할 수 있다. 예를 들어, 도 12a의 (b)와 같이, 제어부(180)는 인공 지능 서버 간의 우선 순위가 서버 2, 서버 1, 서버 3의 순서인 경우, 각 인공 지능 서버로부터 수신된 결과 정보를 순차적으로 출력할 수 있다. 즉, 사용자는 우선 순위가 높은 인공 지능 서버로부터 수신된 결과 정보를 우선적으로 확인할 수 있다.
한편, 제어부(180)는 복수의 인공 지능 서버로부터 수신된 복수의 결과 정보 중 우선 순위가 높은 일부 결과 정보만을 선택적으로 출력할 수 있다. 예를 들어, 서버 1, 서버2 및 서버 3 , 서버 4의 순서대로, 우선 순위가 설정된 경우, 제어부(180)는 서버 1, 서버 2, 서버 3의 결과 정보만을 출력하고, 서버 4의 결과 정보를 출력하지 않을 수 있다.
이 경우, 도 12a의 (c)와 같이, 제어부(180)는 서버 4로부터 수신된 결과 정보를 출력할지 여부를 사용자에게 묻는 정보를 음성으로 출력할 수 있다. 따라서, 본 발명은 우선 순위가 낮은 결과 정보를 사용자에게 제공하지 않도록 설정하여, 불필요한 정보를 사전에 차단함과 동시에, 사용자의 요청에 따라, 추가적인 정보를 출력할 수 있는 기능을 제공할 수 있다.
도 12c와 같이, 상기 제어부(180)는 서버 3 및 서버 4로부터 수신된 결과 정보를 출력할지 여부를 사용자에게 묻는 정보의 출력 이후, 사용자로부터 상기 우선 순위가 낮은 결과 정보에 대한 출력 요청이 수신되는 경우, 상기 서버 4의 결과 정보를 출력할 수 있다.
또는, 도 12c의 (a)와 같이, 상기 제어부(180)는 복수의 결과 정보 중 특정 결과 정보를 다시 출력하기 위한 사용자 요청을 수신될 수 있다. 상기 사용자 요청은 음성으로 수신될 수 있다. 이 경우, 도 12c의 (b)와 같이, 제어부(180)는 상기 사용자 요청을 복수의 인공 지능 서버에 다시 전송하지 않고, 사용자 요청에 따라 특정 결과 정보를 재출력할 수 있다. 즉, 본 발명은 인공 지능 서버와의 통신 수행이 필요치 않은 정보에 대하여, 불필요한 통신을 수행하지 않음으로써, 사용자에게 보다 빠르게 응답할 수 있다.
이상에서는, 전자 장치가 복수의 결과 정보를 출력하는 방법에 대하여 설명하였다. 이를 통하여, 본 발명은 복수의 결과 정보의 출처를 제공할 수 있고, 사용자 선호도가 높은 결과 정보를 우선적으로 제공할 수 있다.
이하에서는 복수의 결과 정보의 출력 이후, 사용자로부터 추가 제어 명령이 수신된 경우에 전자 장치의 동작 방법에 대하여 설명한다. 도 13은 복수의 결과 정보가 출력된 이후, 사용자로부터 추가 제어 명령이 수신되는 경우의 전자 장치의 동작을 나타낸 흐름도이고, 도 14는, 도 13의 동작의 일 실시 예를 나타낸 개념도이다.
도 13을 참조하면, 제어부(180)는 복수의 인공 지능 서버로부터 수신된 복수의 결과 정보를 순차적으로 출력할 수 있다(S1310). 상기 복수의 결과 정보가 출력된 이 후, 제어부(180)는 사용자로부터 새로운 제어 명령을 수신할 수 있다(S1320).
도 14의 (a)를 참조하면, 제어부(180)는 서버1, 서버 2, 서버 3으로부터 수신된 결과 정보가 순차적으로 출력한 이 후, 사용자로부터 새로운 제어 명령을 수신할 수 있다. 상기 새로운 제어 명령은 음성으로 수신될 수 있다.
이 경우, 제어부(180)는 사용자의 제어 명령이 복수의 결과 정보와 관련된 명령인지 여부를 판단할 수 있다(S1330).
판단 결과, 제어부(180)는 상기 사용자 제어 명령이 복수의 결과 정보 중 어느 하나의 결과 정보와 관련된 제어 명령인 경우, 어느 하나의 결과 정보를 전송한 인공 지능 서버에 상기 사용자 제어 명령을 전송할 수 있다(S1340).
도 14의 (b)를 참조하면, 제어부(180)는, 상기 복수의 결과 정보의 출력 이후, 서버 1과 관련된 제어 명령을 수신할 수 있다. 서버 1과 관련된 제어 명령이란, 서버 1에서 전송한 결과 정보에 포함된 단어가 포함되어 있거나, 서버 1의 식별 정보를 나타내는 단어가 포함되어 있는 제어 명령일 수 있다. 예를 들어, 제어부(180)는 서버 1의 결과 정보가 “뮤직 온으로 최신곡 재생입니다”인 상태에서, 사용자의 새로운 제어 명령이 “뮤직온으로 최신곡 말고 다른거 없어?”라는 음성이 수신되는 경우, “뮤직온”, “최신곡”이라는 단어를 통하여, 사용자의 새로운 제어 명령을 서버 1의 결과 정보와 관련된 명령으로 판단할 수 있다.
이 경우, 제어부(180)는 사용자의 새로운 제어 명령 상에 서버 1의 시동어가 포함되어 있지 않더라도, 상기 사용자의 새로운 제어 명령을 서버 1에만 전송할 수 있다. 또한, 제어부(180)는 서버 2 및 서버 3에는, 사용자의 새로운 제어 명령을 전송하지 않을 수 있다.
도 14의 (c)를 참조하면, 제어부(180)는 서버 1에서 수신된 새로운 응답을 출력할 수 있다. 따라서, 본 발명은 자신이 선호하는 인공 지능 서버의 시동어를 모르더라도, 자신이 선호하는 인공 지능 서버와 통신을 수행할 수 있다. 또한, 본 발명은 서버 2 및 서버 3과 불필요한 통신을 수행하지 않을 수 있다.
이와 달리, 판단 결과, 제어부(180)는 상기 사용자 제어 명령이 복수의 결과 정보와 관련된 명령이 아닌 경우, 복수의 인공 지능 서버에 상기 새로운 제어 명령을 전송할 수 있다(S1350).
제어부(180)는 사용자 제어 명령이 복수의 결과 정보와 관련된 제어 명령이 아닐 수 있다. 이 경우, 제어부(180)는 사용자 제어 명령을 다시 복수의 인공 지능 서버에 전송할 수 있다.
또는, 비록 도시되지는 않았지만, 제어부(180)는 사용자 제어 명령이 복수의 결과 정보와 관련된 제어 명령이 아닌 경우, 사용자 제어 명령을 무시하고, 음성 인식 상태(220)를 대기 상태(210)로 전환할 수 있다. 이 경우, 전자 장치의 음성 인식 기능은 종료될 수 있다.
이상에서는, 추가적인 사용자 제어 명령을 처리하는 전자 장치의 동작에 대하여 설명하였다.
이하에서는, 복수의 인공 지능 서버와 통신하지 않는 전자 장치의 동작 방법에 대하여 설명한다. 도 15는 복수의 인공 지능 서버와 통신하지 않는 전자 장치의 동작 방법의 일 실시 예를 나타낸 개념도이다.
본 발명에 따른 전자 장치(100)는 외부 네트워크 망을 통하여 외부에 위치한 인공 지능 서버와 통신을 수행할 수도 있지만, 내부 네트워크를 통하여, 내부 네크워크 안에 속한 장치와 통신을 수행할 수도 있다. 여기에서, 외부 네트워크는 Wi-Fi 등과 같은 원거리 통신망을 의미하고, 내부 네트워크는 DLNA, IFTTT와 같은 표준을 따르는 근거리 통신망을 의미한다. 내부 네트워크의 경우, 집과 같은 한정된 공간에 위치한 전자 장치들 간의 통신망일 수 있다.
이렇게 전자 장치(100)가 외부 네트워크를 통하여, 외부에 위치한 인공 지능 서버와 통신하여 동작하는 경우, 전체 동작 모드라고 명명하고, 전자 장치(100)가 내부 네트워크를 통하여 동작하는 경우, 로컬 동작 모드로 명명할 수 있다. 앞서 설명에서는, 전체 동작 모드로 동작하고 있음을 가정하고 설명하였다.
이하, 로컬 동작 모드에 대하여 보다 구체적으로 살펴본다.
제어부(180)는 사용자로부터 음성이 수신되는 경우, 상기 음성 정보를 분석하여, 전체 동작 모드 또는 로컬 동작 모드 중 어느 하나의 동작 모드로 동작할지 여부를 결정할 수 있다.
만일 상기 음성 정보가 인공 지능 서버로부터 결과 정보의 수신이 필요없는 정보라고 판단되는 경우, 제어부(180)는 로컬 동작 모드로 동작시킬 수 있다. 이 경우, 제어부(180)는 인공 지능 서버에 음성 정보를 전송하지 않고, 음성 정보에 근거하여, 전자 장치(100)를 동작시킬 수 있다. 예를 들어, 도 15를 참조하면, 제어부(180)는 “ANA, 조명 좀 켜줄래?”라는 음성이 수신되면, 음성에 대응되는 음성 정보에 근거하여, 로컬 동작 모드로 동작시킬 수 있다. 그리고, 비록 도시되지는 않았지만, 제어부(180)는 내부 네트워크로 통신 가능한 조명을 켜도록 조명 장치에 제어 명령을 전송할 수 있다.
이를 통하여, 본 발명은 인공 지능 서버와 통신이 필요하지 않은 제어 명령에 대하여 보다 빠르게 응답 및 동작할 수 있다.
본 발명은 복수의 인공 지능 서버와의 통신을 통하여, 특정 정보를 인공 지능 기술을 이용하여 처리한 복수의 결과 정보를 획득할 수 있다. 이를 통하여, 본 발명은 사용자에게 인공 지능 기술을 이용하여 처리된 복수의 결과 정보를 제공할 수 있으며, 사용자는, 복수의 결과 정보 중 가장 정확도가 높은 결과 정보를 스스로 확인할 수 있다.
또한, 본 발명은 서로 다른 시동어를 통하여 활성화되도록 설정된 복수의 인공 지능 서버에 대하여, 하나의 시동어를 이용하여, 복수의 인공 지능 서버를 동시에 활성화시킴으로써, 인공 지능 서버를 이용하는 사용자의 편의성을 향상시킬 수 있다.
또한, 본 발명은 복수의 인공 지능 서버로부터 수신된 결과 정보에 대한 사용자의 응답 반응을 이용하여, 각 서버의 결과 정보에 대한 사용자의 평가 점수를 계산하고, 계산된 평가 정보에 근거하여, 복수의 인공 지능 서버 간의 우선 순위를 설정하여, 복수의 결과 정보를 우선 순위에 따라 순차적으로 제공할 수 있다. 이를 통하여, 본 발명은 사용자의 선호도가 높은 결과 정보를 우선적으로 제공받을 수 있다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 상기 컴퓨터는 단말기의 제어부(180)를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (17)

  1. 음성을 수신하도록 형성된 음성 수신부 ;
    서로 다른 시동어에 의하여 활성화되도록 설정된 복수의 인공 지능 서버와 통신하는 무선 통신부; 및
    기 설정된 시동어를 포함한 음성이 입력되는 것에 응답하여, 상기 복수의 인공 지능 서버마다 서로 다르게 설정된 복수의 시동어를 생성하고,
    상기 생성된 복수의 시동어가 포함되도록 상기 음성을 변환하여, 상기 변환된 음성을 상기 복수의 인공 지능 서버에 각각 전송하며,
    상기 복수의 인공 지능 서버로부터 상기 변환된 음성에 응답하여 생성된 복수의 결과 정보를 수신되면, 상기 복수의 결과 정보를 출력하는 제어부를 포함하는 전자 장치.
  2. 제1항에 있어서,
    상기 제어부는
    상기 무선 통신부를 통하여 통신 연결 가능한 복수의 인공 지능 서버를 검색하고,
    상기 복수의 인공 지능 서버와 통신 가능하도록 상기 검색된 복수의 인공 지능 서버 각각에 해당하는 통신 노드를 생성하는 것을 특징으로 하는 전자 장치.
  3. 제2항에 있어서,
    상기 제어부는
    상기 복수의 인공 지능 서버에 통신 노드가 생성되는 경우, 상기 복수의 인공 지능 서버로부터 서로 다르게 설정된 시동어 정보 및 복수의 인공 지능 서버의 등록 정보를 수신하고,
    상기 복수의 인공 지능 서버와 통신 수행을 위하여, 상기 수신된 시동어 및 등록 정보를 각 서버의 통신 노드에 등록하는 것을 특징으로 전자 장치.
  4. 제2항에 있어서,
    상기 제어부는
    상기 복수의 인공 지능 서버 각각에 대한 통신 노드가 생성되면, 상기 복수의 인공 지능 서버에 복수의 질문을 항목으로 포함하는 질문 리스트를 전송하고,
    상기 복수의 인공 지능 서버로부터 상기 질문 리스트에 응답하여 생성된 답변 정보가 수신되면, 상기 답변 정보에 근거하여, 상기 복수의 인공 지능 서버 각각에 대한 평가 점수를 계산하며,
    상기 계산된 평가 점수에 근거하여, 상기 복수의 인공 지능 서버 간의 우선 순위를 결정하는 것을 특징으로 하는 전자 장치.
  5. 제4항에 있어서,
    상기 제어부는
    상기 결정된 우선 순위에 따라 복수의 결과 정보를 순차적으로 출력하는 것을 특징으로 하는 전자 장치.
  6. 제4항에 있어서,
    상기 제어부는
    상기 답변 정보를 긍정 답변 및 부정 답변 중 어느 하나에 해당하는지 여부를 판단하고,
    상기 판단 결과에 근거하여, 답변 정보를 전송한 인공 지능 서버의 평가 점수를 계산하는 것을 특징으로 하는 전자 장치.
  7. 제6항에 있어서,
    상기 제어부는
    상기 답변 정보가 긍정 답변 및 부정 답변으로 분류되지 않는 경우, 상기 답변 정보를 모호한 답변으로 판단하고,
    상기 답변 정보를 전송한 서버에 대하여 모호한 답변을 전송한 횟수를 저장하는 것을 특징으로 하는 전자 장치.
  8. 제7항에 있어서,
    상기 제어부는
    적어도 두 개의 인공 지능 서버가 동일한 평가 점수를 갖는 경우, 모호한 답변을 전송한 횟수가 적은 인공 지능 서버의 우선 순위를 높게 설정하는 것을 특징으로 하는 전자 장치.
  9. 제1항에 있어서,
    상기 제어부는
    상기 수신된 복수의 결과 정보를 출력한 이 후, 상기 음성 수신부를 통하여 새로운 사용자 음성이 수신되는 경우, 상기 새로운 사용자 음성이 상기 복수의 결과 정보와 관련된 음성인지 여부를 판단하고,
    판단 결과, 상기 새로운 사용자 음성이 복수의 결과 정보와 관련된 음성인 경우, 상기 새로운 사용자 음성에 근거하여, 상기 복수의 인공 지능 서버에 대한 평가 점수를 업데이트 하는 것을 특징으로 하는 전자 장치.
  10. 제9항에 있어서,
    상기 제어부는
    상기 판단 결과, 상기 새로운 사용자 음성이 상기 복수의 결과 정보와 관련된 음성이 아닌 경우, 음성 인식 기능을 종료하는 것을 특징으로 하는 전자 장치.
  11. 제1항에 있어서,
    상기 제어부는
    상기 복수의 결과 정보 중 우선 순위가 높은 일부 결과 정보가 출력된 경우, 상기 일부 결과 정보 이외의 나머지 결과 정보의 출력을 위한 사용자 제어 명령이 수신되는 경우, 상기 수신된 사용자 제어 명령에 응답하여, 나머지 결과 정보를 출력하는 것을 특징으로 하는 전자 장치.
  12. 제1항에 있어서,
    상기 제어부는
    상기 복수의 결과 정보의 출력 이 후, 상기 복수의 결과 정보 중 특정 결과 정보에 관련된 새로운 음성이 수신되는 경우, 특정 결과 정보를 전송한 인공 지능 서버에만 상기 새로운 음성에 대응되는 음성 정보를 전송하는 것을 특징으로 하는 전자 장치.
  13. 제1항에 있어서,
    상기 제어부는
    기 설정된 시동어가 특정 인공 지능 서버에 설정된 시동어인 경우, 상기 특정 서버에만, 상기 음성을 전송하는 것을 특징으로 하는 전자 장치.
  14. 제1항에 있어서,
    상기 제어부는
    상기 복수의 인공 지능 서버에서 전송한 결과 정보마다, 각 결과 정보를 전송한 인공 지능 서버의 식별 정보를 결합하여 출력하는 것을 특징으로 하는 전자 장치.
  15. 복수의 인공 지능 서버와 통신 수행이 가능한 전자 장치에 있어서,
    기 설정된 시동어가 포함된 음성을 수신하는 단계;
    상기 기 설정된 시동어에 근거하여, 상기 복수의 인공 지능 서버마다 서로 다르게 설정된 복수의 시동어를 생성하는 단계;
    상기 복수의 시동어가 포함되도록 상기 음성을 변환하는 단계;
    상기 변환된 음성을 상기 복수의 인공 지능 서버에 전송하는 단계; 및
    상기 복수의 인공 지능 서버로부터 상기 변환된 음성에 응답하여 생성된 복수의 결과 정보가 수신되면, 상기 복수의 결과 정보를 출력하는 단계를 포함하는 전자 장치의 제어 방법.
  16. 제15항에 있어서,
    상기 전자 장치의 제어 방법에는,
    무선 통신부를 통하여 통신 연결 가능한 복수의 인공 지능 서버를 검색하는 단계; 및
    상기 복수의 인공 지능 서버와 통신 가능하도록 상기 검색된 복수의 인공 지능 서버 각각에 해당하는 통신 노드를 생성하는 단계를 더 포함하는 것을 특징으로 하는 전자 장치의 제어 방법.
  17. 제15항에 있어서,
    상기 전자 장치의 제어 방법에는,
    상기 복수의 인공 지능 서버 간의 우선 순위를 결정하는 단계를 더 포함하고,
    상기 복수의 결과 정보를 출력하는 단계에서는,
    상기 결정된 우선 순위에 따라 복수의 결과 정보를 순차적으로 출력하는 것을 특징으로 하는 전자 장치의 제어 방법.
KR1020170104238A 2017-08-17 2017-08-17 전자 장치 및 그 제어 방법 KR102384643B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170104238A KR102384643B1 (ko) 2017-08-17 2017-08-17 전자 장치 및 그 제어 방법
US15/877,275 US10593322B2 (en) 2017-08-17 2018-01-22 Electronic device and method for controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170104238A KR102384643B1 (ko) 2017-08-17 2017-08-17 전자 장치 및 그 제어 방법

Publications (2)

Publication Number Publication Date
KR20190019401A KR20190019401A (ko) 2019-02-27
KR102384643B1 true KR102384643B1 (ko) 2022-04-08

Family

ID=65360664

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170104238A KR102384643B1 (ko) 2017-08-17 2017-08-17 전자 장치 및 그 제어 방법

Country Status (2)

Country Link
US (1) US10593322B2 (ko)
KR (1) KR102384643B1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017146437A (ja) * 2016-02-17 2017-08-24 本田技研工業株式会社 音声入力処理装置
KR102384643B1 (ko) * 2017-08-17 2022-04-08 엘지전자 주식회사 전자 장치 및 그 제어 방법
CN108600911B (zh) * 2018-03-30 2021-05-18 联想(北京)有限公司 一种输出方法及电子设备
US11593413B2 (en) * 2018-04-12 2023-02-28 Microsoft Technology Licensing, Llc Computerized assistance using artificial intelligence knowledge base
CN112399943B (zh) * 2018-06-12 2022-12-30 西门子交通有限公司 用于记录与轨道车辆相关的信息的方法和设备
KR102170905B1 (ko) * 2019-04-04 2020-10-28 주식회사 원더풀플랫폼 로봇을 이용한 대화 도우미 서비스 방법 및 시스템
US11328717B2 (en) * 2019-04-18 2022-05-10 Lg Electronics Inc. Electronic device, operating method thereof, system having plural artificial intelligence devices
WO2020218650A1 (ko) * 2019-04-26 2020-10-29 엘지전자 주식회사 전자기기
KR20210030646A (ko) * 2019-09-10 2021-03-18 삼성전자주식회사 인공지능 비서를 선택하는 전자 장치 및 그 응답 제공 방법
WO2021059771A1 (ja) * 2019-09-25 2021-04-01 ソニー株式会社 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム
KR102135859B1 (ko) 2019-10-24 2020-07-20 주식회사 유니온플레이스 개인화된 가상 비서를 제공하는 장치
US20210210099A1 (en) * 2020-01-06 2021-07-08 Soundhound, Inc. Multi Device Proxy
US11703920B2 (en) * 2020-07-08 2023-07-18 Google Llc Switching network for dynamically reconfigurable power plane
US11915691B2 (en) 2021-01-19 2024-02-27 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
KR20220105036A (ko) * 2021-01-19 2022-07-26 삼성전자주식회사 전자 장치 및 그 제어 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100009720A1 (en) 2008-07-08 2010-01-14 Sun-Hwa Cha Mobile terminal and text input method thereof

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58195957A (ja) * 1982-05-11 1983-11-15 Casio Comput Co Ltd 音声によるプログラム実行方式
US5241649A (en) * 1985-02-18 1993-08-31 Matsushita Electric Industrial Co., Ltd. Voice recognition method
US5239586A (en) * 1987-05-29 1993-08-24 Kabushiki Kaisha Toshiba Voice recognition system used in telephone apparatus
US6965863B1 (en) * 1998-11-12 2005-11-15 Microsoft Corporation Speech recognition user interface
DE19949716C2 (de) * 1999-10-15 2002-08-01 Bosch Gmbh Robert Mobiles Telekommunikationsendgerät
US7076400B2 (en) * 2000-02-14 2006-07-11 Nextnine Ltd. Support network
US7409318B2 (en) * 2000-02-14 2008-08-05 Nextnine Ltd. Support network
US20020032591A1 (en) * 2000-09-08 2002-03-14 Agentai, Inc. Service request processing performed by artificial intelligence systems in conjunctiion with human intervention
US9101279B2 (en) * 2006-02-15 2015-08-11 Virtual Video Reality By Ritchey, Llc Mobile user borne brain activity data and surrounding environment data correlation system
US20080126095A1 (en) * 2006-10-27 2008-05-29 Gil Sideman System and method for adding functionality to a user interface playback environment
WO2008072045A2 (en) * 2006-12-11 2008-06-19 Hari Prasad Sampath A method and system for personalized content delivery for wireless devices
US7836005B2 (en) * 2007-10-16 2010-11-16 Kuo-Hui Chien System and method for automatic generation of user-oriented homepage
US8412522B2 (en) * 2007-12-21 2013-04-02 Nvoq Incorporated Apparatus and method for queuing jobs in a distributed dictation /transcription system
US20090245500A1 (en) * 2008-03-26 2009-10-01 Christopher Wampler Artificial intelligence assisted live agent chat system
JP5609228B2 (ja) * 2010-04-16 2014-10-22 ソニー株式会社 通信システム並びに通信装置
US20140046891A1 (en) * 2012-01-25 2014-02-13 Sarah Banas Sapient or Sentient Artificial Intelligence
CN104520896B (zh) * 2012-01-27 2017-09-29 韩国科学技术院 视觉神经电路装置及利用视觉神经电路装置的视觉神经模仿系统
US20130339039A1 (en) * 2012-06-16 2013-12-19 Kendyl A. Román Mobile Wireless Medical Practitioner, Patient, and Medical Object Recognition and Control
US9432419B2 (en) * 2013-09-13 2016-08-30 Mimecast North America, Inc. Facilitating user communication about a common topic
US9371622B2 (en) * 2013-10-22 2016-06-21 James Connor Buckley System and method to automatically determine irregular polygon for environmental hazard containment modules
US9818061B1 (en) * 2013-10-22 2017-11-14 Lumin, LLC Collaboration of audio sensors for geo-location and continuous tracking of multiple users in a device-independent artificial intelligence (AI) environment
US10846599B2 (en) * 2013-10-22 2020-11-24 Lumin, LLC Collaboration of audio sensors for geo-location and continuous tracking of health conditions for users in a device-independent artificial intelligence (AI) environment
US9971979B2 (en) * 2014-03-04 2018-05-15 Roseboard Inc. System and method for providing unified and intelligent business management applications
US9609054B2 (en) * 2014-05-01 2017-03-28 Microsoft Technology Licensing, Llc Load balancing scalable storage utilizing optimization modules
KR101540895B1 (ko) * 2014-12-24 2015-07-30 이기범 히포테라피(Hippotherapy)용 인공지능말을 이용한 재활 시스템 및 그의 운용방법
JP5968501B1 (ja) * 2015-06-01 2016-08-10 三菱電機株式会社 車載電子制御装置
US10379533B2 (en) * 2016-01-04 2019-08-13 GM Global Technology Operations LLC System and method for autonomous vehicle fleet routing
US10671938B2 (en) * 2016-01-27 2020-06-02 Bonsai AI, Inc. Artificial intelligence engine configured to work with a pedagogical programming language to train one or more trained artificial intelligence models
US11449785B2 (en) * 2016-02-24 2022-09-20 Line Corporation Method and system for artificial intelligence learning using messaging service and method and system for relaying answer using artificial intelligence
US9928833B2 (en) * 2016-03-17 2018-03-27 Toyota Motor Engineering & Manufacturing North America, Inc. Voice interface for a vehicle
US10510350B2 (en) * 2016-03-30 2019-12-17 Lenovo (Singapore) Pte. Ltd. Increasing activation cue uniqueness
KR101777392B1 (ko) * 2016-07-04 2017-09-11 주식회사 케이티 중앙 서버 및 이에 의한 사용자 음성 처리 방법
US20180032305A1 (en) * 2016-07-29 2018-02-01 Paul Charles Cameron Systems and methods for automatic-creation of soundtracks for text
US10115400B2 (en) * 2016-08-05 2018-10-30 Sonos, Inc. Multiple voice services
US10726836B2 (en) * 2016-08-12 2020-07-28 Kt Corporation Providing audio and video feedback with character based on voice command
US20180075738A1 (en) * 2016-09-14 2018-03-15 John Van Egmond Transportation system and method
US10460520B2 (en) * 2017-01-13 2019-10-29 Simpsx Technologies Llc Computer ball device for mixed reality, virtual reality, or augmented reality
US10181114B2 (en) * 2016-09-30 2019-01-15 The Toronto-Dominion Bank System and method for generating an interaction request
US10165081B2 (en) * 2016-09-30 2018-12-25 The Toronto-Dominion Bank System and method for processing an interaction response
US10181323B2 (en) * 2016-10-19 2019-01-15 Sonos, Inc. Arbitration-based voice recognition
JP6883837B2 (ja) * 2016-11-15 2021-06-09 ファミリーイナダ株式会社 マッサージ機を備えたマッサージシステム
CN108231089B (zh) * 2016-12-09 2020-11-03 百度在线网络技术(北京)有限公司 基于人工智能的语音处理方法及装置
US9996819B1 (en) * 2016-12-11 2018-06-12 Sankalp Sandeep Modi Voice programmable automatic identification and data capture devices and system
US9961516B1 (en) * 2016-12-27 2018-05-01 Motorola Solutions, Inc. System and method for obtaining supplemental information in group communication using artificial intelligence
US10051442B2 (en) * 2016-12-27 2018-08-14 Motorola Solutions, Inc. System and method for determining timing of response in a group communication using artificial intelligence
US11593668B2 (en) * 2016-12-27 2023-02-28 Motorola Solutions, Inc. System and method for varying verbosity of response in a group communication using artificial intelligence
US10118671B2 (en) * 2016-12-29 2018-11-06 Shadecraft, Inc. Marine vessel with intelligent shading system
US9839267B1 (en) * 2016-12-29 2017-12-12 Shadecraft, Inc. Shading system with artificial intelligence application programming interface
US10248613B2 (en) * 2017-01-10 2019-04-02 Qualcomm Incorporated Data bus activation in an electronic device
JP6800249B2 (ja) * 2017-01-20 2020-12-16 本田技研工業株式会社 会話処理サーバー、会話処理サーバーの制御方法、及び端末
WO2018148315A1 (en) * 2017-02-07 2018-08-16 Lutron Electronics Co., Inc. Audio-based load control system
US10909980B2 (en) * 2017-02-27 2021-02-02 SKAEL, Inc. Machine-learning digital assistants
US10878314B2 (en) * 2017-03-09 2020-12-29 Alphaics Corporation System and method for training artificial intelligence systems using a SIMA based processor
US9754221B1 (en) * 2017-03-09 2017-09-05 Alphaics Corporation Processor for implementing reinforcement learning operations
US10949743B2 (en) * 2017-03-09 2021-03-16 Alphaics Corporation Method and system for implementing reinforcement learning agent using reinforcement learning processor
KR20180106796A (ko) * 2017-03-17 2018-10-01 삼성전자주식회사 전자 장치, 서버 및 전자 장치의 제어 방법
US11183181B2 (en) * 2017-03-27 2021-11-23 Sonos, Inc. Systems and methods of multiple voice services
US10735479B2 (en) * 2017-03-30 2020-08-04 Intel Corporation Methods, systems and apparatus to enable voice assistant device communication
US11323665B2 (en) * 2017-03-31 2022-05-03 Ecolink Intelligent Technology, Inc. Method and apparatus for interaction with an intelligent personal assistant
US11250844B2 (en) * 2017-04-12 2022-02-15 Soundhound, Inc. Managing agent engagement in a man-machine dialog
US10748531B2 (en) * 2017-04-13 2020-08-18 Harman International Industries, Incorporated Management layer for multiple intelligent personal assistant services
US20180314942A1 (en) * 2017-04-19 2018-11-01 AIBrain Corporation Scalable framework for autonomous artificial intelligence characters
US10488834B2 (en) * 2017-05-13 2019-11-26 Shadecraft, Inc. Intelligent umbrella or robotic shading system having telephonic communication capabilities
CN107221326B (zh) * 2017-05-16 2021-05-28 百度在线网络技术(北京)有限公司 基于人工智能的语音唤醒方法、装置和计算机设备
US20180349793A1 (en) * 2017-06-01 2018-12-06 Bank Of America Corporation Employing machine learning and artificial intelligence to generate user profiles based on user interface interactions
CN107273487A (zh) * 2017-06-13 2017-10-20 北京百度网讯科技有限公司 基于人工智能的聊天数据的生成方法、装置及计算机设备
US10349493B2 (en) * 2017-07-07 2019-07-09 Shadecraft, Inc. Artificial intelligence (AI) computing device with one or more lighting elements
WO2019027258A1 (en) * 2017-08-01 2019-02-07 Samsung Electronics Co., Ltd. ELECTRONIC DEVICE AND METHOD FOR CONTROLLING THE ELECTRONIC DEVICE
KR102384643B1 (ko) * 2017-08-17 2022-04-08 엘지전자 주식회사 전자 장치 및 그 제어 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100009720A1 (en) 2008-07-08 2010-01-14 Sun-Hwa Cha Mobile terminal and text input method thereof

Also Published As

Publication number Publication date
US10593322B2 (en) 2020-03-17
US20190057684A1 (en) 2019-02-21
KR20190019401A (ko) 2019-02-27

Similar Documents

Publication Publication Date Title
KR102384643B1 (ko) 전자 장치 및 그 제어 방법
EP3509061B1 (en) Electronic device for voice recognition
KR102389041B1 (ko) 이동단말기 및 머신 러닝을 이용한 이동 단말기의 제어방법
KR102384641B1 (ko) 다국어 처리를 수행하는 인공 지능 시스템의 제어 방법
US10462568B2 (en) Terminal and vehicle control method of mobile terminal using machine learning
US10464570B2 (en) Electronic device and method using machine learning for identifying characteristics of users located within a specific space
KR20210142783A (ko) 전자장치, 그 동작방법, 및 복수의 인공지능장치를 포함한 시스템
KR102391683B1 (ko) 오디오 장치 및 그 제어 방법
KR102353486B1 (ko) 이동 단말기 및 그 제어 방법
KR20190133100A (ko) 어플리케이션을 이용하여 음성 입력에 대한 응답을 출력하는 전자 장치 및 그 동작 방법
KR102390685B1 (ko) 전자 장치 및 그 제어 방법
KR102399809B1 (ko) 전자 장치 및 그 제어 방법
US20190163436A1 (en) Electronic device and method for controlling the same
US20210287665A1 (en) Voice recognition system
KR20190031829A (ko) 전자 장치 및 그 제어 방법
KR20210117360A (ko) 이동단말기 및 그 제어 방법
KR102658400B1 (ko) 이동단말기 및 그 제어 방법
KR20210110759A (ko) 전자 장치 및 그 제어 방법
KR20230031056A (ko) 감성 분석 시스템을 이용한 데이터 학습 방법

Legal Events

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