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

By calculating sentence vectors and training a machine learning model to predict appropriate sentence sequences, the method effectively corrects input errors and detects inappropriate sentences in multi-sentence contexts, enhancing accuracy and efficiency.

JP7806894B2Active Publication Date: 2026-01-27FUJITSU LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2024524117
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-06-02
Publication Date
2026-01-27
Estimated Expiration
2042-06-02

AI Technical Summary

Technical Problem

Conventional technologies struggle with accurately correcting input errors in sentences, particularly in multi-sentence contexts, and fail to detect sentences with input errors effectively.

Method used

A computer executes a process to calculate sentence vectors for consecutive sentences, train a machine learning model using these vectors, and predict the appropriate next sentence vector, detecting inappropriate sentences using cosine similarity and correcting errors.

Benefits of technology

The method enables accurate estimation of gaps in multi-sentence texts and detection of input errors, improving sentence correction accuracy while reducing computational costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007806894000001
    Figure 0007806894000001
  • Figure 0007806894000002
    Figure 0007806894000002
  • Figure 0007806894000003
    Figure 0007806894000003
Patent Text Reader

Abstract

This information processing device calculates vectors of a plurality of sentences having a relationship in front and back sentences in a plurality of continuous sentences. The information processing device generates a machine-learning model which predicts sentence vectors of a sentence that is input after a certain sentence when the sentence vectors of the certain sentence are input to the machine-learning model by inputting, in order, the plurality of sentence vectors to the machine-learning model and training the machine-learning model. The information processing device calculates vectors of a first sentence and vectors of a second sentence that follows the first sentence. The information processing device calculates vectors of a sentence that is predicted to follow the first sentence by inputting the vectors of the first sentence to the machine-learning model, and determines whether the vectors of the second sentence are proper.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing program and the like. [Background technology]

[0002] In recent years, services have been provided that calculate the vector of a sentence and use the calculated vector to perform various processes such as translation into other languages, database search, etc. However, if there is an input error or the like in the sentence itself specified by the user, the vector of the sentence cannot be calculated accurately, and errors may occur in processes such as translation and search.

[0003] For example, the correct sentence "Its function is its characteristic" and the incorrect sentence "Its function is its characteristic" are sentences with significantly different meanings, and the vectors of each sentence are also significantly different.

[0004] A conventional technique for correcting input errors in a sentence involves training a learning model using a data set of pairs of input errors and their corrected sentences from the correction history, and then inputting the target sentence into the trained learning model to correct the input error in the target sentence. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Japanese Patent Application Publication No. 2019-101993 [Non-patent literature]

[0006] [Non-Patent Document 1] Kazuhiro Miki et al., "A Solution to English Fill-in-the-Blank Problems Using BERT," Okayama University, Department of Information Science, DEIM2020 G2-4 (day1 p47) [Non-patent document 2] Yu Tanaka et al., "Constructing a Japanese Typing Error Dataset Using Wikipedia Revision History," Graduate School of Informatics, Kyoto University, Association for Natural Language Processing, 26th Annual Conference, Proceedings, March 2020 Summary of the Invention [Problem to be solved by the invention]

[0007] However, the above-mentioned conventional technology is a technology for filling in gaps in which some words in a sentence are masked, and although it has high accuracy in filling in words that fill in gaps in sentences consisting of multiple words, there are few descriptions of high accuracy in filling in sentences that consist of multiple sentences, and it does not detect sentences that contain input errors. Furthermore, while the conventional technology can correct input errors such as typos and omissions, there are many cases in which it cannot correctly correct input errors resulting from incorrect conversion.

[0008] In one aspect, the present invention aims to provide an information processing program, an information processing method, and an information processing device that can estimate sentences to fill in gaps in a text consisting of multiple sentences, and detect sentences that contain input errors. [Means for solving the problem]

[0009] In the first proposal, a computer is made to execute the following process. The computer calculates the vectors of each of a plurality of consecutive sentences that are related to the preceding and following sentences. The computer inputs the vectors of the plurality of sentences into a machine learning model in order to train the model, thereby generating a machine learning model that, when the vector of a certain sentence is input into the machine learning model, predicts the sentence vector of the sentence that will be input after the given sentence. The computer calculates the vector of the first sentence and the vector of the second sentence that follows the first sentence. The computer inputs the vector of the first sentence into the machine learning model to calculate the vector of the sentence that is predicted to follow the first sentence, and determines whether the vector of the second sentence is appropriate. [Effects of the Invention]

[0010] It is possible to estimate sentences to fill in gaps in a text consisting of multiple sentences, and to detect sentences containing input errors. [Brief explanation of the drawings]

[0011] [Figure 1] FIG. 1 is a diagram for explaining the process of the learning phase of the information processing device according to the present embodiment. [Figure 2] FIG. 2 is a diagram for explaining the processing of the analysis phase of the information processing device according to the present embodiment. [Figure 3] FIG. 3 is a functional block diagram showing the configuration of the information processing device according to this embodiment. [Figure 4] FIG. 4 is a diagram illustrating an example of the data structure of the word vector dictionary. [Figure 5A] FIG. 5A is a diagram (1) for explaining the process of calculating a sentence vector. [Figure 5B] FIG. 5B is a diagram (2) for explaining the process of calculating the sentence vector. [Figure 6] FIG. 6 is a diagram for explaining the process of generating a sentence transposition index. [Figure 7] FIG. 7 is a flowchart illustrating a processing procedure in the learning phase of the information processing device according to the present embodiment. [Figure 8] FIG. 8 is a flowchart illustrating a processing procedure of the analysis phase of the information processing device according to the present embodiment. [Figure 9] FIG. 9 is a diagram (1) for explaining other processes of the information processing device. [Figure 10] FIG. 10 is a diagram (2) for explaining other processes of the information processing device. [Figure 11] FIG. 11 is a diagram illustrating an example of a hardware configuration of a computer that realizes the same functions as the information processing apparatus of the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0012] Hereinafter, an information processing program, an information processing method, and an information processing device disclosed in the present application will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to these embodiments. [Example]

[0013] The processing of the information processing device according to this embodiment will be described. The information processing device executes the processing of the learning phase and then executes the processing of the analysis phase. Fig. 1 is a diagram for explaining the processing of the learning phase of the information processing device according to this embodiment.

[0014] In the learning phase, the information processing device performs learning of the machine learning model 50 (trains the machine learning model 50) using a plurality of sentences included in the training data 141. The machine learning model 50 is a neural network (NN) such as BERT (Pre-training of Deep Bidirectional Transformers for Language Understanding), Next Sentence Prediction, or Transformers.

[0015] The text included in the training data 141 includes multiple sentences. The multiple sentences have a predetermined relationship with the sentences before and after them. Each sentence is a sentence that is set in advance based on an inductive or deductive syllogism or the like.

[0016] For example, sentence 10a contains, from the beginning, the sentences "Birds lay eggs," "Penguins are birds," ..., and "Therefore, penguins lay eggs." Sentence 10b contains, from the beginning, the sentences "Birds hatch from eggs," "Pigeons are a type of bird," ..., and "Therefore, pigeons hatch from eggs."

[0017] The information processing device calculates the sentence vector of each sentence included in the sentences 10a, 10b, and other sentences. For example, the information processing device performs morphological analysis on the sentences to divide them into words, and calculates the sentence vector by integrating the vectors of each word.

[0018] Let the sentence vector of the sentence 10a, "Birds lay eggs." be "SV1-1." Let the sentence vector of the sentence, "Penguins are birds." be "SV1-2." Let the sentence vector of the sentence, "Therefore, penguins lay eggs." be "SV1-3."

[0019] Let the sentence vector of the sentence 10b, "Birds hatch from eggs," be "SV2-1." Let the sentence vector of the sentence, "Pigeons are a type of bird," be "SV2-2." Let the sentence vector of the sentence, "Therefore, pigeons hatch from eggs," be "SV2-3."

[0020] The information processing device repeatedly executes a process of inputting the vectors of the first sentence included in a sentence into the machine learning model 50 in order. For example, the information processing device inputs the sentence vectors to the machine learning model 50 in the order of sentence vectors "SV1-1", "SV1-2", ..., "SV1-3". The information processing device inputs the sentence vectors to the machine learning model 50 in the order of sentence vectors "SV2-1", "SV2-2", ..., "SV2-3".

[0021] By the information processing device executing the above-mentioned learning phase processing, a machine learning model 50 is generated that, when a sentence vector of a first sentence is input, predicts the sentence vector of a second sentence that follows the first sentence.

[0022] 2 is a diagram for explaining the processing of the analysis phase of the information processing device according to the present embodiment. In the analysis phase, the information processing device uses a trained machine learning model 50 to calculate sentence vectors included in the sentence to be processed, and detects inappropriate sentences based on cosine similarity or the like.

[0023] In the explanation of FIG. 2, the sentence to be processed that contains an input error or the like is referred to as sentence 20. Sentence 20 is composed of the sentences "Birds lay eggs," "Penguins take pictures," ..., and "Therefore, penguins lay eggs." The sentence "Penguins take pictures" is a sentence that contains an input error of the homonym "picture" of the word "bird" compared to the correct sentence "Penguins are birds" included in sentence 10a of training data 141.

[0024] The information processing device calculates the sentence vector "SV1-1" of the sentence "Birds lay eggs." and predicts the sentence vector of the sentence following the sentence "Birds lay eggs." by inputting the calculated sentence vector "SV1-1" into the machine learning model 50. In the example shown in FIG. 2, the machine learning model 50 predicts "SV1-2" as the sentence vector of the sentence following the sentence "Birds lay eggs."

[0025] The information processing device calculates the sentence vector "SV3" of the sentence "Penguin wa tora" which is included in the text 20 and is the next sentence of the sentence "Birds lay eggs."

[0026] The information processing device calculates the cosine similarity between the sentence vector “SV1-2” of the next sentence predicted by the machine learning model 50 and the sentence vector “SV3” of the sentence “Penguins are photographed,” which is included in the text 20 and is the next sentence of the sentence “Birds lay eggs.”

[0027] The information processing device determines that the sentence "Penguins are birds," which is included in sentence 10a and follows the sentence "Birds lay eggs," is a correct (hereinafter referred to as "appropriate") sentence when the cosine similarity is less than the threshold. On the other hand, the information processing device determines that the sentence "Penguins are photographed," which is included in sentence 20 and follows the sentence "Birds lay eggs," is an inappropriate sentence containing an input error or the like when the cosine similarity is less than the threshold.

[0028] As described above, the information processing device inputs the vectors of each sentence of the sentences included in the training data 141 into the machine learning model 50 in order, thereby generating a machine learning model 50 that, when the sentence vector of a first sentence is input, predicts the sentence vector of the second sentence that follows the first sentence. The information processing device inputs the sentence vectors of the sentences of the sentence to be processed into the generated machine learning model, predicts the sentence vector of the next sentence, and detects sentences with input errors from the sentence to be processed based on the predicted sentence vector. In other words, it is possible to detect sentences that contain input errors or the like and have inappropriate sentence vectors from each sentence included in the sentence to be processed.

[0029] In addition, if the information processing device determines in the processing of Figure 2 that the sentence "Penguins are photographs" is a sentence with an inappropriate sentence vector, it may search for a sentence with an appropriate sentence vector "Penguins are birds" from a DB (Data Base) or the like based on the sentence vector SV1-2 predicted by the machine learning model 50, and output it to the display device as a correct correction candidate (hereinafter referred to as "optimization").

[0030] Furthermore, the information processing device may calculate the word vectors of the multiple words "penguin," "ha," and "take." that make up the sentence "Penguin wa tora" (take a picture of a penguin) in which an inappropriate sentence vector was detected, using another machine learning model that has learned the order of word-based vectors, and correct input errors such as those for the deviating word "take."

[0031] Next, a description will be given of an example of the configuration of an information processing device that executes the processes described in Figures 1 and 2. Figure 3 is a functional block diagram showing the configuration of an information processing device according to this embodiment. As shown in Figure 3, the information processing device 100 has a communication unit 110, an input unit 120, a display unit 130, a storage unit 140, and a control unit 150.

[0032] The communication unit 110 is connected to an external device or the like via a wired or wireless connection, and transmits and receives information to and from the external device or the like. For example, the communication unit 110 is realized by a NIC (Network Interface Card) or the like. The communication unit 110 may be connected to a network (not shown).

[0033] The input unit 120 is an input device that inputs various types of information to the information processing device 100. The input unit 120 corresponds to a keyboard, a mouse, a touch panel, etc. For example, a user may operate the input unit 120 to input text data, etc.

[0034] Display unit 130 is a display device that displays information output from control unit 150. Display unit 130 corresponds to a liquid crystal display, an organic EL (Electro Luminescence) display, a touch panel, etc. For example, a sentence containing an input error is displayed on display unit 130.

[0035] The storage unit 140 includes a machine learning model 50, training data 141, and a word vector dictionary 142. The storage unit 140 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk or an optical disk.

[0036] The machine learning model 50 is a neural network such as BERT, Next Sentence Prediction, or Transformers, which are described in FIG. 1 .

[0037] The training data 141 is the training data 141 described in FIG. 1. The text included in the training data 141 includes multiple sentences. The multiple sentences have a predetermined relationship with the preceding and following sentences. Each sentence is a sentence that is set in advance based on an inductive or deductive syllogism, etc.

[0038] The word vector dictionary 142 is a table that defines codes and word vectors assigned to words. FIG. 4 is a diagram showing an example of the data structure of the word vector dictionary. As shown in FIG. 4, the word vector dictionary 142 has codes, words, and word vectors (1) to (7). A code is a code assigned to a word. A word is a word included in a character string. Word vectors (1) to (7) are vectors assigned to words. The n-th component of a word vector is represented as a word vector (n) (n=1 to 7).

[0039] The DB 143 includes various texts. The texts include multiple sentences, and each sentence includes multiple words. The DB 143 may include texts included in the training data 141.

[0040] The sentence transposition index 144 associates a sentence vector with a position pointer. The position pointer indicates the position in the DB 143 where the sentence corresponding to the sentence vector exists.

[0041] Returning to the explanation of Fig. 3, the control unit 150 has a preprocessing unit 151, a learning unit 152, and an analysis unit 153. The control unit 150 is realized by, for example, a central processing unit (CPU) or a micro processing unit (MPU). The control unit 150 may also be implemented by an integrated circuit such as, for example, an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).

[0042] The preprocessing unit 151 executes various preprocessing operations. For example, the preprocessing unit 151 acquires unprocessed sentences from the DB 143 and calculates sentence vectors of the sentences. The preprocessing unit 151 sets the relationship between the calculated sentence vectors and the position pointers of the sentences corresponding to the sentence vectors in the sentence transposition index 144.

[0043] An example of processing by the preprocessing unit 151 to calculate a sentence vector of a sentence will be described below. FIGS. 5A and 5B are diagrams for explaining the processing for calculating a sentence vector. Here, a case where the sentence vector of the sentence "Horses like carrots." is calculated will be described. The preprocessing unit 151 performs morphological analysis on the sentence "Horses like carrots." to break it down into multiple words. A "△ (space)" is added to each of the broken down words. For example, sentence 1 "Horses like carrots." is divided into "horse △", "is △", "carrot △", "ga △", "suki △", "desu △", and ". △".

[0044] The preprocessing unit 151 identifies a code corresponding to each word and replaces it with the word by comparing each divided word with the word vector dictionary 45. For example, the words "horse△", "is△", "carrot△", "ga△", "like△", "desu△", and ".△" are replaced with "C1", "C2", "C3", "C4", "C5", "C6", and "C7", respectively.

[0045] We now move on to the description of FIG. 5B. The preprocessing unit 151 identifies word vectors (1) to (7) assigned to the codes based on the word vector dictionary 45 and each code. For example, the word vectors (1) to (7) of the code "C1" are wv1-1 to 1-7. The word vectors (1) to (7) of the code "C2" are wv2-1 to 2-7. The word vectors (1) to (7) of the code "C3" are wv3-1 to 3-7.

[0046] The word vectors (1) to (7) of code "C4" are wv4-1 to 4-7. The word vectors (1) to (7) of code "C5" are wv5-1 to 5-7. The word vectors (1) to (7) of code "C6" are wv6-1 to 6-7. The word vectors (1) to (7) of code "C7" are wv7-1 to 7-7.

[0047] The preprocessing unit 151 calculates the sentence vector SV1 of the sentence by integrating the word vectors for each element. For example, the preprocessing unit 151 calculates the first component "SV1-1" of the sentence vector SV1 by integrating wv1-1 to 7-1, which become the respective word vectors (1). The preprocessing unit 151 calculates the second component "SV1-2" of the sentence vector SV1 by integrating wv1-2 to 7-2, which become the respective word vectors (2). The preprocessing unit 151 calculates the third component "SV1-3" of the sentence vector SV1 by integrating wv1-3 to 7-3, which become the respective word vectors (3).

[0048] The preprocessing unit 151 calculates the fourth component "SV1-4" of the sentence vector SV1 by integrating wv1-4 to 7-4, which become the respective word vectors (4). The preprocessing unit 151 calculates the fifth component "SV1-5" of the sentence vector SV1 by integrating wv1-5 to 7-5, which become the respective word vectors (5). The preprocessing unit 151 calculates the sixth component "SV1-6" of the sentence vector SV1 by integrating wv1-6 to 7-6, which become the respective word vectors (6). The preprocessing unit 151 calculates the seventh component "SV1-7" of the sentence vector SV1 by integrating wv1-7 to 7-7, which become the respective word vectors (7).

[0049] The preprocessing unit 151 repeatedly executes the above process for each sentence in the other documents included in the DB 143, thereby calculating the sentence vector for each sentence.

[0050] The preprocessing unit 151 generates the sentence transposition index 144 by associating the calculated sentence vector of each sentence with the position pointer of the DB 143. The preprocessing unit 151 may generate the sentence transposition index 144 having a data structure as shown in FIG. 6. FIG. 6 is a diagram for explaining the process of generating the sentence transposition index. As shown in FIG. 6, the preprocessing unit 151 may associate the sentence vector with a plurality of record pointers and a plurality of position pointers, and associate each record pointer and position pointer with each sentence of the DB 143.

[0051] Returning to the explanation of Fig. 3, the learning unit 152 executes the processing of the learning phase explained in Fig. 1 to generate a machine learning model 50 that, when a sentence vector of a first sentence is input, predicts the sentence vector of a second sentence that follows the first sentence.

[0052] For example, the learning unit 152 calculates a sentence vector for each sentence included in the text of the training data 141, and inputs the calculated sentence vectors in order to the machine learning model 50, thereby executing learning of the machine learning model 50. Other processes of the learning unit 152 are the same as the processes described in Fig. 1. The process by which the learning unit 152 calculates the sentence vector of a sentence is the same as the process by which the preprocessing unit 151 calculates the sentence vector of a sentence.

[0053] The analysis unit 153 executes the processing of the analysis phase described with reference to FIG. 2 to detect sentences with inappropriate sentence vectors from among the sentences included in the sentence to be processed.

[0054] For example, when the analysis unit 153 receives the sentence 20 to be processed, it calculates the sentence vector of the sentence included in the sentence 20. The analysis unit 153 identifies the sentence included in the sentence 20 based on the period "." included in the sentence 20. The process by which the analysis unit 153 calculates the sentence vector of a sentence is the same as the process by which the preprocessing unit 151 calculates the sentence vector of a sentence. The sentence vector of the nth sentence from the beginning of the sentence 20 is denoted as "SVn" (n=0 to M).

[0055] The analysis unit 153 inputs the sentence vector SVn into the trained machine learning model 50 to predict the sentence vector SVn+1' of the (n+1)th sentence from the beginning of the text 20. The analysis unit 153 calculates the cosine similarity between the sentence vector SVn+1' predicted using the machine learning model 50 and the sentence vector SVn+1.

[0056] If the cosine similarity between sentence vector SVn+1' and sentence vector SVn+1 is equal to or greater than a threshold, analysis unit 153 determines that the n+1-th sentence from the top is an appropriate sentence. On the other hand, if the cosine similarity between sentence vector SVn+1' and sentence vector SVn+1 is equal to or greater than a threshold, analysis unit 153 determines that the n+1-th sentence from the top is an inappropriate sentence.

[0057] When the analysis unit 153 determines that the sentence vector is an inappropriate sentence, it compares the sentence vector SVn+1' with the sentence transposition index 144 to identify the position pointer of the sentence corresponding to the sentence vector SVn+1'. The analysis unit 153 searches the DB 143 for the sentence corresponding to the sentence vector SVn+1' based on the position pointer. The analysis unit 153 associates the inappropriate sentence of the sentence vector with the searched sentence and displays them on the display unit 130.

[0058] The analysis unit 153 may compare the inappropriate sentence of the sentence vector with the searched sentence on a word-by-word basis, detect incorrectly input words from the inappropriate sentence of the sentence vector, and display the detected words.

[0059] Next, an example of a processing procedure of the information processing device 100 according to this embodiment will be described. Fig. 7 is a flowchart showing the processing procedure of the learning phase of the information processing device according to this embodiment. As shown in Fig. 7, the learning unit 152 of the information processing device 100 selects an unselected sentence from the training data 141 (step S101).

[0060] The learning unit 152 calculates the sentence vector of each sentence included in the selected sentence, and generates a sentence transposition index that associates the sentence vector with the DB record and the sentence position (step S102). The learning unit 152 executes learning by inputting the sentence vectors of the selected sentences to the machine learning model 50 in order from the first sentence (step S103).

[0061] If the learning unit 152 continues learning (step S104, Yes), the learning unit 152 proceeds to step S101. On the other hand, if the learning unit 152 does not continue learning (step S104, No), the learning unit 152 ends the processing of the learning phase.

[0062] 8 is a flowchart showing the processing procedure of the analysis phase of the information processing device according to this embodiment. As shown in Fig. 8, the analysis unit 153 of the information processing device 100 receives input of a sentence to be processed (step S201).

[0063] The analysis unit 153 calculates the sentence vector of each sentence included in the input text (step S202). The analysis unit 153 sets n to an initial value (step S203).

[0064] The analysis unit 153 inputs the sentence vector SVn of the n-th sentence among the multiple sentences included in the document to the machine learning model 50, and predicts the sentence vector SVn+1' of the n+1-th sentence (step S204).

[0065] The analysis unit 153 calculates the cosine similarity between the sentence vector SVn+1 of the (n+1)th sentence among the multiple sentences included in the document and the sentence vector SVn+1' of the predicted sentence (step S205).

[0066] If the cosine similarity is equal to or greater than the threshold value (Yes at step S206), the analysis unit 153 proceeds to step S210.

[0067] On the other hand, if the cosine similarity is not equal to or greater than the threshold (step S206, No), the analysis unit 153 detects the (n+1)th sentence as a sentence with an inappropriate sentence vector (step S207).The analysis unit 153 detects a sentence corresponding to the sentence vector SVn+1' from the DB 143 based on the predicted sentence vector SVn+1' and the sentence transposition index 144 (step S208).

[0068] The analysis unit 153 displays the sentence with the inappropriate sentence vector and the sentence detected from the DB 143 on the display unit 130 (step S209).

[0069] The processing from step S210 onwards will be described. If n is equal to or greater than L (step S210, Yes), analysis unit 153 ends the processing. L is the number of sentences included in the text to be processed. If n is not equal to or greater than L (step S210, No), analysis unit 153 updates n by adding 1 to the value n (step S211) and proceeds to step S204.

[0070] Next, the effects of the information processing device 100 according to this embodiment will be described. The information processing device 100 generates a machine learning model 50 that, when the sentence vector of a first sentence is input, predicts the sentence vector of a second sentence that follows the first sentence, by inputting the vector of each sentence in turn in the training data 141. The information processing device 100 inputs the sentence vector of a sentence of a processing target sentence into the generated machine learning model 50, predicts the sentence vector of the next sentence, and detects sentences with inappropriate sentence vectors from the processing target sentence based on the predicted sentence vector. Furthermore, it is possible to correct words such as input errors from the inappropriate sentence.

[0071] The information processing device 100 detects an inappropriate sentence in the sentence vector and corrects input errors, etc., based on the cosine similarity between the sentence vector of the next sentence predicted by the machine learning model 50 and the sentence vector of the sentence following the sentence included in the sentence to be processed. This makes it possible to detect an inappropriate sentence in the sentence vector and correct input errors, etc., while reducing calculation costs.

[0072] The information processing device 100 inputs vectors of multiple sentences, the order of which has been determined based on induction or deduction, into a machine learning model in order to train it, thereby making it possible to predict the next sentence of a target sentence based on induction or deduction.

[0073] When it is determined that the sentence is to be corrected, the information processing device 100 searches for the corrected sentence based on the vector predicted by the machine learning model 50. This makes it possible to notify the corrected sentence.

[0074] The above-described processing contents of the information processing device 100 are just an example, and the information processing device 100 may execute other processes. The other processes of the information processing device 100 will be described below.

[0075] 9 and 10 are diagrams for explaining other processing of the information processing device. The information processing device 100 described above has the machine learning model 50 learn the order of vectors of sentences based on a syllogism. However, instead of sentence vectors, the machine learning model 50 may learn the order of vectors of protein primary structures, which are protein sequences and comprise multiple amino acid sequences corresponding to words. In the following description, the consecutive amino acid sequence of a protein will be referred to as the "basic structure," and the protein primary structure will be referred to as the "primary structure."

[0076] 9 will be described. In the learning phase, the information processing device 100 executes learning of the machine learning model 50 using the sequences 20a and 20b of a plurality of proteins included in the training data 241.

[0077] For example, sequence 20a includes the primary structures "α primary structure," "β primary structure," ..., "γ primary structure." Sequence 20b includes the primary structures "Δ primary structure," "ε primary structure," ..., "ζ primary structure."

[0078] The information processing device 100 identifies the vector of each primary structure using a vector dictionary of protein basic structures that associates basic structures with vectors. For example, the vector of a primary structure "α primary structure" composed of multiple basic structures is "V20-1", the vector of a primary structure "β primary structure" is "V20-2", and the vector of a primary structure "γ primary structure" is "V20-3". The vector of a primary structure "Δ primary structure" is "V21-1", the vector of a primary structure "ε primary structure" is "V21-2", and the vector of a primary structure "ζ primary structure" is "V21-3". The vector of each primary structure is calculated based on the vectors of the multiple basic structures that make up that primary structure.

[0079] The information processing device 100 repeatedly executes a process of inputting vectors of the primary structure included in the protein sequence into the machine learning model 50 in order, starting from the first vector. For example, the information processing device inputs vectors into the machine learning model 50 in the order of vectors "V20-1", "V20-2", ..., "V20-3". The information processing device inputs vectors into the machine learning model 50 in the order of vectors "V21-1", "V21-2", ..., "V21-3".

[0080] By the information processing device 100 executing the above-mentioned learning phase processing, a machine learning model 50 is generated that, when a vector of a primary structure is input, predicts the vector of the primary structure next to the given primary structure.

[0081] Referring to Fig. 10, in the analysis phase, the sequence of the protein to be processed is defined as sequence 25. Sequence 25 includes, from the beginning, the primary structures "α primary structure", "η primary structure", ..., "γ primary structure".

[0082] The information processing device 100 calculates a vector "V20-1" of the primary structure "α primary structure" and predicts the vector of the primary structure next to the primary structure "α primary structure" by inputting the calculated vector "V20-1" into the machine learning model 50. In the example shown in FIG. 10, the machine learning model 50 predicts "V20-2" as the vector of the primary structure next to the primary structure "α primary structure".

[0083] The information processing device 100 calculates a vector "V22" of the "η primary structure" which is a primary structure included in the sequence 25 and which is next to the primary structure "α primary structure".

[0084] The information processing device 100 calculates the cosine similarity between the vector "V20-2" of the next primary structure predicted by the machine learning model 50 and the vector "V22" of the "η primary structure" which is the primary structure contained in the sequence 25 and is the next of the basic structure "α primary structure."

[0085] If the cosine similarity is equal to or greater than the threshold, the information processing device determines that the "η primary structure" next to the primary structure "α primary structure" contained in sequence 25 is the correct primary structure. On the other hand, if the cosine similarity is less than the threshold, the information processing device determines that the "η primary structure" next to the primary structure "α primary structure" contained in sequence 25 is an incorrect primary structure, and optimizes mutations, etc., of the basic structure contained in the primary structure "η primary structure."

[0086] By executing the processes shown in Figures 9 and 10, the information processing device 100 can detect primary structures with inappropriate primary structure vectors from multiple primary structures contained in a protein sequence and optimize basic structures with mutations, etc. This makes it possible to detect protein primary structures with mutations, etc. (SNPs are a typical example) that have occurred in receptors composed of multiple primary protein structures. Furthermore, by machine learning the binding order of the multiple primary protein structures that make up the receptor and the single or multiple primary protein structures that bind to the receptor, it is possible to predict the protein primary structure vector of a ligand that binds to the receptor. This can support the improvement of ligands with new primary protein structure vectors that are similar to ligands already commercialized as biopharmaceuticals, have excellent efficacy, and suppress side reactions.

[0087] Next, an example of the hardware configuration of a computer that realizes the same functions as the information processing device 100 described in the above embodiment will be described. Fig. 11 is a diagram showing an example of the hardware configuration of a computer that realizes the same functions as the information processing device of the embodiment.

[0088] 11, computer 300 includes CPU 301 for executing various types of arithmetic processing, input device 302 for receiving data input from a user, and display 303. Computer 300 also includes communication device 304 for transmitting and receiving data to and from external devices via a wired or wireless network, and interface device 305. Computer 300 also includes RAM 306 for temporarily storing various types of information, and hard disk drive 307. Devices 301 to 307 are connected to bus 308.

[0089] The hard disk drive 307 stores a preprocessing program 307a, a learning program 307b, and an analysis program 307c. The CPU 301 reads out each of the programs 307a to 307c and loads them into the RAM 306.

[0090] The pre-processing program 307a functions as the pre-processing process 306a, the learning program 307b functions as the learning process 306b, and the analysis program 307c functions as the analysis process 306c.

[0091] The processing of the preprocessing process 306a corresponds to the processing of the preprocessing unit 151. The processing of the learning process 306b corresponds to the processing of the learning unit 152. The processing of the analysis process 306c corresponds to the processing of the analysis unit 153.

[0092] It should be noted that each of the programs 307a to 307c does not necessarily have to be stored in the hard disk drive 307 from the beginning. For example, each of the programs may be stored in a "portable physical medium" such as a flexible disk (FD), CD-ROM, DVD, magneto-optical disk, or IC card that is inserted into the computer 300. Then, the computer 300 may read and execute each of the programs 307a to 307c. [Explanation of symbols]

[0093] 50 Machine Learning Models 100 Information processing device 110 Communications Department 120 Input section 130 Display section 140 Storage section 141 Teacher Data 142 word vector dictionary 143 DB 144 Sentence Transposition Index 150 control section 151 Pretreatment section 152 Learning Department 153 Analysis Department

Claims

1. calculating vectors for each of a plurality of consecutive sentences that have a relationship with the preceding and following sentences; The vectors of the plurality of sentences are input to a machine learning model in order to train the model, thereby generating the machine learning model that, when a vector of a sentence is input to the machine learning model, predicts the sentence vector of a sentence that will be input after the given sentence; calculating a vector of a first sentence and a vector of a second sentence following said first sentence; Whether or not the vector of the second sentence is appropriate is determined based on the cosine similarity between a vector predicted by inputting the vector of the first sentence into the machine learning model and the vector of the second sentence. An information processing program that causes a computer to execute a process.

2. The information processing program according to claim 1, characterized in that the consecutive sentences are sentences whose order is determined based on induction or deduction, and the process of generating the machine learning model involves inputting vectors of the sentences whose order is determined based on induction or deduction into the machine learning model in order to train it.

3. The information processing program according to claim 1, further comprising causing a computer to execute a process of recommending an appropriate sentence based on the calculated vector of the sentence predicted to follow the first sentence, in order to calculate the vector of the sentence predicted to follow the first sentence by inputting the vector of the first sentence into the machine learning model when the vector of the second sentence is determined to be inappropriate, search for sentences similar to the calculated vector, and present them as candidates for appropriate sentences.

4. calculating vectors for each of a plurality of consecutive sentences that have a relationship with the preceding and following sentences; The vectors of the plurality of sentences are input to a machine learning model in order to train the model, thereby generating the machine learning model that, when a vector of a sentence is input to the machine learning model, predicts the sentence vector of a sentence that will be input after the given sentence; calculating a vector of a first sentence and a vector of a second sentence following said first sentence; Whether or not the vector of the second sentence is appropriate is determined based on the cosine similarity between a vector predicted by inputting the vector of the first sentence into the machine learning model and the vector of the second sentence. An information processing method characterized in that the processing is executed by a computer.

5. calculating vectors for each of a plurality of consecutive sentences that have a relationship with the preceding and following sentences; The vectors of the plurality of sentences are input to a machine learning model in order to train the model, thereby generating the machine learning model that, when a vector of a sentence is input to the machine learning model, predicts the sentence vector of a sentence that will be input after the given sentence; calculating a vector of a first sentence and a vector of a second sentence following said first sentence; Whether or not the vector of the second sentence is appropriate is determined based on the cosine similarity between a vector predicted by inputting the vector of the first sentence into the machine learning model and the vector of the second sentence. An information processing device comprising a control unit that executes processing.

Citation Information

Patent Citations

  • Text coherence judgment and model training method, electronic equipment and readable medium

    CN111428470A

  • Text error correction method and device, terminal and storage medium

    CN111539199A

  • Device for performing industrial Internet discovery and extracting information by improving transfer learning model

    CN112256840A

  • Calibration support device, calibration support method and calibration support program

    JP2019016140A

  • Specification program, specification method and information processing device

    JP2019101993A