KR101267561B1 - Method for providing context aware service using mobile terminal and system thereof - Google Patents
Method for providing context aware service using mobile terminal and system thereof Download PDFInfo
- Publication number
- KR101267561B1 KR101267561B1 KR1020110012531A KR20110012531A KR101267561B1 KR 101267561 B1 KR101267561 B1 KR 101267561B1 KR 1020110012531 A KR1020110012531 A KR 1020110012531A KR 20110012531 A KR20110012531 A KR 20110012531A KR 101267561 B1 KR101267561 B1 KR 101267561B1
- Authority
- KR
- South Korea
- Prior art keywords
- model
- situation
- sensing data
- data
- mobile terminal
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/38—Services specially adapted for particular environments, situations or purposes for collecting sensor information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Telephonic Communication Services (AREA)
Abstract
개시된 기술의 일 실시예에 따른 상황 인식 시스템은 복수의 센서들을 구비하고, 상기 복수의 센서들로부터 수집된 센싱 데이터를 제공하는 모바일 단말; 및 상기 센싱 데이터를 기초로 학습을 통하여 상황 모델을 생성하고, 상기 상황 모델을 기초로 모바일 단말의 상황을 추론하여 그와 연관된 추천 정보를 제공하는 상황 인식 서버를 포함할 수 있다.A situation recognition system according to an embodiment of the disclosed technology includes a mobile terminal having a plurality of sensors and providing sensing data collected from the plurality of sensors; And a situation recognition server generating a situation model through learning based on the sensing data, inferring the situation of the mobile terminal based on the situation model, and providing recommendation information associated therewith.
Description
개시된 기술은 상황인식 서비스 기술에 관한 것으로, 특히 다양한 센서를 포함하는 모바일 단말을 이용하여 사용자에 대한 정보를 수집하고 수집된 정보를 기초로 상황 인식에 대한 학습을 기초로 사용자에게 추천 서비스를 제공할 수 있는 모바일 단말을 이용한 상황인식 서비스 기술에 관한 것이다.The disclosed technology relates to a situation recognition service technology, and in particular, collects information about a user using a mobile terminal including various sensors and provides a recommendation service to a user based on learning about situation recognition based on the collected information. It relates to a situation awareness service technology using a mobile terminal.
개인의 삶을 디지털 정보로 기록하는 라이프로그(life-log)에 대한 다양한 기술들이 개발되고 있고, 이를 이용한 상황 인식 서비스에 대한 관심이 높아지고 있다. 이러한 기술들은 개인의 행동을 특징지을 수 있는 다양한 정보들을 저장하고 이를 기초로 상황 인식 서비스를 제공한다. 그러나 종래의 경우, 개인으로부터 정보를 수집하기 위하여 도메인 기반으로 다양한 센서 장치를 설치하여야 하는 부담이 있었다. 모바일 단말을 이용하는 종래 기술의 경우, 모바일 단말로부터 수집하는 정보를 한정하고 있고 또한 이러한 정보에 대한 효과적인 학습 과정이 부족하여 실질적으로 유효한 상황 인식 서비스를 제공하기 어려운 문제점이 있다.Various technologies for life-logs that record individual lives as digital information are being developed, and interest in context-aware services using them is increasing. These technologies store a variety of information that can characterize an individual's behavior and provide context-aware services based on that. However, in the related art, in order to collect information from an individual, there has been a burden of installing various sensor devices based on a domain. In the prior art using a mobile terminal, there is a problem in that it is difficult to provide a practically effective situation recognition service due to a limitation of information collected from the mobile terminal and lack of an effective learning process for such information.
실시예들 중에서, 상황 인식 시스템은 복수의 센서들을 구비하고, 상기 복수의 센서들로부터 수집된 센싱 데이터를 제공하는 모바일 단말 및 상기 센싱 데이터를 기초로 학습을 통하여 상황 모델을 생성하고, 상기 상황 모델을 기초로 모바일 단말의 상황을 추론하여 그와 연관된 추천 정보를 제공하는 상황 인식 서버를 포함한다. 일 실시예에서, 상기 모바일 단말은 설정된 시간마다 상기 센싱 데이터를 수집하여 제공할 수 있다. 일 실시예에서, 상기 상황 인식 서버는 상기 설정된 시간마다 수집된 센싱 데이터들을 슬라이딩 윈도우 방식으로 평균화하는 평균화 모듈 및 상기 평균화된 센싱 데이터를 복수의 군으로 구분하는 군집화 모듈을 포함할 수 있다. 일 실시예에서, 상기 상황 인식 서버는 상기 군집화된 센싱 데이터에 대하여 LDA 모델 또는 Bigram 토픽 모델을 이용하여 토픽을 추출하고, 추출된 토픽을 이용하여 상황 모델을 생성하는 상황 학습 모듈을 포함할 수 있다. 일 실시예에서, 상기 상황 인식 서버는 상기 군집화된 센싱 데이터에 해당하는 상황 모델을 선택하고, 상기 선택된 상황 모델에 연관된 추천 정보를 생성하는 상황 추론 모듈을 포함할 수 있다. Among the embodiments, the situation recognition system has a plurality of sensors, a mobile terminal for providing sensing data collected from the plurality of sensors and the situation model through the learning based on the sensing data, and generates the situation model And a situational awareness server for inferring the situation of the mobile terminal and providing recommendation information associated therewith. In one embodiment, the mobile terminal may collect and provide the sensing data every set time. In one embodiment, the situation recognition server may include an averaging module for averaging the sensing data collected at each set time by a sliding window method, and a clustering module for dividing the averaged sensing data into a plurality of groups. In one embodiment, the context recognition server may include a context learning module for extracting a topic using the LDA model or the Bigram topic model for the clustered sensing data, and generating a context model using the extracted topic. . In an embodiment, the context recognition server may include a context inference module that selects a context model corresponding to the clustered sensing data and generates recommendation information related to the selected context model.
실시예들 중에서, 상황 인식 서비스 방법은 모바일 단말로부터 복수의 센싱 데이터를 제공받아 상황 모델을 생성하는 상황 인식 서버에서 이루어진다. 상기 상황 인식 서비스 방법은 (a) 상기 모바일 단말로부터 수신된 복수의 센싱 데이터들를 저장하는 단계, (b) 상기 저장된 센싱 데이터들에 대하여 학습 수행을 위한 전처리를 수행하는 단계 및 (c) 상기 전처리된 센싱 데이터들에 대하여 적어도 하나의 토픽을 추출하고 추출된 토픽을 이용하여 상기 상황 모델을 생성하는 단계를 포함한다. 일 실시예에서, 상기 (b) 단계는 (b-1) 설정된 단위 시간에 대하여 상기 저장된 센싱 데이터들을 슬라이딩 윈도우 방식으로 평균화하는 단계 및 (b-2) 상기 평균화된 센싱 데이터들을 복수의 군으로 구분하여 군집화하는 단계를 포함할 수 있다. 일 실시예에서, 상기 (c) 단계는 (c-1) 상기 전처리된 센싱 데이터들에 대하여 적어도 하나의 토픽을 추출하는 단계 및 (c-2) 상기 추출된 적어도 하나의 토픽의 분포를 이용하여 상기 전처리된 센싱 데이터들을 구분하여 상기 상황 모델을 생성하는 단계를 포함할 수 있다. 일 실시예에서, 상기 (c) 단계는 LDA 모델 또는 Bigram 토픽 모델을 이용하여 상기 적어도 하나의 토픽을 추출하여 상기 상황 모델을 생성할 수 있다.Among the embodiments, the context aware service method is performed in a context aware server that receives a plurality of sensing data from a mobile terminal and generates a context model. The situation recognition service method includes (a) storing a plurality of sensing data received from the mobile terminal, (b) performing a preprocessing for performing a learning on the stored sensing data, and (c) the preprocessing. And extracting at least one topic with respect to sensing data and generating the situation model using the extracted topic. In an embodiment, the step (b) may include (b-1) averaging the stored sensing data for a set unit time by a sliding window method and (b-2) dividing the averaged sensing data into a plurality of groups. Grouping may be included. In an embodiment, the step (c) may include (c-1) extracting at least one topic for the preprocessed sensing data and (c-2) using a distribution of the extracted at least one topic. The method may include generating the situation model by dividing the preprocessed sensing data. In an embodiment, the step (c) may generate the situation model by extracting the at least one topic using an LDA model or a Bigram topic model.
실시예들 중에서, 상황 인식 서비스 방법은 모바일 단말로부터 수신된 센싱 데이터를 기초로 상기 모바일 단말의 상황 인식을 수행하는 상황 인식 서버에서 이루어진다. 상기 상황 인식 서버는 학습에 의하여 생성된 상기 상황 모델 데이터베이스를 구비한다. 상기 상황 인식 서비스 방법은 (a) 상기 모바일 단말로부터 수신된 센싱 데이터에 대하여 전처리를 수행하는 단계, (b) 상기 전처리된 센싱 데이터에 대하여 적어도 하나의 토픽을 추출하고 상기 적어도 하나의 토픽에 해당하는 제1 상황 모델을 생성하는 단계, (c) 상기 제1 상황 모델을 추론하여 상기 상황 모델 데이터베이스로부터 해당 상황 모델을 선택하는 단계 및 (d) 상기 선택된 해당 상황 모델에 대한 추천 정보를 제공하는 단계를 포함한다. 일 실시예에서, 상기 (a) 단계는 상기 수신된 센싱 데이터들을 복수의 군으로 구분하여 군집화하는 단계를 포함할 수 있다. 일 실시예에서, 상기 (c) 단계는 (c-1) 상기 제1 상황 모델에 대하여 사후 분포를 계산하는 단계 및 (c-2) 상기 사후 분포에 대하여 샘플링 기반으로 근사 추론을 수행하여 해당 상황 모델을 상기 상황 모델 데이터베이스에서 선택하는 단계를 포함할 수 있다.Among the embodiments, the context aware service method is performed in a context aware server that performs context awareness of the mobile terminal based on sensing data received from the mobile terminal. The context aware server has the context model database generated by learning. The context recognition service method may include (a) performing preprocessing on sensing data received from the mobile terminal, (b) extracting at least one topic on the preprocessed sensing data, and corresponding to the at least one topic. Generating a first situation model, (c) inferring the first situation model to select the situation model from the situation model database, and (d) providing recommendation information for the selected situation model; Include. In an embodiment, the step (a) may include grouping the received sensing data into a plurality of groups. In an embodiment, the step (c) may include (c-1) calculating a post-distribution for the first situation model and (c-2) performing approximate inference based on a sampling based on the post-distribution model for the corresponding situation. Selecting a model from the context model database.
도 1은 개시된 기술에 적용될 수 있는 LDA(Latent Dirichlet Allocation) 모델의 일 실시예에 따른 그래프이다.
도 2는 개시된 기술이 적용될 수 있는 LDA와 Bigram 토픽 모델을 비교할 수 있는 그래프이다.
도 3은 개시된 기술이 적용될 수 있는 상황 인식 시스템의 일 실시예에 따른 구성도이다.
도 4는 사용자 기록부의 인터페이스에 대한 일 실시예를 나타내는 예시도이다.
도 5는 개시된 기술이 적용될 수 있는 상황 인식 서버의 일 실시예에 따른 구성도이다.
도 6은 개시된 발명이 적용될 수 있는 따른 상황 인식 서비스 방법의 일 실시예에 대한 블록도이다.
도 7은 도 6의 상황 인식 서비스 방법의 순서도이다.
도 8은 개시된 발명이 적용될 수 있는 따른 상황 인식 서비스 방법의 일 실시예에 대한 블록도이다.
도 9은 도 8의 상황 인식 서비스 방법의 순서도이다.
도 10은 요일별 행동 유형을 도시하는 토픽 분포도이다.1 is a graph according to an embodiment of a latent rich allocation (LDA) model that may be applied to the disclosed technology.
2 is a graph that can compare the LDA and Bigram topic model to which the disclosed technology can be applied.
3 is a block diagram of an embodiment of a context aware system to which the disclosed technology may be applied.
4 is an exemplary view showing an embodiment of an interface of a user recording unit.
5 is a block diagram of an embodiment of a context aware server to which the disclosed technology may be applied.
6 is a block diagram of an embodiment of a context aware service method to which the disclosed invention can be applied.
FIG. 7 is a flowchart illustrating a context awareness service method of FIG. 6.
8 is a block diagram of an embodiment of a context aware service method to which the disclosed invention can be applied.
FIG. 9 is a flowchart illustrating a context awareness service method of FIG. 8.
10 is a topic distribution diagram illustrating the types of behaviors by day of the week.
개시된 기술에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 개시된 기술의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 개시된 기술의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다.The description of the disclosed technique is merely an example for structural or functional explanation and the scope of the disclosed technology should not be construed as being limited by the embodiments described in the text. That is, the embodiments may be variously modified and may have various forms, and thus the scope of the disclosed technology should be understood to include equivalents capable of realizing the technical idea.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of the terms described in the present application should be understood as follows.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms "first "," second ", and the like are intended to distinguish one element from another, and the scope of the right should not be limited by these terms. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
"및/또는"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및/또는 제3 항목"의 의미는 제1, 제2 또는 제3 항목뿐만 아니라 제1, 제2 또는 제3 항목들 중 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.It should be understood that the term "and / or" includes all possible combinations from one or more related items. For example, the meaning of "first item, second item and / or third item" may be presented from two or more of the first, second or third items as well as the first, second or third item It means a combination of all the items that can be.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" to another element, it may be directly connected to the other element, but there may be other elements in between. On the other hand, when an element is referred to as being "directly connected" to another element, it should be understood that there are no other elements in between. On the other hand, other expressions describing the relationship between the components, such as "between" and "immediately between" or "neighboring to" and "directly neighboring to", should be interpreted as well.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the singular " include "or" have "are to be construed as including a stated feature, number, step, operation, component, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, Unless otherwise stated, it may occur differently from the stated order. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. Commonly used predefined terms should be interpreted to be consistent with the meanings in the context of the related art and can not be interpreted as having ideal or overly formal meaning unless explicitly defined in the present application.
이하에서는 스마트 폰 등과 같은 다양한 센서를 포함하는 모바일 단말로부터 수집된 데이터를 이용하여 사용자의 행동 패턴을 분석하고, 이러한 분석을 토대로 사용자에게 상황 인식을 이용한 맞춤형 서비스를 제공할 수 있는 기술을 개시한다. Hereinafter, a technology for analyzing a user's behavior pattern using data collected from a mobile terminal including various sensors such as a smart phone, and providing a customized service using context awareness to the user based on such analysis.
개시된 기술은 수집된 다양한 센서 데이터에 대한 상황 인식을 수행하기 위하여 LDA(Latent Dirichlet Allocation) 모델 또는 Bigram Topic 모델을 이용하여 학습 및 상황 인식을 수행할 수 있다. The disclosed technique may perform learning and situational awareness using a late diallet allocation (LDA) model or a bigram topic model to perform situational awareness on various sensor data collected.
도 1은 개시된 기술에 적용될 수 있는 LDA 모델의 일 실시예에 따른 그래프이다. 이하, 도 1을 참조하여 개시된 기술에서 적용되는 LDA 모델에 대하여 설명한다.1 is a graph according to an embodiment of an LDA model that may be applied to the disclosed technology. Hereinafter, an LDA model applied in the disclosed technology will be described with reference to FIG. 1.
전체 데이터는 D 개의 문서로 이루어져 있으며, 각 문서 d는 Nd개의 단어로 구성될 수 있다. 각 단어는 우리가 관측할 수 없는 주제 z로부터 생성된다고 가정할 수 있다. 예컨대, 하나의 문서는 다수의 주제로 구성되어 있으며, 문서의 주제 분포에 따라 생성되는 단어의 빈도가 결정될 수 있다. 여기에서 하나의 문서가 생성되는 과정을 정리하면 다음과 같다.The entire data consists of D documents, where each document d is N d words ≪ / RTI > We can assume that each word comes from a subject z that we cannot observe. For example, one document is composed of a plurality of subjects, and the frequency of generated words may be determined according to the subject distribution of the documents. Here is a summary of the process of creating a single document:
1. 선택One. Selection
2. 문서를 구성하는 N개의 단어에 대해서:2. For the N words that make up a document:
ㄱ) 주제 선택A) subject Selection
S) 단어 선택S) word Selection
전체 문서는 K개 주제로 표현 가능하다고 하면, 먼저 하나의 문서에 포함된 주제의 분포 를 디리슐레(Dirichlet) 분포로 정의할 수 있다. 그 후, 문서 내의 모든 단어에 대해 상기 주제 선택 과정과 단어 선택 과정을 반복할 수 있다. 주제 분포 를 매개변수로 하는 다항(multinomial) 분포로부터 주제 인덱스를 선택하고, 선택된 주제 인덱스를 기반으로 다항분포 에서 단어 인덱스를 선택할 수 있다. If the entire document can be expressed in K subjects, first, the distribution of the subjects contained in one document Can be defined as the Dirichlet distribution. Thereafter, the subject selection process and the word selection process can be repeated for all words in the document. Topic distribution Select a subject index from a multinomial distribution whose parameters are, and multinomial distribution based on the selected subject index. You can select the word index from.
개시된 기술은 전술한 LDA를 이용해서 문서 분류(document classification) 뿐만 아니라 학습을 통해 주제 간의 관련성을 파악하는 등 상황 인식 분야에 응용할 수 있다. 예컨대, LDA는 문서 모델링을 위해 고안된 학습법이지만, 개시된 기술은 다른 종류의 이산(discrete) 데이터에 다양하게 적용할 수 있다. 예컨대, 이미지 데이터, 비디오 데이터, 오디오 데이터, 중력 가속도 센서 또는 위치정보 센서로부터 수집한 데이터 등에 은닉 변수 학습을 위하여 베이지안 확률 모델을 적용할 수 있다. The disclosed technique can be applied to the field recognition situation using the LDA described above, as well as document classification as well as learning the relationship between the subjects through learning. For example, LDA is a learning method designed for document modeling, but the disclosed technique can be variously applied to other kinds of discrete data. For example, a Bayesian probabilistic model may be applied to learn hidden variables in image data, video data, audio data, data collected from a gravitational acceleration sensor, or a location information sensor.
개시된 기술은 베이지안 확률 모델에서 관측 데이터가 주어졌을 때 비관측 데이터에 대한 확률을 계산함으로써 추론(inference)을 실시할 수 있다. 문서 모델을 예로 들면, 단어들이 주어졌을 때 추론을 통해 문서의 주제 분포, 각 단어가 속한 주제 및 각각 주제의 단어 분포에 대한 사후 분포를 계산함으로써 추론할 수 있다. 개시된 기술은 [수학식 1]을 이용하여 사후 분포를 계산할 수 있다. 여기에서, H는 모델이고, D는 데이터를 나타내는 확률변수(random variable)이다.The disclosed technique can perform inference by calculating the probability for unobserved data given observation data in a Bayesian probability model. Using the document model as an example, it can be inferred by inferring the distribution of the subject of the document, the subject to which each word belongs, and the post-distribution of the distribution of the words of each subject. The disclosed technique can calculate the posterior
[수학식 1]에 따라 사후 분포를 계산하기 위해서는, 결합 분포(joint distribution)와 데이터에 대한 주변 분포(marginal distribution)를 알고 있어야 한다. 도 1의 LDA의 그래프 표현에서 도시된 바와 같이 하나의 문서에 대한 사후 분포는 [수학식 2] 와 같이 정리될 수 있다.In order to calculate the posterior distribution according to [Equation 1], it is necessary to know the joint distribution and the marginal distribution for the data. As shown in the graphical representation of the LDA of FIG. 1, the post-distribution for one document can be summarized as in Equation 2 below.
여기에서, 결합분포 를 은닉 변수 에 대해서 주변화(marginalize)한 를 계산-[수학식 3]-함으로써, 사후 분포를 계산할 수 있다. Here, the bond distribution Conceal variables Marginalized for The post-distribution can be calculated by calculating-[Equation 3]-.
은닉 변수에 대한 주변 분포 는 를 함께 고려하는 경우 개의 상태 공간(state space) 값에 대한 계산이 현실적으로 어려울 수 있으며, 이에 대하여 사후 분포를 계산하기 위해서는 근사 추론을 할 수 있다.Ambient Distributions for Hidden Variables The If you consider It may be difficult to calculate the state space values of dogs, and approximation inference may be performed to calculate post-distribution.
이하에서는, 개시된 기술에서 적용될 수 있는 근사 추론 방법에 대하여 설명한다. 근사 추론 방법으로는 결정적(deterministic) 근사 기반의 추론이나 다른 하나는 샘플링 기반의 추론이 사용될 수 있다. 여기서는 샘플링 기반 추론의 하나로서 깁스 샘플러(Gibbs sampler)에 대하여 설명한다.Hereinafter, an approximation inference method that can be applied in the disclosed technology will be described. As an approximation reasoning method, a deterministic approximation based reasoning or the other sampling based reasoning may be used. Here, the Gibbs sampler will be described as one of sampling-based reasoning.
먼저 모든 은닉 변수 에 대한 사후 분포를 결정하기 위해서는 많은 계산을 필요로 하기 때문에, 가장 관심있는 확률 변수인 주제 z에 대한 사후 분포로 결정한다. 다른 은닉 변수인 에 대해 각각 적분한 결과로 얻을 수 있는 가장 관심 있는 은닉 주제 z에 대한 사후 분포를 이하의 [수학식 4]로서 정의할 수 있다.First all hidden variables Since a lot of calculations are needed to determine the post-distribution for, we decide the post-distribution for the subject z, which is the most interesting random variable. Another hidden variable The posterior distribution of the most interesting hidden subject z that can be obtained as a result of integrating for each can be defined as Equation 4 below.
깁스 샘플러의 경우, 비관측 확률변수가 여러 개인 경우에 보다 효과적일 수 있다. 하나의 문서가 N 개의 단어로 구성되어 있다고 가정하면, N 개의 은닉 주제에 대한 사후 분포는 [수학식 5]로서 계산될 수 있다.For the Gibbs sampler, this may be more effective when there are several unobserved random variables. Assuming that one document is composed of N words, the posterior distribution for the N hidden subjects can be calculated as [Equation 5].
전체 N 개 단어의 주제를 결정하는 과정을 샘플(토픽) 추출 과정이라고 하면, 미리 지정된 반복횟수만큼 샘플 추출 과정의 반복을 수행함으로써 사후 분포를 계산할 수 있고, 이를 이용하여 단어가 주어졌을 때 그에 해당하는 주제가 무엇인지 확인할 수 있다. 이와 같이, 샘플을 추출하기 위해서는 완전 조건부 분포(full conditional distribution)를 정의할 필요가 있으며, 디리슐레-다항 분포 간의 관계(conjugate prior)로부터 [수학식 6]과 같이 완전 조건부 분포를 유도할 수 있다.If the process of determining the subject of all N words is called the sample (topic) extraction process, it is possible to calculate the post-distribution by repeating the sampling process by a predetermined number of repetitions, and when the words are given, You can see what the topic is. As such, in order to extract a sample, it is necessary to define a full conditional distribution, and a full conditional distribution can be derived as shown in Equation 6 from the relationship between the Dirichlet-polynomial distribution. .
여기에서 는 문서에서 n 번째 등장하는 단어의 주제가 k일 때, n 번째 단어 v를 제외한 나머지 모든 단어의 주제가 k인 경우의 빈도를 나타내며, 는 문서 d 의 n 번째 단어를 제외하고 문서에서 주제가 k인 경우의 빈도를 나타낸다.From here Denotes the frequency when the subject of the nth word in the document is k, and the subject of all words except the nth v is k. Denotes the frequency of the subject k in the document, except for the nth word of document d.
깁스샘플러의 샘플 추출 과정으로 얻은 샘플을 이용하면 샘플링 과정에서 배제된 확률변수 를 추정할 수 있으며, 이는 [수학식 7]과 같이 표현될 수 있다.Stochastic variables excluded from the sampling process using samples obtained by Gibbs sampler It can be estimated, which can be expressed as Equation 7.
여기에서, 와 는 다항 분포이며, 와 는 디리슐레 분포이다. 그리고 를 전개해서 얻은 결과를 이용하면 확률변수 ,를 [수학식 8]을 이용하여 얻을 수 있다.From here, Wow Is a polynomial distribution, Wow Is the Dirichlet distribution. And Using the result obtained by expanding the probability variable , Can be obtained using
도 2는 개시된 기술이 적용될 수 있는 LDA와 Bigram 토픽 모델을 비교할 수 있는 그래프이다. 도 2에서 (a)는 LDA 모델의 그래프이고, (b)는 Bigram 토픽 모델(이하, BT 모델)의 그래프이다. 여기에서, LDA는 관측 단어들이 에만 영향을 받으며, 단어들 사이에는 연관 관계가 없는 것으로 가정하고, BT 모델에서는 뿐만 아니라 n 번째 단어는 이전 단어인 n-1 번째 단어에 의해서도 영향을 받는다고 가정한다.2 is a graph that can compare the LDA and Bigram topic model to which the disclosed technology can be applied. In Figure 2 (a) is a graph of the LDA model, (b) is a graph of the Bigram topic model (hereinafter, BT model). Where LDA is the observation word Is only affected, and it is assumed that there is no association between words. In addition, the nth word is assumed to be affected by the n-1th word, the previous word.
단어 사이의 2차 이상의 고차 마코프 연쇄 가정이 필요한 경우에는 연속적인 bigram을 연결하는 방식으로 해결할 수 있다. 이처럼 단어 사이의 의존성을 고려한 모델을 사용한다면 단어 가 주어지는 경우 단어 을 추론할 수 있다.If you need more than two higher order Markov chain assumptions between words, you can solve this by connecting contiguous bigrams. If you use a model that takes into account the dependencies between words, If given word Can be deduced.
BT 모델에서의 전체 문서의 단어와 주제에 대한 결합 분포는 [수학식 9]와 같이 표현될 수 있다.The combined distribution of the words and subjects of the entire document in the BT model can be expressed as shown in [Equation 9].
BT 모델에서 은닉 주제를 추론하기 위해서 정의된 결합분포로부터 깁스 샘플러의 완전 조건부 분포를 [수학식 10]을 이용하여 유도할 수 있다.In order to infer the hidden subjects in the BT model, the complete conditional distribution of the Gibbs sampler can be derived using Equation 10 from the defined binding distribution.
여기에서, BT 모델은 n 번째 단어 v 의 주제를 추론할 때, n-1 번째 단어 v' 을 고려해서 샘플 추출 과정을 수행할 수 있다.전술한 바와 같이 깁스 샘플러를 수행하여 얻은 샘플을 기반으로 하여, [수학식 11]을 이용하여 은닉 확률 변수 를 추정할 수 있다.Here, the BT model may perform the sampling process in consideration of the n-1th word v 'when inferring the subject of the nth word v. Based on the sample obtained by performing the Gibbs sampler as described above, By using Equation 11, the hidden random variable Can be estimated.
이하에서는 전술한 토픽 모델을 기초로, 센싱 데이터를 수집하고 이를 이용하여 확률적 상황 모델링을 수행하기 위한 기술에 대하여 도 3을 참조하여 설명한다.Hereinafter, a technique for collecting sensing data and performing probabilistic situation modeling using the above-described topic model will be described with reference to FIG. 3.
도 3은 개시된 기술이 적용될 수 있는 상황 인식 시스템의 일 실시예에 따른 구성도이다. 3 is a block diagram of an embodiment of a context aware system to which the disclosed technology may be applied.
도 3을 참조하면, 상황 인식 시스템은 모바일 단말(110)과 상황 인식 서버(120)를 포함할 수 있다. Referring to FIG. 3, the context aware system may include a
모바일 단말(110)은 복수의 센서들을 포함하고, 이를 이용하여 다양한 센싱 데이터를 수집할 수 있고, 수집된 센싱 데이터를 상황 인식 서버(120)에 제공할 수 있다. The
일 실시예에서, 모바일 단말(110)은 GPS(Global Positioning System) 모듈, 근접 센서, 동작 센서, 조도 센서, 자이로 센서, 마이크 모듈, WiFi 모듈, 블루 투스 모듈 중 적어도 하나를 포함하는 스마트 폰으로 구현될 수 있다. 여기에서, 센싱 데이터는 위치 및 속도 데이터, 근접 여부 정보, 움직임 변화량, 단위 면적당 광도, 휴대폰의 방향, 자기장의 세기, 주변 소리의 크기, 잔여 배터리량 및 충전 케이블 연결 유무, 검색 가능한 무선 인터넷 정보, 인근의 블루투스 기기 정보, 구동 중인 프로그램에 대한 정보 중 적어도 하나를 포함할 수 있다. 일 실시예에서, 센싱 데이터는 전술한 정보를 포함하는 다차원 값으로 표현된 이산 데이터일 수 있다. 여기에서, 센싱 데이터는 각 차원의 값은 서로 상이한 형태(heterogeneous)일 수 있고, 또는 같은 형태(homoogeneous)라도 값의 크기가 서로 상이할 수 있다.In one embodiment, the
일 실시예에서, 모바일 단말(110)은 사용자 기록부를 포함할 수 있다. 도 4는 사용자 기록부의 인터페이스에 대한 일 실시예를 나타내는 예시도이다. 사용자 기록부는 현재 행동에 대하여 사용자로부터 정보를 입력받아 전술한 센싱 데이터와 연계하여 저장할 수 있다. 예를 들어, 모바일 단말(110)은 사용자로부터 현재 행동, 이동 수단, 현재 위치, 동행인 정보를 입력받아 센싱 데이터와 연관하여 저장할 수 있다. In one embodiment,
일 실시예에서, 모바일 단말(110)은 설정된 주기적 시간마다 센싱 데이터를 수집할 수 있다. 예를 들어, 모바일 단말(110)은 10초 마다 각 센서나 전술한 모듈을 이용하여 센싱 데이터를 수집할 수 있다. In one embodiment, the
도 5는 개시된 기술이 적용될 수 있는 상황 인식 서버의 일 실시예에 따른 구성도이다. 이하에서는 도 5를 참조하여 상황 인식 서버(120)에 대하여 설명한다.5 is a block diagram of an embodiment of a context aware server to which the disclosed technology may be applied. Hereinafter, the
상황 인식 서버(120)는 모바일 단말(110)로부터 센싱 데이터를 수신하고, 이를 이용하여 상황 인식을 수행한다. 더 상세히 설명하면, 상황 인식 서버(120)는 센싱 데이터 데이터베이스(510), 평균화 모듈(520), 군집화 모듈(530), 상황 학습 모듈(540) 및 상황 추론 모듈(540)을 포함할 수 있다. 일 실시예에서, 상황 인식 서버(120)는 추천 정보 관리 모듈을 더 포함할 수 있다.The
센싱 데이터 데이터베이스(510)는 모바일 단말(110)로부터 수신한 센싱 데이터를 저장할 수 있다. 여기에서, 센싱 데이터는 다양한 센서들에서 수집된 데이터를 포함하고, 각 센서에서 수집된 데이터들의 형식은 서로 상이할 수 있으므로 이들을 동일한 형태의 데이터로 변환하기 위하여 평균화 모듈(520)과 군집화 모듈(530)을 이용한다.The
평균화 모듈(520)은 일정 시간마다 수집된 센싱 데이터들을 평균화할 수 있다. 예를 들어, 모바일 단말(110)은 10초마다 센싱 데이터를 수집할 수 있고, 주기적으로 기록된 정보는 변화량이 크기 때문에 평균화 모듈(520)은 센싱 데이터에 대하여 평균화를 수행할 수 있다. The averaging
일 실시예에서, 평균화 모듈(520)은 슬라이딩 윈도우(sliding window) 방식으로 평균화(smoothing)을 수행할 수 있다. 더 상세히 설명하면, 센싱 데이터 를 윈도우 W에 대하여 이동거리 s 만큼 윈도우를 이동시킴으로서 평균화를 수행할 수 있으며, 이는 [수학식 12]로 표현될 수 있다.In one embodiment, the averaging
여기에서, 수집한 데이터의 수가 N 개, 윈도우의 크기가 |W|, 윈도우 이동 거리가 s 라고 할 때, N/|W|개의 평균화된 데이터를 얻을 수 있다. Here, when the number of collected data is N, the size of the window is | W | and the window moving distance is s, N / | W | averaged data can be obtained.
군집화 모듈(530)은 평균화된 센싱 데이터를 복수의 군으로 구분하여 군집화할 수 있다. 더 상세히 설명하면, 평균화된 센싱 데이터는 여전히 연속적이며 다차원 값이므로 LDA 모델이나 BT 모델을 적용하기 용이하지 않다. 따라서 군집화 모듈(530)은 평균화된 센싱 데이터를 군집화(clustering)하여 센싱 데이터를 학습 및 인식이 용이하도록 비연속적 데이터로 변환할 수 있다. The
일 실시예에서, 군집화 모듈(530)은 k-means 알고리즘을 이용하여 센싱 데이터를 군집화(clustering)할 수 있다. 더 상세히 설명하면, 평균화된 데이터 가 있을 때, k-means 알고리즘을 통해 각 데이터를 거리가 가장 가까운 군집 중심점에 할당할 수 있고, 이는 [수학식 13]으로 표현될 수 있다. 여기에서 군집의 수 K는 LDA 모델이나 BT 모델에서 사용할 수 있는 고유한 단어의 수 V가 될 수 있다.In one embodiment, the
상황 학습 모듈(540)은 평균화 및 군집화 처리된 센싱 데이터(이하, 전처리된 센싱 데이터)를 이용하여 상황 모델을 생성할 수 있다. 더 상세히 설명하면, 상황 학습 모듈(540)은 전처리된 센싱 데이터에 대하여 토픽을 추출하고, 샘플링을 수행하여 사후 분포를 계산함으로써 상황 모델을 생성할 수 있다. 사후 분포의 계산 방법은 도 1 내지 도 2를 참조하여 상기에 설명하였다. 여기에서, 생성된 상황 모델은 상황 모델 데이터베이스(560)에 저장될 수 있다. The
일 실시예에서, 상황 학습 모듈(540)은 사후 분포 학습을 위해 깁스 샘플링을 사용할 수 있다. 더 상세히 설명하면, 상황 학습 모듈(540)은 깁스 샘플링을 통해 얻은 행렬 중 행렬을 이용하기 위해서 확률을 기준으로 내림차순 정렬을 수행할 수 있다. 여기에서, 다수의 주제에서 특정 단어(codeword)의 생성 확률이 높다면 주제별로 분류하거나 의미 분석을 수행할 때 비효율적일 수 있으므로, 상황 학습 모듈(540)은 다수의 주제에서 높은 확률을 갖는 단어들에 대하여 특정한 패널티를 부과할 수 있다. [수학식 14]는 이러한 단어 확률을 수정하기 위한 식이다.In one embodiment,
상황 모델 데이터베이스(560)는 상황 학습 모듈(540)에 의하여 생성된 상황 모델을 저장할 수 있다. 일 실시예에서, 상황 모델 데이터베이스(560)는 해당 상황 모델에 대한 추천 정보를 더 포함할 수 있다.The
상황 추론 모듈(540)은 학습된 상황 모델을 기초로 모바일 단말(110)로부터 수신된 센싱 데이터를 이용하여 해당 단말의 현재 상황을 추론하고 그와 연관된 추천 정보를 제공할 수 있다. 더 상세히 설명하면, 모바일 단말(110)로부터 센싱 데이터가 수신되면, 상황 인식 서버(120)는 평균화 모듈(520) 및 군집화 모듈(530)을 이용하여 전처리를 수행한다. 상황 추론 모듈(540)은 전처리된 센싱 데이터에 해당하는 학습된 상황 모델을 선택하여 모바일 단말(110)의 현재 상황을 추론하고, 추론된 상황 모델과 연관된 추천 정보를 생성하여 제공할 수 있다. 상황 추론의 구체적 실시 방법에 대하여는 도 1 내지 도 2를 참조하여 상술하였다.The
추천 정보 관리 모듈 은 모바일 단말(110)의 사용자 기록부로부터 수신된 정보를 이용하여 추천 정보를 생성할 수 있다. 예를 들어, 사용자가 입력한 정보가 영화 관람이면 그때의 센싱 데이터에 대한 위치 정보, 검색 가능한 인터넷 망 정보 등과 연관된 상황 모델을 이용하여 영화 관람에 대한 추천 정보(예를 들어, 인근의 영화관 정보, 상영 영화에 대한 정보, 영화 관련 이벤트 정보 등)을 생성할 수 있다. The recommendation information management module may generate the recommendation information by using the information received from the user recorder of the
도 6은 개시된 발명이 적용될 수 있는 따른 상황 인식 서비스 방법의 일 실시예에 대한 블록도이다. 도 6은 모바일 단말(110)로부터 센싱 데이터를 수신하고 이를 기초로 학습을 수행하여 상황 모델을 생성하는 상황 인식 서비스 방법을 개시한다.6 is a block diagram of an embodiment of a context aware service method to which the disclosed invention can be applied. 6 illustrates a situation recognition service method of generating a context model by receiving sensing data from the
도 6을 참조하면, 상황 인식 서비스 방법은 모바일 단말(110)로부터 수신된 복수의 센싱 데이터들를 저장하는 단계, 저장된 센싱 데이터들에 대하여 학습 수행을 위한 전처리를 수행하는 단계 및 전처리된 센싱 데이터들에 대하여 적어도 하나의 토픽을 추출하고 추출된 토픽을 이용하여 상기 상황 모델을 생성하는 단계를 포함한다.Referring to FIG. 6, the context recognition service method includes storing a plurality of sensing data received from the
도 7은 도 6의 상황 인식 서비스 방법의 순서도로서, 이하에서 도 7을 참조하여 상황 인식 서비스 방법에 대하여 더 상세히 설명한다.FIG. 7 is a flowchart illustrating the context awareness service method of FIG. 6, and the context awareness service method will be described in more detail below with reference to FIG. 7.
상황 인식 서버(120)는 모바일 단말(110)로부터 센싱 데이터를 수신하면(단계 S710), 수신된 복수의 센싱 데이터들를 저장할 수 있다(단계 S720). 상황 인식 서버(120)는 설정된 단위 시간별로 저장된 센싱 데이터들을 평균화할 수 있다(단계 S730). 여기에서, 상황 인식 서버(120)는 슬라이딩 윈도우 방식을 이용하여 평균화를 수행할 수 있다. 이후, 상황 인식 서버(120)는 평균화된 센싱 데이터들을 복수의 군으로 구분하여 군집화하여(단계 S740), 센싱 데이터에 대한 전처리를 수행할 수 있다. 상황 인식 서버(120)는 전처리된 센싱 데이터들에 대하여 적어도 하나의 토픽을 추출하고(단계 S750), 추출된 적어도 하나의 토픽의 분포를 이용하여 전처리된 센싱 데이터들을 구분하여 상기 상황 모델을 생성할 수 있다(단계 S760). 여기에서, 상황 인식 서버(120)는 LDA 모델 또는 Bigram 토픽 모델을 이용하여 토픽을 추출하여 상황 모델을 생성할 수 있다. When the
도 8은 개시된 발명이 적용될 수 있는 따른 상황 인식 서비스 방법의 일 실시예에 대한 블록도이다. 도 8은 도 6의 방법으로 생성된 상황 모델을 기초로 현재 모바일 단말(110)의 상황을 인식하고 그에 적합한 추천 정보를 제공하는 상황 인식 서비스 방법을 개시한다.8 is a block diagram of an embodiment of a context aware service method to which the disclosed invention can be applied. FIG. 8 discloses a situation recognition service method for recognizing a situation of the current
도 8을 참조하면, 상황 인식 서비스 방법은 모바일 단말(110)로부터 수신된 센싱 데이터에 대하여 전처리를 수행하는 단계, 전처리된 센싱 데이터에 대하여 적어도 하나의 토픽을 추출하고 적어도 하나의 토픽에 해당하는 상황 모델(이하, 제1 상황 모델)을 생성하는 단계, 제1 상황 모델을 추론하여 상황 모델 데이터베이스(560)로부터 해당 상황 모델을 선택하는 단계 및 선택된 해당 상황 모델에 대한 추천 정보를 제공하는 단계를 포함한다.Referring to FIG. 8, the context recognition service method includes performing preprocessing on sensing data received from the
도 9은 도 8의 상황 인식 서비스 방법의 순서도로서, 이하에서 도 9을 참조하여 상황 인식 서비스 방법에 대하여 더 상세히 설명한다.FIG. 9 is a flowchart illustrating the context recognition service method of FIG. 8, and the context awareness service method will be described in more detail with reference to FIG. 9.
상황 인식 서버(120)는 모바일 단말(110)로부터 센싱 데이터를 수신하면(단계 S910), 수신된 센싱 데이터에 대하여 전처리를 수행할 수 있다(단계 S920). 일 실시예에서, 상황 인식 서버(120)는 수신된 센싱 데이터들을 복수의 군으로 구분하여 군집화할 수 있다. 이후, 상황 인식 서버(120)는 전처리된 센싱 데이터에 대하여 적어도 하나의 토픽을 추출하고(단계 S930), 추출된 토픽을 이용하여 그에 해당하는 제1 상황 모델을 생성할 수 있다. 여기에서, 제1 상황 모델은 수신된 센싱 데이터를 기초로 생성된 것으로, 상황 모델 데이터베이스(560)에 저장된 상황 모델에 정확히 일치하지 않을 수 있다. 따라서 상황 인식 서버(120)는 제1 상황 모델에 대하여 추론을 수행하여(추론의 상세한 방법은 도 1 내지 도 2에 상술함), 수신된 센싱 데이터에 해당하는 상황 모델을 상황 모델 데이터베이스에서 선택할 수 있다(단계 S950). 이를 더 상세히 설명하면, 상황 인식 서버(120)는 제1 상황 모델에 대하여 사후 분포를 계산하고, 계산된 사후 분포에 대하여 샘플링 기반으로 근사 추론을 수행하여 제1 상황 모델에 해당하는 상황 모델을 상황 모델 데이터베이스(560)에서 선택할 수 있다. 여기에서, 선택된 상황 모델은 현재 모바일 단말(110)의 상황으로 추론되는 상황이며, 상황 인식 서버(120)는 이러한 추론된 상황에 적합한 추천 정보를 모바일 단말(110)에 제공할 수 있다(단계 S960). 더 상세히 설명하면, 상황 인식 서버(120)는 각 상황 모델에 대한 추천 정보를 구비할 수 있다. 일 실시예에서, 추천 정보는 상황 모델 데이터베이스(560)에 포함되어 있을 수 있고, 또는 별도의 저장 모듈로서 저장될 수 있다. When the
개시된 기술이 적용될 수 있는 하나의 예로서, 모바일 단말(110)을 통해 수집된 센싱 데이터로부터 현재 사용자가 출근길인 것을 추론하고, 출근길 교통 정보를 통해 빠른 길을 안내할 수 있고, 다른 예로서, 주말에 자주 이용하는 영화관에서 상영하는 영화에 대한 정보를 알려주는 서비스를 제공할 수 있다. As one example to which the disclosed technology may be applied, it is possible to infer that the current user is on the way to work from the sensing data collected through the
이하에서는, 도 10을 참조하여 개시된 기술에 의한 상황 인식 서비스가 제공할 수 있는 예시적 서비스에 대한 실험 및 그 결과를 설명한다.Hereinafter, with reference to FIG. 10 will be described an experiment and results for an exemplary service that can be provided by the context aware service according to the disclosed technology.
여기서는 모바일 단말(110)을 통하여 수집된 센싱 데이터로부터 패턴 발견이 가능한 것을 보이기 위해 실험을 수행한다. 한 명이 2 달 동안 수집한 센서 데이터를 사용하여 실험을 실시하였고, 이는 한 명의 피실험자가 약 60일간 수집한 데이터이다. 하루 동안 수집된 데이터의 수가 너무 적은 경우를 제외하고, 35일간(약 600시간) 수집한 데이터를 사용하였다. In this case, an experiment is performed to show that the pattern can be found from the sensing data collected through the
도 10은 요일 별 행동 유형을 도시하는 토픽 분포도이다.10 is a topic distribution diagram illustrating the types of behaviors by day of the week.
도 10에 도시된 토픽 분포도는 첫 번째 데이터에 관한 것으로서, 일상 생활 중 수집된 35일 동안의 센서 데이터 중 선별된 주중 17일과 휴일 1일에 대한 토픽 분포도를 도시하고 있다. The topic distribution diagram shown in FIG. 10 relates to the first data and shows a topic distribution map for 17 days of the week and 1 day of holidays selected from the 35 days of sensor data collected during daily life.
도 10에 도시된 바와 같이, 센싱 데이터를 기초로 5가지의 토픽을 산출하였고, 각 요일 별로 토픽의 분포를 알 수 있다. 여기에서, 화요일을 보면 토픽 2의 비율이 80% 이상이 되고 있으며, 나머지 토픽과의 비율을 비교하면 토픽 자체로서 화요일을 특정할 수 있음을 알 수 있다. 또한 목요일의 경우, 토픽 3의 비율이 높게 형성되고 나머지 토픽의 비율이 균등에 가까우므로, 이러한 토픽 분포로서 목요일임을 확인할 수 있다. 이와 같이, 센싱 데이터들로부터 요일에 대한 토픽 분포를 이용하여, 각 요일별로 상황 모델을 생성할 수 있고, 이후에 수집되는 센싱 데이터를 기준으로 해당 요일을 확인하고, 그러한 요일에 적합한 추천 정보를 제공할 수 있다. 예를 들어, 사용자는 목요일 오후에 주로 영화를 관람하였다면(이는 사용자 기록부를 통하여 사용자가 입력한 정보로부터 확인할 수 있음), 수신된 센싱 데이터로부터 목요일이 확인되면, 영화와 관련된 정보(추천 정보)를 사용자에게 제공할 수 있다.As shown in FIG. 10, five topics were calculated based on sensing data, and the distribution of the topics was found for each day of the week. Here, the Tuesday shows that the ratio of the topic 2 is 80% or more, and comparing the ratio with the rest of the topics shows that the Tuesday can be specified as the topic itself. In addition, in the case of Thursday, since the ratio of topic 3 is formed high and the ratio of the remaining topics is near, it can be confirmed that the topic distribution is Thursday. In this way, a situation model can be generated for each day of the week by using a topic distribution for the day of the week from the sensing data, the corresponding day is checked based on the collected sensing data, and the recommendation information suitable for the day is provided. can do. For example, if a user mainly watched a movie on a Thursday afternoon (which can be confirmed from information input by the user through the user log), and if Thursday is confirmed from the received sensing data, information related to the movie (recommended information) may be obtained. Can be provided to the user.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다. The disclosed technique may have the following effects. It is to be understood, however, that the scope of the disclosed technology is not to be construed as limited thereby, as it is not meant to imply that a particular embodiment should include all of the following effects or only the following effects.
일 실시예에 따른 모바일 단말을 이용한 상황 인식 서비스 제공 방법은 모바일 단말기의 사용자의 현재 상황을 인식하여 그에 알맞은 추전 정보를 제공할 수 있다. 모바일 단말기의 복수개의 센서 데이터들을 이용하여 사용자의 상황 모델을 인식하고, 그에 알맞은 추천 정보를 제공할 수 있기 때문이다.The context recognition service providing method using the mobile terminal according to an embodiment may recognize current state of a user of the mobile terminal and provide appropriate information. This is because a plurality of sensor data of a mobile terminal can be used to recognize a user's situation model and provide appropriate recommendation information.
상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 출원의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 출원을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the spirit and scope of the present invention as set forth in the following claims It can be understood that
Claims (12)
상기 센싱 데이터에 포함된 상이한 형식의 복수의 데이터들을 소정의 시간 간격으로 평균화를 수행한 후 복수의 군으로 구분하여 비연속적으로 군집화하여 상이한 형식의 복수의 데이터들을 동일한 형식이 되도록 전처리를 수행하고, 전처리된 센싱 데이터에 대하여 토픽을 추출하고 LDA(Latent Dirichlet Allocaiont) 모델 또는 BT(Bigram Topic) 모델을 이용하여 샘플링을 수행하여 사후 분포를 계산하여 상황 모델을 생성하고, 상기 상황 모델을 기초로 모바일 단말의 상황을 추론하여 그와 연관된 추천 정보를 제공하는 상황 인식 서버를 포함하는 것을 특징으로 하는 상황 인식 시스템.
The mobile terminal comprising a plurality of sensors and providing the sensed data expressed in multi-dimensional value, which contains the data collected from the plurality of sensors; And
After averaging a plurality of data of different formats included in the sensing data at predetermined time intervals, and dividing them into a plurality of groups and discontinuously clustering the plurality of data of different formats to have the same format. Extract the topic for the preprocessed sensing data, perform sampling using LDA (Latent Dirichlet Allocaiont) model or Bigram Topic (BT) model to calculate post-distribution, create situation model, and based on the situation model And a context aware server for inferring the context of the context and providing recommendation information associated therewith.
설정된 시간마다 상기 센싱 데이터를 수집하여 제공하는 것을 특징으로 하는 상황 인식 시스템.
The method of claim 1, wherein the mobile terminal
The situation recognition system, characterized in that for collecting the sensing data for each set time.
상기 센싱 데이터에 포함된 상이한 형식의 복수의 데이터들에 대하여 W의 크기를 가지는 윈도우를 이동거리 s로 이동시켜 평균화하는 슬라이딩 윈도우 방식을 이용하여 평균화하는 평균화 모듈; 및
상기 평균화 모듈에 의하여 평균화된 복수의 데이터들을 K-means 방식으로 복수의 군으로 구분하는 군집화 모듈;을 포함하되,
상기 군집화 모듈에 의한 군집의 수 K는 상기 LDA(Latent Dirichlet Allocaiont) 모델 또는 BT(Bigram Topic) 모델에서 사용할 수 있는 고유한 단어의 수 V에 상응하는 것을 특징으로 하는 상황 인식 시스템.
The method of claim 1, wherein the situation awareness server
An averaging module for averaging by using a sliding window method of moving and averaging a window having a size of W to a moving distance s for a plurality of data of different formats included in the sensing data; And
And a clustering module for classifying the plurality of data averaged by the averaging module into a plurality of groups in a K-means manner.
The number K of the clusters by the clustering module corresponds to the number V of unique words that can be used in the Latent Dirichlet Allocaiont (LDA) model or the Bigram Topic (BT) model.
상기 군집화 모듈에 의하여 군집화된 센싱 데이터에 대하여 토픽을 추출하고, 추출된 토픽에 대하여 깁스 샘플링을 이용하여 복수의 주제에서 기 설정된 값 이상의 확률을 가지는 단어들에 패널티를 부과하도록 하여 사후 학습을 수행하여 상기 LDA(Latent Dirichlet Allocaiont) 모델 또는 BT(Bigram Topic) 모델을 생성하는 상황 학습 모듈을 포함하는 것을 특징으로 하는 상황 인식 시스템.
The method of claim 3, wherein the situation awareness server
After the topic is extracted from the sensing data clustered by the clustering module, a post-learning is performed by imposing a penalty on words having a probability greater than or equal to a predetermined value in a plurality of topics by using Gibbs sampling on the extracted topic. And a context learning module for generating the latent rich allocaiont (LDA) model or the bigram topic model.
(a) 상기 모바일 단말로부터 수신된 복수의 센싱 데이터들를 저장하는 단계;
(b) 상기 센싱 데이터에 포함된 상이한 형식의 복수의 데이터들을 소정의 시간 간격으로 평균화를 수행한 후 복수의 군으로 구분하여 비연속적으로 군집화하여 상이한 형식의 복수의 데이터들을 동일한 형식이 되도록 전처리를 수행하는 단계; 및
(c) 전처리된 센싱 데이터에 대하여 토픽을 추출하고 LDA(Latent Dirichlet Allocaiont) 모델 또는 BT(Bigram Topic) 모델을 이용하여 샘플링을 수행하여 사후 분포를 계산하고 상황 모델을 생성하고, 상기 상황 모델을 기초로 모바일 단말의 상황을 추론하여 그와 연관된 추천 정보를 제공하는 단계;
를 포함하는 것을 특징으로 하는 상황 인식 서비스 방법.
In the situation recognition service method of the situation recognition server that receives a plurality of sensing data from the mobile terminal to generate a situation model,
(a) storing a plurality of sensing data received from the mobile terminal;
(b) pre-processing the plurality of data of different formats into the same format by averaging the plurality of data of different formats included in the sensing data at predetermined time intervals and then grouping them into a plurality of groups discontinuously. Performing; And
(c) Extract the topic on preprocessed sensing data and perform sampling using Lateral Dirichlet Allocaiont (LDA) model or Bigram Topic (BT) model to calculate post-distribution, generate situation model, and based on the situation model Inferring a situation of the mobile terminal and providing recommendation information associated therewith;
Situational awareness service method comprising a.
상기 센싱 데이터에 포함된 상이한 형식의 복수의 데이터들에 대하여 W의 크기를 가지는 윈도우를 이동거리 s로 이동시켜 평균화하는 슬라이딩 윈도우 방식을 이용하여 평균화하는 단계; 및
상기 슬라이딩 윈도우 방식을 이용하여 평균화하는 단계에 의하여 평균화된 복수의 데이터들을 K-means 방식으로 복수의 군으로 구분하는 군집화 단계;을 포함하되,
상기 군집화 단계에서의 군집의 수 K는 상기 LDA(Latent Dirichlet Allocaiont) 모델 또는 BT(Bigram Topic) 모델에서 사용할 수 있는 고유한 단어의 수 V에 상응하는 것을 특징으로 하는 상황 인식 서비스 방법.
7. The method of claim 6, wherein step (b)
Averaging a plurality of data of different types included in the sensing data by using a sliding window method of moving and averaging a window having a size of W to a moving distance s; And
A clustering step of dividing the plurality of data averaged by the averaging using the sliding window method into a plurality of groups by a K-means method;
The number K of clusters in the clustering step corresponds to the number V of unique words that can be used in the Latent Dirichlet Allocaiont (LDA) model or the Bigram Topic (BT) model.
(a) 상기 모바일 단말로부터 수신된 센싱 데이터에 대하여 소정의 시간 간격으로 평균화를 수행한 후 복수의 군으로 구분하여 비연속적으로 군집화하여 상이한 형식의 복수의 데이터들을 동일한 형식이 되도록 전처리를 수행하는 단계;
(b) 상기 전처리된 센싱 데이터에 대하여 적어도 하나의 토픽을 추출하고 LDA(Latent Dirichlet Allocaiont) 모델 또는 BT(Bigram Topic) 모델을 이용하여 제1 상황 모델을 생성하는 단계; 및
(c) 상기 제1 상황 모델에 대하여 깁스 샘플러를 이용하여 기 지정된 횟수만큼 샘플 추출 과정을 반복 수행하여 사후 분포를 근사 추론하여, 상기 제1 상황 모델에 해당하는 제1 표준 상황 모델을 상황 모델 데이터베이스에서 선택하는 단계; 및
(d) 상기 모바일 단말에 상기 선택된 제1 표준 상황 모델에 대한 추천 정보를 제공하는 단계;
를 포함하는 것을 특징으로 하는 상황 인식 서비스 방법.
A situation recognition service method performed in a situation recognition server that performs situation recognition of the mobile terminal based on sensing data received from a mobile terminal, wherein the situation recognition server includes the situation model database generated by learning.
(a) averaging the sensing data received from the mobile terminal at predetermined time intervals, and then performing preprocessing to divide the data into a plurality of groups and to discontinuously cluster the plurality of data having different formats in the same format. ;
(b) extracting at least one topic for the preprocessed sensing data and generating a first situation model using a latent rich allocaiont (LDA) model or a bigram topic (BT) model; And
(c) iteratively infers a posterior distribution by repeatedly performing a sampling process for a predetermined number of times using the Gibbs sampler with respect to the first situation model, and generates a first standard situation model corresponding to the first situation model by using a situation model database. Selecting from; And
(d) providing recommendation information for the selected first standard context model to the mobile terminal;
Situational awareness service method comprising a.
(c-1) 상기 제1 상황 모델에 대하여 사후 분포를 계산하는 단계; 및
(c-2) 상기 사후 분포에 대하여 샘플링 기반으로 근사 추론을 수행하여 해당 상황 모델을 상기 상황 모델 데이터베이스에서 선택하는 단계를 포함하는 것을 특징으로 하는 상황 인식 서비스 방법.
11. The method of claim 10, wherein step (c)
(c-1) calculating a post distribution on the first situation model; And
and (c-2) performing approximation inference based on sampling on the posterior distribution to select a corresponding situation model from the situation model database.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110012531A KR101267561B1 (en) | 2011-02-11 | 2011-02-11 | Method for providing context aware service using mobile terminal and system thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110012531A KR101267561B1 (en) | 2011-02-11 | 2011-02-11 | Method for providing context aware service using mobile terminal and system thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120092459A KR20120092459A (en) | 2012-08-21 |
KR101267561B1 true KR101267561B1 (en) | 2013-05-24 |
Family
ID=46884486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110012531A KR101267561B1 (en) | 2011-02-11 | 2011-02-11 | Method for providing context aware service using mobile terminal and system thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101267561B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101586262B1 (en) | 2014-09-11 | 2016-01-20 | 경북대학교 산학협력단 | Method for finding social interaction patterns, recording medium and mobile terminal for performing the method |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9740773B2 (en) | 2012-11-02 | 2017-08-22 | Qualcomm Incorporated | Context labels for data clusters |
US9336295B2 (en) | 2012-12-03 | 2016-05-10 | Qualcomm Incorporated | Fusing contextual inferences semantically |
KR102184691B1 (en) * | 2013-04-05 | 2020-11-30 | 에스케이텔레콤 주식회사 | Method for recording life log diary based on context aware, apparatus and terminal thereof |
KR101509381B1 (en) * | 2014-01-09 | 2015-04-08 | 중앙대학교 산학협력단 | Method, system and computer program product for utilizing mobile node as context aware resource |
KR101499618B1 (en) * | 2014-04-14 | 2015-03-10 | 전자부품연구원 | IoT Service Method with LSA Algorithm and System using the same |
KR101639617B1 (en) * | 2015-02-26 | 2016-07-14 | 서울대학교산학협력단 | Method of predicting real-time moving route of user, server performing the same and storage media storing the same |
CN108710502B (en) * | 2018-04-08 | 2020-09-29 | 华中科技大学 | Personalized configuration method and system of numerical control system |
-
2011
- 2011-02-11 KR KR1020110012531A patent/KR101267561B1/en active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101586262B1 (en) | 2014-09-11 | 2016-01-20 | 경북대학교 산학협력단 | Method for finding social interaction patterns, recording medium and mobile terminal for performing the method |
Also Published As
Publication number | Publication date |
---|---|
KR20120092459A (en) | 2012-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101267561B1 (en) | Method for providing context aware service using mobile terminal and system thereof | |
US10748121B2 (en) | Enriching calendar events with additional relevant information | |
KR101399267B1 (en) | Method and apparatus for recommending application in mobile device | |
Chon et al. | Automatically characterizing places with opportunistic crowdsensing using smartphones | |
CN105488025B (en) | Template construction method and device, information identifying method and device | |
CN108351870A (en) | According to the Computer Distance Education and semantic understanding of activity pattern | |
CN103699547B (en) | A kind of application program recommended method and terminal | |
KR20190106865A (en) | Method for searching video and equipment with video search function | |
US20230059697A1 (en) | System and Method for Indexing Large Volumes and Durations of Temporally-Based Sensor Datasets | |
Ferrari et al. | Discovering daily routines from google latitude with topic models | |
KR20180120146A (en) | Response to remote media classification queries using classifier model and context parameters | |
CN102207954A (en) | Electronic apparatus, content recommendation method and program therefor | |
CN103038765A (en) | Method and apparatus for adapting a context model | |
CN111800445B (en) | Message pushing method and device, storage medium and electronic equipment | |
CN111783712A (en) | Video processing method, device, equipment and medium | |
CN111752647A (en) | Card information display method and device, computer equipment and storage medium | |
KR20150080090A (en) | System for recommending product based on Hadoop and apparatus and methode for recommending product in the system | |
CN111797861A (en) | Information processing method, information processing apparatus, storage medium, and electronic device | |
CN109978491A (en) | Remind prediction technique, device, computer equipment and storage medium | |
CN111625680A (en) | Method and device for determining search result | |
CN111708913A (en) | Label generation method and device and computer readable storage medium | |
CN103702117A (en) | Image processing apparatus, image processing method, and program | |
US9020863B2 (en) | Information processing device, information processing method, and program | |
CN111931616A (en) | Emotion recognition method and system based on mobile intelligent terminal sensor equipment | |
CN111797867A (en) | System resource optimization method and device, storage medium and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160128 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170321 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180410 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190410 Year of fee payment: 7 |