Information processing apparatus, information processing method, and information processing program
Patent Information
- Application Number
- JP2023137809
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-28
- Publication Date
- 2025-03-12
- Estimated Expiration
- 2043-08-28
Smart Images

Figure 2025032512000001_ABST
Abstract
Description
[Technical field]
[0001] An embodiment of the present invention relates to an information processing device, an information processing method, and an information processing program. [Background technology]
[0002] In recent years, with the advancement of the Internet of Things (IoT), the use of relational data that represents relationships between data has accelerated. Examples of relational data include the purchase history of each of multiple users and job application data to companies. As a technology for utilizing relational data, a technology has been disclosed that determines the degree of association between a target category to which a certain piece of data belongs and categories other than the target category by clustering or grouping multiple pieces of data included in the relational data. As examples of clustering or grouping, a technology has been disclosed that performs clustering from purchase data using non-negative matrix decomposition, and a technology that defines a unique index based on purchase trends and performs data grouping.
[0003] However, in the conventional technology, when the amount of data belonging to the target category is small among all the data, it may be difficult to extract other categories that are highly related to the target category. In addition, in the conventional technology, when the characteristics of the evaluation index are not taken into consideration when extracting other categories related to the target category, the calculation accuracy of the degree of relevance may be reduced. In other words, in the conventional technology, it may be difficult to provide a highly accurate degree of relevance between the target category and other categories. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 6175037 [Patent Document 2] Patent No. 6662298 [Patent Document 3] Patent No. 6840446 Summary of the Invention [Problem to be solved by the invention]
[0005] An object of the present invention is to provide an information processing device, an information processing method, and an information processing program capable of providing a highly accurate degree of association between a target category and other categories. [Means for solving the problem]
[0006] According to an embodiment, an information processing apparatus includes a processor that calculates, for each pair of data defined in a graph in which relational data expressing a relationship between a plurality of data is expressed in a graph structure, a degree of association between a target category to be analyzed and a category other than the target category, based on a score calculated according to a degree of relationship between the pair of data constituting the pair and an evaluation index for evaluating a degree of association between the categories. [Brief description of the drawings]
[0007] [Figure 1] FIG. 2 is a diagram showing the functional configuration of an information processing device. [Diagram 2] FIG. 4 is a schematic diagram showing a data structure of relational data. [Diagram 3] Graph diagram. [Figure 4] FIG. 1 is an explanatory diagram of an adjacency matrix. [Diagram 5] Schematic diagram of the data structure of the score DB. [Figure 6] Schematic diagram of relevance output results. [Figure 7] Schematic diagram of the target graph. [Figure 8] FIG. 1 is an explanatory diagram of an expression vector. [Figure 9] FIG. 13 is an explanatory diagram of trend pattern extraction. [Figure 10] 11 is a schematic diagram showing the relationship between the type and number of other categories with respect to a target category and the calculated relevance degree. [Figure 11] 1 is a flowchart showing the flow of information processing. [Figure 12] FIG. 2 is a diagram showing the functional configuration of an information processing device. [Figure 13]FIG. 13 is a schematic diagram of output information including recommendation data. [Figure 14] Schematic diagram of output information. [Figure 15] 11 is a flowchart showing an example of a flow of information processing. [Figure 16] FIG. 2 is a hardware configuration diagram of an information processing device. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0008] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an information processing device, an information processing method, and an information processing program according to embodiments of the present invention will be described with reference to the drawings.
[0009] (First embodiment) FIG. 1 is a diagram showing an example of a functional configuration of an information processing device 10 according to the present embodiment.
[0010] The information processing device 10 is an information processing device that provides the degree of association between a target category and other categories. The target category and other categories will be described in detail later.
[0011] The information processing device 10 includes a communication unit 12, a UI (user interface) unit 14, a storage unit 16, and a processing unit 20. The communication unit 12, the UI unit 14, the storage unit 16, and the processing unit 20 are communicatively connected to each other via a bus or the like.
[0012] The communication unit 12 communicates with an external information processing device via a network or the like. The UI unit 14 has an input function for accepting operation input by a user and an output function for outputting various information. The input function is, for example, an input device such as a keyboard. The output function is, for example, a display for displaying various information, a speaker for outputting sound, etc.
[0013] The storage unit 16 stores various types of information. In this embodiment, the storage unit 16 stores relationship data 16A, a score DB 16B, and relevance information 16C, etc. Details of these data will be described later.
[0014] The processing unit 20 is a calculation unit that executes information processing. The processing unit 20 includes a score calculation unit 20A, an association degree calculation unit 20B, an object graph generation unit 20C, an expression vector calculation unit 20D, a tendency pattern extraction unit 20E, and an output control unit 20F.
[0015] At least one of the score calculation unit 20A, the relevance calculation unit 20B, the object graph generation unit 20C, the expression vector calculation unit 20D, the tendency pattern extraction unit 20E, and the output control unit 20F is realized, for example, by one or more processors. For example, each of the above units may be realized by having a processor such as a CPU execute a program, that is, by software. Each of the above units may be realized by a processor such as a dedicated IC (Integrated Circuit), that is, by hardware. Each of the above units may be realized by using both software and hardware. When multiple processors are used, each processor may realize one of the units, or may realize two or more of the units.
[0016] In addition, the processing unit 20 may be configured to include at least the score calculation unit 20A and the relevance calculation unit 20B, and may not include at least one of the object graph generation unit 20C, the expression vector calculation unit 20D, the trend pattern extraction unit 20E, and the output control unit 20F.
[0017] In addition, at least one of the above-mentioned functional units included in the processing unit 20 and at least a portion of the various information stored in the memory unit 16 may be configured to be mounted on an external information processing device or the like that is communicatively connected to the information processing device 10.
[0018] The score calculation unit 20A calculates, for each pair of data defined in a graph that represents the relational data in a graph structure, a score according to the degree of relationship between a pair of data that constitutes the pair.
[0019] First, the score calculation unit 20A acquires the relationship data 16A. In this embodiment, the score calculation unit 20A acquires the relationship data 16A by reading the relationship data 16A stored in the storage unit 16. Note that the score calculation unit 20A may acquire the relationship data 16A via the communication unit 12 from an external information processing device or the like.
[0020] FIG. 2 is a schematic diagram showing an example of the data structure of the relationship data 16A.
[0021] The relationship data 16A is data that indicates relationships between a plurality of data. In the relationship data 16A, various types of data that can be acquired by the information processing device 10 and relationships between the data are registered.
[0022] The relationship data 16A may be data that represents a relationship between a plurality of data, and the type of data included is not limited. For example, the relationship data 16A may include purchase data that represents a relationship between a user and a product purchased by the user, document data that represents a relationship between a word and a document containing the word, citation data that represents a citation relationship between documents, application data that represents a relationship between a user and a company to which the user applied, and SNS data that represents a relationship between users associated by an SNS (Social Networking Service). The language used in the data registered in the relationship data 16A is not limited, and may be, for example, Japanese, English, or a language other than Japanese and English.
[0023] The categories to which the data included in the relational data 16A belongs are predefined (not shown).
[0024] A category is a category to which data belongs. In detail, a category corresponds to a label of each group when a plurality of data are classified into a plurality of groups according to a predetermined rule. In this embodiment, it is assumed that a category to which each of the plurality of data belongs is predefined. For example, when data represents a product, the category to which the data belongs is, for example, soft drinks, dairy products, tea, lunch boxes, snacks, etc. Also, when data represents a user, the category to which the data belongs is, for example, the user's occupation, company, the industry to which the company belongs, etc. It should be noted that categories are not limited to these.
[0025] The processing unit 20 may generate the relationship data 16A and store it in advance in the storage unit 16. For example, the processing unit 20 may acquire data belonging to each of a plurality of categories via a network or the like, generate the relationship data 16A such as purchase data, document data, citation data, job application data, etc. by a known method, and store it in advance in the storage unit 16. The processing unit 20 may also store in advance in the storage unit 16 the relationship data 16A generated by an external information processing device or the like.
[0026] Note that the relationship data 16A may be pre-processed in advance. For example, it is assumed that the relationship data 16A is document data that indicates the relationship between a word and a document that includes the word. In this case, the processing unit 20 may extract only words that appear in the document a specified number of times or more and register them in the relationship data 16A. It is also assumed that the relationship data 16A is purchase data. In this case, the processing unit 20 may generate the relationship data 16A that selectively links only products that the user has purchased a specified number of times or more with the user. It is also assumed that the relationship data 16A is citation data. In this case, the processing unit 20 may generate the relationship data 16A that selectively uses only citation relationships of the specified data from the past few years.
[0027] In this embodiment, an example will be described in which the relationship data 16A is purchase data indicating the relationship between a user and a product purchased by the user. Also, in this embodiment, an example will be described in which the categories are categories to which products such as soft drinks, dairy products, tea, lunch boxes, snacks, etc. belong. That is, in this embodiment, it is assumed that the relationship between the user and products belonging to each of a plurality of categories is registered in advance in the relationship data 16A.
[0028] There is no limitation on the data format of the relationship data 16A. For example, the data format of the relationship data 16A may be either a database format or a graph format.
[0029] In the case of a database format, the relationship data 16A is, for example, a database in which users and products purchased by the users are associated with each other. The users and products associated with each other in the database format relationship data 16A mean that they have a relationship with each other.
[0030] In the case of the graph format, the relationship data 16A is represented by a bipartite graph consisting of two types of vertices, for example, users and products. An example of the graph format relationship data 16A is shown in Fig. 2. The users and products that are associated by being linked in the graph format relationship data 16A mean that they have a relationship with each other.
[0031] Continuing the explanation, returning to Fig. 1. Next, score calculation unit 20A generates a graph that represents relationship data 16A in a graph structure.
[0032] In detail, the score calculation unit 20A generates a graph for each one-to-one pairing between the target category and another category from the relationship data 16A.
[0033] The target category is a category to which specific data belongs. More specifically, the target category is a category to which data to be analyzed belongs, which is necessary for the analyst's analysis scenario. Other categories refer to categories other than the target category.
[0034] For example, assume that an analyst wishes to be provided with the degree of association between data belonging to a specific category and data belonging to other categories among data of multiple categories included in the relationship data 16A. Specifically, the analyst may wish to analyze which products in other categories have a high degree of association with products in a specific analysis target category, such as soft drinks. In this case, the analyst operates the UI unit 14 to input the desired specific category as the target category to be analyzed.
[0035] The score calculation unit 20A acquires the target category by accepting a specific category input as a target category by an analyst's operation instruction on the UI unit 14. The score calculation unit 20A may also acquire the target category by reading a target category stored in advance in the storage unit 16. The score calculation unit 20A may also acquire the target category from an external information processing device via the communication unit 12.
[0036] 3 is a schematic diagram of an example of a graph 31 generated from the relationship data 16A. The score calculation unit 20A generates a graph 31 representing a relationship between a user and a product for each pair of a product belonging to a target category and a product belonging to another category included in the relationship data 16A. For this reason, the score calculation unit 20A uses the relationship data 16A to generate multiple graphs 31 showing different combinations of one target category with another category for each one-to-one pair of the target category and another category.
[0037] The graph 31 is represented by a graph structure in which a plurality of data included in the relationship data 16A are linked according to the relationship represented by the relationship data 16A. In detail, the graph 31 is represented by a bipartite graph consisting of two types of vertices, that is, products and users belonging to a one-to-one target category and another category, respectively. In the graph 31 in Fig. 3, the products and users that are associated by being linked mean that they have a relationship with each other.
[0038] For example, the score calculation unit 20A extracts products belonging to a target category, products belonging to one other category, and users linked to these products from the relationship data 16A, and generates a graph 31 corresponding to the pair of the target category and the other category.
[0039] The score calculation unit 20A may generate the graph 31 by selectively linking users and products whose frequency of appearance in the relationship data 16A is equal to or greater than a threshold. The score calculation unit 20A may generate the graph 31 by deleting links between users and products whose frequency of appearance in the relationship data 16A is equal to or greater than a threshold. These thresholds may be set in advance. These thresholds may be appropriately changeable by an analyst's operation instruction on the UI unit 14, etc. The score calculation unit 20A may set a fixed threshold, such as "1", as the weight of a branch representing a link between a user and a product.
[0040] Furthermore, the score calculation unit 20A may generate a graph 31 in which the weight of the link between data is adjusted. In particular, the score calculation unit 20A may generate a graph 31 in which the weight of the link between data is adjusted by normalization according to the number of connections to the data. For example, when two products are linked to one user, the score calculation unit 20A adjusts the weight of the link between the user and each of these two products to 1 / 2. Furthermore, for example, when only one product is linked to one user, the score calculation unit 20A adjusts the weight of the link between the user and the product to 1. Examples of normalization methods include a symmetric normalized adjacency matrix, a random walk transition probability matrix, and a reverse random walk transition probability matrix.
[0041] Furthermore, the score calculation unit 20A may generate the graph 31 in which the weight of the association between the data is adjusted to a specified value. In other words, the score calculation unit 20A may generate the graph 31 without applying a weight to the association between the data.
[0042] Next, the score calculation unit 20A uses the graph 31 generated for each one-to-one pairing of the target category and another category to calculate a score for each pair of data defined in each graph 31 according to the degree of relationship between the pair of data that constitutes the pair.
[0043] The degree of relationship indicates the degree of the strength of the relationship between data. For example, the larger the weight value assigned to the link between data represented by graph 31, the stronger the relationship between the data. Also, the smaller the number of hops from one of the data pairs represented by graph 31 to the other, the stronger the relationship between the data. Also, the larger the number of routes from one of the data pairs represented by graph 31 to the other, the stronger the relationship between the data.
[0044] In this embodiment, as described above, a form in which the relationship data 16A is purchase data will be described as an example. Therefore, in this embodiment, the score calculation unit 20A calculates a score according to the degree of relationship between the user and the product for each pair of the user and the product included in the graph 31.
[0045] For example, for each pair of users and products included in graph 31, the score calculation unit 20A calculates the number of paths, which is the number of routes from one data of the pair to the other data within a predetermined number of hops or less, as the score of the pair.
[0046] In detail, the score calculation unit 20A identifies pairs of each user included in the graph 31 with each of the multiple products included in the graph 31. Then, for each identified pair, the score calculation unit 20A calculates the number of paths from the users constituting the pair to the product in K hops or less. K is an integer of 2 or more and may be determined in advance. Furthermore, K may be appropriately changeable by an analyst's operation instruction on the UI unit 14, etc.
[0047] Furthermore, for example, the score calculation unit 20A may calculate, for each pair of users and products included in the graph 31, the weighted average value of the number of paths, which is the number of routes from one data of the pair to the other data within a predetermined number of hops or less, as the score of the pair.
[0048] Specifically, for example, consider a pair of user A and product d in graph 31 shown in Fig. 3. In this case, there are two paths: a path from user A to product d in three hops via product b and user C, and a path from user A directly to product d in one hop. In this case, the score calculation unit 20A calculates "2", which is the weighted average ((3+1) / 2)) of the total number of paths, 2, of the number of hops, 3 and the number of hops, 1, as the score for the pair of user A and product d.
[0049] Here, when the adjacency matrix of graph 31 is used, the number of paths of K-hops or less corresponds to the product value when the adjacency matrix is multiplied K times. In general, the number of edges that link data included in graph 31 is sparse. Therefore, the number of paths of K-hops or less corresponds to the product of a sparse matrix. That is, by calculating the score using graph 31, score calculation unit 20A can calculate the score by utilizing a data structure suitable for a sparse matrix, and can calculate the score quickly.
[0050] Moreover, score calculation unit 20A may calculate the score using an average number of paths for a specific number of hops, a sum of the number of paths, or a weighted sum of the number of paths, instead of the number of paths equal to or less than K-hops.
[0051] Furthermore, the score calculation unit 20A may calculate, as a score for each pair of the data, a value represented by an inner product of a first matrix obtained by multiplying the adjacency matrix of the graph 31 by a predetermined matrix having a dimension corresponding to the number of dimensions of the data of the graph 31, and a transposed matrix of the first matrix. The predetermined matrix is represented by a matrix of a predetermined dimension of the number of dimensions of the data of the graph 31 times one or more dimensions.
[0052] 4 is an explanatory diagram of an example of the adjacency matrix 32. FIG 4 is an example of the adjacency matrix 32 of the graph 31 shown in FIG 3.
[0053] For example, the score calculation unit 20A prepares a first matrix A of the dimension of the data × the specified dimension by multiplying a predetermined matrix of the dimension of the data of the graph 31 × the specified dimension by the adjacency matrix 32. By calculating the inner product of this first matrix A and the transposed matrix of the first matrix A, a matrix of the dimension of the data represented by the graph 31 × the dimension of the data is obtained. The score calculation unit 20A calculates the ij component of this matrix as the score between the i-th data and the j-th data.
[0054] The predetermined matrix may be a matrix obtained by decomposing the adjacency matrix 32, or may be a matrix generated by random numbers. The score calculation unit 20A may calculate, as the score, an inner product of an average value of a plurality of first matrices A obtained by changing the number of times the predetermined matrix is multiplied by the adjacency matrix 32, and a transposed matrix of the average value.
[0055] Through these processes, the score calculation unit 20A calculates, for each pair of a user and a product included in the graph 31, a score according to the degree of relationship between the user and the product.
[0056] The score calculation unit 20A registers the calculated score in the score DB 16B in association with the pair of the user and the product.
[0057] 5 is a schematic diagram of an example of the data configuration of score DB 16B. Score DB 16B is a database that associates pairs of data included in graph 31 with scores calculated for the pairs. In this embodiment, a form in which the pairs of data included in graph 31 are pairs of users and products will be described as an example.
[0058] The score calculation unit 20A calculates a score according to the degree of relationship between the user and the product included in the graph 31 for each of multiple graphs 31 corresponding to different pairs of combinations of the target category and other categories, and multiple score DBs 16B are generated and stored in the memory unit 16 for each one-to-one pairing of the target category and other categories.
[0059] Returning to Figure 1, we will continue with the explanation.
[0060] The relevance calculation unit 20B calculates the relevance between the target category to be analyzed and categories other than the target category, based on the score calculated for each pair of data and the evaluation index for evaluating the relevance between categories.
[0061] First, the relevance calculation unit 20B reads from the score DB 16B the score for each pair of data registered in the score DB 16B.
[0062] Then, the relevance calculation unit 20B calculates the relevance between the target category corresponding to the graph 31 and other categories, using the score and evaluation index for each pair that has been read.
[0063] The relevance indicates the degree of association between categories. For example, the higher the matching rate, overlap rate, or similarity rate between groups of data belonging to each of a plurality of categories, the higher the degree of association between the categories. Also, the stronger the causal relationship between groups of data belonging to each of a plurality of categories, the higher the degree of association between the categories.
[0064] The evaluation index may be stored in advance in the storage unit 16. In this case, the relevance calculation unit 20B may read the evaluation index from the storage unit 16 and calculate the relevance using the read evaluation index.
[0065] Examples of the evaluation index include AUC (Area Under the ROC Curve), Recall, Precision, F-measure, nDCG (normalized Discounted Cumulative Gain), MRR (Mean Reciprocal Rank), etc. Note that the evaluation index is not limited to these evaluation indexes as long as it is an evaluation index that can calculate the relevance using the score between data and the graph 31.
[0066] Regardless of which of these evaluation indices is used, the relevance calculation unit 20B can calculate the relevance if it has the scores between the data and the graph 31.
[0067] The relevance calculation unit 20B may calculate a value obtained by combining a plurality of evaluation indexes of different types as the relevance. Specifically, the relevance calculation unit 20B may calculate an average value of values obtained by using the plurality of evaluation indexes or a weighted average value of values obtained by using the plurality of evaluation indexes as the relevance between the target category and other categories.
[0068] Furthermore, the relevance calculation unit 20B may calculate, as the relevance, the value of an evaluation index that satisfies a preset constraint.
[0069] For example, the relevance calculation unit 20B may set a threshold for each of the multiple evaluation indexes. Specifically, it is possible to set a constraint such as a case where Precision is maximized among cases where the AUC value is equal to or greater than the threshold. The relevance calculation unit 20B may then calculate a value based on the evaluation index that satisfies the constraint as the relevance.
[0070] Furthermore, the relevance calculation unit 20B may selectively use only data that the analyst is particularly interested in among the data included in the graph 31, and calculate a value based on the evaluation index as the relevance. When the number of data included in the graph 31 is large, it may take a long time to calculate the evaluation index. In that case, the relevance may be calculated after sampling data when calculating the relevance using the evaluation index. In detail, the relevance calculation unit 20B may calculate the relevance based on the score and the evaluation index calculated for each of some pairs sampled from a plurality of pairs included in the graph 31. For example, the relevance calculation unit 20B may sample N pairs of data (N is an integer of 1 or more) in descending order of the score, and calculate the relevance. The method of focusing on N pairs of data (N is an integer of 1 or more) in descending order of the score may be called Precision@K or Recall@K.
[0071] In addition, the values of Precision and Recall, which are examples of the evaluation index, can be calculated for each data. Therefore, when Precision and Recall are used as the evaluation index, the relevance calculation unit 20B may calculate the average value of the Precision and Recall values as the relevance.
[0072] The relevance calculation unit 20B may calculate the relevance using an evaluation index input by an analyst operating the UI unit 14.
[0073] In analyzing the data included in the relational data 16A, different evaluation indices may be used depending on the analysis scenario used by the analyst. For example, in the field of product recommendation, a user may only be interested in the top recommended products among many other products. For this reason, in this case, precision and recall are often used as evaluation indices. On the other hand, in trend pattern analysis, it is necessary to capture the overall characteristics between data, so AUC and the like are often used as evaluation indices.
[0074] Therefore, the analyst inputs evaluation indices according to the analysis scenario handled by the analyst by operating the UI unit 14. Then, the relevance calculation unit 20B calculates the relevance using the evaluation indices input by the analyst through an instruction to operate the UI unit 14.
[0075] Furthermore, the relevance calculation unit 20B may calculate the relevance using an evaluation index received from an external information processing device.
[0076] Returning to Figure 1, we will continue with the explanation.
[0077] The output control unit 20F outputs various types of information to the UI unit 14. When the relevance calculation unit 20B calculates the relevance between the target category and other categories, the output control unit 20F outputs information related to the relevance to the UI unit 14.
[0078] FIG. 6 is a schematic diagram of an example of an output result of the degree of association between the target category and other categories.
[0079] For example, the output control unit 20F displays on the UI unit 14 the relevance information 16C indicating the relevance calculated for each pair of the target category and other categories. For example, assume that the target category is "soft drinks" and the other categories are "tea," "lunch box," and "snacks." In this case, the output control unit 20F displays on the UI unit 14 the relevance information 16C indicating the relevance of the target category "soft drinks" with each of these other categories calculated by the relevance calculation unit 20B.
[0080] The output control unit 20F may also transmit the relevance information 16C to an external information processing device via the communication unit 12.
[0081] Returning to Figure 1, we will continue with the explanation.
[0082] The processing unit 20 executes various subtasks such as analysis and proposal based on the relevance between the target category and other categories calculated by the relevance calculation unit 20B. For example, the processing unit 20 may execute the subtasks using a predetermined number of relevances between the target category and other categories in descending order of relevance. The processing unit 20 may also output the relevance between the target category and other categories calculated by the relevance calculation unit 20B to an external information processing device via the communication unit 12. In this case, the external information processing device may execute the subtasks.
[0083] In this embodiment, a form in which the processing unit 20 executes a subtask will be described as an example. As a functional unit that executes the subtask, the processing unit 20 further includes at least one of a target graph generating unit 20C, an expression vector calculating unit 20D, and a tendency pattern extracting unit 20E.
[0084] The object graph generating unit 20C uses the relevance to identify other categories similar to the object category. Then, the object graph generating unit 20C links the data belonging to the identified other categories and the data belonging to the object category according to the relevance, and generates an object graph represented in a graph structure.
[0085] 7 is a schematic diagram of an example of the target graph 34. The target graph generating unit 20C extracts other categories that have a high degree of relevance to the target category, using the degree of relevance between the target category and other categories calculated by the degree of relevance calculating unit 20B.
[0086] A high relevance level means that the value represented by the relevance level is equal to or higher than a threshold value. This threshold value may be set in advance. In addition, this threshold value may be appropriately changeable by an analyst's operation instruction on the UI unit 14, etc. In addition, a high relevance level may represent M pairs of the target category and other categories calculated by the relevance level calculation unit 20B in order of the relevance level. M is an integer of 2 or more and may be predetermined. In detail, the value of M may be determined by setting the relevance level, which is the value of the evaluation index calculated using only data belonging to the target category, as a reference relevance level, and specifying the relevance level within a range predetermined for the reference relevance level as the other category with high relevance level.
[0087] Then, the object graph generating unit 20C generates a new object graph 34 using the object category and the extracted other categories.
[0088] The target graph 34 is a graph that links data belonging to a target category with data in other extracted categories that have a high degree of relevance to the target category. In detail, the target graph 34 is represented by a bipartite graph consisting of two types of vertices, that is, products and users that belong to the target category and the other categories, respectively. In the target graph 34 in FIG. 7, the products and users that are associated by being linked to each other have a degree of relevance equal to or higher than a threshold value.
[0089] The object graph 34 created by the object graph generating unit 20C can be utilized for recommendation, trend analysis, etc. Recommendation means a process of extracting a list of data of products, etc., that are recommended or recommended to a certain user.
[0090] Continuing the explanation by returning to Fig. 1, the expression vector calculation unit 20D uses the object graph to calculate the expression vector of each of the multiple data included in the object graph .
[0091] 8 is an explanatory diagram of an example of the expression vector V. In FIG. 8, the expression vector V of each of a plurality of data included in the object graph 34 shown in FIG.
[0092] The representation vector V is a distributed representation of data. The representation vector V is information that represents data using multiple features, and is represented by a multidimensional vector with multiple features as elements. The number of dimensions is, for example, 768, but is not limited to this number of dimensions. By representing data with the representation vector V, the more related and similar the data is, the closer the values of the representation vectors V will be.
[0093] The representation vector V is generated by learning so that more related data has more similar vectors. Methods for learning representation vectors include matrix decomposition, NMF (Nonnegative Matrix Factorization), and graph neural networks (GNN).
[0094] That is, the expression vector calculation unit 20D calculates the expression vector V based on the learning result of the graph structure of the object graph 34 using a graph analysis technique such as matrix decomposition, MNF, GNN, etc. In other words, the expression vector calculation unit 20D calculates the expression vector V of each piece of data included in the object graph 34 so as to maintain the graph structure of the object graph 34.
[0095] Here, in many data analysis methods such as clustering and regression, it is assumed that data is expressed as a vector. Therefore, by generating the expression vector V by the expression vector calculation unit 20D, it is possible to provide information applicable to various data analysis methods. Also, as described above, the more highly related and similar the data is, the closer the values of the expression vectors V are. Therefore, by generating the expression vector V by the expression vector calculation unit 20D, it is possible to provide information that can easily grasp the relationship and characteristics between data. Also, the expression vector V generated by the expression vector calculation unit 20D can be applied to various subtasks. Also, by expressing data in a vector format, parallel calculation and the like are also possible, so that the time required for data analysis can be shortened.
[0096] Returning to Figure 1, we will continue with the explanation.
[0097] The trend pattern extraction unit 20E extracts a trend pattern of a plurality of data represented by an expression vector V based on the characteristics represented by the expression vector V.
[0098] 9 is an explanatory diagram of an example of extraction of a trend pattern TP, which illustrates an example of extraction of a trend pattern TP of a plurality of data represented by the expression vector V shown in FIG.
[0099] The tendency pattern extraction unit 20E clusters a plurality of data included in the object graph 34 using the representation vector V of the data, thereby extracting a tendency pattern TP of the data represented by the representation vector V. In detail, the tendency pattern extraction unit 20E clusters a plurality of data included in the object graph 34 for each group of similar representation vectors V. FIG. 9 shows an example of a state in which a plurality of data included in the object graph 34 is clustered into two groups G, group G1 and group G2. For example, a Gaussian mixture model or agglomerative clustering may be used as the clustering method. Furthermore, when performing clustering, the tendency pattern extraction unit 20E may perform preprocessing such as normalizing the data and removing data representing outliers.
[0100] Returning to Figure 1, we will continue with the explanation.
[0101] The output control unit 20F may output information indicating the trend pattern TP extracted by the trend pattern extraction unit 20E to the UI unit 14. That is, the output control unit 20F may output the extraction result by the trend pattern extraction unit 20E to the UI unit 14.
[0102] For example, the output control unit 20F may output an image shown in FIG. 9 to the UI unit 14 as information representing the trend pattern TP extracted by the trend pattern extraction unit 20E. The output control unit 20F may output the clustering result to the UI unit 14 by displaying groups of data belonging to the same group G, which are represented by the trend pattern TP extracted by the trend pattern extraction unit 20E, for each group. The output control unit 20F may also highlight the clustering result by further displaying a frame surrounding the group of data classified into the same group G by clustering. The output control unit 20F may also output the trend pattern TP extracted by the trend pattern extraction unit 20E to the UI unit 14 in a table format.
[0103] The output control unit 20F may further display on the UI unit 14 the analysis results of principal component analysis or the like performed on the representation vector V. A known analysis method may be used for the principal component analysis. The output control unit 20F may also perform normalization or removal of outliers as preprocessing of data when performing the principal component analysis or clustering.
[0104] The output control unit 20F may further output the generated target graph 34 to the UI unit 14. The output control unit 20F may further output to the UI unit 14 information indicating the relationship between each of the types and the number of other categories with respect to the target category, which are included in the target graph 34, and the calculated relevance.
[0105] 10 is a schematic diagram showing the relationship between the type and number of other categories for a target category included in the target graph 34 used to calculate the degree of association, and the calculated degree of association. In FIG. 10, the horizontal axis represents the number of other categories added, and the vertical axis represents the degree of association.
[0106] In FIG. 10, plot P1 is a plot when the other categories are set to zero, i.e., when the target graph 34 is generated by learning using only the target category, and the relevance is calculated. Plot P2 is a plot when the target graph 34 is generated by learning using the target category and one other category with the highest score for the target category, and the relevance is calculated. Plot P3 is a plot when the target graph 34 is generated by learning using the target category and two other categories in descending order of the score for the target category, and the relevance is calculated. Plot P4 is a plot when the target graph 34 is generated by learning using the target category and three or more other categories in descending order of the score for the target category, and the relevance is calculated.
[0107] As shown in FIG. 10, when a target graph 34 is used that is generated by learning using a target category and one other category that has the highest score for the target category, it is possible to calculate a highly accurate relevance compared to when a target graph 34 is used in which the other categories are set to zero or the other categories are set to two or more.
[0108] Next, an example of the flow of information processing executed by the processing unit 20 of the information processing device 10 of the present embodiment will be described.
[0109] FIG. 11 is a flowchart showing an example of the flow of information processing executed by the processing unit 20 of the information processing device 10 of this embodiment.
[0110] The score calculation unit 20A acquires the relationship data 16A (step S100). For example, the score calculation unit 20A reads the relationship data 16A stored in the storage unit 16 to acquire the relationship data 16A.
[0111] The score calculation unit 20A generates a graph 31 that represents the relationship data 16A acquired in step S100 in a graph structure (step S102). The score calculation unit 20A generates a graph 31 that represents the relationship between the user and the product for each one-to-one pairing between a product belonging to the target category and a product belonging to another category included in the relationship data 16A acquired in step S100.
[0112] The score calculation unit 20A uses the graph 31 generated for each pair of the target category and another category to calculate a score according to the degree of relationship between the pair of data constituting each pair of data defined in each graph 31 (step S104). Then, the score calculation unit 20A registers the score calculated in step S104 in the score DB 16B in association with the corresponding pair of product and user (step S106).
[0113] Based on the score and evaluation index calculated for each pair of data, the relevance calculation unit 20B calculates the relevance between the target category to which the data belongs that is the analysis target and categories other than the target category (step S108).
[0114] The object graph generating unit 20C uses the relevance calculated in step S108 to identify other categories similar to the object category. Then, the object graph generating unit 20C links the data belonging to the identified other categories and the data belonging to the object category according to the relevance, and generates the object graph 34 represented in a graph structure (step S110).
[0115] The expression vector calculation unit 20D uses the object graph 34 generated in step S110 to calculate an expression vector V for each of the multiple data included in the object graph 34 (step S112).
[0116] The trend pattern extraction unit 20E extracts a trend pattern TP of the multiple data represented by the expression vector V calculated in step S112, based on the features represented by the expression vector V (step S114).
[0117] The output control unit 20F outputs at least one of the information regarding the relevance calculated in step S108, the object graph 34 generated in step S110, the expression vector V calculated in step S112, and the trend pattern TP extracted in step S114 to the UI unit 14 (step S116).
[0118] Then, this routine ends.
[0119] As described above, the information processing device 10 of the present embodiment includes the processing unit 20. For each pair of data defined in a graph in which the relational data 16A indicating the relationship between a plurality of data is expressed in a graph structure, the processing unit 20 calculates the degree of association between a target category to be analyzed and a category other than the target category, based on a score calculated according to the degree of relationship between the pair of data constituting the pair and an evaluation index evaluating the degree of association between the categories.
[0120] Here, with the recent advancement of IoT, the utilization of relational data 16A, which represents the relationship between data, is accelerating. Examples of relational data 16A include purchase data, which indicates who bought what, and application data, which indicates which companies an individual applied to in a job search. In particular, in recent years, attribute data such as product categories in purchase data and company industries in application data are also being collected. Under these circumstances, the need for in-depth analysis of data in specific categories is increasing. For example, with regard to purchase data, a task such as to whom a product in a certain category should be recommended corresponds to promotion, and what trend patterns a product in a certain category has is useful from a marketing perspective. Similarly, with application data, it is expected that analysis of application patterns of companies in a specific industry and matching of individuals with companies in a specific industry will be performed.
[0121] The relational data 16A such as purchase data includes information on products in a wide range of categories. For this reason, in practice, analysts often perform analysis focusing on products in a specific target category. For this reason, analysts need to select products in other categories that are highly related to the target category to which the product to be analyzed belongs, depending on the analysis scenario. As a conventional technique, a technique is disclosed in which a plurality of data included in the relational data 16A is clustered or grouped to obtain a degree of association between a target category to which a certain data belongs and other categories other than the target category. As clustering or grouping, a technique is disclosed in which clustering is performed from purchase data using non-negative matrix decomposition, and a technique is disclosed in which a unique index is defined based on purchase trends to group data. In the conventional technique, the degree of association between a target category and other categories is obtained from the degree of overlap with a group to which a product belonging to the target category belongs. In addition, a community detection technique is used for the relational data 16A to extract a community, such as a cluster of products. In addition, a technique is disclosed in which a category that has many products that belong to the same community as a product belonging to the target category is considered to have a high degree of association with the target category.
[0122] However, in the conventional technology, when the amount of data belonging to the target category is small among all the data, it may be difficult to extract other categories that are highly related to the target category.
[0123] In terms of evaluation indices, different indices are used depending on the analysis scenario, such as Recall when performing promotion, AUC when performing user profiling, etc. For this reason, in the conventional technology, if the characteristics of the evaluation indices are not taken into consideration when extracting other categories related to the target category, the calculation accuracy of the relevance may decrease.
[0124] That is, in the conventional technology, it may be difficult to provide a highly accurate degree of association between a target category and other categories.
[0125] On the other hand, in the information processing device 10 of the present embodiment, the graph 31 representing the relationship data 16A in a graph structure is used to calculate the relevance between the target category and other categories based on the score and evaluation index according to the degree of relationship for each pair of data defined in the graph 31. That is, in the information processing device 10 of the present embodiment, the graph 31 generated from the relationship data 16A for each one-to-one pair of the target category and other categories is used to calculate the relevance between the target category and other categories, instead of the relationship data 16A including data belonging to each of a plurality of categories. Therefore, even if the data belonging to the target category is a minority among all the data, the information processing device 10 of the present embodiment can extract other categories that are highly relevant to the target category with high accuracy. In addition, since the information processing device 10 of the present embodiment calculates the relevance using the graph 31, even if the characteristics of the evaluation index are not taken into consideration when extracting other categories related to the target category, that is, even if any evaluation index is used, the relevance can be calculated with high accuracy.
[0126] Therefore, the information processing device 10 of the present embodiment can provide highly accurate degrees of association between a target category and other categories.
[0127] Furthermore, the information processing device 10 of this embodiment uses the graph 31 to calculate the degree of association by using the number of paths, which is the number of routes from one data of the pair to the other data with a predetermined number of hops or less, and the adjacency matrix of the graph 31. Therefore, in addition to the above effects, the information processing device 10 of this embodiment can calculate the degree of association in a short time with high accuracy.
[0128] Second embodiment FIG. 12 is a diagram showing an example of a functional configuration of the information processing device 11 of the present embodiment.
[0129] The information processing device 11 is similar to the information processing device 10 of the above embodiment, except that it includes a processing device 22 instead of the processing device 20. The processing device 22 is similar to the processing device 20 of the above embodiment, except that it includes a recommendation data extraction unit 22E and an output control unit 22F instead of the trend pattern extraction unit 20E and the output control unit 20F.
[0130] Based on the similarity of the multiple data represented by the expression vector V calculated by the expression vector calculation unit 20D, the recommended data extraction unit 22E extracts other data groups having a similarity to each of the multiple data represented by the expression vector V that is a predetermined value or more, as recommended data for each of the multiple data.
[0131] In detail, the recommendation data extraction unit 22E uses the expression vector V of each data to specify the data to be recommended. For example, it is assumed that the relationship data 16A is purchase data. In this case, the recommendation data extraction unit 22E extracts a product having an expression vector V similar to the expression vector V corresponding to each user as the recommendation data to be recommended. The similarity of the expression vector V may be determined by using a value such as a distance between the expression vectors V, a cosine similarity, or an inner product. Then, the recommendation data extraction unit 22E may extract a product having a value of the expression vector V equal to or less than a predetermined value as the recommendation data to be recommended for the expression vector V corresponding to each user. The predetermined value may be set in advance. The predetermined value may be appropriately changeable by an analyst's operation instruction on the UI unit 14.
[0132] Furthermore, the recommendation data extraction unit 22E may extract data to be recommended using a value calculated for the expression vector V of the user and the product using a neural network.
[0133] As in the above embodiment, the output control unit 22F outputs at least one of information regarding the calculated relevance, the object graph 34, the expression vector V, and the extracted recommendation data to at least one of the UI unit 14 and an external information processing device.
[0134] In this embodiment, the output control unit 22F associates data included in the target graph 34 with recommendation data corresponding to the data, and outputs the data to at least one of the UI unit 14 and an external information processing device. That is, the output control unit 22F outputs, for data included in the target graph 34, recommendation data recommended for the data.
[0135] Fig. 13 is a schematic diagram of an example of the output information 40 including recommendation data. Fig. 13 shows an example of the output information 40 that represents the recommendation data in a table format.
[0136] For example, the recommendation data extraction unit 22E extracts products having expression vectors V similar to the expression vector V of user A, which is an example of data, as recommendation data to be recommended to the user A, based on the expression vectors V of each of the data included in the target graph 34 (see FIG. 8). Then, the output control unit 22F outputs output information 40 including the extracted recommendation data to the UI unit 14. At this time, the output control unit 22F may, for example, assign a ranking number indicating that the higher the similarity of the expression vector V, the higher the rank of the product, and output the output information 40 in a table format in which the ranking numbers are associated with the products to the UI unit 14. Note that the output control unit 22F is not limited to outputting the output information 40 in a table format.
[0137] Also, for example, assume that the target category is "fresh vegetables" and other categories to which products having expression vectors V similar to those of products belonging to "fresh vegetables" belong are "eggs" and "meat."
[0138] In this case, for example, the output control unit 22F may output output information 40 including products belonging to the target category "fresh vegetables", the relevance calculated using only the target category when generating the target graph 34, and the relevance calculated using the other categories "meat" and "eggs" to the UI unit 14. The output control unit 22F may also output output information 40 including, among the products belonging to the other categories, the product with the maximum number of paths to the UI unit 14.
[0139] 14 is a schematic diagram of an example of output information 41. The output information 41 includes products belonging to the target category "fresh vegetables", the relevance calculated using only the target category, the relevance calculated using the target category "fresh vegetables" and other categories "meat" and "eggs", the improvement rate of the relevance, and products with the largest number of buses in the "meat" and "eggs" categories.
[0140] For example, the output control unit 22F can display the output information 41 on the UI unit 14 to provide information indicating that the product "egg" was necessary to improve the relevance of other categories similar to the target category to which the product "tomato" belongs. Similarly, for example, the output control unit 22F can display the output information 41 on the UI unit 14 to provide information indicating that the product "sausage" was necessary to improve the relevance of other categories similar to the target category to which the product "cucumber" belongs. Similarly, it can provide information indicating that the product "cormorant fishing" was effective in improving the relevance of other categories similar to the target category to which the product "asparagus" belongs.
[0141] Next, an example of the flow of information processing executed by the processing unit 22 of the information processing device 11 of this embodiment will be described.
[0142] FIG. 15 is a flowchart showing an example of the flow of information processing executed by the processing unit 22 of the information processing device 11 of this embodiment.
[0143] The processing unit 22 executes the processes of steps S200 to S212 in the same manner as steps S100 to S112 in the above embodiment (see FIG. 11).
[0144] In detail, the score calculation unit 20A acquires the relational data 16A (step S200). The score calculation unit 20A generates a graph 31 that expresses the relational data 16A acquired in step S200 in a graph structure (step S202). The score calculation unit 20A calculates a score according to the degree of relationship between a pair of data constituting a pair for each pair of data defined in each graph 31 using the graph 31 generated for each pair of the target category and another category (step S204). Then, the score calculation unit 20A registers the score calculated in step S204 in the score DB 16B in association with the corresponding pair of product and user (step S206). The relevance calculation unit 20B calculates the relevance between the target category to which the data belongs to the analysis target and the other category other than the target category based on the score calculated for each pair of data and the evaluation index (step S208). The object graph generating unit 20C generates an object graph 34 represented by a graph structure in which data belonging to other categories and data belonging to the object category are linked according to the degree of association using the degree of association calculated in step S208 (step S210). The expression vector calculating unit 20D uses the object graph 34 generated in step S210 to calculate an expression vector V of each of the multiple data included in the object graph 34 (step S212).
[0145] The recommendation data extracting unit 22E extracts recommendation data based on the expression vector V calculated in step S212 (step S214).
[0146] The output control unit 22F outputs at least one of the information on the relevance calculated in step S208, the object graph 34 generated in step S210, the expression vector V calculated in step S212, and the recommendation data extracted in step S214 to the UI unit 14 (step S216). Then, this routine ends.
[0147] As described above, the information processing device 11 of the present embodiment includes the processing unit 22. Based on the similarity of a plurality of data represented by the expression vector V, the processing unit 22 extracts other data groups having a similarity to each of the plurality of data represented by the expression vector V equal to or greater than a predetermined value as recommended data for each of the plurality of data.
[0148] Therefore, in addition to the effects of the above-described embodiments, the information processing device 11 of this embodiment can provide recommended data for each piece of data included in the relationship data 16A.
[0149] Next, an example of the hardware configuration of the information processing device 10 and the information processing device 11 of the above embodiment will be described.
[0150] FIG. 16 is a diagram showing an example of a hardware configuration of the information processing device 10 and the information processing device 11 of the above embodiment.
[0151] The information processing device 10 and the information processing device 11 of the above embodiments have a CPU (Central Processing Unit) 81, a ROM (Read Only Memory) 82, a RAM (Random Access Memory) 83, a communication I / F 84, etc., which are interconnected via a bus 85, and have a hardware configuration utilizing a conventional computer.
[0152] The CPU 81 is a calculation device that controls the information processing device 10 and the information processing device 11 of the above-mentioned embodiment. The ROM 82 stores programs and the like that realize various processes by the CPU 81. Although the CPU is used for the explanation here, a GPU (Graphics Processing Unit) may be used as the calculation device that controls the information processing device 10 and the information processing device 11. The RAM 83 stores data necessary for various processes by the CPU 81. The communication I / F 84 is an interface for transmitting and receiving data.
[0153] In the information processing device 10 and the information processing device 11 of the above-mentioned embodiment, the CPU 81 reads a program from the ROM 82 onto the RAM 83 and executes it, thereby realizing each of the above-mentioned functions on the computer.
[0154] The programs for executing the above-mentioned processes executed by the information processing device 10 and the information processing device 11 of the above-mentioned embodiment may be stored in an HDD (hard disk drive). Also, the programs for executing the above-mentioned processes executed by the information processing device 10 and the information processing device 11 of the above-mentioned embodiment may be provided by being pre-installed in the ROM 82.
[0155] The programs for executing the above processes executed by the information processing device 10 and the information processing device 11 of the above embodiment may be stored in a computer-readable storage medium such as a CD-ROM, a CD-R, a memory card, a DVD (Digital Versatile Disk), or a flexible disk (FD) in an installable or executable format file and provided as a computer program product. The programs for executing the above processes executed by the information processing device 10 and the information processing device 11 of the above embodiment may be stored on a computer connected to a network such as the Internet and provided by downloading the programs via the network. The programs for executing the above processes executed by the information processing device 10 to the information processing device 10E of the above embodiment may be provided or distributed via a network such as the Internet.
[0156] Although the embodiment of the present invention has been described above, this embodiment is presented as an example and is not intended to limit the scope of the invention. This new embodiment can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the gist of the invention. This embodiment and its modifications are included in the scope and gist of the invention, and are included in the scope of the invention and its equivalents described in the claims.
[0157] The present technology can also be configured as follows. (1) a processing unit that calculates, for each pair of data defined in a graph in which relational data showing a relationship between a plurality of data is expressed in a graph structure, a degree of association between a target category to be analyzed and a category other than the target category, based on a score calculated according to a degree of relationship between the pair of data constituting the pair and an evaluation index that evaluates a degree of association between the data; An information processing device comprising: (2) The processing unit includes: generating the graph for each one-to-one pairing of the target category and the other category from the relationship data; An information processing device as described in (1). (3) The graph is a plurality of data included in the relational data is represented by the graph structure in which the data are linked according to the relation represented by the relational data; An information processing device as described in (1). (4) The processing unit includes: generating the graph in which the weights of the associations between data have been adjusted; An information processing device according to any one of (1) to (3). (5) The processing unit includes: generating the graph in which the weight of the association between data is adjusted to a specified value; An information processing device according to any one of (1) to (4). (6) The processing unit includes: Calculating, for each pair, a number of paths, which is the number of routes from one data piece constituting the pair to the other data piece within a predetermined number of hops, as the score; An information processing device according to any one of (1) to (5). (7) The processing unit includes: Calculating, for each pair, a weighted average value of the number of paths, which is the number of routes from one data of the pair to the other data of the pair with a predetermined number of hops or less, as the score; An information processing device according to any one of (1) to (6). (8) The processing unit calculating, as the score, a value represented by an inner product of a first matrix obtained by multiplying the adjacency matrix of the graph by a predetermined matrix having a dimension corresponding to the number of dimensions of the data of the graph, and a transposed matrix of the first matrix; An information processing device according to any one of (1) to (7). (9) The processing unit includes: Calculating a combined value of a plurality of the evaluation indexes as the relevance degree; An information processing device according to any one of (1) to (8). (10) The processing unit includes: calculating a value of the evaluation index that satisfies a preset constraint as the relevance degree; An information processing device according to any one of (1) to (9). (11) The processing unit calculating the relevance based on the score and the evaluation index calculated for each of a portion of the pairs sampled from the plurality of pairs; An information processing device according to any one of (1) to (10). (12) The processing unit includes: Calculating the relevance based on the evaluation index whose input has been received. An information processing device according to any one of (1) to (11). (13) The processing unit includes: outputting a degree of association between the target category and the other category; An information processing device according to any one of (1) to (12). (14) The processing unit includes: identifying the other categories similar to the target category using the relevance degree, and generating a target graph in which data belonging to the identified other categories and data belonging to the target category are linked according to the relevance degree and expressed in a graph structure; An information processing device according to any one of (1) to (13). (15) The processing unit includes: Calculating a representation vector for each of a plurality of data included in the object graph using the object graph; An information processing device according to (14). (16) The processing unit includes: calculating a representation vector for each of the data included in the target graph so as to maintain the graph structure of the target graph; An information processing device according to (14) or (15). (17) The processing unit includes: extracting a trend pattern of the plurality of data represented by the expression vector based on the features represented by the expression vector; The information processing device according to (15) or (16). (18) The processing unit includes: extracting, based on the similarity between the plurality of data represented by the expression vector, a group of other data having a similarity to each of the plurality of data represented by the expression vector equal to or greater than a predetermined value, as recommended data for each of the plurality of data; The information processing device according to any one of (15) to (17). (19) An information processing method executed by an information processing device, For each pair of data defined in a graph in which relational data showing a relationship between a plurality of data is expressed in a graph structure, a degree of association between a target category to be analyzed and a category other than the target category is calculated based on a score calculated according to a degree of relationship between the pair of data constituting the pair and an evaluation index evaluating a degree of association between the data. Information processing methods. (20) On the computer, An information processing program for calculating the degree of association between a target category being analyzed and categories other than the target category, for each pair of data defined in a graph that represents relational data showing the relationships between multiple data in a graph structure, based on a score calculated according to the degree of relationship between the pair of data that constitutes the pair, and an evaluation index that evaluates the degree of association between the data. [Explanation of symbols]
[0158] 10, 11 Information processing device 20A Score Calculation Section 20B Relevance calculation unit 20C Object Graph Generation Unit 20D Expression Vector Calculation Unit 20E Trend pattern extraction unit 20F, 22F Output control section 22E Recommendation data extraction unit
Claims
1. a processing unit that calculates, for each pair of data defined in a graph in which relational data expressing a relation between a plurality of data is represented in a graph structure, a degree of association between a target category to be analyzed and a category other than the target category, based on a score calculated according to a degree of relationship between the pair of data constituting the pair and an evaluation index for evaluating a degree of association between the categories; An information processing device comprising:
2. The processing unit includes: generating the graph for each one-to-one pairing of the target category and the other category from the relationship data; The information processing device according to claim 1 .
3. The graph is a plurality of data included in the relational data is represented by the graph structure in which the data are linked according to the relation represented by the relational data; The information processing device according to claim 1 .
4. The processing unit includes: generating the graph in which the weights of the associations between data have been adjusted; The information processing device according to claim 3 .
5. The processing unit includes: generating the graph in which the weight of the association between data is adjusted to a specified value; The information processing device according to claim 3 .
6. The processing unit includes: Calculating, for each pair, a number of paths, which is the number of routes from one data piece constituting the pair to the other data piece within a predetermined number of hops, as the score; The information processing device according to claim 1 .
7. The processing unit includes: Calculating, for each pair, a weighted average value of the number of paths, which is the number of routes from one data of the pair to the other data of the pair with a predetermined number of hops or less, as the score; The information processing device according to claim 1 .
8. The processing unit calculating, as the score, a value represented by an inner product of a first matrix obtained by multiplying the adjacency matrix of the graph by a predetermined matrix having a dimension corresponding to the number of dimensions of the data of the graph, and a transposed matrix of the first matrix; The information processing device according to claim 1 .
9. The processing unit includes: Calculating a combined value of a plurality of the evaluation indexes as the relevance degree; The information processing device according to claim 1 .
10. The processing unit includes: calculating a value of the evaluation index that satisfies a preset constraint as the relevance degree; The information processing device according to claim 1 .
11. The processing unit calculating the relevance based on the score and the evaluation index calculated for each of a portion of the pairs sampled from the plurality of pairs; The information processing device according to claim 1 .
12. The processing unit includes: Calculating the relevance based on the evaluation index whose input has been received. The information processing device according to claim 1 .
13. The processing unit includes: outputting a degree of association between the target category and the other category; The information processing device according to claim 1 .
14. The processing unit includes: identifying the other categories similar to the target category using the relevance degree, and generating a target graph in which data belonging to the identified other categories and data belonging to the target category are linked according to the relevance degree and expressed in a graph structure; The information processing device according to claim 1 .
15. The processing unit includes: Calculating a representation vector for each of a plurality of data included in the object graph using the object graph; The information processing device according to claim 14.
16. The processing unit includes: calculating a representation vector for each of the data included in the target graph so as to maintain the graph structure of the target graph; The information processing device according to claim 15.
17. The processing unit includes: extracting a trend pattern of the plurality of data represented by the expression vector based on the features represented by the expression vector; The information processing device according to claim 15.
18. The processing unit includes: extracting, based on the similarity between the plurality of data represented by the expression vector, a group of other data having a similarity to each of the plurality of data represented by the expression vector equal to or greater than a predetermined value as recommended data for each of the plurality of data; The information processing device according to claim 15.
19. An information processing method executed by an information processing device, For each pair of data defined in a graph in which relational data showing a relationship between a plurality of data is expressed in a graph structure, the degree of association between a target category to be analyzed and a category other than the target category is calculated based on a score calculated according to the degree of relationship between the pair of data constituting the pair and an evaluation index for evaluating the degree of association between categories; Information processing methods.
20. On the computer, An information processing program for calculating, for each pair of data defined in a graph that represents relational data showing relationships between a plurality of data in a graph structure, the degree of association between a target category being analyzed and categories other than the target category, based on a score calculated according to the degree of relationship between the pair of data that constitutes the pair, and an evaluation index that evaluates the degree of association between categories.
Citation Information
Patent Citations
On-line shopping system and on-line shopping method
JP2003099643A
Signal detector, server device and position estimation system
JP2016061740A
Customer analysis system
JP2016136410A
Exploratory article prediction system
JP2017174357A
Engagement-Oriented Recommendation Principle
US20090055257A1