Learning device, analysis device, learning method, and program

By assigning multiple Embedding vectors to each action element label and employing self-supervised learning, the model better captures action contexts, enhancing the accuracy of customer behavior analysis.

WO2025158610A1PCT designated stage Publication Date: 2025-07-31NT T INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/002196
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-25
Publication Date
2025-07-31

AI Technical Summary

Technical Problem

Existing models using Transformer for customer behavior analysis struggle to adjust parameters effectively when action element labels have significantly different contexts, leading to inappropriate Embedding and Context vectors, especially for actions with varying precedents and successors.

Method used

Assigning two or more Embedding vectors to each action element label and using self-supervised learning to ensure the Context vector corresponds to one of these vectors, allowing for a more nuanced representation of action contexts.

Benefits of technology

This approach enables accurate analysis of customer actions by capturing the context of each action element label, improving the precision of customer behavior modeling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024002196_31072025_PF_FP_ABST
    Figure JP2024002196_31072025_PF_FP_ABST
Patent Text Reader

Abstract

This learning device comprises: an acquisition unit that acquires training data including a behavior series, which is a time series of a behavior element label representing past behavior content of per customer; and a training unit that, on the basis of the training data, trains a behavior model which holds an embedding function capable of assigning two or more embedding vectors to each behavior element label, which receives the behavior series as input, and which outputs a context vector for each time, such that a context vector for a time output by the behavior model corresponds with one of the two or more embedding vectors with respect to the behavior element label for the time included in the training data.
Need to check novelty before this filing date? Find Prior Art

Description

Learning device, analysis device, learning method, and program

[0001] The technology of the present disclosure relates to a learning device, an analysis device, a learning method, and a program.

[0002] Companies are accumulating customer behavioral history at various touchpoints and analyzing the customer journey, the process of customer behavior from becoming aware of a service, signing a contract, and continuing to use the service. They are then using the results of this analysis to improve their marketing and customer support measures. For example, they are analyzing the timing at which customers are likely to open an advertisement for a new service based on their behavioral history at touchpoints from app delivery to web access, or analyzing the procedural steps that make customers more likely to need support at a call center or in-store based on their behavioral history at touchpoints from web access to a call center.

[0003] Transformer is known as a technology for analyzing customer behavior processes (Non-Patent Document 1). When modeling with Transformer, customer behavior history is first represented as a table consisting of records containing at least three items: customer, time, and behavior element labels representing the behavior content. Then, a series of behavior element labels arranged in chronological order for each customer is prepared as training data. This training data is loaded into Transformer, and model parameters are estimated using self-supervised learning. In self-supervised learning, the behavior element labels for the next time or a series in which randomly selected behavior element labels are masked are input into Transformer, and the task of assigning the masked behavior element labels to the output using multi-class classification is repeatedly performed.

[0004] Fei Sun, et al. BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer. CIKM, 2019. https: / / arxiv.org / abs / 1904.06690

[0005] The input layer of the Transformer converts behavior element labels into multidimensional vectors using an Embedding function, which assigns one Embedding vector per behavior element label. This multidimensional vector is then encoded by the Attention layers stacked within the Transformer. The output layer of the Transformer then outputs a multidimensional vector called a Context vector for each behavior element label of each behavior sequence. The Context vector of a behavior element label in a certain behavior sequence tends to have a similar inner product value to the Embedding vector of that behavior element label, and is a value tuned to match the context of the behavior element labels before and after it in the behavior sequence. The score of a task performed in multi-class classification using self-supervised learning is calculated using the inner product value of the Embedding vector and Context vector of the behavior element label to be masked.

[0006] In this way, in the prior art, one Embedding vector is assigned to one behavior element label. Then, when a behavior sequence is input into a model related to the customer behavior process, a Context vector adjusted according to the context of the behavior element labels before and after it in the behavior sequence is output for each behavior element label in the behavior sequence. The model parameters related to the customer behavior process are adjusted so that the inner product value of the Context vector with the Embedding vector corresponding to the same behavior element label is larger than the Embedding vectors for other behavior element labels.

[0007] However, with conventional techniques, it is not possible to adjust parameters in self-supervised learning so that the inner product value of the embedding vector and context vector of an action element label converges sufficiently for an action element label with two or more significantly different contexts depending on the preceding and following action element labels in an action sequence. As a result, it is difficult to obtain appropriate embedding vectors and context vectors. The context vectors of the same action element label are output along a distribution whose center of gravity is the embedding vector, and therefore are not suitable for action element labels that do not fit this distribution. For example, the action element label of a customer who is deeply impressed by the courteous service of a store staff member at the time of purchasing a device and later "calls" the call center to express their gratitude is significantly different from the action element label of a customer who becomes unsure of which pricing plan is appropriate for them during a web transaction and "calls" the call center while browsing the website.

[0008] The disclosed technology has been made in consideration of the above points, and aims to provide a learning device, an analysis device, a learning method, and a program that can analyze behavior while taking into account the context of the behavior.

[0009] A first aspect of the present disclosure is a learning device that includes: an acquisition unit that acquires learning data including an action series, which is a time series of action element labels that represent past action details for each customer; and a learning unit that learns, based on the learning data, a behavior model that has an Embedding function that can assign two or more Embedding vectors to each action element label, receives the action series as input, and outputs a Context vector for each time such that the Context vector for the time output from the behavior model corresponds to one of the two or more Embedding vectors for the action element label at the time included in the learning data.

[0010] A second aspect of the present disclosure is an analysis device including: an acquisition unit that acquires a behavioral series, which is a time series of behavioral element labels that represent the past behavioral content of a customer; and an analysis unit that determines a Context vector for each time using a behavioral model that has an Embedding function that can assign two or more Embedding vectors to each behavioral element label based on the behavioral series, receives the behavioral series as input, and outputs a Context vector for each time, wherein the behavioral model is trained in advance so that the Context vector for the time output from the behavioral model corresponds to one of the two or more Embedding vectors for the behavioral element label at that time included in training data.

[0011] A third aspect of the present disclosure is a learning method in which a computer acquires learning data including a behavioral sequence, which is a time series of behavioral element labels representing the past behavior of each customer, and learns, based on the learning data, a behavioral model that has an Embedding function capable of assigning two or more Embedding vectors to each behavioral element label, receives the behavioral sequence as input, and outputs a Context vector for each time, so that the Context vector for the time output from the behavioral model corresponds to one of the two or more Embedding vectors for the behavioral element label at the time included in the learning data.

[0012] A fourth aspect of the present disclosure is a program for causing a computer to function as the learning device of the first aspect or the analysis device of the second aspect.

[0013] According to the disclosed technology, behavior can be analyzed by taking into account the context of the behavior.

[0014] 1 is a schematic block diagram of an example of a computer that functions as a learning device and an analysis device of this embodiment. FIG. 2 is a diagram showing an example of a behavior table. FIG. 3 is a block diagram showing the functional configuration of the learning device of this embodiment. FIG. 4 is a diagram showing an example of a behavior sequence. FIG. 5 is a diagram showing an example of a dictionary of behavior element labels. FIG. 6 is a diagram showing an example of a behavior sequence converted using a dictionary. FIG. 7 is a diagram showing an example of a design of layers of a behavior model. FIG. 8 is a diagram for explaining the assignment of k embedding vectors to one behavior element label in this embodiment. FIG. 9 is a diagram for explaining the assignment of one embedding vector to one behavior element label in the prior art. FIG. 10 is a diagram showing an example of an embedding layer of a behavior model. FIG. 11 is a diagram for explaining a learning method for a behavior model. FIG. 12 is a block diagram showing the functional configuration of the analysis device of this embodiment. FIG. 13 is a diagram showing an example of outputting information that identifies an embedding vector that results in the maximum score for each time in the behavior sequence of each customer. FIG. 14 is a flowchart showing the flow of a learning process of this embodiment. FIG. 15 is a flowchart showing the flow of an analysis process of this embodiment.

[0015] An example of an embodiment of the disclosed technology will be described below with reference to the drawings. Note that the same reference numerals are used to designate identical or equivalent components and parts in each drawing. Also, the dimensional proportions in the drawings are exaggerated for the sake of explanation and may differ from the actual proportions.

[0016] <Configuration of Learning Device According to This Embodiment> FIG. 1 is a block diagram showing the hardware configuration of a learning device 10 according to this embodiment.

[0017] 1, the learning device 10 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM 13, a storage 14, an input unit 15, a display unit 16, and a communication interface (I / F) 17. Each component is connected to each other via a bus 19 so as to be able to communicate with each other.

[0018] The CPU 11 is a central processing unit that executes various programs and controls each component. That is, the CPU 11 reads programs from the ROM 12 or the storage 14 and executes the programs using the RAM 13 as a work area. The CPU 11 controls the above components and performs various arithmetic processing in accordance with the programs stored in the ROM 12 or the storage 14. In this embodiment, a learning program is stored in the ROM 12 or the storage 14. The learning program may be a single program, or a group of programs consisting of multiple programs or modules.

[0019] The ROM 12 stores various programs and various data. The RAM 13 temporarily stores programs or data as a working area. The storage 14 is configured with an HDD (Hard Disk Drive) or an SSD (Solid State Drive) and stores various programs including the operating system and various data.

[0020] The input unit 15 includes a pointing device such as a mouse and a keyboard, and is used to input various data including a behavior table showing behavior element labels that represent the past behavior of each customer.

[0021] For example, as shown in FIG. 2, a behavior table showing behavior element labels representing the past behavior of each customer is input to the input unit 15. FIG. 2 shows an example in which the behavior table is composed of records including at least three items: customer, time, and behavior element label. In this example, the first record indicates that the behavior of "Web browsing - pricing plan explanation site" was observed for customer A at 11:32 on July 12, 2023. The example also shows that the behavior of "Call center inquiry - confirmation of this month's payment amount" was observed for customer A at 11:40 on July 12, 2023, for customer B at 12:00 on July 12, 2023, and for customer C at 10:44 on July 12, 2023.

[0022] The display unit 16 is, for example, a liquid crystal display, and displays various information including the processing results. The display unit 16 may be a touch panel type and function as the input unit 15.

[0023] The communication interface 17 is an interface for communicating with other devices, and uses standards such as Ethernet (registered trademark), FDDI, and Wi-Fi (registered trademark).

[0024] Next, a description will be given of the functional configuration of the learning device 10. Fig. 3 is a block diagram showing an example of the functional configuration of the learning device 10.

[0025] As shown in FIG. 3, the learning device 10 functionally includes an acquisition unit 20, a learning unit 22, and a model storage unit 24.

[0026] The acquisition unit 20 acquires the input behavior table. The acquisition unit 20 converts the behavior table into a behavior sequence, which is a time sequence of behavior element labels representing the past behavior of each customer, and uses the converted behavior table as learning data. Figure 4 shows an example of a behavior sequence in which behavior element labels are arranged in chronological order for each of customers A, B, and C.

[0027] The learning unit 22 uses multiple learning data to learn a behavioral model that has an Embedding function that can assign two or more Embedding vectors to each behavioral element label, accepts a behavioral sequence as input, and outputs a Context vector for each time, so that the Context vector for that time output from the behavioral model corresponds to one of the two or more Embedding vectors for the behavioral element label for that time included in the learning data.

[0028] Specifically, the learning unit 22 learns the parameters of the behavior model by self-supervised learning. At this time, the learning unit 22 calculates a score for each of two or more embedding vectors for each behavior element label by calculating the inner product of the output of the behavior model 100 and a matrix W of the embedding function for assigning two or more embedding vectors to each behavior element label. The learning unit 22 uses the maximum score of the scores of two or more embedding vectors for the behavior element label at a given time included in the learning data as the score for self-supervised learning.

[0029] More specifically, first, a dictionary of behavior element labels is created using the behavior sequences converted by the acquisition unit 20 as learning data. Figure 5 shows an example of a behavior element label dictionary. The dictionary consists of two columns: behavior element ID and behavior element label. The behavior element IDs "0", "1", and "2" represent the special behavior elements "[PAD]", ""[MASK]", and ""[UNK]", respectively. These represent empty elements, masked elements, and behavior elements not registered in the dictionary. For behavior element IDs "3" and above, behavior elements observed in the learning data are registered in order. Note that the order in which these behavior elements are registered is in descending order of frequency, and less frequent behavior elements may be omitted and treated as "[UNK]".

[0030] Next, the learning data is converted into behavior element IDs according to the dictionary. Figure 6 shows an example of a behavior sequence converted using the dictionary. By converting the behavior element labels into behavior element IDs, the format becomes one that can be converted using the Embedding function.

[0031] The behavioral sequence converted using the dictionary is then input to the behavioral model. Fig. 7 shows an example of the behavioral model 100. As shown in Fig. 7, the behavioral model 100 has a Transformer encoder, which receives the behavioral sequence x1, x2, ... as input and outputs Context vectors y1, y2, ... representing the behavioral content at each time.

[0032] The behavioral model 100 also includes an Embedding layer, a Self-Attension layer, a Layer Norm layer, a Feed Forward layer, a Layer Norm layer, and a Linear layer.

[0033] 8A and 8B show conceptual diagrams comparing the embedding of this embodiment with that of the prior art. As shown in FIG. 8B, a typical embedding function of the prior art generally assigns one embedding vector (an n-dimensional vector, where n is any real number, and in this embodiment, n = 512) to one behavior element label. In contrast, this embodiment uses an embedding function that can assign k embedding vectors to one behavior element label, as shown in FIG. 8A. k can take on a value of two or more. In the example of FIG. 8A, four embedding vectors are assigned to each behavior element ID. The embedding function holds a matrix W consisting of n-dimensional vectors equal to the number of embedding vectors (i.e., k × the number of behavior element IDs), and when a behavior element ID is input, it outputs k n-dimensional vectors corresponding to that ID.

[0034] In the input to the behavior model 100, the center of gravity of the embedding vectors assigned to each behavior element label is regarded as the representative vector of each behavior element label, and this representative vector is used as the output of the embedding layer.

[0035] FIG. 9 shows the details of the Embedding layer extracted from the behavioral model 100.

[0036] In the time embedding layer, a time embedding function is used to convert time into an n-dimensional vector. n can be 2 or greater, and in this embodiment, n = 512. In the token embedding layer, an embedding function assigned to each behavior element is used to convert behavior element IDs into k n-dimensional vectors, and a representative vector of the embedding vector is calculated. The sum of the n-dimensional vector converted using the time embedding function and the representative vector of the embedding vector is used as the output of the embedding layer.

[0037] In the example of FIG. 9, the representative vector of the embedding vector assigned to the behavior element ID=4 of x1-2 is calculated, and then the time is added to an n-dimensional vector converted by the embedding function for time.

[0038] The output of the behavior model 100 is called a Context vector, which is also an n-dimensional vector. The embedding vector assigned to each behavioral element label that has the largest inner product with the Context vector is used as the score for self-supervised learning.

[0039] FIG. 10 illustrates the calculation of the self-supervised learning score by calculating the inner product of the output Context vector. Since x1-2 represents behavior element ID=4, its output y1-2 is preferably the Context vector for behavior element ID=4. Comparing the scores of 4-1, 4-2, 4-3, and 4-4, 4-2 has the highest score of 0.41, and this value is selected as the self-supervised learning score for behavior element ID=4. Similarly, for behavior element ID=3, the score of 3-3, 0.08, is selected. In self-supervised learning, an error (e.g., cross-entropy error) is calculated so that the score for the correct behavior element ID=4 is high and the scores for incorrect behavior elements other than ID=4 are low, and the model parameters are repeatedly updated to reduce this error. This allows the behavior model 100 to learn by approximating the Context vector to one of the Embedding vectors with the same behavior element label.

[0040] Figure 10 is an illustration of how data at a certain time in a behavioral sequence is input into the behavioral model 100, and the inner product value of the output y1-2 with the matrix W is converted to a value between 0 and 1 using the softmax function, and then compared with the correct label.

[0041] The behavior model 100 is not limited to a Transformer encoder, but may be anything that can accept a past behavior sequence and output a vector representing the behavior content, such as a multi-layer neural network or gradient boosting.

[0042] Furthermore, in the self-supervised learning of the behavioral model 100, the set sequence input to the behavioral model 100 may be masked, and the parameters may be repeatedly updated so that the masked portions can be output from the behavioral model 100.

[0043] Furthermore, the learning of the model for analyzing behavior, which includes the behavioral model 100 as an encoder of the Transformer and a decoder, is performed in two stages: in the first stage, self-supervised learning of the above-mentioned behavioral model 100 is performed, and in the second stage, the entire model for analyzing behavior is learned.

[0044] The learning unit 22 stores the learned behavioral model 100 in the model storage unit 24 .

[0045] <Configuration of Analysis Apparatus According to This Embodiment> FIG. 1 is a block diagram showing the hardware configuration of an analysis apparatus 50 according to this embodiment.

[0046] 1, like the learning device 10, the analysis device 50 has a CPU 11, a ROM 12, a RAM 13, a storage 14, an input unit 15, a display unit 16, and a communication interface (I / F) 17. Each component is connected to each other so as to be able to communicate with each other via a bus 19. An analysis program is stored in the ROM 12 or the storage 14.

[0047] The input unit 15 is used to input various information including a behavior table showing behavior element labels that represent the past behavior of the customer to be analyzed.

[0048] Next, a description will be given of the functional configuration of the analysis device 50. Fig. 11 is a block diagram showing an example of the functional configuration of the analysis device 50.

[0049] As shown in FIG. 11, the analysis device 50 functionally comprises a model storage unit 52, an acquisition unit 54, and an analysis unit 56.

[0050] The model storage unit 52 stores a trained behavior model 100 similar to that of the model storage unit 24 of the learning device 10 .

[0051] The acquiring unit 54 acquires the input behavior table. Similar to the acquiring unit 20, the acquiring unit 54 converts the behavior table into a behavior sequence, which is a time sequence of behavior element labels that represent the past behavior of the customer to be analyzed.

[0052] The analysis unit 56 uses the trained behavior model 100 to obtain a context vector for each time when the converted behavior sequence is input.

[0053] The analysis unit 56 calculates the score for each of two or more embedding vectors for each behavioral element label by taking the inner product of the output of the behavioral model 100 and the matrix W of the embedding function, and calculates information that identifies the embedding vector with the highest score among the two or more embedding vectors for each behavioral element label.

[0054] Specifically, the ID of the Embedding vector with the highest score, for example, the behavior element ID "4-2" in the example of Fig. 10, is obtained as information for identifying the Embedding vector with the highest score. For example, as shown in Fig. 12, for each time point in each customer's behavior sequence, the behavior element ID to which the Context vector belongs is output as information for identifying the Embedding vector with the highest score.

[0055] Furthermore, the analysis unit 56 uses the output of the behavior model 100 as input to a decoder included in the model for analyzing behavior, and analyzes the behavior of the customer being analyzed.

[0056] <Operation of the Learning Device According to the Present Embodiment> Next, the operation of the learning device 10 according to the present embodiment will be described.

[0057] 13 is a flowchart showing the flow of the learning process by the learning device 10. The learning process is performed by the CPU 11 reading out a learning program from the ROM 12 or storage 14, expanding it into the RAM 13, and executing it. Also, it is assumed that a behavior table showing behavior element labels representing the past behavior of each customer has been input to the learning device 10. The learning process is an example of a learning method.

[0058] In step S100 , the CPU 11 functions as the acquisition unit 20 to acquire a plurality of behavior tables received by the input unit 15 .

[0059] In step S102, the CPU 11 functions as the acquisition unit 20 to convert each behavior table into a behavior sequence, which is a time series of behavior element labels representing the past behavior details of each customer, and sets the converted data as learning data.

[0060] In step S104, the CPU 11, as the learning unit 22, uses the converted behavioral sequence as learning data to learn the parameters of the behavioral model 100 through self-supervised learning, stores the learned behavioral model 100 in the model storage unit 24, and terminates the learning process.

[0061] <Operation of the Analysis Device According to the Present Embodiment> Next, the operation of the analysis device 50 according to the present embodiment will be described.

[0062] 14 is a flowchart showing the flow of analysis processing by the analysis device 50. The analysis processing is performed by the CPU 11 reading out an analysis program from the ROM 12 or storage 14, deploying it in the RAM 13, and executing it. The model storage unit 52 of the analysis device 50 stores a learned behavior model 100 learned by the learning device 10. The analysis device 50 is also assumed to have input thereto a behavior table showing behavior element labels that represent the past behavior of the customer to be analyzed.

[0063] In step S110, the CPU 11 functions as the acquisition unit 54 to acquire a behavior table showing behavior element labels that represent the past behavior details of the customer to be analyzed.

[0064] In step S112, the CPU 11, functioning as the acquisition unit 54, converts the acquired behavior table into a behavior sequence, which is a time sequence of behavior element labels representing the past behavior details of the customer to be analyzed.

[0065] In step S114, the CPU 11 functions as the analysis unit 56, using the trained behavior model 100, and outputs a context vector for each time when the converted behavior sequence is input.

[0066] In step S116, the CPU 11, as the analysis unit 56, calculates the score for each of two or more embedding vectors for each behavioral element label by taking the inner product of the output of the behavioral model 100 and the matrix W of the embedding function, outputs information identifying the embedding vector with the highest score among the two or more embedding vectors for each behavioral element label, and terminates the analysis process.

[0067] As described above, the learning device according to this embodiment acquires learning data including an action sequence, which is a time series of action element labels that represent the past actions of each customer, accepts the action sequence as input, and learns a behavior model that outputs a context vector for each time so that the context vector for that time output from the behavior model corresponds to one of two or more embedding vectors for the action element label for that time included in the learning data. This makes it possible to analyze actions taking into account the context of the action.

[0068] The analysis device according to this embodiment also acquires an action sequence, which is a time series of action element labels that represent the content of a customer's past actions, and calculates a context vector for each time using a trained action model, thereby enabling the analysis of actions taking into account the context of the actions.

[0069] For example, in the behavioral sequence shown in Figure 4 above, the behavior of "contact call center - confirm this month's payment amount" with behavioral element ID = 4 was observed in three customers. Customer A was curious about the pricing plan, so he looked it up online, confirmed his current payment amount at the call center, and then changed his plan at the store. In other words, it can be assumed that this behavior was intended to confirm the payment amount under the current plan. Customer B paid with his mobile phone at a hamburger shop, then confirmed his current payment amount at the call center, and then paid with his mobile phone at a donut shop. In other words, it can be assumed that this behavior was intended to confirm the payment amount that had increased due to the use of a service. Customer C made a call and his call charges increased slightly, then confirmed his current payment amount at the call center, and then paid with his mobile phone at an e-commerce site. In other words, it can be assumed that this behavior was intended to confirm the payment amount that had increased due to the use of a service.

[0070] The actions of customers B and C, "Contact the call center - check this month's payment amount," are similar, but have slightly different meanings from customer A's "Contact the call center - check this month's payment amount." In this embodiment, the four embedding vectors 4-1 to 4-4 assigned to the action element ID=4 in FIG. 8A can be used to express the difference in meaning between these actions. For example, it is possible to adjust the model parameters so that a Context vector close to 4-2 is obtained from customer A's action element ID=4, and a Context vector close to 4-1 is obtained from customers B and C's action element ID=4.

[0071] In this embodiment, two or more embedding vectors are assigned to one behavioral element label. This allows the context of the behavioral element label to be expressed as a multidimensional distribution with two or more centers of gravity, and by using a behavioral model trained in this way, the context of each behavior in the customer behavior process can be accurately analyzed.

[0072] Furthermore, the present invention is not limited to the device configuration and operation of the above-described embodiment, and various modifications and applications are possible within the scope of the gist of the present invention.

[0073] For example, although the above description has been given taking the case where the analysis device and the learning device are configured separately, the present invention is not limited to this and the analysis device and the learning device may be configured as a single device.

[0074] In addition, the various processes executed by the CPU after reading the software (program) in the above embodiments may be executed by various processors other than the CPU. Examples of processors in this case include PLDs (Programmable Logic Devices) whose circuit configuration can be changed after manufacture, such as FPGAs (Field-Programmable Gate Arrays), and dedicated electrical circuits, such as ASICs (Application Specific Integrated Circuits), which are processors having a circuit configuration designed specifically to execute specific processes. Furthermore, the learning process and analysis process may be executed by one of these various processors, or by a combination of two or more processors of the same or different types (e.g., multiple FPGAs, a combination of a CPU and an FPGA, etc.). Furthermore, the hardware structure of these various processors is, more specifically, an electrical circuit that combines circuit elements such as semiconductor elements.

[0075] In addition, in each of the above embodiments, the learning program and the analysis program are described as being pre-stored (installed) in the storage 14, but this is not limiting. The programs may be provided in a form stored on a non-transitory storage medium such as a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), or a USB (Universal Serial Bus) memory. The programs may also be downloaded from an external device via a network.

[0076] The following additional notes are provided regarding the above-described embodiments.

[0077] (Supplementary Item 1) A learning device comprising: a memory; and at least one processor connected to the memory, wherein the processor is configured to acquire learning data including an action sequence, which is a time series of action element labels representing past action details for each customer, and to learn, based on the learning data, a behavior model having an Embedding function capable of assigning two or more Embedding vectors to each action element label, which receives the action sequence as input and outputs a Context vector for each time, such that the Context vector for the time output from the behavior model corresponds to one of the two or more Embedding vectors for the action element label at the time included in the learning data.

[0078] (Supplementary Item 2) A non-transitory storage medium storing a program executable by a computer to execute a learning process, wherein the learning process is configured to: acquire learning data including an action series, which is a time series of action element labels representing past action details for each customer; and learn, based on the learning data, a behavior model having an Embedding function capable of assigning two or more Embedding vectors to each action element label, which receives the action series as input and outputs a Context vector for each time, so that the Context vector for the time output from the behavior model corresponds to one of the two or more Embedding vectors for the action element label at the time included in the learning data.

[0079] (Supplementary Item 3) An analysis device including: a memory; and at least one processor connected to the memory, wherein the processor is configured to: acquire an action series, which is a time series of action element labels representing past action details of a customer; and obtain a Context vector for each time using a behavior model having an Embedding function capable of assigning two or more Embedding vectors to each action element label based on the action series, receiving the action series as input, and outputting a Context vector for each time, wherein the behavior model is trained in advance so that the Context vector for the time output from the behavior model corresponds to one of the two or more Embedding vectors for the action element label at the time included in training data.

[0080] (Supplementary Item 4) A non-transitory storage medium storing a program executable by a computer to execute an analysis process, wherein the analysis process is configured to: acquire an action series, which is a time series of action element labels representing the past actions of a customer; and obtain a context vector for each time point based on the action series, using a behavior model that has an embedding function that can assign two or more embedding vectors to each action element label, receives the action series as input, and outputs a context vector for each time point; and the behavior model is trained in advance so that the context vector for the time point output from the action model corresponds to one of the two or more embedding vectors for the action element label at the time point included in training data.

[0081] REFERENCE SIGNS LIST 10 Learning device 11 CPU 13 RAM 14 Storage 15 Input unit 16 Display unit 20, 54 Acquisition unit 22 Learning unit 24, 52 Model storage unit 50 Analysis device 56 Estimation unit 100 Behavioral model

Claims

1. An acquisition unit that acquires learning data including an action sequence that is a time series of action element labels representing past action contents for each customer; An action model that has an Embedding function capable of assigning two or more Embedding vectors to each action element label, accepts the action sequence as an input, and outputs a Context vector for each time; A learning unit that learns so that the Context vector for the time output from the action model corresponds to any one of the two or more Embedding vectors for the action element label at the time included in the learning data. A learning device including the above.

2. The learning device according to claim 1, wherein the learning unit learns the parameters of the action model by self-supervised learning.

3. The action model has an Embedding function using a matrix W for assigning two or more Embedding vectors to each action element label; The learning unit obtains a score for each of the two or more Embedding vectors for the action element label at the time by taking the inner product of the output of the action model and the matrix W, and among the scores of the two or more Embedding vectors for the action element label at the time included in the learning data, the maximum score is used as the score for self-supervised learning. The learning device according to claim 2.

4. The learning device according to claim 1, wherein the action model has an encoder of Transformer.

5. An acquisition unit that acquires an action sequence that is a time series of action element labels representing past action contents of a customer; An analysis unit that obtains a Context vector for each time using an action model that has an Embedding function capable of assigning two or more Embedding vectors to each action element label, accepts the action sequence as an input, and outputs a Context vector for each time; Including, The action model is pre-learned so that the Context vector for the time output from the action model corresponds to any one of the two or more Embedding vectors for the action element label at the time included in the learning data. An analysis device.

6. Obtain learning data including an action sequence that is a time series of action element labels representing the past action content for each customer, and based on the learning data, have an Embedding function that can assign two or more Embedding vectors to each action element label, receive the action sequence as input, and output a Context vector for each time. A learning method in which a computer learns so that the Context vector for the time output from the action model corresponds to any one of the two or more Embedding vectors for the action element label at the time included in the learning data.

7. A program for causing a computer to function as the learning device according to any one of claims 1 to 4 or the analysis device according to claim 5.

Citation Information

Patent Citations

  • Nested Machine Learning Architecture

    US20190073586A1

  • Context Modeling in User Behavior Learning

    US20210216820A1