Machine learning methods, information processing systems, information processing devices, servers, and programs
By evaluating and correcting local models to align parameter differences, the method ensures robust performance of information recommendation systems across diverse facilities, addressing domain shift challenges in machine learning.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-06-14
- Publication Date
- 2026-04-01
AI Technical Summary
Existing machine learning models for information recommendation struggle with domain shift, leading to decreased performance when deployed in facilities different from those used for training, and current federated learning methods fail to guarantee robustness across unknown domains.
A machine learning method that evaluates and corrects local models trained at each facility to minimize parameter differences, enabling the generation of a universal model with robust performance across facilities by aggregating and aligning local models without sharing facility-specific data.
This approach allows for the creation of a high-performing model that maintains accuracy in unknown facilities, even when data cannot be shared outside the facility, by minimizing differences between local models through parameter alignment and feature selection.
Smart Images

Figure 0007839030000001 
Figure 0007839030000002 
Figure 0007839030000003
Abstract
Description
[Technical Field]
[0001] This disclosure relates to machine learning methods, information processing systems, information processing devices, servers, and programs, and in particular to information recommendation technologies and machine learning technologies that provide recommendations robust to domain shifts. [Background technology]
[0002] In systems that provide various items to users, such as e-commerce (EC) sites or document information management systems, it is difficult, both in terms of time and cognitive ability, for users to choose the best item from among many options. In an EC site, the items are the products sold on the EC site, while in a document information management system, the items are the document information stored in the system.
[0003] Information recommendation technology, which presents selection candidates from a large number of items to assist users in selecting items, is being researched. Generally, when a recommendation system is introduced to a facility, the recommendation system model is trained based on data collected at that facility. However, if the same recommendation system is introduced to a facility different from the one from which the training data was collected, there is a problem in that the prediction accuracy of the model decreases. This problem, where machine learning models do not function well in unknown other facilities, is called domain shift, and in recent years, research on domain generalization, which is the study of improving robustness against domain shift, has become active, mainly in the field of image recognition. However, there are still very few research examples of domain generalization in information recommendation technology.
[0004] In the field of machine learning, data used for training is often not allowed to be taken outside of facilities due to confidentiality concerns. In such cases, federated learning techniques are being researched, which allow artificial intelligence (AI) models to be trained by simply transferring parameters, while keeping the data within each facility. Research on federated learning is also being conducted in the field of information recommendation. For example, Non-Patent Document 1 proposes an algorithm that trains a global model first, and then trains a local model.
[0005] Furthermore, Patent Document 1 describes a configuration in which, when there are restrictions on the data that can be used from the standpoint of privacy, such as patient data from a hospital, proxy data, which is pseudo-data, is generated at each facility instead of local private data and shared with a global server. According to the technology described in Patent Document 2, a global model can be trained using proxy data without sharing highly confidential real data (private data).
[0006] Patent Document 2 describes a configuration for selecting features using data from multiple facilities. The technology described in Patent Document 2 is intended for a recommendation system and uses feature importance of tree models such as gradient boosting regression trees (eXtreme Gradient Boosting: XGBoost) based on user sample data common to all facilities. [Prior art documents] [Patent Documents]
[0007] [Patent Document 1] Special Publication No. 2019-526851 [Patent Document 2] Japanese Patent Publication No. 2021-121922 [Non-patent literature]
[0008] [Non-Patent Document 1] A. Jalalirad, Marco Scavuzzo, Catalin Capota, Michael R. Sprague, “A Simple and Efficient Federated Recommender System” (BDCAT 2019) [Non-Patent Document 2] Quande Liu, Cheng Chen, Jing Qin, Qi Dou, Pheng-Ann Heng,“FedDG: Federated Domain Generalization on Medical Image Segmentation via Episodic Learning in Continuous Frequency Space”(CVPR 2021) [Non-Patent Document 3] Ivan Cantador, Ignacio Fenandez-Tobias, Shlomo Bwrkovsky, Paolo Cremonesi, Chapter 27:"Cross-domain Recommender System" (2015 Springer) [Overview of the project] [Problems that the invention aims to solve]
[0009] The methods described in Non-Patent Document 1 and Patent Documents 1-2 both aim to improve the predictive performance of the model at the facilities where the data used for training was collected (trained facilities), and cannot guarantee the model's performance at unknown facilities that have not been trained. The problem that conventional federative learning methods cannot guarantee robustness to other unknown domains, that is, the problem that the model's performance deteriorates in unknown domains, is described in Non-Patent Document 2.
[0010] Non-patent document 2 concerns domain generalization of a model for medical image segmentation. To address the aforementioned challenges of associative learning, it converts the image signal into frequency space and further decomposes it into amplitude and phase. Assuming that amplitude corresponds to low-order information such as image style and phase corresponds to high-order information related to the meaning of the image, it achieves associative learning that is robust to domain shifts by learning while exchanging the amplitude distribution between local models.
[0011] However, the method described in Non-Patent Document 2 is based on assumptions specific to image data and cannot be applied to information recommendation technology.
[0012] This disclosure is made in light of these circumstances and aims to provide a machine learning method, information processing system, information processing device, server, and program that can generate a high-performance model for unknown other facilities, even when data from multiple facilities cannot be shared outside the facility when training a predictive model used for information recommendation. [Means for solving the problem]
[0013] A machine learning method according to a first aspect of this disclosure is a machine learning method performed by an information processing system including one or more processors, the information processing system learning a local model that predicts a user's behavior toward items for each facility using facility-specific data collected at each of a plurality of facilities; evaluating the differences in the parameters of the local models learned for each facility; and correcting the learning of the local models based on the evaluation results so that the differences between the models become smaller.
[0014] According to the first aspect, without aggregating the data of multiple facilities, local models can be learned for each facility using their respective data. By passing the parameters of the local models learned at each facility, the information of the local models of multiple facilities is aggregated, and the difference between the models of the parameters of each local model is evaluated. Then, the learning for each local model is corrected so that the difference between the models becomes smaller. By repeating such processing, the difference between the models of each local model gradually becomes smaller. By repeating the learning and correction of each local model until the difference between the models becomes small enough to be an acceptable level, a universal relationship independent of the facility is learned, and a model with robust performance against differences between facilities can be obtained. The machine learning method according to the first aspect can be understood as a method (manufacturing method) for producing a model applied to information recommendation.
[0015] A model includes the concept of a program that enables a processor to realize a prediction function. The information processing system may be, for example, a computer system including a plurality of computers. The machine learning method according to the first aspect may be implemented by distributed computing. A facility includes the concept of a group composed of a plurality of users, such as, for example, a company, a hospital, a store, an administrative agency, or an EC site. Each of the multiple facilities can be a different domain from each other.
[0016] In the case of "correcting the learning of the local model", "correction" includes the meaning of making a change to the learned local model. "Change" includes the concept of "modification". The correction may be to change the parameters of the local model, or to select and discard features in the local model, or a combination of these. <The machine learning method according to the third aspect of the present disclosure is the machine learning method of the second aspect, wherein the local model includes cross features, and when the information processing system corrects the learning of the local model, the parameters are changed so that the difference between the models of the parameters, which are the weights of the cross features, becomes small. It may be a configuration including this.
[0019] The machine learning method according to the fourth aspect of the present disclosure is the machine learning method according to any one of the first to third aspects, wherein correcting the learning of the local model includes selecting features with relatively small differences between the models of the parameters among the plurality of features included in the local model, and deleting features with relatively large differences between the models of the parameters from the local model, and changing the local model. It may be a configuration including this.
[0020] The information processing system may, for example, delete features with a difference between the models of the parameters greater than a reference value from the local model, or delete features with the largest difference between the models of the parameters or some of the top features in descending order of the difference from the local model.
[0021] The machine learning method according to the fifth aspect of the present disclosure is the machine learning method according to the fourth aspect, wherein the local model includes cross features, and when the information processing system corrects the learning of the local model, it selects cross features with relatively small differences between the models of the parameters, which are the weights of the cross features, among the plurality of features including the cross features, and deletes cross features with relatively large differences between the models of the parameters. It may be a configuration including this. The cross feature is a form of feature.
[0022] The machine learning method according to the sixth aspect of the present disclosure is the machine learning method according to the third or fifth aspect, wherein the weight of the cross feature may be expressed by the relationship of the embedding representation of each feature.
[0023] The machine learning method according to the seventh aspect of this disclosure is a machine learning method according to the sixth aspect, in which the relationship between the embedding representations of each feature may be the dot product of the vectors representing each feature.
[0024] The machine learning method according to the eighth aspect of this disclosure is a machine learning method according to any one aspect of the first to seventh aspects, wherein the local model is a model that performs neighborhood-based collaborative filtering based on at least one of the relationships between users and between items, and the parameters of the local model may include a correlation coefficient that indicates at least one of the relationships between users and between items.
[0025] The machine learning method according to the ninth aspect of this disclosure may include, in the machine learning method according to the eighth aspect, a configuration in which the information processing system modifies the correlation coefficients to reduce the difference in correlation coefficients between models when correcting the learning of local models.
[0026] The machine learning method according to the tenth aspect of this disclosure may include, in the machine learning method according to the eighth or ninth aspect, a configuration in which, when the information processing system corrects the learning of the local model, it selects relationships among multiple relationships included in the local model in which the difference in correlation coefficients between models is relatively small, and removes relationships from the local model in which the difference in correlation coefficients between models is relatively large.
[0027] The machine learning method according to the 11th aspect of this disclosure may, in any one aspect of the first to tenth aspects, include an information processing system comprising a plurality of information processing devices that perform learning of local models corresponding to each of a plurality of facilities, and a server that is communicably connected to each of the plurality of information processing devices via a telecommunications line, wherein the learning is performed by federated learning in which at least one of the parameters of the local model and the amount of parameter updates is communicated between the information processing devices and the server without communicating facility-specific data.
[0028] The machine learning method according to the 12th aspect of this disclosure may be configured such that, in the machine learning method according to the 11th aspect, the server obtains parameters of a local model from each of the multiple information processing devices, evaluates the differences in the parameters of the local models between the models, issues instructions to each of the multiple information processing devices to correct the learning, and each of the multiple information processing devices performs at least one of changing the parameters of the local model and selecting features based on the instructions.
[0029] The machine learning method according to the 13th aspect of this disclosure is a machine learning method according to the 11th or 12th aspect, wherein the local model is a model that performs neighborhood-based collaborative filtering based on the relationship between users and between items, and the parameters of the local model may include a correlation coefficient that indicates the relationship between users and between items.
[0030] An information processing system according to a 14th aspect of this disclosure is an information processing system including one or more processors, wherein one or more processors learn a local model for predicting user behavior toward items for each of a plurality of facilities using facility-specific data collected at each of the facilities, evaluate the differences in the parameters of the local models learned for each facility, and correct the learning of the local models based on the evaluation results so that the differences between the models become smaller.
[0031] The information processing system according to the 14th aspect can be understood as a machine learning system for generating predictive models applicable to information recommendation. The information processing system may be a centralized system or a distributed system.
[0032] In the information processing system according to the 14th embodiment, the configuration may include specific embodiments similar to those of the information processing method according to any one of the 2nd to 13th embodiments described above.
[0033] An information processing system according to the 15th aspect of this disclosure may include, in an information processing system according to the 14th aspect, a plurality of information processing devices that perform learning of local models corresponding to each of a plurality of facilities, and a server that is communicably connected to each of the plurality of information processing devices via a telecommunications line, wherein learning is performed by federated learning in which at least one of the parameters of the local model and the amount of parameter updates is communicated without communicating facility-specific data between the plurality of information processing devices and the server.
[0034] An information processing device according to a 16th aspect of this disclosure is an information processing device comprising one or more first processors and one or more first storage devices, wherein one or more first processors learn a first local model that predicts a user's behavior toward items at a first facility using first data collected at a first facility, transmit the parameters of the learned first local model to a server, receive instructions from the server to correct the learning of the first local model so that the difference between the models and the parameters of a second local model learned using second data collected at a second facility different from the first facility becomes smaller, and update the first local model based on the received instructions.
[0035] An information processing device according to the 16th embodiment may be installed in each of several different first facilities. The information processing device may function as a learning device that performs training of a first local model in cooperation with a server.
[0036] The information processing apparatus according to the 16th embodiment may have a configuration that includes specific embodiments similar to those of the information processing method according to any one of the 2nd to 13th embodiments described above.
[0037] A server according to a 17th aspect of this disclosure is a server including one or more second processors and one or more second storage devices, wherein one or more second processors acquire parameters of local models learned in each of a plurality of information processing devices corresponding to each of a plurality of facilities, evaluate the differences between the local model parameters for each facility, and, based on the evaluation results, transmit instructions to each of the plurality of information processing devices to correct the learning of the local models so that the differences between the models become smaller.
[0038] According to the 17th embodiment, the parameters of each local model learned in each of the multiple information processing devices are aggregated in a server, and the server evaluates the differences between the local model parameters for each facility. The server controls the learning operation in each information processing device to correct the learning of each local model so that the differences between models become smaller. The server may act as a central server that comprehensively controls the learning of local models in each of the multiple information processing devices. The server may aggregate the parameters of multiple local models learned in each of the multiple information processing devices to generate a global model.
[0039] The information processing apparatus according to the 17th embodiment may have a configuration that includes specific embodiments similar to those of the information processing method according to any one of the 2nd to 13th embodiments described above.
[0040] The program according to the 18th aspect of this disclosure provides a computer with the following functions: a function to learn a local model that predicts a user's behavior toward items for each facility using facility-specific data collected at each of multiple facilities; a function to evaluate the differences in the parameters of the local models learned for each facility; and a function to correct the learning of the local models based on the evaluation results so that the differences between the models become smaller.
[0041] The computer in the 18th embodiment includes the concept of a distributed system. The program in the 18th embodiment may have a configuration that includes specific embodiments similar to the information processing method in any one of the embodiments from the 2nd to the 13th embodiments described above.
[0042] The program according to the 19th aspect of this disclosure provides a computer with the following functions: a function to learn a first local model that predicts a user's behavior toward items at a first facility using first data collected at the first facility; a function to send the parameters of the learned first local model to a server; a function to receive instructions from the server to correct the learning of the first local model so that the difference between the model and the parameters of a second local model learned using second data collected at a second facility different from the first facility becomes smaller; and a function to update the first local model based on the received instructions.
[0043] In the program relating to the 19th aspect, the configuration may include specific aspects similar to the information processing method relating to any one of the above-described aspects 2 to 13.
[0044] The program according to the 20th aspect of this disclosure enables a computer to perform the following functions: acquire parameters of a local model learned in each of a plurality of information processing devices corresponding to each of a plurality of facilities; evaluate the differences between the local model parameters for each facility; and, based on the evaluation results, send instructions to each of the plurality of information processing devices to correct the learning of the local model so that the differences between the models become smaller.
[0045] In the program relating to the 20th aspect, the configuration may include specific aspects similar to the information processing method relating to any one of the above-described aspects 2 to 13. [Effects of the Invention]
[0046] According to this disclosure, by evaluating the differences in parameters between local models learned at each facility and correcting the learning of each local model to minimize these differences, it becomes possible to generate a model with robust performance against facility differences, even when data from multiple facilities cannot be shared outside of those facilities. As a result, a high-performing model can be obtained even for unknown facilities other than the facility from which the data used for training was collected. [Brief explanation of the drawing]
[0047] [Figure 1] Figure 1 is a conceptual diagram of a typical recommendation system. [Figure 2] Figure 2 is a conceptual diagram illustrating an example of supervised machine learning, which is widely used in building recommendation systems. [Figure 3] Figure 3 is an explanatory diagram showing a typical implementation flow of a recommendation system. [Figure 4] Figure 4 is an explanatory diagram of the implementation flow of the recommendation system when data from the target facility is not available. [Figure 5] Figure 5 is an explanatory diagram for training a model through domain adaptation. [Figure 6] Figure 6 is an explanatory diagram of the recommendation system implementation flow, which includes a step to evaluate the performance of the trained model. [Figure 7] Figure 7 is an explanatory diagram showing examples of training data and evaluation data used in machine learning. [Figure 8] Figure 8 is a graph that schematically shows the differences in model performance due to differences in datasets. [Figure 9] Figure 9 is a conceptual diagram of general associative learning. [Figure 10] Figure 10 is a conceptual diagram of the mechanism in associative learning where a global model is trained first, followed by a local model. [Figure 11] Figure 11 is an explanatory diagram illustrating an overview of the machine learning method according to the embodiment of this disclosure. [Figure 12]Figure 12 is a block diagram showing an example of the overall configuration of a machine learning system according to the embodiment. [Figure 13] Figure 13 is a block diagram showing an example of the hardware configuration of an information processing device that functions as a local learning device. [Figure 14] Figure 14 is a block diagram showing an example of a global server hardware configuration. [Figure 15] Figure 15 is an explanatory diagram illustrating the outline of a first example of a machine learning method performed by a machine learning system according to an embodiment. [Figure 16] Figure 16 is a flowchart showing a first example of a machine learning method according to the embodiment. [Figure 17] Figure 17 is a functional block diagram showing example 1 of the functional configuration of an information processing device that functions as a local learning device. [Figure 18] Figure 18 is a functional block diagram showing example 1 of the functional configuration of a global server. [Figure 19] Figure 19 is an explanatory diagram illustrating a second example of a machine learning method performed by a machine learning system. [Figure 20] Figure 20 is an explanatory diagram showing examples of vector representations of user attributes and item attributes in domain d1. [Figure 21] Figure 21 is a functional block diagram showing example 2 of the functional configuration of an information processing device that functions as a local learning device. [Figure 22] Figure 22 is a functional block diagram showing example 2 of the functional configuration of a global server. [Figure 23] Figure 23 is a chart showing an example of user behavior history data for items in a certain company 1. [Modes for carrying out the invention]
[0048] Preferred embodiments of the present invention will be described below with reference to the attached drawings.
[0049] An Overview of Information Recommendation Technology First, we will provide an overview of information recommendation technology, including its basic concepts and challenges, with specific examples. Information recommendation technology is a technology used to recommend (suggest) items to users.
[0050] Figure 1 is a conceptual diagram of a typical recommendation system 10. The recommendation system 10 accepts user information and context information as input and outputs information about items to recommend to the user according to the context. Context refers to various "situations," such as the day of the week, time of day, or weather. Items can be various objects, such as books, videos, or restaurants.
[0051] Recommendation system 10 typically recommends multiple items simultaneously. Figure 1 shows an example where recommendation system 10 recommends three items, IT1, IT2, and IT3. Generally, a recommendation is considered successful if the user gives a positive response to the recommended items IT1, IT2, and IT3. Positive responses include, for example, purchase, viewing, or visit. Such recommendation technologies are widely used, for example, on e-commerce sites and gourmet websites that introduce restaurants.
[0052] The recommendation system 10 is built using machine learning techniques. Figure 2 is a conceptual diagram showing an example of supervised machine learning widely used in building the recommendation system 10. Generally, positive and negative examples are prepared based on the user's past behavior history, and combinations of users and contexts are input into the prediction model 12. The prediction model 12 is then trained to minimize the prediction error. For example, viewed items are used as positive examples, and unviewed items are used as negative examples. Machine learning is performed until the prediction error converges, and the target prediction performance is achieved.
[0053] Using the trained prediction model 12, the system recommends items that are predicted to have a high probability of being viewed for a given combination of user and context. For example, when a combination of user A and context β is input to the trained prediction model 12, the prediction model 12 infers that user A is highly likely to view a document like item IT3 under the conditions of context β, and recommends items similar to item IT3 to user A. Depending on the configuration of the recommendation system 10, it is also common to recommend items to users without considering the context.
[0054] [Examples of data used in the development of recommendation systems] User behavior history is essentially equivalent to "ground truth data" in machine learning. Strictly speaking, it can be understood as a task setting where the next (unknown) action is inferred from past behavior history, but it is more common to learn latent features based on past behavior history.
[0055] User activity history could include, for example, book purchase history, video viewing history, or restaurant visit history.
[0056] Furthermore, the main features include user attributes and item attributes. User attributes can include a variety of elements such as gender, age, occupation, family structure, and residential area. Item attributes can include a variety of elements such as book genre, price, video genre, length, restaurant genre, and location.
[0057] [Model construction and operation] Figure 3 is an explanatory diagram illustrating a typical implementation flow of a recommendation system. Here, we show a typical flow for implementing a recommendation system in a certain facility. The implementation of a recommendation system involves first building a model 14 that performs the desired recommendation task (Step 1), and then implementing and operating the built model 14 (Step 2). "Building" the model 14, in the case of a machine learning model, includes training the model 14 using training data to create a predictive model (recommendation model) that satisfies practical recommendation performance levels. "Operating" the model 14 means, for example, obtaining an output of a list of recommended items from the trained model 14 in response to an input of a combination of user and context.
[0058] Building Model 14 requires training data. As shown in Figure 3, the recommendation system Model 14 is generally trained based on data collected at the facility where it is implemented. By training with data collected from the facility, Model 14 learns the behavior of users at the facility and can predict recommended items with high accuracy for those users.
[0059] However, due to various circumstances, data from the facility where the system is to be implemented may not be available. For example, in the case of document information recommendation systems in a company's internal system or a hospital's in-house system, the company developing the recommendation model often does not have access to data from the facility where it is to be implemented. If data from the facility where the system is to be implemented is unavailable, the model must instead be trained on data collected from different facilities.
[0060] Figure 4 is an explanatory diagram of the recommendation system implementation flow when data from the target facility is unavailable. Model 14, which was trained using data collected from a facility different from the target facility, Guidance When implemented at a client's facility, the prediction accuracy of Model 14 suffers from a decrease due to differences in user behavior between facilities.
[0061] The problem of machine learning models not functioning well in unknown facilities different from the facilities in which they were trained can be broadly understood as a technical challenge to improve robustness to domain shifts, where the source domain in which Model 14 was trained differs from the target domain to which Model 14 is applied. Related to domain generalization is domain adaptation, a method of training using data from both the source and target domains. The purpose of using data from a different domain, even though data from the target domain exists, is to compensate for the insufficient amount of data in the target domain for training.
[0062] Figure 5 is an explanatory diagram for training Model 14 through domain adaptation. Although the amount of data collected at the target domain, the facility where the model is implemented, is relatively smaller in proportion to the amount of data collected at different facilities, by training with both sets of data, Model 14 becomes capable of predicting the behavior of users at the target facility with a certain degree of accuracy.
[0063] [Domain description] The differences in "facilities" mentioned above are a type of domain difference. Non-patent literature 3 (Ivan Cantador et al, Chapter 27: "Cross-domain Recommender System"), which is a document on research into domain adaptation in information recommendation, classifies domain differences into the following four categories.
[0064] [1] Item attribute level: For example, comedy movies and horror movies are in different domains.
[0065] [2] Item type level: For example, movies and television series are in different domains.
[0066] [3] Item level: For example, movies and books are in different domains.
[0067] [4] System level: For example, movies shown in movie theaters and movies shown on television are in different domains.
[0068] The differences in "facilities" shown in Figure 5, etc., correspond to the [4] system-level domain among the four classifications mentioned above.
[0069] Formally, a domain is defined by the joint probability distribution P(X,Y) of the dependent variable Y and the independent variable X, and d1 and d2 belong to different domains when Pd1(X,Y) ≠ Pd2(X,Y).
[0070] The joint probability distribution P(X,Y) can be expressed as the product of the distribution of the explanatory variable P(X) and the conditional probability distribution P(Y|X), or as the product of the distribution of the dependent variable P(Y) and the conditional probability distribution P(Y|X).
[0071] P(X,Y)=P(Y|X)P(X)=P(X|Y)P(Y) Therefore, if one or more of P(X), P(Y), P(Y|X), and P(X|Y) change, it becomes a different domain.
[0072] [Typical patterns of domain shift] [Covariate Shift] When the distributions P(X) of explanatory variables differ, this is called a covariate shift. For example, if the distribution of user attributes differs between datasets, or more specifically, if the male-female ratio differs, this constitutes a covariate shift.
[0073] [Prior probability shift] When the distribution P(Y) of the dependent variable differs, it is called a prior probability shift. For example, when the average viewing rate or average purchase rate differs between datasets, this falls under the category of prior probability shift.
[0074] [Concept Shift] A concept shift occurs when the conditional probability distributions P(Y|X) and P(X|Y) are different. For example, if the probability that a company's research and development department reads a data analysis document is P(Y|X), and this probability differs across datasets, this is considered a concept shift.
[0075] Studies on domain adaptation or domain generalization can be broadly categorized into those that assume one of the above patterns as the primary cause, and those that consider how to deal with changes in P(X,Y) without specifically considering which pattern is the primary cause. In the former case, covariate shifts are particularly common.
[0076] [Reasons why domain shifts have an impact] Predictive / classification models that perform prediction or classification tasks make inferences based on the relationship between the explanatory variable X and the target variable Y. Therefore, if P(Y|X) changes, the prediction / classification performance will naturally decrease. Furthermore, when machine learning predictive / classification models are developed, the model minimizes the prediction / classification error within the training data. For example, when the frequency of the explanatory variable X=X_1 is greater than the frequency of X=X_2, i.e., P(X=X_1)>P(X=X_2), there is more data for X=X_1 than for X=X_2. Therefore, error reduction for X=X_1 takes precedence over error reduction for X=X_2. Consequently, prediction / classification performance also decreases when P(X) changes between facilities.
[0077] Domain shifts can be a problem for models of various tasks, not just information recommendation. For example, a model that predicts employee turnover risk may become problematic when a predictive model trained on data from one company is used in another company.
[0078] Furthermore, with regard to models that predict antibody production by cells, domain shift can become a problem when a model trained using data from one antibody is applied to a different antibody. Similarly, with regard to models that classify customer feedback (VOC), such as a model that categorizes VOC into "product features," "support," and "other," domain shift can become a problem when a classification model trained using data from one product is applied to a different product.
[0079] [Regarding pre-implementation evaluation of the model] Before introducing the trained model 14 to actual facilities, it is common practice to evaluate the model 14's performance. This performance evaluation is necessary for determining whether or not to introduce the model, and for research and development of the model or training method.
[0080] Figure 6 is an explanatory diagram of the recommendation system implementation flow, which includes a step to evaluate the performance of the trained model 14. In Figure 6, a step to evaluate the performance of model 14 is added as "Step 1.5" between Step 1 (the step to train model 14) and Step 2 (the step to operate model 14) as explained in Figure 5. The other configurations are the same as in Figure 5. As shown in Figure 6, in a typical recommendation system implementation flow, the data collected at the facility where the system is to be implemented is often divided into training data and evaluation data. After confirming the predictive performance of model 14 using the evaluation data, operation of model 14 is started.
[0081] However, when constructing a domain generalization model 14, the training data and evaluation data must be from different domains. Furthermore, in domain generalization, it is preferable to use training data from multiple domains, and it is even preferable to have more domains available for training.
[0082] [Regarding generalization] Figure 7 is an explanatory diagram illustrating examples of training data and evaluation data used in machine learning. A dataset obtained from the joint probability distribution Pd1(X,Y) of a certain domain d1 can be divided into training data and evaluation data. Evaluation data from the same domain as the training data is called the "first evaluation data" and is denoted as "evaluation data 1" in Figure 7. In addition, a dataset obtained from the joint probability distribution Pd2(X,Y) of a different domain d2 is prepared and used as evaluation data. Evaluation data from a different domain than the training data is called the "second evaluation data" and is denoted as "evaluation data 2" in Figure 7.
[0083] Model 14 is trained using training data from domain d1, and the performance of the trained model 14 is evaluated using the first evaluation data from domain d1 and the second evaluation data from domain d2.
[0084] Figure 8 is a schematic graph illustrating the difference in model performance due to differences in datasets. If we denote the performance of Model 14 in the training data as Performance A, the performance of Model 14 in the first evaluation data as Performance B, and the performance of Model 14 in the second evaluation data as Performance C, then typically, as shown in Figure 8, the relationship is Performance A > Performance B > Performance C.
[0085] The high generalization performance of Model 14 generally refers to a high performance B, or a small difference between performance A and B. In other words, it aims for high predictive performance even on untrained data without overfitting to the training data.
[0086] In the context of domain generalization as used herein, this refers to a high performance C, or a small difference between performance B and performance C. In other words, the goal is to achieve consistently high performance even in domains different from those used for training.
[0087] [Description of the task] In this embodiment, assuming a situation where data collected at each of multiple facilities cannot be taken out of each facility when training a model applied to an information recommendation system, we provide a means to obtain a domain-shift-robust model that can achieve high-performance information recommendation even at unknown facilities other than the facilities where the data used for training is collected.
[0088] Figure 9 is a conceptual diagram of general associative learning. Here, as an example of multiple facilities, three facilities, Facility 1 to Facility 3, are shown. The number of facilities can be any number of two or more. The type of facility is not limited; for example, it could be a company, a hospital, a retail store, etc. Hereafter, an index number k will be used to distinguish the facilities, and they will be referred to as "Facility k," etc.
[0089] At each facility k, data collected is retained within that facility, and a local model LMk is trained for each facility. The information processing device (hereinafter referred to as the local learning device) that executes the local model LMk training process at each facility k is connected to a global server via a telecommunications line (not shown). The global server collects the parameters of each local model LMk, integrates the parameters, and generates a global model GM. The global server can send the parameters of the global model GM to the local learning devices at each facility k and reflect them in the parameters of the local model LMk. In this type of federated learning, there are two approaches: one that aims to improve the performance of the global model GM common to all facilities, and another that aims to improve the performance of the local model LMk for each facility.
[0090] Figure 10 is a conceptual diagram of the mechanism in associative learning where the global model GM is trained first, followed by the training of the local model LMk. The left side of Figure 10 represents the global epoch, which is the learning process of the global model GM, and the right side of Figure 10 represents the local epoch, which is the learning process of the individual local model LMk.
[0091] In a global epoch, the global server GSV aggregates (e.g., averages) the parameters of individual local models LMk to train the global model GM. In subsequent local epochs, each facility k's local learning device isolates itself from parameter exchange with the global model GM and trains its own individual local model LMk.
[0092] The method shown in Figure 10 aims to improve the performance of the local model LMk at each individual facility k, and does not guarantee the performance of the model at other (unknown) facilities besides facility k.
[0093] [Overview of the machine learning method according to the embodiment] Figure 11 is an explanatory diagram illustrating an overview of the machine learning method according to the embodiment of this disclosure. In Figure 11, an unknown facility (a facility that has not been trained) that is different from the facility k on which each local model LMk was trained is denoted as facility UF.
[0094] In this embodiment, the model is trained to perform well for unknown facilities UF. To achieve this, the training method of each local model LMk is controlled so that the differences between local models LMk for multiple facilities k are minimized. An example of a specific control method will be described later, but the basic idea is as follows: In a model applied to information recommendation, the relationship between explanatory variables and the target variable includes both facility-specific and facility-independent universal relationships. If each local model LMk learns predictions based on facility-specific relationships, the differences between local models LMk will be large. Conversely, if each local model LMk learns predictions based on facility-independent universal relationships, the differences between local models LMk will be small. Therefore, in this embodiment, by controlling the training so that the differences between local models LMk for different facilities are minimized, the models are guided to learn facility-independent universal relationships. This makes it possible to obtain a model with robust predictive performance against differences in facilities.
[0095] [Example of a machine learning system configuration] Figure 12 is a block diagram showing an example of the overall configuration of a machine learning system 50 according to an embodiment. The machine learning system 50 includes a plurality of local learning devices LTk corresponding to each of a plurality of facilities k (k=1,2,...n), and a global server GSV that is communicatively connected to each local learning device LTk via a telecommunication line 52. The telecommunication line 52 may include a wide area network such as the Internet. The machine learning system 50 is an example of an "information processing system" in this disclosure.
[0096] The local learning device LTk is an information processing device that performs the process of learning a local model LMk for each facility k using local data LDk collected at facility k. The local learning device LTk may be, for example, a server built on the local area network of facility k, or it may be a terminal device that can access data within facility k.
[0097] The local data LDk contains the behavioral history of multiple users for multiple items at facility k. Each facility k's local data LDk is restricted from being taken outside of facility k and cannot be shared between different facilities. Each facility k's local data LDk is maintained within its own facility k, and the global server GSV cannot receive local data LDk from local learning devices LTk or other devices within facility k. The local data LDk is an example of “per-facility data” in this disclosure.
[0098] The local model LMk is a learning model trained using local data LDk as training data to predict the user's behavior towards items. Each local learning device LTk includes a parameter calculation unit 62 that updates the parameters of the local model LMk, and a communication unit 64. The parameter calculation unit 62 performs the process of calculating the amount of parameter update and the process of updating the parameters. The communication unit 64 includes a communication interface that connects to a telecommunication line 52 and exchanges information with the global server GSV.
[0099] The global server GSV includes a communication unit 72, a model difference evaluation unit 74, a learning correction unit 78, and a global model generation unit 80. The communication unit 72 includes a communication interface connected to a telecommunication line 52 for exchanging information with each local learning device LTk. The model difference evaluation unit 74 performs a process to evaluate the difference between models based on the information of the local model LMk received from the local learning device LTk. The model difference evaluation unit 74 includes a parameter calculation unit 75 that performs calculations necessary for evaluating the difference between models using the parameter values of multiple local models LMk. The learning correction unit 78 performs control such as correcting the learning by the local learning device LTk based on the evaluation results by the model difference evaluation unit 74.
[0100] The global model generation unit 80 performs the process of generating a global model from multiple local models LMk based on the evaluation results from the inter-model difference evaluation unit 74.
[0101] [Example configuration of a local learning device] Figure 13 is a block diagram showing an example of the hardware configuration of an information processing device 100 that functions as a local learning device LTk. The information processing device 100 can be implemented using computer hardware and software. The physical form of the information processing device 100 is not particularly limited and may be a server, a workstation, a personal computer, or a tablet terminal. Here, an example of implementing the processing functions of the information processing device 100 using a single computer is described, but the processing functions of the information processing device 100 may also be implemented by a computer system composed of multiple computers.
[0102] The information processing device 100 includes a processor 102, a computer-readable medium 104 which is a non-temporary tangible object, a communication interface 106, an input / output interface 108, and a bus 110.
[0103] The processor 102 includes a CPU (Central Processing Unit). The processor 102 may also include a GPU (Graphics Processing Unit). The processor 102 is connected to a computer-readable medium 104, a communication interface 106, and an input / output interface 108 via a bus 110. The processor 102 reads various programs and data stored in the computer-readable medium 104 and executes various processes. The term "program" includes the concept of a program module and includes instructions equivalent to a program. The processor 102 is an example of the "first processor" in this disclosure. The computer-readable medium 104 is an example of the "first storage device" in this disclosure.
[0104] The computer-readable medium 104 is a storage device that includes, for example, a main memory 112 and an auxiliary storage device, a storage 114. The storage 114 is configured using, for example, a hard disk drive (HDD), a solid state drive (SSD), an optical disk, a magneto-optical disk, or semiconductor memory, or an appropriate combination thereof. Various programs and data are stored in the storage 114.
[0105] Memory 112 is used as a workspace for the processor 102 and serves as a temporary storage unit for programs and various data read from storage 114. When a program stored in storage 114 is loaded into memory 112, and the processor 102 executes the program's instructions, the processor 102 functions as a means of performing various processes defined by the program.
[0106] Memory 112 stores various programs and data, such as the local learning program 130 executed by the processor 102, and the local model LMk. The local model LMk may be included within the local learning program 130. Memory 112 includes a local data storage unit 136. The local data storage unit 136 is a storage area that stores a dataset (hereinafter referred to as the local dataset) containing local data LDk collected at facility k.
[0107] The local learning program 130 is a program that uses local data LDk to train the local model LMk so that its prediction performance improves at facility k.
[0108] The communication interface 106 performs communication processing with external devices via wired or wireless connections and exchanges information with external devices. The information processing device 100 is connected to a communication line (not shown) via the communication interface 106. The communication line may be a local area network, a wide area network, or a combination of both. The communication interface 106 can act as a data acquisition unit, for example, accepting input of various data such as calculation results from the global server GSV, various instructions from the global server GSV, and local datasets. The communication interface 106 also acts as a data output unit, transmitting local model information, including model parameters of the local model LMk, to the global server GSV.
[0109] The information processing device 100 may include an input device 152 and a display device 154. The input device 152 and the display device 154 are connected to the bus 110 via an input / output interface 108. The input device 152 may be, for example, a keyboard, mouse, multi-touch panel, or other pointing device, or an audio input device, or an appropriate combination thereof. The display device 154 may be, for example, a liquid crystal display, an organic electro-luminescence (OEL) display, or a projector, or an appropriate combination thereof. The input device 152 and the display device 154 may be configured as an integrated unit, such as a touch panel, or the information processing device 100, the input device 152, and the display device 154 may be configured as an integrated unit, such as a touch panel tablet terminal.
[0110] [Example of a Global Server GSV configuration] Figure 14 is a block diagram showing an example of the hardware configuration of a global server GSV. The hardware configuration of the global server GSV may be the same as the hardware configuration of the information processing device 100 described in Figure 13. The global server GSV includes a processor 302, a computer-readable medium 304, a communication interface 306, an input / output interface 308, and a bus 310. The computer-readable medium 304 includes memory 312 and storage 314. The global server GSV may also include an input device 352 and a display device 354. Each hardware configuration may be the same as the corresponding elements of the configuration shown in Figure 13.
[0111] The global server GSV is an example of a “server” in this disclosure. Processor 302 is an example of a “second processor” in this disclosure. Computer-readable medium 304 is an example of a “second storage device” in this disclosure.
[0112] Memory 312 stores various programs and data, such as the inter-model difference evaluation program 330, the learning control program 332, the global model generation program 334, and the global model GM, which are executed by the processor 302.
[0113] The inter-model difference evaluation program 330 is a program that acquires local model information, including the model parameters of each local model LMk, and performs a process to evaluate the inter-model differences between multiple local models LMk based on the acquired local model information. The learning control program 332 is a program that performs a process to control the learning of local model LMk at each facility k so that the difference between each local model LMk becomes smaller, based on the evaluation results of the inter-model differences. The learning control by the learning control program 332 includes the concept of correcting the learning based on the prediction error of the local model LM. Examples of specific correction methods (control methods) will be described later.
[0114] The global model generation program 334 is a program that executes the process of generating a global model GM based on the local model information received from each local learning device LTk.
[0115] [First example of a machine learning method: Regularization approach] Figure 15 is an explanatory diagram illustrating the outline of a first example of a machine learning method performed by the machine learning system 50 according to the embodiment. Here, an example of regularization for domain generalization (domain regularization) is shown. In Figure 15, for the sake of explanation, the case where the prediction formula for the local model LMk of facility k is expressed by the following equation (1) is shown.
[0116] y = w1_dk*x1 + w2_dk*x2 (1) In the equation, x1 and x2 are features related to the explanatory variables, respectively. w1_dk and w2_dk are parameters that represent the weights of the features x1 and x2, respectively. Note that the local model LMk is not limited to the representation in equation (1), and may include many more combinations of features and weights.
[0117] The machine learning system 50 repeats steps 1 through 3 below.
[0118] [Step 1] In Step 1, the local learning device LTk learns using the local data LDk from each facility k and updates the parameters of the local model LMk. The local learning device LTk updates the parameters to reduce the prediction error based on the prediction error of the local model LMk.
[0119] [Step 2] In Step 2, the global server GSV retrieves the parameters of each local model LMk and calculates the difference in parameters for each local model LMk compared to the mean values of the other local models. For example, the global server GSV calculates the difference between the parameter w1_d1 of local model LM1 and the mean values of the other local models LM2 and LM3 (w1_d2+w1_d3) / 2. Similarly, the global server GSV calculates the difference between the parameter w2_d1 of local model LM1 and the mean values of the other local models LM2 and LM3 (w2_d2+w2_d3) / 2. The global server GSV does the same for local models LM2 and LM3, calculating the difference in parameters compared to the mean values of the other local models. The values of the parameter differences calculated here correspond to the partial derivatives of the loss component introduced for domain regularization.
[0120] [Step 3] In step 3, the global server GSV instructs the local model LMk to minimize the differences in the parameters of each feature. For example, the global server GSV instructs the local learning device LT1 to update the parameter w1_d1 of the local model LM1 to the value w1_d1-α(w1_d1-(w1_d2+w1_d3) / 2), where α is a hyperparameter representing the learning rate (learning speed).
[0121] Furthermore, the global server GSV instructs the local learning device LT1 to update the parameter w2_d1 of the local model LM1 to the value of w2_d1-α(w2_d1-(w2_d2+w2_d3) / 2).
[0122] The global server GSV may instruct the local learning device LT1 to provide the parameter update values "-α(w1_d1-(w1_d2+w1_d3) / 2)" and "-α(w2_d1-(w2_d2+w2_d3) / 2)", or it may instruct the local learning device LT1 to provide the updated parameter values "w1_d1-α(w1_d1-(w1_d2+w1_d3) / 2)" and "w2_d1-α(w2_d1-(w2_d2+w2_d3) / 2)". Alternatively, the global server GSV may instruct the local learning device LT1 to use values to calculate the parameter update amount, such as "w1_d1-(w1_d2+w1_d3) / 2" and "w2_d1-(w2_d2+w2_d3) / 2", or "(w1_d2+w1_d3) / 2" and "(w2_d2+w2_d3) / 2", and the local learning device LT1 may calculate the parameter update amount.
[0123] The global server GSV also instructs the other local models LM2 and LM3 to update their parameters so that the differences between the parameters of each feature become smaller.
[0124] Following the instructions in Step 3, the parameters of each local model LMk are updated in Step 1. The machine learning system 50 repeats Steps 1-3 and proceeds to Step 4 when predetermined termination conditions are met. The termination conditions may be, for example, reaching a predetermined number of iterations, or the difference between models falling within an acceptable range.
[0125] [Step 4] In Step 4, the global server GSV constructs the global model GM based on the local models LM1-LM3. Possible methods for constructing the global model GM include the following methods 1-3:
[0126] Method 1: Repeat steps 1-3 until all local model LMk converges to the same parameters, then select one of the models as the global model GM.
[0127] Method 2: Use the average of all local model LMk as the global model GM.
[0128] Method 3: From all local models LMk, select the optimal local model as the global model GM based on the smallest parameter difference and the highest predictive performance. Alternatively, take a weighted average using the parameter difference and the evaluation value of predictive performance, and adopt the weighted averaged model as the global model GM.
[0129] Facility 1 in Figure 15 is an example of the “First Facility” in this disclosure, and local data LD1 and local model LM1 are examples of the “First Data” and “First Local Model” in this disclosure. Facility 2 and Facility 3 are examples of the “Second Facility” in this disclosure, and local data LD2 and local data LD3 are examples of the “Second Data” in this disclosure. In addition, local model LM2 and local model LM3 are examples of the “Second Local Model” in this disclosure, respectively, in relation to local model LM1.
[0130] The same applies to Facility 2 and Facility 3, with each of them being an example of the “First Facility” in this disclosure.
[0131] [Example of a loss function for regularization for domain generalization] The loss function L applied to training the local model LM1 of facility 1 is constructed including a prediction error part and a domain regularization part, for example, as shown in equation (2) below.
[0132] L=(y-y_true) 2 +(w1_d1-(w1_d2+w1_d3) / 2) 2 +(w2_d1-(w2_d2+w2_d3) / 2) 2 (2) The first term on the right-hand side of equation (2) is the loss component of the prediction error part, and the second and third terms are the loss components of the domain regularization part.
[0133] Here, the prediction formula for the dependent variable y is given by equation (3).
[0134] y = w1_d1*x1 + w2_d1*x2 (3) In equation (2), y_true is the correct value (teacher signal) of the target variable in the training data.
[0135] During the training of the local model LM1, the loss function L shown in equation (2) is partially differentiated with respect to each parameter w1_d1 and w2_d1, and these parameters are updated. The value of the partial derivative of the loss function L is naturally divided into a prediction error part and a domain regularization part.
[0136] The prediction error portion of equation (2) includes the training data y_true and therefore needs to be calculated on the local learning device LT1. In contrast, the domain regularization portion can be calculated on the global server GSV or on the local learning device LT1. Figure 15 illustrates an example where the global server GSV calculates the domain regularization portion and then issues instructions to the local learning device LT1.
[0137] There are two main ways to update parameters:
[0138] Case 1: An approach in which the partial derivatives of the prediction error portion and the domain regularization portion are combined and updated.
[0139] Case 2: An embodiment in which updates based on partial derivatives of the prediction error portion and updates based on partial derivatives of the domain regularization portion are performed alternately.
[0140] Figure 15 illustrates the method for Case 2. Here, "alternating" does not mean alternating on a sample-by-sample basis, but rather updating a certain number of samples (e.g., 100 samples) using only prediction error, then updating them using domain regularization, and so on, repeating this process alternately. Figure 16 shows a flowchart illustrating a concrete example of the Case 2 method.
[0141] Figure 16 is a flowchart showing a first example of a machine learning method according to the embodiment. In step S10, the global server GSV sets the parameters of the local models LM1-LM3 for each of the multiple facilities 1-3 to their initial values. For example, they may be set to random values using a normal distribution with a mean of 0 and a standard deviation of 0.1.
[0142] In step S11, the local learning device LT1 randomly selects one data point from facility 1 and updates the parameters w1_d1 and w2_d1 of the local model LM1 to reduce the prediction error. The local learning device LT1 repeats this update process, for example, 100 times.
[0143] In step S12, the local learning device LT2 randomly selects one data point from facility 2 and updates the parameters w1_d2 and w2_d2 of the local model LM2 to reduce the prediction error. The local learning device LT1 repeats this update process, for example, 100 times.
[0144] In step S13, the local learning device LT3 randomly selects one data point from facility 3 and updates the parameters w1_d3 and w2_d3 of the local model LM3 to reduce the prediction error. The local learning device LT3 repeats this update process, for example, 100 times.
[0145] Steps S11 to S13 may be carried out in parallel on the local learning devices LT1-LT3 at each facility. Furthermore, the timing of the implementation of steps S11-S13 may be freely set by each facility, and the order in which steps S11-S13 are implemented is not limited.
[0146] Subsequently, in step S14, each local learning device LTk sends the parameters of local models LM1-LM3 to the global server GSV.
[0147] In step S15, the global server GSV updates the parameters of local model LM1 based on the acquired parameters of each local model LMk, so that the difference between the parameters of local model LM1 and the parameters of local models LM2 and LM3 becomes smaller.
[0148] In step S16, the global server GSV updates the parameters of local model LM2 based on the acquired parameters of each local model LMk, so that the difference between the parameters of local model LM2 and the parameters of local models LM3 and LM1 becomes smaller.
[0149] In step S17, the global server GSV updates the parameters of local model LM3 based on the acquired parameters of each local model LMk, so that the difference between the parameters of local model LM3 and the parameters of local models LM1 and LM2 becomes smaller.
[0150] In steps S15-S17, the global server GSV determines the change in the parameters of each local model LMk based on the parameters it receives, updates the parameters within the global server GSV, and sends the updated parameters to each local learning device LTk, thereby updating the parameters within the local model LMk as well.
[0151] In step S18, the global server GSV determines whether the parameters have converged. If the result of the determination in step S18 is No, that is, if the parameters have not converged, the process returns to step S11 and steps S11 to S17 are repeated.
[0152] On the other hand, if the result of step S18 is a Yes, that is, if the parameters have converged, the flowchart in Figure 16 is terminated.
[0153] [Example 1 of the functional configuration of the information processing device 100] Figure 17 is a functional block diagram showing example 1 of the functional configuration of the information processing device 100, which functions as a local learning device LTk. The information processing device 100 shown in Figure 17, following instructions from the global server GSV, trains the local model LMk to reduce the differences between models through domain regularization, as described in Figures 15 and 16.
[0154] The information processing device 100 includes a data acquisition unit 220, a data storage unit 222, a local learning unit 230, and a data output unit 250. The data acquisition unit 220 acquires local data LDk collected at facility k. The information processing device 100 may also have a function to collect local data LDk. The data acquisition unit 220 also acquires various data such as learning correction instructions from the global server GSV.
[0155] The local data LDk acquired via the data acquisition unit 220 is stored in the data storage unit 222. The local data storage unit 136 (see Figure 13) is included in the data storage unit 222.
[0156] The local learning unit 230 includes a sampling unit 232, a local model LMk, a loss calculation unit 234, and an optimizer 236, and trains the local model LMk using the local data LDk. The sampling unit 232 samples training data from the local data LDk dataset. For example, when optimizing parameters using stochastic gradient descent (SGD), the sampling unit 232 selects one record from the training dataset at each training step. This operation is repeated until the prediction error of the local model LMk converges.
[0157] The training data sampled by the sampling unit 232 is input to the local model LMk, and the local model LMk outputs prediction results corresponding to the input data. The local model LMk is constructed as a mathematical model that predicts the user's behavior towards items. Note that since the sampling unit 232 probabilistically samples records from the dataset to be used as input to the local model LMk, there may be variations in the number of times a record is used for training within the range of probabilistic fluctuations.
[0158] The loss calculation unit 234 calculates the loss value between the prediction (inference) result output from the local model LMk and the correct data (training data) associated with the input data.
[0159] The optimizer 236 determines the amount of parameter updates for the local model LMk based on the loss calculation results, and performs parameter update processing for the local model LMk, so that the prediction results output by the local model LMk approach the ground truth data. The optimizer 236 includes a parameter update amount calculation unit 237 that calculates the amount of parameter updates and a parameter update unit 238 that performs parameter update processing. The optimizer 236 updates the parameters based on algorithms such as gradient descent.
[0160] The local learning unit 230 may acquire training data one sample at a time and update the parameters, or it may acquire training data and update parameters in units of minibatches, which are groups of multiple training data.
[0161] In this way, machine learning is performed using training data sampled from the local data LDk dataset, optimizing the parameters of the local model LMk and generating a local model LMk with the target predictive performance.
[0162] Local model information, including the model parameters of the local model LMk, is sent to the global server GSV via the data output unit 250.
[0163] Furthermore, the local learning unit 230 updates the parameters of the local model LMk according to the learning correction instructions received from the global server GSV. If the learning correction instructions from the global server GSV include instructions for the amount of parameter updates, the parameter update unit 238 updates the parameters of the local model LMk by the amount of updates instructed by the global server GSV. If the learning correction instructions from the global server GSV include instructions for a part of the loss function or a value used in calculating the parameter update amount, the loss calculation unit 234 and / or the parameter update amount calculation unit 237 calculate the loss value and / or parameter update amount using the values instructed by the global server GSV. Then, the parameter update unit 238 updates the parameters of the local model LMk based on the values instructed by the global server GSV.
[0164] Furthermore, the parameter calculation unit 62 shown in Figure 12 includes a loss calculation unit 234 and a parameter update amount calculation unit 237, and the communication unit 64 shown in Figure 12 can function as a data acquisition unit 220 and a data output unit 250.
[0165] [Example 1 of the functional configuration of the global server GSV] Figure 18 is a functional block diagram showing example 1 of the functional configuration of the global server GSV. The global server GSV shown in Figure 18 controls the training of the local model LMk to reduce the differences between models through domain regularization, as described in Figures 16 and 17.
[0166] The global server GSV includes a data acquisition unit 420, a data storage unit 422, a global learning unit 430, and a data output unit 450. The data acquisition unit 420 acquires local model information, including the parameters of the local model LMk, from the local learning device LTk of each facility k. The data acquisition unit 420 may acquire only the parameters of the local model LMk, or it may acquire all the information necessary to identify the local model LMk (for example, a copy of the local model LMk).
[0167] The parameter values of each local model LMk, acquired via the data acquisition unit 420, are stored in the data storage unit 422.
[0168] The global learning unit 430 includes a model difference evaluation unit 74, a learning correction unit 78, and a global model generation unit 80. The model difference evaluation unit 74 includes a domain regularization calculation unit 76. The domain regularization calculation unit 76 performs the calculation of the domain regularization portion of the loss function L, as described as step 2 in Figure 16.
[0169] The learning correction unit 78 issues instructions to correct the learning of the local model LMk based on the calculation results of the inter-model difference evaluation unit 74. For example, the learning correction unit 78 outputs a learning correction instruction as a control signal that instructs the updating of the parameters of the local model LMk, along with the value of the partial derivative of the domain regularization part calculated by the domain regularization calculation unit 76. The learning correction instruction from the learning correction unit 78 is transmitted to the local learning device LTk via the data output unit 450.
[0170] The global model generation unit 80 constructs the global model GM based on the acquired parameters of the local model LMk. The global model generation unit 80 generates the global model GM after the parameters of each local model LMk have converged through the repetition of steps 1 to 3 as described in Figure 15.
[0171] Furthermore, even when the parameters of the local model LMk have not yet converged, the global model generation unit 80 may generate a provisional global model GM using the latest parameters of the local model LMk, and update the parameters of the global model GM in accordance with the updates to the parameters of the local model LMk. The model parameters of the global model GM can be transmitted to an external device such as a local learning device LTk via the data output unit 450.
[0172] [Regarding the difference between domain regularization and general regularization] The "regularization" for domain generalization in this embodiment is conceptually different from general regularization in machine learning (e.g., L1 regularization). Regarding general regularization, for example, in the case of a Lasso regression model, the model and loss function can be expressed as, for example, equations (4) and (5), respectively.
[0173] y = w1 * x1 + w2 * x2 (4) L=(y-y_true) 2 +|w1|+|w2| (5) In this case, the first term on the right-hand side of equation (5) is the prediction error. Introducing losses that reduce (to zero) unimportant parameters, as in the second and third terms, is a common form of regularization.
[0174] In contrast, for domain generalization (domain regularization), if the predictive model for domain 1 is expressed as equation (6) and the predictive model for domain 2 is expressed as equation (7), then a loss function such as equation (8) is used.
[0175] y = w1_d1*x1 + w2_d1*x2 (6) y = w1_d2*x1 + w2_d2*x2 (7) L=(y-y_true) 2 +|w1_d1-w1_d2|+|w2_d1-w2_d2| (8) As shown in the second and third terms on the right-hand side of equation (8), domain regularization refers to introducing a loss that reduces the difference between parameters between domains.
[0176] In the explanation of Figure 15, to evaluate the difference in parameters between domains, the domain regularization parts, such as the second and third terms of equation (2), are used instead of the second and third terms of equation (8).
[0177] [Second example of a machine learning method: Feature selection approach] Figure 19 is an explanatory diagram illustrating a second example of a machine learning method performed by the machine learning system 50. Here, we show an example of reducing the difference between models by selecting features in the model. The differences between Figure 19 and Figure 15 are explained below. Step 1 in Figure 19 is the same as Step 1 in Figure 15. Steps 2B to 3B are performed instead of Steps 2 and 3 in Figure 15.
[0178] [Step 2B] In step 2B, the global server GSV retrieves the parameters of each local model LMk and calculates the difference in the weights (parameters) of each feature between the models. For example, the global server GSV calculates the difference in the weights of feature x1 between the models using equation (9) below.
[0179] Diff_w1=|w1_d1-w1_d2|+|w1_d2-w1_d3|+|w1_d3-w1_d1| (9) Similarly, the difference in the weights of feature x2 between models is calculated using the following equation (10).
[0180] Diff_w2=|w2_d1-w2_d2|+|w2_d2-w2_d3|+|w2_d3-w2_d1| (10) Here, we illustrate the weights of two features x1 and x2, but in reality, the differences between models are calculated for the weights of many more features.
[0181] [Step 3B] In step 3B, the global server GSV instructs the local model LMk to select (keep) features with small weight differences between models. The global server GSV also instructs the local model LMk to exclude features with large weight differences between models, because features with large weight differences have low universality under domain shift.
[0182] For example, as shown in Figure 19, if the difference in the weights of feature x2 between models is very large, the global server GSV will instruct the local model LMk to exclude feature x2.
[0183] [Regarding model representation and cross-sectional features] In recommendation technologies, interactions between features are often important, so it is preferable to consider cross-features as well. For example, the local model LMk can be expressed as shown in equation (11).
[0184] y=(w_11_d1*x_u1*x_i1+w_12_d1*x_u1*x_i2+w_13_d1*x_u1*x_i3)+(w_2 1_d1*x_u2*x_i1+w_22_d1*x_u2*x_i2+w_23_d1*x_u2*x_i3)+(w_31_d1*x_ u3*x_i1+w_32_d1*x_u3*x_i2+w_33_d1*x_u3*x_i3)+(w_u1_d1*x_u1+w_u2 _d1*x_u2+w_u3_d1*x_u3)+(w_i1_d1*x_i1+w_i2_d1*x_i2+w_i3_d1*x_i3) (11) In equation (11), x_u1, x_u2, and x_u3 each have a value of 1 if a user u corresponds to user attribute 1, 2, or 3, and 0 otherwise. Similarly, in equation (11), x_i1, x_i2, and x_i3 each have a value of 1 if an item i corresponds to item attribute 1, 2, or 3, and 0 otherwise.
[0185] For example, in the case of a model that predicts user purchases of items, the sum of the first to ninth terms on the right side of equation (11), "(w_11_d1*x_u1*x_i1+w_12_d1*x_u1*x_i2+w_13_d1*x_u1*x_i3)+(w_21_d1*x_u2*x_i1+w_22_d1*x_u2*x_i2+w_23_d1*x_u2*x_i3)+(w_31_d1*x_u3*x_i1+w_32_d1*x_u3*x_i2+w_33_d1*x_u3*x_i3)", is the part that evaluates whether a user with certain user attributes has a high probability of purchasing an item with certain item attributes.
[0186] The sum of terms 10 through 12 on the right-hand side of equation (11), "(w_u1_d1*x_u1+w_u2_d1*x_u2+w_u3_d1*x_u3)", evaluates whether users with a certain user attribute have a high purchase rate. The sum of terms 13 through 15 on the right-hand side of equation (11), "(w_i1_d1*x_i1+w_i2_d1*x_i2+w_i3_d1*x_i3)", evaluates whether items with a certain item attribute are likely to be purchased.
[0187] The domain regularization loss explained using Figure 15 can be similarly defined for the weights of cross-feature vectors. For example, a domain regularization loss like that shown in equation (12) can be introduced as the domain regularization part of the loss function.
[0188] (w_11_d1-(w_11_d2+w_11_d3) / 2) 2 +(w_12_d1-(w_12_d2+w_12_d3) / 2) 2 + … . (12) Furthermore, regarding feature selection for cross-features, for example, if |w_32_d1-(w_32_d2+w_32_d3) / 2| is large, the combination x_u3*x_i2 (cross-features) is excluded from the prediction model. In this case, the term x_u3*x_i2 for cross-features is removed from equation (11), resulting in the prediction equation shown in equation (13).
[0189] y=(w_11_d1*x_u1*x_i1+w_12_d1*x_u1*x_i2+w_13_d1*x_u1*x_i3)+ (w_21_d1*x_u2*x_i1+w_22_d1*x_u2*x_i2+w_23_d1*x_u2*x_i3)+(w _31_d1*x_u3*x_i1+w_33_d1*x_u3*x_i3)+(w_u1_d1*x_u1+w_u2_d1* x_u2+w_u3_d1*x_u3)+(w_i1_d1*x_i1+w_i2_d1*x_i2+w_i3_d1*x_i3) (13)
[0190] [Example 1 of weight representation of cross-features] The weights of cross-feature vectors may also be calculated based on the embedding representations of individual features. For example, if the vector for user attribute 1 in domain d1 is Vk_u^1_d1 and the vector for item attribute 2 is V_i^2_d1, then the weight w_12_d1 of the cross-feature vector between user attribute 1 and item attribute 2 can be expressed by the following equation (14).
[0191] w_12_d1=f(Vk_u^1_d1,Vk_i^2_d1) =Vk_u^1_d1 · Vk_i^2_d1 (14) f is any function, for example, it could be the dot product.
[0192] The weights of other crossover features can be represented in a similar manner.
[0193] Figure 20 shows an example of the vector representation of each user attribute and item attribute in domain d1. Here, examples of user attributes 1 to 3 and item attributes 1 to 3 are shown, and an example in which each attribute is represented by a 5-dimensional vector is shown.
[0194] In this case, the weight of the cross feature is expressed by a function based on the combination of two attribute vectors, for example, the inner product, similar to Equation (14). The same representation is possible for other domains d2, d3, and so on.
[0195] 〔Example 2 of Weight Representation of Cross Features〕 The features x1 and x2 used in the prediction formula of the model are not limited to attribute data, and may correspond to users and items at the ID level. For example, when the user ID is u and the item ID is i, the cross feature at the ID level is expressed by the following Equation (15).
[0196] y = w_ui_d1 = θu_d1 · φi_d1 (15) θu_d1 and φi_d1 represent the vector of user ID u and the vector of item ID i in domain d1.
[0197] When the user ID is u a and the item ID is i a the cross feature at the ID level is expressed by the following Equation (16).
[0198] y = w_u a i a _d1 = θu a _d1 · φi a _d1 (16) Also, the prediction formula may combine the cross feature at the ID level and the cross feature at the attribute level. For example, the prediction formula may be expressed as follows in Equation (17).
[0199] y = w_ui_d1 +(w_11_d1*x_u1*x_i1+w_12_d1*x_u1*x_i2+w_13_d1*x_u1*x_i3)+(w_21 _d1*x_u2*x_i1+w_22_d1*x_u2*x_i2+w_23_d1*x_u2*x_i3)+(w_31_d1*x_u 3*x_i1+w_32_d1*x_u3*x_i2+w_33_d1*x_u3*x_i3)+(w_u1_d1*x_u1+w_u2 _d1*x_u2+w_u3_d1*x_u3)+(w_i1_d1*x_i1+w_i2_d1*x_i2+w_i3_d1*x_i3) (17) The same applies to other domains such as d2, d3, etc.
[0200] [Example 2 of the functional configuration of the information processing device 100] Figure 21 is a functional block diagram showing example 2 of the functional configuration of the information processing device 100, which functions as a local learning device LTk. The information processing device 100 shown in Figure 21 learns the local model LMk in accordance with instructions from the global server GSV, by reducing the differences between models through feature selection as described in Figure 19. For the configuration shown in Figure 21, elements common to Figure 17 are denoted by the same reference numerals, and redundant explanations are omitted. The information processing device 100 shown in Figure 21 includes a local learning unit 230B instead of the local learning unit 230 in Figure 17. The local learning unit 230B includes a feature selection unit 233 that selects features of the local model LMk based on learning correction instructions from the global server GSV. The feature selection unit 233 updates the local model LMk by deleting features that have relatively large parameter differences between models, based on learning correction instructions from the global server GSV. Other configurations may be the same as in Figure 17.
[0201] The information processing device 100 may perform both the parameter update process by domain regularization, as described in Figure 17, and the model update process by feature selection.
[0202] [Example 2 of the functional configuration of the global server GSV] Figure 22 is a functional block diagram showing example 2 of the functional configuration of the global server GSV. The global server GSV shown in Figure 22 evaluates the parameter differences between models for each feature and selects features to remove those with large parameter differences. For the configuration shown in Figure 22, elements common to Figure 18 are denoted by the same reference numerals, and redundant explanations are omitted. The global server GSV shown in Figure 22 includes a global learning unit 430B instead of the global learning unit 430 in Figure 18. The inter-model difference evaluation unit 74 of the global learning unit 430B includes a feature-specific parameter difference calculation unit 77 that evaluates the parameter differences (differences in weights between models) between models for each feature. The feature-specific parameter difference calculation unit 77 performs the processing of step 2B in Figure 19. The learning correction unit 78 also includes a feature selection unit 79 that selects features based on the calculation results of the feature-specific parameter difference calculation unit 77. The feature selection unit 79 performs the processing of step 3B in Figure 19. Other configurations may be the same as in Figure 19.
[0203] In addition, the global learning unit 430B may generate a corrected local model LMk with selected features and return this local model LMk with selected features to the local learning device LTk. In this case, the information processing device 100 updates its held local model LMk with the local model LMk received from the global server GSV. The processing function of the feature selection unit 233 of the information processing device 100 described in Figure 21 may be included in the feature selection unit 79 of the global server GSV.
[0204] The global server GSV may perform both the domain regularization calculation process and the feature selection process described in Figure 18.
[0205] [Specific application examples] Here, we consider the case of an internal document recommendation system for a company. We assume that the learning and evaluation data consists of activity history (in this case, document viewing history) data for companies 1, 2, and 3. Figure 23 shows an example of user activity history data for items in company 1. Here, "item" refers to a document. The table shown in Figure 23 includes columns for "Time," "User ID," "Item ID," "User Attribute 1," "User Attribute 2," "Item Attribute 1," "Item Attribute 2," and "Viewed / Viewed."
[0206] "Time" is the date and time the item was viewed. "User ID" is an identification code that identifies the user, and a unique ID (identification) is defined for each user. "Item ID" is an identification code that identifies the item, and a unique ID is defined for each item. "User Attribute 1" is, for example, the department to which the user belongs. "User Attribute 2" is, for example, the user's age. "Item Attribute 1" is, for example, the document type as the classification category of the item. "Item Attribute 2" is, for example, the file type of the item. "Viewed Status" has a value of "1" if the item was viewed (viewed). Note that there are a huge number of items that have not been viewed, so it is common to record only viewed items (viewed status = 1) in the record.
[0207] In Figure 23, "Viewed / Not Viewed" is an example of the dependent variable Y, and "User Attribute 1," "User Attribute 2," "Item Attribute 1," and "Item Attribute 2" are examples of independent variables X. The number of types and combinations of independent variables X are not limited to the example in Figure 23. Independent variables X may also include context 1, context 2, user attribute 3, and item attribute 3, which are not shown.
[0208] Companies 2 and 3 also have similar behavioral history data. We assume that the data from each company cannot be taken outside the company. In this case, we first train a local predictive model (local model) for each company. A logistic regression model is used that utilizes cross-features and employs user attribute 1 (department), user attribute 2 (age group), item attribute 1 (document type), and item attribute 2 (file type) as features.
[0209] Training is performed using SGD, with a specified number of updates at a specified training rate. As a result of training, the weights of each feature are determined for each local model LMk.
[0210] Next, each local model LMk is transferred to the global server GSV. The data used for training is not transferred at this time.
[0211] The global server GSV calculates the difference between each weight of the local model LM1 of company 1 and the average of each weight of the local model LM2 of company 2 and the local model LM3 of company 3. The global server GSV is instructed to subtract this difference multiplied by a certain value from the local model LM1 of company 1. Alternatively, it returns the subtracted parameters to the local model LM1 of company 1. The same operation is performed for the local model LM2 of company 2 and the local model LM3 of company 3.
[0212] The above steps of local model training and parameter adjustment are repeated until the difference between the prediction error and the weights converges. This builds a predictive model based on universal characteristics rather than company-specific characteristics.
[0213] For example, if Company 1 shows a higher document viewing rate with increasing age, but this trend is not observed in Companies 2 and 3, the relationship between age and viewing rate is a non-universal characteristic, and therefore the weight of the predictive model will be small. In other words, the weight of age for Company 1 will decrease, and the weight will be allocated to features with more universal characteristics. On the other hand, if the tendency for sales departments to view product catalogs is common to Companies 1-3, then the weights of all local models LM1-LM3 for Companies 1-3 will be high for this crossover feature, and therefore the weights will be preserved.
[0214] [Regarding model representation] The means of representing the joint probability distribution of the explanatory variable X and the dependent variable Y are not particularly limited, and methods such as matrix factorization, logistic regression, or Naive Bayes can be applied. Even in the case of any predictive model, the output score can be calibrated to approximate the probability P(Y|X) and used as a means of representing the joint probability distribution. For example, SVM (Support Vector Machine), GDBT (Gradient Boosting Decision Tree), and neural network models of any architecture can also be used.
[0215] [Application to neighbor-based collaborative filtering] As a method for predicting user behavior towards items, neighbor-based collaborative filtering based on relationships between users and items may be applied. Collaborative filtering is a method that uses correlations, such as the fact that people who view item A also view item B. In this case, domain regularization or feature selection is applied to determine whether the correlation between item A and item B (that people who view item A also view item B) is universal across the domain. In other words, constraints are placed on the correlation coefficients to be similar, or relationships with significantly different correlation coefficients are excluded from the features of the prediction model.
[0216] [Example of neighborhood-based collaborative filtering] In the case of neighbor-based collaborative filtering, the predicted value y of the probability that a user will view an item can be expressed, for example, by equation (18).
[0217] y = Σ s_ij_d1 × r_uj (18) In equation (18), r_uj takes the value "1" if user u has interacted with item j (in this case, by viewing it), and "0" if there has been no interaction.
[0218] s_ij_d1 is the correlation coefficient between item i and item j in domain d1.
[0219] In other words, y, which is the predicted probability that user u will view item i, becomes larger the more items that user u has viewed in the past that are highly correlated with item i.
[0220] s_ij_d1 can be calculated, for example, using the Jacquard exponent method, by the following equation (19).
[0221] (Number of users who viewed both items i and j) / (Number of users who viewed at least one of items i or j) (19)
[0222] [Example of feature selection in neighborhood-based collaborative filtering] If s_ij differs significantly between domains, it is preferable to exclude the correlation between those items from the prediction formula (set s_ij to 0). For example, if the value of equation (20) is above a certain value, s_ij_d1, s_ij_d2, and s_ij_d3 are excluded from the prediction formula (i.e., their values are set to 0), and if it is below a certain value, they are not excluded (these correlation coefficients are used as they were).
[0223] |s_ij_d1-s_ij_d2|+|s_ij_d2-s_ij_d3|+|s_ij_d3-s_ij_d1| (20)
[0224] [Regarding programs that operate computers] It is possible to record a program that implements some or all of the processing functions of the information processing device 100 and the global server GSV on a computer, on a computer-readable medium which is a tangible, non-temporary information storage medium such as an optical disk, magnetic disk, or semiconductor memory, and to provide the program through this information storage medium.
[0225] Alternatively, instead of providing programs by storing them on tangible, non-temporary computer-readable media, it is also possible to provide program signals as a download service using telecommunication lines such as the Internet.
[0226] Furthermore, some or all of the processing functions in the information processing device 100 and the global server GSV may be implemented by cloud computing, and they can also be provided as SaaS (Software as a Service).
[0227] [Regarding the hardware configuration of each processing unit] The hardware structure of the processing units that perform various processes in the information processing device 100, such as the parameter calculation unit 62, communication unit 64, data acquisition unit 220, local learning unit 230, sampling unit 232, feature selection unit 233, loss calculation unit 234, parameter update amount calculation unit 237, and parameter update unit 238, as well as the communication unit 72, inter-model difference evaluation unit 74, parameter calculation unit 75, domain regularization calculation unit 76, feature-specific parameter difference calculation unit 77, learning correction unit 78, feature selection unit 79, and global model generation unit 80 in the global server GSV, is, for example, various processors as shown below.
[0228] Various types of processors include general-purpose processors such as CPUs, GPUs, and FPGAs (Field Programmable Gate Arrays), which are programmed logic devices (PLDs) whose circuit configurations can be changed after manufacturing, and dedicated electrical circuits, which are processors with circuit configurations specifically designed to perform particular tasks, such as ASICs (Application Specific Integrated Circuits).
[0229] A single processing unit may be composed of one of these various processors, or it may be composed of two or more processors of the same or different type. For example, a single processing unit may be composed of multiple FPGAs, or a combination of a CPU and an FPGA, or a combination of a CPU and a GPU. Alternatively, multiple processing units may be composed of a single processor. Examples of composing multiple processing units with a single processor include, firstly, a configuration where one or more CPUs and software are combined to form a single processor, and this processor functions as multiple processing units, as is typical of computers such as clients and servers. Secondly, a configuration where a processor is used that realizes the functions of the entire system, including multiple processing units, on a single IC (Integrated Circuit) chip, as is typical of System-on-a-Chip (SoC) systems. Thus, various processing units are configured, in terms of hardware structure, using one or more of the above-mentioned various processors.
[0230] Furthermore, the hardware structure of these various processors is, more specifically, an electrical circuit composed of circuit elements such as semiconductor devices.
[0231] [Advantages of the Embodiment] According to the embodiment described above, even if data from multiple facilities cannot be shared outside the facilities, it is possible to train a model that is robust to differences between facilities. According to this embodiment, even if data from each facility cannot be taken out of the facilities when training the model, it is possible to generate a universal model that is independent of the characteristics of each facility, and it becomes possible to provide a recommendation list that is robust to domain shifts.
[0232] [Modification of the embodiment] Although the embodiments described above illustrate an example of federated learning, the technique of giving a model domain generalizability by training with constraints to minimize the differences between multiple local models LMk is not limited to federated learning. For example, in cases where data from multiple facilities can be shared or taken out, a system including one or more computers may train local models LMk for each facility using data from each of the multiple facilities, and generate a model with domain generalizability by controlling the training of each model to minimize the differences between them.
[0233] [Other application examples] Figure 23 illustrates the example of document viewing in a company, but the scope of application of this disclosure is not limited to this example. For example, the technology of this disclosure can be applied to models that predict user behavior for various items, regardless of the application, such as viewing medical images and various documents in medical facilities such as hospitals, user purchasing behavior in retail stores, or viewing videos and other content on content provision sites.
[0234] 〔others〕 This disclosure is not limited to the embodiments described above, and various modifications are possible without departing from the spirit of the technical idea of this disclosure. [Explanation of symbols]
[0235] 10 Recommendation System 12 Predictive Models 14 models 50 machine learning systems 52 telecommunication lines 62 parameter calculation unit 64 communication unit 72 communication unit 74 inter-model difference evaluation unit 75 parameter calculation unit 76 domain regularization calculation unit 77 feature-specific parameter difference calculation unit 78 learning correction unit 79 feature selection unit 80 global model generation unit 100 information processing device 102 processor 104 computer-readable medium 106 communication interface 108 input / output interface 110 bus 112 memory 114 storage 130 local learning program 136 local data storage unit 152 input device 154 display device 220 data acquisition unit 222 data storage unit 230 local learning unit 230B local learning unit 232 sampling unit 233 feature selection unit 234 loss calculation unit 236 optimizer 237 parameter update amount calculation unit 238 parameter update unit 250 data output unit 302 processor 304 computer-readable medium 306 communication interface 308 input / output interface 310 bus 312 memory 314 Storage 330 Inter-model Difference Evaluation Program 332 Learning Control Program 334 Global Model Generation Program 352 Input Device 354 Display Device 420 Data Acquisition Unit 422 Data Storage Department 4 30 Global Learning Unit 430B Global Learning Unit 450 Data Output Unit IT1 Item IT2 Item IT3 Item M1 Model M2 Model Mn Model LD1, LD2, LD3, LDk, LDn Local Data LM1, LM2, LM3, LMk, LMn Local Models LT1, LT2, LT3, LTk, LTn Local Learning Devices Steps S10~S18 of the Machine Learning Method
Claims
1. A machine learning method in which an information processing system including one or more processors is executed, The aforementioned information processing system Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each of the said facilities. The parameters of the multiple local models learned for each facility are aggregated, and the differences in the parameters between the multiple local models are evaluated. Based on the results of the above evaluation, the learning of the local model is corrected so that the difference between the models becomes smaller, Machine learning methods, including those mentioned above.
2. Correcting the learning of the local model includes changing the parameters so that the difference between the models becomes smaller. The machine learning method according to claim 1.
3. The information processing system, This includes generating a global model based on the parameters of a plurality of the local models, The machine learning method according to claim 1.
4. The information processing system, For each of the parameters of the multiple local models, the difference between that parameter and the mean value of the other local models is calculated, and the learning of the local models is corrected so that the difference from the mean value becomes smaller. The machine learning method according to claim 1.
5. A machine learning method performed by an information processing system including one or more processors, The aforementioned information processing system Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each of the said facilities. To evaluate the differences between the models in the parameters of the local model learned for each of the aforementioned facilities, This includes correcting the learning of the local model so that the difference between the models is reduced based on the results of the evaluation, Correcting the learning of the local model includes changing the parameters so that the difference between the models becomes smaller. The aforementioned local model includes cross-features, The information processing system, when correcting the learning of the local model, includes modifying the parameters such that the difference between the models in the parameters, which are the weights of the cross-features, becomes smaller. Machine learning methods.
6. A machine learning method performed by an information processing system including one or more processors, The aforementioned information processing system Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each of the said facilities. To evaluate the differences between the models in the parameters of the local model learned for each of the aforementioned facilities, This includes correcting the learning of the local model so that the difference between the models is reduced based on the results of the evaluation, Correcting the learning of the local model includes modifying the local model by selecting features from among the multiple features included in the local model in which the difference in parameters between the models is relatively small, and removing features from the local model in which the difference in parameters between the models is relatively large. Machine learning methods.
7. The aforementioned local model includes cross-features, The information processing system, when correcting the learning of the local model, includes selecting cross-sectional features from among the plurality of features including the cross-sectional features, where the difference between the models of the parameters which are the weights of the cross-sectional features is relatively small, and deleting cross-sectional features where the difference between the models of the parameters is relatively large. The machine learning method according to claim 6.
8. The machine learning method according to claim 5 or 7, wherein the weights of the crossover features are expressed by the relationship of the embedding representations of each feature.
9. The machine learning method according to claim 8, wherein the relationship between the embedding representations of each of the features is the dot product of the vectors representing each of the features.
10. The local model is a neighborhood-based collaborative filtering model based on relationships between users and between items, and the parameters of the local model include a correlation coefficient indicating the relationship between users and between items. The machine learning method according to any one of claims 1 to 7.
11. A machine learning method to be performed by an information processing system including one or more processors, The aforementioned information processing system Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each of the said facilities. To evaluate the differences between the models in the parameters of the local model learned for each of the aforementioned facilities, This includes correcting the learning of the local model so that the difference between the models is reduced based on the results of the evaluation, The local model is a neighborhood-based collaborative filtering model based on relationships between users and between items, and the parameters of the local model include a correlation coefficient indicating the relationship between users and between items. The information processing system includes modifying the correlation coefficients to reduce the difference in correlation coefficients between the models when correcting the learning of the local models. Machine learning methods.
12. A machine learning method performed by an information processing system including one or more processors, The aforementioned information processing system Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each of the said facilities. To evaluate the differences between the models in the parameters of the local model learned for each of the aforementioned facilities, This includes correcting the learning of the local model so that the difference between the models is reduced based on the results of the evaluation, The local model is a neighborhood-based collaborative filtering model based on relationships between users and between items, and the parameters of the local model include a correlation coefficient indicating the relationship between users and between items. The information processing system, when correcting the learning of the local model, includes selecting from among the multiple relationships included in the local model those relationships in which the difference in correlation coefficients between the models is relatively small, and removing from the local model those relationships in which the difference in correlation coefficients is relatively large. Machine learning methods.
13. A machine learning method performed by an information processing system including one or more processors, The aforementioned information processing system Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each of the said facilities. To evaluate the differences between the models in the parameters of the local model learned for each of the aforementioned facilities, This includes correcting the learning of the local model so that the difference between the models is reduced based on the results of the evaluation, The aforementioned information processing system is Multiple information processing devices that perform learning of the local model corresponding to each of the multiple facilities, Includes a server that is communicatively connected to each of the plurality of information processing devices via a telecommunications line, The learning is performed by federated learning, which communicates at least one of the parameters of the local model and the update amount of the parameters, without communicating the data for each facility between the information processing device and the server. Machine learning methods.
14. The aforementioned server, The parameters of the local model are obtained from each of the plurality of information processing devices. The difference between the models of the parameters of the local model is evaluated, An instruction is given to each of the aforementioned plurality of information processing devices to correct the learning, Each of the aforementioned plurality of information processing devices, Based on the above instructions, at least one of the following is performed: modifying the parameters of the local model and selecting features. The machine learning method according to claim 13.
15. The local model is a neighborhood-based collaborative filtering model based on relationships between users and between items, and the parameters of the local model include a correlation coefficient indicating the relationship between users and between items. The machine learning method according to claim 13.
16. An information processing system including one or more processors, The one or more of the processors Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each facility. The parameters of the multiple local models learned for each facility are aggregated, and the differences in the parameters between the multiple local models are evaluated. Based on the results of the above evaluation, the learning of the local model is corrected so that the difference between the models becomes smaller. Information processing system.
17. An information processing system comprising one or more processors, The one or more of the processors Using facility-specific data collected at each of multiple facilities, a local model is trained to predict user behavior towards items at each facility. The differences between the models in the parameters of the local model learned for each facility are evaluated. Based on the results of the aforementioned evaluation, this information processing system corrects the learning of the local model so that the difference between the models becomes smaller. Multiple information processing devices that perform learning of the local model corresponding to each of the multiple facilities, Includes a server that is communicatively connected to each of the plurality of information processing devices via a telecommunications line, The learning is performed by federated learning, which communicates at least one of the parameters of the local model and the amount of update of the parameters, without communicating the data for each facility between the plurality of information processing devices and the server. Information processing system.
18. An information processing apparatus comprising one or more first processors and one or more first storage devices, The one or more of the first processors described above, A first local model is trained to predict user behavior toward items at the first facility using first data collected at the first facility. The parameters of the first local model that have been learned are sent to the server. The server receives an instruction to correct the learning of the first local model so that the difference between the model and the parameters of the second local model, which was learned using second data collected at a second facility different from the first facility, becomes smaller. The first local model is updated based on the received instruction. Information processing device.
19. A server comprising one or more second processors and one or more second storage devices, The one or more of the second processors The parameters of the local model learned in each of the multiple information processing devices corresponding to each of the multiple facilities are obtained. The differences between the models of the parameters of the local model for each facility are evaluated. Based on the results of the evaluation, an instruction is sent to each of the multiple information processing devices to correct the learning of the local model so that the difference between the models becomes smaller. server.
20. On the computer, A function to learn a local model that predicts user behavior toward items at each of multiple facilities using facility-specific data collected at each of those facilities, A function to aggregate the parameters of multiple local models learned for each facility and evaluate the differences in the parameters between the multiple local models, Based on the results of the above evaluation, a function is provided to correct the learning of the local model so that the difference between the models becomes smaller, A program that makes this possible.
21. On the computer, A function to learn a first local model that predicts user behavior toward items at the first facility using first data collected at the first facility, The function includes sending the parameters of the first local model that have been learned to the server, The server has a function to receive instructions to correct the learning of the first local model so that the difference between the model and the parameters of the second local model, which was learned using second data collected at a second facility different from the first facility, becomes smaller. A function to update the first local model based on the received instruction, A program that makes this possible.
22. On the computer, A function to obtain parameters of a local model learned in each of the multiple information processing devices corresponding to each of the multiple facilities, A function to evaluate the differences between models of the parameters of the local model for each facility, Based on the results of the evaluation, a function is provided to send instructions to each of the multiple information processing devices to correct the learning of the local model so that the difference between the models becomes smaller. A program that makes this possible.
Citation Information
Patent Citations
Distributed machine learning system, apparatus, and method
JP2019526851A
Multi-model training method and apparatus based on feature extraction, electronic device, and medium
JP2021121922A
Consensus Driven Learning
US20210390408A1