Semantic vector learning device, semantic vector estimation device, semantic vector learning method, and semantic vector learning program
The semantic vector learning device processes time series data to generate semantic vectors that consider user actions and time information, addressing the limitations of existing techniques by enhancing accuracy and performance in time-dependent tasks.
Patent Information
- Application Number
- JP2024504323
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-03-04
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2042-03-04
AI Technical Summary
Existing semantic vector estimation techniques do not adequately consider time information in sequences, limiting their effectiveness in fields like natural language processing and recommendations.
A semantic vector learning device and method that processes time series data by converting time into numerical sequences and action series into token sequences, using these processed data as learning input to generate a trained model that outputs semantic vectors of user actions, incorporating time information.
Enables the estimation of semantic vectors from time series data, taking into account user actions and time information, thereby improving the accuracy of semantic vector representation and enhancing the performance of models in time-dependent tasks.
Smart Images

Figure 0007658509000001 
Figure 0007658509000002 
Figure 0007658509000003
Abstract
Description
[Technical field]
[0001] The disclosed technology relates to a semantic vector learning device, a semantic vector estimation device, a semantic vector learning method, and a semantic vector learning program. [Background technology]
[0002] In the field of natural language processing, a technique for estimating the semantic vector of a word using a self-attention mechanism is known (see, for example, Non-Patent Document 1).
[0003] Semantic vector estimation technology estimates the semantic vector of a word taking into account the surrounding words by expressing the magnitude of the relationship between the word and the surrounding words using a self-attention mechanism.
[0004] In recent years, the scope of application of semantic vector estimation technology has expanded to other fields. For example, in the recommendation field, it is applied to a sequence of items selected by a customer to estimate the semantic vector of the item (for example, see Non-Patent Document 2). The semantic vector of an item is estimated by taking into account the items before and after it by expressing the magnitude of the relationship between the item and the items before and after it using a self-attention mechanism. [Prior art documents] [Non-patent literature]
[0005] [Non-Patent Document 1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova, BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding, https: / / arxiv.org / abs / 1810.04805 [Non-Patent Document 2] Fei Sun, Jun Liu, Jian Wu, Changhua Pei, Xiao Lin, Wenwu Ou, Peng Jiang, BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer, https: / / arxiv.org / abs / 1904.06690 Summary of the Invention [Problem to be solved by the invention]
[0006] However, conventional techniques target sequences that do not include time information. In other words, although semantic vector estimation techniques have been used in the fields of natural language processing and recommendation, the time information of sequences has not been sufficiently considered.
[0007] In the conventional technology described in Non-Patent Document 1, although the position of words in a sentence may be taken into consideration in natural language, time information was not included in the input. Also, the conventional technology described in Non-Patent Document 2 applies a technology with the same configuration as Non-Patent Document 1, excluding time information from the sequence of items, and time information was not included in the semantic vector.
[0008] The disclosed technology has been made in consideration of the above points, and aims to provide a semantic vector learning device, a semantic vector estimation device, a semantic vector learning method, and a semantic vector learning program that are capable of estimating semantic vectors from time series data representing user behavior. [Means for solving the problem]
[0009] A first aspect of the present disclosure is a semantic vector learning device comprising: an acquisition unit that acquires one or more time series data indicating a user's behavior; a processing unit that divides the time series data acquired by the acquisition unit into a time series and an action series, processes the time series into a series of numerical values converted from time, and processes the action series into a series of tokens; and a learning unit that performs machine learning on the processed time series data obtained by processing the processed time series data obtained by the processing unit as learning data, thereby generating a learned model that uses the processed time series data as input and outputs a semantic vector of the user's behavior.
[0010] A second aspect of the present disclosure is a semantic vector estimation device comprising: an acquisition unit that acquires one or more time series data indicating a user's behavior; a processing unit that divides the time series data acquired by the acquisition unit into a time series and an action series, processes the time series into a series of numerical values converted from time, and processes the action series into a series of tokens; and an estimation unit that estimates a semantic vector of the user's behavior from the processed time series data obtained by processing the time series data obtained by the processing unit using a trained model that is generated by machine learning using the processed time series data obtained in advance by the processing unit as learning data, and that inputs the processed time series data and outputs a semantic vector of the user's behavior.
[0011] A third aspect of the present disclosure is a semantic vector learning method, which acquires one or more time series data indicating user behavior, divides the acquired time series data into a time series and an action series, processes the time series into a series of numerical values converted from time, processes the action series into a series of tokens, and performs machine learning on the processed time series data obtained by processing using the processed time series data as learning data, thereby generating a trained model that uses the processed time series data as input and outputs a semantic vector of the user behavior.
[0012] A fourth aspect of the present disclosure is a semantic vector learning program that causes a computer to function as each unit included in the semantic vector learning device according to the first aspect. Effect of the Invention
[0013] The disclosed technology has an effect of being able to estimate a semantic vector of a user's behavior from time-series data representing the user's behavior, taking into account previous and subsequent user actions and time information. [Brief description of the drawings]
[0014] [Figure 1] 1 is a block diagram showing an example of a hardware configuration of a semantic vector learning device according to an embodiment. [Diagram 2] 1 is a block diagram showing an example of a functional configuration of a semantic vector learning device according to an embodiment; [Diagram 3] FIG. 4 is a diagram illustrating an example of time-series data according to the embodiment. [Figure 4] FIG. 13 is a diagram illustrating an example of processing a time series according to the embodiment. [Diagram 5] FIG. 13 is a diagram illustrating an example of processing of a behavior sequence according to the embodiment. [Figure 6] FIG. 13 is a diagram showing an example of a record of a user identifier A according to the embodiment. [Figure 7] FIG. 13 is a diagram showing an example of replacement or masking of numbers and tokens converted from times in a series according to an embodiment. [Figure 8] FIG. 1 is a diagram illustrating an example of a model design according to an embodiment. [Figure 9] 10 is a flowchart showing an example of a processing flow of a semantic vector learning program according to the embodiment. [Figure 10] 1 is a block diagram showing an example of a hardware configuration of a semantic vector estimation device according to an embodiment. [Figure 11] 1 is a block diagram showing an example of a functional configuration of a semantic vector estimation device according to an embodiment. [Figure 12] 11 is a flowchart showing an example of a processing flow of a semantic vector estimation program according to the embodiment. [Figure 13] 1 is a block diagram showing an example of a functional configuration of a time series data processing device according to an embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] Hereinafter, an example of an embodiment of the disclosed technology will be described with reference to the drawings. In each drawing, the same or equivalent components and parts are given the same reference numerals. In addition, the dimensional ratios of the drawings are exaggerated for the convenience of explanation and may differ from the actual ratios.
[0016] The semantic vector learning device and semantic vector estimation device of this embodiment provide certain improvements over conventional techniques that estimate semantic vectors without taking into account user behavior and time information, and represent an advancement in the technical field of estimating semantic vectors of user behavior.
[0017] First, with reference to FIG. 1, the hardware configuration of a semantic vector learning device 10 according to this embodiment will be described.
[0018] FIG. 1 is a block diagram showing an example of the hardware configuration of a semantic vector learning device 10 according to this embodiment.
[0019] 1, a semantic vector learning device 10 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 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 18 so as to be able to communicate with each other.
[0020] The CPU 11 is a central processing unit, and executes various programs and controls each part. That is, the CPU 11 reads a program from the ROM 12 or the storage 14, and executes the program using the RAM 13 as a working area. The CPU 11 controls each of the above components and performs various arithmetic processing according to the program stored in the ROM 12 or the storage 14. In this embodiment, the ROM 12 or the storage 14 stores a semantic vector learning program for executing the semantic vector learning process. Note that, instead of the CPU, for example, a GPU (Graphics Processing Unit) may be used.
[0021] 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 an operating system and various data.
[0022] The input unit 15 includes a pointing device such as a mouse, and a keyboard, and is used to perform various inputs to the device itself.
[0023] The display unit 16 is, for example, a liquid crystal display, and displays various information. The display unit 16 may function as the input unit 15 by adopting a touch panel system.
[0024] The communication interface 17 is an interface for the device itself to communicate with other external devices. For this communication, for example, a wired communication standard such as Ethernet (registered trademark) or FDDI (Fiber Distributed Data Interface), or a wireless communication standard such as 4G, 5G, or Wi-Fi (registered trademark) is used.
[0025] The semantic vector learning device 10 according to this embodiment is implemented by a general-purpose computer device such as a server computer or a personal computer (PC).
[0026] Next, the functional configuration of the semantic vector learning device 10 will be described with reference to FIG.
[0027] FIG. 2 is a block diagram showing an example of the functional configuration of the semantic vector learning device 10 according to this embodiment.
[0028] 2, the semantic vector learning device 10 includes, as functional components, an acquisition unit 101, a processing unit 102, and a learning unit 103. Each functional component is realized by the CPU 11 reading out a semantic vector learning program stored in the ROM 12 or storage 14, expanding it in the RAM 13, and executing it.
[0029] The acquisition unit 101 acquires one or more pieces of time-series data indicating user behavior. An example of the time-series data is shown in FIG.
[0030] Fig. 3 is a diagram showing an example of time-series data according to the present embodiment. The time-series data shown in Fig. 3 includes, for example, three items: "user identifier", "time", and "behavior identifier".
[0031] The processing unit 102 separates the time series data acquired by the acquisition unit 101 into a time series and an action series, processes the time series into a series of numerical values converted from time, and processes the action series into a series of tokens. At this time, when processing the time series into a series of numerical values converted from time, a predetermined periodic function is used to process the time series into a series of numerical values including one or more time periodicities.
[0032] Fig. 4 is a diagram showing an example of processing of a time series according to this embodiment. The time series shown in Fig. 4 is converted into, for example, an angle obtained by converting the "year" value of the time into a 3000-year cycle, an angle obtained by converting the "month" value of the time into a 1-year cycle, an angle obtained by converting the "day" value of the time into a 1-month cycle, an angle obtained by converting the "hour" value of the time into a 1-day cycle, an angle obtained by converting the "minute" value of the time into a 1-hour cycle, an angle obtained by converting the "second" value of the time into a 1-minute cycle, and an angle obtained by converting the "weekday / holiday" value of the time into a cycle, and then processing the sine and cosine series of trigonometric functions for each angle.
[0033] The example in Figure 4 shows the case where the time for a certain user is processed to "the sine and cosine of the angle obtained by converting the year value of the time into a 3000-year cycle" and "the sine and cosine of the angle obtained by converting the hour value of the time into a 1-day cycle."
[0034] The periodic function and the unit of the period are not limited to the above example. Any function may be used as long as it satisfies f(x+T)=f(x), where T is the period. In other words, the periodic function does not necessarily have to be a continuous function that can be differentiated at the boundaries of the period, such as a trigonometric function, and may be a discontinuous function whose boundaries are not differentiable. For example, the numerical value of each time may be processed into a remainder value by a MOD function for each unit of the period.
[0035] FIG. 5 is a diagram showing an example of processing of a behavior sequence according to this embodiment. In the behavior sequence shown in FIG. 5, a dictionary is generated in which behavior identifiers and their associated IDs (Identification: id) are paired and described (S1), and the behavior identifiers are converted and processed into IDs according to the generated dictionary (S2). As in Non-Patent Document 1, the dictionary contains [UNK], [CLS], [SEP], and [PAD] as special identifiers in advance. [UNK] represents an unknown behavior identifier, and [CLS] represents the start point of the behavior sequence. [SEP] represents the end of the behavior sequence, and [PAD] is used as a filler when the sequence does not meet the predetermined length (8 in this example).
[0036] Then, as an example, as shown in FIG. 6, the user identifiers are rearranged in chronological order.
[0037] Fig. 6 is a diagram showing an example of a record of user identifier A according to this embodiment. As shown in Fig. 6, [CLS] is filled in at the start of the action sequence, [SEP] at the end, and [PAD] is filled in for the sequence that does not meet the specified length. The value associated with [CLS] of the numerical sequence obtained by converting the time sequence from time is filled in with the start time of the action sequence, and the values associated with [SEP] and [PAD] are filled in with the numerical sequence obtained by converting the end time of the action sequence.
[0038] When processing a time sequence and an action sequence, the processing unit 102 stochastically replaces or masks a numerical value and a token converted from a time in the sequence. As an example, as shown in Fig. 7, for a numerical value converted from a time in the sequence, a numerical value within the range of values before and after the sequence is selected and replaced stochastically.
[0039] FIG. 7 is a diagram showing an example of replacement or masking of a numerical value and a token converted from a time in a series according to this embodiment. As shown in FIG. 7, replacement or masking of a numerical value and a token converted from a time in a series is performed probabilistically, and the series before and after the replacement or masking are stored separately. Specifically, in the learning series processing, 15% of the values in the entire series are randomly selected. 80% of the selected values are masked, and the numerical value converted from the time is replaced with a value selected probabilistically with a uniform distribution in the range of values before and after the time axis, and the behavior series is replaced with an identifier of [MASK]. In the example of FIG. 7, the time before and after the value selected in the time series (for example, "2021-11-12 11:15:20") is randomly selected within the range of "2021-11-12 11:00:35" and "2021-11-14 17:22:01". In addition, 10% of the selected values are replaced by another value selected stochastically with uniform distribution, while 10% of the selected values are not replaced or masked (nothing is done).
[0040] The above parameters of 80% masking, 10% replacement, and 10% no action are just examples and are not limited to these. It is sufficient to select three probability values whose sum is 100%.
[0041] The learning unit 103 performs machine learning on the processed time series data obtained by processing the processing unit 102 as learning data, thereby generating a trained model 141 that receives the processed time series data as an input and outputs a semantic vector of a user's behavior. The generated trained model 141 is stored in, for example, the storage 14 or an external storage device. As an example, as shown in FIG. 8, machine learning of a Masked Language Model is performed using the processed time series data as learning data.
[0042] Fig. 8 is a diagram showing an example of model design according to the present embodiment. In the Masked Language Model shown in Fig. 8, embedding of a sequence of numerical values obtained by converting a time sequence from time is added to the BERT (Bidirectional Encorder Representations from Transformers) model described in Non-Patent Document 1.
[0043] As shown in FIG. 8, embedding of behavior identifiers is initialized with the number of the dimension of the hidden layer for each behavior identifier, and the number is updated each time learning is performed. This is similar to word embedding. Note that embedding of behavior identifiers is not limited to this, and may be, for example, a transformation called one-hot-vector in which one behavior identifier is assigned to one dimension. Numeric embedding is initialized with the number of the dimension of the hidden layer for each numeric sequence, and the number is updated each time learning is performed. In other words, if the numerical value before embedding is x (scalar) and the embedding vector associated with the sequence is W (dimensional vector of the hidden layer), x·W is the value after embedding, and W is updated by learning. The parameters of the model learned in this way are stored in, for example, storage 14.
[0044] Next, the operation of the semantic vector learning device 10 according to this embodiment will be described with reference to FIG.
[0045] 9 is a flowchart showing an example of the flow of processing by the semantic vector learning program according to this embodiment. The processing by the semantic vector learning program is realized by the CPU 11 of the semantic vector learning device 10 writing the semantic vector learning program stored in the ROM 12 or storage 14 into the RAM 13 and executing it.
[0046] In step S101 in Fig. 9, the CPU 11 acquires time-series data for learning representing user behavior, as shown in Fig. 3 above, for example. This time-series data includes items of "user identifier", "time", and "behavior identifier".
[0047] In step S102, the CPU 11 separates the time series data acquired in step S101 into a time series and an action series, processes the time series into a series of values converted from time, and processes the action series into a series of tokens. In this case, when processing the time series into a series of values converted from time, as an example, as shown in the above-mentioned FIG. 4, the time series is processed into a series of values including one or more time periodicities using a predetermined periodic function. Also, as an example, as shown in the above-mentioned FIG. 5, the action series is processed into a series of tokens.
[0048] In step S103, the CPU 11 stochastically replaces or masks the numeric value converted from the time in the series and the token. As an example, as shown in Fig. 7, the numeric value converted from the time in the series is replaced by a numeric value in the range of values before and after the series.
[0049] In step S104, the CPU 11 performs machine learning on the processed time series data obtained by the replacement process or masking process in step S103 as learning data. As an example, as shown in Fig. 8, machine learning of a Masked Language Model is performed on the processed time series data as learning data.
[0050] In step S105, CPU 11 stores the model parameters obtained by machine learning in step S104 in the learning model to set it as learned model 141, and ends a series of processes according to this semantic vector learning program.
[0051] Next, the hardware configuration of the semantic vector estimation device 20 according to this embodiment will be described with reference to FIG.
[0052] FIG. 10 is a block diagram showing an example of the hardware configuration of the semantic vector estimation device 20 according to this embodiment.
[0053] 10, the semantic vector estimation device 20 includes a CPU 21, a ROM 22, a RAM 23, a storage 24, an input unit 25, a display unit 26, and a communication interface (I / F) 27. Each component is connected to each other via a bus 28 so as to be able to communicate with each other.
[0054] The CPU 21 is a central processing unit, and executes various programs and controls each part. That is, the CPU 21 reads a program from the ROM 22 or the storage 24, and executes the program using the RAM 23 as a working area. The CPU 21 controls each of the above components and performs various arithmetic processing according to the program stored in the ROM 22 or the storage 24. In this embodiment, the ROM 22 or the storage 24 stores a semantic vector estimation program for executing the semantic vector estimation process. Note that, instead of the CPU, for example, a GPU may be used.
[0055] The ROM 22 stores various programs and various data. The RAM 23 temporarily stores programs or data as a working area. The storage 24 is configured with an HDD or SSD, and stores various programs including an operating system, and various data.
[0056] The input unit 25 includes a pointing device such as a mouse, and a keyboard, and is used to perform various inputs to the device itself.
[0057] The display unit 26 is, for example, a liquid crystal display, and displays various information. The display unit 26 may function as the input unit 25 by adopting a touch panel system.
[0058] The communication interface 27 is an interface for the device itself to communicate with other external devices. For this communication, for example, a wired communication standard such as Ethernet (registered trademark) or FDDI, or a wireless communication standard such as 4G, 5G, or Wi-Fi (registered trademark) is used.
[0059] A general-purpose computer device such as a server computer or a personal computer (PC) is applied to the semantic vector estimation device 20 according to this embodiment.
[0060] Next, the functional configuration of the semantic vector estimation device 20 will be described with reference to FIG.
[0061] FIG. 11 is a block diagram showing an example of the functional configuration of the semantic vector estimation device 20 according to this embodiment.
[0062] 11, the semantic vector estimation device 20 includes, as functional components, an acquisition unit 201, a processing unit 202, an estimation unit 203, and an output unit 204. Each functional component is realized by the CPU 21 reading out a semantic vector estimation program stored in the ROM 22 or the storage 24, and expanding and executing the program in the RAM 23. The storage 24 stores a trained model 141 that has been machine-learned by the semantic vector learning device 10 described above.
[0063] The acquisition unit 201 acquires one or more pieces of time-series data for estimation indicating user behavior. The time-series data for estimation has the same specifications as the time-series data for learning. The time-series data for estimation includes the items of "user identifier", "time", and "behavior identifier".
[0064] The processing unit 202 separates the time series data acquired by the acquisition unit 201 into a time series and an action series, processes the time series into a series of numerical values converted from time, and processes the action series into a series of tokens. At this time, when processing the time series into a series of numerical values converted from time, the processing unit 202 processes the time series into a series of numerical values including one or more time periodicities using a predetermined periodic function, similar to the processing unit 102 shown in FIG. 2 described above.
[0065] The estimation unit 203 uses the trained model 141 to estimate a semantic vector of a user's behavior from the processed time-series data obtained by processing the processing unit 202. The trained model 141 is generated in advance by machine learning using the semantic vector learning device 10, and is a model that receives the processed time-series data as input and outputs a semantic vector of a user's behavior. That is, the estimation unit 203 estimates a semantic vector using a sequence for estimation and parameters of the trained model 141. This semantic vector is the value of the hidden layer of the Transformer encoder, similar to the BERT described in Non-Patent Document 1 above.
[0066] The output unit 204 outputs the semantic vector obtained by estimation by the estimation unit 203 .
[0067] Next, the operation of the semantic vector estimation device 20 according to this embodiment will be described with reference to FIG.
[0068] 12 is a flowchart showing an example of a process flow of the semantic vector estimation program according to this embodiment. The process of the semantic vector estimation program is realized by the CPU 21 of the semantic vector estimation device 20 writing the semantic vector estimation program stored in the ROM 22 or the storage 24 into the RAM 23 and executing it.
[0069] In step S111 of Fig. 12, the CPU 21 acquires time-series data for estimation representing a user's behavior. As an example, the time-series data for estimation includes items of "user identifier", "time", and "behavior identifier", similar to the time-series data for learning shown in Fig. 3 described above.
[0070] In step S112, the CPU 21 separates the time series data acquired in step S111 into a time series and an action series, processes the time series into a series of values converted from time, and processes the action series into a series of tokens. In this case, when processing the time series into a series of values converted from time, as an example, as shown in the above-mentioned FIG. 4, the time series is processed into a series of values including one or more time periodicities using a predetermined periodic function. Also, as an example, as shown in the above-mentioned FIG. 5, the action series is processed into a series of tokens.
[0071] In step S113, the CPU 21 estimates a semantic vector of the user's behavior from the processed time-series data obtained by processing in step S112, using the trained model 141. As described above, this semantic vector is set as a value of the hidden layer of the Transformer encoder, similar to the BERT described in Non-Patent Document 1.
[0072] In step S114, the CPU 11 outputs the semantic vector estimated in step S113, and ends a series of processes according to the semantic vector estimation program.
[0073] As described above, according to the present embodiment, it is possible to estimate a semantic vector of a user's behavior from time-series data representing the user's behavior, taking into account the previous and following user's behavior and time information. Since the estimated semantic vector of the user's behavior takes into account the previous and following user's behavior and time information, it is possible to improve accuracy when constructing a specialized machine learning model by Fine-Tuning for a task that takes time into consideration.
[0074] In addition, by considering time as well as order, Fine-Tuning's performance improves in tasks that predict behaviors that involve temporal habits. For example, it becomes easier for the model to learn characteristics such as performing a certain behavior every Monday at 4 p.m.
[0075] Fine-tuning can also be used to handle tasks such as time estimation, for example, learning to predict the next date and time an action will be performed.
[0076] In the above, a form in which the semantic vector learning process and the semantic vector estimation process are performed by separate devices has been described. However, as an example, the semantic vector learning process and the semantic vector estimation process may be performed by the same device, as shown in FIG. 13.
[0077] Fig. 13 is a block diagram showing an example of a functional configuration of a time series data processing device 30 according to this embodiment. The time series data processing device 30 shown in Fig. 13 is capable of selectively executing a semantic vector learning process and a semantic vector estimation process.
[0078] 13, the time series data processing device 30 includes, as functional components, an acquisition unit 301, a processing unit 302, a learning unit 303, an estimation unit 304, an output unit 305, and a trained model 306. The trained model 306 has the same configuration as the trained model 141 shown in FIG. 2 or FIG. 11 described above.
[0079] In Fig. 13, the processing unit 302 distinguishes between sequence processing for learning, which learns semantic vectors, and sequence processing for estimation, which estimates semantic vectors. In the sequence processing for learning, the processing unit 302 stochastically replaces or masks values and tokens converted from the time in the sequence. As an example, as shown in Fig. 7 above, for a value converted from the time in the sequence, a value within the range of values before and after the sequence is stochastically selected and replaced. However, since the acquisition unit 301, the learning unit 303, the estimation unit 304, and the output unit 305 are as described in Fig. 2 or Fig. 11 above, repeated description here will be omitted.
[0080] The semantic vector learning process or the semantic vector estimation process executed by the CPU by reading the program in the above embodiment may be executed by various processors other than the CPU. In this case, examples of the processor include a PLD (Programmable Logic Device) such as an FPGA (Field-Programmable Gate Array) whose circuit configuration can be changed after manufacture, and a dedicated electric circuit such as an ASIC (Application Specific Integrated Circuit) which is a processor having a circuit configuration designed exclusively for executing a specific process. The semantic vector learning process or the semantic vector estimation process may be executed by one of these various processors, or may be executed by a combination of two or more processors of the same or different types (for example, a plurality of FPGAs, a combination of a CPU and an FPGA, etc.). The hardware structure of these various processors is, more specifically, an electric circuit that combines circuit elements such as semiconductor elements.
[0081] In the above embodiment, the semantic vector learning program or the semantic vector estimation program is described as being pre-stored (also called "installed") in a ROM or storage, but the present invention is not limited to this. The semantic vector learning program or the semantic vector estimation program may be provided in a form stored in 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 semantic vector learning program or the semantic vector estimation program may be downloaded from an external device via a network.
[0082] All publications, patent applications, and standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or standard was specifically and individually indicated to be incorporated by reference.
[0083] The following supplementary notes are further disclosed regarding the above embodiment.
[0084] (Additional note 1) Memory, at least one processor coupled to the memory; Including, The processor, Obtain one or more time series data showing user behavior; Dividing the acquired time series data into a time series and an action series, processing the time series into a series of numerical values converted from time, and processing the action series into a series of tokens; The processed time series data obtained by the processing is used as learning data for machine learning, thereby generating a trained model that uses the processed time series data as input and outputs a semantic vector of the user's behavior. The semantic vector learning device is configured as follows.
[0085] (Additional note 2) A non-transitory storage medium storing a program executable by a computer to execute a semantic vector learning process, The semantic vector learning process includes: Obtain one or more time series data showing user behavior; Dividing the acquired time series data into a time series and an action series, processing the time series into a series of numerical values converted from time, and processing the action series into a series of tokens; The processed time series data obtained by the processing is used as learning data for machine learning, thereby generating a trained model that uses the processed time series data as input and outputs a semantic vector of the user's behavior. Non-transitory storage medium. [Explanation of symbols]
[0086] 10 Semantic Vector Learning Device 11, 21 CPU 12, 22 ROM 13, 23 RAM 14, 24 Storage 15, 25 Input section 16, 26 Display section 17, 27 Communication I / F 18, 28 Bus 20 Semantic Vector Estimation Device 30 Time series data processing device 101, 201, 301 Acquisition Department 102, 202, 302 Processing section 103, 303 Learning Department 203, 304 Estimation part 204, 305 Output section 141, 306 trained models
Claims
1. An acquisition unit that acquires one or more time series data indicating user behavior; a processing unit that divides the time series data acquired by the acquisition unit into a time series and an action series, processes the time series into a series of numerical values converted from time, and processes the action series into a series of tokens; a learning unit that performs machine learning on the processed time-series data obtained by processing the processing unit as learning data to generate a trained model that uses the processed time-series data as input and outputs a semantic vector of the user's behavior; A semantic vector learning device comprising:
2. The processing unit processes the time series into a sequence of numerical values converted from time by using a predetermined periodic function into a sequence of numerical values including one or more time periodicities.
2. The semantic vector learning device according to claim 1.
3. The processing unit probabilistically performs replacement or masking of numbers and tokens converted from times in the time series when processing the time series and the action series.
3. The semantic vector learning device according to claim 1 or 2.
4. The processing unit probabilistically selects and replaces a numerical value within a range of values before and after the sequence for the numerical value converted from the time in the sequence.
4. The semantic vector learning device according to claim 3.
5. The learning unit performs machine learning of a Masked Language Model using the processed time series data as learning data. The semantic vector learning device according to any one of claims 1 to 4.
6. An acquisition unit that acquires one or more time series data indicating user behavior; a processing unit that divides the time series data acquired by the acquisition unit into a time series and an action series, processes the time series into a series of numerical values converted from time, and processes the action series into a series of tokens; an estimation unit that estimates a semantic vector of the user's behavior from the processed time series data obtained by processing the time series data in advance by the processing unit using a trained model that is generated by machine learning using the processed time series data as learning data, and that receives the processed time series data as input and outputs a semantic vector of the user's behavior; A semantic vector estimation device comprising:
7. Obtaining one or more time series data indicative of user behavior; Dividing the acquired time series data into a time series and an action series, processing the time series into a series of numerical values converted from time, and processing the action series into a series of tokens; A process of generating a trained model that uses the processed time series data obtained by processing as learning data and outputs a semantic vector of the user's behavior by machine learning the processed time series data obtained by processing; A computer implemented method for learning semantic vectors.
8. A semantic vector learning program for causing a computer to function as each unit of the semantic vector learning device according to any one of claims 1 to 5.
Citation Information
Patent Citations
Prediction program, learning device, prediction device, and prediction method
JP2021096694A
Cited By
Information stabilization module (ICF module) that performs semantic convergence through phase correction.
JP7872912B1