WO2023140403A1 - 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법 - Google Patents

인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법 Download PDF

Info

Publication number
WO2023140403A1
WO2023140403A1 PCT/KR2022/001119 KR2022001119W WO2023140403A1 WO 2023140403 A1 WO2023140403 A1 WO 2023140403A1 KR 2022001119 W KR2022001119 W KR 2022001119W WO 2023140403 A1 WO2023140403 A1 WO 2023140403A1
Authority
WO
WIPO (PCT)
Prior art keywords
objects
node
predetermined
edge
nodes
Prior art date
Application number
PCT/KR2022/001119
Other languages
English (en)
French (fr)
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 PCT/KR2022/001119 priority Critical patent/WO2023140403A1/ko
Publication of WO2023140403A1 publication Critical patent/WO2023140403A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/08Construction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Definitions

  • the present invention relates to an apparatus and method for recommending a recursive trunk object based on a trunk connection data structure constructed from big data of an interior service.
  • a client requests an interior expert to design an interior such as a residential environment to create a desired space, and the requested interior expert designs an interior desired by the customer and presents it to the customer.
  • interior services (ex. Urban Base, a 3D space data platform) have been developed that allow users to decorate various interior elements in a virtual space
  • users of the interior service can arrange objects according to their taste in a virtual space transplanted with their living environment and easily replace flooring/wallpaper, etc.
  • 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 that they like or placing an interior order linked to 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.
  • an object to be solved in an embodiment of the present invention is to provide a technology for recommending various interior elements that can match the interiors arranged in the user's virtual space while reflecting the user's taste through the user's information.
  • An apparatus for recommending a recursive trunk object includes one or more memories for storing instructions for performing a predetermined operation; and one or more processors operatively connected to the one or more memories and set to execute the commands, wherein the processor performs an operation in which each user using the interior service places an object in a virtual space and a location in which an object is placed and big data including information about the type of object; classifying a group between objects based on the positions of objects disposed in the virtual space from the big data; counting the number of times the first object is placed in the same group as each other object for all classified groups; determining a degree of association between the first object and each object by classifying the number of times according to a predetermined range; 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 association is assigned 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
  • the recommending operation may include an operation of setting the cycle so that the number of the selected nodes is less than or equal to a predetermined number and the sum of the trunk weights is maximum until returning to the first node while sequentially selecting adjacent nodes based on the trunk weights from the first node.
  • the recommending operation may further include, when the number of selected nodes after the regression is less than the predetermined number, sequentially selecting nodes not selected in the regression process and then returning to the first node.
  • the recommended objects may be set to cycle under a condition where the sum of the edge weights is maximized.
  • the recommending operation may further include an operation of excluding objects selected in the last regression process from recommendation if the total number of objects selected until the final regression process exceeds a predetermined number according to the setting.
  • the operation of classifying the groups may include an operation of classifying groups among objects by using a predetermined algorithm for clustering objects based on locations of 3D coordinates.
  • the operation of classifying the groups may include inputting 3D coordinates of objects disposed in a virtual space of a predetermined range based on a Density Based Spatial Clustering of Applications with Noise (DBSCAN) clustering algorithm, and classifying the groups based on the density in which the objects are disposed in a predetermined space.
  • DBSCAN Density Based Spatial Clustering of Applications with Noise
  • the recommending operation may include an operation of adding or subtracting a bias to an edge weight between predetermined nodes included in the data structure according to the type of virtual space of the first user.
  • the determining of the degree of association may include calculating an average (a) and a standard deviation (b) of 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 the second objects, the number of placements of which is smaller than a; Classifying objects arranged with the first object a number of times greater than a+b into a first section, objects arranged with the first object a number between a and a+b into a second section, objects arranged with the first object and a number between c and a into a third section, and objects arranged with the first object a number of times less than c into a fourth section; and determining the degree of association so as to have a strong degree of association with the first object and a weak degree of association toward the first section, the second section, the third section, and the fourth section.
  • Equation 1 the operation of generating the data structure applies the following Equation 1 to the number of arrangements of the nodes included in the first section, to determine the degree of association between the first node and the nodes included in the first section Calculating a score;
  • the recommending operation may include, when a predetermined object is newly placed in the virtual space of the first user in the interior service, an operation of recommending objects selected from nodes adjacent to a first node corresponding to the predetermined object in the data structure starting in the direction of an adjacent node having a positive edge weight and returning to the first node.
  • the recommending operation may include an operation of setting the path to be circulated under the condition that the number of paths through the regression is less than or equal to a predetermined number and the sum of the edge weights is maximized.
  • the recommending operation may further include, when the number of selected nodes after the regression is less than the predetermined number, recommending selected objects by setting the cycle to cycle under a condition that the sum of the edge weights is maximized, starting from a node having a positive edge weight among nodes not selected in the regression process and then returning to the first node.
  • the recommending operation may further include an operation of excluding objects selected in the last regression process from recommendation if the total number of objects selected until the final regression process exceeds a predetermined number according to the setting.
  • the recommending operation may include an operation of determining an object pre-arranged in the virtual space of the first user; classifying a group between the pre-arranged objects based on the positions of the pre-arranged objects; setting a range for a space occupied by the group; determining a group to which the predetermined object belongs based on a location where the predetermined object is disposed when a predetermined object is newly placed in the virtual space of the first user, and adding the object to a 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 an adjacent node from each node based on the edge weight and returning to the respective node. It may include recommending selected objects.
  • the big data further includes information on the types of wallpaper and flooring materials placed in the virtual space by each user, and the processor counts the number of times the wallpaper and flooring material are respectively placed in the virtual space from the big data; Calculating a Kendall Tau rank correlation coefficient for combinations of all types of wallpaper and flooring materials included in the big data based on the counted number of times; When a first wallpaper is arranged in a virtual space in the interior service, recommending flooring materials in order of highest Kendall Tau correlation coefficient with the first wallpaper; and when the first flooring material is arranged in the virtual space in the interior service, recommending wallpapers in order of highest Kendall Tau rank correlation coefficient with the first flooring material.
  • a recursive trunk object recommendation method performed by a recursive trunk object recommendation apparatus includes acquiring big data including information about 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 objects disposed in the virtual space from the big data; counting the number of times the first object is placed in the same group as each other object for all classified groups; determining a degree of association between the first object and each object by classifying the number of times according to a predetermined range; generating a data structure in which all objects included in the big data are connected as nodes, and by assigning an edge weight having a value based on the degree of association; and when a predetermined object is newly placed in the virtual space of the first user in the interior service, sequentially selecting an adjacent node from a first node corresponding to the predetermined object in the data structure based on the edge weight, and recommending selected objects until returning to the first node.
  • an embodiment of the present invention uses a technique for analyzing a degree of association that can reflect a plurality of common tastes and harmony from information of various users included in big data, and can recommend interior elements to be newly placed in the user's virtual space.
  • FIG. 1 is a functional block diagram of a recursive trunk object recommendation device according to an embodiment of the present invention.
  • FIG. 2 is an operational flowchart of a recursive trunk object recommendation method performed by a recursive trunk object recommendation device according to an embodiment of the present invention.
  • FIG. 3 is an exemplary diagram for explaining images before (a) and after (b) classification of a group between objects based on locations of objects arranged in a virtual space from big data according to an embodiment of the present invention.
  • FIG. 4 is an exemplary diagram of a data structure in which all objects included in big data are created as nodes and the trunk lines between nodes are connected by assigning trunk weights based on the degree of association according to an embodiment of the present invention.
  • FIG. 5 is a diagram illustrating 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.
  • FIG. 6 is an exemplary diagram illustrating an operation of recommending a thing in a regression method using a data structure according to an embodiment of the present invention.
  • FIG. 7 is an exemplary diagram for explaining an operation of counting the number of times each wallpaper and flooring are placed in a virtual space from big data according to an embodiment of the present invention.
  • FIG. 8 is an exemplary view of an operation of calculating a Kendall Tau rank correlation coefficient for all types of wallpaper and flooring combinations.
  • expressions such as 'first and second' are expressions used only to classify a plurality of components, and do not limit the order or other characteristics between the components.
  • a recursive trunk object recommendation apparatus 100 may include a memory 110, a processor 120, an input interface 130, a display unit 140, and a communication interface 150.
  • the memory 110 may include a big data DB 111 , a data structure DB 113 , and a command DB 115 .
  • the big data DB 111 may include various data collected from interior services.
  • the interior service may include a service that provides a function for decorating a virtual interior element by transplanting an image of a real space into a 3D virtual space. Users who use the interior service can arrange interior elements such as objects/flooring/wallpaper in the virtual space according to their preference. Users who use the interior service can see the interior of the virtual space decorated by other users and respond through empathy (ex. Like button). In addition, the number of views through which users searched for a specific interior may be counted through the interior service.
  • the big data DB 111 may store all information collected from interior services as big data.
  • big data may include user information of an interior service, information on a space decorated by a user, information on the type of room decorated, information on objects placed by a user, wallpaper, flooring, etc., information on a user's taste, information on users' evaluation of a specific interior, information on the number of times users searched for a specific interior, and the like.
  • the data structure DB 113 may store a data structure in which a node corresponding to a specific thing is connected according to an edge weight based on a degree of association between things for each of all things included in the big data.
  • the command DB 115 may store commands capable of executing the operation of the processor 120 .
  • the command DB 115 may store computer codes for performing operations corresponding to operations of the processor 120 to be described later.
  • the processor 120 may control overall operations of components included in the recursive trunk object recommendation device 100, the memory 110, the input interface 130, the display unit 140, and the communication interface 150.
  • the processor 120 may include a grouping module 121 , an arithmetic module 123 , a structuring module 125 and a control module 127 .
  • the processor 120 may execute commands stored in the memory 110 to drive the grouping module 121 , the calculation module 123 , the structuring module 125 , and the control module 127 . Operations performed by the grouping module 121 , calculation module 123 , structuring module 125 , and control module 127 may be understood as operations performed by the processor 120 .
  • the grouping module 121 may classify objects into groups based on the locations of the objects arranged in the virtual space, with respect to information about objects arranged in the virtual space among information included in the big data.
  • the grouping module 121 performs a location-based grouping operation of objects, thereby generating preceding data enabling analysis of the degree of association between objects through information on objects placed together by users in an interior service.
  • the calculation module 123 may count the number of times a specific object is placed in the same group as each other object for all grouped groups, and determine the degree of association between objects based on the number of times each object is placed together. Also, the calculation module 123 may count the number of times that a specific type of wallpaper and flooring material are disposed together in the virtual space, and determine a degree of association between the wallpaper and the flooring material based on the count.
  • 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 nodes to which edge weights are assigned based on the degree of association between the objects.
  • control module 127 may recommend a new interior element based on the degree of association between interior elements by using information on a pre-generated data structure or pre-calculated correlation.
  • the input interface 130 may receive a user's input. For example, an input such as an interior element selected by the user from an interior service may be received.
  • the display unit 140 may include a hardware component that outputs an image including a display panel.
  • the communication interface 150 allows information to be transmitted and received by communicating with an external device (eg, an external DB server, a user terminal, etc.).
  • an external device eg, an external DB server, a user terminal, etc.
  • the communication interface 150 may include a wireless communication module or a wired communication module.
  • FIGS. 2 to 8 a specific embodiment in which components of the recursive trunk object recommendation device 100 are linked to recommend interior elements based on big data to users of interior services will be described through FIGS. 2 to 8 .
  • FIG. 2 is an operation flowchart of a recursive trunk object recommendation method performed by the recursive trunk object recommendation apparatus 100 according to an embodiment of the present invention.
  • Each step of the recursive trunk object recommendation method according to FIG. 2 may be performed by the components of the recursive trunk object recommendation device 100 described with reference to FIG. 1 , and each step is described as follows.
  • the big data DB 111 can store big data including various information collected while providing interior services to users, such as information on the location where each user of the interior service places objects in the virtual space, the type of objects, and the type of wallpaper and flooring materials placed in the virtual space (S210).
  • the interior service can store information on the interior elements arranged by each user in their virtual space to be maintained, the number of times the user arranges and decorates the interior elements, the details of the interior elements that have been placed, the interior elements in the virtual space that are finally maintained, and the user's information, and can generate big data by accumulating and storing all of these information.
  • the big data DB 111 may acquire and store big data generated from one or more interior services, and the data may be refined according to subsequent operations to achieve the purpose of the present invention.
  • the grouping module 121 may classify objects into groups based on the positional relationship of the objects placed in the virtual space, based on information about objects placed in the virtual space by the user among information included in the big data (S220).
  • FIG. 3 is an exemplary diagram for explaining appearances before (a) and after (b) classification of a group between objects based on the positional relationship of objects arranged in a virtual space from big data according to an embodiment of the present invention.
  • the grouping module 121 may classify objects into groups by using a predetermined algorithm for clustering objects based on 3D coordinate positions of objects in a virtual space.
  • the grouping module 121 may use a Density Based Spatial Clustering of Applications with Noise (DBSCAN) clustering algorithm.
  • the DBSCAN clustering algorithm is an algorithm that classifies groups based on the density of the positions of multiple input objects.
  • the grouping module 121 may classify object groups included in the big data by inputting 3D coordinates of objects arranged in a virtual space within a predetermined range to the DBSCAN clustering algorithm.
  • Such group information may serve as preceding data enabling an analysis of a relationship between objects from information on objects placed together by users in an interior service.
  • the calculation module 123 may count the number of times a specific object is placed in the same group as each other object (S230). The calculation module 123 may determine the degree of association between a specific object and all other objects by classifying the number of times a specific object is placed in the same group as each other object according to a predetermined range (S240).
  • objects with a history of being classified into the same group based on a specific object called “sink” include "plate, toaster, microwave oven, cutlery, table, chair, picture frame, clock, air conditioner, lantern, TV, washing machine, shoe cabinet, toilet", and the number of times the sink was placed with each object in big data is [10000, 8887, 8882, 8281, 5000, 4529, 43 25, 2100, 150, 32, 22, 15, 7, 2].
  • the calculation module 123 divides each object into a first section, a second section, a third section, and a fourth section according to the number of arrangements, and from the first section to the fourth section, the strong association with the "sink" It can determine the degree of association of objects to have a weak association.
  • the calculation module 123 calculates the average (a) and standard deviation (b) of the number of times that the "sink" is arranged in the same group as each object (in the example, a: 3730.86, b: 3781.77). In addition, the calculation module 123 may calculate the average (c) of the number of placements ([2100, 150, 32, 22, 15, 7, 2]) only for the second objects, the number of placements of which is less than a (3730.86) (in the case of an example, c: 332.57).
  • the calculation module 123 divides the objects arranged together with the sink a + b (7512.63) or more times in a first section, the objects arranged with the first object in a number between a (3730.86) and a + b (7512.63) in a second section, and the objects arranged with the first object and the number between c (332.57) and a (3730.86) in a third section, Objects in the history of being co-located with the first object in a number equal to or less than c (332.57) may be classified into the fourth section.
  • the structuring module 125 may generate a data structure in which the trunk lines between nodes are connected by generating each of the objects included in the big data as a node and assigning an edge weight based on a degree of association between objects (S250).
  • the structuring module 125 applies Equation 1 below to the number of arrangements of nodes included in the first section, which is a score for determining the degree of association between the first node (ex. sink) and each node included in the first section. can be calculated.
  • trunc is a function that truncates the value calculated in parentheses to a certain number of decimal places.
  • the structuring module 125 applies Equation 2 below to the number of arrangements of nodes included in the second section, which is a score for determining the degree of association between the first node (ex. sink) and each node included in the second section. can be calculated.
  • the structuring module 125 applies Equation 3 below to the number of arrangements of nodes included in the third section, which is a score for determining the degree of association between the first node (ex. sink) and each node included in the third section. can be calculated.
  • the structuring module 125 may perform the calculation process according to Equations 1 to 3 above for all nodes. That is, as in the above example, if the score for "plate, toaster, microwave, utensils, table, chair, picture frame, clock, air conditioner, lantern, TV, washing machine, shoe box, toilet” is calculated based on the object “sink”, scores associated with “table” and other objects can also be calculated based on “table”. Accordingly, an object called a "sink” and a calculated score may be derived based on the "table”.
  • the number of objects placed together in the same group based on “table” is [32000, 30002, 25882, 18281, 16999, 5000, 3252, 2125, 302, 202, 201, 55, 34, 10, 4]
  • the number of objects placed together with "sink” is If it corresponds to 5000, the score of the sink based on the table according to Equations 1 to 3 above is derived as "-86".
  • the structuring module 125 may configure the first node not to be connected to the object included in the fourth interval without calculating a score.
  • the structuring module 125 may create an exemplary data structure as shown in FIG. 4 .
  • the edge weights of the data structure add or subtract biases to the edge weights between predetermined nodes included in the data structure, depending on which space (ex. living room, bedroom, bathroom, kitchen, etc.) objects are placed.
  • Objects and bias values can be set in advance.
  • FIG. 4 is an exemplary diagram of a data structure in which all objects included in big data are created as nodes and the trunk lines between nodes are connected by assigning trunk weights based on the degree of association according to an embodiment of the present invention.
  • control module 127 may recommend an object connected by an trunk line to a first node corresponding to the newly disposed predetermined object in a data structure based on an edge weight.
  • “sofa”, “table 2”, and “armchair” may be recommended in the order of higher weights of connected trunks with reference to the data structure.
  • the control module 127 may determine pre-arranged objects in the virtual space of the first user, and classify groups of pre-arranged objects based on the positions of the pre-arranged objects using the above-described DBSCAN clustering algorithm. Accordingly, when groups of objects are classified, the control module 127 may set a range for a space occupied by each group.
  • FIG. 5 is a diagram illustrating 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.
  • control module 127 may set the inside of a sphere whose radius is a length obtained by adding a predetermined constant to the distance from the midpoint of the 3D position coordinates of objects classified into the same group through the above-described operation to the 3D position coordinates of the most distant object.
  • the control module 127 determines whether the predetermined object belongs to the range of a specific group based on the location where the predetermined object is located, adds the disposed object to the corresponding group if it falls within the range of the specific group, and creates a new group for the disposed object if it does not fall within the range of the specific group.
  • control module 127 may recommend an object connected by an edge in the data structure to a node group in which nodes corresponding to objects included in the group are grouped together according to an edge weight.
  • control module 127 when a predetermined object is newly placed in the virtual space of the first user in the interior service, sequentially selects adjacent nodes from the node of the newly placed object and recommends the selected objects until returning to the first node.
  • control module 127 performs a condition in which nodes adjacent to a first node corresponding to the arranged object in the data structure start in the direction of an adjacent node having a positive edge weight and then return to the first node and return, a condition in which the number of nodes selected until the regression is less than a predetermined number and the sum of the edge weights is maximized, and when the number of nodes selected after regression is less than a predetermined number, starting from a node having a positive edge weight among nodes not selected in the regression process and then another node having a positive edge weight again.
  • the condition of regressing to the first node through the return condition, the condition of excluding the objects selected in the last regression process from recommendation if the total number of objects selected until the last regression process exceeds a predetermined number, and the sum of edge weights It can be set to regression by combining a condition to cycle through nodes first so that the maximum.
  • FIG. 6 is an exemplary diagram illustrating an operation of recommending a thing in a regression method using a data structure according to an embodiment of the present invention.
  • control module 127 may start in the direction of an adjacent node having a positive edge weight among nodes adjacent to a first node corresponding to a predetermined object in a data structure and return to an adjacent node having a positive edge weight, but may set a regression condition for recommending objects selected from the first node to the first node and returning to the first node under the condition that the number of nodes passing until returning to the first node is 6 or less.
  • the edges connected to “Table 2” are shelf (+42), drawer (+27), carpet (+31), sofa (+11), and table 1 (-350), and can depart and return through nodes with positive edge weights, so depart through the nodes of shelf (+42), drawer (+27), carpet (+31), and sofa (+11), and shelf ( +42), storage box (+27), carpet (+31), and sofa (+11) nodes.
  • the number of nodes that can be selected is limited to 6, the number of regression cases exceeding 6 during regression can be excluded.
  • control module 127 does not select only one specific regression path, but if the number of nodes selected after regression is 6 or less, it may recommend selected objects by setting the object to cycle under the condition that the sum of the edge weights is maximized, starting from a node having a positive edge weight among nodes not selected in the regression process and returning to the first node.
  • control module 127 may select the number of first cases in which "table 2 -> drawer -> chest of drawers -> table 2" returns, and the number of second cases in which "table 2 -> carpet -> sofa -> table 2" may be returned, and may recommend objects of "shelf, drawer, storage box, carpet, and sofa” as objects that can be disposed together.
  • FIG. 7 is an exemplary diagram for explaining an operation of counting the number of times each wallpaper and flooring are placed in a virtual space from big data according to an embodiment of the present invention.
  • the calculation module 123 may count the number of times each wallpaper and flooring are placed in the virtual space from information on the types of wallpaper and flooring materials placed in the virtual space by each user included in the big data.
  • the calculation module 123 may exclude aggregation in order to exclude from the influence of correlation calculation to be described later, when all cases in which a specific wallpaper and flooring material are arranged are 0, such as in House C.
  • the calculation module 123 assigns a weight to the number of space/flooring arrangements corresponding to the interior to reflect the collective taste of the users. For example, in House D of FIG. 7 (c), the number of times that wall materials/floor materials are used is 4 times/2 times, but if it corresponds to a case in which empathy or the number of views higher than a preset criterion is received, the number of times wallpaper/flooring materials are placed in House D can be increased by giving a weight according to a predetermined criterion and reflected in the calculation to be described later.
  • FIG. 8 is an exemplary view of an operation of calculating a Kendall Tau rank correlation coefficient for all types of wallpaper and flooring combinations.
  • the calculation module 123 calculates a Kendall tau rank correlation coefficient based on the counts of all types of wallpaper/flooring combinations through big data, and normalizes the correlation scores calculated for all combinations to have a range of -1 to +1.
  • control module 127 may recommend flooring materials in order of highest Kendall Tau correlation coefficient with the corresponding wallpaper. Also, when a specific flooring material is arranged in a virtual space in the interior service, the control module 127 may recommend wallpapers in order of highest Kendall Tau rank correlation coefficient with the corresponding flooring material.
  • an embodiment of the present invention uses a technique for analyzing a degree of association that can reflect a plurality of common tastes and harmony from information of various users included in big data, and can recommend interior elements to be newly placed in the user's virtual space.
  • embodiments of the present invention may be implemented through various means.
  • embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.
  • the method according to the embodiments of the present invention may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, and the like.
  • ASICs Application Specific Integrated Circuits
  • DSPs Digital Signal Processors
  • DSPDs Digital Signal Processing Devices
  • PLDs Programmable Logic Devices
  • FPGAs Field Programmable Gate Arrays
  • processors controllers, microcontrollers, microprocessors, and the like.
  • 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 software codes and the like are 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 exchange data with the processor by various means known in the art.
  • combinations of each block of the block diagram and each step of the flowchart attached to the present invention may be performed by computer program instructions.
  • These computer program instructions may be loaded into an encoding processor of a general purpose computer, special purpose computer or other programmable data processing equipment, so that the instructions executed through the encoding processor of the computer or other programmable data processing equipment create means for performing the functions described in each block of the block diagram or each step of the flowchart.
  • These computer program instructions may 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, such that the instructions stored in the computer usable or computer readable memory may produce an article of manufacture containing instruction means for performing the function described in each block of the block diagram or each step of the flowchart. Since the computer program instructions can also be loaded on a computer or other programmable data processing equipment, a series of operational steps are performed on the computer or other programmable data processing equipment to generate a process executed by the computer, so that the computer or other programmable data processing equipment performs the instructions to provide steps for executing the functions described in each block of the block diagram and each step of the flowchart.
  • each block or each step may represent a module, segment or piece of code that contains one or more executable instructions for executing a specified logical function. It should also be noted that in some alternative embodiments it is possible for the functions recited in blocks or steps to occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially concurrently, or the blocks or steps may sometimes be performed in reverse order depending on their function.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Business, Economics & Management (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Software Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Architecture (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Operations Research (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Algebra (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 실시예에 따른 회귀 간선 사물 추천 방법은 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 단계; 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 단계; 분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 단계; 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 단계; 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 노드 간의 간선을 연결한 데이터 구조를 생성하는 단계; 및 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 단계를 포함할 수 있다.

Description

인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법
본 발명은 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법에 관한 것이다.
사람들은 살아가면서 자신의 개성에 부합하면서 보다 아름다운 주거 환경을 추구하고자 하는 욕구를 가지고 있다. 이를 위해, 간단하게는 주거 공간에 새로운 사물을 배치하여 인테리어를 꾸미거나, 나아가 벽지나 바닥재를 교체하고 공간의 구조를 변경하는 등의 인테리어 공사를 진행하기도 한다.
종래에는 인테리어 공사를 위해 의뢰인이 인테리어 전문가에게 자신이 원하는 공간을 만들고자 주거 환경 등의 인테리어 시안을 의뢰하고, 의뢰받은 인테리어 전문가는 고객이 원하는 인테리어를 설계하여 고객에게 제시하는 방식으로 진행하였다.
그러나 현재는 가상 공간에 사용자가 직접 각종 인테리어 요소를 꾸며볼 수 있는 인테리어 서비스(ex. 3D 공간 데이터 플랫폼 어반베이스)가 개발됨에 따라, 인테리어 서비스의 사용자가 직접 자신의 주거 환경을 이식한 가상 공간에 자신의 취향대로 사물을 배치하고 손쉽게 바닥재/벽지 등을 교체해 볼 수 있다.
이에 따라, 사용자들은 가상 공간의 인테리어를 통해 실제 인테리어를 간접적으로 체감할 수 있으며, 자신의 마음에 드는 실제 인테리어 상품을 주문하거나, 실제 시공과 연동된 인테리어 발주를 넣는 등의 서비스를 제공받고 있다.
상술한 인테리어 서비스는 사용자가 가상 공간에 직접 각종 인테리어 요소를 꾸며볼 수 있도록, 다양한 종류의 사물, 바닥재, 벽지 등의 인테리어 요소를 사용자의 가상 공간에 제공한다.
한편, 인테리어는 각종 인테리어 요소들의 스타일 및 색상의 조화가 미적으로 중요한데, 인테리어 서비스의 사용자가 인테리어 전문가가 아닌 경우에는 수많은 종류의 사물, 바닥재, 벽지 등을 선택하는 데에 어려움을 겪을 수 있다.
이에 따라, 본 발명의 실시예에서 해결하고자 하는 과제는 사용자의 정보를 통해 사용자의 취향을 반영하면서, 사용자의 가상 공간에 배치된 인테리어와 어울릴 수 있는 다양한 인테리어 요소를 추천하는 기술을 제공하고자 한다.
다만, 본 발명의 실시예가 이루고자 하는 기술적 과제는 이상에서 언급한 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 도출될 수 있다.
본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치는 소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작 가능 하도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고, 상기 프로세서가 수행하는 동작은 인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 동작; 상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 동작; 분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 동작; 상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 동작; 상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 동작; 및 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 선택된 노드들의 개수가 소정 개수 이하이면서, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함할 수 있다.
또한, 상기 그룹을 분류하는 동작은 3차원 좌표의 위치 기반으로 사물들을 군집화 하는 소정의 알고리즘을 이용하여 사물들 간의 그룹을 분류하는 동작을 포함할 수 있다.
또한, 상기 그룹을 분류하는 동작은 DBSCAN(Density Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘을 기초로 소정 범위의 가상 공간 안에 배치된 사물들의 3차원 좌표를 입력하여 상기 사물들이 소정 공간 안에 배치되어 있는 밀도를 기준으로 그룹을 분류하는 동작을 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 제1 사용자의 가상 공간의 종류에 따라서, 상기 데이터 구조에 포함된 소정 노드 간 간선 가중치에 대해 편향을 더하거나 감하는 동작을 포함할 수 있다.
또한, 상기 연관도를 판별하는 동작은 상기 제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 사물과 강한 연관도에서 약한 연관도를 갖도록 연관도를 판별하는 동작을 포함할 수 있다.
또한, 상기 데이터구조를 생성하는 동작은 상기 제1 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 1을 적용하여, 상기 제1 노드와 상기 제1 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
[수학식 1]
Figure PCTKR2022001119-appb-img-000001
(
Figure PCTKR2022001119-appb-img-000002
은 상기 제1 노드와 상기 제1 구간에 포함된 소정 노드와의 연관도 반영 점수,
Figure PCTKR2022001119-appb-img-000003
은 상기 제1 구간에 포함된 사물들의 배치 횟수의 집합,
Figure PCTKR2022001119-appb-img-000004
은 상기 제1 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
상기 제2 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 2를 적용하여, 상기 제1 노드와 상기 제2 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
[수학식 2]
Figure PCTKR2022001119-appb-img-000005
(
Figure PCTKR2022001119-appb-img-000006
은 상기 제1 노드와 상기 제2 구간에 포함된 소정 노드와의 연관도 반영 점수,
Figure PCTKR2022001119-appb-img-000007
은 상기 제2 구간에 포함된 사물들의 배치 횟수의 집합,
Figure PCTKR2022001119-appb-img-000008
은 상기 제2 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
상기 제3 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 3을 적용하여, 상기 제1 노드와 상기 제3 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
[수학식 3]
Figure PCTKR2022001119-appb-img-000009
(
Figure PCTKR2022001119-appb-img-000010
은 상기 제1 노드와 상기 제3 구간에 포함된 소정 노드와의 연관도 반영 점수,
Figure PCTKR2022001119-appb-img-000011
은 상기 제3 구간에 포함된 사물들의 배치 횟수의 집합,
Figure PCTKR2022001119-appb-img-000012
은 상기 제3 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
상기 수학식 1, 2, 3의 계산을 제1 구간 내지 제3 구간에 포함된 모든 노드에 대해 수행하여, 상기 제1 노드를 기준으로 구해진 제2 노드와의 점수와, 상기 제2 노드를 기준으로 구해진 상기 제1 노드와의 점수를 합산한 값을 계산하여, 상기 제1 노드와 상기 제2 노드 사이에 상기 합산한 값을 간선 가중치로 부여하여 연결하는 동작; 및 상기 제1 노드와 상기 제4 구간에 포함된 사물과는 간선으로 연결되지 않도록 설정하는 동작을 포함할 수 있다.
또한, 상기 추천하는 동작은 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 회귀를 통한 경로가 소정 개수 이하이면서 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함할 수 있다.
또한, 상기 추천하는 동작은 상기 제1 사용자의 가상 공간에 기 배치된 사물을 판별하는 동작; 상기 기 배치된 사물의 위치를 기초로 상기 기 배치된 사물 간의 그룹을 분류하는 동작; 상기 그룹이 차지하는 공간에 대한 범위를 설정하는 동작; 상기 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우 상기 소정의 사물이 배치된 위치를 기초로 상기 소정의 사물이 속하는 그룹을 판별하여 그룹에 추가하거나 새로운 그룹을 생성하는 동작; 및 상기 데이터 구조에서 상기 그룹 내의 사물들과 각각 대응되는 노드들 각각에 대해서, 상기 각각의 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 각각의 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함할 수 있다.
또한, 상기 빅데이터는 각 사용자가 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보를 더 포함하고, 상기 프로세서는 상기 빅데이터로부터 상기 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작; 상기 집계된 횟수를 기초로 상기 빅데이터에 포함된 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작; 인테리어 서비스에서 가상 공간에 제1 벽지가 배치되는 경우, 상기 제1 벽지와의 켄달 타우 순위 상관 계수가 높은 순서로 바닥재를 추천하는 동작; 및 인테리어 서비스에서 가상 공간에 제1 바닥재가 배치되는 경우, 상기 제1 바닥재와의 켄달 타우 순위 상관 계수가 높은 순서로 벽지를 추천하는 동작을 포함할 수 있다.
본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치가 수행하는 회귀 간선 사물 추천 방법은 인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 단계; 상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 단계; 분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 단계; 상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 단계; 상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 단계; 및 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 단계를 포함할 수 있다.
본 발명의 실시예에 따르면, 인테리어 서비스를 사용하는 수많은 사용자가 자신의 가상 공간에 각종 인테리어 요소를 꾸며보면서 수집되는 빅데이터를 활용하여, 사용자들의 취향, 사용자들이 주로 함께 배치하는 사물들의 종류, 사용자들이 주로 함께 배치하는 사물들의 스타일을 반영한 추천 기술을 제공할 수 있다.
이를 위해, 본 발명의 실시예는 빅데이터에 포함된 다양한 사용자들의 정보로부터 다수의 공통적인 취향과 조화를 반영할 수 있는 연관도를 분석하는 기술을 사용하여, 사용자의 가상 공간에 새롭게 배치될 인테리어 요소를 추천할 수 있다.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.
도 1은 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치의 기능 블록도이다.
도 2는 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치가 수행하는 회귀 간선 사물 추천 방법의 동작 흐름도이다.
도 3은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹이 분류되기 전(a)과 분류된 후(b)의 모습을 설명하기 위한 예시도이다.
도 4는 본 발명의 일 실시예에 따라 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 연관도에 기초한 간선 가중치를 부여하여 노드 간의 간선을 연결한 데이터 구조의 예시도이다.
도 5는 본 발명의 일 실시예에 따라 기 배치된 사물에 대한 특정 그룹이 차지하는 공간에 대한 범위를 설정하는 동작의 예시도이다.
도 6은 본 발명의 일 실시예에 따른 데이터 구조를 이용하여 회귀 방식으로 사물을 추천하는 동작의 예시도이다.
도 7은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작을 설명하기 위한 예시도이다.
도 8은 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작의 예시도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.  그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다.  그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다.  그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록들 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합일 수 있다.
또한 어떤 구성 요소들을 포함한다는 표현은 개방형의 표현으로서 해당 구성 요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성 요소들을 배제하는 것으로 이해되어서는 안 된다.
나아가 어떤 구성 요소가 다른 구성 요소에 연결되어 있다거나 접속되어 있다고 언급될 때에는, 그 다른 구성 요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 한다.
또한 '제1, 제2' 등과 같은 표현은 복수의 구성들을 구분하기 위한 용도로만 사용된 표현으로써, 구성들 사이의 순서나 기타 특징들을 한정하지 않는다.
이하에서는 도면들을 참조하여 본 발명의 실시예들에 대해 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치(100)의 기능 블록도이다. 도 1을 참조하면, 일 실시 예에 따른 회귀 간선 사물 추천 장치(100)는 메모리(110), 프로세서(120), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)를 포함할 수 있다.
메모리(110)는 빅데이터 DB(111), 데이터 구조 DB(113) 및 명령어 DB(115)를 포함할 수 있다.
빅데이터 DB(111)는 인테리어 서비스로부터 수집되는 다양한 데이터를 포함할 수 있다. 인테리어 서비스란, 실제 공간의 모습을 3차원의 가상 공간에 이식하여 가상의 인테리어 요소를 꾸며볼 수 있는 기능을 제공하는 서비스를 포함할 수 있다. 인테리어 서비스를 사용하는 사용자들은 자신의 취향대로 가상 공간에 사물/바닥재/벽지 등의 인테리어 요소를 배치할 수 있다. 인테리어 서비스를 사용하는 사용자들은 다른 사용자들이 꾸민 가상 공간의 인테리어를 보고 공감 기능(ex. 좋아요 버튼) 등을 통해 반응할 수 있다. 또한, 인테리어 서비스를 통해 사용자들이 특정 인테리어를 조회한 조회수가 집계될 수 있다.
빅데이터 DB(111)가 인테리어 서비스로부터 수집되는 모든 정보를 빅데이터로서 저장할 수 있다. 예를 들어, 빅데이터는 인테리어 서비스의 사용자 정보, 사용자가 인테리어한 공간에 대한 정보, 인테리어한 방 종류에 대한 정보, 사용자가 배치한 사물, 벽지, 바닥재 등에 대한 정보, 사용자의 취향에 대한 정보, 사용자들이 특정 인테리어에 대해 평가한 정보, 사용자들이 특정 인테리어를 조회한 횟수에 대한 정보 등을 포함할 수 있다.
데이터 구조 DB(113)는 빅데이터에 포함된 모든 사물 각각에 대해 특정 사물과 대응되는 노드가 사물 간의 연관도에 기초한 간선 가중치에 따라 연결되어 있는 형태의 데이터 구조를 저장할 수 있다.
명령어 DB(115)는 프로세서(120)의 동작을 수행시킬 수 있는 명령어들을 저장할 수 있다. 예를 들어, 명령어 DB(115)는 후술할 프로세서(120)의 동작들과 대응되는 동작을 수행하도록 하는 컴퓨터 코드를 저장할 수 있다.
프로세서(120)는 회귀 간선 사물 추천 장치(100)가 포함하는 구성들, 메모리(110), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)의 전반적인 동작을 제어할 수 있다. 프로세서(120)는 그룹화 모듈(121), 연산 모듈(123), 구조화 모듈(125) 및 제어 모듈(127)을 포함할 수 있다. 프로세서(120)는 메모리(110)에 저장된 명령어들을 실행해 그룹화 모듈(121), 연산 모듈(123), 구조화 모듈(125) 및 제어 모듈(127)을 구동시킬 수 있다. 그룹화 모듈(121), 연산 모듈(123), 구조화 모듈(125) 및 제어 모듈(127)에 의해 수행되는 동작은 프로세서(120)에 의해 수행되는 동작으로 이해될 수 있다.
그룹화 모듈(121)은 빅데이터에 포함된 정보 중 사용자가 가상 공간에 배치한 사물들에 대한 정보에 대해서, 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류할 수 있다. 그룹화 모듈(121)은 위치 기반으로 사물들의 그룹화 동작을 수행함으로써 인테리어 서비스에서 사용자들이 함께 배치하는 사물들에 대한 정보를 통해 사물 간의 연관도를 분석할 수 있게 하는 선행 데이터를 생성한다.
연산 모듈(123)은 그룹화된 모든 그룹에 대해서 특정 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하고, 각 사물이 함께 배치된 횟수를 기초로 각 사물 간의 연관도를 판별할 수 있다. 또한, 연산 모듈(123)은 가상 공간에 특정 종류의 벽지 및 바닥재가 함께 배치된 횟수를 집계하고, 해당 횟수를 기초로 벽지와 바닥재 간의 연관도를 판별할 수 있다.
구조화 모듈(125)은 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 사물 간의 연관도에 기초한 간선 가중치가 부여된 간선을 노드 사이에 연결하여 데이터 구조를 저장할 수 있다.
제어 모듈(127)은 인테리어 서비스에서 사용자가 사물, 벽지, 바닥재 등의 인테리어 요소를 가상 공간에 배치하려는 경우, 기 생성된 데이터 구조 또는 기 계산된 상관 관계에 대한 정보를 활용하여, 인테리어 요소들 간의 연관도에 기반한 새로운 인테리어 요소를 추천할 수 있다.
입력 인터페이스(130)는 사용자의 입력을 수신할 수 있다. 예를 들면, 사용자가 인테리어 서비스에서 선택하는 인테리어 요소 등의 입력을 수신할 수 있다.
디스플레이부(140)는 디스플레이 패널을 포함하여 화상을 출력하는 하드웨어 구성을 포함할 수 있다.
통신 인터페이스(150)는 외부 장치(ex. 외부 DB 서버, 사용자 단말 등)와 통신하여 정보를 송수신 할 수 있게 한다. 이를 위해, 통신 인터페이스(150)는 무선 통신모듈 또는 유선 통신모듈을 포함할 수 있다.
이하, 도 2 내지 도 8을 통해 회귀 간선 사물 추천 장치(100)의 구성 요소들이 연동하여 인테리어 서비스의 사용자에게 빅데이터에 기반한 인테리어 요소를 추천하게 되는 구체적 실시예에 대해 설명한다.
도 2는 본 발명의 일 실시예에 따른 회귀 간선 사물 추천 장치(100)가 수행하는 회귀 간선 사물 추천 방법의 동작 흐름도이다. 도 2에 따른 회귀 간선 사물 추천 방법의 각 단계는 도 1을 통해 설명된 회귀 간선 사물 추천 장치(100)의 구성들에 의해 수행될 수 있으며, 각 단계를 설명하면 다음과 같다.
빅데이터 DB(111)는 인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치, 사물의 종류, 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보 등 사용자에게 인테리어 서비스를 제공하면서 수집되는 다양한 정보를 포함하는 빅데이터를 저장할 수 있다(S210).
인테리어 서비스는 각 사용자가자신의 가상 공간에 배치한 인테리어 요소들에 대한 정보들이 유지되도록 저장할 수 있고, 사용자가 인테리어 요소를 배치해보며 꾸민 횟수, 배치해본 인테리어 요소들에 대한 내역, 최종적으로 유지되고 있는 가상 공간에서의 인테리어 요소 및 사용자의 정보를 저장할 수 있으며, 이러한 모든 정보를 누적하여 저장함으로써 빅데이터를 생성할 수 있다. 빅데이터 DB(111)는 하나 이상의 인테리어 서비스로부터 생성되는 빅데이터를 획득하여 저장할 수 있고, 이후의 동작에 따라 본 발명의 목적을 수행할 수 있도록 데이터들이 정제될 수 있다.
그룹화 모듈(121)은 빅데이터에 포함된 정보 중 사용자가 가상 공간에 배치한 사물들에 대한 정보에 기초하여, 가상 공간에 배치된 사물들의 위치 관계를 기준으로 사물 간의 그룹을 분류할 수 있다(S220).
도 3은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에 배치된 사물들의 위치 관계를 기초로 사물 간의 그룹이 분류되기 전(a)과 분류된 후(b)의 모습을 설명하기 위한 예시도이다.
도 3을 참조하면, 그룹화 모듈(121)은 가상 공간 내에서 사물들이 위치하는 3차원 좌표의 위치를 기반으로 사물들을 군집화하는 소정의 알고리즘을 이용하여 사물 간의 그룹을 분류할 수 있다. 예를 들어, 그룹화 모듈(121)은 DBSCAN(Density Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘을 이용할 수 있다. DBSCAN 클러스터링 알고리즘은 입력된 복수 객체의 위치에 대한 밀도를 기반으로 그룹을 분류하는 알고리즘이다. 그룹화 모듈(121)은 소정 범위의 가상 공간 안에 배치된 사물들의 3차원 좌표를 DBSCAN 클러스터링 알고리즘에 입력하여 빅데이터에 포함된 사물들의 그룹을 분류할 수 있다. 이러한 그룹 정보는 인테리어 서비스에서 사용자들이 함께 배치하는 사물들에 대한 정보로부터 사물 간의 연관도를 분석할 수 있게 하는 선행 데이터의 역할을 할 수 있다.
연산 모듈(123)은 분류된 모든 그룹에 대해, 특정 사물이 다른 각각의 사물과 같은 그룹 내에서 배치된 횟수를 집계할 수 있다(S230). 연산 모듈(123)은 특정 사물이 다른 각각의 사물과 같은 그룹 내에서 배치된 각각의 횟수를 소정 범위에 따라 분류하여 특정 사물과 다른 모든 사물 간의 연관도를 판별할 수 있다(S240).
예를 들어, "싱크대"라는 특정 사물을 기준으로 같은 그룹으로 분류된 내역이 있는 사물들이 "접시, 토스트기, 전자렌지, 식기도구, 테이블, 의자, 액자, 시계, 에어컨, 랜턴, TV, 세탁기, 신발장, 변기"가 있고, 빅데이터에서 싱크대가 각각의 사물들과 함께 배치되었던 횟수가 [10000, 8887, 8882, 8281, 5000, 4529, 4325, 2100, 150, 32, 22, 15, 7, 2] 라고 가정하여 설명한다.
연산 모듈(123)은 배치 횟수에 따라 각 사물을 제1 구간, 제2 구간, 제3 구간 및 제4 구간으로 나뉘어, 제1 구간에서 제4 구간으로 갈수록, "싱크대"와 강한 연관도에서 약한 연관도를 갖도록 사물들의 연관도를 판별할 수 있다.
이를 위해, 연산 모듈(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).
이후, 연산 모듈(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 구간으로 분류할 수 있다.
<제1 구간 - 매우 강한 연관도>
[접시, 토스트기, 전자렌지, 식기도구] = [10000, 8887, 8882, 8281]
<제2 구간 - 강한 연관도>
[테이블, 의자, 액자] = [5000, 4529, 4325]
<제3 구간 - 약한 연관도>
[시계] = [2100]
<제4 구간 - 매우 약한 연관도>
[에어컨, 랜턴, TV, 세탁기, 신발장, 변기] = [150, 32, 22, 15, 7, 2]
구조화 모듈(125)은 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 사물 간의 연관도에 기초한 간선 가중치를 부여하여 각 노드 간의 간선을 연결한 데이터 구조를 생성할 수 있다(S250).
예를 들면, "싱크대"를 기준으로 한 상술한 예시에서, 구조화 모듈(125)은 제1 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 1을 적용하여, 제1 노드(ex. 싱크대)와 제1 구간에 포함된 노드 각각에 대한 연관도를 판별하는 점수인
Figure PCTKR2022001119-appb-img-000013
를 계산할 수 있다.
[수학식 1]
Figure PCTKR2022001119-appb-img-000014
(
Figure PCTKR2022001119-appb-img-000015
은 제1 노드와 상기 제1 구간에 포함된 소정 노드와의 연관도 반영 점수,
Figure PCTKR2022001119-appb-img-000016
은 제1 구간에 포함된 사물들의 배치 횟수의 집합,
Figure PCTKR2022001119-appb-img-000017
은 상기 제1 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
즉,
Figure PCTKR2022001119-appb-img-000018
은 [접시, 토스트기, 전자렌지, 식기도구] = [10000, 8887, 8882, 8281],
Figure PCTKR2022001119-appb-img-000019
은 [10000, 8887, 8882, 8281] 중 어느 하나에 대한 배치 횟수,
Figure PCTKR2022001119-appb-img-000020
은 제1 구간 집합의 최솟값인 8281,
Figure PCTKR2022001119-appb-img-000021
은 제1 구간 집합의 표준편차인 std([10000, 8887, 8882, 8281]) = 621.09를 의미한다. trunc는 괄호 안에 계산된 값의 특정 소수점 이하 절사하는 함수이다.
구조화 모듈(125)은 제2 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 2를 적용하여, 제1 노드(ex. 싱크대)와 제2 구간에 포함된 노드 각각에 대한 연관도를 판별하는 점수인
Figure PCTKR2022001119-appb-img-000022
를 계산할 수 있다.
[수학식 2]
Figure PCTKR2022001119-appb-img-000023
(
Figure PCTKR2022001119-appb-img-000024
은 제1 노드와 제2 구간에 포함된 소정 노드와의 연관도 반영 점수,
Figure PCTKR2022001119-appb-img-000025
은 제2 구간에 포함된 사물들의 배치 횟수의 집합,
Figure PCTKR2022001119-appb-img-000026
은 제2 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
즉,
Figure PCTKR2022001119-appb-img-000027
는 [테이블, 의자, 액자] = [5000, 4529, 4325],
Figure PCTKR2022001119-appb-img-000028
은 [5000, 4529, 4325] 중 어느 하나에 대한 배치 횟수,
Figure PCTKR2022001119-appb-img-000029
은 제2 구간 집합의 최솟값인 4325,
Figure PCTKR2022001119-appb-img-000030
은 제2 구간 집합의 표준편차인 std([5000, 4529, 4325]) = 282.66를 의미한다. trunc는 괄호 안에 계산된 값의 특정 소수점 이하 절사하는 함수이다.
구조화 모듈(125)은 제3 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 3을 적용하여, 제1 노드(ex. 싱크대)와 제3 구간에 포함된 노드 각각에 대한 연관도를 판별하는 점수인
Figure PCTKR2022001119-appb-img-000031
를 계산할 수 있다.
[수학식 3]
Figure PCTKR2022001119-appb-img-000032
(
Figure PCTKR2022001119-appb-img-000033
은 제1 노드와 제3 구간에 포함된 소정 노드와의 연관도 반영 점수,
Figure PCTKR2022001119-appb-img-000034
은 제3 구간에 포함된 사물들의 배치 횟수의 집합,
Figure PCTKR2022001119-appb-img-000035
은 제3 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
즉,
Figure PCTKR2022001119-appb-img-000036
는 [시계] = [2100],
Figure PCTKR2022001119-appb-img-000037
은 [시계] = [2100] 중 어느 하나에 대한 배치 횟수,
Figure PCTKR2022001119-appb-img-000038
은 제3 구간 집합의 최솟값인 2100,
Figure PCTKR2022001119-appb-img-000039
은 제3 구간 집합의 표준편차인 std([2100]) = 0을 의미한다. trunc는 괄호 안에 계산된 값의 특정 소수점 이하 절사하는 함수이다.
구조화 모듈(125)은 상술한 수학식 1 내지 수학식 3에 따른 계산의 과정을 모든 노드에 대해 수행할 수 있다. 즉, 상술한 예시와 같이 "싱크대"라는 사물을 기준으로 "접시, 토스트기, 전자렌지, 식기도구, 테이블, 의자, 액자, 시계, 에어컨, 랜턴, TV, 세탁기, 신발장, 변기"에 대한 점수가 계산되었다면, "테이블"을 기준으로 "테이블"과 다른 사물들에 연관 점수도 계산될 수 있다. 이에 따라 "테이블"을 기준으로 "싱크대"라는 사물과 계산된 점수가 도출될 수 있다.
만약, 위 예시에서 "테이블"을 기준으로 같은 그룹에서 함께 배치된 사물들의 배치 횟수가 [32000, 30002, 25882, 18281, 16999, 5000, 3252, 2125, 302, 202, 201, 55, 34, 10, 4] 이고, 그 중 "싱크대"와 함께 배치된 횟수가 5000에 해당한다면, 상술한 수학식 1 내지 수학식 3에 따라 테이블을 기준으로 한 싱크대의 점수는 "-86"이라는 점수가 도출된다.
이후, 구조화 모듈(125)은 제1 노드(ex. 싱크대)를 기준으로 구해진 제2 노드(ex. 테이블)와의 점수(ex. +36)와, 제2 노드(ex. 테이블)를 기준으로 구해진 제1 노드(ex. 싱크대)와의 점수(ex. -86)를 합산하여, 제1 노드와 제2 노드 사이에 합산한 값(ex. +36-86= -50점)을 간선 가중치로 부여하여 연결할 수 있다. 이때 구조화 모듈(125)은 제1 노드에 대해 제4 구간에 포함된 사물과는 점수를 계산하지 않고 서로 간선으로 연결되지 않도록 설정할 수 있다.
이에 따라, 구조화 모듈(125)은 도 4와 같은 예시의 데이터 구조를 생성할 수 있다. 이때 데이터 구조의 간선 가중치는 어느 공간(ex. 거실, 침실, 화장실, 부엌 등)에서 사물이 배치되는지에 따라서, 데이터 구조에 포함된 소정 노드 간 간선 가중치에 대해 편향(bias)을 더하거나 감하도록, 편향이 반영될 사물들과 편향의 값을 기 설정할 수 있다.
도 4는 본 발명의 일 실시예에 따라 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 연관도에 기초한 간선 가중치를 부여하여 노드 간의 간선을 연결한 데이터 구조의 예시도이다.
도 4를 참조하면, 제어 모듈(127)은 인테리어 서비스에서 제1 사용자가 가상 공간에 소정의 사물을 새롭게 배치하는 경우, 데이터 구조에서 새롭게 배치한 소정의 사물과 대응되는 제1 노드와 간선으로 연결된 사물을 간선 가중치에 기반하여 추천할 수 있다.
만약, 제1 사용자가 소정 공간에 "카펫"을 배치하는 경우, 데이터 구조를 참조하여 연결된 간선 가중치가 높은 순서로 "소파", "테이블 2", "암체어"를 추천할 수 있다.
이후, 제1 사용자가 "카펫"을 놓은 다음 "암체어"를 "카펫"의 근처에 배치하였다면, 두 개의 노드를 하나의 노드군으로 묶어, 해당 노드군을 기준으로 간선으로 연결된 사물들에 대해 간선 가중치가 높은 순서로 "소파", "램프", "테이블 2"를 추천할 수 있다. 이때 "테이블 1" 및 "테이블 의자"와 같이 음의 간선 가중치로 연결된 경우의 사물은 추천에서 제외할 수 있다.
한편, 제1 사용자가 "카펫"을 놓은 다음 "암체어"를 "카펫"의 근처에 배치하지 않았다면 노드군을 형성하지 않고, "암체어"에 해당하는 노드만을 기준으로 간선으로 연결된 사물들에 대해 간선 가중치가 높은 순서로 "램프", "카펫"을 추천할 수 있다. 이때 "테이블 1" 및 "테이블 의자"와 같이 음의 간선 가중치로 연결된 경우의 사물은 추천에서 제외할 수 있다.
이때 "카펫"을 놓은 다음 "암체어"를 놓는 경우, "암체어"가 "카펫"의 근처에 배치된 것인지 근처가 아닌지, 즉 사물들이 같은 그룹에 속하는지 아닌지를 판별하는 알고리즘에 대한 실시예를 설명한다.
제어 모듈(127)은 제1 사용자의 가상 공간에 기 배치된 사물을 판별하고, 기 배치된 사물들의 위치를 기초로 상술한 DBSCAN 클러스터링 알고리즘을 이용하여 미리 기 배치된 사물 간의 그룹을 분류할 수 있다. 이에 따라 사물들의 그룹이 분류되면, 제어 모듈(127)은 각 그룹이 차지하는 공간에 대한 범위를 설정할 수 있다.
도 5는 본 발명의 일 실시예에 따라 기 배치된 사물에 대한 특정 그룹이 차지하는 공간에 대한 범위를 설정하는 동작의 예시도이다.
도 5를 참조하면, 제어 모듈(127)은 상술한 동작으로 같은 그룹으로 분류된 사물들의 3차원 위치 좌표의 중점으로부터 가장 멀리 배치된 사물의 3차원 위치 좌표까지의 거리에 소정의 상수를 더한 길이를 반경으로 하는 구의 내부를 상기 범위로 설정할 수 있다.
이후, 제어 모듈(127)은 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 소정의 사물이 배치된 위치를 기초로 소정의 사물이 특정 그룹의 범위에 속하는지를 판별하여, 특정 그룹의 범위에 속한다면 배치된 사물을 해당 그룹에 추가하고, 특정 그룹의 범위에 속하지 않는다면 배치된 사물에 대하여 새로운 그룹을 생성할 수 있다.
이에 따라, 제어 모듈(127)은 배치된 사물이 특정 그룹에 속한다면, 해당 그룹에 포함된 사물들과 대응되는 노드를 묶은 노드군에 대해 데이터 구조에서 간선으로 연결된 사물을 간선 가중치에 따라 추천할 수 있다.
데이터 구조를 활용하면서 상술한 추천 방식과 또 다른 실시예에 따르면, 제어 모듈(127)은 인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 제어 모듈(127)은 다양한 조건을 조합하여 설정함으로써, 새롭게 배치된 사물의 노드로부터 인접한 노드를 순차적으로 선택하면서 다시 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천할 수 있다.
예를 들어, 제어 모듈(127)은 데이터 구조에서 상기 배치된 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 다시 제1 노드로 회귀해 돌아오는 조건, 회귀해 돌아오기까지 선택된 노드들의 개수가 소정 개수 이하이면서 간선 가중치의 합이 최대가 되는 조건, 회귀 이후 선택된 노드들의 개수가 소정 개수 미만인 경우, 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 양의 간선 가중치를 갖는 다른 노드를 통해 제1 노드로 회귀해 돌아오는 조건, 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 조건, 간선 가중치의 합이 최대가 되도록 먼저 노드들을 순환하도록 하는 조건 등을 조합하여 회귀하도록 설정할 수 있다.
도 6은 본 발명의 일 실시예에 따른 데이터 구조를 이용하여 회귀 방식으로 사물을 추천하는 동작의 예시도이다.
도 6을 참조하면, 제어 모듈(127)은 데이터 구조에서 소정의 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 양의 간선 가중치를 갖는 인접한 노드로 회귀하되, 제1 노드로 회귀해 돌아오기까지 통과하는 노드들의 개수가 6개 이하가 되는 조건으로, 제1 노드로부터 출발하여 다시 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 회귀 조건을 설정할 수 있다.
도 6에서 새롭게 배치된 사물이 "테이블 2"인 경우, "테이블 2"에 연결된 간선은 선반(+42), 수납함(+27), 카펫(+31), 소파(+11), 테이블 1(-350) 이고, 양의 간선 가중치를 갖는 노드를 통해 출발하고 복귀할 수 있으므로, 선반(+42), 수납함(+27), 카펫(+31), 소파(+11)의 노드를 통해 출발하고, 선반(+42), 수납함(+27), 카펫(+31), 소파(+11)의 노드를 통해 복귀할 수 있는 경우의 수를 계산할 수 있다. 다만, 선택될 수 있는 노드의 개수가 6개로 한정되므로, 회귀하는 동안 6개를 초과하게 되는 회귀의 경우의 수는 제외할 수 있다.
즉, 제어 모듈(127)은 특정한 하나의 회귀 경로만 선택하는 것이 아니라 회귀 이후 선택된 노드들의 개수가 6개 이하라면, 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 제1 노드로 회귀해 돌아오기까지, 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천할 수 있다.
이에 따라, 제어 모듈(127)은 "테이블 2->선반->서랍장->수납함->테이블 2"로 회귀하는 제1 경우의 수와, "테이블 2->카펫->소파->테이블2"로 회귀하는 제2 경우의 수를 선택할 수 있고, "선반, 서랍장, 수납함, 카펫, 소파"의 사물들을 함께 배치할 수 있는 사물로 추천할 수 있다.
도 7은 본 발명의 일 실시예에 따라 빅데이터로부터 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작을 설명하기 위한 예시도이다.
도 7(a)를 참조하면, 연산 모듈(123)은 빅데이터에 포함된 각 사용자가 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보로부터, 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계할 수 있다.
도 7(b)를 참조하면, 연산 모듈(123)은 C집처럼 특정 벽지와 바닥재가 배치된 경우가 모두 0인 경우는 후술할 상관관계 연산의 영향에서 배제하기 위해 집계를 제외할 수 있다.
도 7(c)를 참조하면, 연산 모듈(123)은 특정 사용자의 인테리어가 다른 사용자들로부터 많은 공감(ex. 좋아요 버튼)을 받거나, 조회 수가 높은 경우 해당 인테리어에 해당하는 공간/바닥재 배치 횟수에 가중치를 부여함으로써 사용자들의 집단 취향을 반영할 수 있다. 예를 들어, 도 7(c)의 D집에서 벽재/바닥재가 사용된 횟수는 4회/2회이지만, 기 설정된 기준보다 높은 공감이나 조회 수를 받은 경우에 해당한다면, 소정 기준에 따라 가중치를 주어 D집에 벽지/바닥재가 배치된 횟수를 높여서 후술할 연산에 반영할 수 있다.
도 8은 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작의 예시도이다.
도 8을 참조하면, 특정 벽지/바닥재의 조합에 대한 상관관계를 분석하기 위해, 연산 모듈(123)은 빅데이터를 통해 모든 종류의 벽지/바닥재 조합에 대해 집계된 횟수를 기초로, 켄달 타우 순위 상관 계수(kendall tau rank correlation coefficient)를 계산하고, 모든 조합에 대하여 계산된 상관관계 점수가 -1에서 +1의 범위를 갖도록 정규화할 수 있다.
이에 따라, 인테리어 서비스에서 가상 공간에 특정 벽지가 배치되는 경우, 제어 모듈(127)은 해당 벽지와의 켄달 타우 순위 상관 계수가 높은 순서로 바닥재를 추천할 수 있다. 또한 제어 모듈(127)은 인테리어 서비스에서 가상 공간에 특정 바닥재가 배치되는 경우, 해당 바닥재와의 켄달 타우 순위 상관 계수가 높은 순서로 벽지를 추천할 수 있다.
상술한 실시예에 따르면, 인테리어 서비스를 사용하는 수많은 사용자가 자신의 가상 공간에 각종 인테리어 요소를 꾸며보면서 수집되는 빅데이터를 활용하여, 사용자들의 취향, 사용자들이 주로 함께 배치하는 사물들의 종류, 사용자들이 주로 함께 배치하는 사물들의 스타일을 반영한 추천 기술을 제공할 수 있다.
이를 위해, 본 발명의 실시예는 빅데이터에 포함된 다양한 사용자들의 정보로부터 다수의 공통적인 취향과 조화를 반영할 수 있는 연관도를 분석하는 기술을 사용하여, 사용자의 가상 공간에 새롭게 배치될 인테리어 요소를 추천할 수 있다.
상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.
하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로프로세서 등에 의해 구현될 수 있다.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드 등이 기록된 컴퓨터 프로그램은 컴퓨터 판독 가능 기록 매체 또는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 메모리 유닛은 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 프로세서와 데이터를 주고받을 수 있다.
또한 본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방법으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
더불어 각 블록 또는 각 단계는 특정된 논리적 기능을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이와 같이, 본 발명이 속하는 기술 분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적이며 한정적이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허 청구범위에 의하여 나타내어지며, 특허 청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (17)

  1. 회귀 간선 사물 추천 장치에 있어서,
    소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작 가능 하도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고,
    상기 프로세서가 수행하는 동작은,
    인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 동작;
    상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 동작;
    분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 동작;
    상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 동작;
    상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 동작; 및
    인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  2. 제1항에 있어서,
    상기 추천하는 동작은,
    상기 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 선택된 노드들의 개수가 소정 개수 이하이면서, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  3. 제2항에 있어서,
    상기 추천하는 동작은,
    상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함하는,
    회귀 간선 사물 추천 장치.
  4. 제3항에 있어서,
    상기 추천하는 동작은,
    상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함하는,
    회귀 간선 사물 추천 장치.
  5. 제1항에 있어서,
    상기 그룹을 분류하는 동작은,
    3차원 좌표의 위치 기반으로 사물들을 군집화 하는 소정의 알고리즘을 이용하여 사물들 간의 그룹을 분류하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  6. 제5항에 있어서,
    상기 그룹을 분류하는 동작은,
    DBSCAN(Density Based Spatial Clustering of Applications with Noise) 클러스터링 알고리즘을 기초로 소정 범위의 가상 공간 안에 배치된 사물들의 3차원 좌표를 입력하여 상기 사물들이 소정 공간 안에 배치되어 있는 밀도를 기준으로 그룹을 분류하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  7. 제1항에 있어서,
    상기 추천하는 동작은,
    상기 제1 사용자의 가상 공간의 종류에 따라서, 상기 데이터 구조에 포함된 소정 노드 간 간선 가중치에 대해 편향을 더하거나 감하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  8. 제1항에 있어서,
    상기 연관도를 판별하는 동작은,
    상기 제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 사물과 강한 연관도에서 약한 연관도를 갖도록 연관도를 판별하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  9. 제8항에 있어서,
    상기 데이터구조를 생성하는 동작은,
    상기 제1 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 1을 적용하여, 상기 제1 노드와 상기 제1 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
    [수학식 1]
    Figure PCTKR2022001119-appb-img-000040
    (
    Figure PCTKR2022001119-appb-img-000041
    은 상기 제1 노드와 상기 제1 구간에 포함된 소정 노드와의 연관도 반영 점수,
    Figure PCTKR2022001119-appb-img-000042
    은 상기 제1 구간에 포함된 사물들의 배치 횟수의 집합,
    Figure PCTKR2022001119-appb-img-000043
    은 상기 제1 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
    상기 제2 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 2를 적용하여, 상기 제1 노드와 상기 제2 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
    [수학식 2]
    Figure PCTKR2022001119-appb-img-000044
    (
    Figure PCTKR2022001119-appb-img-000045
    은 상기 제1 노드와 상기 제2 구간에 포함된 소정 노드와의 연관도 반영 점수,
    Figure PCTKR2022001119-appb-img-000046
    은 상기 제2 구간에 포함된 사물들의 배치 횟수의 집합,
    Figure PCTKR2022001119-appb-img-000047
    은 상기 제2 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
    상기 제3 구간에 포함된 노드들의 배치 횟수에 대해 하기 수학식 3을 적용하여, 상기 제1 노드와 상기 제3 구간에 포함된 노드에 대한 연관도를 판별하는 점수를 계산하는 동작;
    [수학식 3]
    Figure PCTKR2022001119-appb-img-000048
    (
    Figure PCTKR2022001119-appb-img-000049
    은 상기 제1 노드와 상기 제3 구간에 포함된 소정 노드와의 연관도 반영 점수,
    Figure PCTKR2022001119-appb-img-000050
    은 상기 제3 구간에 포함된 사물들의 배치 횟수의 집합,
    Figure PCTKR2022001119-appb-img-000051
    은 상기 제3 구간에 포함된 소정 노드의 사물에 대한 배치 횟수)
    상기 수학식 1, 2, 3의 계산을 제1 구간 내지 제3 구간에 포함된 모든 노드에 대해 수행하여, 상기 제1 노드를 기준으로 구해진 제2 노드와의 점수와, 상기 제2 노드를 기준으로 구해진 상기 제1 노드와의 점수를 합산한 값을 계산하여, 상기 제1 노드와 상기 제2 노드 사이에 상기 합산한 값을 간선 가중치로 부여하여 연결하는 동작; 및
    상기 제1 노드와 상기 제4 구간에 포함된 사물과는 간선으로 연결되지 않도록 설정하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  10. 제9항에 있어서,
    상기 추천하는 동작은,
    인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드에 인접한 노드 중 양의 간선 가중치를 갖는 인접한 노드의 방향으로 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  11. 제10항에 있어서,
    상기 추천하는 동작은,
    상기 회귀를 통한 경로가 소정 개수 이하이면서 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  12. 제11항에 있어서,
    상기 추천하는 동작은,
    상기 회귀 이후 선택된 노드들의 개수가 상기 소정 개수 미만인 경우, 상기 회귀 과정에서 선택되지 않은 노드 중 양의 간선 가중치를 갖는 노드로부터 출발하여 다시 상기 제1 노드로 회귀해 돌아오기까지, 상기 간선 가중치의 합이 최대가 되는 조건으로 순환하도록 설정하여 선택된 사물들을 추천하는 동작을 더 포함하는,
    회귀 간선 사물 추천 장치.
  13. 제12항에 있어서,
    상기 추천하는 동작은,
    상기 설정에 따라 마지막 회귀 과정까지 선택된 사물들의 총 개수가 소정 개수를 초과하면, 상기 마지막 회귀 과정에서 선택된 사물들을 추천에서 제외하는 동작을 더 포함하는,
    회귀 간선 사물 추천 장치.
  14. 제1항에 있어서,
    상기 추천하는 동작은,
    상기 제1 사용자의 가상 공간에 기 배치된 사물을 판별하는 동작;
    상기 기 배치된 사물의 위치를 기초로 상기 기 배치된 사물 간의 그룹을 분류하는 동작;
    상기 그룹이 차지하는 공간에 대한 범위를 설정하는 동작;
    상기 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우 상기 소정의 사물이 배치된 위치를 기초로 상기 소정의 사물이 속하는 그룹을 판별하여 그룹에 추가하거나 새로운 그룹을 생성하는 동작; 및
    상기 데이터 구조에서 상기 그룹 내의 사물들과 각각 대응되는 노드들 각각에 대해서, 상기 각각의 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 각각의 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  15. 제1항에 있어서,
    상기 빅데이터는,
    각 사용자가 가상 공간에 배치한 벽지 및 바닥재의 종류에 대한 정보를 더 포함하고,
    상기 프로세서는,
    상기 빅데이터로부터 상기 가상 공간에서 벽지 및 바닥재가 각각 배치된 횟수를 집계하는 동작;
    상기 집계된 횟수를 기초로 상기 빅데이터에 포함된 모든 종류의 벽지 및 바닥재의 조합에 대한 켄달 타우 순위 상관 계수를 계산하는 동작;
    인테리어 서비스에서 가상 공간에 제1 벽지가 배치되는 경우, 상기 제1 벽지와의 켄달 타우 순위 상관 계수가 높은 순서로 바닥재를 추천하는 동작; 및
    인테리어 서비스에서 가상 공간에 제1 바닥재가 배치되는 경우, 상기 제1 바닥재와의 켄달 타우 순위 상관 계수가 높은 순서로 벽지를 추천하는 동작을 포함하는,
    회귀 간선 사물 추천 장치.
  16. 회귀 간선 사물 추천 장치가 수행하는 회귀 간선 사물 추천 방법에 있어서,
    인테리어 서비스를 사용하는 각 사용자가 가상 공간에 사물을 배치한 위치 및 사물의 종류에 대한 정보를 포함하는 빅데이터를 획득하는 단계;
    상기 빅데이터로부터 상기 가상 공간에 배치된 사물들의 위치를 기초로 사물들 간의 그룹을 분류하는 단계;
    분류된 모든 그룹에 대해서 제1 사물이 다른 각각의 사물과 같은 그룹으로 배치된 횟수를 집계하는 단계;
    상기 횟수를 소정 범위에 따라 분류하여 상기 제1 사물과 상기 각각의 사물 간의 연관도를 판별하는 단계;
    상기 빅데이터에 포함된 모든 사물 각각을 노드로 생성하고, 상기 연관도에 기초한 값을 갖는 간선 가중치를 부여하여 상기 노드 간의 간선을 연결한 데이터 구조를 생성하는 단계; 및
    인테리어 서비스에서 제1 사용자의 가상 공간에 소정의 사물이 새롭게 배치되는 경우, 상기 데이터 구조에서 상기 소정의 사물과 대응되는 제1 노드로부터 상기 간선 가중치에 기초해 인접한 노드를 순차적으로 선택하면서 다시 상기 제1 노드로 회귀해 돌아오기까지 선택된 사물들을 추천하는 단계를 포함하는,
    회귀 간선 사물 추천 방법.
  17. 제16항의 방법을 프로세서가 수행하도록 하는 컴퓨터 판독 가능 기록매체에 저장된 컴퓨터 프로그램.
PCT/KR2022/001119 2022-01-21 2022-01-21 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법 WO2023140403A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2022/001119 WO2023140403A1 (ko) 2022-01-21 2022-01-21 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2022/001119 WO2023140403A1 (ko) 2022-01-21 2022-01-21 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2023140403A1 true WO2023140403A1 (ko) 2023-07-27

Family

ID=87348340

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/001119 WO2023140403A1 (ko) 2022-01-21 2022-01-21 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법

Country Status (1)

Country Link
WO (1) WO2023140403A1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100088265A1 (en) * 2008-10-03 2010-04-08 Sift, Llc Method, system, and apparatus for determining a predicted rating
JP2014102767A (ja) * 2012-11-21 2014-06-05 Daiwa House Industry Co Ltd インテリア選択支援システム及びインテリア選択支援方法
KR101485738B1 (ko) * 2014-07-02 2015-01-23 연세대학교 산학협력단 가구 배치 서비스 제공 방법, 서버, 컴퓨터 프로그램 제품 및 가구 배치 서비스 이용 방법
KR20190129622A (ko) * 2018-05-11 2019-11-20 서울대학교산학협력단 자동차 레이더 시스템에서 탐지된 타겟들의 클러스터링 방법 및 이를 위한 장치
KR102089100B1 (ko) * 2019-05-09 2020-03-13 정승원 이미지 데이터베이스 기반 상호인식차를 최소화하는 인테리어 서비스 제공 시스템
KR20200088131A (ko) * 2019-01-14 2020-07-22 카페24 주식회사 그래프 데이터베이스를 이용한 상품 추천 방법 및 장치
KR20220072385A (ko) * 2020-11-25 2022-06-02 주식회사 어반베이스 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100088265A1 (en) * 2008-10-03 2010-04-08 Sift, Llc Method, system, and apparatus for determining a predicted rating
JP2014102767A (ja) * 2012-11-21 2014-06-05 Daiwa House Industry Co Ltd インテリア選択支援システム及びインテリア選択支援方法
KR101485738B1 (ko) * 2014-07-02 2015-01-23 연세대학교 산학협력단 가구 배치 서비스 제공 방법, 서버, 컴퓨터 프로그램 제품 및 가구 배치 서비스 이용 방법
KR20190129622A (ko) * 2018-05-11 2019-11-20 서울대학교산학협력단 자동차 레이더 시스템에서 탐지된 타겟들의 클러스터링 방법 및 이를 위한 장치
KR20200088131A (ko) * 2019-01-14 2020-07-22 카페24 주식회사 그래프 데이터베이스를 이용한 상품 추천 방법 및 장치
KR102089100B1 (ko) * 2019-05-09 2020-03-13 정승원 이미지 데이터베이스 기반 상호인식차를 최소화하는 인테리어 서비스 제공 시스템
KR20220072385A (ko) * 2020-11-25 2022-06-02 주식회사 어반베이스 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법

Similar Documents

Publication Publication Date Title
RU2668408C2 (ru) Устройства, системы и способы виртуализации зеркала
KR102186899B1 (ko) 공간 인식에 기반한 인테리어 플랫폼 제공 방법
JP2022540934A (ja) インテリアデザインのための人工知能システム及び方法
KR20170094279A (ko) 3d 의복 이미지와 조합되는 사람의 3d 가상 신체 모델을 생성하기 위한 방법들, 및 관련 디바이스들, 시스템들 및 컴퓨터 프로그램 제품들
US20210327158A1 (en) Method, apparatus and storage medium for displaying three-dimensional space view
CN108009848A (zh) 一种家居仿真方法和设备
WO2023140403A1 (ko) 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법
CN108648061A (zh) 图像生成方法和装置
WO2023140402A1 (ko) 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 인접 간선 사물 추천 장치 및 방법
JP6937948B1 (ja) 家具レイアウトvrシステム、家具レイアウトvr方法及びプログラム
KR102492699B1 (ko) 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 인접 간선 사물 추천 장치 및 방법
KR102443166B1 (ko) 인테리어 서비스의 빅데이터로부터 구축된 간선 연결 데이터 구조 기반의 회귀 간선 사물 추천 장치 및 방법
JP2019197340A (ja) 情報処理装置、情報処理方法、及び、プログラム
CN115423939A (zh) 智能匹配家装的方法、装置、设备及存储介质
JP2020057026A (ja) 住空間提案システムおよび住空間提案方法
WO2022131736A1 (ko) 인테리어 서비스의 빅데이터 기반의 기 배치 사물 분석을 통한 사물 특성 추천 장치 및 방법
WO2022234724A1 (ja) コンテンツ提供装置
KR20200095664A (ko) 셀프 인테리어 서비스 방법
WO2022019389A1 (ko) 데이터 증강 기반 공간 분석 모델 학습 장치 및 방법
WO2021107642A2 (ko) 패션 정보 제공 방법, 장치 및 시스템
EP3933784A1 (en) Evaluation system, space design assistance system, evaluation method, and program
CN109885757B (zh) 客房搜索方法、装置、电子设备及存储介质
JP2002189764A (ja) 室内配置替え疑似システム
WO2024039026A1 (ko) 멀티 앵글 이미지 기반 3d 아바타를 생성하는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
JP7357415B1 (ja) プログラム、情報処理装置および情報処理方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22922265

Country of ref document: EP

Kind code of ref document: A1