KR20220072385A - Apparatus and method for recommending object on adjacent trunk line based on data structure of trunk line connection generated from big data of interior service - Google Patents
Apparatus and method for recommending object on adjacent trunk line based on data structure of trunk line connection generated from big data of interior service Download PDFInfo
- Publication number
- KR20220072385A KR20220072385A KR1020200159926A KR20200159926A KR20220072385A KR 20220072385 A KR20220072385 A KR 20220072385A KR 1020200159926 A KR1020200159926 A KR 1020200159926A KR 20200159926 A KR20200159926 A KR 20200159926A KR 20220072385 A KR20220072385 A KR 20220072385A
- Authority
- KR
- South Korea
- Prior art keywords
- node
- objects
- regression
- predetermined
- section
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000009408 flooring Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 16
- 230000015654 memory Effects 0.000 claims description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 11
- 239000000463 material Substances 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 8
- 230000001373 regressive effect Effects 0.000 description 7
- 235000019640 taste Nutrition 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000005406 washing Methods 0.000 description 3
- 241001465382 Physalis alkekengi Species 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/08—Construction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
-
- G06K9/6218—
-
- G06K9/6267—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/18—Details relating to CAD techniques using virtual or augmented reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/20—Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Geometry (AREA)
- Finance (AREA)
- Computer Hardware Design (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Economics (AREA)
- Multimedia (AREA)
- Strategic Management (AREA)
- Health & Medical Sciences (AREA)
- Development Economics (AREA)
- Computational Mathematics (AREA)
- Structural Engineering (AREA)
- Tourism & Hospitality (AREA)
- Mathematical Analysis (AREA)
- Architecture (AREA)
- Pure & Applied Mathematics (AREA)
- Human Resources & Organizations (AREA)
- General Engineering & Computer Science (AREA)
- Civil Engineering (AREA)
- Primary Health Care (AREA)
- Mathematical Optimization (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명의 일 실시예에 따른 회귀 간선 사물 추천 방법은 인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 단계; 상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 단계; 분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 단계; 상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 단계; 상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 단계; 및 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 단계를 포함할 수 있다. A regression trunk object recommendation method according to an embodiment of the present invention includes: acquiring big data including information on a location and a type of an object placed in a virtual space by each user using an interior service; classifying a group between objects based on the positions of the objects arranged in the virtual space from the big data; counting the number of times the first thing is arranged in the same group as each other for all the classified groups; classifying the number of times according to a predetermined range to determine a degree of association between the first thing and each of the things; generating a data structure in which each of the objects included in the big data is created as a node, and an edge weight having a value based on the degree of relevance is given to connect the edges between the nodes; and when a predetermined object is newly placed in the virtual space of the first user in the interior service, the adjacent node is sequentially selected based on the edge weight from the first node corresponding to the predetermined object in the data structure. It may include a step of recommending selected objects until returning to the first node.
Description
본 발명은 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and method for recommending a regressive trunk object based on a trunk connection data structure constructed from big data of an interior service.
사람들은 살아가면서 자신의 개성에 부합하면서 보다 아름다운 주거 환경을 추구하고자 하는 욕구를 가지고 있다. 이를 위해, 간단하게는 주거 공간에 새로운 사물을 배치하여 인테리어를 꾸미거나, 나아가 벽지나 바닥재를 교체하고 공간의 구조를 변경하는 등의 인테리어 공사를 진행하기도 한다. People have a desire to pursue a more beautiful living environment that matches their individuality in life. To this end, it is simple to decorate the interior by arranging new objects in the living space, or to carry out interior construction such as replacing wallpaper or flooring and changing the structure of the space.
종래에는 인테리어 공사를 위해 의뢰인이 인테리어 전문가에게 자신이 원하는 공간을 만들고자 주거 환경 등의 인테리어 시안을 의뢰하고, 의뢰받은 인테리어 전문가는 고객이 원하는 인테리어를 설계하여 고객에게 제시하는 방식으로 진행하였다. Conventionally, for interior construction, a client requests an interior design expert to create a desired space, such as a residential environment, and the requested interior expert designs the interior desired by the customer and presents it to the customer.
그러나 현재는 가상 공간에 사용자가 직접 각종 인테리어 요소를 꾸며볼 수 있는 인테리어 서비스(ex. 3D 공간 데이터 플랫폼 어반베이스)가 개발됨에 따라, 인테리어 서비스의 사용자가 직접 자신의 주거 환경을 이식한 가상 공간에 자신의 취향대로 사물을 배치하고 손쉽게 바닥재/벽지 등을 교체해 볼 수 있다. However, as interior services (ex. 3D spatial data platform Urban Base) have been developed that allow users to directly decorate various interior elements in a virtual space, users of interior services can directly access the virtual space in which their residential environment is transplanted. You can arrange things according to your taste and easily replace the flooring/wallpaper.
이에 따라, 사용자들은 가상 공간의 인테리어를 통해 실제 인테리어를 간접적으로 체감할 수 있으며, 자신의 마음에 드는 실제 인테리어 상품을 주문하거나, 실제 시공과 연동된 인테리어 발주를 넣는 등의 서비스를 제공받고 있다. Accordingly, users can indirectly experience the real interior through the interior of the virtual space, and are provided with services such as ordering a real interior product they like or placing an interior order linked with the actual construction.
상술한 인테리어 서비스는 사용자가 가상 공간에 직접 각종 인테리어 요소를 꾸며볼 수 있도록, 다양한 종류의 사물, 바닥재, 벽지 등의 인테리어 요소를 사용자의 가상 공간에 제공한다. The above-described interior service provides interior elements such as various types of objects, flooring, and wallpaper to the user's virtual space so that the user can directly decorate various interior elements in the virtual space.
한편, 인테리어는 각종 인테리어 요소들의 스타일 및 색상의 조화가 미적으로 중요한데, 인테리어 서비스의 사용자가 인테리어 전문가가 아닌 경우에는 수많은 종류의 사물, 바닥재, 벽지 등을 선택하는 데에 어려움을 겪을 수 있다. On the other hand, in the interior, the harmony of styles and colors of various interior elements is aesthetically important, and if the user of the interior service is not an interior expert, it may be difficult to select numerous types of objects, flooring, wallpaper, and the like.
이에 따라, 본 발명의 실시예에서 해결하고자 하는 과제는 사용자의 정보를 통해 사용자의 취향을 반영하면서, 사용자의 가상 공간에 배치된 인테리어와 어울릴 수 있는 다양한 인테리어 요소를 추천하는 기술을 제공하고자 한다. Accordingly, an object to be solved in the embodiment of the present invention is to provide a technology for recommending various interior elements that can match the interior arranged in the user's virtual space while reflecting the user's taste through the user's information.
다만, 본 발명의 실시예가 이루고자 하는 기술적 과제는 이상에서 언급한 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 도출될 수 있다.However, the technical tasks to be achieved by the embodiments of the present invention are not limited to the tasks mentioned above, and various technical tasks may be derived from the contents to be described below within the scope obvious to those skilled in the art.
본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치는 소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작 가능 하도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고, 상기 프로세서가 수행하는 동작은 인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 동작; 상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 동작; 분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 동작; 상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 동작; 상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 동작; 및 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함할 수 있다. An apparatus for recommending a regressive trunk object according to an embodiment of the present invention includes: one or more memories for storing instructions for performing a predetermined operation; and one or more processors configured to be operably connected to the one or more memories and execute the instructions, wherein the operations performed by the processor include a location where each user using an interior service places an object in a virtual space and a location of the object. acquiring big data including information on types; classifying a group between objects based on the positions of the objects arranged in the virtual space from the big data; counting the number of times the first thing is arranged in the same group as each other for all the classified groups; classifying the number of times according to a predetermined range to determine a degree of association between the first object and each of the objects; generating a data structure in which all the objects included in the big data are created as nodes, and an edge weight having a value based on the degree of relevance is given to connect the edges between the nodes; and when a predetermined object is newly placed in the virtual space of the first user in the interior service, the adjacent node is sequentially selected based on the edge weight from the first node corresponding to the predetermined object in the data structure. It may include an operation of recommending selected objects until returning to the first node.
또한, 상기 추천하는 동작은 상기 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 선택된 노드들의 개수가 소정 개수 이하이면서, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함할 수 있다. Also, in the recommended operation, the number of selected nodes is less than or equal to a predetermined number and the number of selected nodes is less than or equal to a predetermined number until returning to the first node while sequentially selecting adjacent nodes based on the trunk weight from the first node. It may include an operation of setting to cycle under a condition in which the sum of the weights becomes the maximum.
또한, 상기 추천하는 동작은 상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함할 수 있다. In addition, in the recommended operation, when the number of nodes selected after the regression is less than the predetermined number, the node weights of the edge are selected sequentially while returning to the first node while sequentially selecting the nodes not selected in the regression process. The method may further include an operation of recommending selected objects by setting the cycle to a condition in which the sum is maximum.
또한, 상기 추천하는 동작은 상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함할 수 있다. In addition, the recommending operation may further include excluding the objects selected in the last regression process from recommendation when the total number of objects selected in the last regression process exceeds a predetermined number according to the setting.
또한, 상기 그룹을 분류하는 동작은 3차원 좌표의 위치 기반으로 사물들을 군집화 하는 소정의 알고리즘을 이용하여 사물들 간의 그룹을 분류하는 동작을 포함할 수 있다. In addition, the operation of classifying the group may include the operation of classifying the group between objects using a predetermined algorithm for grouping objects based on the location of the three-dimensional coordinates.
또한, 상기 그룹을 분류하는 동작은 DBSCAN(Density Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘을 기초로 소정 범위의 가상 공간 안에 배치된 사물들의 3차원 좌표를 입력하여 상기 사물들이 소정 공간 안에 배치되어 있는 밀도를 기준으로 그룹을 분류하는 동작을 포함할 수 있다. In addition, the operation of classifying the group is based on a DBSCAN (Density Based Spatial Clustering of Applications with Noise) clustering algorithm by inputting three-dimensional coordinates of objects arranged in a virtual space of a predetermined range, and the objects are arranged in a predetermined space. It may include an operation of classifying groups based on density.
또한, 상기 추천하는 동작은 상기 제1 사용자의 가상 공간의 종류에 따라서, 상기 데이터 구조에 포함된 소정 노드 간 간선 가중치에 대해 편향을 더하거나 감하는 동작을 포함할 수 있다. Also, the recommended operation may include adding or subtracting a bias to or from an edge weight between predetermined nodes included in the data structure according to the type of the virtual space of the first user.
또한, 상기 연관도를 판별하는 동작은 상기 제1 사물이 상기 각각의 사물과 같은 그룹으로 배치된 횟수에 대한 평균(a)과 표준편차(b)를 계산하는 동작; 상기 배치된 횟수가 a 보다 작은 제2 사물들에 대해서만 배치된 횟수의 평균(c)을 계산하는 동작; 상기 제1 사물과 a+b 이상의 횟수로 함께 배치된 사물들을 제1 구간, 상기 제1 사물과 a 내지 a+b 사이의 횟수로 함께 배치된 사물들을 제2 구간, 상기 제1 사물과 c 내지 a 사이의 횟수로 함께 배치된 사물들을 제3 구간, 상기 제1 사물과 c 이하의 횟수로 함께 배치된 사물들을 제4 구간으로 분류하는 동작; 및 상기 제1 구간, 상기 제2 구간, 상기 제3 구간, 및 상기 제4 구간으로 갈수록 상기 제1 사물과 강한 연관도에서 약한 연관도를 갖도록 연관도를 판별하는 동작을 포함할 수 있다. In addition, the determining of the degree of relevance may include calculating an average (a) and a standard deviation (b) for the number of times the first thing is arranged in the same group as the respective thing; calculating an average (c) of the number of placements only for second objects having the number of placements smaller than a; The first thing and the things arranged together with a number of times a+b or more in a first section, the first thing and the things disposed together at a number between a to a+b in a second section, the first thing and c to classifying objects disposed together with a number of times between a into a third section, and classifying objects disposed together with the first object with a number of times less than or equal to c into a fourth section; and determining the degree of association so as to have a weak degree of association from a strong degree of association with the first object toward the first section, the second section, the third section, and the fourth section.
또한, 상기 데이터구조를 생성하는 동작은 상기 제1 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 1을 적용하여, 상기 제1 노드와 상기 제1 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작; In addition, in the operation of generating the data structure, the degree of association between the first node and the node included in the first section is determined by applying
[수학식 1][Equation 1]
(은 상기 제1 노드와 상기 제1 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 상기 제1 구간에 포함된 사물들의 배치 횟수의 집합, 은 상기 제1 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)( is a score reflecting the degree of association between the first node and a predetermined node included in the first section, is a set of the number of times of arrangement of objects included in the first section, is the number of placements for things of a predetermined node included in the first section)
상기 제2 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 2를 적용하여, 상기 제1 노드와 상기 제2 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작; calculating a score for determining the degree of association between the first node and the node included in the second section by applying
[수학식 2][Equation 2]
(은 상기 제1 노드와 상기 제2 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 상기 제2 구간에 포함된 사물들의 배치 횟수의 집합, 은 상기 제2 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)( is a score reflecting the degree of association between the first node and a predetermined node included in the second section, is a set of the number of times of arrangement of objects included in the second section, is the number of placements for things of a predetermined node included in the second section)
상기 제3 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 3을 적용하여, 상기 제1 노드와 상기 제3 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작; calculating a score for determining the degree of association between the first node and the node included in the third section by applying
[수학식 3][Equation 3]
(은 상기 제1 노드와 상기 제3 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 상기 제3 구간에 포함된 사물들의 배치 횟수의 집합, 은 상기 제3 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)( is a score reflecting the degree of association between the first node and a predetermined node included in the third section, is a set of the number of times of arrangement of objects included in the third section, is the number of placements for things of a predetermined node included in the third section)
상기 수학식 1, 2, 3의 계산을 제1 구간 내지 제3 구간에 포함된 모든 노드에 대해 수행하여, 상기 제1 노드를 기준으로 구해진 제2 노드와의 점수와, 상기 제2 노드를 기준으로 구해진 상기 제1 노드와의 점수를 합산한 값을 계산하여, 상기 제1 노드와 상기 제2 노드 사이에 상기 합산한 값을 간선 가중치로 부여하여 연결하는 동작; 및 상기 제1 노드와 상기 제4 구간에 포함된 사물과는 간선으로 연결되지 않도록 설정하는 동작을 포함할 수 있다. Calculations of
또한, 상기 추천하는 동작은 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함할 수 있다. In addition, the recommended operation is to have a positive edge weight among nodes adjacent to a first node corresponding to the predetermined object in the data structure when a predetermined object is newly placed in the virtual space of the first user in the interior service. It may include an operation of recommending selected objects from a direction of an adjacent node until returning to the first node again.
또한, 상기 추천하는 동작은 상기 회귀를 통한 경로가 소정 개수 이하이면서 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함할 수 있다. Also, the recommended operation may include setting the number of paths through the regression to circulate under a condition in which the sum of the edge weights is maximum while the number of paths through the regression is less than or equal to a predetermined number.
또한, 상기 추천하는 동작은 상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함할 수 있다. Also, in the recommended operation, if the number of nodes selected after the regression is less than the predetermined number, starting from a node having a positive edge weight among nodes not selected in the regression process and returning to the first node again The method may further include the operation of recommending selected objects by setting the cycle to a condition in which the sum of the edge weights is maximized.
또한, 상기 추천하는 동작은 상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함할 수 있다. In addition, the recommending operation may further include excluding the objects selected in the last regression process from recommendation when the total number of objects selected in the last regression process exceeds a predetermined number according to the setting.
또한, 상기 추천하는 동작은 상기 제1 사용자의 가상 공간에 기 배치된 사물을 판별하는 동작; 상기 기 배치된 사물의 위치를 기초로 상기 기 배치된 사물 간의 그룹을 분류하는 동작; 상기 그룹이 차지하는 공간에 대한 범위를 설정하는 동작; 상기 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우 상기 소정의 사물이 배치된 위치를 기초로 상기 소정의 사물이 속하는 그룹을 판별하여 그룹에 추가하거나 새로운 그룹을 생성하는 동작; 및 상기 데이터 구조에서 상기 그룹 내의 사물들과 각각 대응되는 노드들 각각에 대해서, 상기 각각의 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 각각의 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함할 수 있다. In addition, the recommending operation may include: determining an object previously disposed in the virtual space of the first user; classifying groups among the previously placed objects based on the positions of the previously placed objects; setting a range for the space occupied by the group; when a predetermined object is newly placed in the virtual space of the first user, determining a group to which the predetermined object belongs based on the location of the predetermined object and adding the object to the group or creating a new group; and for each of the nodes corresponding to the objects in the group in the data structure, sequentially selecting adjacent nodes based on the edge weight from each node until returning to each node again It may include an operation of recommending things.
또한, 상기 빅데이터는 각 사용자가 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보를 더 포함하고, 상기 프로세서는 상기 빅데이터로부터 상기 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작; 상기 집계된 횟수를 기초로 상기 빅데이터에 포함된 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작; 인테리어 서비스에서 가상 공간에 제1 벽지가 배치되는 경우, 상기 제1 벽지와의 켄달 타우 순위 상관 계수가 높은 순서로 바닥재를 추천하는 동작; 및 인테리어 서비스에서 가상 공간에 제1 바닥재가 배치되는 경우, 상기 제1 바닥재와의 켄달 타우 순위 상관 계수가 높은 순서로 벽지를 추천하는 동작을 포함할 수 있다. In addition, the big data further includes information on the types of wallpaper and flooring arranged by each user in the virtual space, and the processor counts the number of times the wallpaper and the flooring are respectively arranged in the virtual space from the big data ; calculating a Kendall Tau rank correlation coefficient for all types of wallpaper and flooring combinations included in the big data based on the counted number of times; when the first wallpaper is disposed in the virtual space in the interior service, recommending flooring materials in the order of the Kendall Tau rank correlation coefficient with the first wallpaper; and when the first flooring material is disposed in the virtual space in the interior service, recommending wallpapers in the order of the Kendall Tau rank correlation coefficient with the first flooring material being higher.
본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치가 수행하는 회귀 간선 사물 추천 방법은 인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 단계; 상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 단계; 분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 단계; 상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 단계; 상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 단계; 및 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 단계를 포함할 수 있다. The regression trunk object recommendation method performed by the regressive trunk object recommendation apparatus according to an embodiment of the present invention includes big data including information on the type of object and the location where each user who uses an interior service has placed objects in a virtual space. obtaining a; classifying a group between objects based on the positions of the objects arranged in the virtual space from the big data; counting the number of times the first thing is arranged in the same group as each other for all the classified groups; classifying the number of times according to a predetermined range to determine a degree of association between the first thing and each of the things; generating a data structure in which each of the objects included in the big data is created as a node, and an edge weight having a value based on the degree of relevance is given to connect the edges between the nodes; and when a predetermined object is newly placed in the virtual space of the first user in the interior service, the adjacent node is sequentially selected based on the edge weight from the first node corresponding to the predetermined object in the data structure. It may include a step of recommending selected objects until returning to the first node.
본 발명의 실시예에 따르면, 인테리어 서비스를 사용하는 수많은 사용자가 자신의 가상 공간에 각종 인테리어 요소를 꾸며보면서 수집되는 빅데이터를 활용하여, 사용자들의 취향, 사용자들이 주로 함께 배치하는 사물들의 종류, 사용자들이 주로 함께 배치하는 사물들의 스타일을 반영한 추천 기술을 제공할 수 있다. According to an embodiment of the present invention, a large number of users who use an interior service use big data collected while decorating various interior elements in their virtual space, the user's taste, the types of things that the users mainly arrange together, and the user It is possible to provide a recommendation technology that reflects the style of objects that are mainly placed together.
이를 위해, 본 발명의 실시예는 빅데이터에 포함된 다양한 사용자들의 정보로부터 다수의 공통적인 취향과 조화를 반영할 수 있는 연관도를 분석하는 기술을 사용하여, 사용자의 가상 공간에 새롭게 배치될 인테리어 요소를 추천할 수 있다. To this end, an embodiment of the present invention uses a technology to analyze a degree of association that can reflect a plurality of common tastes and harmony from information of various users included in big data, and an interior to be newly placed in a user's virtual space. elements can be recommended.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.In addition, various effects directly or indirectly identified through this document may be provided.
도 1은 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치의 기능 블록도이다.
도 2는 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치가 수행하는 회귀 간선 사물 추천 방법의 동작 흐름도이다.
도 3은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹이 분류되기 전(a)과 분류된 후(b)의 모습을 설명하기 위한 예시도이다.
도 4는 본 발명의 일 실시예에 따라 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 연관도에 기초한 간선 가중치를 부여하여 노드 간의 간선을 연결한 데이터 구조의 예시도이다.
도 5는 본 발명의 일 실시예에 따라 기 배치된 사물에 대한 특정 그룹이 차지하는 공간에 대한 범위를 설정하는 동작의 예시도이다.
도 6은 본 발명의 일 실시예에 따른 데이터 구조를 이용하여 회귀 방식으로 사물을 추천하는 동작의 예시도이다.
도 7은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작을 설명하기 위한 예시도이다.
도 8은 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작의 예시도이다. 1 is a functional block diagram of an apparatus for recommending a regression trunk object according to an embodiment of the present invention.
2 is an operation flowchart of a method for recommending a regressive trunk object performed by an apparatus for recommending a regressive trunk object according to an embodiment of the present invention.
3 is an example for explaining a state before (a) and after (b) classification of a group between objects based on the positions of objects arranged in a virtual space from big data according to an embodiment of the present invention; It is also
4 is an exemplary diagram of a data structure in which all objects included in big data are created as nodes, and edge weights are given based on the degree of association to connect edges between nodes according to an embodiment of the present invention.
5 is an exemplary diagram of an operation of setting a range for a space occupied by a specific group of pre-arranged objects according to an embodiment of the present invention.
6 is an exemplary diagram of an operation of recommending an object in a regression method using a data structure according to an embodiment of the present invention.
7 is an exemplary diagram for explaining an operation of counting the number of times wallpaper and flooring are respectively arranged in a virtual space from big data according to an embodiment of the present invention.
8 is an exemplary diagram of an operation of calculating a Kendall Tau rank correlation coefficient for all kinds of combinations of wallpaper and flooring.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and can be implemented in various forms, only these embodiments make the disclosure of the present invention complete, and with ordinary knowledge in the art to which the present invention pertains. It is provided to fully inform the person of the scope of the invention, and the scope of the present invention is only defined by the claims.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the embodiments of the present invention, detailed descriptions of well-known functions or configurations will be omitted except when it is actually necessary to describe the embodiments of the present invention. In addition, the terms to be described later are terms defined in consideration of functions in an embodiment of the present invention, which may vary according to intentions or customs of users and operators. Therefore, the definition should be made based on the content throughout this specification.
도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록들 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합일 수 있다.The functional blocks shown in the drawings and described below are merely examples of possible implementations. Other functional blocks may be used in other implementations without departing from the spirit and scope of the detailed description. Also, although one or more functional blocks of the present invention are represented as separate blocks, one or more of the functional blocks of the present invention may be combinations of various hardware and software configurations that perform the same function.
또한 어떤 구성 요소들을 포함한다는 표현은 개방형의 표현으로서 해당 구성 요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성 요소들을 배제하는 것으로 이해되어서는 안 된다.In addition, the expression including certain components is an open expression and merely refers to the existence of the corresponding components, and should not be construed as excluding additional components.
나아가 어떤 구성 요소가 다른 구성 요소에 연결되어 있다거나 접속되어 있다고 언급될 때에는, 그 다른 구성 요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 한다. Furthermore, when it is mentioned that a component is connected or connected to another component, it may be directly connected or connected to the other component, but it should be understood that another component may exist in the middle.
또한 '제1, 제2' 등과 같은 표현은 복수의 구성들을 구분하기 위한 용도로만 사용된 표현으로써, 구성들 사이의 순서나 기타 특징들을 한정하지 않는다. In addition, expressions such as 'first, second', etc. are used only for distinguishing a plurality of components, and do not limit the order or other characteristics between the components.
이하에서는 도면들을 참조하여 본 발명의 실시예들에 대해 설명하도록 한다. Hereinafter, embodiments of the present invention will be described with reference to the drawings.
도 1은 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치(100)의 기능 블록도이다. 도 1을 참조하면, 일 실시 예에 따른 회귀 간선 사물 추천 장치(100)는 메모리(110), 프로세서(120), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)를 포함할 수 있다. 1 is a functional block diagram of a regression trunk
메모리(110)는 빅데이터 DB(111), 데이터 구조 DB(113) 및 명령어 DB(115)를 포함할 수 있다. The
빅데이터 DB(111)는 인테리어 서비스로부터 수집되는 다양한 데이터를 포함할 수 있다. 인테리어 서비스란, 실제 공간의 모습을 3차원의 가상 공간에 이식하여 가상의 인테리어 요소를 꾸며볼 수 있는 기능을 제공하는 서비스를 포함할 수 있다. 인테리어 서비스를 사용하는 사용자들은 자신의 취향대로 가상 공간에 사물/바닥재/벽지 등의 인테리어 요소를 배치할 수 있다. 인테리어 서비스를 사용하는 사용자들은 다른 사용자들이 꾸민 가상 공간의 인테리어를 보고 공감 기능(ex. 좋아요 버튼) 등을 통해 반응할 수 있다. 또한, 인테리어 서비스를 통해 사용자들이 특정 인테리어를 조회한 조회수가 집계될 수 있다. The
빅데이터 DB(111)가 인테리어 서비스로부터 수집되는 모든 정보를 빅데이터로서 저장할 수 있다. 예를 들어, 빅데이터는 인테리어 서비스의 사용자 정보, 사용자가 인테리어한 공간에 대한 정보, 인테리어한 방 종류에 대한 정보, 사용자가 배치한 사물, 벽지, 바닥재 등에 대한 정보, 사용자의 취향에 대한 정보, 사용자들이 특정 인테리어에 대해 평가한 정보, 사용자들이 특정 인테리어를 조회한 횟수에 대한 정보 등을 포함할 수 있다. The
데이터 구조 DB(113)는 빅데이터에 포함된 모든 사물 각각에 대해 특정 사물과 대응되는 노드가 사물 간의 연관도에 기초한 간선 가중치에 따라 연결되어 있는 형태의 데이터 구조를 저장할 수 있다. The
명령어 DB(115)는 프로세서(120)의 동작을 수행시킬 수 있는 명령어들을 저장할 수 있다. 예를 들어, 명령어 DB(115)는 후술할 프로세서(120)의 동작들과 대응되는 동작을 수행하도록 하는 컴퓨터 코드를 저장할 수 있다. The
프로세서(120)는 회귀 간선 사물 추천 장치(100)가 포함하는 구성들, 메모리(110), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)의 전반적인 동작을 제어할 수 있다. 프로세서(120)는 그룹화 모듈(121), 연산 모듈(123), 구조화 모듈(125) 및 제어 모듈(127)을 포함할 수 있다. 프로세서(120)는 메모리(110)에 저장된 명령어들을 실행해 그룹화 모듈(121), 연산 모듈(123), 구조화 모듈(125) 및 제어 모듈(127)을 구동시킬 수 있다. 그룹화 모듈(121), 연산 모듈(123), 구조화 모듈(125) 및 제어 모듈(127)에 의해 수행되는 동작은 프로세서(120)에 의해 수행되는 동작으로 이해될 수 있다. The
그룹화 모듈(121)은 빅데이터에 포함된 정보 중 사용자가 가상 공간에 배치한 사물들에 대한 정보에 대해서, 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류할 수 있다. 그룹화 모듈(121)은 위치 기반으로 사물들의 그룹화 동작을 수행함으로써 인테리어 서비스에서 사용자들이 함께 배치하는 사물들에 대한 정보를 통해 사물 간의 연관도를 분석할 수 있게 하는 선행 데이터를 생성한다. The
연산 모듈(123)은 그룹화된 모든 그룹에 대해서 특정 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하고, 각 사물이 함께 배치된 횟수를 기초로 각 사물 간의 연관도를 판별할 수 있다. 또한, 연산 모듈(123)은 가상 공간에 특정 종류의 벽지 및 바닥재가 함께 배치된 횟수를 집계하고, 해당 횟수를 기초로 벽지와 바닥재 간의 연관도를 판별할 수 있다. The
구조화 모듈(125)은 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 사물 간의 연관도에 기초한 간선 가중치가 부여된 간선을 노드 사이에 연결하여 데이터 구조를 저장할 수 있다.The structuring module 125 may generate each of the objects included in the big data as a node, and store the data structure by connecting the trunk lines to which the trunk weight is given based on the degree of association between the objects between the nodes.
제어 모듈(127)은 인테리어 서비스에서 사용자가 사물, 벽지, 바닥재 등의 인테리어 요소를 가상 공간에 배치하려는 경우, 기 생성된 데이터 구조 또는 기 계산된 상관 관계에 대한 정보를 활용하여, 인테리어 요소들 간의 연관도에 기반한 새로운 인테리어 요소를 추천할 수 있다. When a user intends to place interior elements such as objects, wallpaper, and flooring in a virtual space in an interior service, the
입력 인터페이스(130)는 사용자의 입력을 수신할 수 있다. 예를 들면, 사용자가 인테리어 서비스에서 선택하는 인테리어 요소 등의 입력을 수신할 수 있다. The
디스플레이부(140)는 디스플레이 패널을 포함하여 화상을 출력하는 하드웨어 구성을 포함할 수 있다. The
통신 인터페이스(150)는 외부 장치(ex. 외부 DB 서버, 사용자 단말 등)와 통신하여 정보를 송수신 할 수 있게 한다. 이를 위해, 통신 인터페이스(150)는 무선 통신모듈 또는 유선 통신모듈을 포함할 수 있다.The
이하, 도 2 내지 도 8을 통해 회귀 간선 사물 추천 장치(100)의 구성 요소들이 연동하여 인테리어 서비스의 사용자에게 빅데이터에 기반한 인테리어 요소를 추천하게 되는 구체적 실시예에 대해 설명한다. Hereinafter, a specific embodiment in which the components of the regression trunk
도 2는 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치(100)가 수행하는 회귀 간선 사물 추천 방법의 동작 흐름도이다. 도 2에 따른 회귀 간선 사물 추천 방법의 각 단계는 도 1을 통해 설명된 회귀 간선 사물 추천 장치(100)의 구성들에 의해 수행될 수 있으며, 각 단계를 설명하면 다음과 같다.2 is an operation flowchart of a method for recommending a regressive trunk object performed by the
빅데이터 DB(111)는 인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치, 사물의 종류, 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보 등 사용자에게 인테리어 서비스를 제공하면서 수집되는 다양한 정보를 포함하는 빅데이터를 저장할 수 있다(S210). The
인테리어 서비스는 각 사용자가자신의 가상 공간에 배치한 인테리어 요소들에 대한 정보들이 유지되도록 저장할 수 있고, 사용자가 인테리어 요소를 배치해보며 꾸민 횟수, 배치해본 인테리어 요소들에 대한 내역, 최종적으로 유지되고 있는 가상 공간에서의 인테리어 요소 및 사용자의 정보를 저장할 수 있으며, 이러한 모든 정보를 누적하여 저장함으로써 빅데이터를 생성할 수 있다. 빅데이터 DB(111)는 하나 이상의 인테리어 서비스로부터 생성되는 빅데이터를 획득하여 저장할 수 있고, 이후의 동작에 따라 본 발명의 목적을 수행할 수 있도록 데이터들이 정제될 수 있다. The interior service can store information on the interior elements placed by each user in their virtual space to be maintained, and the number of times the user arranged and decorated interior elements, the details of the interior elements placed, and finally maintained It is possible to store interior elements and user information in a virtual space in which there is, and by accumulating and storing all such information, big data can be generated. The
그룹화 모듈(121)은 빅데이터에 포함된 정보 중 사용자가 가상 공간에 배치한 사물들에 대한 정보에 기초하여, 가상 공간에 배치된 사물들의 위치 관계를 기준으로 사물 간의 그룹을 분류할 수 있다(S220). The
도 3은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에 배치된 사물들의 위치 관계를 기초로 사물 간의 그룹이 분류되기 전(a)과 분류된 후(b)의 모습을 설명하기 위한 예시도이다. 3 is an example for explaining a state before (a) and after (b) a group between objects is classified based on a positional relationship of objects arranged in a virtual space from big data according to an embodiment of the present invention; It is also
도 3을 참조하면, 그룹화 모듈(121)은 가상 공간 내에서 사물들이 위치하는 3차원 좌표의 위치를 기반으로 사물들을 군집화하는 소정의 알고리즘을 이용하여 사물 간의 그룹을 분류할 수 있다. 예를 들어, 그룹화 모듈(121)은 DBSCAN(Density Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘을 이용할 수 있다. DBSCAN 클러스터링 알고리즘은 입력된 복수 객체의 위치에 대한 밀도를 기반으로 그룹을 분류하는 알고리즘이다. 그룹화 모듈(121)은 소정 범위의 가상 공간 안에 배치된 사물들의 3차원 좌표를 DBSCAN 클러스터링 알고리즘에 입력하여 빅데이터에 포함된 사물들의 그룹을 분류할 수 있다. 이러한 그룹 정보는 인테리어 서비스에서 사용자들이 함께 배치하는 사물들에 대한 정보로부터 사물 간의 연관도를 분석할 수 있게 하는 선행 데이터의 역할을 할 수 있다. Referring to FIG. 3 , the
연산 모듈(123)은 분류된 모든 그룹에 대해, 특정 사물이 다른 각각의 사물과 같은 그룹 내에서 배치된 횟수를 집계할 수 있다(S230). 연산 모듈(123)은 특정 사물이 다른 각각의 사물과 같은 그룹 내에서 배치된 각각의 횟수를 소정 범위에 따라 분류하여 특정 사물과 다른 모든 사물 간의 연관도를 판별할 수 있다(S240). The
예를 들어, "싱크대"라는 특정 사물을 기준으로 같은 그룹으로 분류된 내역이 있는 사물들이 "접시, 토스트기, 전자렌지, 식기도구, 테이블, 의자, 액자, 시계, 에어컨, 랜턴, TV, 세탁기, 신발장, 변기"가 있고, 빅데이터에서 싱크대가 각각의 사물들과 함께 배치되었던 횟수가 [10000, 8887, 8882, 8281, 5000, 4529, 4325, 2100, 150, 32, 22, 15, 7, 2] 라고 가정하여 설명한다. For example, objects that are classified into the same group based on a specific object called "sink" are "dishes, toasters, microwaves, tableware, tables, chairs, picture frames, clocks, air conditioners, lanterns, TVs, washing machines, There is a shoe closet and toilet, and the number of times the sink was placed with each object in big data was [10000, 8887, 8882, 8281, 5000, 4529, 4325, 2100, 150, 32, 22, 15, 7, 2 ] is assumed.
연산 모듈(123)은 배치 횟수에 따라 각 사물을 제1 구간, 제2 구간, 제3 구간 및 제4 구간으로 나뉘어, 제1 구간에서 제4 구간으로 갈수록, "싱크대"와 강한 연관도에서 약한 연관도를 갖도록 사물들의 연관도를 판별할 수 있다. The
이를 위해, 연산 모듈(123)은 "싱크대"가 상기 각각의 사물과 같은 그룹으로 배치된 횟수에 대한 평균(a)과 표준편차(b)를 계산할 수 있다(예시의 경우, a: 3730.86, b: 3781.77). 또한, 연산 모듈(123)은 배치된 횟수가 a(3730.86) 보다 작은 제2 사물들에 대해서만 배치된 횟수([2100, 150, 32, 22, 15, 7, 2])의 평균(c)을 계산할 수 있다(예시의 경우, c: 332.57).To this end, the
이후, 연산 모듈(123)은 싱크대와 a+b(7512.63) 이상의 횟수로 함께 배치된 내역의 사물들을 제1 구간, 제1 사물과 a(3730.86) 내지 a+b(7512.63) 사이의 횟수로 함께 배치된 내역의 사물들을 제2 구간, 제1 사물과 c(332.57) 내지 a(3730.86) 사이의 횟수로 함께 배치된 내역의 사물들을 제3 구간, 제1 사물과 c(332.57) 이하의 횟수로 함께 배치된 내역의 사물들을 제4 구간으로 분류할 수 있다.After that, the
<제1 구간 - 매우 강한 연관도><Second Section - Very Strong Association>
[접시, 토스트기, 전자렌지, 식기도구] = [10000, 8887, 8882, 8281][Dish, toaster, microwave, tableware] = [10000, 8887, 8882, 8281]
<제2 구간 - 강한 연관도><Second Section - Strong Association>
[테이블, 의자, 액자] = [5000, 4529, 4325][table, chair, picture frame] = [5000, 4529, 4325]
<제3 구간 - 약한 연관도><3rd section - weak correlation>
[시계] = [2100][clock] = [2100]
<제4 구간 - 매우 약한 연관도><4th section - very weak correlation>
[에어컨, 랜턴, TV, 세탁기, 신발장, 변기] = [150, 32, 22, 15, 7, 2][Air conditioner, lantern, TV, washing machine, shoe cabinet, toilet] = [150, 32, 22, 15, 7, 2]
구조화 모듈(125)은 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 사물 간의 연관도에 기초한 간선 가중치를 부여하여 각 노드 간의 간선을 연결한 데이터 구조를 생성할 수 있다(S250). The structuring module 125 may generate each of the objects included in the big data as a node, and may generate a data structure connecting the trunk lines between the nodes by giving an edge weight based on the degree of association between the objects ( S250 ).
예를 들면, "싱크대"를 기준으로 한 상술한 예시에서, 구조화 모듈(125)은 제1 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 1을 적용하여, 제1 노드(ex. 싱크대)와 제1 구간에 포함된 노드 각각에 대한 연관도를 판별하는 점수인 를 계산할 수 있다. For example, in the above-described example based on “sink”, the structuring module 125 applies
[수학식 1][Equation 1]
(은 제1 노드와 제1 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 제1 구간에 포함된 사물들의 배치 횟수의 집합, 은 제1 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)( is a score reflecting the degree of association between the first node and a predetermined node included in the first section, is a set of the number of placements of objects included in the first section, is the number of placements for things of a given node included in the first section)
즉, 은 [접시, 토스트기, 전자렌지, 식기도구] = [10000, 8887, 8882, 8281], 은 [10000, 8887, 8882, 8281] 중 어느 하나에 대한 배치 횟수, 은 제1 구간 집합의 최솟값인 8281, 은 제1 구간 집합의 표준편차인 std([10000, 8887, 8882, 8281]) = 621.09를 의미한다. trunc는 괄호 안에 계산된 값의 특정 소수점 이하 절사하는 함수이다. in other words, Silver [dish, toaster, microwave, tableware] = [10000, 8887, 8882, 8281], is the number of batches for any of [10000, 8887, 8882, 8281], is the minimum value of the first interval set 8281, is the standard deviation of the first set of intervals, std([10000, 8887, 8882, 8281]) = 621.09. trunc is a function that truncates the value calculated in parentheses to a specific decimal point.
구조화 모듈(125)은 제2 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 2를 적용하여, 제1 노드(ex. 싱크대)와 제2 구간에 포함된 노드 각각에 대한 연관도를 판별하는 점수인 를 계산할 수 있다. The structuring module 125 applies
[수학식 2][Equation 2]
(은 제1 노드와 제2 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 제2 구간에 포함된 사물들의 배치 횟수의 집합, 은 제2 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)( is a score reflecting the degree of association between the first node and a predetermined node included in the second section, is the set of the number of placements of objects included in the second section, is the number of placements for things of a predetermined node included in the second section)
즉, 는 [테이블, 의자, 액자] = [5000, 4529, 4325], 은 [5000, 4529, 4325] 중 어느 하나에 대한 배치 횟수, 은 제2 구간 집합의 최솟값인 4325, 은 제2 구간 집합의 표준편차인 std([5000, 4529, 4325]) = 282.66를 의미한다. trunc는 괄호 안에 계산된 값의 특정 소수점 이하 절사하는 함수이다.in other words, is [table, chair, frame] = [5000, 4529, 4325], is the number of batches for any of [5000, 4529, 4325], is the minimum value of the second interval set, 4325, is the standard deviation of the second set of intervals, std([5000, 4529, 4325]) = 282.66. trunc is a function that truncates the value calculated in parentheses to a specific decimal point.
구조화 모듈(125)은 제3 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 3을 적용하여, 제1 노드(ex. 싱크대)와 제3 구간에 포함된 노드 각각에 대한 연관도를 판별하는 점수인 를 계산할 수 있다. The structuring module 125 applies
[수학식 3][Equation 3]
(은 제1 노드와 제3 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 제3 구간에 포함된 사물들의 배치 횟수의 집합, 은 제3 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)( is a score reflecting the degree of association between the first node and a predetermined node included in the third section, is the set of the number of placements of objects included in the third section, is the number of placements for things of a predetermined node included in the third section)
즉, 는 [시계] = [2100], 은 [시계] = [2100] 중 어느 하나에 대한 배치 횟수, 은 제3 구간 집합의 최솟값인 2100, 은 제3 구간 집합의 표준편차인 std([2100]) = 0을 의미한다. trunc는 괄호 안에 계산된 값의 특정 소수점 이하 절사하는 함수이다.in other words, is [clock] = [2100], is the number of batches for either [clock] = [2100], is the minimum value of the third interval set, 2100, is the standard deviation of the third set of intervals, std([2100]) = 0. trunc is a function that truncates the value calculated in parentheses to a specific decimal point.
구조화 모듈(125)은 상술한 수학식 1 내지 수학식 3에 따른 계산의 과정을 모든 노드에 대해 수행할 수 있다. 즉, 상술한 예시와 같이 "싱크대"라는 사물을 기준으로 "접시, 토스트기, 전자렌지, 식기도구, 테이블, 의자, 액자, 시계, 에어컨, 랜턴, TV, 세탁기, 신발장, 변기"에 대한 점수가 계산되었다면, "테이블"을 기준으로 "테이블"과 다른 사물들에 연관 점수도 계산될 수 있다. 이에 따라 "테이블"을 기준으로 "싱크대"라는 사물과 계산된 점수가 도출될 수 있다. The structuring module 125 may perform the calculation process according to
만약, 위 예시에서 "테이블"을 기준으로 같은 그룹에서 함께 배치된 사물들의 배치 횟수가 [32000, 30002, 25882, 18281, 16999, 5000, 3252, 2125, 302, 202, 201, 55, 34, 10, 4] 이고, 그 중 "싱크대"와 함께 배치된 횟수가 5000에 해당한다면, 상술한 수학식 1 내지 수학식 3에 따라 테이블을 기준으로 한 싱크대의 점수는 "-86"이라는 점수가 도출된다. If the number of placements of objects placed together in the same group based on the “table” in the above example is [32000, 30002, 25882, 18281, 16999, 5000, 3252, 2125, 302, 202, 201, 55, 34, 10 , 4], and among them, if the number of arrangements with the "sink" corresponds to 5000, the score of the sink based on the table according to
이후, 구조화 모듈(125)은 제1 노드(ex. 싱크대)를 기준으로 구해진 제2 노드(ex. 테이블)와의 점수(ex. +36)와, 제2 노드(ex. 테이블)를 기준으로 구해진 제1 노드(ex. 싱크대)와의 점수(ex. -86)를 합산하여, 제1 노드와 제2 노드 사이에 합산한 값(ex. +36-86= -50점)을 간선 가중치로 부여하여 연결할 수 있다. 이때 구조화 모듈(125)은 제1 노드에 대해 제4 구간에 포함된 사물과는 점수를 계산하지 않고 서로 간선으로 연결되지 않도록 설정할 수 있다.Thereafter, the structuring module 125 calculates a score (ex. +36) with a second node (ex. table) obtained based on a first node (ex. sink), and a score (ex. +36) obtained based on a second node (ex. table). The score (ex. -86) with the first node (ex. sink) is summed, and the summed value between the first node and the second node (ex. +36-86 = -50 points) is given as an edge weight. can be connected In this case, the structuring module 125 may set the first node not to be connected to each other by trunk lines without calculating a score with the object included in the fourth section.
이에 따라, 구조화 모듈(125)은 도 4와 같은 예시의 데이터 구조를 생성할 수 있다. 이때 데이터 구조의 간선 가중치는 어느 공간(ex. 거실, 침실, 화장실, 부엌 등)에서 사물이 배치되는지에 따라서, 데이터 구조에 포함된 소정 노드 간 간선 가중치에 대해 편향(bias)을 더하거나 감하도록, 편향이 반영될 사물들과 편향의 값을 기 설정할 수 있다. Accordingly, the structuring module 125 may generate an exemplary data structure as shown in FIG. 4 . At this time, the edge weight of the data structure adds or subtracts a bias to the edge weight between predetermined nodes included in the data structure according to which space (eg, living room, bedroom, bathroom, kitchen, etc.) Objects to which the bias is to be reflected and the value of the bias may be preset.
도 4는 본 발명의 일 실시예에 따라 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 연관도에 기초한 간선 가중치를 부여하여 노드 간의 간선을 연결한 데이터 구조의 예시도이다. 4 is an exemplary diagram of a data structure in which all objects included in big data are created as nodes and edge weights based on the degree of association are given to connect edges between nodes according to an embodiment of the present invention.
도 4를 참조하면, 제어 모듈(127)은 인테리어 서비스에서 제1 사용자가 가상 공간에 소정의 사물을 새롭게 배치하는 경우, 데이터 구조에서 새롭게 배치한 소정의 사물과 대응되는 제1 노드와 간선으로 연결된 사물을 간선 가중치에 기반하여 추천할 수 있다. Referring to FIG. 4 , the
만약, 제1 사용자가 소정 공간에 "카펫"을 배치하는 경우, 데이터 구조를 참조하여 연결된 간선 가중치가 높은 순서로 "소파", "테이블 2", "암체어"를 추천할 수 있다. If the first user arranges a "carpet" in a predetermined space, "sofa", "table 2", and "armchair" may be recommended in the order of increasing the weight of the connected trunk lines with reference to the data structure.
이후, 제1 사용자가 "카펫"을 놓은 다음 "암체어"를 "카펫"의 근처에 배치하였다면, 두 개의 노드를 하나의 노드군으로 묶어, 해당 노드군을 기준으로 간선으로 연결된 사물들에 대해 간선 가중치가 높은 순서로 "소파", "램프", "테이블 2"를 추천할 수 있다. 이때 "테이블 1" 및 "테이블 의자"와 같이 음의 간선 가중치로 연결된 경우의 사물은 추천에서 제외할 수 있다. After that, if the first user places the "carpet" and then places the "armchair" near the "carpet", the two nodes are grouped into one grove, and the trunk line for objects connected by the trunk line based on the grove group We can recommend "sofa", "lamp", and "table 2" in order of increasing weight. In this case, objects connected with negative edge weights, such as "Table 1" and "Table Chair", may be excluded from the recommendation.
한편, 제1 사용자가 "카펫"을 놓은 다음 "암체어"를 "카펫"의 근처에 배치하지 않았다면 노드군을 형성하지 않고, "암체어"에 해당하는 노드만을 기준으로 간선으로 연결된 사물들에 대해 간선 가중치가 높은 순서로 "램프", "카펫"을 추천할 수 있다. 이때 "테이블 1" 및 "테이블 의자"와 같이 음의 간선 가중치로 연결된 경우의 사물은 추천에서 제외할 수 있다. On the other hand, if the first user does not place an "armchair" near the "carpet" after placing the "carpet", a grove is not formed, and only the nodes corresponding to the "armchair" “Ramp” and “carpet” can be recommended in order of increasing weight. In this case, objects connected with negative edge weights, such as "Table 1" and "Table Chair", may be excluded from the recommendation.
이때 "카펫"을 놓은 다음 "암체어"를 놓는 경우, "암체어"가 "카펫"의 근처에 배치된 것인지 근처가 아닌지, 즉 사물들이 같은 그룹에 속하는지 아닌지를 판별하는 알고리즘에 대한 실시예를 설명한다. At this time, when the "carpet" is placed and then the "armchair" is placed, the embodiment of the algorithm for determining whether the "armchair" is placed near the "carpet" or not, that is, whether objects belong to the same group or not do.
제어 모듈(127)은 제1 사용자의 가상 공간에 기 배치된 사물을 판별하고, 기 배치된 사물들의 위치를 기초로 상술한 DBSCAN 클러스터링 알고리즘을 이용하여 미리 기 배치된 사물 간의 그룹을 분류할 수 있다. 이에 따라 사물들의 그룹이 분류되면, 제어 모듈(127)은 각 그룹이 차지하는 공간에 대한 범위를 설정할 수 있다. The
도 5는 본 발명의 일 실시예에 따라 기 배치된 사물에 대한 특정 그룹이 차지하는 공간에 대한 범위를 설정하는 동작의 예시도이다. 5 is an exemplary diagram of an operation of setting a range for a space occupied by a specific group of pre-arranged objects according to an embodiment of the present invention.
도 5를 참조하면, 제어 모듈(127)은 상술한 동작으로 같은 그룹으로 분류된 사물들의 3차원 위치 좌표의 중점으로부터 가장 멀리 배치된 사물의 3차원 위치 좌표까지의 거리에 소정의 상수를 더한 길이를 반경으로 하는 구의 내부를 상기 범위로 설정할 수 있다. Referring to FIG. 5 , the
이후, 제어 모듈(127)은 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 소정의 사물이 배치된 위치를 기초로 소정의 사물이 특정 그룹의 범위에 속하는지를 판별하여, 특정 그룹의 범위에 속한다면 배치된 사물을 해당 그룹에 추가하고, 특정 그룹의 범위에 속하지 않는다면 배치된 사물에 대하여 새로운 그룹을 생성할 수 있다. Thereafter, when a predetermined object is newly placed in the virtual space of the first user, the
이에 따라, 제어 모듈(127)은 배치된 사물이 특정 그룹에 속한다면, 해당 그룹에 포함된 사물들과 대응되는 노드를 묶은 노드군에 대해 데이터 구조에서 간선으로 연결된 사물을 간선 가중치에 따라 추천할 수 있다. Accordingly, if the placed object belongs to a specific group, the
데이터 구조를 활용하면서 상술한 추천 방식과 또 다른 실시예에 따르면, 제어 모듈(127)은 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 제어 모듈(127)은 다양한 조건을 조합하여 설정함으로써, 새롭게 배치된 사물의 노드로부터 인접한 노드를 순차적으로 선택하면서 다시 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천할 수 있다. According to the above-described recommendation method and another embodiment while utilizing the data structure, when a predetermined object is newly placed in the virtual space of the first user in the interior service, the
예를 들어, 제어 모듈(127)은 데이터 구조에서 상기 배치된 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 다시 제1 노드로 회귀해 돌아오는 조건, 회귀해 돌아오기까지 선택된 노드들의 개수가 소정 개수 이하이면서 간선 가중치의 합이 최대가 되는 조건, 회귀 이후 선택된 노드들의 개수가 소정 개수 미만인 경우, 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 양의 간선 가중치를 갖는 다른 노드를 통해 제1 노드로 회귀해 돌아오는 조건, 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 조건, 간선 가중치의 합이 최대가 되도록 먼저 노드들을 순환하도록 하는 조건 등을 조합하여 회귀하도록 설정할 수 있다.For example, a condition in which the
도 6은 본 발명의 일 실시예에 따른 데이터 구조를 이용하여 회귀 방식으로 사물을 추천하는 동작의 예시도이다. 6 is an exemplary diagram of an operation of recommending an object in a regression method using a data structure according to an embodiment of the present invention.
도 6을 참조하면, 제어 모듈(127)은 데이터 구조에서 소정의 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 양의 간선 가중치를 갖는 인접한 노드로 회귀하되, 제1 노드로 회귀해 돌아오기까지 통과하는 노드들의 개수가 6개 이하가 되는 조건으로, 제1 노드로부터 출발하여 다시 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 회귀 조건을 설정할 수 있다. Referring to FIG. 6 , the
도 6에서 새롭게 배치된 사물이 "테이블 2"인 경우, "테이블 2"에 연결된 간선은 선반(+42), 수납함(+27), 카펫(+31), 소파(+11), 테이블 1(-350) 이고, 양의 간선 가중치를 갖는 노드를 통해 출발하고 복귀할 수 있으므로, 선반(+42), 수납함(+27), 카펫(+31), 소파(+11)의 노드를 통해 출발하고, 선반(+42), 수납함(+27), 카펫(+31), 소파(+11)의 노드를 통해 복귀할 수 있는 경우의 수를 계산할 수 있다. 다만, 선택될 수 있는 노드의 개수가 6개로 한정되므로, 회귀하는 동안 6개를 초과하게 되는 회귀의 경우의 수는 제외할 수 있다. When the newly placed object in FIG. 6 is "Table 2", the trunk line connected to "Table 2" is a shelf (+42), a storage box (+27), a carpet (+31), a sofa (+11), and a table 1 ( -350) and can start and return through nodes with positive edge weights, so it starts through the nodes of shelf (+42), bin (+27), carpet (+31), and sofa (+11). , shelf (+42), storage box (+27), carpet (+31), and sofa (+11) can calculate the number of possible returns through the nodes. However, since the number of nodes that can be selected is limited to 6, the number of regression cases exceeding 6 during regression may be excluded.
즉, 제어 모듈(127)은 특정한 하나의 회귀 경로만 선택하는 것이 아니라 회귀 이후 선택된 노드들의 개수가 6개 이하라면, 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 제1 노드로 회귀해 돌아오기까지, 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천할 수 있다. That is, the
이에 따라, 제어 모듈(127)은 "테이블 2->선반->서랍장->수납함->테이블 2"로 회귀하는 제1 경우의 수와, "테이블 2->카펫->소파->테이블2"로 회귀하는 제2 경우의 수를 선택할 수 있고, "선반, 서랍장, 수납함, 카펫, 소파"의 사물들을 함께 배치할 수 있는 사물로 추천할 수 있다. Accordingly, the
도 7은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작을 설명하기 위한 예시도이다. 7 is an exemplary diagram for explaining an operation of counting the number of times wallpaper and flooring are respectively arranged in a virtual space from big data according to an embodiment of the present invention.
도 7(a)를 참조하면, 연산 모듈(123)은 빅데이터에 포함된 각 사용자가 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보로부터, 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계할 수 있다. Referring to FIG. 7( a ), the
도 7(b)를 참조하면, 연산 모듈(123)은 C집처럼 특정 벽지와 바닥재가 배치된 경우가 모두 0인 경우는 후술할 상관관계 연산의 영향에서 배제하기 위해 집계를 제외할 수 있다.Referring to FIG. 7(b) , the
도 7(c)를 참조하면, 연산 모듈(123)은 특정 사용자의 인테리어가 다른 사용자들로부터 많은 공감(ex. 좋아요 버튼)을 받거나, 조회 수가 높은 경우 해당 인테리어에 해당하는 공간/바닥재 배치 횟수에 가중치를 부여함으로써 사용자들의 집단 취향을 반영할 수 있다. 예를 들어, 도 7(c)의 D집에서 벽재/바닥재가 사용된 횟수는 4회/2회이지만, 기 설정된 기준보다 높은 공감이나 조회 수를 받은 경우에 해당한다면, 소정 기준에 따라 가중치를 주어 D집에 벽지/바닥재가 배치된 횟수를 높여서 후술할 연산에 반영할 수 있다. Referring to Figure 7 (c), the
도 8은 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작의 예시도이다. 8 is an exemplary diagram of an operation of calculating a Kendall Tau rank correlation coefficient for all kinds of combinations of wallpaper and flooring.
도 8을 참조하면, 특정 벽지/바닥재의 조합에 대한 상관관계를 분석하기 위해, 연산 모듈(123)은 빅데이터를 통해 모든 종류의 벽지/바닥재 조합에 대해 집계된 횟수를 기초로, 켄달 타우 순위 상관 계수(kendall tau rank correlation coefficient)를 계산하고, 모든 조합에 대하여 계산된 상관관계 점수가 -1에서 +1의 범위를 갖도록 정규화할 수 있다. Referring to FIG. 8 , in order to analyze the correlation for a specific wallpaper/flooring combination, the
이에 따라, 인테리어 서비스에서 가상 공간에 특정 벽지가 배치되는 경우, 제어 모듈(127)은 해당 벽지와의 켄달 타우 순위 상관 계수가 높은 순서로 바닥재를 추천할 수 있다. 또한 제어 모듈(127)은 인테리어 서비스에서 가상 공간에 특정 바닥재가 배치되는 경우, 해당 바닥재와의 켄달 타우 순위 상관 계수가 높은 순서로 벽지를 추천할 수 있다. Accordingly, when a specific wallpaper is arranged in a virtual space in the interior service, the
상술한 실시예에 따르면, 인테리어 서비스를 사용하는 수많은 사용자가 자신의 가상 공간에 각종 인테리어 요소를 꾸며보면서 수집되는 빅데이터를 활용하여, 사용자들의 취향, 사용자들이 주로 함께 배치하는 사물들의 종류, 사용자들이 주로 함께 배치하는 사물들의 스타일을 반영한 추천 기술을 제공할 수 있다. According to the above-described embodiment, a large number of users who use the interior service use big data collected while decorating various interior elements in their virtual space, so that the tastes of users, the types of things they mainly arrange together, and the users It is possible to provide a recommendation technique that reflects the style of things that are mainly arranged together.
이를 위해, 본 발명의 실시예는 빅데이터에 포함된 다양한 사용자들의 정보로부터 다수의 공통적인 취향과 조화를 반영할 수 있는 연관도를 분석하는 기술을 사용하여, 사용자의 가상 공간에 새롭게 배치될 인테리어 요소를 추천할 수 있다. To this end, an embodiment of the present invention uses a technology to analyze a degree of association that can reflect a plurality of common tastes and harmony from information of various users included in big data, and an interior to be newly placed in a user's virtual space. elements can be recommended.
상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.The above-described embodiments of the present invention may be implemented through various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.
하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로프로세서 등에 의해 구현될 수 있다.In the case of implementation by hardware, the method according to embodiments of the present invention may include one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), and Programmable Logic Devices (PLDs). , FPGAs (Field Programmable Gate Arrays), processors, controllers, microcontrollers, microprocessors, and the like.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드 등이 기록된 컴퓨터 프로그램은 컴퓨터 판독 가능 기록 매체 또는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 메모리 유닛은 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 프로세서와 데이터를 주고받을 수 있다.In the case of implementation by firmware or software, the method according to the embodiments of the present invention may be implemented in the form of a module, procedure, or function that performs the functions or operations described above. A computer program in which a software code or the like is recorded may be stored in a computer-readable recording medium or a memory unit and driven by a processor. The memory unit may be located inside or outside the processor, and may transmit and receive data to and from the processor by various known means.
또한 본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방법으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.Also, combinations of each block in the block diagram attached to the present invention and each step in the flowchart may be performed by computer program instructions. These computer program instructions may be embodied in an encoding processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, such that the instructions executed by the encoding processor of the computer or other programmable data processing equipment may correspond to each block of the block diagram or Each step of the flowchart creates a means for performing the functions described. These computer program instructions may also be stored in a computer-usable or computer-readable memory that may direct a computer or other programmable data processing equipment to implement a function in a particular way, and thus the computer-usable or computer-readable memory. It is also possible to produce an article of manufacture containing instruction means for performing the functions described in each block of the block diagram or each step of the flowchart, the instructions stored in the block diagram. The computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operational steps are performed on the computer or other programmable data processing equipment to create a computer-executed process to create a computer or other programmable data processing equipment. It is also possible that instructions for performing the processing equipment provide steps for carrying out the functions described in each block of the block diagram and each step of the flowchart.
더불어 각 블록 또는 각 단계는 특정된 논리적 기능을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or each step may represent a module, segment, or part of code including one or more executable instructions for executing a specified logical function. It should also be noted that in some alternative embodiments it is also possible for the functions recited in blocks or steps to occur out of order. For example, it is possible that two blocks or steps shown one after another may in fact be performed substantially simultaneously, or that the blocks or steps may sometimes be performed in the reverse order according to the corresponding function.
이와 같이, 본 발명이 속하는 기술 분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적이며 한정적이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허 청구범위에 의하여 나타내어지며, 특허 청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.As such, those skilled in the art to which the present invention pertains will be able to understand that the present invention may be embodied in other specific forms without changing the technical spirit or essential characteristics thereof. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. The scope of the present invention is indicated by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. .
Claims (17)
소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작 가능 하도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고,
상기 프로세서가 수행하는 동작은,
인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 동작;
상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 동작;
분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 동작;
상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 동작;
상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 동작; 및
인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
In the regression trunk object recommendation device,
one or more memories storing instructions for performing predetermined operations; and one or more processors operatively coupled to the one or more memories and configured to execute the instructions;
The operation performed by the processor is
acquiring big data including information on a location where each user using an interior service has placed an object in a virtual space and information on a type of object;
classifying a group between objects based on the positions of the objects arranged in the virtual space from the big data;
counting the number of times the first thing is arranged in the same group as each other for all the classified groups;
classifying the number of times according to a predetermined range to determine a degree of association between the first object and each of the objects;
generating a data structure in which all objects included in the big data are created as nodes, and an edge weight having a value based on the degree of relevance is given to connect the edges between the nodes; and
When a predetermined object is newly placed in the virtual space of the first user in the interior service, the second node is sequentially selected based on the edge weight from the first node corresponding to the predetermined object in the data structure. Including the action of recommending selected objects until returning to node 1,
A regression edge object recommendation device.
상기 추천하는 동작은,
상기 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 선택된 노드들의 개수가 소정 개수 이하이면서, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
According to claim 1,
The recommended action is
The number of selected nodes is less than or equal to a predetermined number and the sum of the edge weights becomes the maximum until returning to the first node while sequentially selecting adjacent nodes from the first node based on the edge weights. Including the action of setting to cycle with the condition,
A regression trunk object recommendation device.
상기 추천하는 동작은,
상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함하는,
회귀 간선 사물 추천 장치.
3. The method of claim 2,
The recommended action is
When the number of nodes selected after the regression is less than the predetermined number, the sum of the edge weights becomes the maximum until the node returns to the first node while sequentially selecting the nodes not selected in the regression process. Further comprising the operation of recommending the selected things by setting to cycle,
A regression trunk object recommendation device.
상기 추천하는 동작은,
상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함하는,
회귀 간선 사물 추천 장치.
4. The method of claim 3,
The recommended action is
If the total number of objects selected in the last regression process exceeds a predetermined number according to the setting, excluding the objects selected in the last regression process from recommendation;
A regression edge object recommendation device.
상기 그룹을 분류하는 동작은,
3차원 좌표의 위치 기반으로 사물들을 군집화 하는 소정의 알고리즘을 이용하여 사물들 간의 그룹을 분류하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
According to claim 1,
The operation of classifying the group is
Including the operation of classifying a group between objects using a predetermined algorithm for grouping objects based on the location of the three-dimensional coordinates,
A regression trunk object recommendation device.
상기 그룹을 분류하는 동작은,
DBSCAN(Density Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘을 기초로 소정 범위의 가상 공간 안에 배치된 사물들의 3차원 좌표를 입력하여 상기 사물들이 소정 공간 안에 배치되어 있는 밀도를 기준으로 그룹을 분류하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
6. The method of claim 5,
The operation of classifying the group is
Based on the DBSCAN (Density Based Spatial Clustering of Applications with Noise) clustering algorithm, inputting three-dimensional coordinates of objects arranged in a virtual space within a predetermined range and classifying groups based on the density at which the objects are arranged in a predetermined space containing,
A regression trunk object recommendation device.
상기 추천하는 동작은,
상기 제1 사용자의 가상 공간의 종류에 따라서, 상기 데이터 구조에 포함된 소정 노드 간 간선 가중치에 대해 편향을 더하거나 감하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
According to claim 1,
The recommended action is
adding or subtracting a bias to an edge weight between predetermined nodes included in the data structure according to the type of the virtual space of the first user;
A regression trunk object recommendation device.
상기 연관도를 판별하는 동작은,
상기 제1 사물이 상기 각각의 사물과 같은 그룹으로 배치된 횟수에 대한 평균(a)과 표준편차(b)를 계산하는 동작;
상기 배치된 횟수가 a 보다 작은 제2 사물들에 대해서만 배치된 횟수의 평균(c)을 계산하는 동작;
상기 제1 사물과 a+b 이상의 횟수로 함께 배치된 사물들을 제1 구간, 상기 제1 사물과 a 내지 a+b 사이의 횟수로 함께 배치된 사물들을 제2 구간, 상기 제1 사물과 c 내지 a 사이의 횟수로 함께 배치된 사물들을 제3 구간, 상기 제1 사물과 c 이하의 횟수로 함께 배치된 사물들을 제4 구간으로 분류하는 동작; 및
상기 제1 구간, 상기 제2 구간, 상기 제3 구간, 및 상기 제4 구간으로 갈수록 상기 제1 사물과 강한 연관도에서 약한 연관도를 갖도록 연관도를 판별하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
According to claim 1,
The operation of determining the degree of association is
calculating an average (a) and a standard deviation (b) for the number of times the first object is arranged in the same group as each of the objects;
calculating an average (c) of the number of placements only for second objects having the number of placements smaller than a;
The first thing and the things arranged together with a number of times a+b or more in a first section, the first thing and the things disposed together at a number between a to a+b in a second section, the first thing and c to classifying objects disposed together with a number of times between a into a third section, and classifying objects disposed together with the first object with a number of times less than or equal to c into a fourth section; and
and determining the degree of association so as to have a weak degree of association from a strong degree of association with the first thing toward the first section, the second section, the third section, and the fourth section,
A regression trunk object recommendation device.
상기 데이터구조를 생성하는 동작은,
상기 제1 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 1을 적용하여, 상기 제1 노드와 상기 제1 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
[수학식 1]
(은 상기 제1 노드와 상기 제1 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 상기 제1 구간에 포함된 사물들의 배치 횟수의 집합, 은 상기 제1 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
상기 제2 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 2를 적용하여, 상기 제1 노드와 상기 제2 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
[수학식 2]
(은 상기 제1 노드와 상기 제2 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 상기 제2 구간에 포함된 사물들의 배치 횟수의 집합, 은 상기 제2 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
상기 제3 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 3을 적용하여, 상기 제1 노드와 상기 제3 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
[수학식 3]
(은 상기 제1 노드와 상기 제3 구간에 포함된 소정 노드와의 연관도 반영 점수, 은 상기 제3 구간에 포함된 사물들의 배치 횟수의 집합, 은 상기 제3 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
상기 수학식 1, 2, 3의 계산을 제1 구간 내지 제3 구간에 포함된 모든 노드에 대해 수행하여, 상기 제1 노드를 기준으로 구해진 제2 노드와의 점수와, 상기 제2 노드를 기준으로 구해진 상기 제1 노드와의 점수를 합산한 값을 계산하여, 상기 제1 노드와 상기 제2 노드 사이에 상기 합산한 값을 간선 가중치로 부여하여 연결하는 동작; 및
상기 제1 노드와 상기 제4 구간에 포함된 사물과는 간선으로 연결되지 않도록 설정하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
9. The method of claim 8,
The operation of creating the data structure is
calculating a score for determining the degree of association between the first node and the node included in the first section by applying Equation 1 below to the number of arrangement of nodes included in the first section;
[Equation 1]
( is a score reflecting the degree of association between the first node and a predetermined node included in the first section, is a set of the number of times of arrangement of objects included in the first section, is the number of placements for things of a predetermined node included in the first section)
calculating a score for determining the degree of association between the first node and the node included in the second section by applying Equation 2 below to the number of arrangement of nodes included in the second section;
[Equation 2]
( is a score reflecting the degree of association between the first node and a predetermined node included in the second section, is a set of the number of times of arrangement of objects included in the second section, is the number of placements for things of a predetermined node included in the second section)
calculating a score for determining the degree of association between the first node and the node included in the third section by applying Equation 3 below to the number of arrangement of nodes included in the third section;
[Equation 3]
( is a score reflecting the degree of association between the first node and a predetermined node included in the third section, is a set of the number of times of arrangement of objects included in the third section, is the number of placements for things of a predetermined node included in the third section)
Calculations of Equations 1, 2, and 3 are performed on all nodes included in the first to third sections, and the score with the second node obtained based on the first node and the second node are based calculating a sum of scores with the first node obtained as and
Including the operation of setting the first node and the thing included in the fourth section not to be connected by an trunk line,
A regression edge object recommendation device.
상기 추천하는 동작은,
인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
10. The method of claim 9,
The recommended action is
When a predetermined object is newly placed in the virtual space of the first user in the interior service, it starts in the direction of the adjacent node having a positive edge weight among the nodes adjacent to the first node corresponding to the predetermined object in the data structure. It includes the operation of recommending selected objects until returning to the first node again,
A regression trunk object recommendation device.
상기 추천하는 동작은,
상기 회귀를 통한 경로가 소정 개수 이하이면서 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
11. The method of claim 10,
The recommended action is
and setting the number of paths through the regression to circulate under a condition in which the sum of the edge weights is maximum while the number of paths through the regression is less than a predetermined number.
A regression edge object recommendation device.
상기 추천하는 동작은,
상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함하는,
회귀 간선 사물 추천 장치.
12. The method of claim 11,
The recommended action is
When the number of nodes selected after the regression is less than the predetermined number, the sum of the edge weights starting from a node having a positive edge weight among nodes not selected in the regression process and returning to the first node again Further comprising the operation of recommending the selected things by setting the cycle to the maximum condition,
A regression trunk object recommendation device.
상기 추천하는 동작은,
상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함하는,
회귀 간선 사물 추천 장치.
13. The method of claim 12,
The recommended action is
If the total number of objects selected in the last regression process exceeds a predetermined number according to the setting, excluding the objects selected in the last regression process from recommendation;
A regression edge object recommendation device.
상기 추천하는 동작은,
상기 제1 사용자의 가상 공간에 기 배치된 사물을 판별하는 동작;
상기 기 배치된 사물의 위치를 기초로 상기 기 배치된 사물 간의 그룹을 분류하는 동작;
상기 그룹이 차지하는 공간에 대한 범위를 설정하는 동작;
상기 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우 상기 소정의 사물이 배치된 위치를 기초로 상기 소정의 사물이 속하는 그룹을 판별하여 그룹에 추가하거나 새로운 그룹을 생성하는 동작; 및
상기 데이터 구조에서 상기 그룹 내의 사물들과 각각 대응되는 노드들 각각에 대해서, 상기 각각의 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 각각의 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
According to claim 1,
The recommended action is
determining an object previously placed in the virtual space of the first user;
classifying groups among the previously placed objects based on the positions of the previously placed objects;
setting a range for the space occupied by the group;
when a predetermined object is newly placed in the virtual space of the first user, determining a group to which the predetermined object belongs based on the location of the predetermined object and adding the object to the group or creating a new group; and
In the data structure, for each of the nodes corresponding to the objects in the group, the objects selected from each node are sequentially selected based on the edge weight while returning to the respective nodes. Including the action of recommending them,
A regression trunk object recommendation device.
상기 빅데이터는,
각 사용자가 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보를 더 포함하고,
상기 프로세서는,
상기 빅데이터로부터 상기 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작;
상기 집계된 횟수를 기초로 상기 빅데이터에 포함된 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작;
인테리어 서비스에서 가상 공간에 제1 벽지가 배치되는 경우, 상기 제1 벽지와의 켄달 타우 순위 상관 계수가 높은 순서로 바닥재를 추천하는 동작; 및
인테리어 서비스에서 가상 공간에 제1 바닥재가 배치되는 경우, 상기 제1 바닥재와의 켄달 타우 순위 상관 계수가 높은 순서로 벽지를 추천하는 동작을 포함하는,
회귀 간선 사물 추천 장치.
According to claim 1,
The big data is
further comprising information about the type of wallpaper and flooring placed by each user in the virtual space;
The processor is
counting the number of times the wallpaper and the flooring are respectively arranged in the virtual space from the big data;
calculating a Kendall Tau rank correlation coefficient for all types of wallpaper and flooring combinations included in the big data based on the counted number of times;
when the first wallpaper is disposed in the virtual space in the interior service, recommending flooring materials in the order of the Kendall Tau rank correlation coefficient with the first wallpaper; and
When a first flooring material is disposed in a virtual space in an interior service, the method comprising: recommending wallpaper in the order of a Kendall Tau rank correlation coefficient with the first flooring material;
A regression trunk object recommendation device.
인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 단계;
상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 단계;
분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 단계;
상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 단계;
상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 단계; 및
인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 단계를 포함하는,
회귀 간선 사물 추천 방법.
In the regression trunk object recommendation method performed by the regression trunk object recommendation apparatus,
acquiring big data including information on a location where each user using an interior service places an object in a virtual space and a type of object;
classifying a group between objects based on the positions of the objects arranged in the virtual space from the big data;
counting the number of times the first thing is arranged in the same group as each other for all the classified groups;
classifying the number of times according to a predetermined range to determine a degree of association between the first thing and each of the things;
generating a data structure in which all the objects included in the big data are created as nodes, and by giving an edge weight having a value based on the degree of relevance to connect the edges between the nodes; and
When a predetermined object is newly placed in the virtual space of the first user in the interior service, the second node is sequentially selected based on the edge weight from the first node corresponding to the predetermined object in the data structure. Including the step of recommending selected objects until returning to node 1,
A regression edge thing recommendation method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200159926A KR102443166B1 (en) | 2020-11-25 | 2020-11-25 | Apparatus and method for recommending object on adjacent trunk line based on data structure of trunk line connection generated from big data of interior service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200159926A KR102443166B1 (en) | 2020-11-25 | 2020-11-25 | Apparatus and method for recommending object on adjacent trunk line based on data structure of trunk line connection generated from big data of interior service |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220072385A true KR20220072385A (en) | 2022-06-02 |
KR102443166B1 KR102443166B1 (en) | 2022-09-14 |
Family
ID=81985561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200159926A KR102443166B1 (en) | 2020-11-25 | 2020-11-25 | Apparatus and method for recommending object on adjacent trunk line based on data structure of trunk line connection generated from big data of interior service |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102443166B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023140403A1 (en) * | 2022-01-21 | 2023-07-27 | 주식회사 어반베이스 | Regression edge object recommendation device and method based on edge connection data structure constructed from big data of interior design service |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014102767A (en) * | 2012-11-21 | 2014-06-05 | Daiwa House Industry Co Ltd | Interior selection support system and interior selection support method |
KR101485738B1 (en) * | 2014-07-02 | 2015-01-23 | 연세대학교 산학협력단 | Method, server, computer program product for providing furniture arrangement sevice and method for using furniture arrangement sevice |
JP2016528610A (en) * | 2013-07-09 | 2016-09-15 | クアルコム,インコーポレイテッド | A real-time context-aware recommendation engine based on the user's Internet environment |
KR20170139903A (en) | 2016-06-10 | 2017-12-20 | 박희정 | interior service method and interior service system |
KR102089100B1 (en) * | 2019-05-09 | 2020-03-13 | 정승원 | System for providing image database based interior design service minimizing difference between client and designer |
KR102113969B1 (en) * | 2019-10-28 | 2020-06-02 | 이화여자대학교 산학협력단 | Method of improving classification accuracy of sns image data for tourism using space information deep learning, recording medium and device for performing the method |
KR20200088131A (en) * | 2019-01-14 | 2020-07-22 | 카페24 주식회사 | Item recommendation method and apparatus using graph database |
KR102144102B1 (en) * | 2020-01-15 | 2020-08-12 | 이아영 | Apparatus and method of arranging furniture |
-
2020
- 2020-11-25 KR KR1020200159926A patent/KR102443166B1/en active IP Right Grant
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014102767A (en) * | 2012-11-21 | 2014-06-05 | Daiwa House Industry Co Ltd | Interior selection support system and interior selection support method |
JP2016528610A (en) * | 2013-07-09 | 2016-09-15 | クアルコム,インコーポレイテッド | A real-time context-aware recommendation engine based on the user's Internet environment |
KR101485738B1 (en) * | 2014-07-02 | 2015-01-23 | 연세대학교 산학협력단 | Method, server, computer program product for providing furniture arrangement sevice and method for using furniture arrangement sevice |
KR20170139903A (en) | 2016-06-10 | 2017-12-20 | 박희정 | interior service method and interior service system |
KR20200088131A (en) * | 2019-01-14 | 2020-07-22 | 카페24 주식회사 | Item recommendation method and apparatus using graph database |
KR102089100B1 (en) * | 2019-05-09 | 2020-03-13 | 정승원 | System for providing image database based interior design service minimizing difference between client and designer |
KR102113969B1 (en) * | 2019-10-28 | 2020-06-02 | 이화여자대학교 산학협력단 | Method of improving classification accuracy of sns image data for tourism using space information deep learning, recording medium and device for performing the method |
KR102144102B1 (en) * | 2020-01-15 | 2020-08-12 | 이아영 | Apparatus and method of arranging furniture |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023140403A1 (en) * | 2022-01-21 | 2023-07-27 | 주식회사 어반베이스 | Regression edge object recommendation device and method based on edge connection data structure constructed from big data of interior design service |
Also Published As
Publication number | Publication date |
---|---|
KR102443166B1 (en) | 2022-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344532B (en) | Indoor design method and device applied to real estate | |
US20110061011A1 (en) | Three-Dimensional Shopping Lists | |
US9019266B2 (en) | Systems, methods, and computer program products for home and landscape design | |
US11373231B2 (en) | System and method for determining substitutes for a requested product and the order to provide the substitutes | |
US10430525B2 (en) | Reconfigurable spaces | |
CN109408954B (en) | Indoor design method and device applied to electronic commerce | |
US11520949B2 (en) | Digital design of an area | |
US11373228B2 (en) | System and method for determining substitutes for a requested product | |
US11270034B1 (en) | Method and system for kitchen cabinet layout | |
US10987587B2 (en) | System and method for game object and environment generation | |
KR102443166B1 (en) | Apparatus and method for recommending object on adjacent trunk line based on data structure of trunk line connection generated from big data of interior service | |
KR102492699B1 (en) | Apparatus and method for recommending object on adjacent trunk line based on data structure of trunk line connection generated from big data of interior service | |
KR101912686B1 (en) | Method and server for providing downsized house model or downsized oneroom model corresponding to needs | |
JP7287509B2 (en) | Method and apparatus for displaying item information in current space and media | |
CN112257168B (en) | Recommendation method and device for single-space placement item set and computer-readable storage medium | |
CN112381606B (en) | Household article recommendation method and device, electronic equipment and storage medium | |
MX2007006022A (en) | Automated method and system for object configuration. | |
US20240013557A1 (en) | Systems, methods, and interfaces for identifying coating surfaces | |
KR20210155575A (en) | Apparatus and method for constructing virtual reality space | |
KR102510518B1 (en) | Apparatus and method for recommending characteristics of object through analysis of user group based on big data of interior service | |
JP7340825B2 (en) | Storage simulation device, storage simulation method and program | |
KR20240020977A (en) | Interior design assistance appratus and interior design assistance method | |
JP7555023B2 (en) | FLOOR PLAN PROPOSAL DEVICE, FLOOR PLAN PROPOSAL METHOD, AND PROGRAM | |
US20240256722A1 (en) | Design tool for object placement within a defined environment | |
JP7340826B2 (en) | Storage simulation device, storage simulation method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |