Information processor, learning method, and learning program

JP2025028572AActive Publication Date: 2025-03-03LY CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023133474
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-18
Publication Date
2025-03-03
Estimated Expiration
2043-08-18

AI Technical Summary

Benefits of technology

【0008】 実施形態の一態様によれば、ユーザの有利な特徴量を選択して機械学習モデルの機械学習を実行できるという効果を奏する。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025028572000001_ABST
    Figure 2025028572000001_ABST
Patent Text Reader

Abstract

To provide an information processor that selects an advantageous feature amount for a user and executes machine learning for a machine learning model.SOLUTION: An information processor according to the present application includes a reception unit, an extraction unit, a first learning unit, a determination unit, and a second learning unit. The reception unit receives, from a device of a first operator, a feature amount of a selection target that satisfies a predetermined condition. The extraction unit extracts a feature vector of the selection target that satisfies the predetermined condition from the feature vector indicating the feature of the selection target managed by a second operator. The first learning unit causes a model to learn the feature of the feature amount of the selection target that satisfies the predetermined condition and a feature of the extracted feature vector. The determination unit uses, from among selection target feature amounts managed by the second operator, of features being not trained into the model, a bandit algorithm to determine a feature amount to be learned. The second learning unit learns, for the model trained by the first learning unit, the feature of the feature amount determined by the determination unit.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 device, a learning method, and a learning program. [Background technology]

[0002] Companies that provide advertisements and various services collect various information about users and analyze the collected information to improve the quality of their services. In addition, when a seed user is specified by an advertiser, if advantageous features can be selected, the features of the seed user can be extracted more efficiently. For example, the extracted features are useful information for training a machine learning model that predicts user behavior, etc. from the features. The use of such a machine learning model can be used, for example, to target users similar to the seed user.

[0003] In addition, conventional techniques include vectorizing information about user behavior using Word2vec or the like, and using such vectors to search for other users whose behavior is similar to that of a seed user. [Prior art documents] [Non-patent literature]

[0004] [Patent Document 1] JP 2023-036658 A Summary of the Invention [Problem to be solved by the invention]

[0005] However, there is room for improvement in the above conventional techniques. For example, in order to improve the prediction accuracy of a machine learning model, it is preferable to collect more user information and train the machine learning model, but from the viewpoint of protecting personal information, etc., the amount of user information that is permitted to be acquired is decreasing. In addition, the selection of advantageous features for seed users is performed manually, which places a heavy burden on the worker and is inefficient.

[0006] The present application has been made in consideration of the above, and aims to provide an information processing device, a learning method, and a learning program that can select features advantageous to a user and perform machine learning for a machine learning model. [Means for solving the problem]

[0007] The information processing device according to the present application includes a receiving unit, an extracting unit, a first learning unit, a determining unit, and a second learning unit. The receiving unit receives a feature amount of a selection target that satisfies a predetermined condition from a device of a first business operator. The extracting unit extracts a feature vector of the selection target that satisfies a predetermined condition from feature vectors indicating the features of the selection target managed by a second business operator. The first learning unit trains a model on features possessed by the feature amount of the selection target that satisfies the predetermined condition and features possessed by the extracted feature vector. The determining unit determines a feature amount to be a learning target from among the feature amounts of the selection target managed by the second business operator that have not been trained in a model, using a bandit algorithm. The second learning unit trains the model trained by the first learning unit on features possessed by the feature amount determined by the determining unit. Effect of the Invention

[0008] According to one aspect of the embodiment, it is possible to select features that are advantageous to the user and perform machine learning for a machine learning model. [Brief description of the drawings]

[0009] [Figure 1] FIG. 1 is a diagram showing the configuration of an information processing system according to this embodiment. [Diagram 2] FIG. 2 is a diagram illustrating an example of a data structure of the behavior information DB. [Diagram 3] FIG. 3 is a diagram illustrating an example of a data structure of the account DB. [Figure 4] FIG. 4 is a diagram showing the configuration of a client according to this embodiment. [Diagram 5] FIG. 5 is a diagram showing the configuration of an information processing device according to this embodiment. [Figure 6] FIG. 6 is a flowchart showing the processing procedure of the information processing device according to this embodiment. [Figure 7] FIG. 7 is a hardware configuration diagram showing an example of a computer that realizes the functions of the information processing device according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] Hereinafter, the information processing device, learning method, and learning program according to the present application will be described in detail with reference to the drawings. Note that the information processing device, learning method, and learning program according to the present application are not limited to the embodiments. In addition, each embodiment can be appropriately combined as long as the processing contents are not contradictory. In addition, the same parts in each of the following embodiments are given the same reference numerals, and duplicated explanations are omitted.

[0011] 1. Configuration of Information Processing System 1 First, an example of the configuration of an information processing system 1 according to this embodiment will be described with reference to Fig. 1. Fig. 1 is a diagram showing the configuration of the information processing system 1 according to this embodiment. As shown in Fig. 1, this information processing system 1 has user terminals 10a, 10b, and 10c, a client 100, and an information processing device 200. The user terminals 10a to 10c, the client 100, and the information processing device 200 are connected to each other via a network 2.

[0012] The user terminals 10a to 10c are terminal devices used by users. The user terminals 10a to 10c correspond to desktop PCs (Personal Computers), notebook PCs, tablet terminals, smartphones, etc. Users operate the user terminals 10a to 10c to access websites of the clients 100 and use various services. Note that while FIG. 1 shows the user terminals 10a to 10c, the information processing system 1 may include other user terminals. In the following description, the user terminals 10a to 10c are collectively referred to as "user terminals 10."

[0013] The client 100 is a server device or the like managed by a first business operator. The client 100 provides a website or the like, accepts access from a user terminal 10, and provides various services. Every time the client 100 accepts access from a user terminal 10, the client 100 registers user behavior information in the behavior information DB 141.

[0014] FIG. 2 is a diagram showing an example of the data structure of the behavior information DB 141. For example, the behavior information DB 141 has a user ID, the content of the behavior, and a date and time. The user ID is information that uniquely identifies a user. The content of the behavior is the content of the behavior performed by the user identified by the user ID. For example, the content of a user's behavior includes various things, and one of the content of the behavior is "requesting information materials." The date and time is the date and time when the behavior was performed.

[0015] Client 100 scans the content of the actions registered in the Action Information DB 141 and selects a user who meets a predetermined condition as a "seed user". A user who meets the predetermined condition is a user who has performed a preset action, a user who has performed a preset action a predetermined number of times or more, etc. Client 100 generates "selection target data" based on the record of the Action Information DB 141 corresponding to the seed user and transmits it to the information processing device 200. For example, the selection target data includes the data of the record of the Action Information DB 141 corresponding to the seed user, such as the user ID of the seed user, the content of the action, the date and time, etc. In the description of FIG. 1, the case where Client 100 has the Action Information DB 141 has been described, but the information processing device 200 may have the Action Information DB 141. In this case, the information processing device 200 executes the above processing to select a seed user and generate selection target data.

[0016] The information processing device 200 is a server device or the like managed by a second operator different from the first operator. For example, the information processing device 200 has an Account DB 241 and a machine learning model 242.

[0017] The Account DB 241 holds information on users managed by the second operator. FIG. 3 is a diagram showing an example of the data structure of the Account DB 241. As shown in FIG. 3, the Account DB 241 has a user ID, a feature vector, and a plurality of feature quantities (first feature quantity, second feature quantity, third feature quantity, ···, Nth feature quantity <N is a natural number>).

[0018] In FIG. 3, the user ID is information that uniquely identifies a user. The user ID in the behavior information DB 141 of the client 100 and the user ID in the account DB 241 are assumed to be associated in advance. The feature vector is a vector that indicates the characteristics of a user and is generated in advance for the user. For example, when various behavioral histories of a first user and various behavioral histories of a second user are similar, the cosine similarity between the feature vector of the first user and the feature vector of the second user approaches 1. The multiple feature amounts are various feature amounts related to the user. For example, the multiple feature amounts include gender, age, browsing history, access history, purchase history, and behavioral content.

[0019] The machine learning model 242 is a model that outputs a score when a feature of a user is input. The machine learning model 242 is an NN (Neural Network) or the like. For example, the closer the score output from the machine learning model 242 is to "1", the higher the likelihood that the user corresponding to the feature will perform a predetermined action. On the other hand, the closer the score output from the machine learning model 242 is to "0", the lower the likelihood that the user corresponding to the feature will perform a predetermined action.

[0020] When the information processing device 200 acquires selection target data from the client 100, the information processing device 200 generates training data having input data and output data (correct answer label). The information processing device 200 executes machine learning of the machine learning model 242 using the generated training data. The first machine learning and second machine learning executed by the information processing device 200 will be described below. Note that the information processing device 200 may perform the first machine learning and the second machine learning in a composite manner.

[0021] [2.1 Explanation of Machine Learning] Before describing the first machine learning, a process of generating training data used in the first machine learning will be described. First, an example of a process of generating positive examples of training data will be described. The information processing device 200 sets feature quantities such as the content of the action and the date included in the selection target data to the input data. The information processing device 200 compares the user ID included in the selection target data with the account DB 241, extracts a feature vector corresponding to the user ID, and sets the extracted feature vector to the input data. The information processing device 200 sets a score of "1" to the correct answer label of the training data of the positive example.

[0022] An example of a process in which the information processing device 200 generates negative examples of training data will be described. The information processing device 200 compares the content of the behavior included in the selection target data with a feature value corresponding to the content of the behavior among a plurality of features in the account DB 241, and identifies a plurality of user IDs in which a feature value different from the content of the behavior included in the selection target data is set. The information processing device 200 randomly selects one user ID from the identified plurality of user IDs, and sets the feature vector corresponding to the selected user ID and set in the account DB 241 to the input data. The information processing device 200 sets a score of "0" to the correct answer label of the training data of the negative example.

[0023] The information processing device 200 repeatedly executes the above process every time selection target data is acquired, and generates a training data set for executing the first machine learning. The information processing device 200 uses the training data set to train the machine learning model 242 by backpropagation or the like (executes the first machine learning). Note that the information processing device 200 may perform the first machine learning for the machine learning model 242 only once a day.

[0024] [3. Explanation of Machine Learning in Section 2] Before describing the second machine learning, a process for generating training data used in the second machine learning will be described. First, an example of a process for generating positive examples of training data will be described. The information processing device 200 compares a user ID included in the selection target data with the account DB 241 to identify a plurality of feature amounts corresponding to the user ID. The information processing device 200 determines a feature amount to be set in the input data of the training data from a plurality of feature amounts not used in the machine learning of the machine learning model 242 among the identified plurality of feature amounts.

[0025] For example, the information processing device 200 applies a bandit algorithm to a plurality of feature quantities, and evaluates each feature quantity. The information processing device 200 repeats evaluation and selection using the bandit algorithm, and determines a feature quantity that maximizes the evaluation value. More specifically, the information processing device 200 evaluates the accuracy of a model created using a certain type of feature quantity, and selects a type of feature quantity to be trained by the model based on this evaluation. As a detailed example, the information processing device 200 evaluates the accuracy of a model that calculates a score based on the characteristics of gender and age, and selects a new feature quantity (for example, residence) by the bandit algorithm. Then, the information processing device 200 re-trains a model that calculates a score based on the characteristics of gender, age, and residence, and selects a feature quantity by evaluating the accuracy of the trained model. When applying the bandit algorithm, the information processing device 200 may use XGBoost (eXtreme Gradient Boosting) to evaluate the feature importance of the feature quantity, and preferentially determine a feature quantity whose importance value is greater than other importance values. The information processing device 200 may use ε-greedy as the bandit algorithm.

[0026] The information processing device 200 sets the feature selected by applying a bandit algorithm such as ε-greedy as input data of the training data. Furthermore, the information processing device 200 uses the most useful feature at that time at a rate of ε, randomly selects a feature at a rate of (1-ε), and sets the selected feature as the input data. For example, when ε=0.1, the information processing device 200 selects the most useful feature with a probability of 90%, and selects a feature randomly with a probability of 10%. The information processing device 200 sets a score of "1" to the correct answer label of the training data of the positive example.

[0027] An example of a process in which the information processing device 200 generates negative examples of training data will be described. The information processing device 200 compares the content of the behavior included in the selection target data with a feature value corresponding to the content of the behavior among a plurality of feature values ​​in the account DB 241, and identifies a plurality of user IDs in which a feature value different from the content of the behavior included in the selection target data is set. The information processing device 200 randomly selects one user ID from the identified plurality of user IDs, and identifies a plurality of feature values ​​corresponding to the selected user ID. The information processing device 200 applies a bandit algorithm to a plurality of feature values ​​not used in the machine learning of the machine learning model 242 among the identified plurality of feature values, and determines a feature value to be set in the input data of the training data.

[0028] The information processing device 200 sets the feature quantity selected by applying the bandit algorithm as input data of the training data. In addition, the information processing device 200 randomly selects a feature quantity at a rate of (1-ε) using the most useful feature quantity at that time at a rate of ε, and sets the selected feature quantity as the input data. The information processing device 200 sets a score of "0" to the correct answer label of the training data of the negative example.

[0029] The information processing device 200 repeatedly executes the above process every time it acquires selection target data, and generates a training data set for executing the second machine learning. The information processing device 200 uses the training data set to train the machine learning model 242 by backpropagation or the like (executes the second machine learning).

[0030] As described above, the information processing device 200 according to the present embodiment acquires selection target data including features of a seed user from the client 100, and executes the first machine learning based on the selection target data and the second machine learning using a bandit algorithm on the machine learning model 242. This makes it possible to select features advantageous to the user and execute machine learning of the machine learning model.

[0031] For example, the first business entity using the information processing device 200 is an advertisement distributor, and the client 100 is a client that requests advertisement distribution from the advertisement distributor. The advertisement distributor provides, for example, a portal site such as a search site, or various services centered around the portal site.

[0032] Advertisement distributors score each user using a model that calculates a score based on the attributes of the user, and distribute advertisements when the score exceeds a predetermined threshold.

[0033] However, the types of features available to users are enormous, and it is time-consuming to determine which information to base a model on.

[0034] Therefore, when the information processing device 200 receives a seed user specification from the client side, the information processing device 200 automatically selects a type of feature that can accurately determine whether or not the user is a seed user by automatic selection using a bandit algorithm from among the attributes of the seed user, and generates a model that calculates a score based on the selected type of feature. As a result, the information processing device 200 can automatically generate a model (machine learning model 242) that estimates whether or not a user is similar to the seed user, in other words, whether or not the user is suitable as an advertisement destination and whether or not the user is likely to be interested in advertisements, simply by receiving the specification of the seed user as an advertisement delivery destination.

[0035] 4. Configuration of client 100 An example of the configuration of the client 100 shown in Fig. 1 will be described. Fig. 4 is a diagram showing the configuration of the client 100 according to this embodiment. As shown in Fig. 4, the client 100 has a communication unit 110, an input unit 120, a display unit 130, a storage unit 140, and a control unit 150.

[0036] The communication unit 110 is realized by a NIC (Network Interface Card) or the like. The communication unit 110 is connected to a network by wire or wirelessly, and transmits and receives information to and from various other devices. For example, the control unit 150, which will be described later, uses the communication unit 110 to transmit and receive information to and from the user terminal 10 and the information processing device 200.

[0037] The input unit 120 is a device for inputting various types of information to the control unit 150 of the client 100. The input unit 120 is an input device such as a keyboard, a mouse, or a touch panel.

[0038] The display unit 130 is a device for displaying information output from the control unit 150. The display unit 130 is a display device such as a display or a touch panel.

[0039] The storage unit 140 is realized by a semiconductor memory element such as a flash memory, or a storage device such as a hard disk. For example, the storage unit 140 has a behavior information DB 141.

[0040] The behavior information DB 141 holds the details of the behavior of a user who uses the user terminal 10 and accesses the client 100. The explanation of the behavior information DB 141 is the same as the explanation of the behavior information DB 141 described with reference to FIG.

[0041] The control unit 150 is a controller, and is realized, for example, by a processor such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit) executing various programs stored in a storage device (for example, the storage unit 140) inside the client 100 using a RAM as a working area. The control unit 150 is also a controller, and is realized, for example, by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).

[0042] Control unit 150 has service providing unit 151, selection unit 152, and notification unit 153, and realizes or executes the functions and actions of the processes described below. Note that the internal configuration of control unit 150 is not limited to the configuration shown in Fig. 4, and may be other configurations as long as they perform the processes described below.

[0043] The service providing unit 151 receives access from the user terminal 10, displays a website, etc., and provides various services. When the service providing unit 151 receives access from the user terminal 10, it displays a login screen, etc., and acquires the user ID, etc. of the user. The service providing unit 151 generates behavioral information of the user based on the access content from the user terminal 10, and registers the generated user behavioral information in the behavioral information DB 141. The user behavioral information registered in the behavioral information DB 141 includes the user ID, the content of the behavior, the date and time, etc.

[0044] The selection unit 152 scans the contents of the actions registered in the action information DB 141, and selects a user who satisfies a predetermined condition as a "seed user". A user who satisfies the predetermined condition is a user who has performed a preset action, or a user who has performed a preset action a predetermined number of times or more. The selection unit 152 generates selection target data based on a record in the action information DB 141 corresponding to the seed user, and outputs the data to the notification unit 153. For example, the selection target data is data of a record in the action information DB 141 corresponding to the seed user, and includes the user ID of the seed user, the content of the action, the date and time, etc.

[0045] The notification unit 153 uses the communication unit 110 to notify the information processing device 200 of the selection target data.

[0046] 5. Configuration of Information Processing Device 200 An example of the configuration of the information processing device 200 shown in Fig. 1 will be described. Fig. 5 is a diagram showing the configuration of the information processing device 200 according to this embodiment. As shown in Fig. 5, the information processing device 200 has a communication unit 210, an input unit 220, a display unit 230, a storage unit 240, and a control unit 250.

[0047] The communication unit 210 is realized by a NIC or the like. The communication unit 210 is connected to a network by wire or wirelessly, and transmits and receives information to and from various other devices. For example, the control unit 150, which will be described later, transmits and receives information to and from the client 100 using the communication unit 210.

[0048] The input unit 220 is a device for inputting various types of information to the control unit 250 of the information processing device 200. The input unit 220 is an input device such as a keyboard, a mouse, or a touch panel.

[0049] The display unit 230 is a device for displaying information output from the control unit 250. The display unit 230 is a display device such as a display or a touch panel.

[0050] The storage unit 240 is realized by a semiconductor memory element (non-volatile memory) such as a flash memory, or a storage device such as a hard disk. For example, the storage unit 240 includes an account DB 241, a machine learning model 242, and a training data table 243.

[0051] The account DB 241 holds information on users managed by the second service provider. The explanation regarding the account DB 241 is the same as the explanation regarding the account DB 241 described with reference to FIG.

[0052] The machine learning model 242 is a model that outputs a score when a feature amount of a user is input. The machine learning model 242 is a NN or the like.

[0053] The training data table 243 holds a training data set generated by the control unit 250, which will be described later. Each training data set included in the training data set has input data and output data (correct answer label).

[0054] The control unit 250 is a controller, and is realized, for example, by a processor such as a CPU or an MPU, which executes various programs stored in a storage device (for example, the storage unit 240) inside the information processing device 200 using a RAM as a working area. The control unit 250 is also a controller, and is realized, for example, by an integrated circuit such as an ASIC or an FPGA.

[0055] The control unit 250 has a receiving unit 251, an extracting unit 252, a first learning unit 253, a determining unit 254, and a second learning unit, and realizes or executes the functions and actions of the processes described below. Note that the internal configuration of the control unit 250 is not limited to the configuration shown in Fig. 5, and may be other configurations as long as they perform the processes described below.

[0056] The receiving unit 251 receives selection target data from the client 100. For example, the selection target data includes the user ID of the seed user, the content of the action, the date and time, etc. The receiving unit 251 outputs the selection target data to the extracting unit 252, the first learning unit 253, the determining unit 254, and the second learning unit 255.

[0057] The extraction unit 252 compares the user ID included in the selection target data with the account DB 241, and extracts a feature vector corresponding to the user ID. The extraction unit 252 outputs the extracted feature vector to the first learning unit 253.

[0058] The first learning unit 253 executes the "first machine learning related process" described above. For example, when generating a positive example of training data, the first learning unit 253 executes the following process. The first learning unit 253 sets the feature amounts of the action content, date, etc. included in the selection target data and the feature vector acquired from the extraction unit 252 to the input data. The first learning unit 253 sets a score of "1" to the correct answer label of the training data of the positive example.

[0059] The first learning unit 253 executes the following process when generating a negative example of training data. The first learning unit 253 compares the content of the behavior included in the selection target data with a feature value corresponding to the content of the behavior among a plurality of features in the account DB 241, and identifies a plurality of user IDs in which a feature value different from the content of the behavior included in the selection target data is set. The first learning unit 253 randomly selects one user ID from the identified plurality of user IDs, and sets the feature vector corresponding to the selected user ID and set in the account DB 241 as the input data. The first learning unit 253 sets a score of "0" to the correct answer label of the training data of the negative example.

[0060] The first learning unit 253 repeatedly executes the above process every time it acquires selection target data, generates a training data set for executing the first machine learning, and registers it in the training data table 243. The first learning unit 253 uses the training data set to train the machine learning model 242 based on backpropagation.

[0061] The determination unit 254 generates training data to be used in the second machine learning in relation to the above-mentioned "processing related to the second machine learning." When generating positive examples of training data, the determination unit 254 executes the following process. The determination unit 254 determines feature amounts to be set in the input data of the training data from a plurality of feature amounts not used in the machine learning of the machine learning model 242, among a plurality of feature amounts registered in the account DB 241. For example, the determination unit 254 applies a bandit algorithm to determine feature amounts to be set in the input data of the training data (feature amounts to be learned).

[0062] In addition, the determination unit 254 randomly selects a feature from among the multiple features that were not selected by the bandit algorithm, and sets the selected feature to the input data. The determination unit 254 sets a score of "1" to the correct answer label of the training data of the positive example.

[0063] The determination unit 254 executes the following process when generating negative examples of training data. The determination unit 254 compares the content of the behavior included in the selection target data with a feature value corresponding to the content of the behavior among the multiple feature values ​​in the account DB 241, and identifies multiple user IDs in which a feature value different from the content of the behavior included in the selection target data is set. The determination unit 254 randomly selects one user ID from the multiple identified user IDs, and identifies multiple feature values ​​corresponding to the selected user ID. The determination unit 254 applies a bandit algorithm to multiple feature values ​​not used in the machine learning of the machine learning model 242 among the multiple identified feature values ​​to determine a feature value to be set in the input data of the training data.

[0064] The determination unit 254 sets the feature quantity selected by applying the bandit algorithm as the input data of the training data. For example, the determination unit 254 selects the most useful feature quantity at that time at a rate of ε, randomly selects a feature quantity at a rate of (1-ε), and sets the selected feature quantity as the input data. The determination unit 254 sets the score "0" to the correct answer label of the training data of the negative example.

[0065] The determination unit 254 repeatedly executes the above process every time selection target data is acquired, and generates a training data set for executing the second machine learning. The determination unit 254 registers the generated training data set in the training data table 243.

[0066] The second learning unit 255 uses the training data set registered in the training data table 243 and generated by the above-mentioned determination unit 254, and performs machine learning of the machine learning model 242 based on backpropagation.

[0067] 6. Processing Procedure of Information Processing Device 200 Next, an example of a processing procedure of the information processing device 200 according to this embodiment will be described. Fig. 6 is a flowchart showing the processing procedure of the information processing device 200 according to this embodiment. As shown in Fig. 6, the receiving unit 251 of the information processing device 200 receives selection target data from the client 100 (step S101).

[0068] The extraction unit 252 of the information processing device 200 extracts a feature vector of the user from the account DB 241 based on the selection target data (step S102). The first learning unit 253 of the information processing device 200 generates a training data set for performing the first machine learning based on the selection target data (step S103). The first learning unit 253 executes the first machine learning for the machine learning model 242 (step S104).

[0069] The determination unit 254 of the information processing device 200 generates a training data set for performing the second machine learning using a bandit algorithm (step S105). The second learning unit 255 of the information processing device 200 executes the second machine learning for the machine learning model 242 (step S106).

[0070] If the information processing device 200 continues the process (Yes at step S107), the information processing device 200 proceeds to step S101. On the other hand, if the information processing device 200 does not continue the process (No at step S107), the information processing device 200 ends the process.

[0071] [7. Hardware Configuration] The client 100 or the information processing device 200 according to the embodiment described above is realized by a computer 80 having a configuration as shown in Fig. 7, for example. The information processing device 200 will be described below as an example. Fig. 7 is a hardware configuration diagram showing an example of the computer 80 that realizes the functions of the information processing device 200 according to the embodiment. The computer 80 has a CPU 81, a RAM 82, a ROM (Read Only Memory) 83, a HDD (Hard Disk Drive) 84, a communication interface (I / F) 85, an input / output interface (I / F) 86, and a media interface (I / F) 87.

[0072] The CPU 81 operates and controls each part based on a program stored in the ROM 83 or the HDD 84. The ROM 83 stores a boot program executed by the CPU 81 when the computer 80 is started up, a program dependent on the hardware of the computer 80, and the like.

[0073] The HDD 84 stores programs executed by the CPU 81, data used by such programs, etc. The communication interface 85 receives data from other devices via the network and sends it to the CPU 81, and transmits data generated by the CPU 81 to other devices via the network N.

[0074] The CPU 81 controls output devices such as a display and a printer, and input devices such as a keyboard and a mouse, via the input / output interface 86. The CPU 81 acquires data from the input devices via the input / output interface 86. The CPU 81 also outputs data generated via the input / output interface 86 to the output devices.

[0075] The media interface 87 reads a program or data stored in a recording medium 88 and provides it to the CPU 81 via the RAM 82. The CPU 81 loads the program from the recording medium 88 onto the RAM 82 via the media interface 87 and executes the loaded program. The recording medium 88 is, for example, an optical recording medium such as a DVD (Digital Versatile Disc) or a PD (Phase change rewritable Disc), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.

[0076] For example, when the computer 80 functions as the information processing device 200 according to the embodiment, the CPU 81 of the computer 80 executes a program loaded on the RAM 82 to realize the function of the control unit 250. In addition, the data in the storage unit 240 is stored in the HDD 84. The CPU 81 of the computer 80 reads and executes these programs from the recording medium 88, but as another example, these programs may be obtained from another device via the network N.

[0077] [8. Other] In addition, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically by a known method. In addition, the information including the processing procedures, specific names, various data and parameters shown in the above documents and drawings can be changed arbitrarily unless otherwise specified. For example, the various information shown in each drawing is not limited to the illustrated information.

[0078] In addition, each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or part of them can be functionally or physically distributed and integrated in any unit according to various loads, usage conditions, etc.

[0079] For example, the information processing device 200 described above may be realized by multiple server computers, and depending on the functions, the configuration can be flexibly changed by calling an external platform using an API (Application Programming Interface) or network computing.

[0080] Furthermore, the above-described embodiments and modifications can be appropriately combined as long as the processing contents are not contradictory.

[0081] Incidentally, the above-mentioned information processing device 200 compares the user ID included in the selection target data transmitted from the client 100 with the account DB 241 to associate the user (seed user) who performed a predetermined behavior, but the present invention is not limited to this. For example, when the information processing device 200 receives the selection target data (including the content of the seed user's behavior but not including the user ID) from the client 100, the information processing device 200 may compare a feature corresponding to the content of the behavior among a plurality of feature amounts included in the account DB 241 with a feature amount of the content of the behavior of the selection target data, and may specify the user ID of a user whose feature amounts are similar to each other as the user ID of the seed user. For example, when most of the content of the user's behavior set in the selection target data indicates "purchasing the same product every two months", the information processing device 200 may specify the user ID corresponding to the feature amount "purchasing the same product every two months" as the user ID of the seed user based on the feature amount of the account DB 241.

[0082] [9. Effects] As described above, the information processing device 200 according to the embodiment includes the receiving unit 251, the extracting unit 252, the first learning unit 253, the determining unit 254, and the second learning unit 255. The receiving unit 251 receives a feature amount of a selection target that satisfies a predetermined condition from a device of the first operator. The extracting unit 252 extracts a feature vector of the selection target that satisfies a predetermined condition from among feature vectors indicating the features of the selection target managed by the second operator. The first learning unit 253 makes a model learn the features of the feature amount of the selection target that satisfies the predetermined condition and the features of the extracted feature vector. The determining unit 254 determines a feature amount to be a learning target by using a bandit algorithm from among the feature amounts of the selection target managed by the second operator that have not been taught to the model. The second learning unit 255 makes the model that has been trained by the first learning unit 253 learn the features of the feature amount determined by the determining unit 254. This makes it possible to select a feature amount advantageous to the user and perform machine learning of the machine learning model.

[0083] In addition, the determination unit 254 selects the most useful feature at a rate of ε, randomly selects a feature at a rate of (1-ε), and sets the selected feature to the input data. This makes it possible to determine appropriate features using the bandit algorithm.

[0084] Furthermore, when using the bandit algorithm, the determination unit 254 evaluates the importance of each feature and preferentially determines a feature whose importance value is greater than other importance values. This makes it possible to efficiently determine a feature that is advantageous to the user.

[0085] Moreover, the storage unit 240 stores the account DB 241, and the extraction unit 252 extracts a feature vector corresponding to a feature similar to the feature of the selection target accepted by the acceptance unit 251, from among a plurality of feature amounts set in the account DB 241. This makes it possible to easily extract the feature vector of the seed user selected by the client 100 of the first business entity.

[0086] The above describes the embodiment of the present application in detail based on the drawings, but this is merely an example, and the present invention can be implemented in other forms that include various modifications and improvements based on the knowledge of those skilled in the art, including the forms described in the Disclosure of the Invention section.

[0087] Furthermore, the above-mentioned "section, module, unit" can be read as "means" or "circuit", etc. For example, an acquisition section can be read as an acquisition means or an acquisition circuit. [Explanation of symbols]

[0088] 100 clients 110,210 Communications Department 120,220 Input section 130,230 Display section 140,240 storage section 141 Behavior information DB 150,250 Control section 151 Service Provision Department 152 Selection Department 153 Notification Department 200 Information processing device 241 Account DB 242 Machine Learning Models 243 Training Data Table 251 Reception 252 Extraction part 253 First Learning Section 254 Decision Section 255 Second Learning Section

Claims

1. a reception unit that receives, from a device of the first operator, feature quantities of a selection target that satisfy a predetermined condition; an extracting unit that extracts a feature vector of a selection target that satisfies the predetermined condition from feature vectors indicating features of the selection target managed by a second business operator; a first learning unit that causes a model to learn features of the feature amounts of the selection targets that satisfy the predetermined condition and features of the extracted feature vector; a determination unit that determines, by using a bandit algorithm, feature quantities to be learned from among the feature quantities to be selected that are managed by the second business operator and whose features have not been learned by the model; a second learning unit that learns features of the feature amount determined by the determination unit for the model trained by the first learning unit; 13. An information processing device comprising:

2. 2. The information processing device according to claim 1, wherein the determination unit uses ε-greedy as the bandit algorithm, determines the most useful feature with a probability of ε for the features to be selected, and further executes a process of randomly determining features with a rate of (1-ε).

3. The information processing apparatus according to claim 1 , wherein, when using the bandit algorithm, the determination unit evaluates the importance of each feature and determines, with priority, a feature having an importance value greater than other importance values.

4. a storage unit configured to store account information in which a feature amount of a user managed by the second business is associated with the feature vector; The information processing apparatus according to claim 1 , wherein the extraction unit extracts a feature vector corresponding to a feature similar to a feature of the selection target accepted by the acceptance unit, from among the feature values ​​set in the account information.

5. 1. A computer implemented method of learning, comprising: a receiving step of receiving, from the device of the first business operator, feature quantities of a selection target that satisfy a predetermined condition; an extraction step of extracting a feature vector of the selection object that satisfies the predetermined condition from feature vectors indicating features of the selection object managed by the second business operator; a first learning step of learning features of the feature amounts of the selection targets that satisfy the predetermined condition and features of the extracted feature vector into a model; a determination step of determining, by using a bandit algorithm, feature quantities to be learned from among the feature quantities to be selected that are managed by the second business operator and whose features have not been learned by the model; A second learning step of learning the features of the feature amount determined in the determining step for the model trained in the first learning step. A learning method comprising:

6. a receiving step of receiving, from a device of a first business operator, feature quantities of a selection target that satisfy a predetermined condition; an extraction step of extracting a feature vector of the selection target that satisfies the predetermined condition from feature vectors indicating features of the selection target managed by the second business operator; a first learning step of learning features of the feature amounts of the selection targets that satisfy the predetermined condition and features of the extracted feature vector into a model; a determination step of determining, by using a bandit algorithm, feature quantities to be learned from among the feature quantities to be selected that are managed by the second business operator and whose features have not been learned by the model; a second learning step of learning features of the feature amount determined by the determination step for the model trained by the first learning step. A learning program characterized by:

Citation Information

Patent Citations

  • Methods and systems for feature selection in machine learning based on feature contribution and model fitness

    US20070112716A1

  • System and method for real-time user response prediction for content presentations on client devices

    US20230214876A1

  • Information processing device, information processing method, and information processing program

    JP2023036658A