KR101785219B1 - Service recommendation for user groups in internet of things environments using member organization-based group similarity measures - Google Patents

Service recommendation for user groups in internet of things environments using member organization-based group similarity measures Download PDF

Info

Publication number
KR101785219B1
KR101785219B1 KR1020160104307A KR20160104307A KR101785219B1 KR 101785219 B1 KR101785219 B1 KR 101785219B1 KR 1020160104307 A KR1020160104307 A KR 1020160104307A KR 20160104307 A KR20160104307 A KR 20160104307A KR 101785219 B1 KR101785219 B1 KR 101785219B1
Authority
KR
South Korea
Prior art keywords
group
service
user
similarity
recommendation
Prior art date
Application number
KR1020160104307A
Other languages
Korean (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 KR1020160104307A priority Critical patent/KR101785219B1/en
Application granted granted Critical
Publication of KR101785219B1 publication Critical patent/KR101785219B1/en

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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • 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
    • G06F17/30705
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • 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/0254Targeted advertisements based on statistics
    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/30Transportation; Communications
    • G06Q50/40

Abstract

일 실시예에 따른 사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 방법은, 사용자의 식별 정보 및 서비스가 입력됨을 수신하는 단계; 상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계; 상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계; 및 상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계를 포함할 수 있다. A service recommendation method for a group user in an object Internet environment according to an exemplary embodiment includes: receiving input of a user's identification information and a service; Generating a service rating matrix based on the user and service; Measuring group similarity based on each group configuration information as the service rating matrix is generated; And performing collaborative filtering on the recommendation target group based on the group similarity.

Figure R1020160104307
Figure R1020160104307

Description

사물 인터넷 환경에서의 그룹 사용자를 위한 그룹 구성 정보 기반 서비스 추천 방법{SERVICE RECOMMENDATION FOR USER GROUPS IN INTERNET OF THINGS ENVIRONMENTS USING MEMBER ORGANIZATION-BASED GROUP SIMILARITY MEASURES}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for recommending a service based on a group configuration information for a group user in an Internet environment,

아래의 설명은 서비스 추천 기술에 관한 것으로, 사물 인터넷 환경에서의 그룹 구성 정보에 기반한 서비스 추천 방법 및 시스템에 관한 것이다.
The following description relates to a service recommendation technique, and relates to a service recommendation method and system based on group configuration information in an object internet environment.

최근 다양해진 사물 인터넷(Internet of Things, IoT) 기기들의 등장으로 인해 해당 기기들을 조합, 활용하여 다양한 서비스를 제공할 수 있게 되었다. 이러한 흐름에 따라 현재 스마트 홈과 같이 개인 가정 내의 사물 인터넷 환경뿐만 아니라 공공장소 또한 사물 인터넷 환경을 갖추며 Urban 스케일의 환경이 구축될 것이다. Recently, with the emergence of various Internet of Things (IoT) devices, various devices can be combined and utilized to provide various services. According to this trend, not only the Internet environment but also the public space like the smart home will be equipped with the Internet environment for objects and the environment of Urban scale will be established.

사용자 입장에서 모든 공공 사물 인터넷 환경(Public IoT environments)에서 IoT 기기를 활용하여 자신이 이용할 수 있는 서비스들이 무엇인지 어떤 태스크들을 수행할 수 있는 지 파악하는 것은 불가능하다. 이러한 문제를 해결하기 위한 방법으로 서비스 추천 시스템을 제안하고, 그룹 사용자들을 대상으로 서비스를 추천하는 기술이 제시될 필요가 있다. It is impossible for users to understand what services they can use and what tasks they can perform using IoT devices in all Public IoT environments. To solve this problem, we propose a service recommendation system and propose a service recommendation method for group users.

사물 인터넷 환경에서 추천 시스템을 고안할 때 고려해야 할 사항은 다음과 같다. 첫째, 개인 사용자가 선호하는 서비스와 그룹 사용자가 선호하는 서비스의 종류가 다르다. 이는 기존의 그룹 사용자를 대상으로 하는 추천 시스템에 대한 대다수 연구가 이루어지고 있는 도메인(예를 들어, 영화, 식당 등)과 다른 특성으로 분류된다. 기존 연구에서는 각 구성원들의 항목에 대한 선호도를 어떻게 종합하여 모두가 만족할 만한 추천을 하는 지에 집중하고 있다. 하지만 이는 각 구성원의 항목에 대한 선호도가 그룹을 형성하였을 때도 동일하게 유지된다는 것을 전제로 하고 있다. 하지만 사물 인터넷 환경에서는 개인이 선호하는 태스크가 있는 반면, 그룹을 형성하였을 때 선호하는 태스크가 따로 있으므로 기존의 접근법이 사용될 경우 그룹 사용자에게 각 구성원들이 개인일 때 선호하는 태스크를 수행할 수 있다. Things to consider when devising a recommendation system in the Internet environment are as follows. First, the types of services preferred by individual users are different from those of group users. It is categorized as different characteristics from domain (for example, movie, restaurant, etc.) where the majority of studies on recommendation system targeting existing group users are conducted. In previous research, we focused on how to make recommendation for each member by satisfying each member 's preference. However, it is presupposed that the preference for the item of each member remains the same when the group is formed. However, in the Internet environment of objects, there are tasks that individuals prefer, whereas in the case of forming a group, there are some tasks that they prefer. Therefore, when the existing approach is used, the group user can perform a task preferred when each member is an individual.

둘째, 사용자가 해당 장소를 처음 방문하는 경우가 빈번하게 발생한다. 이는 사용자의 과거의 서비스 수행 기록이 없다는 것을 의미하며 추천 시스템에서 가장 어려운 문제 중의 하나인 Cold start problem으로 분류된다. 협업 필터링 방법은 나와 유사한 성향을 보이는 다른 사용자들이 사용한 항목 또는 높게 평점을 부여한 항목을 추천하는 방식이다. 이때, 유사한 성향이라 하면 과거에 동일한 항목을 구매하거나 유사하게 평점을 부여하는 경우를 의미한다. 하지만 과거 기록이 전혀 없는 경우 유사한 성향을 측정할 방법이 없어져 협업 필터링 방법이 정상적으로 동작할 수 없다는 것을 의미한다. Second, the user frequently visits the place for the first time. This means that there is no record of the user's past service performance and it is classified as Cold start problem which is one of the most difficult problems in the recommendation system. Collaborative filtering is a method of recommending items used by other users who have a similar tendency to similar items or highly rated items. In this case, the similar tendency means that the same items are purchased in the past, or a similar rating is given in the past. However, if there is no past record, there is no way to measure similar tendencies, which means that the collaborative filtering method can not operate normally.

셋째, 사용자로부터 직접적인 피드백을 획득하기 어려우며 프라이버시 이슈로 인해 사용자의 상세한 프로필 정보를 획득할 수 없다. 일부 그룹 대상을 대상으로 하는 추천 시스템에서는 각 구성원들의 프로필 정보(나이, 직업, 성별 등), 사회적 관계, 역할 등의 정보들을 활용하지만 실제 사물 인터넷 환경에서 이와 같은 정보를 획득하는 것은 사용성 및 프라이버시 문제로 인해 활용되기 힘들다. 다시 말해서, 사용자의 모바일 기기와 비콘 등을 활용하는 상황을 가정하여 최소한의 정보로 사용자 식별 정보(예를 들면, 사용자의 모바일 기기 식별 정보)만을 사용해야 한다.
Third, it is difficult to obtain direct feedback from the user, and detailed profile information of the user can not be obtained due to the privacy issue. In a recommendation system targeting a group of objects, information such as profile information (age, occupation, sex, etc.), social relations, and role of each member is used. However, obtaining such information in a real object internet environment is a problem of usability and privacy . In other words, it is necessary to use only user identification information (for example, user's mobile device identification information) as minimum information on the assumption that the user uses the mobile device and the beacon.

본 발명은 기존의 협업 필터링 방법의 한계를 극복하기 위하여 그룹 구성 정보 기반의 그룹 유사도 측정 기준과 방법을 제시하고 그룹 유사도를 적용한 협업 필터링 방법을 제공할 수 있다.
In order to overcome the limitations of the existing collaborative filtering method, the present invention proposes a group similarity measurement criteria and method based on group configuration information, and can provide a collaborative filtering method applying group similarity.

일 실시예에 따르면, 사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 방법은, 사용자의 식별 정보 및 서비스가 입력됨을 수신하는 단계; 상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계; 상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계; 및 상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계를 포함할 수 있다.According to one embodiment, a service recommendation method for group users in an object internet environment includes receiving input of identification information of a user and a service; Generating a service rating matrix based on the user and service; Measuring group similarity based on each group configuration information as the service rating matrix is generated; And performing collaborative filtering on the recommendation target group based on the group similarity.

상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계는, 로그 기반의 정규화를 통해 서비스 사용 횟수를 평점 정보로 변환하여 개인 사용자와 상기 서비스에 대한 행렬, 그룹 사용자와 상기 서비스에 대한 행렬 각각을 생성하는 단계를 포함할 수 있다.The step of generating a service rating matrix based on the user and the service may include converting a service use frequency to rating information through log-based normalization to obtain a matrix for an individual user and the service, a matrix for a group user and a service, And a step of generating the data.

상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는, 그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 상기 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계를 포함할 수 있다. The step of measuring the group similarity based on each group configuration information as the service rating matrix is generated includes the steps of measuring group similarity based on the group configuration information on the number of group members, the common group member, and the distribution of member preferences .

상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는, 그룹 간 상기 그룹 구성원 수가 기 설정된 범위에 포함될 경우, 유사한 서비스를 선호할 것이라고 판단하는 단계를 포함할 수 있다. The step of measuring the group similarity based on each group configuration information upon generating the service rating matrix may include determining that a similar service will be preferred when the number of group members among the groups is included in a predetermined range have.

상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는, 자카드 유사도를 사용하여 그룹 간 상기 공통된 구성원 수가 많을수록 유사한 서비스를 선호할 것이라고 판단하는 단계를 포함할 수 있다. The step of measuring the group similarity based on the respective group configuration information by generating the service rating matrix may include determining that a similar service will be preferred as the number of the common members among the groups is increased by using the jacquard similarity degree .

상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는, 개인 사용자들에 대하여 개인 사용자와 서비스에 대한 상기 서비스 평점 행렬을 기반으로 계층적 클러스터링을 적용하고, 각 그룹의 유저 벡터를 상기 클러스터링의 결과에 기반하여 유저 클러스터 벡터로 변환하고, 상기 구성원 선호도 분포를 기반으로 그룹 유사도를 측정하는 단계를 포함할 수 있다. The step of measuring the group similarity based on each group configuration information by generating the service rating matrix includes applying hierarchical clustering based on the service rating matrix for individual users and services to individual users, Converting the user vector of the group into a user cluster vector based on the clustering result, and measuring the group similarity based on the member preference distribution.

상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는, 상기 계층적 클러스터링을 적용함에 있어서, 코사인 유사도를 사용하여 서비스 평점이 전혀 존재하지 않는 사용자를 별개의 단일 클러스터에 포함시키는 단계를 포함할 수 있다. The step of measuring the group similarity based on each group configuration information by generating the service rating matrix may include the steps of: using the cosine similarity to apply the hierarchical clustering to a user having no service rating, Into the cluster.

상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계는, 상기 추천 대상 그룹과 상기 그룹 유사도가 기 설정된 임계치 이상인 그룹들을 이웃 그룹으로 선택하고, 상기 이웃 그룹의 평점을 상기 그룹 유사도를 가중치로 하여 통합하는 단계를 포함할 수 있다. The performing the collaborative filtering on the recommendation target group based on the group similarity may include: selecting the group of the recommendation target group and the group having the group similarity degree equal to or greater than a predetermined threshold as a neighboring group, And integrating them as weights.

상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계는, 상기 각각의 그룹 구성 정보로부터 예측된 평점의 평균 합을 통하여 통합 평점을 계산하고, 기 설정된 순위 이상인 상위 서비스를 상기 추천 대상 그룹에게 추천하는 단계를 포함할 수 있다. The step of performing the collaborative filtering on the recommendation target group based on the group similarity may include calculating an integrated rating through an average sum of the predicted scores from the respective group configuration information, And may include a step of recommending to the group.

일 실시예에 따르면, 사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 시스템은, 사용자의 식별 정보 및 서비스가 입력됨을 수신하는 수신부; 상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 생성부; 상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 측정부; 및 상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 수행부를 포함할 수 있다. According to one embodiment, a service recommendation system for group users in an object internet environment includes: a receiving unit for receiving input of identification information of a user and a service; A generating unit for generating a service rating matrix based on the user and the service; A measurement unit for measuring the group similarity based on each group configuration information as the service rating matrix is generated; And an execution unit for performing collaborative filtering on the recommendation target group based on the group similarity.

상기 생성부는, 로그 기반의 정규화를 통해 서비스 사용 횟수를 평점 정보로 변환하여 개인 사용자와 상기 서비스에 대한 행렬, 그룹 사용자와 상기 서비스에 대한 행렬 각각을 생성할 수 있다. The generator may convert the service use count to rating information through log-based normalization to generate a matrix for the individual user and the service, and a matrix for the group user and the service, respectively.

상기 측정부는, 그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 상기 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정할 수 있다. The measurement unit may measure group similarity based on the group configuration information on the number of group members, the common group members, and the distribution of member preferences.

상기 측정부는, 그룹 간 상기 그룹 구성원 수가 기 설정된 범위에 포함될 경우, 유사한 서비스를 선호할 것이라고 판단하고, 자카드 유사도를 사용하여 그룹 간 상기 공통된 구성원 수가 많을수록 유사한 서비스를 선호할 것이라고 판단할 수 있다. The measurement unit may determine that similar services will be preferred when the number of group members among the groups is included in the preset range, and may determine that the larger the number of common members among the groups using the jacquard degree of similarity, the more preferable the similar service.

상기 측정부는, 개인 사용자들에 대하여 개인 사용자와 서비스에 대한 상기 서비스 평점 행렬을 기반으로 계층적 클러스터링을 적용하고, 각 그룹의 유저 벡터를 상기 클러스터링의 결과에 기반하여 유저 클러스터 벡터로 변환하고, 상기 구성원 선호도 분포를 기반으로 그룹 유사도를 측정하고, 상기 계층적 클러스터링을 적용함에 있어서, 코사인 유사도를 사용하여 서비스 평점이 전혀 존재하지 않는 사용자를 별개의 단일 클러스터에 포함시킬 수 있다. Wherein the measurement unit applies hierarchical clustering based on the service rating matrix for individual users and services to individual users, converts the user vector of each group into a user cluster vector based on the result of the clustering, The group similarity is measured based on the distribution of member preferences. In applying the hierarchical clustering, a user having no service rating can be included in a single single cluster using the cosine similarity.

상기 수행부는, 상기 추천 대상 그룹과 상기 그룹 유사도가 기 설정된 임계치 이상인 그룹들을 이웃 그룹으로 선택하고, 상기 이웃 그룹의 평점을 상기 그룹 유사도를 가중치로 하여 통합하고, 상기 각각의 그룹 구성 정보로부터 예측된 평점의 평균 합을 통하여 통합 평점을 계산하고, 기 설정된 순위 이상인 상위 서비스를 상기 추천 대상 그룹에게 추천할 수 있다.
Wherein the performance unit is configured to select the groups of the recommendation target group and the groups whose group similarity is equal to or greater than a predetermined threshold value as neighboring groups and to integrate the rating of the neighboring groups as the weightings of the group similarity, The integrated rating can be calculated through the average sum of the ratings, and an upper service having a predetermined ranking or more can be recommended to the recommended target group.

일 실시예에 따른 서비스 추천 시스템은 사물 인터넷 환경의 공공 장소에서 개인 사용자와 그룹 사용자의 서비스 선호도가 다름을 파악하여 그룹 구성 정보를 기반으로 유사 그룹 사용자의 서비스 선호도를 분석하고 추천 대상 그룹에게 서비스를 추천해줌으로써 추천 정확도를 향상시킬 수 있다.
The service recommendation system according to an embodiment identifies service preferences of individual users and group users in a public place of the object Internet environment, analyzes the service preference of the similar group users based on the group configuration information, Recommendation accuracy can be improved by recommendation.

도 1은 사물 인터넷 환경을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 서비스 추천 시스템의 구성을 설명하기 위한 블록도이다.
도 3은 일 실시예에 따른 서비스 추천 시스템의 서비스 추천 방법을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 서비스 추천 시스템에서 서비스 평점 행렬을 생성하는 방법을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 서비스 추천 시스템에서 그룹 구성원 수 기반의 그룹 유사도를 측정하는 방법을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 서비스 추천 시스템에서 공통된 그룹 구성원 기반의 그룹 유사도를 측정하는 방법을 설명하기 위한 도면이다.
도 7 및 도 8은 일 실시예에 따른 서비스 추천 시스템에서 구성원 선호도 분포에 대한 그룹 유사도를 측정하는 방법을 설명하기 위한 도면이다.
1 is a diagram for explaining an Internet environment of objects.
2 is a block diagram illustrating a configuration of a service recommendation system according to an embodiment.
3 is a diagram for explaining a service recommendation method of a service recommendation system according to an embodiment.
4 is a diagram for explaining a method of generating a service rating matrix in a service recommendation system according to an exemplary embodiment.
FIG. 5 is a diagram for explaining a method of measuring group similarity based on the number of group members in the service recommendation system according to an embodiment.
FIG. 6 is a diagram illustrating a method of measuring a group similarity based on a group member in a service recommendation system according to an exemplary embodiment.
FIGS. 7 and 8 are views for explaining a method of measuring group similarity with respect to a distribution of member preferences in a service recommendation system according to an exemplary embodiment.

이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

도 1은 사물 인터넷 환경을 설명하기 위한 도면이다.1 is a diagram for explaining an Internet environment of objects.

서비스 추천 시스템에서 사물인터넷(Internet of Things, IoT) 소프트웨어 플랫폼의 구조에 대하여 설명한다. 예를 들어, 서비스 추천 시스템의 구성 요소들은 사물인터넷 통신 방법에 따라, D-플랫폼, P-플랫폼 및 M-플랫폼을 이용하여 IoT 환경에서 동작할 수 있다.We describe the structure of the Internet of Things (IoT) software platform in the service recommendation system. For example, the components of the service recommendation system may operate in an IoT environment using the D-platform, the P-platform, and the M-platform, depending on the things Internet communication method.

사물 인터넷 소프트웨어 플랫폼은 예컨대 D-플랫폼, P-플랫폼 및 M-플랫폼을 포함할 수 있다.The object Internet software platform may include, for example, a D-platform, a P-platform and an M-platform.

여기서, D-플랫폼은 IoT 장치 측에 설치되는 소프트웨어 플랫폼을 나타내고, P-플랫폼 및 M-플랫폼은 서버 컴퓨터 측에 각각 또는 함께 설치되는 소프트웨어 플랫폼을 나타낼 수 있다.Here, the D-platform represents a software platform installed on the IoT device side, and the P-platform and M-platform may represent a software platform installed separately or together on the server computer side.

D-플랫폼은 디바이스(Device) 플랫폼의 약자로, IoT 장치에 직접 설치되거나 IoT 장치에 장착되는 IoT 어댑터(adapter)에 설치되어, P-플랫폼 및 M-플랫폼과 연동하고, IoT 애플리케이션 및 IoT 웹사이트를 통해 스마트 디바이스와 연동할 수 있다. 여기서, IoT 장치는 IoT가 적용된 사물들을 나타낼 수 있다.The D-Platform is an abbreviation of Device Platform. It is installed in the IoT adapter installed directly on the IoT device or installed in the IoT device, and works in conjunction with the P-platform and M-platform, and the IoT application and the IoT website To interact with smart devices. Here, the IoT device can represent objects to which IoT is applied.

IoT 어댑터는 IoT 장치에 장착되어 사물이 IoT 통신을 이용할 수 있게 해준다. IoT 어댑터는 근거리 무선통신, 와이파이(Wi-fi), 이더넷(Ethernet), 3G, LTE 중 적어도 하나를 통해 통신할 수 있는 통신 모듈을 포함하고, IoT 어댑터에 설치된 D-플랫폼은 IoT 통신을 할 수 있도록 다양한 기능을 제공하게 된다. The IoT adapter is mounted on an IoT device, allowing things to use IoT communication. The IoT adapter includes a communication module capable of communicating via at least one of short-range wireless communication, Wi-fi, Ethernet, 3G and LTE, and the D- platform installed in the IoT adapter can perform IoT communication To provide a variety of functions.

P-플랫폼은 플랜트(Planet) 플랫폼의 약자로, IoT 장치 관리, 이용자 관리, IoT 장치 모니터링, IoT 장치 검색 등의 기능을 수행할 수 있다. 구체적으로, P-플랫폼은 IoT 서비스 제공자로부터 IoT 장치에 대한 정보를 입력 받아 IoT 장치를 등록할 수 있다. 이 때, IoT 장치에 대한 정보는 예컨대 장치 ID, 장치명, 모델명, 제조사, 위치정보, 장치상태정보 등을 포함하고, IoT 장치에 대한 연결시 필요한 주소(예를 들어, IP 주소, MSISDN 등)가 포함될 수 있다.P-platform is an abbreviation of "Planet platform" and can perform functions such as IoT device management, user management, IoT device monitoring, and IoT device search. Specifically, the P-platform receives information about the IoT device from the IoT service provider and registers the IoT device. In this case, the information about the IoT device includes, for example, a device ID, a device name, a model name, a manufacturer, a location information, and device status information, and an address (for example, IP address, MSISDN, etc.) necessary for connection to the IoT device .

그리고, P-플랫폼은 IoT 서비스를 위한 IoT 애플리케이션을 등록 및 다운로드 하기 위해 접근하는 이용자에 대한 인증을 수행할 수 있다. 이용자 인증을 위해 P-플랫폼은 이용자의 ID/PW, 전화번호 등의 개인 정보를 보유할 수도 있다.The P-platform may then perform authentication for the user accessing to register and download the IoT application for the IoT service. To authenticate the user, the P-platform may have personal information such as the user's ID / PW, telephone number, etc.

또한, P-플랫폼은 IoT 관련 매쉬업(Mash-up) 서비스를 개발하여 등록하는 개발자나 매쉬업 서비스를 이용하는 서비스 이용자를 인증하기 위한 서비스/개발자 인증을 수행할 수 있다.In addition, the P-platform can perform service / developer authentication for authenticating a developer who develops and registers a mash-up service related to IoT, or a service user who uses a mashup service.

뿐만 아니라, P-플랫폼은 IoT 장치로 사용되는 스마트 기기(예를 들어, 스마트폰, 태블릿 등)의 애플리케이션을 이용하여 IoT 서비스 이용자의 IoT 서비스 접속을 인증할 수 있다.In addition, the P-platform can authenticate the IoT service user's access to the IoT service using an application of a smart device (e.g., smart phone, tablet, etc.) used as an IoT device.

M-플랫폼은 매시업(Mash-up) 플랫폼의 약자로, D-플랫폼과 통신하여 IoT 애플리케이션이나 IoT 웹페이지를 통한 서비스 이용자의 제어 명령을 IoT 장치에 전달할 수 있다.The M-platform is an abbreviation of a mash-up platform, and can communicate with the D-platform to transmit control commands of the service user through the IoT application or the IoT web page to the IoT device.

또한, M-플랫폼은 매쉬업 서비스 개발자에 의해 개발된 IoT 매쉬업 서비스를 등록 받을 수 있다. 즉, 매쉬업 서비스 개발자는 IoT 매쉬업 서비스를 개발하여 M-플랫폼에 등록하게 된다. 이때, 매쉬업 서비스 개발자는 오픈 API 서버로부터 제공된 IoT 오픈 API를 이용하여 IoT 매쉬업 서비스를 개발할 수도 있다.In addition, the M-platform can register the IoT mashup service developed by the mashup service developer. That is, the mashup service developer develops the IoT mashup service and registers it on the M-platform. At this time, the mashup service developer can develop the IoT mashup service using the IoT open API provided from the open API server.

IoT 장치들은 M-플랫폼에 자신들이 생성한 데이터들을 주기적으로 전송하며, 이에 M-플랫폼은 IoT 장치에서 생성된 데이터들을 수집하여 로그로 저장함으로써 다양한 IoT 매쉬업 서비스를 서비스 이용자에게 제공할 수 있다.The IoT devices periodically transmit the data generated by the M-platform to the M-platform, and the M-platform can provide various IoT mashup services to the service user by collecting the data generated by the IoT device and storing the logs.

또한, M-플랫폼은 IoT 매쉬업 서비스 이용에 따른 과금을 수행하며, IoT 장치들에 대한 간략한 정보(예를 들어, ID, IP 주소 등)을 저장하고 있을 수 있다.In addition, the M-platform performs billing based on the use of the IoT mashup service, and may store brief information (e.g., ID, IP address, etc.) about IoT devices.

오픈 API 서버는 IoT 서비스에 관련된 오픈 API를 관리 및 제공하는 기능을 수행할 수 있다. 구체적으로, IoT 장치의 개발사는 IoT 장치를 제조할 때 해당 IoT 장치에 대한 오픈 API를 함께 개발하여, 관련 오픈 API를 오픈 API 서버에 등록하여 저장하게 된다. 그러면, 오픈 API 서버는 이와 같이 다양한 개발사들에 의해 개발된 IoT 장치 각각에 대한 다양한 오픈 API를 등록 및 저장하여 관리하게 된다.The open API server can manage and provide the open API related to the IoT service. Specifically, the developer of the IoT device develops an open API for the corresponding IoT device when manufacturing the IoT device, registers the related open API in the open API server, and stores the open API. Then, the open API server registers and stores various open APIs for each IoT device developed by various developers.

그리고, 오픈 API 서버는 저장된 오픈 API를 IoT 서비스 관련 웹사이트, 매쉬업 서비스 사이트 및 애플리케이션를 개발하고자 하는 개발자에게 제공할 수 있다. 따라서, 개발자들은 IoT 서비스 관련 웹사이트, 매쉬업 서비스 사이트 및 애플리케이션을 개발할 때 오픈 API 서버로부터 관련 오픈 API를 제공받아, 제공된 오픈 API를 이용한 IoT 서비스를 개발할 수 있게 된다.The open API server can provide the stored open API to developers who want to develop IoT service related websites, mashup service sites and applications. Therefore, when developers develop web sites related to IoT service, mashup service sites and applications, they will be able to develop IoT services using the open APIs provided by receiving open APIs from the open API server.

예를 들어, IoT 장치 제조사가 IoT 장치에 대한 상태 정보(예를 들어, 사용 횟수)를 제공하는 오픈 API를 오픈 API 서버에 등록한 경우, 개발자는 해당 상태 정보 제공 오픈 API를 오픈 API 서버에서 검색 및 이용하여 IoT 장치의 상태를 조회하는 기능을 IoT 서비스 관련 웹사이트, 매쉬업 서비스 사이트 및 IoT 애플리케이션에 구현할 수 있게 된다.For example, if an IoT device manufacturer registers an open API with an open API server that provides status information (eg, number of uses) for the IoT device, the developer can retrieve the open API providing the status information from the open API server A function of inquiring the status of the IoT device can be implemented in the IoT service related web site, the mashup service site, and the IoT application.

한편, IoT 서비스 이용자는 모바일 기기의 일종인 스마트 기기에 다운로드된 IoT 애플리케이션을 이용하여, 직접 IoT 장치에 접근하여 IoT 서비스를 이용할 수도 있다. 이때, IoT 장치는 스마트 기기와 M-플랫폼의 중계를 통해 연결되거나 P2P(Peer to Peer) 통신을 통해 직접 연결되어 IoT 서비스를 제공할 수 있게 된다. 이 경우, IoT 장치의 D-플랫폼은 스마트 기기의 IoT 애플리케이션과 M-플랫폼의 중계를 통해 간접 통신하거나 P2P 통신을 이용하여 직접 통신하게 된다.On the other hand, the IoT service user can directly access the IoT device and use the IoT service by using the IoT application downloaded to the smart device, which is a kind of mobile device. At this time, the IoT device can be connected through the intermediation of the smart device and the M-platform or directly through the peer-to-peer (P2P) communication to provide the IoT service. In this case, the D-platform of the IoT device communicates indirectly with the IoT application of the smart device through the relay of the M-platform or directly by using the P2P communication.

이와 같은 구성의 IoT 소프트웨어 플랫폼은 D-플랫폼, P-플랫폼, 및 M-플랫폼이 서로 연동되어 다양한 IoT 서비스를 제공할 수 있게 된다.The IoT software platform with such a configuration can provide various IoT services by interworking with D-platform, P-platform, and M-platform.

복수의 사용자가 원하는 서비스(태스크)를 수행하기 위하여 다양한 IoT 장치를 활용하는 서비스들을 제공받을 수 있다. 이때, 개인 사용자 및 그룹 사용자가 존재할 수 있다. 각각의 장소에서는 사용자의 서비스 수행 기록이 수집될 수 있다. A plurality of users can be provided with services that utilize various IoT devices in order to perform a desired service (task). At this time, an individual user and a group user may exist. At each location, a record of the user's service performance may be collected.

다양하고 많은 사물 인터넷 환경이 존재함에 따라 사용자 입장에서 모든 장소에 대해 이용 가능한 서비스를 파악할 수 없기 때문에, 서비스 추천 시스템은 각 장소에서 사용자에게 적합한 서비스를 추천할 수 있다. 서비스 추천 시스템은 그룹 사용자를 대상으로 추천을 제공할 수 있다. 이때, 추천 형태는 서비스(태스크)의 관점에서 복합 서비스를 제공할 수 있다.Since there are many and various Internet environments, it is not possible to grasp the available services for all places in the user 's viewpoint. Therefore, the service recommendation system can recommend suitable services to the users in each place. The service recommendation system can provide recommendations to group users. At this time, the recommendation form can provide the composite service from the viewpoint of the service (task).

이에 따라 사물 인터넷 환경의 특징으로 인한 평점 정보가 없는 새로운 사용자들에게 서비스를 추천할 수 없었던 기존의 사용자 기반의 협업 필터링의 한계를 극복하고, 그룹 구성 정보 기반의 그룹 유사도 측정 기준과 방법을 제시하고, 그룹 유사도를 적용한 협업 필터링 방법을 제안한다. Therefore, we overcome the limitations of existing user - based collaborative filtering, which can not recommend services to new users who do not have rating information due to the characteristics of Internet environment of objects, and suggest criteria and method of group similarity measurement based on group configuration information We propose a collaborative filtering method applying group similarity.

도 2는 일 실시예에 따른 서비스 추천 시스템의 구성을 설명하기 위한 블록도이다. 2 is a block diagram illustrating a configuration of a service recommendation system according to an embodiment.

서비스 추천 시스템(200)은 사물 인터넷 환경에서의 그룹 사용자를 위한 서비스를 추천하기 위한 것으로, 수신부(210), 생성부(220), 측정부(230) 및 수행부(240)를 포함할 수 있다.The service recommendation system 200 may include a receiving unit 210, a generating unit 220, a measuring unit 230, and an executing unit 240 for recommending a service for a group user in the object Internet environment .

수신부(210)는 사용자의 식별 정보 및 서비스가 입력됨을 수신할 수 있다. The receiving unit 210 may receive the identification information of the user and the input of the service.

생성부(220)는 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성할 수 있다. 생성부(220)는 로그 기반의 정규화를 통해 서비스 사용 횟수를 평점 정보고 변환하여 개인 사용자와 서비스에 대한 형렬, 그룹 사용자와 서비스에 대한 행렬 각각을 생성할 수 있다. The generating unit 220 may generate a service rating matrix based on users and services. The generating unit 220 may convert the service use count into a rating information and convert the service use count into a matrix for an individual user and a service, and a matrix for a group user and a service, respectively, through log-based normalization.

측정부(230)는 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정할 수 있다. 측정부(230)는 그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정할 수 있다. 측정부(230)는 그룹 간 그룹 구성원 수가 기 설정됨 범위에 포함될 경우, 유사한 서비스를 선호할 것이라고 판단할 수 있다. 측정부(230)는 자카드 유사도를 사용하여 그룹 간 공통된 구성원 수가 많을수록 유사한 서비스를 선호할 것이라고 판단할 수 있다. The measuring unit 230 may measure the group similarity based on each group configuration information as the service rating matrix is generated. The measurement unit 230 may measure the group similarity based on the respective group configuration information on the number of group members, common group members, and member preference distributions. The measurement unit 230 may determine that a similar service will be preferred if the number of group group members is included in the predetermined range. The measuring unit 230 may determine that similarities between the groups will increase as the number of members increases, using jacquard similarity.

측정부(230)는 개인 사용자들에 대하여 개인 사용자와 서비스에 대한 서비스 평점 행렬을 기반으로 계층적 클러스터링을 적용하고, 각 그룹의 유저 벡터를 클러스터링의 결과에 기반하여 유저 클러스터 벡터로 변환할 수 있다. 측정부(230)는 구성원 선호도 분포를 기반으로 그룹 유사도를 측정할 수 있다. 측정부(230)는 클러스터링의 결과로 동일한 클러스터에 속하는 사용자들이 유사한 서비스를 선호하는 것으로 판단할 수 있다. 이때, 측정부(230)는 계층적 클러스터링을 적용함에 있어서, 코사인 유사도를 사용하여 서비스 평점이 전혀 존재하지 않는 사용자를 별개의 단일 클러스터에 포함시킬 수 있다. The measurement unit 230 may apply hierarchical clustering based on a service rating matrix for individual users and services to individual users, and may convert the user vector of each group into a user cluster vector based on the clustering result . The measuring unit 230 may measure the group similarity based on the distribution of member preferences. The measuring unit 230 may determine that users belonging to the same cluster prefer a similar service as a result of clustering. In this case, in applying the hierarchical clustering, the measurement unit 230 may include a user having no service rating in a single cluster using cosine similarity.

수행부(240)는 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행할 수 있다. 수행부(240)는 추천 대상 그룹과 그룹 유사도가 기 설정된 임계치 이상인 그룹들을 이웃 그룹으로 선택하고, 이웃 그룹의 평점을 상기 그룹 유사도를 가중치로 하여 통합할 수 있다. 수행부(240)는 각각의 그룹 구성 정보로부터 예측된 평점의 평균 합을 통하여 통합 평점을 계산하고, 기 설정된 순위 이상인 상위 서비스를 추천 대상 그룹에게 추천할 수 있다. The performing unit 240 may perform collaborative filtering on the recommendation target group based on the group similarity. The performing unit 240 may select the groups having the recommendation target group and the group similarity degrees equal to or greater than a predetermined threshold value as the neighboring groups and integrate the ratings of the neighboring groups with the group similarity as the weights. The performance unit 240 may calculate an integrated rating through an average sum of the predicted scores from each group configuration information, and may recommend an upper service having a predetermined rank or higher to the recommendation target group.

도 3은 일 실시예에 따른 서비스 추천 시스템의 서비스 추천 방법을 설명하기 위한 도면이다. 3 is a diagram for explaining a service recommendation method of a service recommendation system according to an embodiment.

서비스 추천 시스템은 사용자의 입력 과정(310), 전처리 과정(320) 및 그룹 구성 정보에 기반한 협업 필터링 과정(330)을 수행할 수 있다. The service recommendation system may perform a user input process 310, a preprocessing process 320, and a collaborative filtering process 330 based on group configuration information.

서비스 추천 시스템은 사용자의 식별 정보 및 서비스(태스크)가 입력되는 입력 과정을 수행할 수 있다(310). 예를 들면, 서비스 추천 시스템은 사용자의 식별 정보로 개인 사용자의 식별 정보 및 그룹 사용자의 식별 정보가 입력될 수 있다. 또한, 사용자의 식별 정보로, 사용자의 이름, 성별, 연령 정보 등이 포함될 수 있다. The service recommendation system may perform an input process of inputting user identification information and a service (task) (310). For example, in the service recommendation system, identification information of an individual user and identification information of a group user may be input as identification information of a user. In addition, the user's identification information may include the user's name, sex, age information, and the like.

서비스 추천 시스템은 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 전처리 과정을 수행할 수 있다(320). 사물 인터넷 환경에서 서비스 수행 시, 매번 평점을 부여하는 것은 실용적이지 못하기 때문에, 서비스 추천 시스템은 서비스 수행 횟수를 서비스에 대한 간접적인 평점으로 간주한다. 이것은 사용자가 선호하는 서비스일수록 서비스 수행을 더 많이 수행할 것이라는 가정에 기반할 수 있다. The service recommendation system may perform a preprocessing process of generating a service rating matrix based on users and services (320). The object recommendation system regards the number of times the service is performed as an indirect rating for the service because it is impractical to assign a rating every time the service is performed in the Internet environment. This may be based on the assumption that the user's preferred service will perform more service operations.

도 4를 참고하면, 로그 기반의 정규화를 통하여 서비스 사용 횟수를 평점 정보로 변환하여 개인 사용자와 서비스에 대한 행렬(410), 그룹 사용자와 서비스에 대한 행렬(420) 각각을 생성할 수 있다. Referring to FIG. 4, a matrix 410 for an individual user and a service, and a matrix 420 for a group user and a service can be generated by converting the service use frequency to rating information through log-based normalization.

사용자 u에 의한 서비스 s의 비율

Figure 112016079754250-pat00001
은 다음과 같이 수행될 수 있다.The ratio of service s by user u
Figure 112016079754250-pat00001
Can be performed as follows.

Figure 112016079754250-pat00002
Figure 112016079754250-pat00002

이때,

Figure 112016079754250-pat00003
는 사용자 u에 의한 서비스 s의 호출의 수를 의미할 수 있다. At this time,
Figure 112016079754250-pat00003
May refer to the number of calls of service s by user u.

서비스 추천 시스템은 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정할 수 있다. 예를 들면, 서비스 추천 시스템은 그룹 구성원 수, 공통된 그룹 구성원, 구성원 선호도 분포에 대한 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정할 수 있다.The service recommendation system can measure group similarity based on each group configuration information by generating a service rating matrix. For example, the service recommendation system can measure the group similarity based on each group configuration information on the number of group members, common group members, and member preference distributions.

서비스 추천 시스템은 사회 심리학 분야에서 기인한 그룹 구성이 그룹의 의사 결정에 영향을 미친다는 사실에 기반할 수 있다. 다시 말해서, 추천 대상 그룹의 사용자와 유사한 그룹 구성을 가진 그룹들은 유사한 서비스를 선호할 것이므로 유사한 그룹들의 서비스 선호도를 종합하여 추천 대상 그룹 사용자의 서비스 선호도를 예측하여 적절한 서비스를 추천할 수 있다. The service recommendation system may be based on the fact that the groupings resulting from the field of social psychology influence group decision making. In other words, groups having a group configuration similar to the users of the recommendation target group will prefer similar services, so that it is possible to recommend appropriate services by predicting the service preferences of the recommendation target group users by synthesizing the service preferences of similar groups.

도 5를 참고하면, 서비스 추천 시스템은 그룹의 구성원 수가 그룹의 행동 및 의사 결정에 영향을 미친다는 사회적 심리학 연구에 기반하여 그룹간 구성원 수가 유사하면 유사한 서비스를 선호할 것이라고 판단할 수 있다. 사물 인터넷 환경에서 상대적으로 적은 수가 서비스가 제공될 경우, 그룹 구성원 수는 효과적인 기준이 될 수 있다. Referring to FIG. 5, a service recommendation system may determine that a similar service would be preferred if the number of members in the group is similar based on a social psychology study that the number of members of the group affects group behavior and decision making. If a relatively small number of services are provided in the Internet environment, the number of group members can be an effective standard.

Figure 112016079754250-pat00004
Figure 112016079754250-pat00004

이때,

Figure 112016079754250-pat00005
는 그룹 i의 유저 벡터,
Figure 112016079754250-pat00006
는 그룹 i의 유저 벡터 크기(구성원 수)를 의미할 수 있다. At this time,
Figure 112016079754250-pat00005
Is the user vector of group i,
Figure 112016079754250-pat00006
(The number of members) of the group i.

예를 들면, 서비스 추천 시스템은 '비디오 게임하기'는 학생 휴게실에서 주로 2~4명의 사용자들이 선호함을 알 수 있다. For example, in the service recommendation system, 'video game' is preferred by two to four users in the student lounge.

도 6을 참고하면, 서비스 추천 시스템은 공통된 그룹 구성원 기반의 그룹 유사도를 측정할 수 있다. 서비스 추천 시스템은 두 그룹간 공통된 개인 사용자가 많을수록 유사한 서비스를 선호할 것이라는 생각에 기반할 수 있다. 이때, 복수의 그룹에 공통적으로 속하는 개인 사용자가 존재할 수 있다. Referring to FIG. 6, the service recommendation system can measure a group similarity based on a common group member. The service recommendation system can be based on the idea that the more common individual users between the two groups will prefer the similar service. At this time, there may be an individual user belonging to a plurality of groups in common.

서비스 추천 시스템은 공통된 구성원이 두 그룹의 서비스 선택에 있어서 유사하게 영향을 미칠 것이고, 그룹에 공통적으로 속하는 개인 사용자가 많을수록 두 그룹의 서비스 선호도가 유사해질 것으로 판단할 수 있다. The service recommendation system can have a similar effect on the service selection of the two groups by a common member, and it can be determined that the more the individual users commonly belonging to the group, the more similar the service preferences of the two groups.

서비스 추천 시스템에서 자카드 유사도(Jaccard similarity coefficient)가 사용될 수 있다.Jaccard similarity coefficient can be used in the service recommendation system.

Figure 112016079754250-pat00007
Figure 112016079754250-pat00007

이때,

Figure 112016079754250-pat00008
는 그룹 i의 유저 벡터를 의미할 수 있다. At this time,
Figure 112016079754250-pat00008
May be the user vector of group i.

도 7을 참고하면, 계층적 클러스터링을 통한 유사한 선호도를 갖는 사용자 파악의 예를 나타낸 것이다. 서비스 추천 시스템은 구성원 선호도 분포에 기반하여 그룹 유사도를 측정할 수 있다. 서비스 추천 시스템은 두 그룹간 구성원들의 선호도 분포가 유사하면, 유사한 서비스를 선호할 것이라는 가정에 기반할 수 있다. Referring to FIG. 7, there is shown an example of user identification with similar preferences through hierarchical clustering. The service recommendation system can measure group similarity based on member preference distribution. The service recommendation system may be based on the assumption that similar services will be preferred if the distribution of preferences of the members between the two groups is similar.

서비스 추천 시스템은 사물 인터넷 환경에서 대부분의 그룹이 다른 그룹과 공통된 구성원이 존재하지 않는다. 사용자가 개별적으로 서비스에 대한 유사한 선호도를 가질 경우, 유사하게 그룹 의사 결정에 미친다는 가정에 기반할 수 있다. 이때, 두 그룹에 유사한 선호도를 갖는 구성원들의 분포가 유사할수록 서비스 선택에 있어서 유사한 성향을 보일 가능성이 높다. 서비스 추천 시스템은 선호도를 갖는 사용자를 찾기 위하여 계층적 클러스터링을 사용할 수 있다. The service recommendation system does not have members common to most groups in the Internet environment. It may be based on the assumption that if a user has similar preferences for the services individually, they will similarly be in group decision making. At this time, the similarity distribution of members with similar preferences in both groups is likely to show a similar tendency in service selection. The service recommendation system can use hierarchical clustering to find users with preferences.

서비스 추천 시스템은 모든 개인 사용자에 대하여 개인 사용자와 서비스에 대한 서비스 평점 행렬을 기반으로 계층적 클러스터링을 적용할 수 있다. 이때, 서비스 추천 시스템은 계층적 클러스터링을 적용함에 있어서, 코사인 유사도(Cosine similarity)를 사용하여 서비스 평점이 전혀 존재하지 않는 사용자를 별개의 단일 클러스터에 포함시킬 수 있다. 서비스 추천 시스템은 클러스터링의 결과로 동일한 클러스터에 속하는 사용자들이 유사한 서비스 선호도를 갖는 사용자로 판단할 수 있다. The service recommendation system can apply hierarchical clustering based on the service rating matrix for individual users and services for all individual users. At this time, in applying the hierarchical clustering, the service recommendation system can include a user having no service rating in a single cluster using cosine similarity. As a result of the clustering, the service recommendation system can determine that users belonging to the same cluster have similar service preferences.

도 8을 참고하면, 클러스터링의 결과를 기반으로 유저 클러스터링 벡터 생성의 예를 나타낸 것이다. 서비스 추천 시스템은 각 그룹의 유저 벡터를 클러스터링의 결과에 기반하여 유저 클러스터링 벡터로 변환할 수 있다. 유저 클러스터 벡터의 크기는 클러스터의 개수이며, 벡터 내 i(i는 자연수)번째 값은 주어진 그룹에서 i번째 클러스터링에 속하는 구성원들의 수를 의미할 수 있다. Referring to FIG. 8, an example of user clustering vector generation based on the result of clustering is shown. The service recommendation system can convert the user vector of each group into a user clustering vector based on the result of the clustering. The size of the user cluster vector is the number of clusters, and i (i is a natural number) value in the vector may mean the number of members belonging to the i-th clustering in a given group.

서비스 추천 시스템은 구성원 선호도 분포를 기반으로 그룹 유사도를 측정할 수 있다.The service recommendation system can measure group similarity based on member preference distribution.

Figure 112016079754250-pat00009
Figure 112016079754250-pat00009

이때,

Figure 112016079754250-pat00010
는 그룹 i의 유저 벡터,
Figure 112016079754250-pat00011
는 그룹
Figure 112016079754250-pat00012
에서 유저 클러스터링 c에 속하는 구성원 수, n은 유저 클러스터의 수를 의미할 수 있다. At this time,
Figure 112016079754250-pat00010
Is the user vector of group i,
Figure 112016079754250-pat00011
Group
Figure 112016079754250-pat00012
The number of members belonging to user clustering c, and n may mean the number of user clusters.

서비스 추천 시스템은 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행할 수 있다(330). 서비스 추천 시스템은 추천 대상 그룹과 그룹 유사도가 기 설정된 임계치 이상인 그룹들을 이웃 그룹으로 선택하고, 이웃 그룹의 평점을 그룹 유사도를 가중치로 하여 통합할 수 있다. 이때, 계산된 이웃 그룹의 평점이 각 기준의 관점에서 추천 대상 그룹의 예측된 평점이 될 수 있다. The service recommendation system may perform collaborative filtering on the recommendation target group based on the group similarity (330). The service recommendation system can select the groups with the recommended target group and the groups whose group similarity is greater than or equal to the predetermined threshold value as the neighboring groups and integrate the ratings of the neighboring groups with the group similarity as the weights. At this time, the calculated neighboring group rating may be the predicted rating of the recommended target group in terms of each criterion.

서비스 추천 시스템은 각각의 그룹 구성 정보로부터 예측된 평점의 평균 합을 통하여 통합 평점을 계산할 수 있다. 서비스 추천 시스템은 기 설정된 순위 이상인 상위 서비스를 추천 대상 그룹에게 추천할 수 있다. The service recommendation system can calculate the aggregate rating through the average sum of the predicted scores from each group configuration information. The service recommendation system can recommend an upper service having a predetermined rank or higher to the recommendation target group.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be embodyed temporarily. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (15)

사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 방법에 있어서,
사용자의 식별 정보 및 서비스가 입력됨을 수신하는 단계;
상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계;
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계; 및
상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계
를 포함하고,
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는,
그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 상기 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하고, 그룹 간 상기 그룹 구성원 수가 기 설정된 범위에 포함될 경우, 유사한 서비스를 선호할 것이라고 판단하는 단계
를 포함하는 서비스 추천 방법.
A service recommendation method for group users in an object internet environment,
Receiving identification information of a user and input of a service;
Generating a service rating matrix based on the user and service;
Measuring group similarity based on each group configuration information as the service rating matrix is generated; And
Performing collaborative filtering on a recommendation target group based on the group similarity
Lt; / RTI >
The step of measuring group similarity based on each group configuration information as the service rating matrix is generated comprises:
Measuring group similarity based on the group configuration information on the number of group members, common group members, and member preference distributions, and determining that a similar service will be preferred when the group member count among the groups is included in a predetermined range
The service recommendation method comprising:
제1항에 있어서,
상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계는,
로그 기반의 정규화를 통해 서비스 사용 횟수를 평점 정보로 변환하여 개인 사용자와 상기 서비스에 대한 행렬, 그룹 사용자와 상기 서비스에 대한 행렬 각각을 생성하는 단계
를 포함하는 서비스 추천 방법.
The method according to claim 1,
Wherein generating a service rating matrix based on the user and service comprises:
Generating a matrix for the individual user and the service, and a matrix for the group user and the service by converting the service use frequency into rating information through log-based normalization;
The service recommendation method comprising:
삭제delete 삭제delete 사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 방법에 있어서,
사용자의 식별 정보 및 서비스가 입력됨을 수신하는 단계;
상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계;
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계; 및
상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계
를 포함하고,
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는,
그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 상기 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하고, 자카드 유사도를 사용하여 그룹 간 상기 공통된 구성원 수가 많을수록 유사한 서비스를 선호할 것이라고 판단하는 단계
를 포함하는 서비스 추천 방법.
A service recommendation method for group users in an object internet environment,
Receiving identification information of a user and input of a service;
Generating a service rating matrix based on the user and service;
Measuring group similarity based on each group configuration information as the service rating matrix is generated; And
Performing collaborative filtering on a recommendation target group based on the group similarity
Lt; / RTI >
The step of measuring group similarity based on each group configuration information as the service rating matrix is generated comprises:
Determining group similarity based on the respective group configuration information on the number of group members, common group members, and member preference distributions, and judging that a similar service will be preferred as the number of the common members increases among groups using the jacquard similarity degree
The service recommendation method comprising:
사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 방법에 있어서,
사용자의 식별 정보 및 서비스가 입력됨을 수신하는 단계;
상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계;
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계; 및
상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계
를 포함하고,
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는,
그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 상기 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하고, 개인 사용자들에 대하여 개인 사용자와 서비스에 대한 상기 서비스 평점 행렬을 기반으로 계층적 클러스터링을 적용하고, 각 그룹의 유저 벡터를 상기 클러스터링의 결과에 기반하여 유저 클러스터 벡터로 변환하고, 상기 구성원 선호도 분포를 기반으로 그룹 유사도를 측정하는 단계
를 포함하는 서비스 추천 방법.
A service recommendation method for group users in an object internet environment,
Receiving identification information of a user and input of a service;
Generating a service rating matrix based on the user and service;
Measuring group similarity based on each group configuration information as the service rating matrix is generated; And
Performing collaborative filtering on a recommendation target group based on the group similarity
Lt; / RTI >
The step of measuring group similarity based on each group configuration information as the service rating matrix is generated comprises:
Group similarity is measured based on the respective group configuration information on the number of group members, common group members and member preference distributions, and hierarchical clustering is performed on individual users based on the service rating matrix for individual users and services Transforming a user vector of each group into a user cluster vector based on a result of the clustering, and measuring group similarity based on the member preference distribution
The service recommendation method comprising:
제6항에 있어서,
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계는,
상기 계층적 클러스터링을 적용함에 있어서, 코사인 유사도를 사용하여 서비스 평점이 전혀 존재하지 않는 사용자를 별개의 단일 클러스터에 포함시키는 단계
를 포함하는 서비스 추천 방법.
The method according to claim 6,
The step of measuring group similarity based on each group configuration information as the service rating matrix is generated comprises:
In applying the hierarchical clustering, a step of including a user having no service rating in a separate single cluster using the cosine similarity
The service recommendation method comprising:
삭제delete 사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 방법에 있어서,
사용자의 식별 정보 및 서비스가 입력됨을 수신하는 단계;
상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 단계;
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 단계; 및
상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계
를 포함하고,
상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 단계는,
상기 추천 대상 그룹과 상기 그룹 유사도가 기 설정된 임계치 이상인 그룹들을 이웃 그룹으로 선택하고, 상기 이웃 그룹의 평점을 상기 그룹 유사도를 가중치로 하여 통합하고, 상기 각각의 그룹 구성 정보로부터 예측된 평점의 평균 합을 통하여 통합 평점을 계산하고, 기 설정된 순위 이상인 상위 서비스를 상기 추천 대상 그룹에게 추천하는 단계
를 포함하는 서비스 추천 방법.
A service recommendation method for group users in an object internet environment,
Receiving identification information of a user and input of a service;
Generating a service rating matrix based on the user and service;
Measuring group similarity based on each group configuration information as the service rating matrix is generated; And
Performing collaborative filtering on a recommendation target group based on the group similarity
Lt; / RTI >
The step of performing collaborative filtering on a recommendation target group based on the group similarity may include:
Selecting a group having the recommendation object group and the group similarity degree equal to or greater than a predetermined threshold value as a neighboring group, integrating the rating of the neighboring group with the group similarity as a weight, And a recommendation step of recommending an upper service having a predetermined rank or higher to the recommended target group
The service recommendation method comprising:
사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 시스템에 있어서,
사용자의 식별 정보 및 서비스가 입력됨을 수신하는 수신부;
상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 생성부;
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 측정부; 및
상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 수행부
를 포함하고,
상기 측정부는,
그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 상기 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하고, 그룹 간 상기 그룹 구성원 수가 기 설정된 범위에 포함될 경우, 유사한 서비스를 선호할 것이라고 판단하고, 자카드 유사도를 사용하여 그룹 간 상기 공통된 구성원 수가 많을수록 유사한 서비스를 선호할 것이라고 판단하는
서비스 추천 시스템.
1. A service recommendation system for group users in an Internet environment, comprising:
A receiving unit for receiving identification information of a user and input of a service;
A generating unit for generating a service rating matrix based on the user and the service;
A measurement unit for measuring the group similarity based on each group configuration information as the service rating matrix is generated; And
And an execution unit for performing collaborative filtering on the recommendation target group based on the group similarity,
Lt; / RTI >
Wherein the measuring unit comprises:
The group similarity degree is measured on the basis of the respective group configuration information on the number of group members, the common group member and the member preference distribution, and it is determined that a similar service will be preferred when the group member count among the groups is included in the predetermined range, Jacquard similarity is used to judge that the more common members among the groups will prefer the similar service
Service recommendation system.
제10항에 있어서,
상기 생성부는,
로그 기반의 정규화를 통해 서비스 사용 횟수를 평점 정보로 변환하여 개인 사용자와 상기 서비스에 대한 행렬, 그룹 사용자와 상기 서비스에 대한 행렬 각각을 생성하는
것을 특징으로 하는 서비스 추천 시스템.
11. The method of claim 10,
Wherein the generation unit comprises:
The number of service use times is converted into the rating information through the log-based normalization to generate a matrix for the individual user and the service, and a matrix for the group user and the service, respectively
Wherein the service recommendation system comprises:
삭제delete 삭제delete 사물 인터넷 환경에서의 그룹 사용자를 위한 서비스 추천 시스템에 있어서,
사용자의 식별 정보 및 서비스가 입력됨을 수신하는 수신부;
상기 사용자 및 서비스에 기반하여 서비스 평점 행렬을 생성하는 생성부;
상기 서비스 평점 행렬을 생성함에 따라 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하는 측정부; 및
상기 그룹 유사도에 기초하여 추천 대상 그룹에 대한 협업 필터링을 수행하는 수행부
를 포함하고,
상기 측정부는,
그룹 구성원 수, 공통된 그룹 구성원 및 구성원 선호도 분포에 대한 상기 각각의 그룹 구성 정보를 기반으로 그룹 유사도를 측정하고, 개인 사용자들에 대하여 개인 사용자와 서비스에 대한 상기 서비스 평점 행렬을 기반으로 계층적 클러스터링을 적용하고, 각 그룹의 유저 벡터를 상기 클러스터링의 결과에 기반하여 유저 클러스터 벡터로 변환하고, 상기 구성원 선호도 분포를 기반으로 그룹 유사도를 측정하고, 상기 계층적 클러스터링을 적용함에 있어서, 코사인 유사도를 사용하여 서비스 평점이 전혀 존재하지 않는 사용자를 별개의 단일 클러스터에 포함시키는
것을 특징으로 하는 서비스 추천 시스템.
1. A service recommendation system for group users in an Internet environment, comprising:
A receiving unit for receiving identification information of a user and input of a service;
A generating unit for generating a service rating matrix based on the user and the service;
A measurement unit for measuring the group similarity based on each group configuration information as the service rating matrix is generated; And
And an execution unit for performing collaborative filtering on the recommendation target group based on the group similarity,
Lt; / RTI >
Wherein the measuring unit comprises:
Group similarity is measured based on the respective group configuration information on the number of group members, common group members and member preference distributions, and hierarchical clustering is performed on individual users based on the service rating matrix for individual users and services The group similarity degree is measured on the basis of the member preference distribution, and in applying the hierarchical clustering, the user similarity degree is calculated using the cosine similarity degree, Include users with no service ratings in a single, separate cluster
Wherein the service recommendation system comprises:
제10항에 있어서,
상기 수행부는,
상기 추천 대상 그룹과 상기 그룹 유사도가 기 설정된 임계치 이상인 그룹들을 이웃 그룹으로 선택하고, 상기 이웃 그룹의 평점을 상기 그룹 유사도를 가중치로 하여 통합하고, 상기 각각의 그룹 구성 정보로부터 예측된 평점의 평균 합을 통하여 통합 평점을 계산하고, 기 설정된 순위 이상인 상위 서비스를 상기 추천 대상 그룹에게 추천하는
것을 특징으로 하는 서비스 추천 시스템.
11. The method of claim 10,
Wherein the performing unit comprises:
Selecting a group having the recommendation object group and the group similarity degree equal to or greater than a predetermined threshold value as a neighboring group, integrating the rating of the neighboring group with the group similarity as a weight, And recommends an upper service having a predetermined rank or higher to the recommendation target group
Wherein the service recommendation system comprises:
KR1020160104307A 2016-08-17 2016-08-17 Service recommendation for user groups in internet of things environments using member organization-based group similarity measures KR101785219B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160104307A KR101785219B1 (en) 2016-08-17 2016-08-17 Service recommendation for user groups in internet of things environments using member organization-based group similarity measures

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160104307A KR101785219B1 (en) 2016-08-17 2016-08-17 Service recommendation for user groups in internet of things environments using member organization-based group similarity measures

Publications (1)

Publication Number Publication Date
KR101785219B1 true KR101785219B1 (en) 2017-10-18

Family

ID=60296665

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160104307A KR101785219B1 (en) 2016-08-17 2016-08-17 Service recommendation for user groups in internet of things environments using member organization-based group similarity measures

Country Status (1)

Country Link
KR (1) KR101785219B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110795640A (en) * 2019-10-12 2020-02-14 华中师范大学 Adaptive group recommendation method for compensating group member difference
KR20210117037A (en) * 2020-03-18 2021-09-28 충북대학교 산학협력단 Method for recommending similar user in social internet of things, and recording medium thereof
WO2022211548A1 (en) * 2021-04-02 2022-10-06 주식회사 뱅크엑스 Method, system, and non-transitory computer-readable recording medium for recommending payment means
CN115713432A (en) * 2022-09-21 2023-02-24 湖南科技大学 Production element-oriented service recommendation method in industrial Internet environment
CN116051241A (en) * 2023-02-01 2023-05-02 浙江红太阳企业管理咨询有限公司 Big data-based E-commerce management platform
US11907964B2 (en) 2018-03-07 2024-02-20 Acxiom Llc Machine for audience propensity ranking using internet of things (IoT) inputs
KR102656706B1 (en) * 2021-04-29 2024-04-11 네이버웹툰 유한회사 Apparatus and method for managing a plurality of contents based on a user group clustering

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11907964B2 (en) 2018-03-07 2024-02-20 Acxiom Llc Machine for audience propensity ranking using internet of things (IoT) inputs
CN110795640A (en) * 2019-10-12 2020-02-14 华中师范大学 Adaptive group recommendation method for compensating group member difference
CN110795640B (en) * 2019-10-12 2023-08-18 华中师范大学 Self-adaptive group recommendation method for compensating group member difference
KR20210117037A (en) * 2020-03-18 2021-09-28 충북대학교 산학협력단 Method for recommending similar user in social internet of things, and recording medium thereof
KR102388952B1 (en) 2020-03-18 2022-04-20 충북대학교 산학협력단 Method for recommending similar user in social internet of things, and recording medium thereof
WO2022211548A1 (en) * 2021-04-02 2022-10-06 주식회사 뱅크엑스 Method, system, and non-transitory computer-readable recording medium for recommending payment means
KR102656706B1 (en) * 2021-04-29 2024-04-11 네이버웹툰 유한회사 Apparatus and method for managing a plurality of contents based on a user group clustering
CN115713432A (en) * 2022-09-21 2023-02-24 湖南科技大学 Production element-oriented service recommendation method in industrial Internet environment
CN116051241A (en) * 2023-02-01 2023-05-02 浙江红太阳企业管理咨询有限公司 Big data-based E-commerce management platform
CN116051241B (en) * 2023-02-01 2023-12-12 变购(武汉)物联网科技有限公司 Big data-based E-commerce management platform

Similar Documents

Publication Publication Date Title
KR101785219B1 (en) Service recommendation for user groups in internet of things environments using member organization-based group similarity measures
US11347824B2 (en) Universal visitor identification system
RU2693637C2 (en) Service integration client platform
Gui et al. A service brokering and recommendation mechanism for better selecting cloud services
Tang et al. Cloud service QoS prediction via exploiting collaborative filtering and location‐based data smoothing
US20100281427A1 (en) Selecting one of plural user profile personae based on context
JP6985518B2 (en) Client, server, and client-server systems adapted to generate personalized recommendations
US10223397B1 (en) Social graph based co-location of network users
US11151587B2 (en) Intelligent marketing using group presence
US10437709B2 (en) Mobile application optimization platform
TW201841137A (en) Arrangement and method for inferring demographics from application usage statistics
US20150310334A1 (en) Method and apparatus for assessing user experience
CN107710263A (en) Shop accesses data creation and management
CN111611144B (en) Method, apparatus, computing device, and medium for processing performance test data
US20180129664A1 (en) System and method to recommend a bundle of items based on item/user tagging and co-install graph
JP6229710B2 (en) Information receiving apparatus, information receiving system, and information receiving method
Andersen et al. Privacy preserving personalization in complex ecosystems
CN111382436B (en) Method for detecting compatible system for abnormal system
JP6601888B1 (en) Information processing apparatus, information processing method, and information processing program
Khan et al. A privacy preserving improvised approach for qos aware web service recommendation
Król et al. Performance of map applications on mobile devices: case study
JP6321559B2 (en) Access control apparatus, access control method, and access control program
KR102389219B1 (en) Method, device and system for providing recommended content through prediction of content reading time
US11275750B2 (en) Priming-based search and discovery of content
US20170185901A1 (en) System and method for user model based on app behavior

Legal Events

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