Information processing device and information processing method

The system generates store feature amounts using user history and graph neural networks to overcome the cost of manual store characteristic input, enhancing store recommendation accuracy.

WO2025248571A1PCT designated stage Publication Date: 2025-12-04NTT DOCOMO INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/019319
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-27
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

Existing store recommendation systems face challenges in efficiently acquiring information indicating the characteristics of stores, which is costly and hinders the development of accurate machine learning models.

Method used

An information processing device and method that utilizes visit history information and user feature amounts to generate store feature amounts through a graph neural network, enabling the extraction of store characteristics without manual input, by convolving user and store features until convergence conditions are met.

Benefits of technology

Facilitates the easy acquisition of store characteristics, allowing for more accurate store recommendations based on user preferences, reducing the need for costly manual data input and improving recommendation accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024019319_04122025_PF_FP_ABST
    Figure JP2024019319_04122025_PF_FP_ABST
Patent Text Reader

Abstract

An information processing device according to one embodiment of the present invention includes: a first acquisition unit that, with respect to a plurality of users and a plurality of shops, acquires visiting history information indicating a history of each of the users visiting each of the shops; a second acquisition unit that acquires, for each of the plurality of users, user features indicating a feature of the user with respect to at least one item; and an output unit that outputs, for each of the plurality of shops, shop features obtained on the basis of feature information of users associated with the shop by the visiting history information.
Need to check novelty before this filing date? Find Prior Art

Description

Information processing device and information processing method

[0001] The present invention relates to a technology for recommending stores to users.

[0002] There are known techniques for recommending stores to users. For example, Patent Literature 1 discloses a system that recommends store information to a user based on the distance between the user's interest information and the store's interest information, in order to make recommendations that reflect the user's preferences, interests, or concerns.

[0003] International Publication No. 22 / 153715

[0004] In order to recommend stores to users, the characteristics of the candidate stores must be input into the system, but there was a problem in that collecting information indicating the characteristics of stores was costly.

[0005] In response to this, the present invention provides a technique for more easily acquiring information indicating the characteristics of a store.

[0006] One aspect of the present disclosure provides an information processing device having a first acquisition unit that acquires, for a plurality of users and a plurality of stores, visit history information indicating a history of visits each user has made to each store; a second acquisition unit that acquires, for each of the plurality of users, a user feature amount that indicates a characteristic of the user for at least one item; and an output unit that outputs, for each of the plurality of stores, the feature amount of the store obtained based on the feature information of the users whose relevance to the store is indicated by the visit history information.

[0007] Another aspect of the present disclosure provides an information processing method including the steps of: acquiring, for a plurality of users and a plurality of stores, visit history information indicating a history of visits each user has made to each store; acquiring, for each of the plurality of users, a user feature amount indicating a characteristic of the user for at least one item; and outputting, for each of the plurality of stores, the feature amount of the store obtained based on the feature information of the users whose relevance to the store is indicated by the visit history information.

[0008] According to the present invention, information indicating the characteristics of a store can be obtained more easily.

[0009] 1 is a diagram showing an overview of an information processing system 1 according to an embodiment. A diagram illustrating an example of the functional configuration of an information processing device 10. A diagram illustrating an example of the hardware configuration of the information processing device 10. A flowchart illustrating an example of a store feature amount C generation process. A diagram illustrating an example of visit history information. A diagram illustrating an example of a user feature amount C. A diagram illustrating an example of a generated graph G. A diagram illustrating an example of an initialized store feature amount C. A diagram illustrating an example of an updated store feature amount C. A diagram illustrating an example of an updated user feature amount C. A diagram illustrating a recommendation process in the information processing system 1. A diagram showing an overview of a method for generating a store feature amount C using a statistical method.

[0010] 1. Overview FIG. 1 is a diagram illustrating an overview of an information processing system 1 according to an embodiment. The information processing system 1 provides a service (hereinafter referred to as a "recommendation service") that recommends a recommended store P from among a plurality of stores P to a user U. The information processing system 1 includes an information processing device 10 and a plurality of user terminals 20. The information processing device 10 is a server in the recommendation service. The user terminal 20 is a client in the recommendation service. The information processing device 10 and the user terminals 20 communicate via a network 9. The network 9 is a computer network and includes at least one of a mobile network and the Internet. The information processing system 1 provides a recommendation service to a plurality of users U. When distinguishing between the plurality of users U, they are represented as user U[1], user U[2], ..., user U[k]. Similarly, when distinguishing between the plurality of stores P, they are represented as store P[1], store P[2], ..., store P[m].

[0011] It is preferable that the recommendation service recommends a store P that the user U would actually want to visit. One recommendation method is a method using machine learning. An example of a machine learning model used in this machine learning is a model that uses the characteristics of the user U and the characteristics of the store P as explanatory variables and the visit history as the objective variable. In this way, three types of information are required to develop a machine learning model: the characteristics of the user U, the characteristics of the store P, and the visit history. Here, the characteristics of the store P require effort, such as input by the operator of the store P or by an investigator who actually visits the store P. This effort is an obstacle to building a machine learning model, but without the characteristics of the store P, highly accurate recommendations cannot be made.

[0012] On the other hand, some businesses have information about the characteristics of user U and visit history information. Hereinafter, information that quantifies the characteristics of user U[i] will be referred to as "user feature C[Ui]." For example, a telecommunications business can obtain user feature C from subscriber information and visit history information from location information or payment information of the user terminal 20. The information processing system 1 generates information (hereinafter referred to as "store feature C[Pj]") that quantifies the characteristics of store P[j] from the user feature C and visit history information.

[0013] 2. Configuration FIG. 2 is a diagram illustrating an example of the functional configuration of the information processing device 10. The information processing device 10 includes a first acquisition unit 11, a second acquisition unit 12, a generation unit 13, and an output unit 14. The first acquisition unit 11 acquires visit history information. The visit history information indicates, for a user U and a plurality of stores P, a history of the user U's visits to the store P. The second acquisition unit 12 acquires user feature amounts C. The user feature amounts C are feature information indicating, for each of a plurality of users U, a feature of the user U for at least one item. The generation unit 13 generates store feature amounts C based on the user feature amounts C and the visit history information. More specifically, the generation unit 13 generates store feature amounts C for each of a plurality of stores P based on the user feature amounts C of the user U whose association with the store P is indicated by the visit history information. The output unit 14 outputs the generated store feature amounts C.

[0014] In one example, the generation unit 13 generates the store feature C using a machine learning model 181 including a graph neural network GNN. The graph neural network GNN is a neural network including a graph in which a plurality of users U and a plurality of stores P are connected as nodes.

[0015] The generation unit 13 further includes a feature updating unit 15. In the graph neural network GNN, the feature updating unit 15 updates the feature of each store P based on the user feature C of the user U connected to the node of that store P. Specifically, the feature updating unit 15 calculates (i.e., updates) the store feature C of each store P by convolution with the user feature C of the user U connected to the node of that store P. Furthermore, the feature updating unit 15 calculates (i.e., updates) the user feature C of each user U by convolution with the store feature C of the store P connected to the node of that user U. The feature updating unit 15 repeats these processes until a predetermined convergence condition is satisfied. The output unit 14 outputs the store feature C updated by the feature updating unit 15.

[0016] The information processing device 10 further includes a memory unit 18, a learning unit 16, and a control unit 19. The memory unit 18 stores various data and programs. In this example, the data stored in the memory unit 18 includes a machine learning model 181 and a machine learning model 182. As described above, the machine learning model 181 is a model for generating a store feature C. The machine learning model 182 is a model for recommending a store P to a user U. The learning unit 16 trains the machine learning model 182 using the store feature C.

[0017] FIG. 3 is a diagram illustrating an example of the hardware configuration of the information processing device 10. Physically, the information processing device 10 is configured as a computer or information processing device including a processor 101, a memory 102, a storage 103, a communication device 104, an input device 105, a display device 106, and a bus connecting these devices. Each of these devices operates using power supplied from a battery (not shown). In the following description, the term "device" may be interpreted as a circuit, device, unit, or the like. The hardware configuration of the information processing device 10 may be configured to include one or more of the devices shown in FIG. 3, or may be configured without including some of the devices. Furthermore, the information processing device 10 may be configured by communicating with multiple devices each having a different housing.

[0018] Each function of the information processing device 10 is realized by loading specified software (programs) onto hardware such as the processor 101, memory 102, etc., so that the processor 101 performs calculations, controls communication via the communication device 104, and controls at least one of reading and writing data in the memory 102 and storage 103.

[0019] The processor 101 controls the entire computer by running, for example, an operating system. The processor 101 may be configured as a central processing unit (CPU) including an interface with peripheral devices, a control device, an arithmetic unit, a register, etc. Furthermore, for example, a baseband signal processing unit, a call processing unit, etc. may be realized by the processor 101.

[0020] The processor 101 reads programs (program codes), software modules, data, etc. from at least one of the storage 103 and the communication device 104 into the memory 102 and executes various processes in accordance with these. The programs used are those that cause a computer to execute at least some of the operations described below. The functional blocks of the information processing device 10 may be implemented by a control program stored in the memory 102 and running on the processor 101. Various processes may be executed by one processor 101, or may be executed simultaneously or sequentially by two or more processors 101. The processor 101 may be implemented by one or more chips. The programs may be transmitted to the information processing device 10 via a telecommunications line.

[0021] The memory 102 is a computer-readable recording medium and may be configured by at least one of, for example, a read-only memory (ROM), an erasable programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), a random access memory (RAM), etc. The memory 102 may also be called a register, a cache, a main memory (primary storage device), etc. The memory 102 can store executable programs (program codes), software modules, etc. for implementing the method according to this embodiment.

[0022] Storage 103 is a computer-readable recording medium, and may be composed of at least one of, for example, an optical disk such as a CD-ROM (Compact Disc ROM), a hard disk drive, a flexible disk, a magneto-optical disk (e.g., a compact disk, a digital versatile disk, a Blu-ray (registered trademark) disk), a smart card, a flash memory (e.g., a card, a stick, a key drive), a floppy (registered trademark) disk, a magnetic strip, etc. Storage 103 may also be called an auxiliary storage device.

[0023] The communication device 104 is hardware (transmission / reception device) for communicating between computers via at least one of a wired network and a wireless network, and is also called, for example, a network device, a network controller, a network card, or a communication module.

[0024] Each device, such as the processor 101 and the memory 102, is connected by a bus for communicating information. The bus may be configured using a single bus, or different buses may be used between each device.

[0025] The information processing device 10 may be configured to include hardware such as a microprocessor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a programmable logic device (PLD), or a field programmable gate array (FPGA), and some or all of the functional blocks may be realized by the hardware. For example, the processor 101 may be implemented using at least one of these pieces of hardware.

[0026] In this example, the programs stored in the storage 103 include a program (hereinafter referred to as a "server program") for causing a computer to function as the information processing device 10 in the information processing system 1. When the processor 101 is executing the server program, the processor 101 is an example of the first acquisition unit 11, the second acquisition unit 12, the generation unit 13, the feature update unit 15, the learning unit 16, and the control unit 19, the communication device 104 is an example of the output unit 14, and at least one of the memory 102 and the storage 103 is an example of the memory unit 18.

[0027] 3. Operation FIG. 4 is a flowchart illustrating a store feature generation process (or a generation method) according to one embodiment. The following process is executed by a server program in the information processing device 10. The process in FIG. 4 is started when a predetermined event is triggered. The event that triggers the start of the process in FIG. 4 is, for example, an event in which an instruction to generate a store feature C is received from the management company of the information processing system 1, or an event in which a predetermined time has passed since the previous generation of a store feature C.

[0028] In step S1, the information processing device 10 acquires visit history information. In step S2, the information processing device 10 acquires user feature C. In this example, a system that generates visit history information and a system that generates user feature C are present separately from the information processing system 1, and the information processing system 1 acquires the user feature C and the visit history information from these systems. The visit history information indicates a visit history to a specified target store during a specified period.

[0029] FIG. 5 is a diagram illustrating an example of visit history information. The visit history information is generated, for example, from location information of the user terminal 20 collected by a telecommunications carrier. In this example, the visit history information includes multiple records. Each record includes a pair of a user ID and a store ID, and further includes a visit count. The visit count indicates the number of times the user U has visited the store P. In this example, the visit history information includes attribute information of the store P. The attribute information of the store P includes, for example, the store name and location information. The store name is the name of the store. The location information indicates the latitude and longitude of the store's location. Furthermore, the visit history information includes a total visit count. The total visit count indicates the total number of times each user U has visited all stores P. The example in the top row of FIG. 5 indicates that user U[1] visited store P[1] (named "Genki" and located at latitude N1 degrees north and longitude E1 degrees east) once. It also indicates that user U[1] has visited the target store a total of 10 times.

[0030] FIG. 6 is a diagram illustrating an example of a user feature C. The user feature C is generated, for example, from subscriber information (or user features) registered with a telecommunications carrier. The subscriber information is information indicating the characteristics or attributes of a user, and includes values ​​for multiple items, such as the user U's gender, age group, place of residence, hobbies, and marital status (top row of FIG. 6). The user feature C is a normalized value of each item of the subscriber information. Normalization refers to converting the value to a predetermined numerical value, for example, a real number between 0 and 1 (according to a predetermined rule) (bottom row of FIG. 6). This conversion may be performed by the information processing device 10, or the information processing device 10 may acquire data converted by an external system. Because the subscriber information includes multiple items, the user feature C is a vector whose components are the values ​​of each item.

[0031] As shown in the figure, the user feature C acquired in step S1 is the user feature C of each of the multiple users U. For example, the example in the top row of Fig. 5 indicates that the gender of user U[1] is "1" (indicating female), the age is "0.2" (indicating that the user is in his / her twenties), the place of residence is "0.13" (indicating that the user lives in Tokyo), and the hobby is "0.40" (indicating that the user is traveling).

[0032] Returning to Fig. 4, in step S3, the information processing device 10 generates a graph of the graph neural network GNN based on the visit history information.

[0033] FIG. 7 is a diagram illustrating an example of the graph G to be generated. Graph G has multiple nodes and multiple links (also called edges). Nodes are classified into user nodes and store nodes. A user node is a node corresponding to a user U. A store node is a node corresponding to a store P. Links represent visit history. A link connecting user node [1] and store node [1] indicates that user U [1] has a history of visiting store P [1]. There is no link between a user U with no visit history and a store P. In the following description, a user U who has a link with a store P from the perspective of a certain store P is referred to as a "neighboring user." Similarly, a store P that has a link with the user U from the perspective of a certain user U is referred to as a "neighboring store."

[0034] Figure 7 shows an example of a graph consisting of four users, U[1] to U[4], and three stores, P[1] to P[3]. This graph G corresponds to the visit history information in Figure 4. For example, user U[1] has visited store P[1] and store P[2], and store P[1] has been visited by users U[1] and U[2].

[0035] Returning to FIG. 4 , in step S4, the information processing device 10 initializes the store feature C of each store P. In this example, the store feature C is a vector with the same number of components as the user feature C. The initial value of the store feature C is determined in advance, and for example, all items are null. In step S5, the information processing device 10 updates the store feature C. When updating the store feature C of a certain store P, a calculation is performed to convolve the user feature C of users surrounding the store P. Convolving the user feature C means weighting the user feature C of the surrounding users and applying an aggregation function to these (for example, calculating the average value). The information processing device 10 updates the store feature C for all store nodes included in the graph G. In step S6, the information processing device 10 updates the user feature C. When updating the user feature C of a certain user U, a calculation is performed to convolve the store feature C of stores surrounding the user U. Convolving the store feature C means weighting the store feature C of the surrounding stores and applying an aggregation function to them (for example, calculating an average value). The information processing device 10 updates the user feature C for all user nodes included in the graph G.

[0036] 8 is a diagram illustrating the initialized store feature quantity C (step S4). For the sake of explanation, the store feature quantity C and the user feature quantity C are plotted together in graph G. For example, the user feature quantity C[U1] is (1, 0.3, 0.12, 0.80), and the store feature quantity C[P1] is (-, -, -, -) ("-" indicates a null value).

[0037] FIG. 9 is a diagram illustrating an example of the store feature C (step S5) updated from the state of FIG. 8. Here, the convolution of the store feature C will be explained using the store feature C[P1]. For simplicity of explanation, an example in which all weights are 1 will be used first. The users in the vicinity of store PP[1] are user U[1] and user U[2]. The information processing device 10 adds up the values ​​obtained by multiplying each user feature C by a weight for user U[1] and user U[2], and calculates the average vector Va (the following formula (1)). The information processing device 10 calculates an average vector Vcp between this average vector Va and the store feature C at that time. The information processing device 10 stores the average vector Vcp calculated in this way as a new store feature C[P1] of store P (the following formula (2)). Convolution is similarly performed for other store feature amounts C.

[0038] FIG. 10 is a diagram illustrating an example of user feature C (step S6) updated from the state in FIG. 9 . Convolution is performed on user feature C in the same way as on store feature C. Here, convolution of user feature C is explained using user feature C[U1]. Again, for simplicity of explanation, an example in which all weights are 1 will be used first. The stores surrounding U[1] are store P[1] and store P[2]. The information processing device 10 adds up the values ​​obtained by multiplying each store feature C by a weight for store P[1] and store P[2], and calculates the average vector Vb (the following formula (3)). The information processing device 10 calculates an average vector Vcu between this average vector Vb and the user feature C at that time. The information processing device 10 stores the average vector Vcu thus calculated as a new user feature C[U1] of user U[1] (the following formula (4)). Similar convolution is performed on other user feature amounts C. Note that the user feature amounts C updated in step S6 are merely updated as parameters used in calculating the store feature amounts C, and the subscriber information of the user U is not rewritten.

[0039] Next, the weights used in the convolution will be described. In this example, two types of weights are used in the convolution. The first weight w is a weight for the combination of user U and store P. For example, when viewed from a certain store P, if there are users U who have visited store P many times and users U who have visited store P few times, a larger (or heavier) weight w is assigned to the user U who has visited store P more. In the example of visit history information in FIG. 5, the number of visits to store P[2] is as follows: user U[1] has visited store P[2] once, user U[2] has visited store P[2] ten times, user U[3] has visited store P[2] eight times, and user U[4] has visited store P[2] four times. The first weight w has a larger value as the number of visits increases. In one example, the weight w of the user U who has visited store P the most out of all users U is set to 1, and the weights w of the other users U are determined based on the ratio of the number of visits to that user U. The weights w for each user U are w[U1] = 0.1, w[U2] = 1.0, w[U3] = 0.8, and w[U4] = 0.4.

[0040] The second weight v is a weight for the visit frequency of each user U. For example, if a user U has visited all stores more than the other users U, a larger weight v is assigned to the user U with the greater total number of visits. In the example of visit history information in FIG. 5, the total number of visits to all stores P is 10 for user U[1], 40 for user U[2], 20 for user U[3], and 30 for user U[4]. The greater the number of visits, the larger the value of the first weight w. In one example, the weight v of each user U is calculated by adding 1 to the proportion of each user U's visits to the total number of visits (100) of all users U. The weights v for each user are v[U1] = 1.1, v[U2] = 1.4, v[U3] = 1.2, and v[U4] = 1.3.

[0041] In one example, the store feature quantity C is calculated by the following formula (5). Formula (5) can also be said to be a mathematical formula that generalizes the processing of formulas (2) to (4). Note that, unlike formula (2) or (4), this formula does not take into account the value immediately before itself when calculating a new feature quantity (there is no self-loop), but a self-loop may be added to formula (5). The weight for the self-loop may also be set arbitrarily. where AGGREGATE is any aggregation function, such as element-wise average, LSTM (Long Short-Term Memory), or max pooling.

[0042] Returning to FIG. 4 , in step S7, the information processing device 10 determines whether a convergence condition is satisfied for the store feature C. The convergence condition is predetermined. The convergence condition may be, for example, a condition related to the match rate between the value obtained by applying a predetermined activation function to the distance between each user feature C and the store feature C (i.e., the distance between the two vectors) and the visit history information for the combination of the user U and the store P. Specifically, the convergence condition is that the amount or rate of change in this match rate is equal to or less than a threshold value. As the activation function, for example, a well-known function such as a sigmoid function or a hyperbolic tangent function (tanh) is used.

[0043] If the convergence condition is satisfied (step S7: YES), the information processing device 10 proceeds to step S8. If the convergence condition is not satisfied, the information processing device 10 proceeds to step S5 again. In this way, the processes of steps S5 to S6 are repeatedly executed until the convergence condition is satisfied.

[0044] In step S8, the information processing device 10 outputs the converged store feature quantity C. In one example, the information processing device 10 writes the value of the converged store feature quantity C into the store feature quantity C database. In this way, the information processing device 10 can obtain the store feature quantity C without information input by the manager or investigator of the store P.

[0045] Next, a recommendation process using the store feature amount C generated as described above will be described.

[0046] 11 is a diagram illustrating a recommendation process in the information processing system 1. In step S11, the user terminal 20 transmits a recommendation request to the information processing device 10. A client application program for a recommendation service is installed in the user terminal 20, and this application transmits the recommendation request. The recommendation request includes information that identifies a user feature C of a user U of the user terminal 20. The information that identifies the user feature C is, for example, the user feature C itself or a user ID.

[0047] Upon receiving a recommendation request from the user terminal 20, the information processing device 10 inputs the user feature C and the store feature C into the machine learning model 182 (step S12). The machine learning model 182 is stored in the storage unit 18 of the information processing device 10. However, for simplicity, the machine learning model 182 is depicted as a separate element from the information processing device 10. The machine learning model 182 is a trained model that has undergone machine learning using training data in which the user feature C and the store feature C are used as explanatory variables (or inputs) and the visit history information is used as the objective variable (or output). The information processing device 10 identifies the user feature C and the store feature C from the recommendation request. For example, the recommendation request includes a user ID and conditions for narrowing down the stores (e.g., region or industry). The information processing device 10 has a user database in which user feature values ​​are recorded and a store database in which store feature values ​​are recorded (both not shown). The information processing device 10 refers to the user database to identify the user feature C corresponding to the user ID included in the recommendation request. Furthermore, the information processing device 10 refers to the store database and identifies the store feature amount C of the store P narrowed down by the recommendation request.

[0048] When the user feature amounts C and store feature amounts C are input, the machine learning model 182 infers (or selects) the store P that is optimal for the user U from the input user feature amounts C and store feature amounts C (step S13). The machine learning model 182 outputs the store ID (i.e., identification information) of the store P (step S14). The information processing device 10 extracts attribute information of the store corresponding to the store ID output from the machine learning model 182 from the store database. The information processing device 10 transmits the recommendation result to the user terminal 20 (step S15). This recommendation result includes the identification information and other attribute information of the selected store P.

[0049] When receiving the recommendation result from the information processing device 10, the user terminal 20 displays information about the recommended store P (step S16). In this way, the user U can receive a recommendation of a store P that matches his or her own characteristics.

[0050] 4. Modifications The present invention is not limited to the above-described embodiment, and various modifications are possible. Some modifications will be described below. Two or more of the following features may be applied in combination.

[0051] (1) Generation of Store Feature Amount C The specific method by which the generation unit 13 generates the store feature amount C is not limited to the example exemplified in the embodiment. For example, the weights used in the graph neural network GNN are not limited to the example exemplified in the embodiment. The graph neural network GNN may use only one of the first weight w and the second weight v. Alternatively, the graph neural network GNN may use neither the first weight w nor the second weight v. Furthermore, the graph neural network GNN may use other weights instead of or in addition to the first weight w and the second weight v.

[0052] Alternatively, the generation unit 13 may generate the store feature C without using the graph neural network GNN. In one example, the generation unit 13 generates the store feature C from the user feature C by a statistical method.

[0053] FIG. 12 is a diagram illustrating an overview of a method for generating a store feature C using a statistical method. First, the information processing device 10 identifies a correspondence between a user U and a store P based on visit history information. FIG. 12 illustrates an example using the visit history information of FIG. 5. Next, for each store P, the information processing device 10 performs statistical processing on the user feature C of all users U corresponding to that store (i.e., who have a visit history to store P) to calculate a statistical representative value. The statistical representative value may be, for example, the average value, mode, or median. For example, for the store feature C[P2], the information processing device 10 calculates a statistical representative value, such as the average value, for each component of the user feature C[U1], user feature C[U2], user feature C[U3], and user feature C[U4]. The information processing device 10 stores a vector having the average values ​​thus obtained as components as the store feature C[P2]. ​​In this example, the average of the user feature C of all users U is calculated, for example, using the following equation (6):

[0054] (2) Initial Values ​​and Convergence Conditions In the graph neural network GNN, the initial values ​​and convergence conditions when the convolution of the store feature C and the user feature C is repeatedly performed are not limited to those exemplified in the embodiment. The initial value of the store feature C may be, for example, a vector in which the values ​​of all components are zero. The convergence condition may be, for example, a condition that the average value of the change in the store feature C for all stores P is equal to or less than a predetermined threshold. Alternatively, the convergence condition may be a condition that the average value of the change rate of the store feature C for all stores P is equal to or less than a predetermined threshold.

[0055] (3) Use of store feature C In the above embodiment, an example was described in which the information processing system 1 goes as far as recommending a store P, but the system that generates the store feature C and the system that uses the generated store feature C to recommend the store P to the user U may each be separate systems.

[0056] Furthermore, whether the system that generates the store feature C is the same as or different from the system that uses it, the generated store feature C may not be used as is, but may be used as a parameter that complements the store feature acquired by another service or another system.

[0057] (4) Visit History Information The data format and content of the visit history information are not limited to those exemplified in the embodiment. For example, the visit history information may not include attribute information of each store. In this case, the information processing device 10 may acquire attribute information of each store from a store database (not shown).

[0058] (5) Functional Configuration and Hardware Configuration The functional configuration and hardware configuration of the information processing system 1 are not limited to those exemplified in the embodiments. For example, some of the functional components in FIG. 2 may be omitted. Alternatively, some of the functional components in FIG. 2 may be implemented in another system. The information processing device 10 may have any hardware configuration as long as it can implement the required functions. Furthermore, the correspondence between functional elements and hardware elements is not limited to those exemplified in the embodiments. Two or more devices may physically cooperate to function as a single functional element.

[0059] (6) Others The various programs executed by the processor 101 may be provided by downloading via a network such as the Internet, or may be provided in a state recorded on a computer-readable non-transitory recording medium such as a DVD-ROM. Each processor may be, for example, a CPU, an MPU (Micro Processing Unit), or a GPU (Graphics Processing Unit).

[0060] The block diagrams used to explain the above embodiments show functional blocks. These functional blocks (components) are realized by any combination of hardware and / or software. Furthermore, the method for realizing each functional block is not particularly limited. That is, each functional block may be realized using a single device that is physically or logically coupled, or may be realized using two or more physically or logically separated devices that are directly or indirectly connected (e.g., wired, wireless, etc.) and these multiple devices. The functional block may also be realized by combining software with the single device or multiple devices.

[0061] Functions include, but are not limited to, judgment, determination, judgment, calculation, computation, processing, derivation, investigation, search, confirmation, reception, transmission, output, access, resolution, selection, selection, establishment, comparison, assumption, expectation, consideration, broadcasting, notifying, communicating, forwarding, configuring, reconfiguring, allocating, mapping, and assignment. For example, a functional block (component) that performs transmission is called a transmitting unit or transmitter. As mentioned above, there are no particular limitations on how these functions are implemented.

[0062] For example, the information processing device 10 according to an embodiment of the present disclosure may function as a computer that performs the processing of the present disclosure.

[0063] Each aspect / embodiment described in the present disclosure may be applied to at least one of systems using LTE (Long Term Evolution), LTE-Advanced (LTE-A), SUPER 3G, IMT-Advanced, 4G (4th generation mobile communication system), 5G (5th generation mobile communication system), FRA (Future Radio Access), NR (new Radio), W-CDMA (registered trademark), GSM (registered trademark), CDMA2000, UMB (Ultra Mobile Broadband), IEEE 802.11 (Wi-Fi (registered trademark)), IEEE 802.16 (WiMAX (registered trademark)), IEEE 802.20, UWB (Ultra-Wideband), Bluetooth (registered trademark), or other suitable systems, and next-generation systems enhanced based on these. Furthermore, a combination of multiple systems (e.g., a combination of at least one of LTE and LTE-A with 5G) may also be applied.

[0064] The order of the procedures, sequences, flowcharts, etc. of each aspect / embodiment described in this disclosure may be changed unless it is consistent. For example, the methods described in this disclosure present elements of various steps using an example order, and are not limited to the particular order presented.

[0065] Input and output information may be stored in a specific location (for example, memory) or may be managed using a management table. Input and output information may be overwritten, updated, or added to. Output information may be deleted. Input information may be sent to another device.

[0066] The determination may be made based on a value represented by one bit (0 or 1), a Boolean value (true or false), or a numerical comparison (e.g., comparison with a predetermined value).

[0067] Although the present disclosure has been described in detail above, it is clear to those skilled in the art that the present disclosure is not limited to the embodiments described herein. The present disclosure can be implemented in modified and altered forms without departing from the spirit and scope of the present disclosure as defined by the claims. Therefore, the description of the present disclosure is intended to be illustrative and does not have any limiting meaning on the present disclosure.

[0068] Software, whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise, should be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, threads of execution, procedures, functions, etc. Additionally, software, instructions, information, etc. may be transmitted or received over a transmission medium. For example, if software is transmitted from a website, server, or other remote source using wired technologies (such as coaxial cable, fiber optic cable, twisted pair, Digital Subscriber Line (DSL)), and / or wireless technologies (such as infrared, microwave), then such wired and / or wireless technologies are included within the definition of a transmission medium.

[0069] The information, signals, etc. described in this disclosure may be represented using any of a variety of different technologies. For example, data, instructions, commands, information, signals, bits, symbols, chips, etc. that may be referred to throughout the above description may be represented by voltage, current, electromagnetic waves, magnetic fields or magnetic particles, optical fields or photons, or any combination thereof. Note that terms described in this disclosure and terms necessary for understanding this disclosure may be replaced with terms having the same or similar meanings.

[0070] Furthermore, the information, parameters, etc. described in this disclosure may be expressed using absolute values, may be expressed using relative values ​​from a predetermined value, or may be expressed using other corresponding information.

[0071] As used in this disclosure, the phrase "based on" does not mean "based only on," unless expressly stated otherwise. In other words, the phrase "based on" means both "based only on" and "based at least on."

[0072] As used in this disclosure, any reference to an element using a designation such as "first," "second," etc. does not generally limit the quantity or order of those elements. These designations may be used in this disclosure as a convenient method of distinguishing between two or more elements. Thus, a reference to a first and a second element does not imply that only two elements may be employed or that the first element must in some way precede the second element.

[0073] The "unit" in the configuration of each of the above devices may be replaced with "means," "circuit," "device," or the like.

[0074] When the terms "include," "including," and variations thereof are used in this disclosure, these terms are intended to be inclusive, similar to the term "comprising." Furthermore, when the term "or" is used in this disclosure, it is not intended to be an exclusive or.

[0075] In this disclosure, where articles are added by translation, such as a, an, and the in English, the disclosure may include that the nouns following these articles are in the plural form.

[0076] In the present disclosure, the term "A and B are different" may mean "A and B are different from each other." The term may also mean "A and B are each different from C." Terms such as "separate" and "coupled" may also be interpreted in the same way as "different."

[0077] REFERENCE SIGNS LIST 1...information processing system, 10...information processing device, 11...first acquisition unit, 12...second acquisition unit, 13...generation unit, 14...output unit, 15...feature update unit, 16...learning unit, 18...storage unit, 19...control unit, 20...user terminal, 9...network, C...store feature, user feature, G...graph, GNN...graph neural network, P...store, U...user

Claims

1. An information processing device having: a first acquisition unit that acquires visit history information indicating the history of visits made by each user to each store for a plurality of users and a plurality of stores; a second acquisition unit that acquires, for each of the plurality of users, user feature amounts that indicate the characteristics of the user for at least one item; and an output unit that outputs, for each of the plurality of stores, feature amounts of the store obtained based on the feature information of users whose relevance to the store is indicated by the visit history information.

2. The information processing device according to claim 1, further comprising: a feature update unit that updates the features of each store based on the features of the users connected to the store's node in a graph neural network in which the plurality of users and the plurality of stores are connected to each other as nodes based on the visit history information; and an output unit that outputs the features of the store updated by the feature update unit.

3. The information processing device according to claim 2, wherein the feature updating unit calculates the feature of each store by convolution of the feature of users connected to the node of the store.

4. The information processing device according to claim 3, wherein weights in the convolution are determined based on the number of times the user has visited the plurality of stores in the visit history information.

5. The information processing device according to claim 3, wherein the weights in the convolution are determined based on the number of times the user has visited the store in the visit history information.

6. The information processing device according to claim 2, wherein the feature updating unit updates the feature of each user in the graph neural network based on the feature of a store connected to the node of the user.

7. The information processing device according to claim 5, wherein the feature updating unit calculates the feature of each user by convolution of the feature of the store connected to the node of the user.

8. The information processing device according to claim 2, wherein the feature update unit repeatedly updates the features of the stores and the features of the users until a matching rate between the visit history information and a value obtained by applying a predetermined activation function to the distance between each feature of the users and the features of the stores satisfies a convergence condition, and the output unit outputs the features of the stores that have been repeatedly updated until the convergence condition is satisfied.

9. The information processing device according to claim 1, further comprising a learning unit that trains a machine learning model using the updated store features.

10. An information processing method comprising the steps of: acquiring, for a plurality of users and a plurality of stores, visit history information indicating the history of visits each user has made to each store; acquiring, for each of the plurality of users, user features indicating the characteristics of that user for at least one item; and outputting, for each of the plurality of stores, the features of that store obtained based on the feature information of users whose relevance to the store is indicated by the visit history information.

Citation Information

Patent Citations

  • Recommendation method and device

    CN113570058A

  • Server for route guide, terminal for route guide, and system, method and program for route guide

    JP2004325371A

  • Information processing apparatus, information processing method, and program

    JP2021022279A

  • Service providing body recommendation system

    JP2021157443A

  • System and method for explainable embedding-based recommendation system

    US20210365818A1