Information processing method, program, and information processing device

The information processing method addresses the challenge of data utilization between entities by converting data into a common structure for learning and identification, ensuring appropriate data use and privacy protection.

JP7671257B2Active Publication Date: 2025-05-01THE JAPAN RES INST
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2022003266
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-10-15
Filing Date
2022-01-12
Publication Date
2025-05-01
Estimated Expiration
2042-01-12

AI Technical Summary

Technical Problem

Conventional methods for data sharing between different entities face challenges in appropriately utilizing data while ensuring privacy protection and efficient data linkage.

Method used

An information processing method that involves acquiring a classifier and loss function, converting data into a common structure, and using this structure to learn and identify common data sets between entities without direct data sharing.

Benefits of technology

Enables appropriate use of data between entities by facilitating data linkage while maintaining privacy and reducing the complexity and cost of preprocessing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007671257000001
    Figure 0007671257000001
  • Figure 0007671257000002
    Figure 0007671257000002
  • Figure 0007671257000003
    Figure 0007671257000003
Patent Text Reader

Abstract

To provide an information processing method and so on which can suitably utilize data between different entities.SOLUTION: An information processing method according to the present invention makes a computer carrying out the steps of: acquiring a first discriminator of a first entity and a first loss function for the first discriminator; converting, into a common data structure common to both of the first entity and a second entity different from the first entity, data of data sequence agreed by the first entity and the second entity of the data of the second entity; and learning the first discriminator based on the converted data of the second entity and the first loss function.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an information processing method, a program, and an information processing device. [Background technology]

[0002] As information processing technology evolves, it is becoming increasingly important to share data between different businesses for purposes such as data analysis. However, from the perspective of privacy protection, data that could lead to the identification of individuals cannot be shared between businesses without the customer's consent. Therefore, methods for analyzing data while protecting privacy have been proposed.

[0003] For example, Patent Document 1 discloses a federated learning technology that performs deep learning without sharing data between companies that are conducting joint analysis.

[0004] Patent Document 2 discloses a PSI (Private Set Intersection) technology that performs calculations on data held by each company while keeping the data encrypted. [Prior art documents] [Patent documents]

[0005] [Non-Patent Document 1] Jiang Jichu, Kantarci Burak, Oktug Sema and Soyata Tolga, “Federated Learning in Smart City Sensing:Challenges and Opportunities,” Sensors 2020; 20.6230.10.3390 / s20216230, October 2020. [Non-Patent Document 2] Yoshitaka Nagao and Mitsuko Miyaji, "Privacy-Preserving Data Matching Protocol," Information Processing Society of Japan, Computer Security Symposium 2020, October 2020. Summary of the Invention [Problem to be solved by the invention]

[0006] However, the conventional techniques have room for improvement in terms of optimally utilizing data between different entities.

[0007] An object of the present disclosure is to provide an information processing method etc. that can make optimal use of data between different entities. [Means for solving the problem]

[0008] An information processing method according to one aspect of the present disclosure includes a process in which a computer executes a process of acquiring a first classifier of a first entity and a first loss function for the first classifier, converting data of a data sequence agreed upon by the first entity and the second entity among data of a second entity different from the first entity into a common data structure common to the first entity and the second entity, and training the first classifier based on the converted data of the second entity and the first loss function.

[0009] An information processing method according to one embodiment of the present disclosure includes a process in which a computer executes a process of outputting a first classifier and a first loss function for the first classifier to a second entity, obtaining the first classifier trained using data of the second entity from the second entity, inputting data of a first entity different from the second entity to the first classifier, and identifying data common to the first entity and the second entity based on the classification result output from the first classifier. Effect of the Invention

[0010] According to the present disclosure, data between different entities can be effectively utilized. [Brief description of the drawings]

[0011] [Figure 1]FIG. 1 is a schematic diagram illustrating an example of the configuration of an information processing system. [Diagram 2] FIG. 13 is a diagram showing an example of the contents of data stored in a customer DB; [Diagram 3] FIG. 13 is a diagram showing an example of the contents of data stored in a user DB. [Figure 4] FIG. 2 is an explanatory diagram illustrating an overview of a first classifier. [Diagram 5] FIG. 2 is an explanatory diagram illustrating a process flow in the information processing system. [Figure 6] FIG. 11 is a sequence diagram illustrating an example of a processing procedure related to the definition of a common data structure. [Figure 7] FIG. 11 is a sequence diagram illustrating an example of a processing procedure related to generation of a first discriminator. [Figure 8] FIG. 11 is a sequence diagram illustrating an example of a processing procedure related to generation of a first discriminator. [Figure 9] FIG. 11 is a sequence diagram illustrating an example of a process for identifying common data. [Figure 10] FIG. 11 is a schematic diagram illustrating an example of the configuration of an information processing system according to a second embodiment. [Figure 11] FIG. 11 is a sequence diagram illustrating an example of a processing procedure related to generation of a second discriminator. [Figure 12] FIG. 11 is a sequence diagram illustrating an example of a processing procedure related to generation of a second discriminator. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0012] Specific examples of an information processing method, a program, and an information processing device according to the embodiments of the present invention will be described below with reference to the drawings. Note that the present invention is not limited to these examples, but is intended to include all modifications within the scope of the claims and meaning equivalent thereto. In addition, at least some of the embodiments described below may be combined in any manner. The sequences shown in the following embodiments are not limited, and the order of each process may be changed and multiple processes may be executed in parallel, as long as there is no contradiction. The subject of each process is not limited, and the process of each device may be executed by another device, as long as there is no contradiction.

[0013] (First embodiment) 1 is a schematic diagram showing a configuration example of an information processing system 100. The information processing system 100 includes a first information processing device 1 and a second information processing device 2. The first information processing device 1 and the second information processing device 2 are communicatively connected to a network N such as the Internet, and are capable of transmitting and receiving data via the network N.

[0014] The first information processing device 1 and the second information processing device 2 are, for example, a server computer, a personal computer, a quantum computer, etc., and perform various information processing and information transmission and reception. The first information processing device 1 and the second information processing device 2 are managed by different businesses (entities). In this embodiment, as an example, the first information processing device 1 is managed by a banking company, and the second information processing device 2 is managed by a web service provider. The banking company corresponds to the first entity, that is, the business that manages the first information processing device 1. The web service provider corresponds to the second entity, that is, the business that manages the second information processing device 2. It is needless to say that the business types of the first entity and the second entity are not limited to the above example. For example, the first entity may be an electric utility company, and the second entity may be a web service provider.

[0015] 1 shows an example in which the information processing system 100 is configured with two information processing devices, but this embodiment is not limited thereto. The information processing system 100 may be configured to include three or more information processing devices and three or more entities.

[0016] In the information processing system 100 of this embodiment, data held by each of the multiple businesses is linked, and a common set of data between the multiple businesses is identified using a first classifier described later. In this embodiment, the common set of data means data related to a user (customer) that exists in common between the multiple businesses. By utilizing the identification result of the common set, it is possible to provide information more suitable for the user. For example, a banking company can provide information on a campaign linked to a web service preferentially to a customer who actually uses the web service. In the information processing system 100, by defining a common data structure C described later, the series of processes described above are executed between the multiple businesses without directly sharing the data held by each of them. This enables data linkage to be easily performed with improved confidentiality.

[0017] The configuration and detailed processing content of such information processing system 100 will be described below.

[0018] 1, the first information processing device 1 includes a control unit 11, a storage unit 12, a communication unit 13, and an input / output unit 14. The first information processing device 1 may be a multi-computer consisting of multiple computers, or may be a virtual machine virtually constructed by software.

[0019] The control unit 11 includes a processor using one or more CPUs (Central Processing Units), GPUs (Graphics Processing Units), etc. The control unit 11 uses built-in memories such as ROMs (Read Only Memory) or RAMs (Random Access Memory), clocks, counters, etc. to control each component and execute processes.

[0020] The storage unit 12 includes a non-volatile memory such as a hard disk, a flash memory, or an SSD (Solid State Drive). The storage unit 12 stores programs and data referenced by the control unit 11. The storage unit 12 may be configured with a plurality of storage devices, or may be an external storage device connected to the first information processing device 1. The programs stored in the storage unit 12 include a program 1P for causing a computer to execute processing using a first classifier, which will be described later.

[0021] The data stored in the storage unit 12 includes a customer DB (Data Base) 121 that stores customer information (first entity data) owned by the first entity, a first classifier 122, and a first loss function 123.

[0022] The first classifier 122 is a classifier for classifying coexisting data in data held by each of the first information processing device 1 and the second information processing device 2. The first classifier 122 is a machine learning model configured by, for example, a neural network. The first classifier 122 is expected to be used as a program module constituting artificial intelligence software. The first classifier 122 is defined by its definition information. The definition information of the first classifier 122 includes, for example, structural information and layer information of the first classifier 122, information of nodes included in each layer, and parameters such as weights and biases between nodes. The storage unit 12 stores definition information related to the first classifier 122. The first loss function 123 is a loss function (error function) used for learning the first classifier 122.

[0023] The program (program product) stored in the storage unit 12 may be in a form recorded in a computer-readable manner on a recording medium. The storage unit 12 stores a program read from the recording medium 1A by a reading device (not shown). Alternatively, the program may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the storage unit 12. The program 1P may be executed on a single computer, or The system may be deployed to be executed on multiple computers that are collocated at one site or distributed across multiple sites and interconnected by a communications network.

[0024] The communication unit 13 includes a communication module for performing processing related to communication with an external device via the network N. The control unit 11 transmits and receives data to and from the second information processing device 2 via the communication unit 13.

[0025] The input / output unit 14 is an input / output I / F (interface) for connecting an external device. The external device connected to the input / output unit 14 may include, for example, a display device that displays various information, an input device that accepts user input operations (neither of which are shown in the figures), and the like.

[0026] The second information processing device 2 has the same hardware configuration as the first information processing device 1, and includes a control unit 21, a storage unit 22, a communication unit 23, and an input / output unit 24. The second information processing device 2 may be a multi-computer consisting of multiple computers, or may be a virtual machine virtually constructed by software.

[0027] The storage unit 22 includes a non-volatile memory and stores programs and data referenced by the control unit 21. The programs stored in the storage unit 22 include a program 2P for causing a computer to execute processing related to learning of the first classifier 122. The data stored in the storage unit 22 includes a user DB 221 that stores user information (second entity data) held by the second entity.

[0028] 2 is a diagram showing an example of the contents of data stored in customer DB 121. Customer DB 121 stores customer information including various data related to the bank's customers. The customer information includes, for example, the customer ID, name, age, sex, address, telephone number, account information, etc. of each of multiple customers. The customer information is a data set made up of data (samples) related to multiple customers. Customer DB 121 stores various data in a data structure suitable for the contents of the customer information.

[0029] 3 is a diagram showing an example of the contents of data stored in the user DB 221. The user DB 221 stores user information including various data related to users of the web service provider. The user information includes, for example, the user ID, name, sex, address, telephone number, purchase date, card number, etc. of each of a plurality of users. The user information is a data set consisting of data (samples) related to a plurality of users. The user DB 221 stores various data in a data structure suitable for the contents of the user information.

[0030] 4 is an explanatory diagram showing an overview of the first classifier 122. The first classifier 122 is configured to output information indicating the class of a sample of data from each operator when the sample is input. The classification result of the first classifier 122 is information indicating whether or not the sample exists in data from another operator. Note that the "sample" refers to data extracted from a data set from each operator.

[0031] Although details will be described later, in the information processing system 100 of this embodiment, an unlearned first classifier 122 is generated in the first information processing device 1 of the first entity. The unlearned first classifier 122 is transmitted to the second information processing device 2 of the second entity, and trained using second entity data (user information) held by the second entity. After training is completed, the trained first classifier 122 is transmitted from the second information processing device 2 to the first information processing device 1. The first information processing device 1 of the first entity performs calculations using the first entity data (customer information) held by the first entity and the trained first classifier 122, and generates the first entity data. In the following, an example will be described in which the input information is a sample of customer information.

[0032] The first classifier 122 is a learning model composed of, for example, a neural network. The first classifier 122 has an input layer that accepts input of customer information, an intermediate layer (hidden layer) that extracts features of the customer information, and an output layer that outputs information indicating a class. The intermediate layer has a plurality of nodes that extract features of each input value, and passes the features extracted using various parameters to the output layer. The output layer is composed of, for example, a fully connected layer, and outputs information indicating a class based on the features output from the intermediate layer.

[0033] The input layer of the first classifier 122 receives input of each data of a predetermined sequence (e.g., a telephone number sequence) in customer information. The telephone numbers input to the input layer are converted into a common data structure C for standardizing the structures of customer information and user information. Details of the common data structure C will be described later. The number of nodes in the input layer is configured to be the same as the number of columns in the common data structure C. The values ​​of each column in each sample after conversion to the common data structure C are input to each node of the input layer.

[0034] The output layer of the first classifier 122 has a plurality of nodes corresponding to the set classes. The output layer is configured, for example, using a softmax function as an activation function. Each node of the output layer outputs the accuracy for each class as a score. The first information processing device 1 can set the class with the highest score or the class with a score equal to or greater than a threshold as the output value of the output layer. Note that the output layer may have one output node that outputs the class with the highest accuracy, instead of having a plurality of output nodes that output the accuracy of each class. The number of nodes in the output layer is configured to be the number obtained by adding a predetermined offset number to the number of samples included in the customer information. The offset number may be appropriately set based on, for example, the number of samples included in the user information or the number of garbage data to be described later.

[0035] In this embodiment, the first classifier 122 is a neural network. However, the configuration of the first classifier 122 is not limited, and may be a model based on another learning algorithm, such as a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN), a Support Vector Machine (SVM), a decision tree, or a Transformer.

[0036] The first classifier 122 can be generated by preparing training data in which each data of the phone number sequence in the user information converted into the common data structure C is associated with a class of each data, and performing machine learning on an untrained neural network using the training data. The class associated with each data may be set based on, for example, the user ID of each data, such that one user ID corresponds to one class. In other words, a different class is assigned to every sample included in the user information.

[0037] The training data may further include garbage data (fake data) that is a phone number not included in the actual user information. The second information processing device 2 generates a data set in which the garbage data, which is obtained by converting a randomly generated phone number not included in the user information into a common data structure C, corresponds to a class assigned to the garbage data, and adds the data set to the training data. By adding the garbage data to the training data, the classification accuracy of the first classifier 122 can be improved. The garbage data may be generated by a random number generator or the like.

[0038] The second information processing device 2 acquires, as training data, a group of information in which a label indicating the class of a sample is assigned to each sample. The second information processing device 2 trains the first classifier 122 using the acquired training data. The second information processing device 2 trains various parameters constituting the first classifier 122, for example, by using a backpropagation method, so as to output a class according to the sample. Optimize.

[0039] 5 is an explanatory diagram illustrating a processing flow in the information processing system 100. As described above, in the information processing system 100, the first classifier 122 generated by the first information processing device 1 is trained using user information of the second information processing device 2. Then, using the trained first classifier 122, a classification process is performed on customer information of the first information processing device 1. In this way, in the information processing system 100, so-called federated learning is performed in which the first entity and the second entity each construct the first classifier 122 without sharing data held by the other.

[0040] In federated learning, it is assumed that the data structures held by each of the businesses collaborating with each other are different. In particular, there is a high possibility that the data structures will differ between different industries as in this embodiment. If the data structures are not similar, it is difficult to use the data held by each business as is in the first classifier 122. Therefore, in the past, when collaborating data between businesses, various information related to the data held by each business is shared, and pre-processing is performed in which various information is repeatedly analyzed by each business using industry terminology, etc. The pre-processing is cumbersome and requires cost.

[0041] In this embodiment, a common data structure C for standardizing data structures among businesses is defined through simplified pre-processing, thereby enabling federated learning among businesses. The flow of the process will be specifically described below with reference to FIG. 5.

[0042] First, the first information processing device 1 discloses to the second information processing device 2 data summary information including the data structure, number of samples, number of columns, name, meaning, input rules, etc. of customer information stored in the customer DB 121. Similarly, the second information processing device 2 discloses to the first information processing device 1 data summary information of user information stored in the user DB 221. The first information processing device 1 and the second information processing device 2 determine one or more columns that they have agreed are likely to overlap from the data they mutually hold, based on each other's data summary information. The following describes the use of a phone number column as an example.

[0043] The first information processing device 1 and the second information processing device 2 define a common data structure C for standardizing the structure of data related to a specified phone number string, and a data conversion method for converting data related to the phone number string into the common data structure C.

[0044] For example, when a telephone number is the data to be converted, a two-dimensional array is defined as the common data structure C, and N-gram is defined as the data conversion method. As shown in the lower center of Fig. 5, the common data structure C is defined as a matrix having columns of N multiplied by the character type. As an example, when an N-gram with N=4 is used for a telephone number, there are 10 character types from 0 to 9, and the number of columns of the common data structure C is 10. 4 The number of rows in the common data structure C is appropriately set in accordance with the number of samples. In this manner, the common data structure C is defined in accordance with the data conversion method.

[0045] The first information processing device 1 performs N-gram division of N=4 for each telephone number (sample) stored in the telephone number column of the customer information, and determines whether each value appears or not. In the center of Fig. 5, the customer information is simply data of 6 columns x 3 rows, and the concept of converting the telephone number column in the fourth column into a common data structure C is illustrated.

[0046] The first information processing device 1 stores information indicating the determination result of the presence or absence of each value in each column (0000 to 9999) of the common data structure C. In the example of FIG. 5, 0 indicates no occurrence and 1 indicates presence. As a result, the converted customer information converted into the common data structure C is Information can be obtained.

[0047] Similarly, in the second information processing device 2, the data structure of each telephone number stored in the telephone number column of the user information (the third column in the example of Figure 5) is converted according to the data conversion method, and converted user information converted into a common data structure C is obtained.

[0048] Using the converted user information, the first classifier 122 is trained on the second information processing device 2 side. When the training is completed, the first classifier 122 that has been trained to be able to appropriately recognize the class of a sample is constructed.

[0049] The first information processing device 1 estimates a class for each sample of customer information using the trained first classifier 122. Specifically, each sample of converted customer information is input to the first classifier 122, and class discrimination results for all samples in the customer information are obtained.

[0050] Here, in the case where a classifier is generated by a neural network using a softmax function as an activation function, it is known that when data belonging to a class uniformly distributed in the training data is used, the class of data belonging to an unlearned class is predicted with a bias to a small number of specific classes. Based on this knowledge, when a class is estimated by the first classifier 122 that has been sufficiently trained using user information, if a recognition result indicating a common class for multiple samples is obtained, all of the multiple samples associated with the common class can be regarded as data not included in the training data, i.e., data not present in the user information.

[0051] From the above, if the identification result indicates that only one sample corresponds to one class, the sample is considered to exist in both the customer information and the user information. If the identification result indicates that multiple samples correspond to one class, the sample associated with the class is considered to exist only in the customer information and not in the user information.

[0052] According to the above-mentioned criteria, based on the class identification result by the first classifier 122, it is possible to identify samples of the customer information that are included in the user information, that is, a common set of the customer information and the user information.

[0053] In the above, an example has been described in which a telephone number is used as duplicate data between businesses, but the type of data selected from customer information and user information is of course not limited. Data designated as duplicate data may be, for example, a card number, a name, an address, etc. When the data includes characters such as a name or an address, for example, each character string may be converted into a hash value using a predetermined hash function, and N-gram division may be performed on the converted hash value. The common data structure C and the data conversion method may be defined appropriately according to the designated data.

[0054] 6 is a sequence diagram showing an example of a processing procedure for defining a common data structure. The following processing is executed by the control unit 11 according to a program 1P stored in the storage unit 12 of the first information processing device 1, and is also executed by the control unit 21 according to a program 2P stored in the storage unit 22 of the second information processing device 2.

[0055] The control unit 11 of the first information processing device 1 generates data summary information of customer information based on the customer information stored in the customer DB 121, and publishes the generated data summary information (step S101). Similarly, the control unit 21 of the second information processing device 2 generates data summary information of user information based on the user information stored in the user DB 221, and publishes the generated data summary information (step S201). The data summary information may be published, for example, by storing it in a storage area accessible by each device included in the information processing system 100.

[0056] The control unit 11 of the first information processing device 1 acquires data summary information of the user information in the published second entity (step S102). Similarly, the control unit 21 of the second information processing device 2 acquires data summary information of the customer information in the published first entity (step S202). Note that the data summary information may be directly transmitted and received between the first information processing device 1 and the second information processing device 2, so that the data summary information is acquired from each other.

[0057] The control unit 11 of the first information processing device 1 identifies one or more columns (e.g., a telephone number column) in the user information based on the data summary information of the acquired user information, and transmits information for designating the identified columns to the second information processing device 2 (step S103). The control unit 11 identifies columns of user information that are likely to overlap with customer information, for example, by comparing the names, meanings, input rules, etc. of each column in the data summary with the customer information.

[0058] The control unit 21 of the second information processing device 2 receives information for specifying the identified column (step S203). As a response to the column specification, the control unit 21 transmits information indicating agreement with the received column specification to the first information processing device 1 (step S204).

[0059] The control unit 11 of the first information processing device 1 receives the information indicating the agreement (step S104). As a result, the first information processing device 1 and the second information processing device 2 share data strings to be used for federated learning among the data held by each of them.

[0060] The control unit 11 of the first information processing device 1 defines a common data structure C and a data conversion method for making the common data structure C according to the data content of the phone number string related to the agreement (step S105). For example, the data conversion method includes calculation of the frequency of occurrence of a character string using an N-gram with N=4, and the common data structure C is a set of 10 numbers from 0000 to 9999. 4 The control unit 11 stores the common data structure C and the definition information of the data conversion method in the storage unit 12, and transmits them to the second information processing device 2 (step S106).

[0061] The control unit 21 of the second information processing device 2 receives the common data structure C and the definition information of the data conversion method (step S205), and stores them in the storage unit 22.

[0062] In the above-mentioned processes, the subject of each process is not limited. For example, the second information processing device 2 may specify the data string, or may define the common data structure C and the data conversion method.

[0063] 7 and 8 are sequence diagrams showing an example of a processing procedure related to generation of the first discriminator 122. In FIG.

[0064] The control unit 11 of the first information processing device 1 generates a first classifier 122 and a first loss function 123 for the first classifier 122 (step S111). The generated first classifier 122 is a neural network model in an unlearned state. The control unit 11 determines definition information such as structure information, layer information, and node information of the first classifier 122 based on the common data structure C, the number of samples of customer information and user information, and the like. Furthermore, the control unit 11 determines a first loss function 123 suitable for evaluation of the first classifier 122 according to the first classifier 122. The first loss function 123 may be, for example, a negative log-likelihood, a mean squared error, or the like.

[0065] The control unit 11 transmits the generated first classifier 122 and first loss function 123 to the second information processing device 2 (step S112).

[0066] The control unit 21 of the second information processing device 2 receives the first classifier 122 and the first loss function 123 (step S211). The control unit 21 generates data belonging to a garbage class, that is, garbage data having a random value not present in the user information (step S212).

[0067] The control unit 21 refers to the user DB 221 and extracts data (samples) of a data string agreed upon in advance from the data of the user information. The control unit 21 converts the user information including the extracted samples and garbage data into a common data structure C (step S213) and generates converted user information. The control unit 21 temporarily stores the generated converted user information in the storage unit 22.

[0068] The control unit 11 of the first information processing device 1 transmits a learning request for the first classifier 122 to the second information processing device 2 (step S113).

[0069] The control unit 21 of the second information processing device 2 receives the learning request (step S214). After receiving the first classifier 122 and the first loss function 123, the control unit 21 may execute the processes of step S215 and the following steps without receiving a learning request.

[0070] The control unit 21 acquires training data for learning the first classifier 122 (step S215). Specifically, the control unit 21 acquires the training data by generating a data set in which a label indicating a class of a sample is assigned to each data of the converted user information.

[0071] The control unit 21 uses the acquired training data to train the first classifier 122 (step S216). Specifically, the control unit 21 inputs converted user information included in the training data as input data to the first classifier 122, and acquires a class output from the first classifier 122. The control unit 21 adjusts various parameters, for example, by using an error backpropagation method, so as to optimize the error between the output class and the class that is the correct answer value.

[0072] For example, after completing learning for a predetermined number of epochs, the control unit 21 acquires an evaluation value of the first classifier 122 calculated using the first loss function 123 (step S217). The control unit 21 transmits the acquired evaluation value to the first information processing device 1 (step S218).

[0073] The control unit 11 of the first information processing device 1 receives the evaluation value of the first classifier 122 (step S114). The control unit 11 determines whether or not to end the learning of the first classifier 122 based on the received evaluation value (step S115). The control unit 11 may determine whether or not to end the learning by, for example, determining whether or not the received evaluation value is less than a preset threshold value.

[0074] If the control unit 11 determines not to end learning because the received evaluation value is equal to or greater than a preset threshold value (step S115: NO), the control unit 11 returns the process to step S113 and repeats the request for learning and transmission of the evaluation value to the second information processing device 2.

[0075] If it is determined that learning should be terminated because the received evaluation value is less than a preset threshold value (step S115: YES), the control unit 11 transmits an instruction to terminate learning of the first classifier 122 and a request for the first classifier 122 to the second information processing device 2 (step S116).

[0076] The control unit 21 of the second information processing device 2 receives the end command and the request of the first discriminator 122. (Step S219). The control unit 21 ends the learning of the first classifier 122, and transmits definition information of the learned first classifier 122 to the first information processing device 1 (Step S220). Note that the determination as to whether to end the learning may be executed by the second information processing device 2. In this case, the second information processing device 2 may acquire a threshold value serving as a determination criterion from the first information processing device 1 in advance, and may determine whether to end the learning using the acquired threshold value.

[0077] The control unit 11 of the first information processing device 1 receives the trained first classifier 122 (step S117), and updates the definition information of the second classifier 222 stored in the storage unit 12.

[0078] The control unit 11 determines an incentive for the learning in the second information processing device 2 (step S118). The incentive is given to the second information processing device 2, for example, in the form of a learning fee, points, or the like. The control unit 11 determines the incentive for the second entity according to at least one of the amount of learning of the first classifier 122 in the second entity, the evaluation value of the first loss function 123 in the first classifier 122, and the amount of data of the second entity (amount of data of user information) used in learning the first classifier 122. The greater the amount of learning of the first classifier 122 (for example, the learning time required for learning), the greater the incentive is given. The smaller the evaluation value of the first loss function 123, the greater the incentive is given. The greater the amount of data of the user information (for example, the number of samples), the greater the incentive is given. The control unit 11 may transmit the determined incentive to the second information processing device 2.

[0079] In the above-mentioned process, the progress of learning in the second information processing device 2 may be configured to be recognizable in the first information processing device 1. For example, the second information processing device 2 transmits progress information such as whether learning is being performed in the second information processing device 2, the elapsed time since the start of learning, and the number of times learning has been performed, to the first information processing device 1 at predetermined intervals. By sharing the progress of learning within the information processing system 100, it is possible to appropriately grasp the status of learning performed on devices other than the first information processing device, thereby improving convenience.

[0080] FIG. 9 is a sequence diagram illustrating an example of a process for identifying common data.

[0081] The control unit 11 of the first information processing device 1 extracts data (samples) of a data string agreed upon in advance from the data of the customer information by referring to the customer DB 121. The control unit 11 converts each of the extracted samples into a common data structure C according to a predefined data conversion method (step S131), and generates converted customer information.

[0082] The control unit 11 inputs samples of the converted customer information to the first classifier 122 (step S132). In detail, the control unit 11 inputs the values ​​of each column in the common data structure C to the input nodes of the first classifier 122 associated with each column. The control unit 11 acquires the class classification results output from the first classifier 122 (step S133). The control unit 11 performs classification processing on all samples of the customer information using the first classifier 122, and estimates classes for all samples.

[0083] Based on the class identification results for all samples, the control unit 11 identifies samples that are common to the customer information and the user information, that is, common sets of the customer information and the user information (step S134).

[0084] In the above-mentioned processing, the first classifier 122 is not limited to being trained only on the second information processing device 2 side, and may be trained further on the first information processing device 1 side. The first information processing device 1 acquires the first classifier 122 in the middle of training together with the evaluation value, for example, in step S114. The first information processing device 1 acquires the customer data converted into a common data structure, The first classifier 122 is trained using training data in which each data of the customer information is associated with a label indicating the class of the sample. The first information processing device 1 calculates an evaluation value for the trained first classifier 122 and determines whether or not to end the training. If the training is not to be ended, the first information processing device 1 may perform training again, or the trained first classifier 122 may be transmitted to the second information processing device 2 and a request may be made to the second information processing device 2 to train the first classifier 122 further. By performing training on both the second information processing device 2 and the first information processing device 1, the accuracy of the first classifier 122 can be further improved.

[0085] Although the configuration in which data is linked between the first entity and the second entity has been described above, this embodiment is not limited thereto, and the information processing system 100 may include three or more entities. For example, in response to a request from the first information processing device 1, the first classifier 122 may be trained using data held by each entity in a plurality of information processing devices including the second information processing device 2 of the second entity and a third information processing device (not shown) of the third entity. The first information processing device 1 constructs the first classifier 122 by integrating definition information of the first classifier 122 received from each of the plurality of information processing devices.

[0086] According to the above-mentioned process, by defining the common data structure C, it is possible to suitably utilize data having different structures held by each of the first information processing device 1 and the second information processing device 2. The first information processing device 1 or the second information processing device 2 can specify a data string to be converted into the common data structure C based only on necessary information (recognizable information) among the data summary information, which facilitates advance preparation for data linkage.

[0087] For example, when data itself is shared between businesses, it is necessary to transmit the data to the business that shares the data. From the viewpoint of protecting personal information, in addition to the fact that data to be transmitted needs to be encrypted when the data can identify an individual, it is also necessary to protect encrypted information that can identify an individual as personal information. For this reason, in order to use data related to personal information, the individual's consent must be obtained, and the data cannot be used easily. In this embodiment, by realizing data linkage between businesses through the first identifier 122, it is not necessary to share the data itself between businesses, so that the data of each business can be easily utilized and the confidentiality of the data can be improved.

[0088] The first information processing device 1 can obtain a common set between the customer information and the user information with high accuracy by using the first classifier 122. The first classifier 122 performs learning by adding garbage data that does not exist in the user information in advance to the training data. This reduces the possibility of false positive determination even in the case of data conversion based on the frequency of occurrence of character strings as in the common data structure C of this embodiment, and can improve the recognition accuracy of the first classifier 122.

[0089] Second embodiment In the second embodiment, a configuration will be described in which the first information processing device 1 learns a second classifier in response to a learning request from the second information processing device 2. The following mainly describes the differences from the first embodiment, and the same reference numerals will be used to designate the same components as in the first embodiment, and detailed descriptions thereof will be omitted.

[0090] 10 is a schematic diagram showing an example of the configuration of an information processing system 100 in the second embodiment. In the storage unit 22 of the second information processing device 2, a second classifier 222 and a second loss function 223 are stored in addition to a program 2P and a user DB 221.

[0091] The second classifier 222 is a classifier for classifying coexisting data in data held in each of the first information processing device 1 and the second information processing device 2. The second classifier 222 is, for example, a machine learning model configured by a neural network. The second classifier 222 is It is assumed that the second loss function 223 is used as a program module constituting artificial intelligence software. The second loss function 223 is a loss function used for training the second classifier 222. The second loss function 223 may be, for example, a negative log-likelihood.

[0092] The second classifier 222 is configured to output information indicating the class of a sample extracted from data of each business operator when the sample is input. The configuration of the second classifier 222 may be the same as that of the first classifier 122 illustrated in FIG.

[0093] In the second embodiment, the first information processing device 1 learns the second classifier 222 by using customer information in response to a learning request from the second information processing device 2. The second information processing device 2 receives the trained second classifier 222 from the first information processing device 1, performs calculations by using the user information and the trained second classifier 222, and identifies a common set between the user information and the customer information.

[0094] 11 and 12 are sequence diagrams showing an example of a processing procedure related to generation of the second discriminator 222. In FIG.

[0095] The control unit 21 of the second information processing device 2 generates a second classifier 222 and a second loss function 223 for the second classifier 222 (step S241). The generated second classifier 222 is a neural network model in an unlearned state. The control unit 21 transmits the generated second classifier 222 and second loss function 223 to the first information processing device 1 (step S242).

[0096] The control unit 11 of the first information processing device 1 receives the second classifier 222 and the second loss function 223 (step S141). The control unit 21 generates garbage data belonging to a garbage class having a random value not present in the customer information (step S142).

[0097] The control unit 11 refers to the customer DB 121 and extracts data (samples) of a data string that has been agreed upon in advance from the data of the customer information. The control unit 21 converts the customer information including the extracted samples and garbage data into a common data structure C (step S143) and generates converted customer information. The data string used may be the same as the data string used for training the first classifier 122, or may be different.

[0098] The control unit 21 of the second information processing device 2 transmits a learning request for the second classifier 222 to the first information processing device 1 (step S243).

[0099] The control unit 11 of the first information processing device 1 receives the learning request (step S144). The control unit 11 generates a data set in which a label indicating a class of a sample is assigned to each data of the converted customer information, thereby acquiring training data for learning the second classifier 222 (step S145).

[0100] The control unit 11 uses the acquired training data to train the second classifier 222 (step S146). Specifically, the control unit 11 inputs the converted customer information included in the training data as input data to the second classifier 222, and acquires a class output from the second classifier 222. The control unit 11 adjusts various parameters, for example, by using an error backpropagation method, so as to optimize the error between the output class and the class that is the correct answer value.

[0101] After completing learning for a predetermined number of epochs, for example, the control unit 11 acquires an evaluation value of the second classifier 222 calculated using the second loss function 223 (step S147). The control unit 11 transmits the acquired evaluation value to the second information processing device 2 (step S148).

[0102] The control unit 21 of the second information processing device 2 receives the evaluation value of the second loss function 223 (step S244). The control unit 11 determines whether or not to end the learning of the second classifier 222 based on the received evaluation value (step S245).

[0103] For example, if it is determined that learning should not be terminated because the received evaluation value is equal to or greater than a preset threshold value (step S245: NO), the control unit 21 returns the process to step S243 and repeats the request for learning and transmission of the evaluation value to the first information processing device 1.

[0104] If it is determined that learning should be terminated because the received evaluation value is less than a preset threshold value (step S245: YES), the control unit 21 transmits an instruction to terminate learning of the second classifier 222 and a request for the second classifier 222 to the first information processing device 1 (step S246).

[0105] The control unit 11 of the first information processing device 1 receives the end command and the request of the second classifier 222 (step S149). The control unit 11 ends the learning of the second classifier 222, and transmits definition information of the trained second classifier 222 as the trained second classifier 222 to the second information processing device 2 (step S150).

[0106] The control unit 21 of the second information processing device 2 receives the trained second classifier 222 (step S247) and updates the definition information of the second classifier 222 stored in the storage unit 22. The control unit 21 determines an incentive for learning in the first information processing device 1 (step S248).

[0107] Thereafter, the control unit 21 of the second information processing device 2 can identify samples that are commonly present in the user information and the customer information by executing the same process as that of the first information processing device 1 in the first embodiment shown in Fig. 9. Specifically, the second information processing device 2 generates converted user information by converting the user information into a common data structure C, and inputs each sample of the generated converted user information to the trained second classifier 222. The second information processing device 2 obtains the class identification results output from the second classifier 222 for all samples. The second information processing device 2 specifies a common set between the user information and the customer information based on the identification results for all the obtained samples.

[0108] According to this embodiment, a classifier is trained in each of the first information processing device 1 and the second information processing device 2. Since each entity can obtain a trained classifier, it is possible to improve the utilization of data in the information processing system 100. [Explanation of symbols]

[0109] 100 Information Processing Systems 1. First information processing device 11 Control section 12 Storage section 13. Communications Department 14 Input / output section 1P Program 1A Recording medium 121 Customer DB 122 First Classifier 123 First loss function 2. Second information processing device 21 Control section 22 Memory section 23 Communications Department 24 Input / output section 2P Program 2A Recording Media 221 User DB 222 Second Classifier 223 Second loss function

Claims

1. obtaining a first classifier for a first entity and a first loss function for the first classifier; converting data of a data string agreed upon by the first entity and the second entity out of data of a second entity different from the first entity into a common data structure common to the first entity and the second entity; Training the first classifier based on the transformed data of the second entity and the first loss function. An information processing method in which processing is performed by a computer.

2. The first classifier is trained based on an evaluation value of the first loss function. The information processing method according to claim 1 .

3. transmitting to the first entity an evaluation value of the first loss function for training the first classifier in the second entity; When a termination command is received from the first entity, the second entity terminates the learning of the first classifier.

3. The information processing method according to claim 1.

4. Transmitting the trained first classifier in the second entity to the first entity. The information processing method according to any one of claims 1 to 3.

5. generating false data not included in the data of the second entity; training the first classifier based on the fake data converted into the common data structure, the data of the second entity, and the first loss function; The information processing method according to any one of claims 1 to 4.

6. defining the common data structure based on N-grams of data in a data sequence agreed upon by the first entity and the second entity; The information processing method according to any one of claims 1 to 5.

7. sending a second classifier of the second entity and a second loss function for the second classifier to the first entity; receiving the trained second classifier in the first entity from the first entity when an evaluation value of the second loss function for the training of the second classifier in the first entity becomes less than a predetermined value; The information processing method according to any one of claims 1 to 6.

8. The first classifier includes an input layer having a number of nodes corresponding to the number of columns in the common data structure, and an output layer having a number of nodes corresponding to the number of samples included in the data of the first entity plus a predetermined offset number. The information processing method according to any one of claims 1 to 7.

9. converting data of a data string agreed upon between the first entity and the second entity among the data of the first entity into the common data structure; inputting the transformed data of the first entity into the first classifier; Identifying data common to the first entity and the second entity based on the classification result output from the first classifier. The information processing method according to any one of claims 1 to 8.

10. obtaining a first classifier for a first entity and a first loss function for the first classifier; converting data of a data string agreed upon by the first entity and the second entity out of data of a second entity different from the first entity into a common data structure common to the first entity and the second entity; Training the first classifier based on the transformed data of the second entity and the first loss function. A program that causes a computer to execute a process.

11. obtaining a first classifier for a first entity and a first loss function for the first classifier; converting data of a data string agreed upon by the first entity and the second entity out of data of a second entity different from the first entity into a common data structure common to the first entity and the second entity; Training the first classifier based on the transformed data of the second entity and the first loss function. Equipped with a control unit that executes processing Information processing device.

12. A computer of a first entity, outputting a first classifier and a first loss function for the first classifier to a second entity; acquiring, from the second entity, data of the second entity, the data of the second entity being a data sequence agreed upon by the first entity and the second entity, converted into a common data structure common to the first entity and the second entity, and the first classifier trained using the first loss function; inputting data of the first entity into the first identifier; Identifying data common to the first entity and the second entity based on the classification result output from the first classifier. An information processing method for performing a process.

Citation Information

Patent Citations

  • Federated learning using heterogeneous model types and architectures

    WO2021064737A1

  • Directing medical diagnosis and intervention recommendations

    WO2021067733A1