KR20180102987A - 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체 - Google Patents

전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체 Download PDF

Info

Publication number
KR20180102987A
KR20180102987A KR1020170145925A KR20170145925A KR20180102987A KR 20180102987 A KR20180102987 A KR 20180102987A KR 1020170145925 A KR1020170145925 A KR 1020170145925A KR 20170145925 A KR20170145925 A KR 20170145925A KR 20180102987 A KR20180102987 A KR 20180102987A
Authority
KR
South Korea
Prior art keywords
context
content
information
detected
data
Prior art date
Application number
KR1020170145925A
Other languages
English (en)
Other versions
KR102440963B1 (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 US16/464,907 priority Critical patent/US11347805B2/en
Priority to PCT/KR2018/002593 priority patent/WO2018164435A1/en
Priority to EP18764090.9A priority patent/EP3577583A4/en
Publication of KR20180102987A publication Critical patent/KR20180102987A/ko
Application granted granted Critical
Publication of KR102440963B1 publication Critical patent/KR102440963B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F17/30528
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • 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/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9562Bookmark management
    • G06F17/30867
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • 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
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Vehicle Body Suspensions (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 개시의 전자 장치는 사용자 명령을 입력받는 입력부, 메모리, 컨텐츠를 표시하는 디스플레이, 입력부를 통해 컨텐츠에 대한 기설정된 명령이 입력된 경우, 저장된 컨텐츠를 분석하여 컨텐츠의 컨텍스트 정보를 획득하며, 컨텐츠에 대한 정보와 함께 컨텍스트 정보를 메모리에 저장하며, 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 디스플레이를 제어하는 프로세서를 포함한다. 본 개시의 전자 장치의 제어 방법의 적어도 일부는 규칙 기반 모델 또는, 기계학습, 신경망 또는 딥러닝 알고리즘 중 적어도 하나에 따라 학습된 인공 지능 모델을 이용할 수 있다. 일 예로, 상기 인공 지능 모델은 컨텐츠를 입력 값으로 이용하여 판단된 결과인 컨텍스트 정보를 상기 전자 장치에게 제공할 수 있다.

Description

전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체{ELECTRONIC APPARATUS, METHOD FOR CONTROLLING THEREOF, AND NON-TRANSITORY COMPUTER READABLE RECORDING MEDIUM}
본 개시는 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체에 관한 것으로, 더욱 구체적으로, 컨텍스트를 감지하여 기저장된 컨텐츠들 중 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체에 관한 것이다.
또한, 본 개시는 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 인공 지능(Artificial Intelligence, AI) 시스템 및 그 응용에 관한 것이다.
근래에는 인간 수준의 지능을 구현하는 인공 지능 시스템이 다양한 분야에서 이용되고 있다.
인공지능(Artificial Intelligence, AI) 시스템은 인간 수준의 지능을 구현하는 컴퓨터 시스템이며, 기존 규칙 기반 스마트 시스템과 달리 기계가 스스로 학습하고 판단하며 똑똑해지는 시스템이다. 인공지능 시스템은 사용할수록 인식률이 향상되고 사용자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 규칙 기반 스마트 시스템은 점차 딥러닝 기반 인공지능 시스템으로 대체되고 있다.
인공지능 기술은 기계학습(딥러닝) 및 기계학습을 활용한 요소 기술들로 구성된다.
기계학습은 입력 데이터들의 특징을 스스로 분류/학습하는 알고리즘 기술이며, 요소기술은 딥러닝 등의 기계학습 알고리즘을 활용하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다.
인공지능 기술이 응용되는 다양한 분야는 다음과 같다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의 응답, 음성 인식/합성 등을 포함한다. 시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 객체 인식, 객체 추적, 영상 검색, 사람 인식, 장면 이해, 공간 이해, 영상 개선 등을 포함한다. 추론 예측은 정보를 판단하여 논리적으로 추론하고 예측하는 기술로서, 지식/확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다. 지식 표현은 인간의 경험정보를 지식데이터로 자동화 처리하는 기술로서, 지식 구축(데이터 생성/분류), 지식 관리(데이터 활용) 등을 포함한다. 동작 제어는 차량의 자율 주행, 로봇의 움직임을 제어하는 기술로서, 움직임 제어(항법, 충돌, 주행), 조작 제어(행동 제어) 등을 포함한다.
한편, 근래에는 통신 기술의 발달로 인해 전자 장치를 이용하여 수많은 컨텐츠에 접근할 수 있다. 특히, 사용자는 수많은 컨텐츠들 중에서 일부를 추후에 다시 이용하기 위하여 컨텐츠를 저장하거나 스크랩하거나 공유할 수 있다.
그러나, 컨텐츠를 저장하더라도 시간이 지나면, 사용자가 저장된 컨텐츠를 잊어버리게 되어 저장된 컨텐츠에 대한 쓸모가 줄어들게 된다. 특히, 컨텐츠가 필요할 때, 정작 컨텐츠를 기억하지 못해 사용자의 불편이 발생하는 문제점이 발생하였다.
본 개시는 상술한 문제점을 해결하기 위한 것으로, 인공지능 기술을 통해 컨텐츠에 대한 정보와 함께 컨텐츠의 컨텍스트 정보를 함께 저장하고 컨텍스트 정보에 대응되는 컨텍스트가 감지되면 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체에 관한 것이다.
상기 목적을 달성하기 위한 본 개시의 일 실시예에 따른, 전자 장치의 제어 방법은, 컨텐츠에 대한 기설정된 명령이 입력된 경우, 상기 저장된 컨텐츠를 분석하여 상기 컨텐츠의 컨텍스트 정보를 획득하는 단계; 상기 컨텐츠에 대한 정보와 함께 상기 컨텍스트 정보를 저장하는 단계; 및 상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함한다.
또한, 상기 목적을 달성하기 위한 본 개시의 일 실시예에 따른, 전자 장치는 사용자 명령을 입력받는 입력부; 메모리; 컨텐츠를 표시하는 디스플레이; 및 상기 입력부를 통해 상기 컨텐츠에 대한 기설정된 명령이 입력된 경우, 상기 저장된 컨텐츠를 분석하여 상기 컨텐츠의 컨텍스트 정보를 획득하며, 상기 컨텐츠에 대한 정보와 함께 상기 컨텍스트 정보를 상기 메모리에 저장하며, 상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 상기 디스플레이를 제어하는 프로세서;를 포함한다.
또한, 상기 목적을 달성하기 위한 본 개시의 일 실시예에 따른, 전자 장치의 제어 방법을 실행하기 위한 프로그램을 저장하는 비일시적인 컴퓨터 판독가능한 기록 매체에 있어서, 상기 전자 장치의 제어 방법은, 컨텐츠에 대한 기설정된 명령이 입력된 경우, 상기 저장된 컨텐츠를 분석하여 상기 컨텐츠의 컨텍스트 정보를 획득하는 단계; 상기 컨텐츠에 대한 정보와 함께 상기 컨텍스트 정보를 저장하는 단계; 및 상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함한다.
상술한 바와 같은 본 개시의 실시예에 의해, 전자 장치가 감지된 컨텍스트에 대응되는 기저장된 컨텐츠를 제공함으로써, 사용자는 별도의 조작없이 자신이 스크랩 또는 저장한 컨텐츠를 필요한 상황에 확인할 수 있게 된다.
도 1은 본 개시의 일 실시예에 따른, 전자 장치의 구성을 간략히 도시한 블럭도,
도 2는 본 개시의 일 실시예에 따른, 전자 장치의 구성을 상세히 도시한 블럭도,
도 3은 본 개시의 일 실시예에 따른, 컨텍스트 인식 서비스를 제공하기 위한 구성을 도시한 블럭도,
도 4a 내지 도 6b는 본 개시의 다양한 실시예에 따른, 컨텍스트를 인식하여 컨텍스트에 대응되는 컨텐츠를 제공하는 실시예를 설명하기 위한 도면들,
도 7은 본 개시의 일 실시예에 따른, 전자 장치의 제어 방법을 설명하기 위한 흐름도,
도 8은 본 개시의 다른 실시예에 따른, 컨텍스트 인식 서비스를 제공하는 시스템을 도시한 도면,
도 9는 본 개시의 일 실시예에 따른, 컨텍스트 인식 서비스를 제공하는 시스템의 제어 방법을 설명하기 위한 시퀀스도,
도 10은 본 개시의 일 실시 예에 따른, 프로세서의 구성을 도시한 블록도
도 11a는 본 개시의 일 실시 예에 따른, 데이터 학습부의 구성을 도시한 블록도,
도 11b는 본 개시의 일 실시 예에 따른, 데이터 인식부의 구성을 도시한 블록도이다.
이하에서는 본 개시의 바람직한 실시 예가 첨부된 도면을 참조하여 상세히 설명한다. 본 개시를 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되지는 않는다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 항목들의 조합 또는 복수의 관련된 항목들 중의 어느 하나의 항목을 포함한다.
본 명세서에서 사용한 용어는 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 숫자, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
실시 예에 있어서 '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 또는 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 혹은 복수의 '부'는 특정한 하드웨어로 구현될 필요가 있는 '모듈' 혹은 '부'를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.
이하에서는 첨부된 도면을 이용하여 본 개시에 대하여 구체적으로 설명한다. 도 1은 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 설명하기 위한 개략적인 블록도이다. 전자 장치(100)는 도 1에 도시된 바와 같이, 단독으로 컨텍스트를 인식하여 기저장된 컨텐츠를 제공하는 컨텍스트 인식 서비스를 제공할 수 있다. 전자 장치(100)가 단독으로 컨텍스트 인식 서비스를 제공할 경우, 스마트 폰, 타블렛 PC, 노트북 PC, 데스크탑 PC, 스마트 와치와 같은 웨어러블 장치, 전자 액자, 인간형 로봇, 오디오 장치, 스마트 TV 등과 같은 다양한 전자 장치로 구현될 수 있다. 다른 예로, 전자 장치(100)는 도 8에 도시된 바와 같이, 서버(200)와 연동하여 사용자에게 컨텍스트 인식 서비스를 제공할 수도 있다.
도 1에 도시된 바와 같이, 전자 장치(100)는 입력부(110), 디스플레이(120), 메모리(160) 및 프로세서(130)를 포함한다.
입력부(110)는 사용자 명령을 입력받는다. 특히, 입력부(110)는 현재 제공되는 컨텐츠(예를 들어, 웹 페이지 컨텐츠, 동영상 컨텐츠 등)에 대한 기설정된 명령(예를 들어, 스크랩 명령, 저장 명령, 공유 명령 등)을 입력받을 수 있다. 이때, 입력부(110)는 터치 패널로 구현될 수 있다.
디스플레이(120)는 컨텐츠를 제공한다. 또한, 기저장된 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 디스플레이(120)는 저장된 감지된 컨텍스트에 대응되는 컨텐츠를 안내하기 위한 메시지를 제공할 수 있다.
메모리(160)는 전자 장치(100)를 제어하기 위한 다양한 프로그램 및 데이터를 저장한다. 특히, 메모리(160)는 컨텐츠에 대한 정보와 컨텍스트 정보를 매칭하여 저장할 수 있다. 또한, 메모리(160)는 키워드 획득을 위해 기 학습된 데이터 인식 모델을 저장할 수 있다.
프로세서(130)는 메모리(160)에 저장된 다양한 프로그램 및 데이터를 이용하여 전자 장치(100)의 전반적인 동작을 제어한다. 특히, 입력부(110)를 통해 컨텐츠에 대한 기설정된 명령이 입력된 경우, 프로세서(130)는 저장된 컨텐츠를 분석하여 컨텐츠의 컨텍스트 정보를 획득하며, 컨텐츠에 대한 정보와 함께 컨텍스트 정보를 메모리(160)에 저장할 수 있다. 그리고, 저장된 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 프로세서(130)는 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다.
구체적으로, 입력부(110)는 현재 제공되는 컨텐츠에 대한 기설정된 명령을 입력받을 수 있다. 예를 들어, 입력부(110)는 현재 제공되는 웹 페이지에 대한 공유, 저장, 스크랩 명령을 저장받을 수 있다.
그리고, 프로세서(130)는 학습된 데이터 인식 모델을 이용하여 기설정된 명령이 입력된 컨텐츠에 대한 키워드를 획득하며, 추출된 키워드를 바탕으로 컨텍스트 정보를 획득할 수 있다. 이때, 프로세서(130)는 기학습된 데이터 인식 모델을 이용하여 키워드에 대응되는 컨텍스트 정보를 획득할 수 있으나, 이는 일 실시예에 불과할 뿐, 기저장된 매칭 테이블을 이용하여 키워드에 대응되는 컨텍스트 정보를 획득할 수 있다.
그리고, 프로세서(130)는 컨텐츠에 대한 정보(예를 들어, 컨텐츠의 주소 정보, 저장 장소 정보 등)에 획득된 컨텍스트 정보를 태깅하여 메모리(160)에 저장할 수 있다.
컨텐츠에 대한 정보와 컨텍스트 정보가 매칭되어 저장된 후, 프로세서(130)는 저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지할 수 있다.
구체적으로, 프로세서(130)는 전자 장치(100)에 구비된 센서로부터 획득된 센싱값으로부터 저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지할 수 있다. 예를 들어, 프로세서(130)는 전자 장치(100)에 구비된 GPS 센서로부터 사용자의 위치 정보를 획득하고, 사용자의 위치 정보를 바탕으로 사용자의 컨텍스트를 감지할 수 있다. 또는, 프로세서(130)는 전자 장치(100)와 연결된 외부 장치로부터 컨텍스트와 관련된 정보를 획득하며, 획득된 정보를 바탕으로 저장된 컨텍스트 정보와 대응되는 컨텍스트를 감지할 수 있다. 예를 들어, 프로세서(130)는 상점에 구비된 외부 장치로부터 상점에 대한 정보를 획득하고, 획득된 정보를 바탕으로 사용자의 컨텍스트를 감지할 수 있다. 또는, 프로세서(130)는 전자 장치(100)에 저장된 스케줄 정보를 바탕으로 컨텍스트 정보에 대응되는 컨텍스트를 감지할 수 있다.
또한, 프로세서(130)는 메모리(160)에 저장된 과거에 감지된 컨텍스트에 대한 정보를 바탕으로 현재의 컨텍스트를 판단할 수 있다. 예를 들어, 프로세서(130)는 과거에 감지된 사용자의 이동 경로를 바탕으로 현재 사용자의 목적지를 추정하여 사용자의 컨텍스트를 감지할 수 있다.
저장된 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 프로세서(130)는 컨텍스트 감지를 안내하기 위한 메시지를 제공하도록 디스플레이(120)를 제어할 수 있다.이때, 메시지에는 현재 감지된 컨텍스트에 대한 정보, 감지된 컨텍스트에 대응되는 컨텐츠에 대한 정보 및 컨텐츠 제공 여부를 문의하는 아이콘 중 적어도 하나를 포함할 수 있다.
메시지를 통해 사용자 명령(예를 들어, 컨텐츠 확인을 위한 사용자 명령 등)이 입력되면, 프로세서(130)는 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 상세히 설명하기 위한 블록도이다. 도 2를 참조하면, 전자 장치(100)는 입력부(110), 디스플레이(120), 프로세서(130), 음성 출력부(140), 통신부(150), 메모리(160) 및 센싱부(170)를 포함할 수 있다. 도 2의 실시 예에 도시된 구성 요소 이외에도 전자 장치(100)는 영상 수신부(미도시), 영상 처리부(미도시), 전원부(미도시) 등 다양한 구성을 포함할 수 있다. 또한, 전자 장치(100)가 반드시 도 2에 도시된 구성을 모두 포함하여 구현되는 것으로 한정되지 않음은 물론이다. 예를 들어, 전자 장치(100)가 서버로 구현되는 경우, 디스플레이(120), 음성 출력부(140), 센싱부(170)가 구비되지 않을 수 있음을 물론이다.
입력부(110)는 사용자 명령을 수신할 수 있다. 특히, 입력부(110)는 현재 제공되는 컨텐츠에 대한 기설정된 명령(예를 들어, 스크랩 명령, 저장 명령, 공유 명령 등)을 입력받을 수 있다.
한편, 입력부(110)는 터치 패널로 구현되어 사용자 터치 명령을 입력받을 수 있다. 또한, 입력부(110)가 터치 패널로 구현되는 경우, 터치 패널과 디스플레이(120)가 서로 결합되어 상호 레이어 구조를 이루는 터치 스크린의 형태로 구현될 수 있다. 터치 스크린은 터치 입력 위치, 면적, 터치 입력의 압력 등을 검출할 수 있다.
그 밖에, 입력부(110)는 다양한 형태로 사용자 명령을 입력받을 수 있다. 예를 들어, 입력부(110)는 마우스, 키보드, 음성 입력 장치, 모션 입력 장치 등으로 구현되어 사용자 명령을 입력받을 수 있다.
디스플레이(120)는 전자 장치(100)에서 제공되는 각종 가이드, 영상 컨텐츠, 정보, UI 등을 표시할 수 있다. 디스플레이(120)는 액정 표시 장치(Liquid Crystal Display, LCD), 유기 전기 발광 다이오드(Organic Light Emitting Display, OLED) 또는 플라즈마 표시 패널(Plasma Display Panel, PDP) 등으로 구현되어, 전자 장치(100)를 통해 제공 가능한 다양한 화면을 표시할 수 있다.
디스플레이(120)는 다양한 유형의 컨텐츠를 제공할 수 있다. 예를 들어, 디스플레이(120)는 웹 페이지 컨텐츠, 동영상 컨텐츠 등과 같은 다양한 컨텐츠를 제공할 수 있다. 또한, 디스플레이(120)는 컨텍스트에 대응되는 컨텐츠를 안내하는 메시지를 제공할 수 있다.
음성 출력부(140)는 음성을 출력할 수 있다. 예를 들어, 음성 출력부(140)는 각종 오디오 데이터뿐만 아니라 알림 음이나 음성 메시지를 출력할 수 있다. 본 발명의 일 실시 예에 따른 전자 장치(100)는 대화형 컨텍스트 감지 기능을 제공하기 위한 출력부의 하나로 음성 출력부(140)를 포함할 수 있다. 자연언어 처리된 음성 메시지를 음성 출력부(140)를 통해 출력함으로써, 전자 장치(100)는 사용자에게 전자 장치(100)와 대화하는 듯한 사용자 경험을 제공할 수 있다. 음성 출력부(140)는 전자 장치(100)에 내장될 수도 있으며, 잭 등과 같은 출력 포트의 형태로 구현될 수도 있다.
통신부(150)는 외부 장치와 통신을 수행한다. 예를 들어, 외부 장치는 다른 전자 장치, 서버, 클라우드 저장소, 네트워크 등으로 구현될 수 있다. 통신부(150)는 외부 장치로부터 컨텍스트를 판단하기 위한 다양한 데이터를 수신할 수 있다. 통신부(150)는 키워드 획득 및 컨텍스트 정보 획득을 위한 데이터 인식 모델 등을 외부 장치로부터 수신할 수도 있다.
이를 위해, 통신부(150)는 근거리 무선 통신 모듈(미도시), 무선 통신 모듈(미도시) 등과 같은 다양한 통신 모듈을 포함할 수 있다. 여기에서, 근거리 무선 통신 모듈이란 블루투스(Bluetooth), 지그비(Zigbee) 등과 같은 근거리 무선 통신 방식에 따라, 근거리에 위치한 외부 기기와 통신을 수행하기 위한 모듈이다. 또한, 무선 통신 모듈이란 WiFi, WiFi direct, IEEE 등과 같은 무선 통신 프로토콜에 따라 외부 네트워크에 연결되어 통신을 수행하는 모듈이다. 이 밖에 무선 통신 모듈은 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution), LTE-A(LTE Advanced) 등과 같은 다양한 이동 통신 규격에 따라 이동 통신망에 접속하여 통신을 수행하는 이동 통신 모듈을 더 포함할 수도 있다.
메모리(160)는 전자 장치(100)를 구동하기 위한 다양한 모듈, 소프트웨어, 데이터를 저장할 수 있다. 예를 들어, 메모리(160)에는 컨텐츠의 키워드 획득을 위한 데이터 인식 모델 및 키워드에 매칭되는 컨텍스트 정보를 획득하기 위한 데이터 인식 모델을 저장될 수 있다. 그리고 메모리(160)에는 자연언어생성(Natural Language Generation, NLG)를 위한 모델이 저장될 수 있다.
메모리(160)에는 디스플레이(120)에 표시될 각종 화면을 구성하기 위한 프로그램 및 데이터가 저장될 수 있다. 또한, 메모리(160)에는 특정 서비스를 수행하기 위한 프로그램, 어플리케이션 및 데이터가 저장될 수 있다.
메모리(160)는 전자 장치(100)를 동작시키기 위해 필요한 각종 프로그램 등이 저장되는 저장매체로서, 플래쉬 메모리, HDD(Hard Disk Drive), SSD (Solid State Drive) 등의 형태로 구현 가능하다. 예를 들어, 메모리(160)는 전자 장치(100)의 동작 수행을 위한 프로그램을 저장하기 위한 ROM, 전자 장치(100)의 동작 수행에 따른 데이터를 일시적으로 저장하기 위한 RAM을 구비할 수 있다.
한편, 메모리(160)는 컨텐츠에 대응되는 컨텍스트 정보를 획득하여 저장하고, 저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지하여 컨텐츠를 제공하기 위한 복수의 모듈을 저장할 수 있다. 구체적으로, 메모리(160)는 도 3에 도시된 바와 같이, 컨텐츠 획득 모듈(310), 키워드 획득 모듈(320), 컨텍스트 정보 획득 모듈(330), 데이터베이스(340), 컨텍스트 감지 모듈(350), 컨텐츠 제공 모듈(360)을 포함할 수 있다.
컨텐츠 획득 모듈(310)은 서버, 외부 장치로부터 수신된 컨텐츠 또는 기 저장된 컨텐츠를 획득할 수 있다. 이때, 획득되는 컨텐츠는 웹 페이지 컨텐츠일 수 있으나, 이는 일 실시예에 불과할 뿐, 동영상 컨텐츠, 사진 컨텐츠, 오디오 컨텐츠 등 다양한 형태의 컨텐츠일 수 있다.
키워드 획득 모듈(320)은 컨텐츠에 대한 키워드를 획득할 수 있다. 이때, 키워드 획득 모듈(320)은 기학습된 데이터 인식 모델을 이용하여 컨텐츠를 분석한 후 컨텐츠의 키워드를 획득할 수 있다. 또는, 키워드 획득 모듈(320)은 컨텐츠에 포함된 텍스트의 의미 분석을 통해 키워드를 획득할 수 있다.
컨텍스트 정보 획득 모듈(330)은 감지된 키워드에 대응되는 컨텍스트 정보를 획득할 수 있다. 이때, 컨텍스트 정보 획득 모듈(330)은 기 저장된 키워드-컨텍스트 정보 매칭 테이블을 이용하여 감지된 키워드에 대응되는 컨텍스트 정보를 획득할 수 있으며, 기학습된 데이터 인식 모델을 이용하여 감지된 키워드에 대응되는 컨텍스트 정보를 획득할 수 있다.
한편, 키워드 획득 모듈(320)및 컨텍스트 정보 획득 모듈(330)이 이용하는 데이터 인식 모델은 추후에 도 9 내지 10b를 참조하여 더욱 상세히 설명하기로 한다. 또한, 본 발명의 다른 실시예에 따르면, 하나의 데이터 인식 모델을 이용하여 컨텐츠에 대응되는 컨텍스트 정보를 획득할 수 있다.
데이터베이스(340)는 컨텐츠에 대한 정보와 컨텍스트에 대한 정보를 매칭하여 저장할 수 있다. 특히, 데이터베이스(340)는 컨텐츠에 대한 주소 정보에 컨텍스트 정보를 태깅하여 저장할 수 있다.
컨텍스트 감지 모듈(350)은 센싱부(170)로부터 획득된 센싱 데이터, 외부 장치로부터 전송되는 데이터 또는 기저장된 스케줄 데이터를 이용하여 사용자의 컨텍스트를 감지할 수 있다. 그리고, 컨텍스트 감지 모듈(350)은 감지된 컨텍스트와 기저장된 컨텍스트 정보의 매칭 여부를 판단하여 기저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지할 수 있다.
컨텐츠 제공 모듈(360)은 감지된 컨텍스트에 대응되는 컨텐츠를 제공할 수 있다. 특히, 컨텐츠 제공 모듈(360)은 컨텐츠를 제공하기 전에 컨텍스트의 감지에 대해 안내하는 메시지를 먼저 제공하고, 메시지를 통해 사용자 명령이 입력된 경우 컨텐츠를 제공할 수 있다.
다시 도 2에 대해 설명하면, 센싱부(170)는 다양한 센서를 통해 컨텍스트를 감지하기 위한 센싱 데이터를 획득할 수 있다. 특히, 센싱부(170)는 GPS 센서로부터 사용자의 위치에 대한 데이터를 획득할 수 있으며, 모션 센서(예를 들어, 가속도 센서, 자이로 센서 등)로부터 사용자의 움직임에 대한 데이터를 획득할 수 있다.
그 밖에, 센싱부(170)는 전자 장치(100)의 주변 상황을 감지하기 위한 다양한 센서(예를 들어, 온도 센서, 조도 센서, 습도 센서 등)를 포함할 수 있다.
프로세서(130)는 전자 장치(100)의 상술한 구성들을 제어할 수 있다. 예를 들어, 프로세서(130)는 메모리(160)에 저장된 복수의 소프트웨어 모듈을 이용하여 컨텐츠에 대응되는 컨텍스트 정보를 획득하며, 획득된 컨텐츠에 대한 정보와 컨텍스트 정보를 매칭하여 저장하고, 저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지하며, 감지된 컨텍스트에 대응되는 컨텐츠를 제공할 수 있다.
한편, 프로세서(130)는 단일 CPU로 구현되어 키워드 획득 동작, 컨텍스트 정보 획득 동작, 컨텍스트 감지 동작 등을 수행할 수도 있고, 복수의 프로세서 및 특정 기능을 수행하는 IP로 구현될 수도 있다. 프로세서(130)는 딥 신경망(Deep Neural Network, DNN)과 같은 딥러닝 기반으로 키워드를 획득할 수도 있다.
또한, 프로세서(130)는 키워드 획득 및 컨텍스트 정보 획득에 빅데이터 및 사용자별 히스토리 데이터를 이용할 수 있다. 이를 통해, 프로세서(130)는 빅데이터로 학습된 키워드 및 컨텍스트 정보를 획득하기 위한 데이터 인식 모델을 사용함과 동시에 데이터 인식 모델을 개인화시킬 수 있다.
이하에서는 도 4a 내지 도 6b를 참조하여 본 발명에 대해 상세히 설명하기로 한다.
본 발명의 일 실시예로, 컨텐츠 획득 모듈(310)은 컨텐츠를 획득하여 디스플레이(120)를 통해 획득된 컨텐츠를 제공할 수 있다. 예를 들어, 컨텐츠 획득 모듈(310)은 도 4a에 도시된 바와 같이, "판교 대박 맛집 xxx 오리구이"라는 웹 페이지 컨텐츠를 획득하여 디스플레이(120)를 통해 제공할 수 있다.
컨텐츠를 제공하는 동안 기설정된 사용자 명령(예를 들어, 스크랩 명령, 저장 명령, 공유 명령 등)이 감지되면, 키워드 획득 모듈(320)은 획득된 컨텐츠에 대한 키워드를 획득할 수 있다. 구체적으로, 키워드 획득 모듈(320)은 기학습된 데이터 인식 모델을 통해 획득된 컨텐츠에 대한 키워드를 획득할 수 있다. 이때, 데이터 인식 모델은 문서(document)에 포함된 텍스트, 이미지로부터 키워드를 추출하기 위한 학습 모델일 수 있다. 또는, 키워드 획득 모듈(320)은 컨텐츠에 포함된 텍스트에 대한 의미분석을 통해 컨텐츠에 대한 키워드를 획득할 수 있다. 예를 들어, 키워드 획득 모듈(320)은 기학습된 데이터 인식 모델 또는 의미 분석을 통해 "판교 대박 맛집 xxx 오리구이"라는 웹 페이지 컨텐츠로부터 "판교","오리고기","맛집","식사" 등과 같은 키워드를 추출할 수 있다.
컨텍스트 정보 획득 모듈(330)은 획득된 키워드에 대응되는 컨텍스트 정보를 획득할 수 있다. 이때, 컨텍스트 정보 획득 모듈(330)은 기학습된 데이터 인식 모델 또는 기 저장된 키워드-컨텍스트 정보 매칭 테이블을 통해 획득된 키워드에 대응되는 컨텍스트 정보를 획득할 수 있다.
예를 들어, 컨텍스트 정보 획득 모듈(330)은 "판교", "오리고기", "맛집", "식사" 등과 같은 키워드에 대응되는 컨텍스트 정보로 "판교 방문", "판교 식사", "오리 고기 식사", "맛집 검색" 등을 획득할 수 있다.
그리고, 데이터베이스(340)는 컨텐츠에 대한 정보와 컨텍스트 정보 획득 모듈(330)에 의해 획득된 컨텍스트 정보를 매칭하여 저장할 수 있다. 특히, 데이터베이스(340)는 아래와 같이, 컨텐츠에 대한 정보(예를 들어, 주소 정보)와 컨텍스트 매칭 정보를 저장할 수 있다.
컨텐츠에 대한 정보 컨텍스트 정보
http//: www.matzip.com/origogi "판교 방문", "판교 식사", "오리 고기 식사", "맛집 검색"
데이터베이스(340)에 컨텐츠에 대한 정보와 컨텍스트 정보가 매칭되어 저장된 후, 컨텍스트 감지 모듈(350)은 저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지할 수 있다.
이때, 컨텍스트 감지 모듈(350)은 센싱부(170)로부터 획득된 센싱 데이터로부터 컨텍스트를 감지할 수 있다. 예를 들어, GPS 센서로부터 감지된 센싱 데이터로부터 전자 장치(100)의 위치 정보가 "판교"인 것으로 판단된 경우, 컨텍스트 감지 모듈(350)은 현재 컨텍스트가 "판교 방문"인 것을 감지할 수 있다.
또한, 컨텍스트 감지 모듈(350)은 외부 장치로부터 획득된 데이터로부터 컨텍스트를 감지할 수 있다. 예를 들어, 지하철 역에 설치된 AP로부터 획득된 데이터를 이용하여 전자 장치(100)의 위치 정보가 "판교"인 것으로 판단된 경우, 컨텍스트 감지 모듈(350)은 현재 컨텍스트가 "판교 방문"인 것을 감지할 수 있다.
또한, 컨텍스트 감지 모듈(350)은 사용자에 의해 입력된 스케줄 정보로부터 컨텍스트를 감지할 수 있다. 예를 들어, "2017년 1월 XX일에 판교에서 A와 식사 약속"라는 스케줄 정보가 입력된 경우, 컨텍스트 감지 모듈(350)은 "판교 식사"라는 컨텍스트를 감지할 수 있다.
또 다른 예로, 사용자가 웹 페이지의 검색창에 "맛집"이라는 텍스트를 입력하여 검색하는 경우, 컨텍스트 감지 모듈(350)은 "맛집 검색"이라는 컨텍스트를 감지할 수 있다.
컨텐츠 제공 모듈(360)은 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다. 예를 들어, 컨텍스트 감지 모듈(350)에 의해 "판교 방문","판교 식사", "맛집 검색"과 같은 컨텍스트가 감지된 경우, 컨텐츠 제공 모듈(360)은 감지된 컨텍스트에 대응되는 "판교 대박 맛집 xxx 오리구이"라는 웹 페이지 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다.
이때, 컨텐츠 제공 모듈(360)은 "판교 대박 맛집 xxx 오리구이"라는 웹 페이지 컨텐츠를 제공하기 전에 도 4b에 도시된 바와 같이, 컨텐츠 제공 여부를 문의하는 메시지(410)를 제공하도록 디스플레이(120)를 제어할 수 있다. 이때, 메시지(410)에는 감지된 컨텍스트에 대응되는 컨텐츠에 대한 정보 및 컨텐츠 제공 여부를 확인하기 위한 아이콘을 포함할 수 있다. 메시지를 통해 컨텐츠 제공을 위한 사용자 명령이 입력되면, 컨텐츠 제공 모듈(360)은 도 4a에 도시된 바와 같이, 감지된 컨텍스트에 대응되는 웹 페이지 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다.
본 발명의 다른 실시예로, 컨텐츠 획득 모듈(310)은 도 5a에 도시된 바와 같이, "불면증에 도움되는 영상"이라는 동영상 컨텐츠를 획득하여 디스플레이(120)를 통해 제공할 수 있다.
"불면증에 도움되는 영상"이라는 동영상 컨텐츠를 제공하는 동안 컨텐츠를 스크랩하기 위한 사용자 명령이 감지되면, 키워드 획득 모듈(320)은 획득된 동영상 컨텐츠에 대한 키워드를 획득할 수 있다. 예를 들어, 키워드 획득 모듈(320)은 기학습된 데이터 인식 모델 또는 이미지 분석을 통해 "불면증에 도움되는 영상"이라는 동영상 컨텐츠로부터 "불면증","수면유도","동영상" 등과 같은 키워드를 추출할 수 있다.
컨텍스트 정보 획득 모듈(330)은 기학습된 데이터 인식 모델 또는 기 저장된 키워드-컨텍스트 정보 매칭 테이블을 이용하여 "불면증","수면유도","동영상" 등과 같은 키워드에 대응되는 컨텍스트 정보로 "불면 상태" 등를 획득할 수 있다.
그리고, 데이터베이스(340)는 아래와 같이, 컨텐츠에 대한 정보(예를 들어, 주소 정보)와 컨텍스트 매칭 정보를 저장할 수 있다.
컨텐츠에 대한 정보 컨텍스트 정보
http//: www.dongyoungsang.com/dontsleep "불면 상태"
데이터베이스(340)에 컨텐츠에 대한 정보와 컨텍스트 정보가 매칭되어 저장된 후, 컨텍스트 감지 모듈(350)은 저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지할 수 있다.
이때, 기설정된 시간(예를 들어, AM 2:00) 이후에 사용자가 전자 장치(100)를 계속 사용하는 것으로 확인된 경우, 컨텍스트 감지 모듈(350)은 현재 컨텍스트로서 "불면 상태"를 감지할 수 있다.
또는, 움직임 센서(100)를 통해 사용자가 기설정된 시간 이후에 계속해서 움직이는 것으로 판단된 경우, 컨텍스트 감지 모듈(350)은 현재 컨텍스트로서 "불면 상태"를 감지할 수 있다.
컨텐츠 제공 모듈(360)은 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다. 예를 들어, 컨텍스트 감지 모듈(350)에 의해 "불면 상태"와 같은 컨텍스트가 감지된 경우, 컨텐츠 제공 모듈(360)은 감지된 컨텍스트에 대응되는 "불면증에 도움되는 영상"이라는 동영상 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다.
이때, 컨텐츠 제공 모듈(360)은 "불면증에 도움되는 영상"이라는 동영상 컨텐츠를 제공하기 전에 도 5b에 도시된 바와 같이, 컨텐츠 제공 여부를 문의하는 메시지(510)를 제공하도록 디스플레이(120)를 제어할 수 있다. 이때, 메시지(510)에는 감지된 컨텍스트에 대한 정보(예를 들어, "잠이 안오나요"), 감지된 컨텍스트에 대응되는 컨텐츠에 대한 정보(예를 들어, "불명증에 도움이 되는 영상") 및 컨텐츠 제공 여부를 확인하기 위한 아이콘(예를 들어, Yes에 대한 아이콘 및 No에 대한 아이콘)을 포함할 수 있다. 메시지를 통해 컨텐츠 제공을 위한 사용자 명령이 입력되면, 컨텐츠 제공 모듈(360)은 도 5a에 도시된 바와 같이, 감지된 컨텍스트에 대응되는 동영상 컨텐츠를 다시 제공하도록 디스플레이(120)를 제어할 수 있다.
본 발명의 다른 실시예로, 컨텐츠 획득 모듈(310)은 도 6a에 도시된 바와 같이, "토마토 케찹을 이용하여 녹을 제거하는 방법"이라는 웹 페이지 컨텐츠를 획득하여 디스플레이(120)를 통해 제공할 수 있다.
"토마토 케찹을 이용하여 녹을 제거하는 방법"이라는 웹 페이지 컨텐츠를 제공하는 동안 컨텐츠를 스크랩하기 위한 사용자 명령이 감지되면, 키워드 획득 모듈(320)은 획득된 동영상 컨텐츠에 대한 키워드를 획득할 수 있다. 예를 들어, 키워드 획득 모듈(320)은 기학습된 데이터 인식 모델 또는 이미지 분석을 통해 "토마토 케찹을 이용하여 녹을 제거하는 방법"이라는 웹 페이지 컨텐츠로부터 "토마토 케찹", "녹 제거" 등과 같은 키워드를 추출할 수 있다.
컨텍스트 정보 획득 모듈(330)은 기학습된 데이터 인식 모델 또는 기 저장된 키워드-컨텍스트 정보 매칭 테이블을 이용하여 "토마토 케찹", "녹 제거" 등과 같은 키워드에 대응되는 컨텍스트 정보로 "토마토 케찹 구매", "마트 방문", "녹 제거","쇼핑 사이트 접속" 등를 획득할 수 있다.
그리고, 데이터베이스(340)는 아래와 같이, 컨텐츠에 대한 정보(예를 들어, 주소 정보)와 컨텍스트 매칭 정보를 저장할 수 있다.
컨텐츠에 대한 정보 컨텍스트 정보
http//: www.tiptip.kr/tomato-nok "토마토 케찹 구매", "마트 방문", "녹 제거"
데이터베이스(340)에 컨텐츠에 대한 정보와 컨텍스트 정보가 매칭되어 저장된 후, 컨텍스트 감지 모듈(350)은 저장된 컨텍스트 정보에 대응되는 컨텍스트를 감지할 수 있다.
이때, 컨텍스트 감지 모듈(350)은 센싱부(170)로부터 획득된 센싱 데이터로부터 컨텍스트를 감지할 수 있다. 예를 들어, GPS 센서로부터 감지된 센싱 데이터로부터 전자 장치(100)의 위치 정보가 "마트"인 것으로 판단된 경우, 컨텍스트 감지 모듈(350)은 현재 컨텍스트가 "마트 방문"인 것을 감지할 수 있다.
또한, 컨텍스트 감지 모듈(350)은 외부 장치로부터 획득된 데이터로부터 컨텍스트를 감지할 수 있다. 예를 들어, 마트에 설치된 AP로부터 획득된 데이터를 이용하여 전자 장치(100)의 위치 정보가 "마트"인 것으로 판단된 경우, 컨텍스트 감지 모듈(350)은 현재 컨텍스트가 "마트 방문"인 것을 감지할 수 있다.
또한, 컨텍스트 감지 모듈(350)은 사용자에 의해 입력된 스케줄 정보로부터 컨텍스트를 감지할 수 있다. 예를 들어, "2017년 1월 XX일에 마트 방문"이라는 스케줄 정보가 입력된 경우, 컨텍스트 감지 모듈(350)은 "마트 방문"라는 컨텍스트를 감지할 수 있다.
또 다른 예로, 사용자가 식료품 쇼핑 사이트에 접속한 경우, 컨텍스트 감지 모듈(350)은 "쇼핑 사이트 접속"이라는 컨텍스트를 감지할 수 있다.
또 다른 예로, 메모리(160)는 과거에 감지된 컨텍스트에 대한 정보를 저장할 수 있다. 예를 들어, 메모리(160)는 "마트 방문"을 위한 경로 정보를 기 저장할 수 있다. 그리고, 컨텍스트 감지 모듈(350)은 과거에 감지된 컨텍스트에 대한 정보를 바탕으로 현재 컨텍스트를 판단할 수 있다. 예를 들어, 현재 전자 장치(100)가 이동 경로가 마트를 방문하기 위한 경로와 일치하는 경우, 컨텍스트 감지 모듈(350)은 현재 컨텍스트로서 "마트 방문"을 감지할 수 있다.
컨텐츠 제공 모듈(360)은 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다. 예를 들어, 컨텍스트 감지 모듈(350)에 의해 "마트 방문", "쇼핑 사이트 접속" 등과 같은 컨텍스트가 감지된 경우, 컨텐츠 제공 모듈(360)은 감지된 컨텍스트에 대응되는 "토마토 케찹을 이용하여 녹을 제거하는 방법"이라는 웹 페이지 컨텐츠를 제공하도록 디스플레이(120)를 제어할 수 있다.
이때, 컨텐츠 제공 모듈(360)은 "토마토 케찹을 이용하여 녹을 제거하는 방법"이라는 웹 페이지 컨텐츠를 제공하기 전에 도 6b에 도시된 바와 같이, 컨텐츠 제공 여부를 문의하는 메시지(610)를 제공하도록 디스플레이(120)를 제어할 수 있다. 이때, 메시지(610)에는 감지된 컨텍스트에 대한 정보(예를 들어, 식품 매장을 방문하였습니다.), 감지된 컨텍스트에 대응되는 컨텐츠에 대한 정보(예를 들어, 토마토 케찹을 이용하여 ...) 및 컨텐츠 제공 여부를 확인하기 위한 아이콘(예를 들어, Yes에 대한 아이콘 및 No에 대한 아이콘)을 포함할 수 있다. 메시지를 통해 컨텐츠 제공을 위한 사용자 명령이 입력되면, 컨텐츠 제공 모듈(360)은 도 6a에 도시된 바와 같이, 감지된 컨텍스트에 대응되는 동영상 컨텐츠를 다시 제공하도록 디스플레이(120)를 제어할 수 있다.
도 7은 본 개시의 일 실시예에 따른, 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
우선, 전자 장치(100)는 컨텐츠에 대한 기설정된 명령을 입력받는다(S710). 이 때, 기설정된 명령은 스크랩 명령, 저장 명령, 공유 명령 중 하나일 수 있으나, 이에 한정되는 것은 아니다.
그리고, 전자 장치(100)는 컨텐츠를 분석하여 컨텐츠의 컨텍스트 정보를 획득한다(S720). 이때, 전자 장치(100)는 학습된 데이터 인식 모델을 이용하여 컨텐츠의 키워드를 획득하고, 키워드에 대응되는 컨텍스트 정보를 획득할 수 있다.
그리고, 전자 장치(100)는 컨텐츠에 대한 정보와 함께 컨텍스트 정보를 저장한다(S730).
그리고, 전자 장치(100)는 컨텍스트에 대응되는 컨텍스트를 감지한다(S740). 이때, 전자 장치(100)는 센싱부(170)로부터 획득된 센싱 데이터, 외부 장치로부터 수신된 데이터, 스케줄 데이터 등을 바탕으로 컨텍스트를 감지할 수 있다.
그리고, 전자 장치(100)는 컨텍스트에 대응되는 컨텐츠를 제공한다(S750). 이때, 전자 장치(100)는 바로 컨텐츠를 제공하지 않고, 컨텐츠의 제공 여부를 문의하는 메시지를 먼저 표시한 후 컨텐츠를 제공할 수 있다.
상술한 바와 같은 본 개시의 실시예에 의해, 전자 장치(100)가 감지된 컨텍스트에 대응되는 기저장된 컨텐츠를 제공함으로써, 사용자는 별도의 조작없이 자신이 스크랩 또는 저장한 컨텐츠를 필요한 상황에 확인할 수 있게 된다.
도 8은 본 개시의 다른 실시예에 따른, 전자 장치(100)와 컨텍스트 정보를 생성하기 위한 서버(200)를 포함하는 시스템을 도시한 도면이다. 도 8을 참조하면, 지능형 비서 시스템(1000)은 전자 장치(100) 및 서버(200)를 포함할 수 있다.
컨텐츠에 대한 기설정된 사용자 명령을 입력된 경우, 전자 장치(100)는 기설정된 사용자 명령을 외부의 서버(200)에 전송한다. 서버(200)는 수신된 사용자 명령에 응답하여 학습된 데이터 인식 모델을 바탕으로 컨텐츠의 컨텍스트 정보를 획득할 수 있다.
그리고, 서버(200)는 획득된 컨텍스트 정보를 외부의 전자 장치(100)로 전송하며, 전자 장치(100)는 컨텐츠에 대한 정보와 서버(200)로부터 전송된 컨텍스트 정보를 함께 저장할 수 있다.
이와 같이, 전자 장치(100)와 서버(200)가 연동하여 컨텐츠에 대한 정보와 컨텍스트 정보를 매칭하여 저장할 수 있다.
즉, 전자 장치(100)는 컨텍스트를 감지하여 컨텐츠를 제공하는 역할을 수행하고, 서버(200)가 컨텐츠의 컨텍스트 정보를 획득하는 형태로 구현될 수도 있다. 특히, 도 8에 도시된 것과 같이 전자 장치(100)가 스마트 워치와 같은 소형 웨어러블 장치로 구현되어 가용 리소스가 한정되는 경우에, 컨텐츠의 컨텍스트 정보를 획득하는 과정은 리소스가 풍부한 서버(200)에서 수행할 수 있다.
도 9는 본 개시의 일 실시예에 따른, 컨텍스트를 감지하여 컨텐츠를 제공하는 시스템의 제어 방법을 설명하기 위한 시퀀스도이다.
우선, 전자 장치(100)는 컨텐츠를 제공한다(S910). 이때, 컨텐츠는 웹 페이지 컨텐츠 또는 동영상 컨텐츠일 수 있으나, 이에 한정되는 것은 아니다.
전자 장치(100)는 컨텐츠에 대한 스크랩 명령을 입력받는다(S920). 이때, 전자 장치(100)는 스크랩 명령 이외에 저장 명령, 공유 명령 등을 입력받을 수 있다.
전자 장치(100)는 컨텐츠에 대한 정보를 외부 서버(200)에 전송한다(S930). 이때, 컨텐츠에 대한 정보는 컨텐츠의 주소 정보일 수 있으나, 이에 한정되는 것은 아니다.
서버(200)는 컨텐츠에 대한 정보를 바탕으로 컨텐츠의 컨텍스트 정보를 획득한다(S940). 이때, 서버(200)는 컨텐츠에 대한 정보를 바탕으로 컨텐츠의 키워드를 추출하고, 추출된 키워드에 대응되는 컨텍스트 정보를 획득할 수 있다. 특히, 서버(200)는 기학습된 데이터 인식 모델을 바탕으로 키워드 추출 및 컨텍스트 정보 획득을 수행할 수 있다.
서버(200)는 획득된 컨텍스트 정보를 전자 장치(100)에 전송한다(S950).
전자 장치(100)는 컨텐츠 정보와 컨텍스트 정보를 함께 저장한다(S960). 이때, 전자 장치(100)는 컨텐츠의 주소 정보와 컨텍스트 정보를 매칭하여 저장할 수 있다.
전자 장치(100)는 컨텍스트를 감지한다(S970). 이때, 전자 장치(100)는 센싱부(170)를 통해 획득된 센싱 데이터, 외부 장치로부터 수신된 데이터, 스케줄 정보를 포함하는 데이터 등을 바탕으로 컨텍스트를 감지할 수 있다.
전자 장치(100)는 컨텍스트에 대응되는 컨텐츠를 제공한다(S980). 이때, 전자 장치(100)는 컨텍스트에 대응되는 컨텐츠를 안내하는 메시지를 먼저 제공한 후, 메시지를 통해 사용자 명령이 입력되면, 컨텍스트에 대응되는 컨텐츠를 제공할 수 있다.
한편, 상술한 실시예에서는 컨텐츠 정보와 컨텍스트 정보를 전자 장치(100)가 저장하는 것으로 설명하였으나, 외부의 서버(200)가 컨텐츠 정보와 컨텍스트 정보를 매칭하여 저장할 수 있다. 이 경우, 전자 장치(100)는 감지된 컨텍스트를 외부의 서버(200)로 전송하고, 서버(200)가 감지된 컨텍스트와 대응되는 컨텐츠 정보가 있는지 여부를 판단하고, 판단 결과를 바탕으로 컨텍스트에 대응되는 컨텐츠 정보를 외부의 전자 장치(100)로 전송할 수 있다.
도 10은 본 개시의 일부 실시 예에 따른 프로세서(130)의 블록도이다. 도 10을 참조하면, 일부 실시 예에 따른 프로세서(130)는 데이터 학습부(131) 및 데이터 인식부(132)를 포함할 수 있다.
데이터 학습부(131)는 데이터 인식 모델이 키워드 또는 컨텍스트 등을 획득하기 위한 기준을 갖도록 학습될 수 있다. 데이터 학습부(131)는 키워드 또는 컨텍스트 등을 판단하기 위하여 학습 데이터를 데이터 인식 모델에 적용하여, 판단 기준을 갖는 데이터 인식 모델을 생성할 수 있다.
프로세서(130)는 학습된 기준에 따라 입력된 컨텐츠를 분석하여 컨텐츠에 대응되는 키워드 또는 컨텍스트를 획득할 수 있다. 데이터 학습부(131)는 키워드 또는 컨텍스트를 결정하기 위하여 어떠한 데이터를 이용할 것인지 결정할 수 있다. 또한, 데이터 학습부(131)는 학습에 이용될 데이터를 획득하고, 획득된 데이터를 후술할 데이터 인식 모델(예를 들어, 키워드 획득 모델, 컨텍스트 획득 모델 등)에 적용함으로써 키워드 획득 또는 컨텍스트 획득을 위한 기준을 학습할 수 있다.
데이터 인식부(132)는 기학습된 데이터 인식 모델을 이용하여, 소정의 데이터로부터 컨텐츠에 대응되는 키워드 정보 또는 컨텍스트 정보를 판단할 수 있다. 데이터 인식부(132)는 학습에 의한 기 설정된 기준에 따라 소정의 데이터(예를 들어, 컨텐츠에 포함된 텍스트 데이터)를 획득하고, 획득된 데이터를 입력값으로 하여 데이터 인식 모델을 이용할 수 있다. 또한, 데이터 인식부(132)는 입력된 데이터를 데이터 인식 모델에 적용하여 키워드 또는 컨텍스트를 획득할 수 있다. 그리고, 데이터 인식부(132)는 입력값 및 출력값에 대한 사용자 피드백을 바탕으로 데이터 인식 모델을 업데이트할 수 있다.데이터 학습부(131) 및 데이터 인식부(132) 중 적어도 하나는, 하나 또는 복수의 하드웨어 칩 형태로 제작되어 전자 장치(100)에 탑재될 수 있다. 예를 들어, 데이터 학습부(131) 및 데이터 인식부(132) 중 적어도 하나는 인공 지능(Artifical Intelligence, AI)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 기존의 범용 프로세서(예를 들어, CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 전자 장치에 탑재될 수도 있다. 이 때, 인공 지능을 위한 전용 하드웨어 칩은 확률 연산에 특화된 전용 프로세서로서, 기존의 범용 프로세서보다 병렬처리 성능이 높아 기계 학습과 같은 인공 지능 분야의 연산 작업을 빠르게 처리할 수 있다. 도 10의 실시 예에서는 데이터 학습부(131) 및 데이터 인식부(132)가 모두 전자 장치(100)에 탑재된 경우를 도시하였으나, 이들은 각각 별개의 장치에 탑재될 수도 있다. 예를 들어, 데이터 학습부(131) 및 데이터 인식부(132) 중 하나는 전자 장치(100)에 포함되고, 나머지 하나는 사용자 단말(200)에 포함될 수 있다. 또한 데이터 학습부(131) 및 데이터 인식부(132)는 서로 유선 또는 무선으로 연결되어, 데이터 학습부(131)가 구축한 데이터 인식 모델에 대한 정보가 데이터 인식부(132)로 제공될 수 있고, 데이터 인식부(132)로 입력된 데이터가 추가 학습 데이터로 데이터 학습부(131)로 제공될 수도 있다.
한편, 데이터 학습부(131) 및 데이터 인식부(132) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 학습부(131) 및 데이터 인식부(132) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션을 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 비일시적 컴퓨터 판독가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는 적어도 하나의 소프트웨어 모듈 중 일부는 OS에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수도 있다.
도 11a는 본 개시의 일부 실시 예에 따른 데이터 학습부(131)의 블록도이다. 도 11a를 참조하면, 일부 실시 예에 따른 데이터 학습부(131)는 데이터 획득부(131-1), 전처리부(131-2), 학습 데이터 선택부(131-3), 모델 학습부(131-4) 및 모델 평가부(131-5) 중 적어도 하나를 선택적으로 더 포함할 수도 있다. 데이터 획득부(131-1)는 키워드 또는 컨텍스트를 획득하기 위해 필요한 학습 데이터를 획득할 수 있다. 특히, 데이터 획득부(131-1)는 컨텐츠의 키워드 또는 컨텍스트를 획득하기 위한 데이터를 학습 데이터로 획득할 수 있다.
예를 들어, 데이터 획득부(131-1)는 외부 서버, 외부 장치 또는 저장 매체로부터 텍스트 데이터 또는 영상 데이터를 포함하는 컨텐츠를 입력받을 수 있다.
전처리부(131-2)는 키워드 획득 또는 컨텍스트 획득을 위한 학습에 획득된 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(131-2)는 후술할 모델 학습부(131-4)가 키워드 획득 또는 컨텍스트 획득을 위한 학습을 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기설정된 포맷으로 가공할 수 있다.
예를 들어, 학습 데이터가 텍스트 데이터인 경우, 전처리부(131-2)는 텍스트 데이터에 대해 문장 분할, 품사 태깅, 토큰화, 불용어 제거, 어간 추출과 같은 전처리를 수행할 수 있다. 또 다른 예로, 학습 데이터가 영상 데이터인 경우, 전처리부(131-2)는 영상 데이터에 대해 디코딩, 스케일링, 노이즈 필터링, 해상도 변환 등을 수행하여 동일한 포맷의 이미지 프레임을 만들 수 있다. 그리고, 전처리부(131-2)는 입력된 복수의 이미지 프레임들 각각에 포함된 특정 영역만을 크롭할 수도 있다.
학습 데이터 선택부(131-3)는 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 모델 학습부(131-4)에 제공될 수 있다. 학습 데이터 선택부(131-3)는 키워드 획득 또는 컨텍스트 획득을 위한 기설정된 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 또한, 학습 데이터 선택부(131-3)는 후술할 모델 학습부(131-4)에 의한 학습에 의해 기설정된 기준에 따라 데이터를 선택할 수도 있다. 예를 들어, 학습 데이터 선택부(131-1)는 입력된 텍스트 데이터로부터 명사 성분만을 선택할 수 있다.
모델 학습부(131-4)는 학습 데이터를 이용하여 데이터 인식 모델이 키워드 또는 컨텍스트를 어떻게 획득할지에 관한 기준을 학습할 수 있다.
예로, 모델 학습부(131-4)는 학습 데이터 중 적어도 일부를 판단 기준으로 이용하는 지도 학습(supervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또는, 모델 학습부(131-4)는, 예를 들어, 별다른 지도 없이 학습 데이터를 이용하여 스스로 학습함으로써, 상황의 판단을 위한 판단 기준을 발견하는 비지도 학습(unsupervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.
또한, 모델 학습부(131-4)는 키워드 또는 컨텍스트 획득을 위하여 어떤 학습 데이터를 이용해야 하는지에 대한 기준을 학습할 수도 있다. 학습 데이터는 데이터 학습부(130) 또는 전자 장치(100)의 제조사에 의해 수집 또는 테스트한 데이터가 이용될 수도 있다.모델 학습부(131-4)는 키워드 또는 컨텍스트 획득에 이용되는 데이터 인식 모델을 학습 데이터를 이용하여 학습시킬 수 있다. 이 경우, 데이터 인식 모델은 미리 구축된 모델일 수 있다. 예를 들어, 데이터 인식 모델은 기본 학습 데이터을 입력받아 미리 구축된 모델일 수 있다. 다른 예로, 데이터 인식 모델은 빅데이터를 이용하여 미리 구축된 모델일 수 있다. 데이터 인식 모델은, 인식 모델의 적용 분야, 학습의 목적 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다. 데이터 인식 모델은, 예를 들어, 신경망(Neural Network)을 기반으로 하는 모델일 수 있다.
데이터 인식 모델은 인간의 뇌 구조를 컴퓨터 상에서 모의하도록 설계될 수 있다. 데이터 인식 모델은 인간의 신경망의 뉴런(neuron)을 모의하는, 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고 받는 시냅틱(synaptic) 활동을 모의하도록 각각 연결 관계를 형성할 수 있다. 데이터 인식 모델은, 일 예로, 신경망 모델, 또는 신경망 모델에서 발전한 딥 러닝 모델을 포함할 수 있다. 딥 러닝 모델에서 복수의 네트워크 노드들은 서로 다른 깊이(또는, 레이어)에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고 받을 수 있다. 예컨대, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 데이터 인식 모델로서 사용될 수 있으나, 이에 한정되지 않는다.
다양한 실시 예에 따르면, 모델 학습부(131-4)는 미리 구축된 데이터 인식 모델이 복수 개가 존재하는 경우, 입력된 학습 데이터와 기본 학습 데이터의 관련성이 큰 데이터 인식 모델을 학습할 데이터 인식 모델로 결정할 수 있다. 이 경우, 기본 학습 데이터는 데이터의 타입별로 기분류되어 있을 수 있으며, 데이터 인식 모델은 데이터의 타입별로 미리 구축되어 있을 수 있다. 예를 들어, 기본 학습 데이터는 학습 데이터가 생성된 지역, 학습 데이터가 생성된 시간, 학습 데이터의 크기, 학습 데이터의 장르, 학습 데이터의 생성자, 학습 데이터 내의 오브젝트의 종류 등과 같은 다양한 기준으로 기 분류되어 있을 수 있다.
또한, 모델 학습부(131-4)는, 예를 들어, 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 데이터 인식 모델을 학습시킬 수 있다.
예를 들어, 모델 학습부(131-4)는 판단 기준을 학습을 위한 입력 값으로 하는 지도 학습(supervised learning) 을 통하여 데이터 인식 모델을 학습시킬 수 있다. 또는 모델 학습부(131-4)는 예를 들어 별도의 지도 없이 키워드 획득 또는 컨텍스트 획득을 위해 필요한 학습 데이터를 이용하여 스스로 학습함으로써 키워드 획득 또는 컨텍스트 획득을 위한 기준을 발견하는 비지도 학습(unsupervised learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다. 또 다른 예로, 모델 학습부(131-4)는 학습에 따른 대체 키워드 획득 또는 컨텍스트 획득의 결과가 올바른지에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여, 데이터 인식 모델을 학습시킬 수 있다.
또한, 데이터 인식 모델이 학습되면, 모델 학습부(131-4)는 학습된 데이터 인식 모델을 저장할 수 있다. 이 경우, 모델 학습부(131-4)는 학습된 데이터 인식 모델을 전자 장치(100)의 메모리(160)에 저장할 수 있다.
이 경우, 학습된 데이터 인식 모델이 저장되는 메모리(160)는 전자 장치(100)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 함께 저장할 수도 있다. 또한, 메모리(160)는 소프트웨어 및/또는 프로그램을 저장할 수도 있다. 예를 들어, 프로그램은 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API) 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다.
또는 모델 학습부(131-4)는 학습된 데이터 인식 모델을 전자 장치(100)와 유선 또는 무선 네트워크로 연결되는 서버의 메모리에 저장할 수도 있다.
데이터 학습부(130)는 데이터 인식 모델의 인식 결과를 향상시키거나, 데이터 인식 모델의 생성에 필요한 자원 또는 시간을 절약하기 위하여, 전처리부(131-2) 및 학습 데이터 선택부(131-3)를 더 포함할 수도 있다.
전처리부(131-2)는 상황 판단을 위한 학습에 이용하기 위하여 데이터 획득부(131-1)에서 획득된 데이터를 전처리할 수 있다.
예로, 전처리부(131-2)는 모델 학습부(131-4)가 데이터 인식 모델의 학습을 위한 데이터의 이용이 용이하도록, 획득된 데이터를 기 정의된 포맷으로 가공할 수 있다. 전처리된 데이터는 학습 데이터로서 모델 학습부(131-4)에게 제공될 수 있다.
또는, 학습 데이터 선택부(131-3)가 전처리된 데이터 중에서 학습에 필요한 학습 데이터를 선별적으로 선택할 수 있다. 선택된 학습 데이터는 모델 학습부(131-4)에 제공될 수 있다. 학습 데이터 선택부(131-3)는 기 설정된 선별 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 학습 데이터를 선별할 수 있다. 또한, 학습 데이터 선택부(131-3)는 모델 학습부(131-4)에 의한 학습에 의해 기 설정된 선별 기준에 따라 학습에 필요한 학습 데이터를 선별할 수도 있다.
데이터 학습부(130)는 데이터 인식 모델의 인식 결과를 향상시키기 위하여, 모델 평가부(131-5)를 더 포함할 수도 있다.모델 평가부(131-5)는 데이터 인식 모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 판단 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(131-4)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 데이터 인식 모델을 평가하기 위한 기설정된 데이터일 수 있다.
예를 들어, 모델 평가부(131-5)는 평가 데이터에 대한 학습된 데이터 인식 모델의 판단 결과 중에서, 판단 결과가 정확하지 않은 평가 데이터의 개수 또는 비율이 미리 설정된 임계치를 초과하는 경우 소정 기준을 만족하지 못한 것으로 평가할 수 있다. 예컨대, 소정 기준이 비율 2%로 정의되는 경우, 학습된 데이터 인식 모델이 총 1000개의 평가 데이터 중의 20개를 초과하는 평가 데이터에 대하여 잘못된 판단 결과를 출력하는 경우, 모델 평가부(131-5)는 학습된 데이터 인식 모델이 적합하지 않은 것으로 평가할 수 있다.
한편, 학습된 데이터 인식 모델이 복수 개가 존재하는 경우, 모델 평가부(131-5)는 각각의 학습된 데이터 인식 모델에 대하여 소정 기준을 만족하는지를 평가하고, 소정 기준을 만족하는 모델을 최종 데이터 인식 모델로서 결정할 수 있다. 이 경우, 소정 기준을 만족하는 모델이 복수 개인 경우, 모델 평가부(131-5)는 평가 점수가 높은 순으로 미리 설정된 어느 하나 또는 소정 개수의 모델을 최종 데이터 인식 모델로서 결정할 수 있다.
전술한 데이터 획득부(131-1), 전처리부(131-2), 학습 데이터 선택부(131-3), 모델 학습부(131-4) 및 모델 평가부(131-5) 중 적어도 하나는, 소프트웨어 모듈로 구현되거나 또는 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(131-1), 전처리부(131-2), 학습 데이터 선택부(131-3), 모델 학습부(131-4) 및 모델 평가부(131-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예를 들어, CPU 또는 application processor) 또는 특정 기능을 위한 IP의 일부로 제작되어 전술한 각종 전자 장치(100)에 탑재될 수도 있다.
또한, 데이터 획득부(131-1), 전처리부(131-2), 학습 데이터 선택부(131-3), 모델 학습부(131-4) 및 모델 평가부(131-5)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(131-1), 전처리부(131-2), 학습 데이터 선택부(131-3), 모델 학습부(131-4) 및 모델 평가부(131-5) 중 일부는 전자 장치(100)에 포함되고, 나머지 일부는 서버(200)에 포함될 수 있다.
한편, 데이터 획득부(131-1), 전처리부(131-2), 학습 데이터 선택부(131-3), 모델 학습부(131-4) 및 모델 평가부(131-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(131-1), 전처리부(131-2), 학습 데이터 선택부(131-3), 모델 학습부(131-4) 및 모델 평가부(131-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션을 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 비일시적 컴퓨터 판독가능 기록매체에 저장될 수 있다. 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는 적어도 하나의 소프트웨어 모듈 중 일부는 OS에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수도 있다.
도 11b는 본 개시의 일부 실시 예에 따른 데이터 인식부(132)의 블록도이다. 도 11b를 참조하면, 일부 실시예에 따른 데이터 인식부(132)는 데이터 획득부(132-1) 및 인식 결과 제공부(132-4)_를 포함할 수 있다. 또한 데이터 인식부(132)는 전처리부(132-2), 데이터 선택부(132-3) 및 모델 갱신부(132-5)중 적어도 하나를 선택적으로 더 포함할 수 있다.
데이터 획득부(132-1)는 키워드 획득 또는 컨텍스트 획득에 필요한 데이터를 획득할 수 있으며, 전처리부(132-2)는 키워드 획득 또는 컨텍스트 획득을 위해 제공된 데이터가 이용될 수 있도록, 제공된 데이터를 전처리할 수 있다. 전처리부(132-2)는 후술할 인식 결과 제공부(132-4)가 키워드 획득 또는 컨텍스트 획득을 위하여 획득된 데이터를 이용할 수 있도록, 획득된 데이터를 기설정된 포맷으로 가공할 수 있다.
데이터 선택부(132-3)는 전처리된 데이터 중에서 키워드 획득 또는 컨텍스트 획득에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 인식 결과 제공부(132-4)에게 제공될 수 있다. 데이터 선택부(132-3)는 키워드 획득 또는 컨텍스트 획득을 위한 기설정된 기준에 따라, 전처리된 데이터 중에서 일부 또는 전부를 선택할 수 있다. 또한, 데이터 선택부(132-3)는 후술할 모델 학습부(142-4)에 의한 학습에 의해 기설정된 기준에 따라 데이터를 선택할 수도 있다.
인식 결과 제공부(132-4)는 데이터 획득부(132-4)에서 획득된 데이터를 입력 값으로 학습된 데이터 인식 모델에 적용하여 컨텐츠에 대응되는 키워드 또는 컨텍스트를 판단할 수 있다. 또는 인식 결과 제공부(132-4)는 전처리부(132-2)에서 전처리된 데이터를 입력 값으로 학습된 데이터 인식 모델에 적용하여 인식 결과를 제공할 수 있다. 또는 인식 결과 제공부(132-4)는 데이터 선택부(132-3)에 의해 선택된 데이터를 입력 값으로 데이터 인식 모델에 적용하여 인식 결과를 제공할 수 있다.
또한, 판단 결과는 데이터 인식 모델에 의해 결정될 수 있다. 예를 들어, 인식 결과 제공부(132-4)는 컨텐츠에 포함된 데이터를 데이터 인식 모델에 입력하여 컨텐츠에 대응되는 키워드 또는 컨텍스트를 획득할 수 있다.
모델 갱신부(132-5)는 인식 결과 제공부(132-4)에 의해 제공되는 판단 결과에 대한 평가에 기초하여, 데이터 인식 모델이 갱신되도록할 수 있다. 예를 들어, 모델 갱신부(132-5)는 인식 결과 제공부(132-4)에 의해 제공되는 판단 결과를 모델 학습부(131-4)에게 제공함으로써, 모델 학습부(131-4)가 데이터 인식 모델을 갱신하도록 할 수 있다.
한편, 데이터 인식부(132) 내의 데이터 획득부(132-1), 전처리부(132-2), 데이터 선택부(132-3), 인식 결과 제공부(132-4) 및 모델 갱신부(132-5) 중 적어도 하나는, 소프트웨어 모듈로 구현되거나 적어도 하나의 하드웨어 칩 형태로 제작되어 전자 장치에 탑재될 수 있다. 예를 들어, 데이터 획득부(132-1), 전처리부(132-2), 데이터 선택부(132-3), 인식 결과 제공부(132-4) 및 모델 갱신부(132-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예를 들어, CPU 또는 application processor) 또는 특정 기능을 위한 IP의 일부로 제작되어 전술한 각종 전자 장치(100)에 탑재될 수도 있다.
또한, 데이터 획득부(132-1), 전처리부(132-2), 데이터 선택부(132-3), 인식 결과 제공부(132-4) 및 모델 갱신부(132-5) 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(132-1), 전처리부(132-2), 데이터 선택부(132-3), 인식 결과 제공부(132-4) 및 모델 갱신부(132-5) 중 일부는 전자 장치(100)에 포함되고, 나머지 일부는 전자 잗치(100)와 연동하는 서버에 포함될 수 있다.
한편, 데이터 획득부(132-1), 전처리부(132-2), 데이터 선택부(132-3), 인식 결과 제공부(132-4) 및 모델 갱신부(132-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(132-1), 전처리부(132-2), 데이터 선택부(132-3), 인식 결과 제공부(132-4) 및 모델 갱신부(132-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션을 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 비일시적 컴퓨터 판독가능 기록매체에 저장될 수 있다. 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는 적어도 하나의 소프트웨어 모듈 중 일부는 OS에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수도 있다.
상기에서 설명된 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
여기서, 프로그램 명령은 컴퓨터가 읽을 수 있는 비일시적 기록매체에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 개시의 실시 예를 구현할 수 있다.
여기서 비일시적 판독 가능 기록매체란, 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미할 뿐만 아니라 레지스터, 캐쉬, 버퍼 등을 포함하며, 신호(signal), 전류(current) 등과 같은 전송 매개체는 포함하지 않는다.
구체적으로, 상술한 프로그램 명령들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 내장 메모리(예: 메모리(110)), 메모리 카드, ROM 또는 RAM 등과 같은 비일시적 판독가능 기록매체에 저장되어 제공될 수 있다.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기의 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 개시된 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)으로 제공될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체 또는 판매자 및 구매자 간에 거래되는 상품을 포함할 수 있다.
예를 들어, 컴퓨터 프로그램 제품은 전자 장치 또는 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사 또는 전자 마켓의 서버, 또는 중계 서버의 저장매체가 될 수 있다.
이상과 같이 본 개시는 비록 한정된 실시 예와 도면에 의해 설명되었으나, 본 개시는 상기의 실시 예에 한정되는 것은 아니며, 본 개시가 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 전자 장치                 110: 입력부
120: 디스플레이                130: 프로세서
140: 음성 출력부              150: 통신부
160: 메모리                    170: 센싱부

Claims (19)

  1. 전자 장치의 제어 방법에 있어서,
    컨텐츠에 대한 기설정된 명령이 입력된 경우, 상기 컨텐츠를 분석하여 상기 컨텐츠의 컨텍스트 정보를 획득하는 단계;
    상기 컨텐츠에 대한 정보와 함께 상기 컨텍스트 정보를 저장하는 단계; 및
    상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함하는 제어 방법.
  2. 제1항에 있어서,
    상기 컨텍스트 정보를 획득하는 단계는,
    인공 지능 알고리즘을 이용하여 학습된 데이터 인식 모델을 이용하여 상기 컨텐츠의 키워드를 획득하는 단계;
    상기 추출된 키워드를 바탕으로 상기 컨텍스트 정보를 생성하는 단계;를 포함하는 것을 특징으로 하는 제어 방법.
  3. 제1항에 있어서,
    상기 컨텐츠에 대한 정보는 상기 컨텐츠의 주소 정보를 포함하며,
    상기 저장하는 단계는,
    상기 컨텐츠의 주소 정보에 상기 컨텍스트 정보를 태깅하여 저장하는 것을 특징으로 하는 제어 방법.
  4. 제1항에 있어서,
    상기 제공하는 단계는,
    상기 전자 장치에 구비된 센서로부터 획득된 센싱값으로부터 상기 컨텍스트 정보에 대응되는 컨텍스트를 감지하는 단계;
    상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함하는 제어 방법.
  5. 제1항에 있어서,
    상기 제공하는 단계는,
    상기 전자 장치와 연결된 외부 장치로부터 컨텍스트와 관련된 정보를 획득하는 단계;
    상기 정보를 바탕으로 상기 컨텍스트 정보에 대응되는 컨텍스트를 감지한 경우, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함하는 제어 방법.
  6. 제1항에 있어서,
    상기 제공하는 단계는,
    상기 전자 장치의 사용자의 스케줄 정보를 바탕으로 상기 컨텍스트 정보에 대응되는 컨텍스트를 감지하는 단계;
    상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함하는 제어 방법.
  7. 제1항에 있어서,
    상기 전자 장치는 과거에 감지된 컨텍스트에 대한 정보를 메모리에 저장하며,
    상기 제공하는 단계는,
    상기 과거에 감지된 컨텍스트에 대한 정보를 바탕으로 현재 컨텍스트를 판단하는 단계; 및
    상기 판단된 현재 컨텍스트가 상기 컨텍스트 정보에 대응되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함하는 제어 방법.
  8. 제1항에 있어서,
    상기 제공하는 단계는,
    상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 컨텍스트 감지를 안내하기 위한 메시지를 제공하는 단계;
    상기 메시지를 통해 사용자 명령이 입력되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;르 포함하는 제어 방법.
  9. 제1항에 있어서,
    상기 컨텐츠는 웹 페이지 컨텐츠이며,
    상기 기설정된 명령은 상기 웹 페이지 컨텐츠에 대한 스크랩 명령인 것을 특징으로 하는 제어 방법.
  10. 전자 장치에 있어서,
    사용자 명령을 입력받는 입력부;
    메모리;
    컨텐츠를 표시하는 디스플레이; 및
    상기 입력부를 통해 상기 컨텐츠에 대한 기설정된 명령이 입력된 경우, 상기 컨텐츠를 분석하여 상기 컨텐츠의 컨텍스트 정보를 획득하며, 상기 컨텐츠에 대한 정보와 함께 상기 컨텍스트 정보를 상기 메모리에 저장하며, 상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 상기 디스플레이를 제어하는 프로세서;를 포함하는 전자 장치.
  11. 제10항에 있어서,
    상기 프로세서는,
    인공 지능 알고리즘을 이용하여 학습된 데이터 인식 모델을 이용하여 상기 컨텐츠의 키워드를 획득하며, 상기 추출된 키워드를 바탕으로 상기 컨텍스트 정보를 획득하는 것을 특징으로 하는 전자 장치.
  12. 제10항에 있어서,
    상기 컨텐츠에 대한 정보는 상기 컨텐츠의 주소 정보를 포함하며,
    상기 프로세서는,
    상기 컨텐츠의 주소 정보에 상기 컨텍스트 정보를 태깅하여 상기 메모리에 저장하는 것을 특징으로 하는 전자 장치.
  13. 제10항에 있어서,
    상기 프로세서는,
    상기 전자 장치에 구비된 센서로부터 획득된 센싱값으로부터 상기 컨텍스트 정보에 대응되는 컨텍스트를 감지하고, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 상기 디스플레이를 제어하는 것을 특징으로 하는 전자 장치.
  14. 제10항에 있어서,
    상기 프로세서는,
    상기 전자 장치와 연결된 외부 장치로부터 컨텍스트와 관련된 정보를 획득하며, 상기 정보를 바탕으로 상기 컨텍스트 정보에 대응되는 컨텍스트를 감지한 경우, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 상기 디스플레이를 제어하는 것을 특징으로 하는 전자 장치.
  15. 제10항에 있어서,
    상기 프로세서는,
    상기 전자 장치의 사용자의 스케줄 정보를 바탕으로 상기 컨텍스트 정보에 대응되는 컨텍스트를 감지하고, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 상기 디스플레이를 제어하는 것을 특징으로 하는 전자 장치.
  16. 제10항에 있어서,
    상기 메모리는 과거에 감지된 컨텍스트에 대한 정보를 저장하며,
    상기 프로세서는,
    상기 과거에 감지된 컨텍스트에 대한 정보를 바탕으로 현재 컨텍스트를 판단하고, 상기 판단된 현재 컨텍스트가 상기 컨텍스트 정보에 대응되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 상기 디스플레이를 제어하는 것을 특징으로 하는 전자 장치.
  17. 제10항에 있어서,
    상기 프로세서는,
    상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 컨텍스트 감지를 안내하기 위한 메시지를 제공하도록 상기 디스플레이를 제어하며, 상기 메시지를 통해 사용자 명령이 입력되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하도록 상기 디스플레이를 제어하는 것을 특징으로 하는 전자 장치.
  18. 제10항에 있어서,
    상기 컨텐츠는 웹 페이지 컨텐츠이며,
    상기 기설정된 명령은 상기 웹 페이지 컨텐츠에 대한 스크랩 명령인 것을 특징으로 하는 전자 장치.
  19. 전자 장치의 제어 방법을 실행하기 위한 프로그램을 저장하는 비일시적인 컴퓨터 판독가능한 기록 매체에 있어서.
    상기 전자 장치의 제어 방법은,
    컨텐츠에 대한 기설정된 명령이 입력된 경우, 상기 저장된 컨텐츠를 분석하여 상기 컨텐츠의 컨텍스트 정보를 획득하는 단계;
    상기 컨텐츠에 대한 정보와 함께 상기 컨텍스트 정보를 저장하는 단계; 및
    상기 컨텍스트 정보에 대응되는 컨텍스트가 감지되면, 상기 감지된 컨텍스트에 대응되는 컨텐츠를 제공하는 단계;를 포함하는 기록 매체.
KR1020170145925A 2017-03-08 2017-11-03 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체 KR102440963B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US16/464,907 US11347805B2 (en) 2017-03-08 2018-03-05 Electronic apparatus, method for controlling the same, and non-transitory computer readable recording medium
PCT/KR2018/002593 WO2018164435A1 (en) 2017-03-08 2018-03-05 Electronic apparatus, method for controlling the same, and non-transitory computer readable recording medium
EP18764090.9A EP3577583A4 (en) 2017-03-08 2018-03-05 ELECTRONIC APPARATUS, ITS CONTROL METHOD, AND COMPUTER-READABLE NON-TRANSIENT STORAGE MEDIUM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170029490 2017-03-08
KR20170029490 2017-03-08

Publications (2)

Publication Number Publication Date
KR20180102987A true KR20180102987A (ko) 2018-09-18
KR102440963B1 KR102440963B1 (ko) 2022-09-07

Family

ID=63718512

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170145925A KR102440963B1 (ko) 2017-03-08 2017-11-03 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체

Country Status (2)

Country Link
EP (1) EP3577583A4 (ko)
KR (1) KR102440963B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200032625A (ko) * 2018-09-18 2020-03-26 삼성전자주식회사 냉장고 및 그의 제어방법
KR102592859B1 (ko) * 2022-12-21 2023-10-24 주식회사 지뉴소프트 인공지능 챗봇에서의 다중입력정보에 기초한 답변정보 도출방법 및 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010039546A1 (en) * 2000-05-05 2001-11-08 Moore Michael R. System and method for obtaining and storing information for deferred browsing
JP2005182804A (ja) * 2003-12-19 2005-07-07 Fuji Xerox Co Ltd コンテンツ情報を処理する方法、システム、及びプログラム
US20140344687A1 (en) * 2013-05-16 2014-11-20 Lenitra Durham Techniques for Natural User Interface Input based on Context
US9100723B2 (en) * 2006-03-07 2015-08-04 Samsung Electronics Co., Ltd. Method and system for managing information on a video recording
US20160004732A1 (en) * 2014-07-07 2016-01-07 Microsoft Corporation Extended memory system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2316417A1 (en) * 2000-08-18 2002-02-18 Jean-Sebastien Lessard Location bookmarks method and system
KR20150136316A (ko) * 2014-05-27 2015-12-07 삼성전자주식회사 정보 제공을 위한 전자 장치, 방법 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010039546A1 (en) * 2000-05-05 2001-11-08 Moore Michael R. System and method for obtaining and storing information for deferred browsing
JP2005182804A (ja) * 2003-12-19 2005-07-07 Fuji Xerox Co Ltd コンテンツ情報を処理する方法、システム、及びプログラム
US9100723B2 (en) * 2006-03-07 2015-08-04 Samsung Electronics Co., Ltd. Method and system for managing information on a video recording
US20140344687A1 (en) * 2013-05-16 2014-11-20 Lenitra Durham Techniques for Natural User Interface Input based on Context
US20160004732A1 (en) * 2014-07-07 2016-01-07 Microsoft Corporation Extended memory system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200032625A (ko) * 2018-09-18 2020-03-26 삼성전자주식회사 냉장고 및 그의 제어방법
KR102592859B1 (ko) * 2022-12-21 2023-10-24 주식회사 지뉴소프트 인공지능 챗봇에서의 다중입력정보에 기초한 답변정보 도출방법 및 시스템

Also Published As

Publication number Publication date
KR102440963B1 (ko) 2022-09-07
EP3577583A4 (en) 2020-01-01
EP3577583A1 (en) 2019-12-11

Similar Documents

Publication Publication Date Title
US11671386B2 (en) Electronic device and method for changing chatbot
KR102428920B1 (ko) 전자 장치 및 그 동작 방법
US11954150B2 (en) Electronic device and method for controlling the electronic device thereof
KR102491546B1 (ko) 객체를 인식하는 방법 및 장치
KR20230066300A (ko) 전자 장치 및 그 동작 방법
EP3598770A1 (en) Electronic device for determining emotion of user and method for controlling same
CN111418198B (zh) 提供文本相关图像的电子装置及其操作方法
KR102530045B1 (ko) 전자 장치 및 그 동작 방법
US11721333B2 (en) Electronic apparatus and control method thereof
KR20220111241A (ko) 텍스트와 연관된 이미지 제공 방법 및 이를 위한 전자 장치
US10630827B2 (en) Electronic device and control method thereof
KR20180055708A (ko) 이미지를 처리하는 전자 장치 및 방법
US20200133211A1 (en) Electronic device and method for controlling electronic device thereof
KR102430567B1 (ko) 텍스트와 연관된 이미지 제공 방법 및 이를 위한 전자 장치
US11443116B2 (en) Electronic apparatus and control method thereof
KR20180132493A (ko) 스와이프 입력에 기초하여 입력 문자를 판단하는 시스템 및 방법
US20190251355A1 (en) Method and electronic device for generating text comment about content
KR20190088128A (ko) 전자 장치 및 그의 제어 방법
KR102586170B1 (ko) 전자 장치 및 이의 검색 결과 제공 방법
US11347805B2 (en) Electronic apparatus, method for controlling the same, and non-transitory computer readable recording medium
KR20180060972A (ko) 전자 장치 및 이의 컨텐츠 요약 방법
KR102440963B1 (ko) 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체
US20200234085A1 (en) Electronic device and feedback information acquisition method therefor
KR102464906B1 (ko) 패션 상품을 추천하는 전자 장치, 서버 및 그 동작 방법
KR20200013164A (ko) 전자 장치, 및 전자 장치의 제어 방법

Legal Events

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