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

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

Info

Publication number
KR20230069475A
KR20230069475A KR1020210155541A KR20210155541A KR20230069475A KR 20230069475 A KR20230069475 A KR 20230069475A KR 1020210155541 A KR1020210155541 A KR 1020210155541A KR 20210155541 A KR20210155541 A KR 20210155541A KR 20230069475 A KR20230069475 A KR 20230069475A
Authority
KR
South Korea
Prior art keywords
function
usage
electronic device
functions
application
Prior art date
Application number
KR1020210155541A
Other languages
English (en)
Inventor
박민희
강동현
김성진
김태훈
임상묵
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210155541A priority Critical patent/KR20230069475A/ko
Priority to PCT/KR2022/017437 priority patent/WO2023085723A1/ko
Publication of KR20230069475A publication Critical patent/KR20230069475A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

전자장치는, 통신회로를 통하여 복수의 사용자의 외부장치로부터, 복수의 외부장치에서 실행되는 복수의 어플리케이션 및 각 외부장치에 의해 제공되는 복수의 기능에 관한 사용 행태 데이터를 획득하고; 획득된 사용 행태 데이터에 기초하여, 복수의 기능 중 어플리케이션의 실행 시점에 따라 정의된 구간 범위 내에서 수행된 하나 이상의 기능을 나타내는 연관 정보를 획득하고; 획득된 연관 정보에 기초하여, 외부장치에서 실행되는 어플리케이션에 대응하는 하나 이상의 기능의 추천 동작을 수행하는 프로세서를 포함한다.

Description

전자장치 및 그 제어방법 {ELECTRONIC APPARATUS AND CONTROL METHOD THEREOF}
본 발명은 여러 클라이언트 기기와 통신하며 각 클라이언트 기기에 다양한 어플리케이션 또는 서비스를 제공하는 전자장치 및 그 제어방법에 관한 것으로서, 상세하게는 어플리케이션에 구비된 소정의 기능을 클라이언트 기기의 사용자에게 안내하는 전자장치 및 그 제어방법에 관한 것이다.
소정의 정보를 특정 프로세스에 따라서 연산 및 처리하기 위해, 연산을 위한 CPU, 칩셋, 메모리 등의 전자부품들을 기본적으로 포함하는 전자장치는, 처리 대상이 되는 정보 또는 사용 용도가 무엇인지에 따라서 다양한 종류로 구분될 수 있다. 예를 들면, 전자장치에는 범용의 정보를 처리하는 PC(personal computer)나 서버(server) 등의 정보처리장치, 영상데이터를 처리하는 영상처리장치, 오디오를 처리하는 오디오장치, 가정 내 잡무를 수행하는 생활가전 등이 있다. 영상처리장치는 처리된 영상데이터를 자체 구비한 디스플레이 패널(display panel) 상에 영상으로 표시하는 디스플레이장치로 구현될 수 있다. 이와 같은 다양한 종류의 전자장치는 상호 통신 가능하게 연결되며, 소정의 서비스를 제공하는 서버 또는 호스트의 역할과, 상기한 서비스를 제공받는 클라이언트의 역할 중 어느 하나를 수행할 수 있다.
사용자는 티비 또는 모바일기기 등과 같은 디스플레이장치를 통해 앱 등의 컨텐트를 실행시킬 때, 디스플레이장치가 제공하는 여러 기능을 사용자가 원하는 대로 조정함으로써, 사용자의 취향에 맞도록 컨텐트가 실행되도록 한다. 예를 들어, 디스플레이장치에서 제공되는 복수의 화질 모드 중, 공중파 또는 케이블을 통해 제공되는 방송 영상에 맞게 설정된 화질의 제1모드로 되어 있을 때, 사용자가 서버를 통해 제공되는 스트리밍 영상을 시청하고자 하는 경우를 고려할 수 있다. 이 경우에, 디스플레이장치에서 복수의 화질 모드 중 스트리밍 영상에 맞게 설정된 화질의 제2모드로 이행되면, 보다 적합한 화질로 스트리밍 영상이 사용자에게 제공될 수 있다. 그러나, 사용자가 이러한 기능에 관해 모른다면, 제2모드로 이행시키지 않고 스트리밍 영상을 시청하게 될 것이다.
디스플레이장치에서 실행되는 컨텐트는 새로운 것들이 탐색되어 추천되는 반면, 컨텐트를 실행하기 위해 디스플레이장치가 제공하는 기능은 대부분의 경우에 새로 추가되지 않는다. 사용자는 디스플레이장치를 구매한 이후에, 몇 번의 탐색을 통해 자주 사용되는 제한된 기능만을 사용하게 되는 경우가 많다. 따라서, 컨텐트의 실행과 관련하여 디스플레이장치가 제공할 수 있는 유용한 기능이 있음에도 불구하고, 사용자는 이러한 기능을 사용하지 못할 수 있다.
따라서, 디스플레이장치에서 소정 컨텐트를 실행하고자 할 때, 디스플레이장치의 사용자에게 해당 컨텐트의 실행 시에 유용한 기능을 식별하여 제공할 수 있는 전자장치가 요구될 수 있다.
본 발명의 실시예에 따른 전자장치는, 통신회로와, 상기 통신회로를 통하여 복수의 사용자의 외부장치로부터, 상기 복수의 외부장치에서 실행되는 복수의 어플리케이션 및 상기 각 외부장치에 의해 제공되는 복수의 기능에 관한 사용 행태 데이터를 획득하고, 상기 획득된 사용 행태 데이터에 기초하여, 상기 복수의 기능 중 상기 어플리케이션의 실행 시점에 따라 정의된 구간 범위 내에서 수행된 하나 이상의 기능을 나타내는 연관 정보를 획득하고, 상기 획득된 연관 정보에 기초하여, 상기 외부장치에서 실행되는 어플리케이션에 대응하는 상기 하나 이상의 기능의 추천 동작을 수행하는 프로세서를 포함한다.
또한, 상기 프로세서는, 상기 연관 정보가 나타내는 상기 하나 이상의 기능 중 사용 빈도가 높은 기능을 식별하고, 지정된 상기 외부장치에 대해 상기 사용 빈도가 높다고 식별된 기능의 상기 추천 동작을 수행할 수 있다.
또한, 상기 프로세서는, 상기 식별된 사용 빈도가 높은 기능 중, 상기 지정된 외부장치의 상기 사용 행태 데이터에서 사용된 것으로 나타나는 하나 이상의 기능과 중복되지 않는 기능의 상기 추천 동작을 수행할 수 있다.
또한, 상기 프로세서는, 상기 획득된 사용 행태 데이터에 기초하여 상기 각 어플리케이션의 복수의 사용 패턴을 식별하고, 상기 식별된 복수의 사용 패턴 중에서 사용 빈도가 가장 높은 사용 패턴에 대응하는 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별할 수 있다.
또한, 상기 프로세서는, 상기 사용 빈도가 가장 높은 사용 패턴을 나타내는 상기 사용 행태 데이터에서, 사용 빈도가 높은 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별할 수 있다.
또한, 상기 복수의 사용 패턴은, 상기 정의된 구간 범위 내에서 상기 추천을 위해 지정된 어플리케이션이 실행될 때까지의 다른 어플리케이션의 실행 패턴을 포함할 수 있다.
또한, 상기 프로세서는, 상기 식별된 복수의 사용 패턴 중에서, 상기 사용 빈도가 가장 높은 상기 사용 패턴과 유사도가 높은 하나 이상의 사용 패턴을 포함하는 사용 패턴 그룹을 식별하고, 상기 식별된 사용 패턴 그룹 내 사용 패턴들에 대응하는 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별할 수 있다.
또한, 상기 프로세서는, 상기 사용 패턴 그룹 내의 각 사용 패턴을 나타내는 상기 사용 행태 데이터에서, 사용 빈도가 높은 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별할 수 있다.
또한, 상기 프로세서는, 상기 사용 행태 데이터의 전체 구간 중에서, 상기 지정된 어플리케이션의 실행 시점 이전의 소정의 제1시점부터 상기 지정된 어플리케이션이 종료되는 제2시점까지의 구간을 상기 구간 범위로 식별할 수 있다.
또한, 본 발명의 실시예에 따른 전자장치의 제어방법은, 복수의 사용자의 외부장치로부터, 상기 복수의 외부장치에서 실행되는 복수의 어플리케이션 및 상기 각 외부장치에 의해 제공되는 복수의 기능에 관한 사용 행태 데이터를 획득하는 단계와, 상기 획득된 사용 행태 데이터에 기초하여, 상기 복수의 기능 중 상기 어플리케이션의 실행 시점에 따라 정의된 구간 범위 내에서 수행된 하나 이상의 기능을 나타내는 연관 정보를 획득하는 단계와, 상기 획득된 연관 정보에 기초하여, 상기 외부장치에서 실행되는 어플리케이션에 대응하는 상기 하나 이상의 기능의 추천 동작을 수행하는 단계를 포함한다.
도 1은 전자장치 및 외부장치의 예시도이다.
도 2는 전자장치 및 외부장치의 구성 블록도이다.
도 3은 전자장치의 제어방법을 나타내는 플로우차트이다.
도 4는 외부장치에서 사용 행태 데이터를 수집하기 위한 사용자 허가를 요청하는 UI의 예시도이다.
도 5는 외부장치에서 수집된 데이터를 전자장치에서 처리 가능하게 가공하는 방법을 나타내는 예시도이다.
도 6은 단위 데이터를 복수의 어플리케이션의 사용 패턴에 따라서 세션 별로 구분한 예시도이다.
도 7은 복수의 세션 사이의 유사도를 비교한 결과의 예시도이다.
도 8은 복수의 세션 사이의 유사도에 기반한 다이어그램의 예시도이다.
도 9는 전자장치가 특정 외부장치에 추천 기능을 안내하는 원리를 나타내는 예시도이다.
도 10은 외부장치가 추천 기능을 안내하는 UI를 표시하는 예시도이다.
도 11은 전자장치가 추천 기능을 식별하는 과정을 나타내는 플로우차트이다.
이하에서는 첨부도면을 참조하여 본 발명에 따른 실시예들에 관해 상세히 설명한다. 각 도면을 참조하여 설명하는 실시예들은 특별한 언급이 없는 한 상호 배타적인 구성이 아니며, 하나의 장치 내에서 복수 개의 실시예가 선택적으로 조합되어 구현될 수 있다. 이러한 복수의 실시예의 조합은 본 발명의 기술분야에서 숙련된 기술자가 본 발명의 사상을 구현함에 있어서 임의로 선택되어 적용될 수 있다.
만일, 실시예에서 제1구성요소, 제2구성요소 등과 같이 서수를 포함하는 용어가 있다면, 이러한 용어는 다양한 구성요소들을 설명하기 위해 사용되는 것이며, 용어는 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용되는 바, 이들 구성요소는 용어에 의해 그 의미가 한정되지 않는다. 실시예에서 사용하는 용어는 해당 실시예를 설명하기 위해 적용되는 것으로서, 본 발명의 사상을 한정하지 않는다.
또한, 본 명세서에서의 복수의 구성요소 중 "적어도 하나(at least one)"라는 표현이 나오는 경우에, 본 표현은 복수의 구성요소 전체 뿐만 아니라, 복수의 구성요소 중 나머지를 배제한 각 하나 혹은 이들의 조합 모두를 지칭한다.
도 1은 전자장치 및 외부장치의 예시도이다.
도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 전자장치(1)는 예를 들면 서버로 구현되며, 네트워크를 통해 복수의 외부장치(100, 200, 300)와 각기 통신을 수행하게 마련된다. 다만, 전자장치(1)가 반드시 서버로 한정되는 것은 아니며 다양한 종류의 장치로 구현될 수 있는 바, 예를 들어 전자장치(1)는 다양한 종류의 외부장치(100, 200, 300)에 각기 통신 가능하게 연결된 호스트장치일 수도 있다. 전자장치(1) 및 외부장치(100, 200, 300) 사이는, 광역 네트워크, 근거리 네트워크, 케이블에 의한 일대 다 접속 등의 다양한 방식으로 연결될 수 있다.
또한, 본 실시예에서는 한 대의 전자장치(1)가 관련 동작을 수행하는 경우에 관해서만 설명하지만, 이는 한 가지 예시일 뿐이며, 복수의 전자장치(1)가 연계하여 동작하는 경우에도 본 실시예가 적용될 수 있다. 이 경우에, 상호 통신 가능하게 연결된 복수의 전자장치(1)가 관련 동작을 분담하여 수행할 수 있다.
외부장치(100, 200, 300)는 다양한 종류의 장치로 구현될 수 있는 바, 예를 들면 PC, 서버 등을 포함하는 정보처리장치이거나; TV, 모니터, 디지털 사이니지(signage), 전자칠판, 전자액자 등을 포함하는 고정형 디스플레이장치이거나; 스마트폰, 태블릿기기, 휴대용 멀티미디어 재생기기 등을 포함하는 모바일기기이거나; 셋탑박스, 광학미디어 재생기기 등을 포함하는 영상처리장치이거나; 냉장고, 세탁기, 의류관리기기, 공기조화기 등을 포함하는 생활가전이거나; IoT(internet of things) 환경을 구축하는 게이트웨이, 허브, 슬레이브장치이거나; 사람이 착용할 수 있는 웨어러블 디바이스(wearable device) 등으로 구현될 수 있다. 본 실시예에서는 전자장치(1)에 3대의 외부장치(100, 200, 300)가 연결되는 것으로 표현하고 있지만, 실질적으로 전자장치(1)에 통신 가능하게 연결되는 외부장치(100, 200, 300)의 수는 한정되지 않는다.
전자장치(1)는 통신하는 복수의 외부장치(100, 200, 300)를 상호 식별할 수 있게 마련된다. 외부장치(100, 200, 300)의 식별 방법의 예시로, 전자장치(1)는 각 외부장치(100, 200, 300)의 장치 ID를 통해 식별하거나, 각 외부장치(100, 200, 300)를 사용하는 사용자의 ID를 통해 식별할 수 있다. 외부장치(100, 200, 300)의 ID는 해당 외부장치(100, 200, 300)에 사전에 마련되거나 또는 외부장치(100, 200, 300)에서 사용자에 의해 입력되고, 이후 외부장치(100, 200, 300)로부터 전자장치(1)에 전달될 수 있다. 또는, 전자장치(1)는 통신 가능한 외부장치(100, 200, 300) 각각에 대해 ID를 임의로 할당할 수도 있다.
전자장치(1)는 각 외부장치(100, 200, 300)의 ID를 관리하는 것과 함께, 각 외부장치(100, 200, 300)에서 해당 외부장치(100, 200, 300)를 사용한 사용자의 사용 행태 데이터를 저장한다. 예를 들면, 각 외부장치(100, 200, 300)에서는 사용자가 다양한 컨텐트를 시청하거나, 실행시키거나 또는 사용한 컨텐트의 사용 이력과, 해당 외부장치(100, 200, 300)에서 제공하는 다양한 기능들의 사용 이력이 누적된다. 컨텐트는 외부장치(100, 200, 300)에서 실행되는 다양한 어플리케이션, 프로그램, 데이터 등을 포함한다. 전자장치(1)는 이러한 각 외부장치(100, 200, 300) 별 사용 이력에 기반한 사용 행태 데이터를 획득하고, 획득한 각 사용 행태 데이터를 각 외부장치(100, 200, 300)의 ID와 대응하도록 저장하여 관리한다. 이 때, 전자장치(1)는 연결 가능한 모든 외부장치(100, 200, 300)로부터 사용 행태 데이터를 획득할 수 있고, 또는 전자장치(1)가 외부장치(100, 200, 300)의 사용 행태 데이터의 수집을 해당 외부장치(100, 200, 300)의 사용자가 허용한 경우에 한해, 해당 외부장치(100, 200, 300)의 사용 행태 데이터를 획득할 수도 있다.
여기서, 전자장치(1)가 연결 가능한 모든 외부장치(100, 200, 300)로부터 해당 외부장치(100, 200, 300)에서의 사용 행태 데이터를 획득하는 것도 가능하지만, 전자장치(1)는 각 외부장치(100, 200, 300)의 사용자의 허가를 받은 외부장치(100, 200, 300)에 한해서만 사용 행태 데이터를 획득할 수 있다. 이에 관한 설명은 후술한다.
이하, 전자장치(1)의 구성에 관해 설명한다.
도 2는 전자장치 및 외부장치의 구성 블록도이다.
도 2에 도시된 바와 같이, 전자장치(1) 및 외부장치(100)는 동작을 위해 다양한 하드웨어 요소들을 포함한다. 본 실시예에 따른 외부장치(100)는 본 실시예에서의 전자장치(1)와 구별을 위해 편의상 붙여진 명칭이며, 앞서 설명한 바와 같이 다양한 종류의 장치로 구현될 수 있다. 본 실시예에서는 외부장치(100)가 디스플레이장치인 경우에 관해 설명한다.
전자장치(1)는 인터페이스부(10)를 포함할 수 있다. 인터페이스부(10)는 전자장치(1)가 외부장치(100)와 통신을 수행하고, 또한 데이터를 송수신하기 위한 인터페이스 회로를 포함한다. 인터페이스부(10)는 연결 방식에 따라서, 유선 통신연결을 위한 하나 이상의 유선인터페이스부(11), 또는 무선 통신연결을 위한 하나 이상의 무선인터페이스부(12) 중 적어도 하나를 포함한다.
유선인터페이스부(11)는 기 정의된 전송규격의 케이블이 접속되는 커넥터 또는 포트를 포함한다. 예를 들면, 유선인터페이스부(11)는 방송신호를 수신하도록 지상파 또는 위성방송 안테나에 접속되거나 케이블방송의 케이블이 접속되는 포트를 포함한다. 또는, 유선인터페이스부(11)는 다양한 영상처리장치와 접속하도록 HDMI, DP(DisplayPort), DVI, 컴포넌트, 컴포지트, S-Video, 썬더볼트(Thunderbolt) 등 다양한 유선전송규격의 케이블이 접속되는 포트를 포함한다. 또는, 유선인터페이스부(11)는 USB 기기와 접속하기 위한 USB 규격의 포트를 포함한다. 또는, 유선인터페이스부(11)는 광케이블이 접속되는 광포트를 포함한다. 또는, 유선인터페이스부(11)는 외부 마이크로폰이 접속되는 오디오 입력 포트와, 헤드셋, 이어폰, 외부 스피커 등이 접속되는 오디오 출력 포트를 포함한다. 또는, 유선인터페이스부(11)는 광역 네트워크에 접속하기 위해 게이트웨이, 라우터, 허브 등에 접속하는 이더넷 포트를 포함한다.
무선인터페이스부(12)는 다양한 종류의 무선통신 프로토콜에 대응하는 통신모듈, 통신칩 등의 구성요소들 중 적어도 하나 이상을 포함하는 양방향 통신회로를 포함한다. 예를 들면, 무선인터페이스부(12)는 와이파이(Wi-Fi) 방식에 따라서 AP(Access Point)와 무선통신을 수행하는 와이파이 통신칩과, 블루투스, Zigbee, Z-Wave, WirelessHD, WiGig, NFC 등의 무선통신을 수행하는 통신칩, IR 통신을 위한 IR 모듈, 모바일기기(200)와 이동통신을 수행하는 이동통신칩 등을 포함한다.
전자장치(1)는 사용자입력부(30)를 포함할 수 있다. 사용자입력부(30)는 사용자의 입력을 수행하기 위해 사용자가 조작할 수 있도록 마련된 다양한 종류의 사용자 입력 인터페이스 관련 회로를 포함한다. 사용자입력부(30)는 전자장치(1)의 종류에 따라서 여러 가지 형태의 구성이 가능하며, 예를 들면 전자장치(1)의 기계 버튼부 또는 전자 버튼부; 다양한 종류의 센서; 터치패드 또는 터치스크린; 전자장치(1)와 분리되며 인터페이스부(10)를 통해 연결된 리모트 컨트롤러, 키보드, 마우스 등과 같은 외부입력기기 등이 있다.
전자장치(1)는 저장부(40)를 포함할 수 있다. 저장부(40)는 디지털화된 데이터를 저장한다. 저장부(40)는, 프로세서(60)에 의해 처리되기 위한 데이터가 로딩되며 전원이 제공되지 않으면 데이터를 보존할 수 없는 휘발성 속성을 가진 하나 이상의 메모리(memory)(41)를 포함할 수 있다. 메모리(41)에는 버퍼(buffer), 램(RAM; random access memory) 등이 있다. 또한, 저장부(40)는, 전원의 제공 유무와 무관하게 데이터를 보존할 수 있는 비휘발성 속성을 가진 하나 이상의 스토리지(storage)(42)를 포함할 수 있다. 스토리지(42)에는 플래시메모리(flash-memory), HDD(hard-disc drive), SSD(solid-state drive), ROM(read only memory) 등이 있다.
전자장치(1)는 프로세서(60)를 포함할 수 있다. 프로세서(60)는 인쇄회로기판 상에 장착되는 CPU, 칩셋, 버퍼, 회로 등으로 구현되는 하나 이상의 하드웨어 프로세서를 포함하며, 설계 방식에 따라서는 SOC로 구현될 수도 있다. 프로세서(60)는 전자장치(1)의 동작의 제어를 수행하며, 다양한 정보 또는 데이터를 처리한다.
한편, 외부장치(100)는, 유선인터페이스부(111) 또는 무선인터페이스부(112) 중 적어도 하나를 포함하는 인터페이스부(110), 사용자입력부(130), 메모리(141) 및 스토리지(142)를 포함하는 저장부(140)를 포함한다. 외부장치(100)의 상기한 구성요소들은 전자장치(1)의 동일 명칭의 구성요소와 기본적으로 유사한 기능을 수행하는 바, 자세한 설명을 생략한다.
외부장치(100)가 디스플레이장치로 구현되는 경우에, 디스플레이부(120)를 포함할 수 있다. 디스플레이부(120)는 프로세서(160)에 의해 처리되는 영상신호를 영상으로 표시하기 위한 화면을 형성한다. 디스플레이부(120)는 디스플레이 패널을 포함하는데, 디스플레이 패널의 구조에는 여러 가지 설계방식이 적용될 수 있다. 예를 들면, 디스플레이부(120)는 액정과 같은 수광형 구조의 디스플레이 패널 및 이에 광을 제공하는 백라이트를 포함할 수 있다. 또는, 디스플레이부(120)는 OLED(organic light emitting diodes)와 같은 자발광 구조의 디스플레이 패널을 포함할 수 있다. 또는, 디스플레이부(120)는 복수의 마이크로 LED 모듈이 타일 형태로 조합되어 대화면을 형성하는 구조일 수도 있다.
외부장치(100)는 스피커(150)를 포함할 수 있다. 스피커(150)는 프로세서(160)가 소정의 컨텐트를 재생할 때에, 해당 컨텐트의 오디오를 출력한다. 스피커(150)는 외부장치(100)에 설치되거나, 또는 사운드바와 같은 외부장치(100)와 분리된 별도의 장치로 마련될 수도 있다. 스피커(150)가 별도의 장치로 마련되는 경우에 스피커(150)는 인터페이스부(10)에 연결되며, 오디오신호는 인터페이스부(110)를 통해 스피커(150)에 전달된다.
외부장치(100)는 프로세서(170)를 포함할 수 있다. 프로세서(170)는 인쇄회로기판 상에 장착되는 CPU, 칩셋, 버퍼, 회로 등으로 구현되는 하나 이상의 하드웨어 프로세서를 포함하며, 설계 방식에 따라서는 SOC로 구현될 수도 있다. 프로세서(170)는 영상컨텐트를 영상으로 표시하기 위해 디멀티플렉서, 디코더, 스케일러, 오디오 DSP(Digital Signal Processor), 앰프 등의 다양한 프로세스에 대응하는 모듈들을 포함한다. 여기서, 이러한 모듈들 중 일부 또는 전체가 SOC로 구현될 수 있다. 예를 들면, 디멀티플렉서, 디코더, 스케일러 등 영상처리와 관련된 모듈이 영상처리 SOC로 구현되고, 오디오 DSP는 SOC와 별도의 칩셋으로 구현되는 것이 가능하다. 프로세서(170)는 소정의 컨텐트를 재생시켜, 컨텐트의 영상이 디스플레이부(120)에 표시되도록 하는 한편, 컨텐트의 오디오가 스피커(150)를 통해 음향으로 출력되도록 한다.
이하, 전자장치(1)가 외부장치(100)에서 소정 컨텐트, 예를 들어 어플리케이션을 실행하고자 할 때, 외부장치(100)의 사용자에게 어플리케이션의 실행 시에 유용한 기능을 식별하여 제공하는 방법에 관한 설명한다.
도 3은 전자장치의 제어방법을 나타내는 플로우차트이다.
도 1, 도 2 및 도 3에 도시된 바와 같이, 하기 동작은 전자장치(1)의 프로세서(70)에 의해 수행된다.
410 단계에서 전자장치(1)는 복수의 사용자의 외부장치(100)로부터, 각 외부장치(100)에서 실행되는 복수의 어플리케이션과, 각 외부장치(100)에 의해 제공되는 복수의 기능에 관한 사용 행태 데이터를 획득한다.
420 단계에서 전자장치(1)는 획득한 사용 행태 데이터에 기초하여, 복수의 기능 중 소정의 어플리케이션의 실행 시점에 따라 정의된 구간 범위 내에서 수행된 하나 이상의 기능을 나타내는 연관 정보를 획득한다. 예를 들어, 전자장치(1)는 획득한 사용 행태 데이터에 기초하여 연관 정보를 획득할 수도 있고, 연관 정보를 다른 장치로부터 수신할 수도 있다. 연관 정보에 관한 구체적인 내용에 관해서는 후술한다.
430 단계에서 전자장치(1)는 연관 정보에 기초하여, 외부장치(100)에서 실행되는 어플리케이션에 대응하는 하나 이상의 기능에 관한 추천 동작을 수행한다. 예를 들어 전자장치(1)는 외부장치(100)에서 어플리케이션이 실행되면, 식별된 기능을 안내하는 팝업 메시지를 어플리케이션의 실행 화면에 표시할 수 있다.
이로써, 전자장치(1)는 외부장치(100)에서 소정의 어플리케이션이 실행될 때, 어플리케이션의 실행 시 유용한 기능을 해당 외부장치(100)의 사용자에게 추천해 줄 수 있다.
한편, 전자장치(1)의 프로세서(70)는 상기와 같이 외부장치(100)의 사용 행태 데이터에 기초하여, 복수의 기능 중 소정의 어플리케이션의 실행 시점에 따라 정의된 구간 범위 내에서 수행된 하나 이상의 기능을 식별하는 동작을 수행하기 위한 데이터 분석, 처리, 및 결과 정보 생성 중 적어도 일부를 규칙 기반 또는 인공지능(Artificial Intelligence) 알고리즘으로서 기계학습, 신경망 네트워크(neural network), 또는 딥러닝 알고리즘 중 적어도 하나를 이용하여 수행할 수 있다.
일 예로, 전자장치(1)의 프로세서(70)는 학습부 및 인식부의 기능을 함께 수행할 수 있다. 학습부는 학습된 신경망 네트워크를 생성하는 기능을 수행하고, 인식부는 학습된 신경망 네트워크를 이용하여 데이터를 인식(또는, 추론, 예측, 추정, 판단)하는 기능을 수행할 수 있다. 학습부는 신경망 네트워크를 생성하거나 갱신할 수 있다. 학습부는 신경망 네트워크를 생성하기 위해서 학습 데이터를 획득할 수 있다. 일 예로, 학습부는 학습 데이터를 전자장치의 저장부 또는 외부로부터 획득할 수 있다. 학습 데이터는, 신경망 네트워크의 학습을 위해 이용되는 데이터일 수 있으며, 상기한 동작을 수행한 데이터를 학습데이터로 이용하여 신경망 네트워크를 학습시킬 수 있다.
학습부는 학습 데이터를 이용하여 신경망 네트워크를 학습시키기 전에, 획득된 학습 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 학습 데이터들 중에서 학습에 이용될 데이터를 선별할 수 있다. 일 예로, 학습부는 학습 데이터를 기 설정된 포맷으로 가공하거나, 필터링하거나, 또는 노이즈를 추가/제거하여 학습에 적절한 데이터의 형태로 가공할 수 있다. 학습부는 전처리된 학습 데이터를 이용하여 상기한 동작을 수행하도록 설정된 신경망 네트워크를 생성할 수 있다.
학습된 신경망 네트워크는, 복수의 신경망 네트워크(또는, 레이어)들로 구성될 수 있다. 복수의 신경망 네트워크의 노드들은 가중치를 가지며, 복수의 신경망 네트워크들은 일 신경망 네트워크의 출력 값이 다른 신경망 네트워크의 입력 값으로 이용되도록 서로 연결될 수 있다. 신경망 네트워크의 예로는, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN (Bidirectional Recurrent Deep Neural Network) 및 심층 Q-네트워크 (Deep Q-Networks)과 같은 모델을 포함할 수 있다.
한편 인식부는 상기한 동작을 수행하기 위해, 타겟 데이터를 획득할 수 있다. 타겟 데이터는 전자장치의 저장부 또는 외부로부터 획득된 것일 수 있다. 타겟 데이터는 신경망 네트워크의 인식 대상이 되는 데이터일 수 있다. 인식부는 타겟 데이터를 학습된 신경망 네트워크에 적용하기 전에, 획득된 타겟 데이터에 대하여 전처리 작업을 수행하거나, 또는 복수 개의 타겟 데이터들 중에서 인식에 이용될 데이터를 선별할 수 있다. 일 예로, 인식부는 타겟 데이터를 기 설정된 포맷으로 가공하거나, 필터링 하거나, 또는 노이즈를 추가/제거하여 인식에 적절한 데이터의 형태로 가공할 수 있다. 인식부는 전처리된 타겟 데이터를 신경망 네트워크에 적용함으로써, 신경망 네트워크로부터 출력되는 출력값을 획득할 수 있다. 인식부는 출력값과 함께, 확률값 또는 신뢰도값을 획득할 수 있다.
이하, 외부장치(100)에서 사용 행태 데이터를 수집하는 방법에 관해 설명한다.
도 4는 외부장치에서 사용 행태 데이터를 수집하기 위한 사용자 허가를 요청하는 UI의 예시도이다.
도 1 및 도 4에 도시된 바와 같이, 전자장치(1)는 각 외부장치(100, 200, 300)에서 사용 행태 데이터를 수집하기 위한 지침을 포함하는 정책정보를 외부장치(100, 200, 300)에 전달한다. 정책정보는 외부장치(100, 200, 300)에서 어떤 내용의 사용 기록들을 수집할 것인가에 관한 조건을 지시하고 있다. 예를 들면, 정책정보는, 사용 행태 데이터를 수집하기 위한 대상이 되는 외부장치(100, 200, 300)의 모델, 출시년도, 사용국가 등과, 대상이 되는 외부장치(100, 200, 300) 중에서 사용 행태 데이터를 수집하는 시기, 사용기록 종류 등을 지시한다.
각 외부장치(100, 200, 300)는 전자장치(1)에서 수신된 정책정보에 따라서, 해당 외부장치(100, 200, 300)가 정책정보가 지시하는 대상에 해당한다고 식별되면, 사용 행태 데이터를 수집할 것인지에 관해 사용자의 허가를 요청하는 UI(500)를 표시한다. 외부장치(100, 200, 300)는 해당 외부장치(100, 200, 300)가 정책정보가 지시하는 대상에 해당하지 않는다고 식별되면, 이러한 UI(500)를 표시하지 않으며, 사용 행태 데이터를 수집하지 않는다.
외부장치(100, 200, 300)는 UI(500)를 통해 사용자 허가 옵션이 선택되면, 정책정보의 지시에 따라서 사용 행태 데이터를 수집하여 전자장치(1)에 전송한다. 외부장치(100, 200, 300)는 UI(500)를 통해 사용자 허가 옵션이 선택되지 않으면, 사용 행태 데이터를 수집하지 않는다.
이하, 추천 기능을 식별하기 위해, 외부장치(100, 200, 300)에서 수집된 사용 행태 데이터를 가공하는 방법에 관해 설명한다.
도 5는 외부장치에서 수집된 데이터를 전자장치에서 처리 가능하게 가공하는 방법을 나타내는 예시도이다.
도 1 및 도 5에 도시된 바와 같이, 예를 들어 하나의 외부장치(100, 200, 300)로부터 소정 시간 구간 동안에 실행된 어플리케이션 및 수행된 기능의 이력을 나타내는 로 데이터(raw data)(610), 즉 사용 행태 데이터가 수집될 수 있다. 본 도면에서의 로 데이터(610)는, 전체 시간 구간 중에서 각 어플리케이션의 실행 구간(611, 612, 613)과, 시간 구간의 소정 시점에서 외부장치(100, 200, 300)가 제공하는 기능의 실행 정보(614) 또한 포함한다. 어떠한 종류의 외부장치(100, 200, 300)에서, 어느 시간 구간 동안에 어떤 이력을 수집할 것인가에 관한 것은, 앞서 설명한 바와 같이 정책정보에 의해 지정될 수 있다.
여기서, 본 도면에서의 로 데이터(610)에서 시점 Ts부터 Te까지의 연장된 흰색 바는 로 데이터(610)가 수집된 전체 시간 구간을 나타내며, 각 어플리케이션이 실행되거나 또는 기능이 수행된 구간은 전체 시간 구간과 시각적으로 구별되도록 표현되어 있다. 본 도면에서의 기능의 실행 정보(614)는 각 기능별로 구별되어 표현되어 있지는 않으나, 기능의 실행 정보(614)는 다양한 기능에 관한 실행 기록을 포함한다.
여기서, 전자장치(1)는 이와 같이 여러 외부장치(100, 200, 300)로부터 획득한 다수의 로 데이터(610) 중에서, 각 어플리케이션의 사용 회수 또는 사용 시간을 추출하여, 각 사용자 별로 각 어플리케이션의 사용 테이블을 작성할 수 있다. 본 테이블은, 각 사용자에 의한 어느 한 어플리케이션의 사용 회수 또는 사용 시간의 기록을 포함한다. 전자장치(1)는 본 테이블에 기초하여, 어플리케이션의 사용 회수 또는 사용 시간이 많은(예를 들어 문턱값 이상으로 나타나는) 사용자들의 그룹을 선정한다. 전자장치(1)는 지정된 어플리케이션의 사용 회수 또는 사용 시간이 많은 사용자들의 그룹을 식별하고, 식별된 그룹의 사용자들로부터 획득한 로 데이터(610)를 가지고 추천기능 식별 프로세스를 진행할 수 있다.
로 데이터(610)의 개시 시점 Ts(예를 들어 외부장치(100, 200, 300)의 턴온 시점)부터 종료 시점 Te(예를 들어 외부장치(100, 200, 300)의 턴오프 시점)까지의 전체 구간 중에서, 복수의 어플리케이션, 예를 들면 제1어플리케이션의 실행 구간(611), 제2어플리케이션의 실행 구간(612), 제3어플리케이션의 실행 구간(613)이 나타난다. 어느 한 어플리케이션의 실행 구간이 복수 개 있는 경우는, 사용자가 어플리케이션을 종료한 이후, 다시 해당 어플리케이션을 재실행했음을 의미한다.
이와 같은 로 데이터(610)로부터, 지정된 어느 한 어플리케이션을 기준으로 로 데이터(610)가 가공됨으로써, 지정된 어플리케이션에 대한 외부장치(100, 200, 300)의 단위 데이터(620)가 도출된다. 지정된 어플리케이션에 대한 단위 데이터(620)는, 앞선 도 3의 420 단계에서 설명한 연관 정보에 해당한다. 전자장치(1)가 외부장치(100, 200, 300)로부터 로 데이터(610)를 수신하여 단위 데이터(620)로 변환시킬 수도 있고, 각 외부장치(100, 200, 300)가 수행하여 전자장치(1)에 단위 데이터(620)를 전송할 수도 있다.
예를 들어 제1어플리케이션을 기준으로 로 데이터(610)를 가공하는 경우를 고려한다. 로 데이터(610)의 전체 시간 구간 중에서 제1어플리케이션의 실행 구간은 시점 T1부터 T2까지의 제1구간, T3부터 T4까지의 제2구간, T5부터 T6까지의 제3구간의 세 구간을 포함한다. 여기서, 상기한 세 구간을 각기 포함하는 세 개의 단위 데이터(620)가 생성된다.
예를 들면, 단위 데이터(620)에서, 제1구간을 포함하는 제1단위 데이터는, T1 이전의 소정 시점(예를 들면 Ts)부터 T2까지의 구간에서의 이력을 포함한다. 제2구간을 포함하는 제2단위 데이터는, T3 이전의 소정 시점(예를 들면 T2)부터 T4까지의 구간에서의 이력을 포함한다. 제3구간을 포함하는 제3단위 데이터는, T5 이전의 소정 시점(예를 들면 T4)부터 T6까지의 구간에서의 이력을 포함한다. 즉, 각 단위 데이터(620)는, 관심 대상인 제1어플리케이션의 실행 시점에 따라서 정의되는 구간 범위인 바, 어플리케이션의 실행 시점을 중심으로 하여 그 이전 시간 구간 및 그 이후 시간 구간을 포함한다. 이하, 단위 데이터(620)의 구간이 이와 같이 설정되는 이유에 관해 설명한다.
예를 들어, 사용자가 외부장치(100, 200, 300)에서 어플리케이션을 실행시키고자 하는 경우를 고려한다. 사용자는 어플리케이션의 화면의 화질, 어플리케이션의 오디오의 음질, 또는 어플리케이션의 재생 품질이, 사용자가 인지하기에 보다 향상되도록 외부장치(100, 200, 300)에 제공되는 화질, 음질, 퍼포먼스 등에 관련된 기능을 조정할 수 있다. 이 때, 이와 같은 사용자의 조정 동작은, 어플리케이션을 실행하기 직전에 수행될 수도 있고, 어플리케이션을 실행시킨 직후 또는 소정 시간의 경과 이후에 수행될 수도 있다. 따라서, 관심 대상인 어플리케이션과 관련하여 사용자가 소정의 기능이 수행되도록 지시하였다면, 적어도 어플리케이션의 실행 개시 시점을 중심으로 하여 그 이전 시간 구간 및 그 이후 시간 구간(각 시간 구간의 길이는 정해진 값으로 한정되지 않음) 동안에 해당 기능을 수행될 것으로 예상된다. 이러한 관점에서, 어플리케이션과 관련되어 실행되는 것으로 예측되는 기능을 식별하기 위해, 단위 데이터(620)의 구간이 설정된다.
적어도, 단위 데이터(620)의 구간은 관심 대상인 어플리케이션의 실행 개시 시점을 포함하기만 하면, 각 단위 데이터(620)의 시작 시점 및 종료 시점은 다양한 설계변경이 반영될 수 있는 바, 반드시 본 실시예와 같은 방식으로 지정되는 것은 아니다. 즉, 단위 데이터(620)의 시작 시점은 어플리케이션의 실행 개시 시점 이전의 소정 시점으로 지정되고, 단위 데이터(620)의 종료 시점은 어플리케이션의 실행 개시 시점 이후의 소정 시점으로 지정된다.
여기서, 각 단위 데이터(620)는 관심 대상인 제1어플리케이션 이외에, 나머지 어플리케이션의 실행에 관한 정보도 포함한다. 예를 들어, 제1구간을 포함하는 단위 데이터(620)는 제2어플리케이션의 실행 개시 시점에 관한 정보를 포함할 수 있다. 제2구간을 포함하는 단위 데이터(620)는 제2어플리케이션의 실행 종료 시점 및 제3어플리케이션의 실행 개시 시점에 관한 정보를 포함할 수 있다.
이하, 단위 데이터(620)를 기초하여 추천 기능을 식별하는 구체적인 방법에 관해 설명한다.
도 6은 단위 데이터를 복수의 어플리케이션의 사용 패턴에 따라서 세션 별로 구분한 예시도이다.
도 1, 도 5 및 도 6에 도시된 바와 같이, 전자장치(1)는 관심 대상인 어플리케이션을 기준으로 하여 다수의 단위 데이터(620)를 획득한다. 각 단위 데이터(620)는 관심 대상인 어플리케이션, 예를 들면 어플리케이션 #1 이외에도, #1과 상이한 타 어플리케이션 #2 내지 #9에 관한 실행 기록을 포함할 수 있다.
전자장치(1)는 관심 대상인 어플리케이션 #1의 실행 기록을 포함하는 복수의 단위 데이터(620)를, 복수의 어플리케이션의 사용 패턴에 따라서 복수의 세션으로 분류한다. 하나의 세션에는, 복수의 어플리케이션의 동일한 사용 패턴을 나타내는, 예를 들어 복수의 어플리케이션의 동일한 실행 순서를 나타내는 단위 데이터(620)가 포함된다. 예를 들어, 세션 #A는, 어플리케이션의 실행 순서가 #2, #3, #4, #1인 사용 패턴을 나타내는 단위 데이터(620)를 포함한다. 즉, 세션은 복수의 어플리케이션의 사용 패턴을 나타내며, 빈도는 획득된 단위 데이터(620)에서 해당 사용 패턴이 나타나는 수를 의미한다. 본 실시예에서 사용 패턴 빈도가 가장 높은 것은 세션 #A로서, 세션 #A의 빈도는 200이다. 이러한 방식으로, 전자장치(1)는 모든 세션의 빈도를 식별할 수 있다.
전자장치(1)는 빈도가 가장 높은 세션 #A가 식별되면, 식별된 세션 #A에 포함된 단위 데이터(620)에 기초하여 추천 기능을 식별할 수 있다. 예를 들어, 세션 #A의 빈도가 타 세션에 비해 압도적으로 많은 경우(예를 들면, 세션 #A의 빈도가 그 다음 순위의 세션 #B의 빈도와 소정 문턱값 이상의 차이가 나는 경우이거나, 또는 전체 세션의 빈도의 총합에서 세션 #A의 빈도의 점유율이 소정 문턱값 이상인 경우)에는, 세션 #A만으로 추천 기능을 식별할 수도 있다.
또는, 보다 결과의 신뢰도를 높이기 위해, 빈도가 가장 높은 세션 #A와 유사도가 높은 타 세션들을 식별하는 방법도 가능하다. 이하, 복수의 세션 사이의 유사도를 비교하는 실시예에 관해 설명한다.
도 7은 복수의 세션 사이의 유사도를 비교한 결과의 예시도이다.
도 1, 도 5 및 도 7에 도시된 바와 같이, 모든 세션 #A 내지 #F에 대해, 각 세션 및 나머지 세션 사이의 유사도를 산출한다. 예를 들어, 세션 #A 및 나머지 세션들 #B, #C, #D, #E, #F 사이의 각 유사도를 산출하고, 다음 세션 #B 및 나머지 세션들 #A, #C, #D, #E, #F 사이의 각 유사도를 산출한다. 이러한 방식으로, 모든 세션을 기준으로 한 유사도를 산출하면, 도 7의 도표와 같이 나타낼 수 있다.
세션들 사이의 유사도는 다양한 수학적 방법을 통해 산출될 수 있다. 예를 들면, 전자장치(1)는 두 세션에서 각기 나타나는 복수의 어플리케이션의 실행 순서 사이의 유사도를 세션들 사이의 유사도로 식별할 수 있다. 다만, 이는 한 가지 예시에 불과하며, 설계 방식에 따라서 다양한 원리가 유사도의 산출에 적용될 수 있다. 도 7에서의 수치는 유사도를 나타내는 바, 이 수치가 낮다는 것은 두 세션 사이의 유사도가 낮고, 이 수치가 높다는 것은 두 세션 사이의 유사도가 높다는 것을 의미한다. 여기서, 본 도면에서 나타낸 유사도의 수치는 한 가지 예시일 뿐임을 밝힌다. 예를 들어, 세션 #A와 유사도가 높은 세션은 #C, #D, #F이고, 유사도가 낮은 세션은 #B, #E임을 알 수 있다.
전자장치(1)는 빈도가 가장 높은 세션 #A를 기준으로 하여, 세션 #A와 유사도가 높은 세션 #C, #D, #F를 하나의 사용패턴 그룹으로 식별하고, 이와 같이 식별된 사용패턴 그룹 내의 세션 #A, #C, #D, #F에 포함되는 복수의 단위 데이터(620)를 획득한다. 여기서, 세션 #A와 유사도가 높은 세션은, 해당 유사도가 소정의 문턱값(예를 들어 0.75) 이상인 세션이 해당될 수 있다. 전자장치(1)는 이와 같이 획득한 복수의 단위 데이터(620)에 기초하여 추천 기능을 식별한다. 추천 기능을 식별하는 구체적인 방법에 관해서는 후술한다.
세션들 사이의 유사도가 산출되면 각 세션들의 관계가 다이어그램 상에 표현될 수 있는 바, 이하 이러한 예시에 관해 설명한다.
도 8은 복수의 세션 사이의 유사도에 기반한 다이어그램의 예시도이다.
도 1, 도 7 및 도 8에 도시된 바와 같이, 복수의 세션들이 유사도에 기반하여 평면 상에 다이어그램(700)으로 도시될 수 있다. 다이어그램(700)에서 각 도트는 각 세션에 해당하고, 두 도트 사이의 거리는 두 대응 세션 사이의 유사도에 해당한다. 두 도트 사이의 거리가 가까울수록 두 대응 세션 사이의 유사도는 높으며, 두 도트 사이의 거리가 멀수록 두 대응 세션 사이의 유사도는 낮다. 본 다이어그램(700)은 세션들 간의 유사도를 설명하기 위해 개략적으로 표현한 것으로서, 유사도에 정확히 대응하는 거리로 표현되어 있지 않음을 밝힌다.
세션 #A를 기준으로 하면, 문턱값 이상의 유사도를 나타내는 세션 #C, #D, #F는 동일한 제1사용패턴 그룹(710)에 속하며, 문턱값 미만의 유사도를 나타내는 세션 #B, #E는 제1사용패턴 그룹(710)에 속하지 않는다. 한편, 세션 #B를 기준으로 하는 제2사용패턴 그룹(720)에는 세션 #B, #C, #E, #F가 속한다. 세션 #C, #F는 제1사용패턴 그룹(710) 및 제2사용패턴 그룹(720)에 공통적으로 속한다. 즉, 어느 세션이 어느 사용패턴 그룹(710, 720)에 속하는지는, 기준이 되는 세션에 대한 유사도가 문턱값 이상인지 여부에 대응한다.
앞서 설명한 바와 같이, 식별된 단일 세션에 포함되거나 또는 식별된 사용패턴 그룹에 포함되는 복수의 단위 데이터(620)가 식별되면, 전자장치(1)는 획득한 복수의 단위 데이터(620)에 기초하여 추천 기능을 식별한다. 단위 데이터(620)는 어플리케이션의 실행 기록과, 외부장치(100, 200, 300)가 제공하는 기능의 수행 기록을 포함한다. 외부장치(100, 200, 300)가 제공하는 기능은, 외부장치(100, 200, 300)에 마련된 프로세서(70) 등의 하드웨어 또는 외부장치(100, 200, 300)에 설치된 소프트웨어 등에 의해 지원되며, 사용자에 의해 조정 가능하게 마련된 제반 기능을 지칭한다. 예를 들면, 본 기능은, 외부장치(100, 200, 300)에 표시되는 영상의 화질 모드(일반 모드, 영화 모드, 읽기 모드, 심야 모드 등), 재생되는 오디오의 음장 모드(이퀄라이저의 다양한 설정 프리셋의 선택, 다양한 음장 옵션의 선택 등), 재생되는 오디오의 출력 모드(외부장치(100, 200, 300)의 내장 스피커로 출력, 외부장치(100, 200, 300)에 연결된 외부 스피커장치로 출력 등), 데이터를 송수신하기 위해 사용되는 통신 규격(HDMI, DisplayPort, 와이파이, 블루투스 등), 영상의 재생 상태에 관련된 재생 모드(빠른 재생 모드, 느린 재생 모드, 자막 표시 등) 등, 외부장치(100, 200, 300)가 지원할 수 있는 다양한 종류의 기능이 될 수 있다.
전자장치(1)는 추천 기능이 식별되면, 사용자를 구분하지 않고, 추천 기능에 관한 안내를 복수의 외부장치(100, 200, 300)에 일괄적으로 전송할 수 있다. 또는, 설계 방식에 따라서는, 전자장치(1)가 어느 한 외부장치(100, 200, 300)의 사용자를 특정하여 특정된 사용자에 대한 추천 기능을 식별하고, 식별된 추천 기능을 특정된 사용자의 외부장치(100, 200, 300)에 전송하는 것도 가능하다. 이와 관한 설명은 후술한다.
추천 기능의 식별 방법은 다양한 예시가 가능하다. 전자장치(1)는 획득한 복수의 단위 데이터(620)에 기록된 복수의 기능 중에서, 사용 빈도가 가장 높은 기능을 추천 기능으로 선택할 수 있다. 예를 들어, 지정된 어플리케이션이 스트리밍 영상을 제공하는 어플리케이션이라고 할 때, 영상의 화질 모드를 영화 모드로 변경하는 기능의 사용 빈도가 가장 높게 나타났다면, 전자장치(1)는 영상의 화질 모드를 영화 모드로 변경하는 기능을 추천 기능으로 식별한다.
또는, 전자장치(1)는 획득한 복수의 단위 데이터(620)에 기록된 복수의 기능 중에서, 사용 빈도가 소정의 문턱값을 초과하는 복수의 기능을 추천 기능으로 선택할 수 있다. 예를 들어, 스트리밍 영상을 제공하는 어플리케이션에 대해, 영상의 화질 모드를 영화 모드로 변경하는 기능의 사용 빈도와, 오디오의 출력을 외부 스피커로 변경하는 기능의 사용 빈도가 상기한 문턱값을 초과하는 것으로 나타났다면, 전자장치(1)는 해당 두 기능을 추천 기능으로 식별한다.
또는, 전자장치(1)는 추천 기능을 제공하고자 특정된 외부장치(100, 200, 300)에서 사용자의 사용 행태 데이터에 기초하여 추천 기능을 식별할 수도 있는 바, 이하 이러한 실시예에 관해 설명한다.
도 9는 전자장치가 특정 외부장치에 추천 기능을 안내하는 원리를 나타내는 예시도이다.
도 9에 도시된 바와 같이, 예를 들어, 특정 외부장치(100)의 특정 사용자가 어느 한 어플리케이션을 지정하면, 전자장치(1)는 해당 사용자에 의해 지정된 어플리케이션을 기준으로, 식별된 복수의 기능을 사용빈도 순으로 배열한 기능 리스트(810)를 작성할 수 있다. 복수의 기능을 식별하는 방법에 관해서는 앞선 실시예에서 설명한 바와 같다. 본 기능 리스트(810)는 실시예를 간결하게 나타내기 위해 표현된 것으로서, 실제로 전자장치(1)가 이러한 리스트(810)를 작성하는 것으로 한정되지는 않는다. 본 기능 리스트(810)는, 사용빈도 순서에 따라서, 예를 들어 제1기능, 제2기능, 제3기능, 제4기능을 나타낸다.
전자장치(1)는 기능 리스트(810)에 있는 복수의 기능 중 하나 이상을 해당 사용자의 외부장치(100)에 추천할 수 있다. 여기서, 추천 방식은 여러 가지 형태가 있다. 한 가지 예시로서, 전자장치(1)는 기능 리스트(810)에 있는 복수의 기능 모두를 나타내는 정보를 외부장치(100)에 전송할 수 있다. 또는, 전자장치(1)는 기능 리스트(810)에 있는 복수의 기능 중에서 사용빈도가 상위인 N개(N은 자연수)의 기능들, 예를 들면 제1기능, 제2기능 및 제3기능(본 실시예의 경우 N=3)을 나타내는 정보를 외부장치(100)에 전송할 수 있다. 또는, 전자장치(1)는 기능 리스트(810)에 있는 복수의 기능 중에서 사용빈도가 최상위인 하나의 기능, 예를 들면 제1기능을 나타내는 정보를 외부장치(100)에 전송할 수 있다.
여기서, 전자장치(1)는 기능 리스트(810)의 복수의 기능과, 특정 사용자의 외부장치(100)에서 획득한 사용 행태 데이터(820)에 기록된 하나 이상의 기능을 비교하여, 양자간에 중복이 있는지 여부를 식별한다. 전자장치(1)는 기능 리스트(810)의 사용빈도가 높은 기능이 사용자의 사용 행태 데이터(820)에 기록되어 있으면(즉, 양자간에 중복된 기능이면), 해당 기능을 제외하고 그 다음 사용빈도를 가진 기능을 추천 기능으로 식별한다. 예를 들어, 기능 리스트(810)에서 사용빈도가 가장 높은 제1기능이 외부장치(100)의 사용 행태 데이터(820)에 있다고 식별되면, 전자장치(1)는 기능 리스트(810)에서 제1기능 다음으로 사용빈도가 높고 사용 행태 데이터(820)에 없는 제2기능을 추천 기능으로 식별한다(즉, 해당 사용자가 이미 사용하고 있지 않은 기능을 추천 기능으로 식별함).
이하, 외부장치(100)에서 추천 기능을 안내하는 실시예에 관해 설명한다.
도 10은 외부장치가 추천 기능을 안내하는 UI를 표시하는 예시도이다.
도 9 및 도 10에 도시된 바와 같이, 외부장치(100)는 전자장치(1)로부터 추천 기능을 나타내는 정보를 수신하면, 수신된 정보에 기초하여 추천 기능을 안내하는 UI(910)를 표시한다. 본 UI(910)는 추천 기능을 안내하는 메시지와, 추천 기능을 설정하는 옵션을 제공한다. 외부장치(100)는 수신된 정보를 식별하는 시점에서 UI(910)를 표시할 수도 있고, 앞선 실시예에서 설명한 바와 같은 관심 대상의 어플리케이션이 실행될 때에 UI(910)를 표시할 수도 있다.
외부장치(100)는 관심 대상의 어플리케이션의 실행 화면(920)을 표시할 때에, UI(910)를 어플리케이션의 실행 화면(920)과 함께 표시한다. 외부장치(100)는 어플리케이션의 실행 화면(920) 및 UI(910)를 서로 겹치지 않게 표시할 수도 있고, UI(910)를 어플리케이션의 실행 화면(920) 상에 오버레이시켜 표시할 수도 있다.
이로써, 외부장치(100)는 사용자가 관심 대상의 어플리케이션을 실행할 때에, 해당 어플리케이션과 관련하여 유용한 기능을 사용자에게 안내할 수 있다.
이하, 전자장치(1)의 구체적인 동작 시퀀스에 관해 설명한다.
도 11은 전자장치가 추천 기능을 식별하는 과정을 나타내는 플로우차트이다.
도 1 및 도 11에 도시된 바와 같이, 하기 동작은 전자장치(1)의 프로세서(70)에 의해 수행된다.
1010 단계에서 전자장치(1)는 복수의 어플리케이션 중 관심 대상 어플리케이션을 선정한다. 관심 대상 어플리케이션은, 전자장치(1) 또는 외부장치(100, 200, 300) 중 어느 곳에 의해서도 선정될 수 있다.
1020 단계에서 전자장치(1)는 복수의 외부장치(100, 200, 300)의 사용자에 의한, 어플리케이션들 및 기능들에 관한 복수의 사용 행태 데이터를 각기 획득한다. 전자장치(1)는 앞서 설명한 바와 같은 정책정보에 동의한 사용자의 외부장치(100, 200, 300)로부터 사용 행태 데이터를 획득한다.
1030 단계에서 전자장치(1)는 획득한 사용 행태 데이터로부터, 관심 대상 어플리케이션의 실행 시점에 따라서 정의된 구간 범위에 대응하는 복수의 연관 정보를 추출한다. 연관 정보는, 사용 행태 데이터의 전체 시간 구간의 실행 기록 중에서, 관심 대상 어플리케이션의 실행 시점을 포함하는 소정 구간의 실행 기록을 포함할 수 있다. 또한, 연관 정보는 관심 대상 어플리케이션의 실행 시점에 대응하여 추출되므로, 관심 대상 어플리케이션의 실행 회수에 대응하는 수의 연관 정보가 사용 행태 데이터로부터 생성될 수 있다.
1040 단계에서 전자장치(1)는 추출된 연관 정보에서, 관심 대상 어플리케이션과 관련된 각 어플리케이션의 복수의 사용 패턴을 식별한다. 예를 들면, 사용 패턴은, 관심 대상 어플리케이션이 마지막으로 실행되기까지 타 어플리케이션들이 실행된 패턴을 나타낸다.
1050 단계에서 전자장치(1)는 복수의 사용 패턴 중 사용빈도가 가장 높은 사용 패턴과, 이와 유사도가 높은 하나 이상의 사용 패턴을 포함하는 사용 패턴 그룹을 식별한다.
1060 단계에서 전자장치(1)는 식별된 사용 패턴 그룹에 대응하는 연관 정보를 식별한다. 전자장치(1)는 식별된 사용 패턴 그룹에 포함된 사용 패턴을 나타내는 연관 정보를 식별한다.
1070 단계에서 전자장치(1)는 식별된 연관 정보에서 사용 빈도가 높은 기능을 식별하여, 식별된 기능을 외부장치(100, 200, 300)에게 추천한다. 전자장치(1)는 식별된 연관 정보에 기록된 기능들 중에서, 소정 순위보다 높은 하나 이상의 기능을 외부장치(100, 200, 300)에게 추천한다.
이상 실시예들에서 설명한 바와 같은 장치의 동작은, 해당 장치에 탑재된 인공지능에 의해 수행될 수 있다. 인공지능은 기계 학습 알고리즘을 활용하여 다양한 제반 시스템에 적용될 수 있다. 인공지능 시스템은 인간 수준 내지는 인간 수준에 버금가는 지능을 구현하는 컴퓨터 시스템으로서, 기계, 장치 또는 시스템이 자율적으로 학습하고 판단하며, 사용 경험의 누적에 기반하여 인식률 및 판단 정확도가 향상되는 시스템이다. 인공지능 기술은 입력되는 데이터들의 특징을 스스로 분류하고 학습하는 알고리즘을 이용한 기계학습 기술 및 알고리즘을 활용하여, 인간의 두뇌의 인지, 판단 등의 기능을 모사하는 요소 기술들로 구성된다.
요소 기술들은, 예를 들면 인간의 언어와 문자를 인식하는 언어적 이해 기술, 사물을 인간의 시각처럼 인식하는 시각적 이해 기술, 정보를 판단하여 논리적으로 추론하고 예측하는 추론 및 예측 기술, 인간의 경험 정보를 지식 데이터로 처리하는 지식 표현 기술, 차량의 자율 주행이나 로봇의 움직임을 제어하는 동작 제어 기술 중 적어도 어느 하나를 포함한다.
여기서, 언어적인 이해는 인간의 언어 또는 문자를 인식하고 응용 처리하는 기술로서, 자연어의 처리, 기계 번역, 대화 시스템, 질의 응답, 음성 인식 및 합성 등을 포함한다.
추론 예측은 정보를 판단하여 논리적으로 예측하는 기술로서, 지식 및 확률 기반 추론, 최적화 예측, 선호 기반 계획, 추천 등을 포함한다.
지식 표현은 인간의 경험 정보를 지식 데이터로 자동화 처리하는 기술로서, 데이터의 생성 및 분류와 같은 지식 구축, 데이터의 활용과 같은 지식 관리 등을 포함한다.
본 발명의 예시적 실시예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이러한 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 예를 들어, 컴퓨터 판독 가능 매체는 삭제 가능 또는 재기록 가능 여부와 상관없이, USB 메모리장치와 같은 비휘발성 저장 장치, 또는 예를 들어 RAM, ROM, 플래시메모리, 메모리 칩, 집적 회로와 같은 메모리, 또는 예를 들어 CD, DVD, 자기 디스크 또는 자기 테이프 등과 같은 광학 또는 자기적으로 기록 가능함과 동시에 기계(예를 들어, 컴퓨터)로 읽을 수 있는 저장 매체에 저장될 수 있다. 이동 단말 내에 포함될 수 있는 메모리는 본 발명의 실시 예들을 구현하는 지시들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적합한 기계로 읽을 수 있는 저장 매체의 한 예임을 알 수 있을 것이다. 본 저장 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어의 기술 분야에서 숙련된 기술자에게 공지되어 사용 가능한 것일 수도 있다. 또는, 본 컴퓨터 프로그램 명령은 컴퓨터 프로그램 프로덕트에 의해 구현될 수도 있다.
1 : 전자장치
100, 200, 300 : 외부장치

Claims (15)

  1. 전자장치에 있어서,
    통신회로와,
    상기 통신회로를 통하여 복수의 사용자의 외부장치로부터, 상기 복수의 외부장치에서 실행되는 복수의 어플리케이션 및 상기 각 외부장치에 의해 제공되는 복수의 기능에 관한 사용 행태 데이터를 획득하고,
    상기 획득된 사용 행태 데이터에 기초하여, 상기 복수의 기능 중 상기 어플리케이션의 실행 시점에 따라 정의된 구간 범위 내에서 수행된 하나 이상의 기능을 나타내는 연관 정보를 획득하고,
    상기 획득된 연관 정보에 기초하여, 상기 외부장치에서 실행되는 어플리케이션에 대응하는 상기 하나 이상의 기능의 추천 동작을 수행하는 프로세서를 포함하는 전자장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 연관 정보가 나타내는 하나 이상의 기능 중 사용 빈도가 높은 기능을 식별하고,
    지정된 상기 외부장치에 대해 상기 사용 빈도가 높다고 식별된 기능의 상기 추천 동작을 수행하는 전자장치.
  3. 제2항에 있어서,
    상기 프로세서는,
    상기 식별된 사용 빈도가 높은 기능 중, 상기 지정된 외부장치의 상기 사용 행태 데이터에서 사용된 것으로 나타나는 하나 이상의 기능과 중복되지 않는 기능의 상기 추천 동작을 수행하는 전자장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 획득된 사용 행태 데이터에 기초하여 상기 각 어플리케이션의 복수의 사용 패턴을 식별하고,
    상기 식별된 복수의 사용 패턴 중에서 사용 빈도가 가장 높은 사용 패턴에 대응하는 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별하는 전자장치.
  5. 제4항에 있어서,
    상기 프로세서는,
    상기 사용 빈도가 가장 높은 사용 패턴을 나타내는 상기 사용 행태 데이터에서, 사용 빈도가 높은 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별하는 전자장치.
  6. 제4항에 있어서,
    상기 복수의 사용 패턴은, 상기 정의된 구간 범위 내에서 상기 추천을 위해 지정된 어플리케이션이 실행될 때까지의 다른 어플리케이션의 실행 패턴을 포함하는 전자장치.
  7. 제4항에 있어서,
    상기 프로세서는,
    상기 식별된 복수의 사용 패턴 중에서, 상기 사용 빈도가 가장 높은 상기 사용 패턴과 유사도가 높은 하나 이상의 사용 패턴을 포함하는 사용 패턴 그룹을 식별하고,
    상기 식별된 사용 패턴 그룹 내 사용 패턴들에 대응하는 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별하는 전자장치.
  8. 제7항에 있어서,
    상기 프로세서는,
    상기 사용 패턴 그룹 내의 각 사용 패턴을 나타내는 상기 사용 행태 데이터에서, 사용 빈도가 높은 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별하는 전자장치.
  9. 제6항에 있어서,
    상기 프로세서는,
    상기 사용 행태 데이터의 전체 구간 중에서, 상기 지정된 어플리케이션의 실행 시점 이전의 소정의 제1시점부터 상기 지정된 어플리케이션이 종료되는 제2시점까지의 구간을 상기 구간 범위로 식별하는 전자장치.
  10. 전자장치의 제어방법에 있어서,
    복수의 사용자의 외부장치로부터, 상기 복수의 외부장치에서 실행되는 복수의 어플리케이션 및 상기 각 외부장치에 의해 제공되는 복수의 기능에 관한 사용 행태 데이터를 획득하는 단계와,
    상기 획득된 사용 행태 데이터에 기초하여, 상기 복수의 기능 중 상기 어플리케이션의 실행 시점에 따라 정의된 구간 범위 내에서 수행된 하나 이상의 기능을 나타내는 연관 정보를 획득하는 단계와,
    상기 획득된 연관 정보에 기초하여, 상기 외부장치에서 실행되는 어플리케이션에 대응하는 상기 하나 이상의 기능의 추천 동작을 수행하는 단계를 포함하는 전자장치의 제어방법.
  11. 제10항에 있어서,
    상기 추천 동작을 수행하는 단계는,
    상기 연관 정보가 나타내는 상기 하나 이상의 기능 중 사용 빈도가 높은 기능을 식별하는 단계와,
    지정된 상기 외부장치에 대해 상기 사용 빈도가 높다고 식별된 기능의 상기 추천 동작을 수행하는 단계를 포함하는 전자장치의 제어방법.
  12. 제11항에 있어서,
    상기 추천 동작을 수행하는 단계는,
    상기 식별된 사용 빈도가 높은 기능 중, 상기 지정된 외부장치의 상기 사용 행태 데이터에서 사용된 것으로 나타나는 하나 이상의 기능과 중복되지 않는 기능의 상기 추천 동작을 수행하는 단계를 포함하는 전자장치의 제어방법.
  13. 제10항에 있어서,
    상기 추천 동작을 수행하는 단계는,
    상기 획득된 사용 행태 데이터에 기초하여 상기 각 어플리케이션의 복수의 사용 패턴을 식별하는 단계와,
    상기 식별된 복수의 사용 패턴 중에서 사용 빈도가 가장 높은 사용 패턴에 대응하는 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별하는 단계를 포함하는 전자장치의 제어방법.
  14. 제13항에 있어서,
    상기 사용 빈도가 가장 높은 사용 패턴을 나타내는 상기 사용 행태 데이터에서, 사용 빈도가 높은 기능을, 상기 추천 동작을 수행할 상기 적어도 하나의 기능으로 식별하는 전자장치의 제어방법.
  15. 제13항에 있어서,
    상기 복수의 사용 패턴은, 상기 정의된 구간 범위 내에서 상기 추천을 위해 지정된 어플리케이션이 실행될 때까지의 다른 어플리케이션의 실행 패턴을 포함하는 전자장치의 제어방법.
KR1020210155541A 2021-11-12 2021-11-12 전자장치 및 그 제어방법 KR20230069475A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210155541A KR20230069475A (ko) 2021-11-12 2021-11-12 전자장치 및 그 제어방법
PCT/KR2022/017437 WO2023085723A1 (ko) 2021-11-12 2022-11-08 전자장치 및 그 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210155541A KR20230069475A (ko) 2021-11-12 2021-11-12 전자장치 및 그 제어방법

Publications (1)

Publication Number Publication Date
KR20230069475A true KR20230069475A (ko) 2023-05-19

Family

ID=86336108

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210155541A KR20230069475A (ko) 2021-11-12 2021-11-12 전자장치 및 그 제어방법

Country Status (2)

Country Link
KR (1) KR20230069475A (ko)
WO (1) WO2023085723A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130085886A1 (en) * 2011-09-29 2013-04-04 Symantec Corporation Method and system for automatic application recommendation
KR102186455B1 (ko) * 2013-08-13 2020-12-03 삼성전자주식회사 사용자 맞춤 기능 추천 방법 및 이를 실행하기 위한 모바일 디바이스
KR102348124B1 (ko) * 2017-11-07 2022-01-07 현대자동차주식회사 차량의 기능 추천 장치 및 방법
KR102064489B1 (ko) * 2019-01-14 2020-02-11 주식회사 엘렉시 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법
KR20210052912A (ko) * 2019-11-01 2021-05-11 라인플러스 주식회사 앱 사용 패턴과 대화 분석을 통한 앱 기능 바로가기 추천 방법 및 장치

Also Published As

Publication number Publication date
WO2023085723A1 (ko) 2023-05-19

Similar Documents

Publication Publication Date Title
JP7470137B2 (ja) 視覚的特徴をサウンドタグに相関させることによるビデオタグ付け
US11166066B2 (en) Display apparatus, content recognizing method thereof, and non-transitory computer readable recording medium
KR102174470B1 (ko) 영상 저장 시스템 및 방법
KR102668429B1 (ko) 전자장치 및 그 제어방법
US10834452B2 (en) Dynamic live feed recommendation on the basis of user real time reaction to a live feed
KR20190062030A (ko) 영상 표시 장치 및 그 동작 방법
US11587571B2 (en) Electronic apparatus and control method thereof
KR20210047112A (ko) 전자장치 및 그 제어방법
KR20230069475A (ko) 전자장치 및 그 제어방법
US20210027743A1 (en) Display apparatus and control method thereof
KR20210042442A (ko) 전자장치 및 그 제어방법
KR20230032492A (ko) 전자장치 및 그 제어방법
US20220165296A1 (en) Electronic apparatus and control method thereof
EP4227940A1 (en) Electronic device and method for controlling same
EP4191577A1 (en) Electronic device and control method therefor
US20210389819A1 (en) Display apparatus and control method thereof
US20220139392A1 (en) Electronic apparatus and control method thereof
US11747779B2 (en) Electronic apparatus and control method thereof
US20220334788A1 (en) Electronic apparatus and control method thereof
CN116158081A (zh) 显示装置及其控制方法
KR20220041413A (ko) 전자장치 및 그 제어방법
KR20240012453A (ko) 영상 편집 장치 및 영상 편집 장치의 동작 방법
KR20220069611A (ko) 전자장치 및 그 제어방법
KR20190122379A (ko) 전자장치 및 그 제어방법