KR20190007513A - 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법 - Google Patents

앱 추천 시스템, 이를 위한 사용자 단말기 및 방법 Download PDF

Info

Publication number
KR20190007513A
KR20190007513A KR1020190004646A KR20190004646A KR20190007513A KR 20190007513 A KR20190007513 A KR 20190007513A KR 1020190004646 A KR1020190004646 A KR 1020190004646A KR 20190004646 A KR20190004646 A KR 20190004646A KR 20190007513 A KR20190007513 A KR 20190007513A
Authority
KR
South Korea
Prior art keywords
app
time
recommendation
application
sensor information
Prior art date
Application number
KR1020190004646A
Other languages
English (en)
Other versions
KR102064489B1 (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 KR1020190004646A priority Critical patent/KR102064489B1/ko
Publication of KR20190007513A publication Critical patent/KR20190007513A/ko
Application granted granted Critical
Publication of KR102064489B1 publication Critical patent/KR102064489B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • G06Q30/0271Personalized advertisement

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Mathematical Optimization (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Algebra (AREA)
  • Operations Research (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 기술의 일 실시예에 의한 앱 추천 서비스 시스템은 통신망을 통해 앱 추천 서비스 서버와 접속되는 사용자 단말기를 포함하는 앱 추천 서비스 시스템으로서, 사용자 단말기는, 복수의 센서, 복수의 센서에서 제공되는 센서정보로부터 센서정보벡터의 시계열 데이터를 생성하는 센서정보 처리부,센서정보벡터의 시계열 데이터를 입력으로 한 비지도 학습 방법을 이용하여 지정된 개수의 상황을 추정하며, 지정된 개수의 상황 각각에서 실행된 앱 및 실행된 앱의 빈도를 앱 추천 테이블로 생성하고, 센서정보벡터의 시계열 데이터에 기초하여 지정된 개수의 상황 중 특정 상황일 확률을 추정하는 상황 추정부, 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 지정된 개수에 대응하는 차원을 갖는 벡터의 시계열 데이터와, 특정 앱이 실행되기 전 선행하는 이벤트에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 학습하고, 추정한 앱을 실행시키려는 순간일 확률값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단하되, 선행하는 이벤트는 사용자 단말기가 들어 올져지는 동작을 감지한 시점, 또는 사용자 단말기의 화면이 켜지는 상태를 감지하는 시점, 기 설정된 앱이 실행되는 시점을 포함하도록 구성되는 시점 추정부 및, 지정된 개수의 상황 중 특정 상황이 인지됨에 따라 앱 추천 테이블을 참조하여 인지된 특정 상황에 대응하는 적어도 하나의 실행 후보 앱을 검출하고, 앱 추천 시점으로 판단된 시점에 적어도 하나의 실행 후보 앱을 사용자 인터페이스를 통해 출력하도록 구성되는 앱 추천부를 포함하도록 구성될 수 있다.

Description

앱 추천 시스템, 이를 위한 사용자 단말기 및 방법{System for Recommendation of APP, User Terminal and Method Therefor}
본 기술은 통신 단말기를 통한 서비스 기술에 관한 것으로, 보다 구체적으로는 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법에 관한 것이다.
앱(App)은 스마트폰 어플리케이션을 약칭한 것으로, 하루에도 수백 개의 새로운 앱이 등장할 정도로 그 숫자는 빠르게 늘어나고 있다.
대표적인 앱 거래 사이트인 구글 플레이와 애플 앱스토어에 등록된 앱 개수가 260만개에 다다를 만큼 앱 종류는 다양하고 그 수 또한 증가하고 있다.
미디어조사 전문 업체 닐슨에 따르면 2015년 5월 기준으로, 스마트폰 사용자들이 평균 약 122개의 앱을 스마트폰에 설치하고 있는 것으로 조사되었다.
이와 같이, 다양하고 많은 수의 앱이 스마트폰에 설치됨에 따라, 사용자가 특정 상황에 필요한 앱을 찾아 실행시키는 데 많은 노력 및 시간이 필요하게 되었다.
이를 위해 스마트폰 제조사, 통신사 등은 앱 사용 빈도순, 알파벳 순, 서비스 종류 등의 기준으로 앱을 모아 놓은 폴더 사용 등, 사용자에게 편리한 방법으로 앱 실행 환경을 제공하고자 시도하고 있으나, 스마트폰에 설치된 앱이 많아짐에 따라 앱을 찾고 실행시키는 작업의 불편함은 여전히 해소하기 어렵다.
더욱이, 시력이 약화되고 손가락 터치의 부정확성이 많아지는 장년 이상의 연령층에서는 앱 탐색 및 실행에 상대적으로 더욱 큰 어려움을 느낄 수 있다. 이에 따라, 장년 이상의 연령층에서는 이미 설치된 앱만을 이용하는 경우가 많으며, 실제 구매력이 풍부한 장년층에서 스마트폰 및 앱 구매 욕구가 감소하는 현상이 있다.
이러한 문제점들을 해결하기 위해, 주어진 조건을 만족하는 경우 자동으로 특정 앱 또는 웹 서비스를 실행시키거나, 특정 앱의 정해진 동작을 제어하는 서비스가 제안되고 있다.
대표적인 예로, IFTTT(If This Then That) 서비스, 마이크로소프트 플로우(Flow) 서비스, 야후 파이프(Pipes) 서비스, 소니의 스마트 커넥트(Smart connect) 서비스 등을 들 수 있다.
그러나, 이 서비스들은 상황에 맞는 앱을 추천해 주는 서비스가 아니다. 또한, 이러한 서비스를 지원하기 위한 조건을 만족시키는 요건이 너무 엄격하거나 일률적이어서 실제 사용률이 저조한 현실이다. 예를 들어, "아침에 잠을 깨면, 이메일 앱을 실행시켜라"와 같은 간단한 조건문의 경우, "아침에 잠을 깨면"이라는 조건은 "아침 6시가 되면", "아침 6시 알람 중지 버튼이 눌리면" 등과 같이 기계적으로 판단하게 되는데, 이는 사용자가 실제 원하는 조건과는 많은 차이가 있을 수 밖에 없다.
사용자의 상황에 기초하여 정보 또는 서비스를 제공하는 기술로서 하기 특허문헌 1 내지 3을 들 수 있다.
(특허문헌 1) KR공개특허공보 제10-2007-0056673호
(특허문헌 2) KR공개특허공보 제10-2015-0071544호
(특허문헌 3) KR등록특허공보 제10-1579585호
특허문헌 1에는 차 내부, 옥외, 옥내와 같은 서로 다른 장소의 물리적 특성에 무관하게 상황인지 기반의 이동 서비스를 제공하는 단말기 및 그 방법이 개시되어 있다. 특허문헌 1은 규칙기반 시스템을 개시하고 있으며 "학습"을 기반으로 하지 않기 때문에 서비스를 제공하기 위해 유의미한 양의 정보를 미리 수집하고 수집된 정보를 바탕으로 학습이 아닌 규칙 기반으로 상황을 인지한다. 예를 들어, 특허문헌 1의 상황인지부(120)는 미리 참조신호들의 패턴을 저장하고 있거나 사용자가 다양한 상황에 대응되는 참조신호들의 패턴 데이터를 입력해야 하는 등 이는 학습을 기반으로 하고 있지 않을 뿐 아니라 실제로는 구현 가능성이 높지 않다. 또한, 특허문헌 1의 사용자 의도 설정부(130)는 사용자의 의도를 규정하기 위하여, 사용자에 의해 미리 입력되어 저장된 정보를 참조하는 등 학습을 기반으로 하지 않고 사용자로부터 제공되는 정보를 이용한다.
특허문헌 2는 잠금상태에서 사용자의 상황에 따라 정보를 제공하는 방법을 개시하고 있다. 특허문헌 2를 구현하기 위해서는 특허문헌 2에 첨부된 도 6과 같은 정보 또는 테이블이 미리 구현되어 있어야 한다. 그리고, 사용자가 미리 규칙을 편집 해야 하기 때문에 불편할 뿐 아니라, 실제 사용에 있어서 각 상황에 해당하는 이벤트를 정의하는 것은 불가능하다.
특허문헌 3은 특정 상황을 미리 정해놓으면 그 상항의 지속 여부를 다양한 센서 입력으로부터 판단하여, 지속되지 않을 경우 사용자에게 피드백 서비스를 제공하는 방법을 개시하고 있다.
특허문헌 3에서는 정해진 개수의 상황에 맞춰 인식부가 학습되어야 시스템이 제대로 동작할 수 있으므로, 정해진 개수의 상황이 미리 구축되어야 한다.
또한, 특허문헌 3의 단위 행동 인식부(133) 또는 대표 행동 인식부(134)는 각 행동을 미리 정하고 행동을 모아 미리 학습하거나 갱신부(135)를 통해 학습 해야 한다. 그리고 갱신부(135)는 대표 행동이나 단위 행동이 인식되면 ‘이 내용을 새로 학습시키겠습니까?’와 같이 사용자에게 학습 여부를 질의하고, 사용자의 답변 결과에 기초하여 갱신 여부를 판단하는 등 사용자의 개입이 필수적이다.
이와 같이, 현재 공개된 상황인지를 이용한 서비스는 규칙기반 방법이거나, 규칙기반 방법이 아니더라도 학습 과정에 사용자의 불가피한 개입이 필요하여 사용자의 불편을 초래하는 문제점이 있다.
본 기술의 실시예는 사용자의 상황을 인지하여 그에 대응하는 앱을 추천해 줄 수 있는 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법을 제공할 수 있다.
본 기술의 일 실시예에 의한 앱 추천 시스템은 통신망을 통해 앱 추천 서비스 서버와 접속되는 사용자 단말기를 포함하는 앱 추천 서비스 시스템으로서, 상기 사용자 단말기는, 복수의 센서; 상기 복수의 센서에서 제공되는 센서정보로부터 센서정보벡터의 시계열 데이터를 생성하는 센서정보 처리부; 상기 센서정보벡터의 시계열 데이터를 입력으로 한 비지도 학습 방법을 이용하여 지정된 개수의 상황을 추정하며, 상기 지정된 개수의 상황 각각에서 실행된 앱 및 상기 실행된 앱의 빈도를 앱 추천 테이블로 생성하고, 상기 센서정보벡터의 시계열 데이터에 기초하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하는 상황 추정부; 상기 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 상기 지정된 개수에 대응하는 차원을 갖는 벡터의 시계열 데이터와, 특정 앱이 실행되기 전 선행하는 이벤트에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 학습하고, 추정한 상기 앱을 실행시키려는 순간일 확률값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단하되, 상기 선행하는 이벤트는 상기 사용자 단말기가 들어 올져지는 동작을 감지한 시점, 또는 상기 사용자 단말기의 화면이 켜지는 상태를 감지하는 시점, 기 설정된 앱이 실행되는 시점을 포함하도록 구성되는 시점 추정부; 및 상기 지정된 개수의 상황 중 특정 상황이 인지됨에 따라 상기 앱 추천 테이블을 참조하여 상기 인지된 특정 상황에 대응하는 적어도 하나의 실행 후보 앱을 검출하고, 상기 앱 추천 시점으로 판단된 시점에 상기 적어도 하나의 실행 후보 앱을 사용자 인터페이스를 통해 출력하도록 구성되는 앱 추천부;를 포함하도록 구성될 수 있다.
본 기술의 일 실시예에 의한 사용자 단말기는 복수의 센서; 상기 복수의 센서에서 제공되는 센서정보로부터 센서정보벡터의 시계열 데이터를 생성하는 센서정보 처리부; 상기 센서정보벡터의 시계열 데이터를 입력으로 한 비지도 학습 방법을 이용하여 지정된 개수의 상황을 추정하며, 상기 지정된 개수의 상황 각각에서 실행된 앱 및 상기 실행된 앱의 빈도를 앱 추천 테이블로 생성하고, 상기 센서정보벡터의 시계열 데이터에 기초하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하는 상황 추정부; 상기 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 상기 지정된 개수에 대응하는 차원을 갖는 벡터의 시계열 데이터와, 특정 앱이 실행되기 전 선행하는 이벤트에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 학습하고, 추정한 상기 앱을 실행시키려는 순간일 확률값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단하되, 상기 선행하는 이벤트는 상기 사용자 단말기가 들어 올져지는 동작을 감지한 시점, 또는 상기 사용자 단말기의 화면이 켜지는 상태를 감지하는 시점, 기 설정된 앱이 실행되는 시점을 포함하도록 구성되는 시점 추정부; 및 상기 지정된 개수의 상황 중 특정 상황이 인지됨에 따라 상기 앱 추천 테이블을 참조하여 상기 인지된 특정 상황에 대응하는 적어도 하나의 실행 후보 앱을 검출하고, 상기 앱 추천 시점으로 판단한 시점에 상기 적어도 하나의 실행 후보 앱을 사용자 인터페이스를 통해 출력하도록 구성되는 앱 추천부;를 포함하도록 구성될 수 있다.
본 기술의 일 실시예에 의한 앱 추천 서비스 방법은 복수의 센서를 구비하는 사용자 단말기에서의 앱 추천 서비스 방법으로서, 상기 사용자 단말기가 상기 복수의 센서에서 제공되는 센서정보로부터 생성된 센서정보벡터의 시계열 데이터를 입력으로 한 비지도 학습 방법을 이용하여 지정된 개수의 상황을 추정하도록 학습하고, 상기 지정된 개수의 상황 각각에 대한 적어도 하나의 실행 후보 앱을 테이블로 생성하고, 앱 추천 시점을 학습하는 훈련모드를 수행하는 단계; 및 상기 사용자 단말기가 상기 센서정보벡터의 시계열 데이터에 응답하여 상기 지정된 개수의 상황 중 특정 상황이 인지됨에 따라, 상기 테이블로부터 상기 특정 상황에 대응하는 적어도 하나의 실행 앱을 검출하고, 상기 센서정보벡터의 시계열 데이터에 응답하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 판단하여, 상기 앱 추천 시점으로 판단한 시점에 상기 검출한 적어도 하나의 실행 후보 앱을 사용자 인터페이스를 통해 출력하는 추천모드를 수행하는 단계;를 포함하고,상기 앱 추천 시점을 학습하는 단계는, 상기 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 상기 지정된 개수에 대응하는 차원을 갖는 벡터의 시계열 데이터와, 특정 앱이 실행되기 전 선행하는 이벤트에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 학습하는 단계를 포함하고, 상기 앱 추천 시점을 판단하는 단계는, 추정한 상기 앱을 실행시키려는 순간일 확률값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단하는 단계를 포함하며, 상기 선행하는 이벤트는 상기 사용자 단말기가 들어 올져지는 동작을 감지한 시점, 또는 상기 사용자 단말기의 화면이 켜지는 상태를 감지하는 시점, 기 설정된 앱이 실행되는 시점을 포함하도록 구성될 수 있다.
본 기술에 의하면, 사용자의 상황을 판단하여 사용자가 유사하거나 동일한 상황에서 사용해 왔던 앱, 또는 유사하거나 동일한 상황에서 다른 사용자들이 많이 사용한 앱을 추천해 줄 수 있다.
특히, 사용자의 어떠한 개입도 없이 사용자의 상황을 인지하고, 그에 대응하는 실행 후보 앱을 추천할 수 있으므로 편리성을 증대시킬 수 있다.
더욱이, 앱 추천 시점을 학습 및 판단하는 데 있어서, 단순히 센서 정보 벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 시계열 데이터에 더하여 특정 앱이 실행되기 전에 선행하는 이벤트를 고려할 수 있다.
그러므로, 시간 또는 공간에 따른 사용자의 앱 사용 패턴에 기초하여 사전에 결정지어진 시점이나 공간에서 앱을 추천하는 것이 아니라, 선행 이벤트에 기초하여 앱을 실행시키려는 순간일 확률을 실시간으로 반영할 수 있으므로 보다 정확한 시점에 앱을 추천할 수 있는 효과가 있다.
도 1은 일 실시예에 의한 앱 추천 시스템의 구성도이다.
도 2는 일 실시예에 의한 사용자 단말기의 구성도이다.
도 3은 일 실시예에 의한 앱 추천 테이블의 구성도이다.
도 4는 일 실시예에 의한 앱 추천 화면을 설명하기 위한 도면이다.
도 5 내지 도 7은 일 실시예에 의한 앱 추천 방법을 설명하기 위한 흐름도이다.
도 8은 일 실시예에 의한 앱 추천 서비스 서버의 구성도이다.
이하, 첨부된 도면을 참조하여 본 기술의 실시예를 보다 구체적으로 설명한다.
도 1은 일 실시예에 의한 앱 추천 시스템의 구성도이다.
도 1을 참조하면, 앱 추천 시스템(10)은 사용자 단말기(110) 및 앱 추천 서비스 서버(120)를 포함할 수 있다. 사용자 단말기(110)와 앱 추천 서비스 서버(120)는 통신망(130)을 통해 접속될 수 있다.
사용자 단말기(110)는 복수의 센서를 구비할 수 있다.
일 실시예에서, 복수의 센서에는 터치센서, GPS센서, 자이로 센서, 가속(모션)센서, 진동센서, 근접센서, 자석센서, 지자기 센서, 조도센서 등이 포함될 수 있으며, 사용자 단말기의 사양에 따라 추가적인 센서들이 더 구비될 수 있다.
사용자 단말기(110)는 복수의 센서에서 출력되는 정보로부터 센서정보벡터의 시계열 데이터를 생성하고, 이에 기초하여 상황을 추정할 수 있다.
일 실시예에서, 사용자 단말기(110)는 훈련모드 및 추천모드로 동작할 수 있다. 훈련모드는, 사용자 단말기(110)에 대한 복수(K개)의 상황을 추정하고 각 상황에 대응하는 적어도 하나의 실행 후보 앱을 결정하며, 실행 후보 앱을 추천할 시점을 추정(학습)하는 모드일 수 있다. 추천모드는, 사용자 단말기(110)의 상황이 기 추정된 복수(K개)의 상황 중 특정 상황일 확률을 추정하고, 추정된 특정 상황에 대응하여 기 결정되어 있는 적어도 하나의 실행 후보 앱을 검출하여, 추정(판단)된 추천 시점에 검출된 실행 후보 앱을 제시하는 모드일 수 있다. 추천모드에서 실제 앱의 실행 여부 및 어떤 앱이 실행되었는지는 앱 추천 시점 추정 및 상황별 실행 후보 앱을 결정하는 데 반영될 수 있다.
일 실시예에서, 사용자 단말기(110)는 훈련모드에서, 지정된 시간 동안 센서정보벡터의 시계열 데이터로부터 지정된 개수(K)의 상황을 추정할 수 있다. 또한, 사용자 단말기(110)는 추천모드에서, 센서정보벡터의 시계열 데이터로부터 미리 정해진 K개의 상황 중 특정 상황일 확률을 매시간 추정할 수 있다.
사용자 단말기(110)는 센서정보벡터의 시계열 데이터에 기초하여 앱 추천 시점을 추정(학습)할 수 있다. 일 실시예에서, 사용자 단말기(110)는 훈련모드에서, 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 K차원 벡터의 시계열 데이터와, 사용자가 특정 앱을 실행시키기 위해 선행처리하는 이벤트를 검출하고, 이에 기초하여 앱 추천 시점을 추정(판단)할 수 있다. 사용자 단말기(110)는 추천모드에서, 센서정보벡터의 시계열 데이터에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하고, 추정된 확률 값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단할 수 있다. 예를 들어, 사용자가 사용자 단말기(110)를 들어 올리는 동작을 감지한 시점, 또는 알람 기능이나 외부 버튼 등에 의해 화면이 켜지는 상태를 감지하는 시점 등이 사용자가 앱을 실행시키려는 순간이 될 수 있다.
사용자가 특정 앱을 실행시키기 위해 선행처리하는 이벤트는 예를 들어, 론처 앱(시작화면 앱)의 실행 또는 다른 앱의 실행일 수 있으나 이에 한정되지 않으며, 앱 추천 시점은 선행처리 이벤트 발생시점보다 기 설정된 시간 이전으로 추정될 수 있다.
사용자 단말기(110)는 추정된 K개의 상황 각각에 대하여 사용자가 실제 실행한 앱(들) 및 각 앱들의 실행 빈도를 앱 추천 테이블로 생성할 수 있다. 앱 추천 테이블은 사용자 단말기(110)에서 각 상황별로 앱이 실행될 때마다 업데이트될 수 있음은 물론이다.
사용자 단말기(110)는 추천모드에서, K개의 상황 중 특정 상황이 인지되는 경우 앱 추천 테이블을 참조하여 실행 후보 앱을 검출하고, 추정된 앱 추천 시점에 실행 후보 앱을 디스플레이할 수 있다.
이에 따라, 사용자는 실행 후보 앱 중에서 어느 하나를 선택하거나 이를 선택하지 않고 다른 앱을 선택하거나, 또는 아무 앱도 선택하지 않을 수 있으며, 사용자의 반응에 따라 앱 추천 시점 학습 및 앱 추천 테이블 업데이트가 수행될 수 있다.
일 실시예에서, 사용자 단말기(110)는 복수의 상황을 추정하기 위해 센서정보벡터의 시계열 데이터를 입력으로 한 비지도(Unsupervised Learning) 학습 방법을 이용할 수 있으며 특히 기대값 최대화(Expectation Maximization) 알고리즘을 사용할 수 있다. 상황 추정을 위해 비지도학습 방법을 이용함에 따라 사용자로부터 어떠한 사전정보도 제공받지 않고도 사용자 단말기(110)의 상황을 추정할 수 있다.
또한, 사용자 단말기(110)는 복수의 상황 중 특정 상황일 확률을 추정하기 위해 확률적 모델, 신경망 등을 추정 모델로 사용할 수 있다.
앱 추천 시점 학습을 위해서는 지도학습 방법 또는 강화학습 방법을 이용할 수 있다. 강화학습 방법을 이용하는 경우, 추정된 시점에 사용자가 앱을 실행시키지 않을 경우 그 순간은 앱 추천 시점에서 제외하도록 학습할 수 있다.
한편, 사용자 단말기(110)는 의미 있는, 즉 신뢰할 만한 통계치가 획득되는 동안은 상황 추정 및 추천 시점을 학습하는 훈련모드로 동작할 수 있고, 이후 의미 있는 데이터가 획득되면 추천모드로 동작할 수 있다.
일 실시예에서, 사용자 단말기(110)는 훈련모드에서 앱 추천 서비스 서버(120)로부터 초기 파라미터를 제공받아 앱 추천 서비스를 제공할 수 있다. 초기 파라미터는 다른 사용자의 상황에 따른 앱 추천 데이터일 수 있고, 바람직하게는 이들의 산술적 평균치로부터 생성된 데이터일 수 있다. 아울러, 사용자 단말기(110)에서 추정된 상황에 따른 앱 추천 데이터는 기 설정된 주기마다 앱 추천 서비스 서버(120)로 전송되어 다른 사용자 단말기에 대한 초기 파라미터를 결정하는 데 이용될 수 있다.
한편, 앱 추천 서비스 서버(120)는 앱 추천 서비스 이용자의 성별, 연령대, 직업군 등을 포함하는 사용자 정보에 기초하여 초기 파라미터를 세분화할 수 있다. 아울러, 초기 파라미터를 필요로 하는 사용자 단말기(110)의 사용자 정보에 맞는 초기 파라미터를 제공할 수 있다.
이와 같이, 본 기술에 의하면 센서정보벡터의 시계열 데이터에 기초하여 사용자 단말기(110)의 상황을 추정하고, 추정된 상황에서 실행될 수 있는 적어도 하나의 실행 후보 앱을 사용자에게 추천할 수 있다.
사용자 단말기(110)의 후보 상황은 시간에 따라 출력되는 센서정보에 의거하여 비지도 학습 방식으로 추정되고, 앱을 추천하는 시점은 사용자 단말기(110)에서 사용자가 앱을 실행시키기 위해 수행하는 이벤트로부터 추정되므로, 사용자가 앱 추천 서비스를 위해 어떠한 사전정보도 제공하는 불편함 없이 사용자의 상황에 맞는 앱을 추천할 수 있다.
일 실시예에서, 앱 추천 서비스 서버(120)는 상술한 앱 추천 서비스 기능을 어플리케이션 형태로 제작하여 사용자 단말기(110)로 배포할 수 있다.
도 2는 일 실시예에 의한 사용자 단말기의 구성도이다.
도 2를 참조하면, 사용자 단말기(20)는 컨트롤러(210), 통신모듈(220), 저장부(230), 사용자 인터페이스(UI, 240), 센서들(250), 센서정보 처리부(260), 상황 추정부(270), 시점 추정부(280) 및 앱 추천부(290)를 포함할 수 있다.
컨트롤러(210)는 사용자 단말기(20)의 전체적인 동작을 제어하는 프로세서일 수 있다.
통신모듈(220)은 사용자 단말기(20)가 통신망 또는 타 장치에 접속할 수 있는 환경을 제공할 수 있다.
저장부(230)는 주기억장치 및 보조기억장치를 포함할 수 있으며, 사용자 단말기(20)가 동작하는 데 필요한 프로그램, 제어 데이터, 응용 프로그램 등이 저장될 수 있다.
사용자 인터페이스(240)는 입력장치 및 출력장치를 포함할 수 있다. 입력장치를 통해서는 사용자로부터의 명령이 입력될 수 있다. 출력장치는 사용자 단말기(20)의 동작 상황, 명령 처리 상황, 동작 결과, 명령 처리 결과 등을 출력할 수 있다.
센서들(250)에는 터치센서, GPS센서, 자이로 센서, 가속(모션)센서, 진동센서, 근접센서, 자석센서, 지자기 센서, 조도센서 등이 포함될 수 있으며, 사용자 단말기의 사양에 따라 추가적인 센서들이 더 구비될 수 있다.
센서정보 처리부(260)는 복수(M)개의 센서들(250)로부터 제공되는 센서정보로부터 센서정보벡터를 생성할 수 있다. 이를 위해 센서정보 처리부(260)는 M개 센서 각각의 출력값을 전처리하고, 이로부터 센서정보벡터(MX1 벡터)를 생성할 수 있다. 일 실시예에서, 센서정보의 전처리는 정규화, 양자화 등이 될 수 있다. 아울러, 센서정보 처리부(260)는 복수 개의 센서들(250)의 출력정보를 시간에 따라 수신할 수 있으며, 이에 따라 센서정보벡터의 시계열 데이터를 생성할 수 있다.
상황 추정부(270)는 센서정보 처리부(260)에서 제공되는 센서정보벡터의 시계열 데이터에 기초하여 상황을 추정할 수 있다. 일 실시예에서, 상황 추정부(270)는 훈련모드에서, 지정된 시간 동안 센서정보벡터의 시계열 데이터로부터 지정된 개수(K)의 상황을 추정할 수 있다. 또한, 상황추정부(270)는 추천모드에서, 센서정보벡터의 시계열 데이터로부터 미리 정해진 K개의 상황 중 특정 상황일 확률을 추정할 수 있다.
일 실시예에 의한 훈련모드에서, 상황 추정부(270)는 K개의 상황을 추정하기 위하여 비지도(Unsupervised Learning) 학습 방법을 이용할 수 있으며 특히 기대값 최대화(Expectation Maximization) 알고리즘을 사용할 수 있다.
일 실시예에 의한 추천모드에서, 상황 추정부(270)는 기 설정된 시간 동안 센서정보벡터의 시계열 데이터를 입력으로 하고 K개의 출력을 가지는 확률적 모델, 신경망(예를 들어, Feedforward neural network) 등을 추정 모델로 사용하여 K개의 상황 중 특정 상황일 확률을 추정할 수 있다. 다른 실시예에서, 상황 추정부(270)는 시계열로 입력되는 센서정보벡터(MX1)를 입력으로 하되 이전 시간 상태에 대한 의존성이 있는 추정 모델, 예를 들어 확률적 모델, 신경망 등)을 특정 상황일 확률을 추정하기 위한 모델로 사용할 수 있다. 확률적 모델은 예를 들어 은닉 마르코프 모델(Hidden Markov Model)이 이용될 수 있다. 신경망은 예를 들어 순환형 신경망(Recurrent Neural Network), 제한 볼츠만 머신(Restricted Boltzmann Machine), 장단기 기억(Long Short-Term Memory; LSTM) 네트워크 등이 이용될 수 있다.
상황 추정부(270)는 K개의 상황을 추정하면서, 각각의 상황에서 사용자가 선택하여 실행시킨 앱을 실행 빈도에 따라 정렬하여 테이블화한 앱 추천 테이블을 저장부(230)에 저장할 수 있다. 앱 추천 테이블은 각 상황별로 앱이 실행될 때마다 업데이트될 수 있음은 물론이다.
도 3은 일 실시예에 의한 앱 추천 테이블의 구성도이다.
상황 추정부(270)에 의해 K개의 상황이 추정되며, 각 상황 별로 실행된 앱의 종류, 앱 종류 별 빈도수가 테이블화되어 저장될 수 있다. 예를 들어, 특정 상황(n)에서 SMS서비스 앱, 전화통화 앱, 채팅앱, 소셜 네트워크 서비스(SNS) 앱이 각각 59/100, 30/100, 7/100 4/100의 빈도수로 실행되었음을 알 수 있다.
시점 추정부(280)는 센서정보 처리부(260)로부터 제공되는 센서정보벡터의 시계열 데이터에 기초하여 앱 추천 시점을 추정할 수 있다.
일 실시예에 의한 훈련모드에서, 시점 추정부(280)는 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 K차원 벡터의 시계열 데이터와, 사용자가 특정 앱을 실행시키기 위해 선행처리하는 이벤트를 검출하고, 이에 기초하여 앱 추천 시점을 학습할 수 있다. 일 실시예에서, 시점 추정부(280)는 지도학습 방법 또는 강화학습 방법을 이용하여 앱 추천 시점을 추정할 수 있다. 강화학습 방법을 이용하는 경우, 추정된 시점에 사용자가 앱을 실행시키지 않을 경우 그 순간은 앱 추천 시점에서 제외하도록 학습할 수 있다.
일 실시예에 의한 추천모드에서, 시점 추정부(280)는 센서정보벡터의 시계열 데이터에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하고, 추정된 확률 값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단할 수 있다. 사용자가 특정 앱을 실행시키기 위해 선행처리하는 이벤트는 예를 들어, 론처 앱(시작화면 앱)의 실행 또는 다른 앱의 실행일 수 있으나 이에 한정되지 않으며, 앱 추천 시점은 선행처리 이벤트 발생시점보다 기 설정된 시간 이전으로 판단될 수 있다.
앱 추천부(290)는 상황 추정부(270)에 의해 K개의 상황 중 특정 상황이 인지되는 경우, 저장부(230)에 저장되어 있는 앱 추천 테이블을 참조하여 적어도 하나의 실행 후보 앱을 검출하고, 시점 추정부(280)에서 추정한 추천 시점에 검출된 실행 후보 앱을 사용자 인터페이스(240)를 통해 출력할 수 있다. 적어도 하나의 실행 후보 앱은 앱 추천 테이블을 참조하여 실행 빈도에 따라 지정된 개수만큼 검출될 수 있다. 적어도 하나의 실행 후보 앱은 사용자 인터페이스(240)에 시각적 또는 청각적으로 표출될 수 있다.
도 4는 일 실시예에 의한 앱 추천 화면을 설명하기 위한 도면이다.
도 3과 같이 앱 추천 테이블이 저장되어 있고, 상황 추정부(270)에 의해 현재 상황이 상황(n)인 것으로 추정되는 경우, 앱 추천부(290)는 앱 추천 테이블을 참조하여 실행 후보 앱으로서 SMS서비스 앱, 전화통화 앱, 채팅앱, 소셜 네트워크 서비스(SNS) 앱을 검출하고, 이에 대응하는 앱 추천 윈도우(30)를 시각적으로, 예를 들어 팝-업 형태로 제시할 수 있다.
적어도 하나의 실행 후보 앱이 추천됨에 따라, 사용자는 실행 후보 앱 중에서 어느 하나를 선택하거나 이를 선택하지 않고 다른 앱을 선택하거나, 또는 아무 앱도 선택하지 않을 수 있다. 이러한 사용자의 반응에 따라 시점 추정부(280) 및 상황 추정부(270)가 동작하여 앱 추천 시점 학습 및 앱 추천 테이블 업데이트가 수행될 수 있다.
앱 추천 윈도우(30)는 기 설정된 시간 동안 사용자의 반응이 없는 경우 자동으로 사라지도록 구성할 수 있다.
아울러, 앱 추천 윈도우(30)는 이미 앱 추천 윈도우(30)가 팝업된 상황에서는 다른 앱 추천 윈도우가 표시되지 않도록, 또는 팝업 윈도우에 표시되는 실행 후보 앱을 새로운 후보 앱들로 변경하도록 제어되는 것이 바람직하다.
도 5 내지 도 7은 일 실시예에 의한 앱 추천 방법을 설명하기 위한 흐름도이다.
도 5는 앱 추천 방법 중 훈련모드의 동작 방법에 대한 일 실시예를 설명하기 위한 도면이다.
사용자 단말기(20)에 구비된 복수의 센서들로부터 출력정보가 제공됨에 따라, 센서정보 처리부(260)는 센서정보벡터의 시계열 데이터를 생성할 수 있다(S101).
상황 추정부(270)는 센서정보벡터의 시계열 데이터에 응답하여 기 설정된 개수(K개)의 상황을 추정할 수 있다(S103).
아울러, 상황 추정부(270)는 K개의 상황을 추정하면서, 각각의 상황에서 사용자가 선택하여 실행시킨 앱을 실행 빈도에 따라 정렬하여 앱 추천 테이블을 생성할 수 있다(S105).
한편, 시점 추정부(280)는 센서정보벡터의 시계열 데이터에 응답하여 앱 추천 시점을 학습할 수 있다(S107).
K개의 상황을 추정하기 위한 학습 방법 및 앱 추천 시점을 추정하기 위한 학습 방법은 상술한 예시적인 방법들이 이용될 수 있다.
한편, 상황 추정부(270)에서 생성한 앱 추천 테이블은 앱 추천 데이터로 가공되어 기 설정된 주기마다 앱 추천 서비스 서버(120)로 전송될 수 있다(S109). 이러한 앱 추천 데이터는 다른 사용자 단말기에 대한 초기 파라미터를 결정하는 데 이용될 수 있다.
도 6은 앱 추천 방법 중 추천모드의 동작 방법에 대한 일 실시예를 설명하기 위한 도면이다.
훈련모드를 통해 신뢰할 만한 데이터가 누적된 후 추천모드가 실행될 수 있다.
상황 추정부(270)는 센서정보 처리부(260)로부터 제공되는 센서정보벡터의 시계열 데이터를 수신하고(S201), 이에 응답하여 복수개(K개)의 상황 중 특정 상황일 확률을 추정할 수 있다(S203).
특정 상황인 것으로 추정되면, 즉 사용자 단말기의 상황이 인지되면, 시점 추정부(280)를 통해 앱 추천 시점을 추정함과 함께(S205), 앱 추천부(290)를 통해 추정된 특정 상황에 대응하는 적어도 하나의 실행 후보 앱이 검출될 수 있다(S207).
그리고, 앱 추천부(290)는 단계 S205에서 시점 추정부(280)에 의해 판단된 앱 추천 시점에, 단계 S207에서 앱 추천부(290)가 검출한 적어도 하나의 실행 후보 앱을 사용자에게 제시할 수 있다(S209). 이때, 실행 후보 앱은 시각적, 청각적 방식으로 제시할 수 있으며, 바람직하게는 해당 상황에서 실행된 빈도수에 따라 기 설정된 조건(좌우 정렬, 상하 정렬 등)으로 정렬되어 제시될 수 있다.
도 7은 앱 추천 방법 중 업데이트 방법의 일 실시예를 설명하기 위한 도면이다.
도 6의 과정을 통해 적어도 하나의 실행 후보 앱이 추천된 후 사용자의 반응에 따라 앱 추천 시점이 재학습되고 앱 추천 테이블이 업데이트될 수 있으며, 도 7은 이러한 과정을 설명하기 위한 흐름도이다.
실행 후보 앱이 추천됨에 따라, 사용자는 이에 대해 반응 이벤트를 입력하거나 무반응할 수 있다. 여기에서, 반응 이벤트는 실행 후보 앱 중에서 어느 하나를 선택하는 것 및 실행 후보 앱을 선택하지 않고 다른 앱을 선택하는 것을 포함할 수 있다.
기 설정된 시간 동안 사용자가 무반응하는 경우(S301:N), 앱 추천부(290)는 예를 들어 앱 추천 윈도우를 삭제할 수 있다(S303).
반응 이벤트가 발생하는 경우(S301:Y), 상황 추정부(270)는 실행 후보 앱 중 어느 하나가 선택되었는지의 여부를 판단할 수 있다(S305). 실행 후보 앱 중 어느 하나가 선택된 경우(S305:Y), 실행 후보 앱의 선택 시점 및 앱의 종류에 따라, 시점 추정부(280) 및 상황 추정부(270)에 의해 앱 추천 시점이 재학습되고 및 앱 추천 테이블이 업데이트될 수 있다(S307). 단계 S305에서 사용자가 선택한 앱이 실행되는 과정이 별도로 진행됨은 물론이다.
한편, 실행 후보 앱이 아닌 다른 앱이 선택된 경우(S305:N), 시점 추정부(280)에 의해 앱 추천 시점이 재학습 될 수 있다(S309). 아울러, 사용자가 실행시킨 앱의 종류에 따라 앱 추천 테이블이 업데이트될 수 있다(S311).
도 8은 일 실시예에 의한 앱 추천 서비스 서버의 구성도이다.
도 8을 참조하면, 일 실시예에 의한 앱 추천 서비스 서버(120)는 컨트롤러(1201), 통신모듈(1203), 저장부(1205), 사용자 인터페이스(UI, 1207), 어플리케이션 제공부(1209) 및 파라미터 관리부(1211)를 포함할 수 있다.
컨트롤러(1201)는 앱 추천 서비스 서버(120)의 전체적인 동작을 제어하는 프로세서일 수 있다.
통신모듈(1203)은 앱 추천 서비스 서버(120)가 통신망 또는 타 장치에 접속할 수 있는 환경을 제공할 수 있다.
저장부(1205)는 주기억장치 및 보조기억장치를 포함할 수 있으며, 앱 추천 서비스 서버(120)가 동작하는 데 필요한 프로그램, 제어 데이터, 응용 프로그램 등이 저장될 수 있다.
사용자 인터페이스(1207)는 입력장치 및 출력장치를 포함할 수 있다. 입력장치를 통해서는 사용자로부터의 명령이 입력될 수 있다. 출력장치는 앱 추천 서비스 서버(120)의 동작 상황, 명령 처리 상황, 동작 결과, 명령 처리 결과 등을 출력할 수 있다.
어플리케이션 제공부(1209)는 앱 추천 서비스 기능을 어플리케이션 형태로 제작하여 사용자 단말기로 배포할 수 있다. 앱 추천 서비스 어플리케이션은 예를 들어 상술한 도 5 내지 도 7에서 설명한 앱 추천 서비스 기능이 사용자 단말기에 설치 및 실행되도록 제작된 것을 의미한다.
파라미터 관리부(1211)는 적어도 하나의 사용자 단말기로부터 상황에 따른 앱 추천 데이터를 제공받아 초기 파라미터를 생성할 수 있다. 일 실시예에서, 파라미터 관리부(1211)는 복수의 사용자 단말기로부터 앱 추천 데이터가 제공되는 경우 이들의 산술적 평균치로부터 초기 파라미터를 생성할 수 있다.
사용자 단말기는 기 설정된 주기마다 앱 추천 데이터를 앱 추천 서비스 서버(120)로 전송할 수 있으며, 파라미터 관리부(1211)는 이에 응답하여 초기 파라미터를 업데이트할 수 있다.
일 실시예에서, 파라미터 관리부(1211)는 사용자 단말기로부터 제공되는 앱 추천 데이터를 사용자 정보, 예를 들어 성별, 연령대, 직업군 등에 기초하여 세분화할 수 있다. 이에 따라, 사용자 단말기로 초기 파라미터를 제공할 때, 해당 사용자 단말기의 사용자 정보에 적합한 초기 파라미터를 제공할 수 있다.
앱 추천 서비스 서버(120)로부터 초기 파라미터가 제공됨에 따라, 사용자 단말기는 신뢰성 있는 데이터가 학습될 때까지는 초기 파라미터에 기초하여 앱을 추천할 수 있다. 이때 훈련모드를 통해 상황 추정, 시점 추정, 앱 추천 테이블이 생성되며, 신뢰성 있는 데이터가 학습된 후의 추천 모드에서는 사용자 단말기의 상황을 정확히 인지하고 이에 대응하는 앱을 추천해 줄 수 있다.
비지도 학습에 의해 사용자 단말기에 대한 복수의 상황을 추정해 두고, 이에 대응하는 앱을 적정한 시점에 추천할 수 있으며, 사용자는 어떠한 개입도 할 필요 없이 자신이 특정 상황에 실행시키고자 하는 앱을 높은 정확도로 추천받을 수 있다.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10 : 앱 추천 서비스 시스템
110, 20 : 사용자 단말기
120 : 앱 추천 서비스 서버

Claims (28)

  1. 통신망을 통해 앱 추천 서비스 서버와 접속되는 사용자 단말기를 포함하는 앱 추천 서비스 시스템으로서,
    상기 사용자 단말기는, 복수의 센서;
    상기 복수의 센서에서 제공되는 센서정보로부터 센서정보벡터의 시계열 데이터를 생성하는 센서정보 처리부;
    상기 센서정보벡터의 시계열 데이터를 입력으로 한 비지도 학습 방법을 이용하여 지정된 개수의 상황을 추정하며, 상기 지정된 개수의 상황 각각에서 실행된 앱 및 상기 실행된 앱의 빈도를 앱 추천 테이블로 생성하고, 상기 센서정보벡터의 시계열 데이터에 기초하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하는 상황 추정부;
    상기 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 상기 지정된 개수에 대응하는 차원을 갖는 벡터의 시계열 데이터와, 특정 앱이 실행되기 전 선행하는 이벤트에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 학습하고, 추정한 상기 앱을 실행시키려는 순간일 확률값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단하되, 상기 선행하는 이벤트는 상기 사용자 단말기가 들어 올져지는 동작을 감지한 시점, 또는 상기 사용자 단말기의 화면이 켜지는 상태를 감지하는 시점, 기 설정된 앱이 실행되는 시점을 포함하도록 구성되는 시점 추정부; 및
    상기 지정된 개수의 상황 중 특정 상황이 인지됨에 따라 상기 앱 추천 테이블을 참조하여 상기 인지된 특정 상황에 대응하는 적어도 하나의 실행 후보 앱을 검출하고, 상기 앱 추천 시점으로 판단된 시점에 상기 적어도 하나의 실행 후보 앱을 사용자 인터페이스를 통해 출력하도록 구성되는 앱 추천부;
    를 포함하도록 구성되는 앱 추천 서비스 시스템.
  2. 제 1 항에 있어서,
    상기 상황 추정부는, 기 설정된 시간 동안 상기 센서정보벡터의 시계열 데이터를 입력으로 하고 상기 지정된 개수의 출력을 가지는 확률적 모델 또는 신경망을 추정 모델로 하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하도록 구성되는 앱 추천 서비스 시스템.
  3. 제 1 항에 있어서,
    상기 상황 추정부는, 시계열로 입력되는 상기 센서정보벡터를 입력으로 하되 이전 시간 상태에 대한 의존성이 있는 확률적 모델 또는 신경망을 추정 모델로 하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하도록 구성되는 앱 추천 서비스 시스템.
  4. 제 1 항에 있어서,
    상기 상황 추정부는 상기 사용자 단말기에서 앱이 실행될 때마다 상기 앱 추천 테이블을 업데이트하도록 구성되는 앱 추천 서비스 시스템.
  5. 제 1 항에 있어서,
    상기 시점 추정부는, 지도학습 방법 또는 강화학습 방법을 이용하여 상기 앱 추천 시점을 학습하도록 구성되는 앱 추천 서비스 시스템.
  6. 제 1 항에 있어서,
    상기 시점 추정부는, 추정된 앱 추천 시점에 앱이 실행되지 않을 경우 해당 시점을 상기 앱 추천 시점에서 제외하도록 상기 앱 추천 시점을 학습하도록 구성되는 앱 추천 서비스 시스템.
  7. 제 1 항에 있어서,
    상기 앱 추천부는, 상기 적어도 하나의 실행 후보 앱을 팝-업 윈도우 형태로 출력하며, 기 설정된 시간 내에 상기 팝-업 윈도우에 대한 반응 이벤트가 없으면 상기 팝-업 윈도우를 삭제하도록 구성되는 앱 추천 서비스 시스템.
  8. 제 1 항에 있어서,
    상기 적어도 하나의 실행 후보 앱을 상기 사용자 인터페이스를 통해 출력한 후, 상기 적어도 하나의 실행 후보 앱 중 어느 하나가 실행되거나, 상기 적어도 하나의 실행 후보 앱 외의 다른 앱이 실행되거나, 사용자에 의해 어느 앱도 실행되지 않는 경우, 상기 상황 추정부가 상기 앱 추천 테이블을 업데이트하고, 상기 시점 추정부가 상기 앱 추천 시점을 재학습하도록 구성되는 앱 추천 서비스 시스템.
  9. 제 1 항에 있어서,
    상기 상황 추정부는, 상기 앱 추천 테이블로부터 앱 추천 데이터를 생성하여 기 설정된 주기마다 상기 앱 추천 서비스 서버로 전송하도록 구성되는 앱 추천 서비스 시스템.
  10. 제 9 항에 있어서,
    상기 앱 추천 서비스 서버는, 적어도 하나의 사용자 단말기로부터 상기 앱 추천 데이터를 제공받아 초기 파라미터를 생성하여, 초기 파라미터를 요청하는 사용자 단말기로 제공하도록 구성되는 앱 추천 서비스 시스템.
  11. 제 9 항에 있어서,
    상기 앱 추천 서비스 서버는, 상기 앱 추천 데이터를 전송한 사용자 단말기의 사용자 정보에 기초하여 복수의 초기 파라미터를 생성하고, 상기 초기 파라미터를 요청하는 사용자 단말기의 사용자 정보에 기초하여 상기 복수의 초기 파라미터 중 어느 하나를 선택하여 전송하도록 구성되는 앱 추천 서비스 시스템.
  12. 복수의 센서;
    상기 복수의 센서에서 제공되는 센서정보로부터 센서정보벡터의 시계열 데이터를 생성하는 센서정보 처리부;
    상기 센서정보벡터의 시계열 데이터를 입력으로 한 비지도 학습 방법을 이용하여 지정된 개수의 상황을 추정하며, 상기 지정된 개수의 상황 각각에서 실행된 앱 및 상기 실행된 앱의 빈도를 앱 추천 테이블로 생성하고, 상기 센서정보벡터의 시계열 데이터에 기초하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하는 상황 추정부;
    상기 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 상기 지정된 개수에 대응하는 차원을 갖는 벡터의 시계열 데이터와, 특정 앱이 실행되기 전 선행하는 이벤트에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 학습하고, 추정한 상기 앱을 실행시키려는 순간일 확률값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단하되, 상기 선행하는 이벤트는 상기 사용자 단말기가 들어 올져지는 동작을 감지한 시점, 또는 상기 사용자 단말기의 화면이 켜지는 상태를 감지하는 시점, 기 설정된 앱이 실행되는 시점을 포함하도록 구성되는 시점 추정부; 및
    상기 지정된 개수의 상황 중 특정 상황이 인지됨에 따라 상기 앱 추천 테이블을 참조하여 상기 인지된 특정 상황에 대응하는 적어도 하나의 실행 후보 앱을 검출하고, 상기 앱 추천 시점으로 판단한 시점에 상기 적어도 하나의 실행 후보 앱을 사용자 인터페이스를 통해 출력하도록 구성되는 앱 추천부;
    를 포함하도록 구성되는 사용자 단말기.
  13. 제 12 항에 있어서,
    상기 상황 추정부는, 기 설정된 시간 동안 상기 센서정보벡터의 시계열 데이터를 입력으로 하고 상기 지정된 개수의 출력을 가지는 확률적 모델 또는 신경망을 추정 모델로 하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하도록 구성되는 사용자 단말기.
  14. 제 12 항에 있어서,
    상기 상황 추정부는, 시계열로 입력되는 상기 센서정보벡터를 입력으로 하되 이전 시간 상태에 대한 의존성이 있는 확률적 모델 또는 신경망을 추정 모델로 하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하도록 구성되는 사용자 단말기.
  15. 제 12 항에 있어서,
    상기 상황 추정부는 상기 사용자 단말기에서 앱이 실행될 때마다 상기 앱 추천 테이블을 업데이트하도록 구성되는 사용자 단말기.
  16. 제 12 항에 있어서,
    상기 시점 추정부는, 지도학습 방법 또는 강화학습 방법을 이용하여 상기 앱 추천 시점을 학습하도록 구성되는 사용자 단말기.
  17. 제 12 항에 있어서,
    상기 시점 추정부는, 추정된 앱 추천 시점에 앱이 실행되지 않을 경우 해당 시점을 상기 앱 추천 시점에서 제외하도록 상기 앱 추천 시점을 학습하도록 구성되는 사용자 단말기.
  18. 제 12 항에 있어서,
    상기 앱 추천부는, 상기 적어도 하나의 실행 후보 앱을 팝-업 윈도우 형태로 출력하며, 기 설정된 시간 내에 상기 팝-업 윈도우에 대한 반응 이벤트가 없으면 상기 팝-업 윈도우를 삭제하도록 구성되는 사용자 단말기.
  19. 제 12 항에 있어서,
    상기 적어도 하나의 실행 후보 앱을 상기 사용자 인터페이스를 통해 출력한 후, 상기 적어도 하나의 실행 후보 앱 중 어느 하나가 실행되거나, 상기 적어도 하나의 실행 후보 앱 외의 다른 앱이 실행되거나, 사용자에 의해 어느 앱도 실행되지 않는 경우, 상기 상황 추정부가 상기 앱 추천 테이블을 업데이트하고, 상기 시점 추정부가 상기 앱 추천 시점을 재학습하도록 구성되는 사용자 단말기.
  20. 복수의 센서를 구비하는 사용자 단말기에서의 앱 추천 서비스 방법으로서,
    상기 사용자 단말기가 상기 복수의 센서에서 제공되는 센서정보로부터 생성된 센서정보벡터의 시계열 데이터를 입력으로 한 비지도 학습 방법을 이용하여 지정된 개수의 상황을 추정하도록 학습하고, 상기 지정된 개수의 상황 각각에 대한 적어도 하나의 실행 후보 앱을 테이블로 생성하고, 앱 추천 시점을 학습하는 훈련모드를 수행하는 단계; 및
    상기 사용자 단말기가 상기 센서정보벡터의 시계열 데이터에 응답하여 상기 지정된 개수의 상황 중 특정 상황이 인지됨에 따라, 상기 테이블로부터 상기 특정 상황에 대응하는 적어도 하나의 실행 앱을 검출하고, 상기 센서정보벡터의 시계열 데이터에 응답하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 판단하여, 상기 앱 추천 시점으로 판단한 시점에 상기 검출한 적어도 하나의 실행 후보 앱을 사용자 인터페이스를 통해 출력하는 추천모드를 수행하는 단계;
    를 포함하고,
    상기 앱 추천 시점을 학습하는 단계는, 상기 센서정보벡터의 시계열 데이터 또는 각 상황의 확률값을 갖는 상기 지정된 개수에 대응하는 차원을 갖는 벡터의 시계열 데이터와, 특정 앱이 실행되기 전 선행하는 이벤트에 기초하여 사용자가 앱을 실행시키려는 순간일 확률을 추정하여 앱 추천 시점을 학습하는 단계를 포함하고,
    상기 앱 추천 시점을 판단하는 단계는, 추정한 상기 앱을 실행시키려는 순간일 확률값이 기 설정된 임계치를 초과하면 앱 추천 시점으로 판단하는 단계를 포함하며,
    상기 선행하는 이벤트는 상기 사용자 단말기가 들어 올져지는 동작을 감지한 시점, 또는 상기 사용자 단말기의 화면이 켜지는 상태를 감지하는 시점, 기 설정된 앱이 실행되는 시점을 포함하도록 구성되는 앱 추천 서비스 방법.
  21. 제 20 항에 있어서,
    상기 훈련모드를 수행하는 단계는, 상기 사용자 단말기가 상기 센서정보벡터의 시계열 데이터에 응답하여 상기 지정된 개수의 상황을 추정하며, 상기 지정된 개수의 상황 각각에서 실행된 앱 및 상기 실행된 앱의 빈도를 앱 추천 테이블로 생성하는 단계; 및
    상기 사용자 단말기가 상기 센서정보벡터의 시계열 데이터에 응답하여 상기 앱 추천 시점을 학습하는 단계;
    를 포함하도록 구성되는 앱 추천 서비스 방법.
  22. 제 21 항에 있어서,
    상기 앱 추천 테이블은 상기 사용자 단말기에서 앱이 실행될 때마다 업데이트되도록 구성되는 앱 추천 서비스 방법.
  23. 제 20 항에 있어서,
    상기 앱 추천 시점은 지도학습 방법 또는 강화학습 방법을 이용하여 학습되도록 구성되는 앱 추천 서비스 방법.
  24. 제 20 항에 있어서,
    상기 앱 추천 시점을 학습하는 단계는, 상기 앱 추천 시점으로 추정된 시점에 앱이 실행되지 않을 경우 해당 시점을 상기 앱 추천 시점에서 제외하도록 상기 앱 추천 시점을 학습는 단계를 포함하도록 구성되는 앱 추천 서비스 방법.
  25. 제 20 항에 있어서,
    상기 추천모드를 수행하는 단계는, 상기 센서정보벡터의 시계열 데이터에 응답하여 상기 지정된 개수의 상황 중 특정 상황일 확률을 추정하는 단계;
    상기 앱 추천 시점을 판단하는 단계; 및
    상기 특정 상황이 인지됨에 따라 상기 인지된 특정 상황에 대응하는 적어도 하나의 실행 후보 앱을 검출하고, 상기 판단한 앱 추천 시점에 상기 적어도 하나의 실행 후보 앱을 상기 사용자 인터페이스를 통해 출력하는 단계;
    를 포함하도록 구성되는 앱 추천 서비스 방법.
  26. 제 25 항에 있어서,
    상기 특정 상황일 확률은 기 설정된 시간 동안 상기 센서정보벡터의 시계열 데이터를 입력으로 하고 상기 지정된 개수의 출력을 가지는 확률적 모델 또는 신경망을 추정 모델로 하여 추정되도록 구성되는 앱 추천 서비스 방법.
  27. 제 25 항에 있어서,
    상기 특정 상황일 확률은 시계열로 입력되는 상기 센서정보벡터를 입력으로 하되 이전 시간 상태에 대한 의존성이 있는 확률적 모델 또는 신경망을 추정 모델로 하여 추정되도록 구성되는 앱 추천 서비스 방법.
  28. 제 20 항에 있어서,
    상기 추천모드를 수행하는 단계는, 상기 사용자 인터페이스를 통해 상기 적어도 하나의 실행 후보 앱을 출력한 후, 상기 사용자 인터페이스를 통해 출력된 상기 적어도 하나의 실행 후보 앱 중 어느 하나가 실행되거나, 상기 적어도 하나의 실행 후보 앱 외의 다른 앱이 실행되거나, 사용자에 의해 어느 앱도 실행되지 않는 경우, 상기 테이블을 업데이트하고, 상기 앱 추천 시점을 재학습하는 단계를 더 포함하도록 구성되는 앱 추천 서비스 방법.
KR1020190004646A 2019-01-14 2019-01-14 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법 KR102064489B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190004646A KR102064489B1 (ko) 2019-01-14 2019-01-14 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190004646A KR102064489B1 (ko) 2019-01-14 2019-01-14 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020160143225A Division KR20180047276A (ko) 2016-10-31 2016-10-31 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법

Publications (2)

Publication Number Publication Date
KR20190007513A true KR20190007513A (ko) 2019-01-22
KR102064489B1 KR102064489B1 (ko) 2020-02-11

Family

ID=65320612

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190004646A KR102064489B1 (ko) 2019-01-14 2019-01-14 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법

Country Status (1)

Country Link
KR (1) KR102064489B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019147110A2 (ko) 2019-02-20 2019-08-01 엘지전자 주식회사 자주 사용하는 앱 도출 방법 및 이를 이용한 도출 장치
KR102269061B1 (ko) * 2021-02-03 2021-06-24 주식회사 문토 어플리케이션 사용 정보 인식을 통한 사용자 맞춤형 콘텐츠 추천 및 제공 시스템
KR20220033304A (ko) * 2020-09-09 2022-03-16 주식회사 엘지유플러스 사용자의 행동 추천 방법 및 장치
WO2023085723A1 (ko) * 2021-11-12 2023-05-19 삼성전자(주) 전자장치 및 그 제어방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102400987B1 (ko) 2020-09-08 2022-05-20 연세대학교 산학협력단 메모리 관리 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120115826A (ko) * 2011-04-11 2012-10-19 삼성전자주식회사 어플리케이션 추천 방법, 그에 따른 이동 단말기 및 그에 따른 통신 시스템
KR20130089735A (ko) * 2011-12-30 2013-08-13 숭실대학교산학협력단 사용자 선호도를 이용한 애플리케이션 추천 장치 및 그 방법
KR20140059697A (ko) * 2012-11-08 2014-05-16 아주대학교산학협력단 사용자 의도 파악 어플리케이션 서비스 방법 및 서버와 이를 이용한 사용자 의도 파악 어플리케이션 서비스 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120115826A (ko) * 2011-04-11 2012-10-19 삼성전자주식회사 어플리케이션 추천 방법, 그에 따른 이동 단말기 및 그에 따른 통신 시스템
KR20130089735A (ko) * 2011-12-30 2013-08-13 숭실대학교산학협력단 사용자 선호도를 이용한 애플리케이션 추천 장치 및 그 방법
KR20140059697A (ko) * 2012-11-08 2014-05-16 아주대학교산학협력단 사용자 의도 파악 어플리케이션 서비스 방법 및 서버와 이를 이용한 사용자 의도 파악 어플리케이션 서비스 시스템

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019147110A2 (ko) 2019-02-20 2019-08-01 엘지전자 주식회사 자주 사용하는 앱 도출 방법 및 이를 이용한 도출 장치
US11228675B2 (en) 2019-02-20 2022-01-18 Lg Electronics Inc. Method for deriving frequently used application, and apparatus using the same
KR20220033304A (ko) * 2020-09-09 2022-03-16 주식회사 엘지유플러스 사용자의 행동 추천 방법 및 장치
KR102269061B1 (ko) * 2021-02-03 2021-06-24 주식회사 문토 어플리케이션 사용 정보 인식을 통한 사용자 맞춤형 콘텐츠 추천 및 제공 시스템
WO2023085723A1 (ko) * 2021-11-12 2023-05-19 삼성전자(주) 전자장치 및 그 제어방법

Also Published As

Publication number Publication date
KR102064489B1 (ko) 2020-02-11

Similar Documents

Publication Publication Date Title
KR102064489B1 (ko) 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법
CN109427333B (zh) 激活语音识别服务的方法和用于实现所述方法的电子装置
KR20200004359A (ko) 자동으로 액션 그룹을 커스터마이징하도록 구성된 가상 어시스턴트
CN111226193A (zh) 电子设备及改变聊天机器人的方法
EP2847986B1 (en) Configuring a terminal device according to a context determined by correlating different data sources
CN112805743A (zh) 用于基于知识图谱来提供内容的系统和方法
US8762756B1 (en) Statistical approach to power management for electronic devices
US20180040317A1 (en) Information processing device, information processing method, and program
KR20180055708A (ko) 이미지를 처리하는 전자 장치 및 방법
KR102449630B1 (ko) 전자 장치 및 이의 제어 방법
US20180137550A1 (en) Method and apparatus for providing product information
KR20210067604A (ko) 인공 지능을 이용한 주방 환경의 통합 관리 방법 및 그 시스템
KR20180060971A (ko) 사용자 입력에 기반한 문장을 제공하는 장치 및 방법
EP3397982B1 (en) Indoor room-localization system
KR20190089628A (ko) 복수 개의 전자 디바이스를 이용하여 신경망 모델을 처리하는 방법 및 시스템
CN110520891B (zh) 信息处理装置、信息处理方法和程序
CN114791982B (zh) 对象推荐方法和装置
EP4106350A1 (en) Fitting agent for a hearing device and method for updating a multi-environment user model
KR20210077916A (ko) 인공 지능을 이용한 가전 기기의 통합 제어 방법 및 그 시스템
CN113164056A (zh) 睡眠预测方法、装置、存储介质及电子设备
CN110169021B (zh) 用于过滤多条消息的方法和设备
KR20190078222A (ko) 패션 상품을 추천하는 전자 장치, 서버 및 그 동작 방법
KR20180047276A (ko) 앱 추천 시스템, 이를 위한 사용자 단말기 및 방법
KR20190031786A (ko) 전자 장치 및 이의 피드백 정보 획득 방법
CN113170018A (zh) 睡眠预测方法、装置、存储介质及电子设备

Legal Events

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