Meal recommendation device, meal recommendation method, and meal recommendation program

The meal recommendation device suggests personalized meal menus by analyzing user data and historical meal orders, addressing the limitation of existing technologies in recommending unknown preferences.

JP7761053B2Active Publication Date: 2025-10-28NEC CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2023547990
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-09-15
Publication Date
2025-10-28
Estimated Expiration
2041-09-15

AI Technical Summary

Technical Problem

Existing meal recommendation technologies fail to suggest suitable meal categories that a user may not be aware of, even if they align with their preferences.

Method used

A meal recommendation device that receives a user's physical information and health condition, utilizes a trained model to analyze the data of multiple users, and generates personalized meal menu suggestions based on their meal ordering histories.

Benefits of technology

Enables the recommendation of suitable meal menus that cater to a user's preferences, even if they are unaware of them, by leveraging a trained model that learns from the physical information and meal ordering histories of other users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007761053000005
    Figure 0007761053000005
  • Figure 0007761053000006
    Figure 0007761053000006
  • Figure 0007761053000007
    Figure 0007761053000007
Patent Text Reader

Abstract

In order to recommend a meal menu suitable for a user, this meal recommendation device (1) comprises: a reception unit (11) that receives physical information for or the state of health of a target user and requests pertaining to meal menus; a generation unit (12) that uses a trained model that has been trained in the physical information or state of health of a plurality of other users and in the meal order history for the plurality of other users and, on the basis of the state of health of and requests from the target user, generates response information that includes information pertaining to a meal menu that corresponds to the physical information or state of health of the target user; and an output unit (13) that outputs the response information.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a meal recommendation device that recommends meal menus to a user. [Background technology]

[0002] Technologies for recommending products and services to users using computers have been developed for some time. For example, Patent Document 1 below discloses a recipe management server that identifies a user and recommends a dish category based on meal information indicating meals that the user and their family have eaten in the past. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2020-64666 Summary of the Invention [Problem to be solved by the invention]

[0004] According to the technology of Patent Document 1, categories that are frequently consumed by a user or his / her family are recommended. However, if a category is frequently consumed by a user or his / her family, the user will be aware of it without using the technology of Patent Document 1. In other words, the technology of Patent Document 1 has room for improvement in that it is difficult to recommend categories that match the preferences of a user, even though the user himself / herself is not aware of them.

[0005] One aspect of the present invention has been made in consideration of the above-mentioned problems, and one example of its purpose is to provide a technology that enables a meal menu that is suitable for a user to be recommended even if the user himself or herself is not aware of the suitability. [Means for solving the problem]

[0006] A meal recommendation device according to one aspect of the present invention comprises a receiving means for receiving a request regarding a target user's physical information or health condition and a meal menu, a trained model that has learned the physical information or health condition of a plurality of other users and the meal ordering histories of the plurality of other users, a generating means for generating response information including information regarding a meal menu corresponding to the target user's physical information or health condition based on the request, and an output means for outputting the response information.

[0007] A meal recommendation method according to one aspect of the present invention involves a computer receiving a target user's physical information or health condition and a request regarding a meal menu, generating response information including information regarding a meal menu corresponding to the target user's physical information or health condition based on the request and a trained model that has learned the physical information or health condition of multiple other users and the meal ordering histories of the multiple other users, and outputting the response information.

[0008] A meal recommendation program according to one aspect of the present invention causes a computer to perform the following processes: receiving a request regarding a target user's physical information or health condition and a meal menu; generating response information including information regarding a meal menu corresponding to the target user's physical information or health condition based on a trained model that has learned the physical information or health condition of multiple other users and the meal ordering histories of the multiple other users, and the request; and outputting the response information. [Effects of the Invention]

[0009] According to one aspect of the present invention, it is possible to recommend a meal menu that is suitable for a user, even if the user himself is not aware of the suitability. [Brief explanation of the drawings]

[0010] [Figure 1] 1 is a block diagram showing the configuration of a meal recommendation device according to a first exemplary embodiment of the present invention. [Figure 2]1 is a flow chart showing the flow of a meal recommendation method according to a first exemplary embodiment of the present invention. [Figure 3] FIG. 1 is a diagram illustrating feature learning in graph-based relational learning. [Figure 4] FIG. 10 is a diagram illustrating an overview of a meal recommendation method according to a second exemplary embodiment of the present invention. [Figure 5] FIG. 10 is a block diagram showing the configuration of a meal recommendation device according to a second exemplary embodiment of the present invention. [Figure 6] FIG. 10 is a flowchart showing the flow of processing executed by a meal recommendation device according to a second exemplary embodiment of the present invention. [Figure 7] FIG. 10 is a diagram illustrating an example of response information. [Figure 8] FIG. 10 is a diagram illustrating an overview of a meal recommendation method according to a third exemplary embodiment of the present invention. [Figure 9] FIG. 10 is a block diagram showing the configuration of a meal recommendation device according to a third exemplary embodiment of the present invention. [Figure 10] FIG. 11 is a flowchart showing the flow of processing executed by a meal recommendation device according to a third exemplary embodiment of the present invention. [Figure 11] FIG. 10 is a diagram illustrating an overview of a meal recommendation method according to a fourth exemplary embodiment of the present invention. [Figure 12] FIG. 10 is a block diagram showing the configuration of a meal recommendation device according to a fourth exemplary embodiment of the present invention. [Figure 13] FIG. 10 is a flowchart showing the flow of processing executed by a meal recommendation device according to a fourth exemplary embodiment of the present invention. [Figure 14] 10A and 10B are diagrams illustrating an example of predicting the characteristics of a target user based on feature amounts calculated from a target user graph and other user graphs. [Figure 15] FIG. 1 is a configuration diagram for realizing a meal recommendation device using software. DETAILED DESCRIPTION OF THE INVENTION

[0011] Exemplary Embodiment 1 A first exemplary embodiment of the present invention will be described in detail with reference to the drawings. This exemplary embodiment is a basic form of the exemplary embodiments described below.

[0012] (Meal recommendation device) The configuration of a meal recommendation device 1 according to this exemplary embodiment will be described with reference to the drawings. Fig. 1 is a block diagram showing the configuration of a meal recommendation device 1 according to this exemplary embodiment.

[0013] As shown in FIG. 1, the meal recommendation device 1 includes a reception unit (reception means) 11, a generation unit (generation means) 12, and an output unit (output means) 13.

[0014] The reception unit 11 receives a request for the target user's physical information or health condition and a meal menu. Here, the target user's physical information includes, by way of example, the user's height and weight, but is not limited to these. For example, the target user's physical information may further include the user's body fat percentage and BMI (Body Mass Index). Furthermore, the physical information may further include information indicating the date and time when the physical information was updated by physical measurement or the like.

[0015] On the other hand, information indicating the target user's health condition (also simply referred to as health condition) may include, but is not limited to, at least one of the user's blood pressure, cholesterol level, uric acid level, and allergy information. The target user's health condition may also include the date and time when the health condition was updated by a medical checkup or the like. The request for a meal menu may also include the target user's order history.

[0016] The generation unit 12 generates response information including information about a meal menu corresponding to the physical information or health condition of the target user based on the request and a trained model that has learned the physical information or health condition of multiple other users and the meal order histories of the multiple other users. Note that, as an example, the other users refer to people other than the target user, and those who do not use the meal recommendation device 1 may also be other users. Here, the target user's meal order history includes, as an example, product identification information such as the date and time of the order, the ordered product name (meal name), product ID (meal menu ID), and price. The output unit 13 outputs the response information generated by the generation unit 12.

[0017] The meal recommendation device 1 having the above configuration can generate response information including information on a meal menu corresponding to the physical information or health condition of a target user based on the relationship between the physical information or health condition of multiple other users and the meal order histories of the multiple other users, and can present the generated response information to the target user. Therefore, the above configuration has the effect of making it possible to recommend a meal menu that suits the user, even if the user himself is not aware of the suitability.

[0018] (Meal recommendation program) The functions of the meal recommendation device 1 described above can also be realized by a program. The meal recommendation program according to this exemplary embodiment causes a computer to execute the following processes: accepting a target user's physical information or health condition and a request for a meal menu; generating response information including information on a meal menu corresponding to the target user's physical information or health condition based on the request and a trained model that has learned the physical information or health conditions of multiple other users and the meal order histories of the multiple other users; and outputting the response information. This meal recommendation program has the effect of making it possible to recommend a meal menu that suits a user, even if the user himself or herself is not aware of the suitability.

[0019] (Meal recommendation method) The meal recommendation method according to this exemplary embodiment will be described with reference to Fig. 2. Fig. 2 is a flow diagram showing the flow of the meal recommendation method according to the first exemplary embodiment of the present invention.

[0020] In S11, the computer receives the target user's physical information or health condition and a request for a meal menu. The request may be received via any input device. For example, the request may be received via a mouse, keyboard, touch panel, or voice input device.

[0021] In S12, the computer generates response information including information about a meal menu according to the physical information or health condition of the target user based on the request and a trained model that has learned the physical information or health condition of multiple other users and the meal ordering history of the multiple other users.

[0022] In S13, the computer outputs the response information to any device, such as a display device to display the information, or an audio output device to output the information as audio.

[0023] As described above, in the meal recommendation method according to this exemplary embodiment, a computer receives a request for a target user's physical information or health condition and a meal menu (S11), generates response information including information about a meal menu corresponding to the target user's physical information or health condition based on the request and a trained model that has learned the physical information or health conditions of multiple other users and the meal order histories of the multiple other users (S12), and outputs the response information (S13). This meal recommendation method has the effect of making it possible to recommend a meal menu that suits a user, even if the user himself or herself is not aware of the suitability.

[0024] Note that the execution entity of each step in the above meal recommendation method may be one computer (meal recommendation device 1), or each step may be executed by a different computer. This also applies to the flows described in exemplary embodiment 2 and subsequent embodiments.

[0025] [Graphs and Learning] Below, we will explain a graph, which is an example of information that can be used for meal recommendations in exemplary embodiment 1 and later-described exemplary embodiments (hereinafter referred to as each exemplary embodiment). We will also explain learning of the graph and prediction using the graph.

[0026] (graph) A graph here refers to data with a structure consisting of multiple nodes and links connecting the nodes. The type of link that represents the relationship between nodes is also called a "relation." Links are also sometimes called edges. Graphs can be broadly divided into directed graphs, in which each link has a direction, and undirected graphs, in which each link does not have a direction. It is possible to use either directed graphs or undirected graphs, or to use a combination of the two.

[0027] In each exemplary embodiment, when a graph is used, the nodes may represent tangible or intangible elements related to a person (user). For example, Personal identification information such as name and personal ID ·age ·sex Order History ·Physical information Health status It is possible to use a graph including nodes representing various elements such as the above. As described above, the order history includes, by way of example, product identification information such as the date and time of the order, the ordered product name (meal name), product ID (meal menu ID), and price, but is not limited to these. As described above, the physical information of a certain user includes, but is not limited to, the user's height and weight. For example, the physical information of a certain user may further include the user's body fat percentage and BMI (Body Mass Index). The physical information of a certain user may also include information indicating the date and time the physical information was updated by physical measurements, etc.

[0028] As described above, information indicating a user's health condition (also simply referred to as health condition) may include, but is not limited to, at least one of the user's blood pressure, cholesterol level, uric acid level, and allergy information. The health condition of a user may also include the date and time when the health condition was updated by a medical checkup or the like.

[0029] Note that a person's identification information such as name, person ID, age, and gender may be referred to as the user's attributes. Also, physical information and health status may be referred to as characteristics.

[0030] The graph may also include multiple nodes corresponding to one element. For example, the physical information of the user may be represented by separate nodes, such as a node indicating height and a node indicating weight. The same applies to other elements.

[0031] When there are nodes as elements like the above, the relationship represented by the link is The relationship between an element and a person Relationship between an element and order history Relationship between certain elements and physical information The relationship between certain factors and health status For example, a link connecting a node indicating a health condition with a node indicating an order history may represent a relationship in which the order history is a factor in the health condition.

[0032] Note that the nodes of the graph in each exemplary embodiment may include elements related to products in addition to tangible or intangible elements related to people (users) as described above. · Product identification information such as product ID (meal menu ID) In addition, Product Category Store identification information such as restaurant ID or store ID · Restaurant and store location information Ingredients for the product (meal menu) It is possible to use a graph containing nodes representing various elements such as the above. Here, the ingredients of a product (meal menu) include information on the raw materials used in the product, allergens, etc. When nodes exist as elements such as those described above, the relationships represented by the links are as follows: The relationship between a product and its product category The relationship between a product and a restaurant or store For example, a link connecting a node indicating a product ID with a node indicating a restaurant ID may indicate in which restaurant the product was served.

[0033] (Learning and Prediction) For graphs such as those described above, graph-based relationship learning can be performed by applying machine learning techniques. Such learning enables classification and prediction processes to be performed using graphs. Note that in each exemplary embodiment, such learning may be performed as part of meal menu recommendation, or a trained graph that has already undergone such learning may be used.

[0034] In graph-based relationship learning, first, the feature of each node is calculated. The feature may be calculated in the form of a feature vector, for example. By expressing the feature of each node as a feature vector, learning can be performed on graphs containing a mixture of nodes in various formats. For example, graph-based relationship learning can also be performed on graphs that include images and numerical values ​​indicating various elements as described above. As an example, product photos can be used as nodes.

[0035] Next, the feature values ​​of each node are updated based on the links connected to each node and the nodes to which those links are connected. This process is similar to the convolution process in a convolutional neural network. This will be explained with reference to Figure 3. Figure 3 is a diagram explaining feature learning in graph-based relational learning.

[0036] The graph shown in Fig. 3 includes four nodes A to D. Node A is connected to nodes B and C, and node C is connected to node D. After calculating the initial features of these four nodes, convolution is performed multiple times as described below to update the features of each node.

[0037] In the first convolution, the initial feature of node A is multiplied by a predetermined weight and added to the feature of nodes B and C connected to node A. For node C, the initial feature of node C is multiplied by a predetermined weight and added to the feature of node D. If it is a directed graph, the weight is adjusted according to the direction of the link.

[0038] In the second convolution, as in the first convolution, the feature of each node is multiplied by a predetermined weight and then added with the feature of the node linked to that node. Here, the feature of node C reflects the feature of node D due to the first convolution. Therefore, in the second convolution, not only the feature of node C but also the feature of node D is reflected in node A.

[0039] By repeating the above process a number of times according to the node hierarchy, the features of each node directly or indirectly connected by links are mutually reflected. In graph-based relationship learning, the weight values ​​used for the weighting described above are optimized based on the known relationships between nodes. By using a trained graph, it is also possible to predict the relationships between nodes and the nodes to which links will lead, as described below.

[0040] (Inter-node relationship prediction) By performing the above-described learning, it becomes possible to predict relationships between nodes that are not explicitly stated in the original graph. To perform node relationship prediction, a user simply specifies two nodes and requests that the relationship between those nodes be returned. For example, if a user inputs a request asking about the relationship between the node of "User A" and the node of "User B," node relationship prediction can predict that the relationship, i.e., the link, connecting these nodes is "similar." Furthermore, node relationship prediction can also calculate the probability (likelihood) of the prediction result. The same applies to node prediction, which will be described below.

[0041] (node ​​prediction) Furthermore, by performing the above-described learning, it is also possible to predict the nodes connected to a certain node via a predetermined link. To perform node prediction, a user simply specifies one node and a link starting from that node, and requests that the linked node be returned. For example, suppose a user inputs a request asking about the nodes connected to the node of "User A" via a "health condition" link. In this case, node prediction can predict whether the node connected to the node of "User A" via the "health condition" link is "good" or "prone to obesity," for example.

[0042] Exemplary Embodiment 2 (overview) 4 is a diagram showing an overview of a meal recommendation method according to this exemplary embodiment. In this exemplary embodiment, an example of recommending meals using a target user graph and other user graphs will be described.

[0043] The other user graph includes nodes indicating other users (synonymous with "other users" described in exemplary embodiment 1) different from the target user for whom meal recommendations are to be made, nodes indicating physical information, health status, or meal menus related to the other users, and links indicating the relationships between the nodes, and is a trained graph and trained model regarding the relationships between the nodes. The other user graph can also be called a knowledge graph. Note that a collection of nodes and links corresponding to one other user may be called an other user graph, or a collection of nodes and links corresponding to multiple other users may be collectively called an other user graph.

[0044] For example, in Figure 4, the graph including the node for "User A" and the graph including the node for "User B" are other user graphs. The other user graph for User A includes a node indicating that User A's age is "30s," a node indicating that User A's health condition is "good," a node indicating User A's "order history" as a history, and a node for "dish a" linked to the node indicating the "order history."

[0045] Similarly, the other user graph for user B includes a node indicating that user B's age is "50s," a node indicating that user B's health condition is "tendency towards obesity," a node indicating user B's "order history" as his / her history, and a node for "dish b" that is linked to the node indicating the "order history."

[0046] Note that the other user graph shown in FIG. 4 is merely an example, and the other user graph may include nodes indicating physical information in addition to or instead of the nodes indicating the health conditions described above.

[0047] In this way, the other user graph shown in FIG. 4 is obtained by learning the relationships between physical information, health conditions, and meal menus for a plurality of other users.

[0048] The other users' graph may include nodes indicating past physical information, health conditions, or meal menus related to the target user, and links indicating the relationships between the nodes. As an example, the other users' graph may include nodes indicating past physical information, health conditions, or meal menus related to the target user, nodes indicating physical information, health conditions, or meal menus related to other users, and links indicating the relationships between the nodes, and may be a graph in which the relationships between the nodes have been learned.

[0049] A target user graph is a graph that includes multiple nodes related to a target user for whom meal recommendations are to be made. In FIG. 4, the graph that includes a node called "target user" is the target user graph. This target user graph includes a node indicating that the target user's age is "30s," a node indicating that the target user's health condition is "good," a node indicating the target user's "order history" as a history, and a "dish x1" node linked to the node indicating the "order history." Such a target user graph can be generated from various information related to the target user.

[0050] For example, various information including the target user's age and health condition, and a request including an order history, can be received from the target user, and a target user graph can be generated by referring to the received various information and request. In this case, the request may include the category of the meal menu desired by the target user. In this case, as an example, a graph of other users' graphs that has a node related to a meal menu that fits the category is the target of link prediction.

[0051] Note that the object graph shown in FIG. 4 is merely an example, and the object graph may include nodes indicating physical information in addition to or instead of the nodes indicating the health conditions described above.

[0052] By learning other users' graphs as described above, it becomes possible to perform link prediction of what meal menu is suitable for what physical information or health condition. In other words, the meal recommendation method according to this exemplary embodiment predicts the meal menu to be recommended to the target user by link prediction, and generates and outputs response information including information about the predicted meal menu.

[0053] 4, for example, it is sufficient to predict which of the nodes in the other user graph indicating physical information, health status, or meal menu related to the other user is likely to be connected to a node in the target user graph, and then generate and output response information including information on the meal menu corresponding to the predicted node.

[0054] (Device configuration) The configuration of a meal recommendation device 2 according to a second exemplary embodiment of the present invention will be described with reference to Fig. 5. Fig. 5 is a block diagram showing the configuration of the meal recommendation device 2 according to this exemplary embodiment.

[0055] As shown in the figure, the meal recommendation device 2 includes a reception unit 201 , a graph generation unit 202 , a learning unit 203 , a link prediction unit 204 , an evaluation unit 205 , a generation unit 206 , a reason generation unit 207 , and an output unit 208 .

[0056] In addition to these components, the meal recommendation device 2 may also include an input device that accepts user input operations, an output device for data output by the meal recommendation device 2, a communication device for communication between the meal recommendation device 2 and other devices, etc. The output mode of the output device is arbitrary, and may be, for example, a display output or an audio output.

[0057] The receiving unit 201 receives the target user's age, physical information, or health condition, and a request regarding a meal menu. Here, this request may also include the target user's order history. This request may also include information indicating the category of the meal menu (product) desired by the target user, the name of the restaurant, or the name of the store.

[0058] The receiving unit 201 may also receive input of conditions for other user graphs. The received conditions become conditions that define restrictions when link prediction is performed.

[0059] The graph generation unit 202 generates a target user graph that represents the target user in a graph based on the target user's age, physical information, or health condition and a request for a meal menu. For example, the graph generation unit 202 generates a target user graph that represents the target user with a node indicating the target user, a node indicating the target user's age, a node indicating the target user's health condition, a node indicating the target user's order history, and edges that represent the relationships between the nodes. Here, the target user graph may include a node indicating the target user's physical information in addition to or instead of the node indicating the target user's health condition.

[0060] The information about the target user may be included in the various information and requests received by the receiving unit 201, or may be acquired from a database or the like that accumulates information about multiple users.

[0061] The learning unit 203 learns the relationships between the nodes included in the other users' graph, in other words, the relationships between age, health condition or physical information, and order history, based on various information about other users, and generates a learned other users' graph. Unless otherwise specified, the other users' graph refers to one that has been learned by the learning unit 203. The learned other users' graph may also be loaded into the meal recommendation device 2, in which case the learning unit 203 may be omitted.

[0062] The link prediction unit 204 uses the above-mentioned target user graph and other user graphs to perform link prediction to predict the relationship between nodes that are not connected by links in the target user graph and the other user graph, and predicts nodes that link to nodes included in the target user graph among nodes included in the other user graph that indicate meal menus related to the other user.

[0063] In addition, if the receiving unit 201 is configured to receive input of conditions regarding other user graphs, the link prediction unit 204 may predict a node that links to a node included in the target user graph from among nodes indicating meal menus included in other user graphs that satisfy the conditions.

[0064] The evaluation unit 205 evaluates the degree of recommendation of the meal menu indicated by the node to the target user based on other nodes included in the other user graph including the node predicted by the link prediction unit 204. The evaluation method will be described later.

[0065] The generation unit 206 generates response information including information on a meal menu corresponding to the physical information or health condition of the target user based on the request and a trained model that has learned the physical information or health conditions of multiple other users and the food order histories of the multiple other users. More specifically, the generation unit 206 generates response information including information on a meal menu corresponding to the node predicted by the link prediction unit 204. As described above, the link prediction unit 204 performs link prediction using the other user graph, and therefore the generation unit 206 generates response information based on the result of link prediction by the link prediction unit 204, thereby generating response information based on the trained model.

[0066] The basis generating unit 207 generates basis information indicating the validity of the response information generated by the generating unit 206. The method of generating basis information will be described later.

[0067] The output unit 208 outputs various information generated by the meal recommendation device 2. For example, the output unit 208 outputs response information generated by the generation unit 206 and evidence information indicated by the evidence generation unit 207. The destination of the information is arbitrary, and for example, if the meal recommendation device 2 is equipped with an output device as described above, the information may be output to that output device. Alternatively, for example, the information may be output to an output device external to the meal recommendation device 2.

[0068] As described above, the trained model used by the meal recommendation device 2 may be an other-user graph, which is a trained graph of the relationships between nodes, including nodes indicating other users different from the target user, nodes indicating physical information, health conditions, or meal menus related to the other users, and links indicating the relationships between the nodes. With this configuration, response information including information on a meal menu corresponding to the physical information or health condition of the target user can be generated and output, taking into consideration the interrelationships between the physical information, health conditions, meal menus, etc. related to the other users.

[0069] As described above, the meal recommendation device 2 may include a link prediction unit 204 that predicts, by link prediction using a target user graph including a plurality of nodes related to the target user and other users' graphs, relationships between nodes not connected by links in the target user graph and the other users' graphs, among nodes included in the other users' graphs that indicate meal menus related to the other users, which nodes link to nodes included in the target user graph. The generation unit 206 may then generate response information including information about meal menus corresponding to the nodes predicted by the link prediction unit 204.

[0070] A node that indicates physical information, health status, or meal menus related to other users and that links to a node included in the target user graph may indicate physical information, health status, or meal menus related to meal menus suitable for the target user. Therefore, with the above configuration, it is possible to recommend meal menus suitable for the target user to the target user.

[0071] Furthermore, as described above, in the meal recommendation device 2, the receiving unit 201 may receive input of conditions regarding other user graphs, and the link prediction unit 204 may predict a node that links to a node included in the target user graph from among nodes indicating meal menus included in other user graphs that satisfy the conditions.

[0072] According to the above configuration, the predicted range of nodes linked to the target user graph is narrowed down to other user graphs that satisfy the input conditions. This makes it possible to predict nodes that match the target user's intentions. For example, if the target user inputs the condition "successfully lost weight," nodes that link to nodes included in the target user graph are predicted from other user graphs that indicate successful weight loss. In this case, meal menus that are likely to lead to successful weight loss can be recommended to the target user.

[0073] (Recommendation rating) As described above, the evaluation unit 205 evaluates the degree of recommendation of the meal menu indicated by the node to the target user based on other nodes included in the other user graph including the node predicted by the link prediction unit 204. The evaluation by the evaluation unit 205 will be described below.

[0074] A node linked to the target user graph may indicate a meal menu suitable for the target user. Each node included in the other user graph that includes that node may indicate factors that influence the recommendation level of the meal menu. For example, suppose the other user graph includes a node indicating that another user is in good health. In this case, the meal menu included in the other user graph and indicated in the node linked to the target user graph may contribute to improving the target user's health, and therefore the recommendation level of that meal menu can be said to be high.

[0075] Therefore, with the above configuration, the link prediction means evaluates the degree of recommendation of the meal menu indicated by the node predicted by the node to the target user based on other nodes included in the other user graph including the node. The evaluation method may be determined in advance based on the target node, etc. Then, the target user may decide whether to purchase the meal menu (order the meal) in accordance with this evaluation. This can contribute to the purchase of a meal menu that is more preferable to the target user.

[0076] Various evaluation criteria can be applied. For example, evaluation may be based on the degree of suitability for the request. For example, assume that the request includes a category of meal menu desired by the target user. In this case, the evaluation unit 205 may evaluate the meal menu corresponding to the other user graph including a node indicating that category higher than the evaluation of the meal menu corresponding to the other user graph not including a node indicating that category.

[0077] Furthermore, the evaluation unit 205 may express the evaluation results as numerical values. In this exemplary embodiment, an example will be described in which the evaluation unit 205 calculates a recommendation level, which is a numerical value indicating the compatibility between the target user and the meal menu. In this case, for example, if a rule is established in advance regarding the relationship between the nodes included in the other users' graph and the recommendation level, the evaluation unit 205 can calculate the recommendation level of each meal menu in accordance with the rule.

[0078] Furthermore, the evaluation unit 205 may evaluate the recommendation level of the meal menu by referring to the node indicating allergy information included in the target user graph and the node indicating allergens linked to the node indicating the meal menu included in the other user graph. For example, the evaluation of a meal menu including an allergen that causes allergies in the target user graph may be lower than the evaluation of a meal menu that does not include the allergen.

[0079] (Method of generating evidence information) As described above, the basis generation unit 207 generates basis information indicating the validity of the response information generated by the generation unit 206. For example, the basis generation unit 207 may generate basis information including information about other users who, among multiple other users shown in the other user graph, have physical information or a health condition similar to that of the target user. This allows the user to refer to the response information in light of the basis information, and enables the user to accurately determine the validity of the response information.

[0080] Various methods can be applied as a method for generating the basis information. For example, the basis generation unit 207 may use as the basis information all or part of the other user's graph including the node predicted by the link prediction unit 204. Furthermore, for example, the basis generation unit 207 may search for an other user's graph that includes the node predicted by the link prediction unit 204 and that includes a predetermined number or more of nodes that are common to nodes that indicate the physical information or health condition of the target user, and use as the basis information all or part of the other user's graph detected by this search.

[0081] (Generating evidence for link prediction results) The basis generation unit 207 can also generate basis information by analyzing the target user graph and other users' graphs. A method for generating basis information by analyzing the target user graph and other users' graphs will be described below.

[0082] For example, the evidence generation unit 207 may mine one or more rules from the target user graph and other users' graphs using PCA (Principal Component Analysis) reliability based on the OWA (Open-world assumption).The evidence generation unit 207 may then generate evidence information using the mined one or more rules.For example, the method described in the following document may be applied to rule mining.

[0083] Luis Galarraga et. al, “Fast rule mining in ontological knowledge bases with AMIE +”, The VLDB Journal(2015)24:707-730 As an example, the rule to be processed by the basis generating unit 207 is expressed as follows, using Head r(x, y) and Body { B1 , . . . , Bn}:

number

number

[0084] The basis generating unit 207 sets the following as the conditions for the mining process: Connected: All values ​​(variables, entities) in the rule are shared between different atoms. Closed: All variables in the rule must appear at least twice. Not reflexive: Rules containing reflexive atoms such as r(x, x) are not mined. Mining processing is carried out under the following conditions.

[0085] Furthermore, the basis generating unit 207

number

number

[0086] For example, suppose that the basis generation unit 207 has mined a rule that if "a person's order history includes dish a," then "the person is in good health." In this case, when the link prediction unit 204 predicts a node indicating dish a, the basis generation unit 207 can generate, as the basis for this prediction, basis information that indicates a tendency that "people whose order history includes dish a are in good health."

[0087] (Processing flow) The flow of the process (meal recommendation method) executed by the meal recommendation device 2 will be described with reference to Fig. 6. Fig. 6 is a flowchart showing the flow of the process executed by the meal recommendation device 2.

[0088] In S201, the receiving unit 201 receives the target user's age, physical information, or health condition, and a request regarding a meal menu. Here, this request may also include the target user's order history. This request may also include information indicating the category of the meal menu (product) desired by the target user, the name of the restaurant, or the name of the store.

[0089] Next, in S202, the graph generation unit 202 generates a target user graph based on the information input in S201.

[0090] In S203, the link prediction unit 204 uses the target user graph and other user graphs generated in S202 to perform link prediction for predicting relationships between nodes not connected by links in the target user graph and other user graphs, thereby predicting nodes that link to nodes included in the target user graph among nodes included in the other user graph that indicate meal menus related to the other user. The link prediction unit 204 may predict multiple nodes. At this time, the basis generation unit 207 may generate basis information that indicates the basis for the prediction result of the link prediction unit 204 by analyzing the target user graph and other user graphs.

[0091] In S204, the evaluation unit 205 evaluates the degree of recommendation of the meal menu indicated by the node predicted in S203 to the target user based on other nodes included in the other user graph including the node. For example, the evaluation unit 205 may evaluate the degree of recommendation of the meal menu based on the degree of suitability for the request received in S201. Note that if multiple nodes are predicted in S203, the evaluation unit 205 evaluates each predicted node.

[0092] In S205, the generation unit 206 estimates a meal menu corresponding to the node predicted in S203 and generates response information including information about the estimated meal menu. As described above, the other user graph includes nodes indicating other users other than the target user, nodes indicating physical information, health status, or meal menus related to the other users, and links indicating the relationships between the nodes, and is a graph in which the relationships between the nodes have been learned. Then, in S203, nodes are predicted by link prediction using the target user graph and the other user graph. Therefore, in S205, response information including information about a meal menu corresponding to the target user's physical information or health status is generated based on the target user's health status and request using a trained model that has learned the physical information or health status of multiple other users and the food order histories of multiple other users.

[0093] For example, the generation unit 206 may generate response information indicating meal menus corresponding to the nodes predicted in S203 that have been ranked up to a predetermined rank in the evaluation results of S204. Furthermore, for example, the generation unit 206 may generate response information indicating meal menus corresponding to the nodes predicted in S203 that are suitable for the request received in S201. Additionally, for example, the generation unit 206 may generate response information indicating meal menus corresponding to the nodes predicted in S203 and the evaluation results of S204.

[0094] In S206, the basis generation unit 207 generates basis information indicating the validity of the response information generated in S205. For example, the basis generation unit 207 may generate basis information including information on a person whose physical information or health condition is similar to that of the target user, among the multiple other users shown in the other user graph.

[0095] In S207, the output unit 208 outputs the response information generated in S206. At this time, the output unit 208 may also output the basis information generated in S206. This completes the processing in FIG. 6.

[0096] (Example of response information) In S207, response information such as that shown in Fig. 7 may be output. Fig. 7 is a diagram showing an example of response information. The response information shown in Fig. 7 includes six items in total: "cuisine," "category," "health-related information," "price," "delivery time," and "recommended level." Note that the response information may further include allergy information identified from other users' graphs.

[0097] "Cuisine" is a meal menu estimated by the generation unit 206 according to the node predicted by the link prediction unit 204. In the example of Figure 7, the meal menu includes dishes a to c. "Category" indicates the category of the meal menu. "Health-related information" is information regarding the association between the meal menu and health status. "Price" is the price of the meal menu. "Delivery time" is the estimated delivery time when the meal menu is ordered. "Recommendation level" indicates the evaluation result of the evaluation unit 205 for the meal menu. Note that, as an example, the "delivery time" can be estimated by the generation unit 206 from location information linked to the meal menu estimated by the generation unit 206 and location information of the target user.

[0098] Of these items, "category," "health-related information," "price," and "delivery time" can be identified from the other users' graph. The basis generating unit 207 may generate such information as basis information.

[0099] The "recommendation level" may be calculated by the evaluation unit 205 based on various information identified from the other user graph. For example, the recommendation level may be calculated so that the evaluation of a meal menu corresponding to the other user graph including a node indicating a better health condition is higher than the evaluation of a meal menu corresponding to the other user graph including a node indicating a worse health condition.

[0100] In the example of Fig. 7, the recommendation levels for dishes a to c are 15, 5, and 0, respectively. For example, if a rule is determined in advance, such as a recommendation level of +15 for a meal menu corresponding to an other user graph including a node indicating good health status, and a recommendation level of +5 for a meal menu corresponding to an other user graph including a node indicating average health status, the evaluation unit 205 can calculate the recommendation level for each meal menu in accordance with the rule.

[0101] In the meal recommendation device 2 configured as described above, the link prediction unit 204 performs link prediction using the target user graph and other user graphs. By performing such link prediction, (1) Use of multi-level relationships: When a user who has a friend relationship with a user who has purchased a similar product to the product purchased by the user purchases another product, the product can also be included in the recommendation process. (2) Explainability: The reason for the recommendation can be explained using the regularity within the graph (rules supported by a certain number of relationships within the graph). This has the following advantages.

[0102] Exemplary Embodiment 3 (overview) 8 is a diagram illustrating an overview of a meal recommendation method according to this exemplary embodiment. In this exemplary embodiment, an example of recommending a meal menu using a target user graph including a plurality of nodes related to the target user and a plurality of other user graphs generated for each of a plurality of other users will be described.

[0103] The meal recommendation method according to this exemplary embodiment accepts physical information or health status of a target user and a request for a meal menu, similar to exemplary embodiments 1 and 2. Here, the request for a meal menu may include the order history of the target user.

[0104] Next, in the meal recommendation method according to this exemplary embodiment, a target user graph is generated based on the target user's physical information or health condition and requests for meal menus. In the example of Fig. 8, the target user graph is a graph in which the "target user" node is connected to the "order history" node via a link called "history," the "30s" node via a link called "age," and the "good" node via a link called "health condition."

[0105] In the meal recommendation method according to this exemplary embodiment, other users who have a predetermined relationship with the target user are identified by link prediction using the target user graph generated as described above and other user graphs generated for multiple other users. The other user graphs used are generated for multiple other users and have already learned about the predetermined relationships between the multiple other users.

[0106] In the example of Fig. 8, other users similar to the target user (hereinafter also referred to as similar users) are predicted by link prediction using an other user graph including a node for user A and a node for user B. Note that in this example, learning is performed so that dissimilar other users are not connected by "similar" links (dissimilar users are treated as negative examples), but "dissimilar" links may also be learned.

[0107] Information about users similar to the target user who is the target of the recommendation is useful for making recommendations that are suited to the target user, so the above configuration makes it possible to make recommendations that are suited to the target user.

[0108] Furthermore, it is also possible to evaluate the similar users predicted as described above and recommend a meal menu based on the evaluation results. For example, it is also possible to recommend a meal menu by the following process. -Predict similar users based on physical information and product categories in order history similar to the target user. From among the predicted similar users, those whose health status has been updated within a specified period (for example, within the last six months) and whose health status is good are extracted as highly rated similar users. From the order history of the extracted similar users, the system extracts the meal menus that are frequently ordered (for example, within the top three order frequencies) and recommends those meal menus.

[0109] (Device configuration) The configuration of a meal recommendation device 3 according to a third exemplary embodiment of the present invention will be described with reference to Fig. 9. Fig. 9 is a block diagram showing the configuration of the meal recommendation device 3 according to this exemplary embodiment.

[0110] As shown in the figure, the meal recommendation device 3 includes a reception unit 301, a graph generation unit 302, a link prediction unit 303, an evaluation unit 304, a generation unit 305, a reason generation unit 306, and an output unit 307. Similar to the meal recommendation device 2 of exemplary embodiment 2, the meal recommendation device 3 may include a learning unit, an input device, an output device, a communication device, and the like in addition to these components.

[0111] The receiving unit 301 receives the target user's age, physical information, or health condition, and a request regarding a meal menu. The request may also include the target user's order history. The request may also include information indicating the category of the meal menu (product) desired by the target user, the name of the restaurant, or the name of the store.

[0112] The graph generation unit 302 generates a target user graph based on the target user's age, physical information, or health condition and a request for a meal menu. For example, the graph generation unit 202 generates a target user graph in which the target user is represented by a node indicating the target user, a node indicating the target user's age, a node indicating the target user's health condition, a node indicating the target user's order history, and edges indicating the relationships between the nodes. Here, the target user graph may include nodes indicating the target user's physical information and nodes related to the meal menu requested by the target user, in addition to or instead of the node indicating the target user's health condition.

[0113] The link prediction unit 303 identifies other users who have a predetermined relationship with the target user by link prediction using a target user graph including a plurality of nodes related to the target user and a plurality of other user graphs generated for each of a plurality of other users to predict relationships between nodes that are not connected by links in the target user graph and the other user graphs. The predetermined relationship may be a relationship of similarity as in the example of FIG. 8, or may be some other relationship. For example, the link prediction unit 303 may identify other users who are dissimilar to the target user, or may identify other users who belong to the same age group as the target user, other users who have physical information in common with the target user, etc.

[0114] The evaluation unit 304 evaluates other users predicted by the link prediction unit 303, i.e., other users who have a predetermined relationship with the target user. For example, when the link prediction unit 303 predicts a similar user, the evaluation unit 304 may calculate a higher recommendation level if the other user graph of the similar user includes a node indicating a better health condition.

[0115] In addition, the evaluation unit 304 may evaluate the degree of recommendation of the meal menu indicated by the node to the target user based on the node included in the other user graph of the other user predicted by the link prediction unit 303, i.e., the other user who has a predetermined relationship with the target user.

[0116] The generation unit 305 generates the response information including information about the meal menu of the other user identified by the link prediction unit 303. For example, the generation unit 305 may generate response information that recommends to the target user a meal menu indicated in a node included in the other user graph of the other user identified by the link prediction unit 303. As described above, the link prediction unit 303 performs link prediction using the other user graph, which is a trained model. Therefore, the generation unit 305 generates response information based on the result of link prediction by the link prediction unit 303, thereby generating response information based on the trained model.

[0117] Furthermore, the generation unit 305 may generate response information according to the evaluation result of the evaluation unit 304. For example, when the link prediction unit 303 predicts a similar user, the evaluation unit 304 may calculate a higher recommendation level if the other user graph of the similar user includes a node indicating a better health condition. Then, the generation unit 305 may generate response information recommending a meal menu for which the recommendation level calculated by the evaluation unit 304 is equal to or higher than a predetermined value.

[0118] The evidence generation unit 306 generates evidence information indicating the validity of the response information generated by the generation unit 305. For example, the evidence generation unit 306 may generate evidence information including information on the health status included in the other user graph of the similar user predicted by the link prediction unit 303. This allows the user to refer to the response information based on the evidence and accurately determine the validity of the meal menu. Furthermore, the evidence generation unit 306 may generate evidence information about the result of the link prediction by the link prediction unit 303 by analyzing the subject graph and the other user graph.

[0119] The output unit 307 outputs the response information etc. generated by the generation unit 305. As with the output unit 208 in the second exemplary embodiment, the destination of the information output is not particularly limited.

[0120] As described above, the meal recommendation device 3 includes a link prediction unit 303 that identifies other users who have a predetermined relationship with the target user by link prediction to predict relationships between nodes not connected by links in the target user graph and the other user graphs, using a target user graph including a plurality of nodes related to the target user and a plurality of other user graphs generated for each of a plurality of other users. The generation unit 305 then generates response information including information about meal menus related to the other users identified by the link prediction unit 303. Information about other users who have a predetermined relationship with the target user who is the target of recommendation is useful for making recommendations that are tailored to the target user, so the above configuration makes it possible to make recommendations that are tailored to the target user.

[0121] Furthermore, as described above, the link prediction unit 303 may identify other users similar to the target user, and the generation unit 305 may generate response information that recommends to the target user a meal menu indicated in a node included in the other user graph of the other user identified by the link prediction unit 303. A meal menu related to other users similar to the target user is likely to suit the target user. Therefore, with the above configuration, a meal menu that is likely to suit the target user can be recommended to the user.

[0122] (Processing flow) The flow of the process (meal recommendation method) executed by the meal recommendation device 3 will be described with reference to Fig. 10. Fig. 10 is a flowchart showing the flow of the process executed by the meal recommendation device 3.

[0123] In S301, the receiving unit 301 receives the target user's age, physical information, or health condition, and a request regarding a meal menu. This request may also include the target user's order history. The request may also include information indicating the category of the meal menu (product) desired by the target user, the name of the restaurant, or the name of the store.

[0124] Next, in S302, the graph generation unit 302 generates a target user graph based on the information input in S301.

[0125] In S303, the link prediction unit 303 predicts similar users who are similar to the target user by link prediction, using the target user graph generated in S302 and multiple other user graphs generated for each of the multiple other users, to predict the relationship between nodes that are not connected by links in the target user graph and the other user graphs.

[0126] In S304, the evaluation unit 304 evaluates the similar users predicted in S303. For example, the evaluation unit 304 may calculate a higher recommendation level when the other user graph of the similar user includes a node indicating a better health condition. The evaluation unit 304 may perform the evaluation based on the degree of suitability for the request received in S301. If multiple similar users are predicted in S303, the evaluation unit 304 performs an evaluation for each of the predicted similar users.

[0127] In S305, the generation unit 305 identifies a meal menu indicated by a node included in the other user graph of the similar user predicted in S303. That is, the generation unit 305 determines a dish to be recommended to the target user. The generation unit 305 generates response information including information about the identified meal menu. As described above, the other user graph includes nodes indicating other users different from the target user, nodes indicating physical information, health status, or meal menus related to the other users, and links indicating the relationships between the nodes, and is a graph in which the relationships between the nodes have been learned. Then, in S303, similar users are identified by link prediction using the target user graph and the other user graph. Therefore, in S305, response information including information about a meal menu corresponding to the target user's physical information or health status is generated based on the target user's health status and request using a trained model that has learned the physical information or health status of multiple other users and the food order histories of multiple other users.

[0128] For example, the generation unit 305 may generate response information indicating a meal menu indicated by a node included in the other user graph of a similar user whose evaluation result in S304 is up to a predetermined rank, among meal menus indicated by a node included in the other user graph of the similar user predicted in S303. Furthermore, for example, the generation unit 305 may generate response information indicating a meal menu that matches the request received in S301, among meal menus indicated by a node included in the other user graph of the similar user predicted in S303. Additionally, for example, the generation unit 305 may generate response information indicating the meal menu indicated by a node included in the other user graph of the similar user predicted in S303 and the evaluation result of S304.

[0129] In S306, the basis generation unit 306 generates basis information indicating the validity of the response information generated in S306. For example, the basis generation unit 306 may generate basis information including information on the health condition included in the other user graph of the similar user predicted in S303.

[0130] In S307, the output unit 307 outputs the response information generated in S306. At this time, the output unit 208 may also output the basis information generated in S306. This completes the processing in FIG. 10.

[0131] Exemplary Embodiment 4 (overview) 11 is a diagram illustrating an overview of a meal recommendation method according to this exemplary embodiment. In this exemplary embodiment, an example is described in which a meal menu that matches a request is searched for while updating a target user graph that includes a node indicating the input meal menu.

[0132] In this exemplary embodiment, link prediction is performed using the target user graph and other users' graphs, as in exemplary embodiment 3. The target user graph shown in the upper left corner of Fig. 11 includes nodes and links indicating the order history of the target user, as well as nodes and links indicating "dish B1".

[0133] Furthermore, the graph including the node for "User A" and the graph including the node for "User B" shown in FIG. 11 are other user graphs. Of these, the other user graph for User A includes nodes and links indicating that User A has a health condition of "healthy" and that his order history includes "dish A1." Furthermore, the other user graph for User B shown in FIG. 11 includes nodes and links indicating that User B has a health condition of "tendency to obesity," that his order history includes "dish B1," and that dish B1 causes allergic reactions. Other nodes and links are not shown. Note that at this stage, the order for "dish B1" has not been confirmed, and "dish B1" is in a tentative decision state.

[0134] By learning the other user graphs of various other users as described above, it becomes possible to link-predict which meal menus are likely to be associated with which health conditions or allergic reactions. That is, in the meal menu recommendation method according to this exemplary embodiment, a tentative target user graph is generated, and link-prediction is performed on the probability that a meal menu shown in the target user graph is associated with a predetermined health condition and the probability that it will cause an allergic reaction, for example.

[0135] For example, in the example of Figure 11, the probability that the "health" node is connected to the "target user" node in the target user graph shown on the top left side via the "health condition" link is predicted to be 30%. This probability cannot be said to be sufficiently high. Also, the probability that the "allergic reaction" node is connected to the "dish B1" node is predicted to be 40%. This probability cannot be said to be sufficiently low.

[0136] Therefore, as shown in the bottom left of the figure, the node showing the order history and the node connected by a link to the "target user" node in the target user graph are changed from "Dish B1" to "Dish A1," and link prediction is performed again. As a result, the predicted probability that the "health" node will be connected to the "target user" node via the "health status" link has changed to 80%. In addition, the probability that the "allergic reaction" node will be connected to the "Dish A1" node is predicted to be less than 1%.

[0137] According to the meal recommendation method according to this exemplary embodiment, from the results of the above processing, it is possible to recommend "Dish A1" as a meal menu for achieving the health status of "healthy" for the target user.

[0138] (Device configuration) The configuration of a meal recommendation device 4 according to a fourth exemplary embodiment of the present invention will be described with reference to Fig. 12. Fig. 12 is a block diagram showing the configuration of the meal recommendation device 4 according to this exemplary embodiment.

[0139] As shown in the figure, the meal recommendation device 4 includes a reception unit 401, a graph generation unit 402, a link prediction unit 403, a graph update unit 404, a generation unit 405, a reason generation unit 406, and an output unit 407. Similar to the meal recommendation device 2 of exemplary embodiment 2, the meal recommendation device 4 may include a learning unit, an input device, an output device, a communication device, etc. in addition to these components.

[0140] The receiving unit 401 receives the target user's age, physical information, or health condition, and a request regarding a meal menu. Here, this request includes information indicating a meal menu tentatively determined by the target user. This request may also include information indicating the target user's order history, the category of the meal menu (product) desired by the target user, the restaurant name, or the store name. This request may also include the target user's desired health condition, the target user's desired BMI, or the target user's allergy information.

[0141] The graph generation unit 402 generates a target user graph based on at least a part of the information received by the reception unit 401. For example, the graph generation unit 402 may generate a target user graph (see FIG. 11 ) in which a node indicating the target user and a node indicating the order history are connected by a link, and the node indicating the order history and a node for "Dish B1" indicating the dish menu tentatively decided by the target user are connected by a link.

[0142] The link prediction unit 403 uses the target user graph generated by the graph generation unit 402 and the learned other user graphs to perform link prediction to predict relationships between nodes that are not connected by links in the target user graph and the other user graphs, and calculates the probability that a predetermined node will be linked to a node included in the target user graph. Here, the predetermined node may be identified based on the request or may be predetermined. For example, if the request includes a request that the desired health state is "healthy," the link prediction unit 403 calculates the probability that a node indicating "healthy" will be linked to a node included in the target user graph (for example, the "target user" node in the example of FIG. 11).

[0143] The graph update unit 404 updates the target user graph. For example, the graph update unit 404 performs a process of replacing a node indicating "Dish B1" included in the target user graph with "Dish A1", which is another meal menu. The graph update unit 404 may also perform a process of adding a node indicating another meal menu.

[0144] The target user graph may be updated according to user input or automatically. In the former case, the graph update unit 404 may cause the output unit 407 to output a list of meal menus extracted from other users' graphs, and allow the user to select a new meal menu from the list. In the latter case, the graph update unit 404 may select new meal menu candidates from the meal menus extracted from other users' graphs.

[0145] The generation unit 405 generates response information including information about a meal menu according to the physical information or health condition of the target user based on the request and a trained model that has trained the physical information or health condition of multiple other users and the meal order histories of the multiple other users. More specifically, the generation unit 405 generates the response information based on the probability calculated by the link prediction unit 403. A specific example of generating response information will be described later with reference to FIG. 13.

[0146] As described above, the link prediction unit 403 performs link prediction using the other user graph, which is a trained model, and the target user graph generated based on a request. Therefore, the generation unit 405 generates response information based on the result of link prediction by the link prediction unit 403, thereby generating response information based on the trained model and the request.

[0147] The evidence generation unit 406 generates evidence information indicating the validity of the response information generated by the generation unit 405. Specifically, the evidence generation unit 406 may generate evidence information including at least one of the probability that a predetermined health condition is linked to a node included in the target user graph and the probability that a node indicating an allergic reaction is linked to a node included in the target user graph. Furthermore, the evidence generation unit 406 may generate evidence information about the result of the link prediction by the link prediction unit 403 by analyzing the target user graph and other users' graphs.

[0148] The output unit 407 outputs the response information etc. generated by the generation unit 405. As with the output unit 208 in the second exemplary embodiment, the destination of the information output is not particularly limited.

[0149] As described above, the meal recommendation device 4 includes the link prediction unit 403 that calculates the probability that a predetermined node will be linked to a node included in the target user graph by link prediction using the target user graph and other user graphs. The generation unit 405 then generates response information based on the probability calculated by the link prediction unit 403.

[0150] A target user graph including a node indicating a meal menu entered by a target user can be said to represent the state of the target user after purchasing that meal menu. Therefore, the probability that a given node is linked to a node included in this target user graph can be said to represent the impact that the purchase of that meal menu (ordering a meal) has on the target user. For example, if there is a high probability that a node indicating the target user's health is linked to a node included in a target user graph including a node indicating the purchase of a certain meal menu, it can be said that purchasing that meal menu may have contributed to the target user's health.

[0151] Therefore, with the above configuration, it is possible to predict what impact the purchase of a meal menu is likely to have on a target user before the meal menu is actually purchased.

[0152] (Processing flow) The flow of the process (meal recommendation method) executed by the meal recommendation device 4 will be described with reference to Fig. 12. Fig. 12 is a flowchart showing the flow of the process executed by the meal recommendation device 4.

[0153] In S401, the receiving unit 401 receives the target user's age, physical information, or health condition, and a request regarding a meal menu. In S401, the request includes, for example, the target user's desired meal menu, the category of the meal menu, the target user's desired health condition, and the target user's allergy information.

[0154] In S402, the graph generation unit 402 generates a target user graph based on the information input in S401. Here, the graph generation unit 402 generates a target user graph that includes at least nodes and links indicating meal menus desired by the target user.

[0155] In S403, the link prediction unit 403 calculates the probability that a node that matches the request received in S401 will be linked to a node included in the target user graph generated in S402. As an example, as described above, if the request received in S401 includes a health condition desired by the target user, the link prediction unit 403 calculates the probability that a node indicating the health condition will be linked to a node included in the target user graph generated in S402. As described above, this probability is calculated by link prediction using the learned other user graph and the target user graph. In addition to the processing of S403, the basis generation unit 406 may generate basis information indicating the basis for the calculation result of the link prediction unit 403 by analyzing the target user graph and the other user graph.

[0156] In S404, the graph update unit 404 determines whether the probability calculated in S403 is equal to or greater than a threshold value. If it is determined that the probability is equal to or greater than the threshold value (YES in S404), the process proceeds to S406, and if it is determined that the probability is less than the threshold value (NO in S404), the process proceeds to S405.

[0157] If the request received in S401 includes traits, for example, predictions may be made for each trait in S403, and if the probabilities for all traits are equal to or greater than a threshold, a determination of YES may be made in S404, and if even one trait is less than the threshold, a determination of NO may be made. Also, if the request received in S401 includes allergy information, the process may proceed to S406 if the probability that a node indicating an allergic reaction corresponding to the allergy information will be linked to a node included in the target user graph is less than a predetermined threshold, and proceed to S405 if the probability is equal to or greater than the threshold.

[0158] In S405, the graph update unit 404 updates the target user graph. Specifically, the graph update unit 404 replaces a node of a meal menu included in the current target user graph with a node of another meal menu. As described above, the update content may be determined according to a user input, or may be determined by the graph update unit 404.

[0159] 15, the calculation of the probability in S403 and the update of the target user graph in S405 are repeated until the determination in S404 is YES.

[0160] In S406, the generation unit 405 estimates a meal menu that matches the request received in S401, and generates response information indicating the estimated meal menu. Specifically, the generation unit 405 estimates that the meal menu when the determination in S404 is YES is a meal menu that matches the request, and generates response information indicating the meal menu.

[0161] In S407, the evidence generation unit 406 generates evidence information indicating the validity of the response information generated in S406. Specifically, the evidence generation unit 406 generates evidence information including at least one of the probability that a predetermined health condition is linked to a node included in the target user graph and the probability that a node indicating an allergic reaction is linked to a node included in the target user graph.

[0162] In S408, the output unit 407 outputs the response information generated in S406. At this time, the output unit 407 may also output the basis information generated in S407. This ends the processing in FIG. 13.

[0163] [Modification] As described in the fourth exemplary embodiment, by using the target user graph and other user graphs, it is possible to predict the probability that a target user's node including a certain meal menu as a node will be linked to a node indicating a predetermined characteristic through link prediction. Therefore, as an example, it is possible to predict how the purchase of a meal menu is likely to affect the target user before the meal menu is actually purchased.

[0164] Here, the prediction of the association between the target user and a predetermined characteristic can also be performed by a method other than link prediction. This will be described with reference to FIG. 14. FIG. 14 is a diagram illustrating an example of predicting the characteristic of the target user based on feature amounts calculated from the target user graph and other user graphs. FIG. 14 shows other user graphs for users A to C and a target user graph for the target user. Of the nodes and links included in these graphs, only those indicating that the dish menu that the target user is considering ordering is dish x are shown in the illustration.

[0165] Here, the feature quantities for each other user can be calculated by multiplying the feature quantities of each node included in the other user graph by a weight corresponding to the link connecting to that node and adding the results together. Therefore, if learning is performed to update the weights so that the calculated feature quantities correspond to the traits of other users, it becomes possible to predict the characteristics of the target user from the feature quantities of the target user graph calculated by applying the weights.

[0166] For example, in the example of FIG. 14, the feature amount calculated from the other user graph of user A, who is known to be obese, is trained to fall within a range corresponding to the characteristic "obese" in the feature space. Also, the feature amount calculated from the other user graph of user B, who is known to be healthy, is trained to fall within a range corresponding to the characteristic "healthy" in the feature space. Similarly, the feature amount calculated from the other user graph of user C, who is known to be thin, is trained to fall within a range corresponding to the characteristic "thin" in the feature space.

[0167] In this case, as shown in the figure, if the feature amount calculated from the target user graph is within the range corresponding to the traits of “obese” and “healthy,” it can be predicted that the target user has the trait of “obese” or “healthy.” Such a trait prediction method can be applied as an alternative method to the trait prediction method in the above-described exemplary embodiment.

[0168] 14, if the target user orders dish x, the health condition is predicted to be between "obese" and "healthy." If the dish linked to the target user graph is changed, the prediction result may also change. Therefore, similar to the fourth exemplary embodiment, it is possible to find a dish that will result in a desired characteristic (e.g., "healthy") by changing the dish linked to the target user graph.

[0169] [Software implementation example] Some or all of the functions of the meal recommendation devices 1 to 4 (hereinafter referred to as the devices) may be realized by hardware such as an integrated circuit (IC chip), or by software.

[0170] In the latter case, the device is realized, for example, by a computer that executes instructions of a program, which is software that realizes each function. An example of such a computer (hereinafter referred to as computer C) is shown in FIG. 15. Computer C includes at least one processor C1 and at least one memory C2. Memory C2 stores a program (meal recommendation program) P for operating computer C as the device. In computer C, processor C1 reads and executes program P from memory C2, thereby realizing each function of the device.

[0171] The processor C1 may be, for example, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a micro processing unit (MPU), a floating point number processing unit (FPU), a physics processing unit (PPU), a microcontroller, or a combination thereof. The memory C2 may be, for example, a flash memory, a hard disk drive (HDD), a solid state drive (SSD), or a combination thereof.

[0172] The computer C may further include a RAM (Random Access Memory) for expanding the program P during execution and for temporarily storing various data. The computer C may also include a communication interface for transmitting and receiving data to and from other devices. The computer C may also include an input / output interface for connecting input / output devices such as a keyboard, mouse, display, and printer.

[0173] Furthermore, the program P can be recorded on a non-transitory tangible recording medium M that can be read by the computer C. Such a recording medium M can be, for example, a tape, a disk, a card, a semiconductor memory, or a programmable logic circuit. The computer C can acquire the program P via such a recording medium M. The program P can also be transmitted via a transmission medium. Such a transmission medium can be, for example, a communication network or broadcast waves. The computer C can also acquire the program P via such a transmission medium.

[0174] [Appendix 1] The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the claims. For example, embodiments obtained by appropriately combining the technical means disclosed in the above-described embodiments are also included in the technical scope of the present invention.

[0175] [Appendix 2] Some or all of the above-described embodiments can also be described as follows: However, the present invention is not limited to the following described aspects.

[0176] (Appendix 1) A meal recommendation device comprising: a receiving means for receiving a request for a target user's physical information or health condition and a meal menu, a trained model that has learned the physical information or health conditions of a plurality of other users and the meal order histories of the plurality of other users, a generating means for generating response information including information on a meal menu corresponding to the target user's physical information or health condition based on the request, and an output means for outputting the response information. This configuration has the effect of making it possible to recommend a meal menu that is suitable for the target user, even if the target user himself is not aware of the suitability.

[0177] (Appendix 2) The meal recommendation device according to claim 1, further comprising: a basis information generating unit configured to generate basis information including information on a person among the plurality of other users whose physical information or health condition is similar to that of the target user, and the output unit configured to output the basis information. According to the above configuration, the user can refer to the response information taking the basis into account.

[0178] (Appendix 3) The meal recommendation device according to claim 1 or 2, wherein the trained model is an other-user graph that includes nodes indicating other users different from the target user, nodes indicating physical information, health conditions, or meal menus of the other users, and links indicating relationships between the nodes, and is a trained graph of the relationships between the nodes. According to the above configuration, it is possible to recommend appropriate meal menus by taking into consideration the mutual relationships between the physical information, health conditions, and meal menus of the other users.

[0179] (Appendix 4) The meal recommendation device according to Supplementary Note 3 comprises link prediction means for predicting, by link prediction using a target user graph including a plurality of nodes related to the target user and the other user graph, relationships between nodes not connected by links in the target user graph and the other user graph, among nodes included in the other user graph indicating meal menus related to the other user, which nodes link to nodes included in the target user graph, and the generation means for generating response information including information on meal menus corresponding to the nodes predicted by the link prediction means. With the above configuration, it is possible to recommend to the target user a meal menu that suits the target user, taking useful information into consideration.

[0180] (Appendix 5) The meal recommendation device according to Supplementary Note 4, wherein the receiving means receives input of conditions for other users' graphs, and the link prediction means predicts nodes that will link to nodes included in the target user's graph from among nodes indicating meal menus included in the other users' graphs that satisfy the conditions. According to the above configuration, the predicted range of nodes that will link to the target user's graph is narrowed down to other users' graphs that satisfy the input conditions, making it possible to predict nodes that are in line with the target user's intentions.

[0181] (Appendix 6) The meal recommendation device according to claim 4, further comprising evaluation means for evaluating a degree of recommendation of a meal menu indicated by a node to the target user based on another node included in the other user graph including the node predicted by the link prediction means. The above configuration can contribute to the purchase of a meal menu that is more preferable to the target user.

[0182] (Appendix 7) The meal recommendation device according to Supplementary Note 3, further comprising: link prediction means for identifying the other users having a predetermined relationship with the target user by link prediction for predicting relationships between nodes not connected by links in the target user graph and the other user graphs, using a target user graph including a plurality of nodes related to the target user and a plurality of the other user graphs generated for each of a plurality of other users, wherein the generation means generates the response information including information on meal menus for the other users identified by the link prediction means. With the above configuration, it is possible to make recommendations suited to the target user.

[0183] (Appendix 8) The meal recommendation device according to claim 7, wherein the link prediction means identifies the other users similar to the target user, and the generation means generates the response information recommending to the target user meal menus indicated in nodes included in the other user graph of the other users identified by the link prediction means. According to the above configuration, meal menus that are likely to suit the target user can be recommended to the user.

[0184] (Appendix 9) The meal recommendation device according to Supplementary Note 3, comprising: a receiving means for receiving an input of a meal menu by the target user; and a link prediction means for calculating the probability that a predetermined node will be linked to a node included in the target user graph by link prediction using a target user graph including nodes indicating the input meal menu and the other user graphs to predict relationships between nodes that are not connected by links in the target user graph and the other user graphs, wherein the generation means generates the response information based on the probability calculated by the link prediction means. With the above configuration, it is possible to predict the impact that purchasing a meal menu is likely to have on the target user before the meal menu is actually purchased.

[0185] (Appendix 10) A meal recommendation method in which a computer receives a request for a meal menu and physical information or health condition of a target user, generates response information including information on a meal menu corresponding to the target user's physical information or health condition based on a trained model that has learned the physical information or health conditions of multiple other users and the meal order histories of the multiple other users, and outputs the response information. This method has the effect of making it possible to recommend a meal menu that is suitable for the target user, even if the target user himself is not aware of the suitability.

[0186] (Appendix 11) A meal recommendation program that causes a computer to execute the following processes: receiving a request for a target user's physical information or health condition and a meal menu; generating response information including information on a meal menu corresponding to the target user's physical information or health condition based on the request and a trained model that has learned the physical information or health conditions of multiple other users and the meal order histories of the multiple other users; and outputting the response information. This program has the effect of making it possible to recommend a meal menu that is suitable for the target user, even if the target user himself is not aware of the suitability.

[0187] [Appendix 3] Some or all of the above-described embodiments can also be expressed as follows.

[0188] A meal recommendation device comprising at least one processor that performs the following processes: receiving a target user's physical information or health condition and a request regarding a meal menu; generating response information including information regarding a meal menu corresponding to the target user's physical information or health condition based on the request and a trained model that has learned the physical information or health condition of multiple other users and the meal ordering histories of the multiple other users; and outputting the response information.

[0189] The meal recommendation device may further include a memory that stores a program (meal recommendation program) for causing the processor to execute the following processes: receiving a request for the target user's physical information or health condition and a meal menu; generating response information including information about a meal menu corresponding to the target user's physical information or health condition based on the request and a trained model that has learned the physical information or health conditions of multiple other users and the meal order histories of the multiple other users; and outputting the response information. The program may also be recorded on a computer-readable, non-transitory, tangible recording medium. [Explanation of symbols]

[0190] 1. Meal recommendation device 11 Reception 12 Generation part 13 Output section 2. Meal recommendation device 201 Reception 202 Graph Generation Unit 203 Learning Department 204 Link Prediction Unit 205 Evaluation Department 206 Generation part 207 Evidence Generation Unit 208 Output section 3. Meal recommendation device 301 Reception 302 Graph Generation Unit 303 Link Prediction Unit 304 Evaluation Department 305 Generation part 306 Evidence Generation Unit 4. Meal recommendation device 401 Reception 402 Graph Generation Unit 403 Link Prediction Unit 404 Graph Updater 405 Evaluation Department 406 Evidence Generation Unit

Claims

1. A receiving means for receiving physical information or health condition of the target user and a request regarding a meal menu; a generation means for generating response information including information on a meal menu according to the physical information or health condition of the target user based on a trained model that has learned the physical information or health condition of multiple other users and the meal order history of the multiple other users, and the request; an output means for outputting the response information; Equipped with The trained model is an other-user graph that includes nodes indicating other users different from the target user, nodes indicating physical information, health conditions, or meal menus related to the other users, and links indicating relationships between the nodes, and is a trained graph regarding relationships between the nodes. Food recommendation device.

2. a basis information generating means for generating basis information including information on a person among the plurality of other users whose physical information or health condition is similar to that of the target user; The output means further outputs the basis information. The meal recommendation device according to claim 1 .

3. a link prediction means for predicting, by link prediction using a target user graph including a plurality of nodes related to the target user and the other user graph, a relationship between nodes not connected by a link in the target user graph and the other user graph, among nodes included in the other user graph that indicate meal menus related to the other user, which nodes are linked to nodes included in the target user graph; The meal recommendation device according to claim 1 , wherein the generation means generates response information including information about a meal menu corresponding to the node predicted by the link prediction means.

4. the accepting means accepts input of conditions for the other user graph; The meal recommendation device according to claim 3 , wherein the link prediction means predicts a node that links to a node included in the target user graph from among nodes indicating meal menus included in the other user graph that satisfy the condition.

5. 4. The meal recommendation device according to claim 3, further comprising an evaluation means for evaluating a degree of recommendation of a meal menu indicated by a node predicted by the link prediction means to the target user based on other nodes included in the other user graph including the node predicted by the link prediction means.

6. a link prediction means for predicting a relationship between nodes not connected by a link in the target user graph and the other user graphs, using a target user graph including a plurality of nodes related to the target user and a plurality of other user graphs generated for each of a plurality of other users, to identify the other users having a predetermined relationship with the target user; The meal recommendation device according to claim 1 , wherein the generating means generates the response information including information on meal menus related to the other users identified by the link predicting means.

7. The link prediction means identifies the other users who are similar to the target user, The meal recommendation device according to claim 6, wherein the generation means generates the response information that recommends to the target user a meal menu indicated in a node included in the other user graph of the other user identified by the link prediction means.

8. A reception means for receiving an input of a meal menu from the target user; a link prediction means for calculating the probability that a predetermined node will be linked to a node included in the target user graph by link prediction using a target user graph including a node indicating the input meal menu and the other user graph to predict a relationship between nodes not connected by a link in the target user graph and the other user graph, The meal recommendation device according to claim 1 , wherein the generation means generates the response information based on the probability calculated by the link prediction means.

9. The computer Accepting a target user's physical information or health condition and a request regarding a meal menu; Generate response information including information about a meal menu according to the physical information or health condition of the target user based on the request and a trained model that has trained the physical information or health condition of multiple other users and the meal order history of the multiple other users; outputting the response information; The trained model is an other-user graph that includes nodes indicating other users different from the target user, nodes indicating physical information, health conditions, or meal menus related to the other users, and links indicating relationships between the nodes, and is a trained graph regarding relationships between the nodes. How to recommend meals.

10. For computers, A process of receiving physical information or health status of a target user and a request regarding a meal menu; A process of generating response information including information on a meal menu according to the physical information or health condition of the target user based on the request and a trained model that has trained the physical information or health condition of multiple other users and the meal order history of the multiple other users; a process of outputting the response information; Execute The trained model is an other-user graph that includes nodes indicating other users different from the target user, nodes indicating physical information, health conditions, or meal menus related to the other users, and links indicating relationships between the nodes, and is a trained graph regarding relationships between the nodes. Food recommendation program.

Citation Information

Patent Citations

  • Recommend device, recommend method and program

    JP2013186809A

  • Information processing device, information processing method, and program

    JP2020064666A

  • Food providing system, food providing method, and program

    JP2020160544A

  • Recommending meals for a selected group

    US20190073601A1

  • Food providing system, food providing method, and program

    WO2020194861A1