Information processing program, information processing method, and information processing device
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-02-05
- Publication Date
- 2026-08-13
Smart Images

Figure JP2025003832_13082026_PF_FP_ABST
Abstract
Description
Information processing program, information processing method, and information processing device.
[0001] This invention relates to an information processing program, an information processing method, and an information processing apparatus.
[0002] In recent years, predicting complex structures using deep learning has become a reality. For example, large-scale, pre-trained models with high expressive power, such as AlphaFold2, which predicts the three-dimensional structure of proteins, are known. Furthermore, there are cases where it is desirable to output a new structure with desired properties based on a known structure.
[0003] Prior art includes, for example, a method that extracts each of the predictive feature vectors from a cyclic peptide whose in vivo persistence is to be predicted, and then inputs multiple predictive feature vectors into a trained model to generate a predicted value for the in vivo persistence of the cyclic peptide. Another technique involves generating predictive information about the in vivo dynamics of a peptide in response to a request signal transmitted from a terminal, and then transmitting this predictive information to the terminal.
[0004] Furthermore, there is a technique to generate virtual sequence information by mutating at least one of the constituent units that make up the sequence represented by the sequence information input to the trained model, based on the trained model. There is also a technique to select centroids of each class in the neighborhood of the feature vector of the input sample, and calculate the prediction score of the candidate class to which the selected centroids belong by assigning weights according to the distance between the feature vector of the input sample and the selected centroids. In addition, there is a technique to perform transfer learning using a given dataset and a pre-trained model, training using the parameters of the pre-trained model, and outputting a trained model.
[0005] Japanese Patent Publication No. 2022-135688, Japanese Patent Publication No. 2022-137148, International Publication No. 2020 / 246617, Japanese Patent Publication No. 2023-011313, Japanese Patent Publication No. 2022-178892
[0006] For example, one might consider performing some operation on an intermediate representation of a machine learning model and generating a new structure from the manipulated intermediate representation. However, conventional techniques have a problem in that, as a result of manipulating the intermediate representation of a machine learning model, the manipulated intermediate representation deviates from the data distribution on which the machine learning model was trained, resulting in a decrease in the quality of the predicted new structure.
[0007] In one aspect, the present invention aims to enable the output of a new structure that suppresses deviation from the training range of a machine learning model.
[0008] In one embodiment, an information processing program is provided that generates a second input data in the same format as the first input data based on a first intermediate representation obtained by applying a predetermined editing operation to the intermediate representation when the first input data is input to a trained machine learning model that has access to the intermediate representation, and inputs the generated second input data to the machine learning model.
[0009] According to one aspect of the present invention, it is possible to achieve the effect of enabling the output of a new structure that suppresses deviation from the training range of the machine learning model.
[0010] Figure 1 is an explanatory diagram showing one embodiment of the information processing method according to the embodiment. Figure 2 is an explanatory diagram showing an example of the system configuration of the information processing system 200. Figure 3 is a block diagram showing an example of the hardware configuration of the structure prediction device 201. Figure 4 is a block diagram showing an example of the functional configuration of the structure prediction device 201. Figure 5 is an explanatory diagram showing an example of the operation of the structure prediction device 201. Figure 6 is an explanatory diagram showing an example of training of module ml. Figure 7 is a flowchart showing an example of the structure prediction processing procedure of the structure prediction device 201. Figure 8 is an explanatory diagram showing Embodiment 1 of the structure prediction device 201. Figure 9 is an explanatory diagram showing how the intermediate representation is pulled back into the training range region.
[0011] Embodiments of the information processing program, information processing method, and information processing apparatus according to the present invention will be described in detail below with reference to the drawings.
[0012] (Embodiment) Figure 1 is an explanatory diagram showing one embodiment of the information processing method according to the embodiment. In Figure 1, the information processing device 100 is a computer that can access the intermediate representation of the trained model 110. Here, the trained model 110 is a machine learning model (a trained machine learning model) that has been trained by machine learning such as deep learning.
[0013] The trained model 110 is, for example, information that combines an algorithm and trained parameters (weight parameters). The trained model 110 derives results (output data) by applying the trained parameters to the input data. The trained model 110, for example, converts the input data into an intermediate representation and generates output data from the converted intermediate representation. The intermediate representation is information from which features have been extracted from the input data.
[0014] The trained models 110 include, for example, AlphaFold2 and Transformer models. AlphaFold2 takes amino acid sequence information as input data and outputs output data representing the structure (three-dimensional structure) of a protein. The Transformer model takes sequence information representing a sentence as input data and outputs sequence information representing another sentence as output data.
[0015] For more information on AlphaFold2, see Non-Patent Document 1 below, for example. For more information on the Transformer model, see Non-Patent Document 2 below, for example.
[0016] Non-patent document 1: John Jumper, Richard Evans, Alexander Pritzel, Tim Green, Michael Figurnov, Olaf Ronneberger, et al. Highly accurate protein structure prediction with AlphaFold. Nature. 596, 583-589 (2021)
[0017] Non-patent document 2: Brown et al. Language Models are Few-Shot Learners (NeurIPS 2020)
[0018] There are times when we want to use such trained models to output a new structure with desired properties based on a known structure. For example, we might want to output a child-friendly version of a text A written for experts. Or, we might want to predict a structural polymorphism B based on a known protein structure A, even if it's the same sequence.
[0019] In this case, some operation is performed on the intermediate representation of the machine learning model to generate a new structure from the manipulated intermediate representation. For example, one could use AlphaFold2 to manipulate the intermediate representation by backpropagation based on a loss function corresponding to the desired properties. By processing the manipulated intermediate representation again with the network structure prediction module, a new structure with the desired properties is output.
[0020] However, with conventional techniques, manipulating the intermediate representation can result in the manipulated intermediate representation deviating from the knowledge of the trained model (the data distribution on which the machine learning model was trained), leading to the generation of low-quality structures (prediction results).
[0021] For example, a well-trained model can make high-quality structural predictions for regions with abundant training data. However, manipulation of intermediate representations is performed without regard to the training range of the machine learning model. As a result, if the manipulated intermediate representation moves beyond the training range to a region with sparse training data, the prediction quality deteriorates because there is insufficient corresponding training data. For example, when predicting the structure of a protein, the composition ratio of the secondary structures of the original structure may be disrupted by manipulating the intermediate representation.
[0022] Therefore, in this embodiment, we will describe an information processing method that enables the output of a new structure while suppressing deviation from the training range of the machine learning model, by using a self-referential mechanism of a sufficiently trained machine learning model to process the intermediate representation after an operation, which has been manipulated with the aim of giving the predicted structure desired properties, again. Here, we will describe an example of processing by the information processing device 100.
[0023] (1) The information processing device 100 obtains a first intermediate representation z1' by applying a predetermined editing operation (corresponding to editing 150 in Figure 1) to the intermediate representation z1 when the first input data x1 is input to the trained model 110. Here, the trained model 110 is a trained machine learning model that can access intermediate representations. The trained model 110 includes, for example, an encoder 120 and a decoder 130.
[0024] The encoder 120 converts the input data input to the trained model 110 into an intermediate representation. The decoder 130 generates output data corresponding to the input data based on the intermediate representation. For example, if the trained model 110 is "AlphaFold2", the encoder 120 corresponds to Evoformer. The decoder 130 corresponds to Structure module. The intermediate representation z1 is obtained by the encoder 120 converting the first input data x1 input to the trained model 110.
[0025] The type of editing operation performed as a predetermined editing operation (edit 150) can be arbitrarily set. For example, the predetermined editing operation may be an operation performed for the purpose of outputting a new structure (output data) having a specific property. The specific property may be, for example, a property desired by the user. Alternatively, the predetermined editing operation may modify the intermediate representation by adding or multiplying it by a predetermined small value.
[0026] (2) The information processing device 100 generates second input data x2 in the same format as the first input data x1 based on the acquired first intermediate representation z1'. Data in the same format means, for example, if the first input data x1 is represented by a vector (or tensor), then vector data (or tensor data) of the same size as the first input data x1.
[0027] Specifically, for example, the information processing device 100 applies the first intermediate representation z1' to the module 140 to generate second input data x2 in the same format as the first input data x1. Module 140 is a module capable of outputting different data in the same format as input data (for example, first input data x1). Module 140 may also be a function that takes the first intermediate representation z1' as a variable.
[0028] Module 140 is included, for example, in the trained model 110. If the trained model 110 is "AlphaFold2", then the Recycling (self-referencing mechanism) in AlphaFold2 can be used as module 140. Alternatively, module 140 may be trained separately from the trained model 110.
[0029] The information processing device 100 may also generate second input data x2 by applying the first input data x1 and output data y1' along with the first intermediate representation z1' to the module 140. The output data y1' is generated by the decoder 130 based on the first intermediate representation z1'. This allows the information processing device 100 to generate second input data x2 by considering not only the first intermediate representation z1' but also the properties of the first input data x1 and output data y1'.
[0030] (3) The information processing device 100 inputs the generated second input data x2 to the trained model 110. Specifically, for example, the information processing device 100 may generate output data y2 corresponding to the second input data x2 by inputting the second input data x2 to the trained model 110.
[0031] To explain in more detail, for example, the information processing device 100 converts the second input data x2 into an intermediate representation z2 using the encoder 120. Then, the information processing device 100 generates output data y2 based on the converted intermediate representation z2 using the decoder 130. The information processing device 100 may output the generated output data y2 as a predicted new structure (prediction result).
[0032] Thus, the information processing device 100 enables the output of a new structure that suppresses deviation from the training range of the trained model 110. For example, if the trained model 110 is sufficiently trained and has achieved generalization performance, the output of the encoder 120 (intermediate representation) tends to fall within a range that does not significantly deviate from the training range of the trained model 110. Therefore, the information processing device 100 generates new input data (second input data x2) from the intermediate representation after editing (first intermediate representation z1') and processes it with the encoder 120 and decoder 130. This allows the intermediate representation to be brought back to a region within the training range where there is sufficient data, even if it deviates from the training range due to the editing operation. Furthermore, by performing a predetermined editing operation, for example, to output a new structure (output data) with desired properties, the information processing device 100 enables the output of a new structure that has the desired properties while suppressing deviation from the training range of the trained model 110.
[0033] (Example of System Configuration of Information Processing System 200) Next, an example of the system configuration of the information processing system 200, including the information processing device 100 shown in Figure 1, will be described. Here, the example will be given of the case in which the information processing device 100 shown in Figure 1 is applied to the structure prediction device 201 within the information processing system 200.
[0034] Figure 2 is an explanatory diagram showing an example of the system configuration of the information processing system 200. In Figure 2, the information processing system 200 includes a structure prediction device 201 and a client device 202. In the information processing system 200, the structure prediction device 201 and the client device 202 are connected via a wired or wireless network 210. The network 210 is, for example, the Internet, a LAN (Local Area Network), or a WAN (Wide Area Network).
[0035] Here, the structure prediction device 201 is a computer that can access the trained model TM. The trained model TM is a trained machine learning model that can access an intermediate representation. The trained model TM is, for example, a Transformer model or AlphaFold2. The structure prediction device 201 is, for example, a server. The trained model 110 shown in Figure 1 corresponds to, for example, the trained model TM.
[0036] The client device 202 is a computer used by the user of the information processing system 200. The user is, for example, someone who predicts the structure of a protein from an amino acid sequence or generates other sentences from a given sentence. The client device 202 can be, for example, a PC (Personal Computer), a tablet PC, or a smartphone.
[0037] In this example, the structural prediction device 201 and the client device 202 are provided as separate components, but this is not the only option. For example, the structural prediction device 201 may be implemented by the client device 202. The information processing system 200 may also include multiple client devices 202. Furthermore, the information processing system 200 may include a management device used by the administrator of the information processing system 200.
[0038] (Example of hardware configuration of structural prediction device 201) Next, an example of the hardware configuration of the structural prediction device 201 will be described.
[0039] Figure 3 is a block diagram showing an example of the hardware configuration of the structural prediction device 201. In Figure 3, the structural prediction device 201 includes a CPU (Central Processing Unit) 301, memory 302, disk drive 303, disk 304, communication interface 305, graphics processing unit 306, portable recording medium interface 307, and portable recording medium 308. Each component is connected by a bus 300.
[0040] Here, the CPU 301 controls the entire structure prediction device 201. The GPU 306 performs computational processing such as image processing and natural language processing. The CPU 301 and GPU 306 may have multiple cores. The memory 302 includes, for example, ROM (Read Only Memory) and RAM (Random Access Memory). The program stored in the memory 302 is loaded into the CPU 301, causing the CPU 301 to execute the coded processing.
[0041] The disk drive 303 controls the reading and writing of data to the disk 304 according to the control of the CPU 301. The disk 304 stores the data written under the control of the disk drive 303. The disk 304 is, for example, a magnetic disk, an optical disk, etc.
[0042] The communication interface 305 is connected to the network 210 via a communication line, and through the network 210, it is connected to an external computer (for example, the client device 202 shown in Figure 2). The communication interface 305 manages the interface between the network 210 and the inside of the device, and controls the input and output of data from the external computer. The communication interface 305 is, for example, a modem or a LAN adapter.
[0043] The portable recording medium interface 307 controls the reading and writing of data to the portable recording medium 308 according to the control of the CPU 301. The portable recording medium 308 stores the data written under the control of the portable recording medium interface 307. The portable recording medium 308 is, for example, a CD (Compact Disc)-ROM, a DVD (Digital Versatile Disc), or a USB (Universal Serial Bus) memory.
[0044] In addition to the components described above, the structure prediction device 201 may also have, for example, an input device, a display, a printer, a scanner, a microphone, a speaker, and so on. Furthermore, the structure prediction device 201 may not have, for example, the GPU 306, the portable recording medium I / F 307, and the portable recording medium 308 among the components described above.
[0045] (Example of Hardware Configuration of Client Device 202) The example of the hardware configuration of client device 202 is specifically the same as the example of the hardware configuration of the structural prediction device 201 shown in Figure 3, so the explanation is omitted. However, in addition to the components shown in Figure 3, client device 202 has, for example, an input device, a display, etc.
[0046] (Example of functional configuration of the structural prediction device 201) Next, an example of the functional configuration of the structural prediction device 201 will be explained using Figure 4.
[0047] Figure 4 is a block diagram showing an example of the functional configuration of the structure prediction device 201. In Figure 4, the structure prediction device 201 includes an acquisition unit 401, an operation unit 402, an input generation unit 403, an output generation unit 404, an output unit 405, and a storage unit 410. The acquisition unit 401 to the output unit 405 function as a control unit 400, and specifically, this function is realized by having the CPU 301 execute a program stored in a storage device such as the memory 302, disk 304, or portable recording medium 308 shown in Figure 3, or by using a communication interface 305 or GPU 306. The processing results of each functional unit are stored in a storage device such as the memory 302 or disk 304.
[0048] The storage unit 410 is implemented by a storage device such as a memory 302 or a disk 304. Here, we will describe the case in which the storage unit 410 is included in the structure prediction device 201, but it is not limited to this. For example, the storage unit 410 may be included in an external device different from the structure prediction device 201, and the contents of the storage unit 410 may be accessible from the structure prediction device 201 via the network 210. The storage unit 410 stores various types of information that are referenced or updated in the processing of each functional unit.
[0049] Specifically, for example, the memory unit 410 stores a trained model TM. The trained model TM includes an encoder EC and a decoder DC. Here, the first half is called the encoder EC and the second half is called the decoder DC, with the intermediate representation that is the target of the editing operation as the dividing line. The encoder EC converts the input data input to the trained model TM into an intermediate representation, for example.
[0050] The decoder DC generates output data corresponding to the input data by referencing an intermediate representation from, for example, the encoder EC. For example, if the trained model TM is "AlphaFold2", the encoder EC corresponds to Evoformer, and the decoder DC corresponds to Structure module.
[0051] The acquisition unit 401 acquires first input data x for the trained model TM. Here, the first input data x is, for example, amino acid sequence information or text sequence information. Amino acid sequence information is sequence information that represents the order in which amino acids that make up a protein are arranged. Text sequence information is sequence information that represents a sentence. For amino acid sequence information, for example, refer to Non-Patent Document 1.
[0052] As an example, suppose the trained model TM is "AlphaFold2". In this case, the first input data x is, for example, MSA representation(s c ,r,c m ) and Pair representation (r, r, c z ) may also be (see, for example, Supply Figure 1 of Non-Patent Document 1). However, sc is the number of MSA sequences. r is the number of residues. c m c is the dimension of the MSA representation feature space. z is the dimension of the pair representation feature space.
[0053] Furthermore, let's assume that the trained model TM is a "Transformer model". In this case, the first input data x may be information that has undergone preprocessing such as tokenization, for example, sequence information showing a sequence of token IDs representing a sentence. A token corresponds to a sentence (text) divided into units such as words, subwords, or symbols. A token ID is an identifier that identifies a token.
[0054] Specifically, for example, the acquisition unit 401 acquires the first input data x by receiving it from the client device 202 shown in Figure 2. Alternatively, the acquisition unit 401 may acquire the first input data x through user operation input using an input device (not shown).
[0055] The operation unit 402 obtains a first intermediate representation z'0 by applying a predetermined editing operation to the intermediate representation z when the acquired first input data x is input to the trained model TM. Here, the intermediate representation z is obtained by transforming the first input data x input to the trained model TM using the encoder EC.
[0056] If the trained model TM is "AlphaFold2", the intermediate representation z is, for example, information in the same format as the first input data x. Specifically, for example, the intermediate representation z may be information (z^, s^) output from the Evoformer (encoder EC) (see, for example, Algorithm 2 AlphaFold Model Inference in Non-Patent Literature 1). However, s^ (single representation) is obtained by applying a linear transformation to the first line m1^ of the MSA representation (r, c s It is a matrix of dimension )
[0057] Furthermore, the intermediate representation z may be the first input data x to the Evoformer (encoder EC) (x = z). Alternatively, the intermediate representation z may be obtained by applying the Evoformer block n times (1 ≤ n48) to the first input data x in the intermediate layer of the Evoformer (encoder EC) (see, for example, 1.6 Evoformer blocks in Non-Patent Document 1).
[0058] Furthermore, if the trained model TM is a "Transformer model," the intermediate representation z may be, for example, a vector sequence in which vectors corresponding to each token ID are arranged for the length of the sequence (number of token IDs). Each vector corresponding to each token ID is a d-dimensional vector.
[0059] In the following explanation, unless otherwise specified, "AlphaFold2" will be used as an example of a pre-trained model TM.
[0060] A predetermined editing operation is, for example, an operation performed with the aim of outputting a new structure (output data) that has desired properties. The type of editing operation performed as the predetermined editing operation can be arbitrarily set. If the trained model TM is "AlphaFold2", the predetermined editing operation may be, for example, an operation that approaches the electron density distribution corresponding to the target structure of the target protein.
[0061] Specifically, for example, the operation unit 402 converts the protein structure (predicted result) represented by the output data y generated by the decoder DC (Structure module) based on the intermediate representation z into a three-dimensional density map that limits the said structure in a differentiable form. Then, the operation unit 402 calculates the difference between the three-dimensional density map corresponding to the predicted structure and the measured three-dimensional density map.
[0062] The measured three-dimensional density map is, for example, an EM (Electron Microscope) image acquired by an electron microscope such as a cryo-electron microscope, and is an EM image that defines the atomic structure of the protein. However, the measured three-dimensional density map is not limited to this; any shape of voxel data is acceptable.
[0063] Next, the operation unit 402 calculates the backpropagation of the difference and calculates an intermediate representation (intermediate feature) that minimizes the difference. Then, the operation unit 402 sets the calculated intermediate representation (intermediate feature) as the first intermediate representation z0'. In this way, the operation unit 402 manipulates the intermediate representation z so that a structure with the desired properties is output by changing the intermediate representation z so that the difference between the 3D density map corresponding to the predicted structure and the measured 3D density map becomes small.
[0064] The input generation unit 403 generates second input data x'1 in the same format as the first input data x, based on the acquired first intermediate representation z'0. Examples of data formats include vector format and tensor format. "Same format" means, for example, that the data is in the same format and of the same size.
[0065] Specifically, for example, the input generation unit 403 uses module ml to generate second input data x'1 in the same format as the first input data x, based on the first intermediate representation z'0. Here, module ml is capable of outputting different data in the same format as the input data. Module ml is included, for example, in the trained model TM.
[0066] If the trained model TM is "AlphaFold2", module ml may be a recycling (self-referencing mechanism) included in the trained model TM. However, module ml may be provided separately from the trained model TM and trained independently of the trained model TM. An example of module ml training will be described later using Figure 6.
[0067] More specifically, module ml may be a function whose variables are the first input data x, the first intermediate representation z'0, and the output data y'0 generated by the trained model TM (decoder DC) based on the first intermediate representation z'0. In this case, the input generation unit 403 uses module ml to generate the second input data x'1 based on the first input data x, the first intermediate representation z'0, and the output data y'0.
[0068] The output generation unit 404 generates new output data by inputting the generated second input data x'1 into the trained model TM. Here, the new output data is different from the output data y corresponding to the first input data x. Note that the output data y is the output data generated based on the intermediate representation z by the decoder DC.
[0069] Specifically, for example, the output generation unit 404 may generate output data y'1 corresponding to the second input data x'1 by inputting the second input data x'1 into the trained model TM. In this case, the output data y'1 becomes the new output data.
[0070] Further, the input generation unit 403 may repeatedly generate new input data (second input data) until a predetermined end condition is satisfied.
[0071] In the following description, the first input data x may be denoted as "input data x", and the second input data may be denoted as "input data x' t+1 ". Also, the intermediate representation when the input data x' t+1 is input into the trained model TM may be denoted as "intermediate representation z' t+1 ", and the output data corresponding to the input data x' t+1 may be denoted as "output data y' t+1 ". However, t is an integer with an initial value of 0 that increases by 1 each time new input data is generated. The input data x'0 corresponds to the first input data x.
[0072] Specifically, for example, the input generation unit 403 determines whether a predetermined end condition is satisfied as a result of the generation of the output data y' t+1 . The predetermined end condition can be arbitrarily set. For example, the input generation unit 403 may determine that the end condition is satisfied when the generation of new input data is repeated a certain number of times N. The certain number of times N can be arbitrarily set.
[0073] Further, the input generation unit 403 is the generated output data y' t+1An evaluation value may be calculated for this, and based on the calculated evaluation value, it may be determined whether or not the termination condition is met. More specifically, for example, the input generation unit 403 generates the output data y' t+1 The composition ratio of the protein's secondary structure is calculated. This can be calculated, for example, using the DSSP algorithm (hydrogen bond estimation algorithm).
[0074] Next, the input generation unit 403 refers to the calculated secondary structure composition ratio and compares the ratio of a specific secondary structure with the original output data y (output data y corresponding to the first input data x). Examples of specific secondary structures include α-helices and β-strands. The composition ratio of the protein's secondary structure is also calculated for the original output data y.
[0075] Here, a specific secondary structure is defined as an "α-helix," and the output data y' t+1 The ratio of the alpha helix for this is "dsspα -helix (y' t+1 ) and the ratio of the α helix for the original output data y is set to "dsspα -helix Let's call it (y).
[0076] In this case, the input generation unit 403 is (dsspα -helix (y' t+1 ) / dsspα -helix (y)) is the same as (dsspα) from the previous step. -helix (y' t ) / dsspα -helix You may also determine whether there has been an improvement of a predetermined value p or more compared to (y). (dsspα -helix (y' t+1 ) / dsspα -helix (y) is an example of an evaluation value.
[0077] The previous step involved the previous input data x' t Corresponding output data y′ tThis corresponds to a specific secondary structure ratio. The predetermined value p can be set arbitrarily. The input generation unit 403 determines that the termination condition is not met if the improvement is greater than or equal to the predetermined value p. The input generation unit 403 also determines that the termination condition is met if the improvement is not greater than or equal to the predetermined value p.
[0078] This allows the input generation unit 403 to repeatedly generate new input data (second input data) so that the ratio of a specific secondary structure does not deviate significantly from the original structure (output data y).
[0079] Furthermore, the input generation unit 403 generates output data y' t+1 As an evaluation value for this, Structural Violation may be calculated. Structural Violation is an index of structural violations based on physical constraints (see, for example, 1.9.11 of Non-Patent Document 1).
[0080] In this case, the input generation unit 403 determines that the termination condition is not met if the Structural Violation has improved by a predetermined value v or more. Conversely, the input generation unit 403 determines that the termination condition is met if the Structural Violation has not improved by a predetermined value v or more. The predetermined value v can be set arbitrarily.
[0081] This allows the input generation unit 403 to repeatedly generate new input data (second input data) in a way that avoids structural violations due to physical constraints.
[0082] Furthermore, the input generation unit 403 generates output data y' t+1 As an evaluation value for this, pLDDT (predicted Local Distance Difference Test) may be calculated. pLDDT is calculated using the output data y' t+1 This is an index that represents the degree of confidence in the estimated output structure (see, for example, 1.9.6 of Non-Patent Document 1).
[0083] In this case, the input generation unit 403 determines that the termination condition is not met if pLDDT has improved by a predetermined value c or more. Conversely, the input generation unit 403 determines that the termination condition is met if pLDDT has not improved by a predetermined value c or more. The predetermined value c can be set arbitrarily.
[0084] As a result, the input generation unit 403 can repeatedly generate new input data (second input data) so that the confidence level of the output structure estimated by the trained model TM increases.
[0085] If the termination condition is not met, the input generation unit 403 outputs input data x' to the trained model TM. t+1 Intermediate representation z' when input t+1 Based on the input data x' t+1 It generates different input data in the same format. Specifically, for example, the input generation unit 403 uses module ml to generate the intermediate representation z' t+1 and output data y' t+1 Based on at least one of the following, input data x' t+1 It is also possible to generate different input data in the same format. Output data y' t+1 is the input data x' t+1 This is the output data corresponding to the intermediate representation z' by the decoder DC. t+1 It is generated based on this.
[0086] To explain in more detail, for example, the input generation unit 403 uses module ml to generate the input data x' t+1 , intermediate expression z' t+1 and output data y' t+1 Based on the input data x' t+1 It is also possible to generate different input data in the same format. As a result, the input generation unit 403 generates input data x' t+1 , intermediate expression z' t+1 and output data y' t+1 By taking their respective properties into consideration, new input data can be generated.
[0087] Then, the output generation unit 404 outputs the different input data to input data x'. t+1(Second input data) is the input data x'. t+1 By inputting this into the trained model TM, the input data x' t+1 Corresponding output data y′ t+1 The input generation unit 403 generates, for example, new input data (input data x'). t+1 The series of processes that generate the specified output are repeatedly executed until a predetermined termination condition is met.
[0088] Furthermore, the operation unit 402 inputs input data x' to the trained model TM. t+1 Intermediate representation z' when (second input data) is input t+1 A second intermediate representation may be obtained by applying a predetermined editing operation. The predetermined editing operation is the same as the editing operation on the intermediate representation z described above, and is, for example, an operation that brings it closer to the electron density distribution corresponding to the target structure of the target protein.
[0089] In this case, the input generation unit 403 generates the input data x' based on the acquired second intermediate representation. t+1 It generates different input data (third input data) in the same format as the first input data. The output generation unit 404 then outputs the generated input data (third input data) to input data x'. t+1 (Second input data) is the input data x'. t+1 By inputting this into the trained model TM, the input data x' t+1 Generates corresponding output data.
[0090] The structure prediction device 201 acquires a second intermediate representation via the operation unit 402, generates input data (third input data) based on the second intermediate representation via the input generation unit 403, and outputs the generated input data (third input data) to input data x' via the output generation unit 404. t+1 (Second input data) is input data x' t+1 The process of generating the corresponding output data may be repeated a predetermined number of times (see, for example, Example 2 described below). The predetermined number of times can be set arbitrarily.
[0091] Furthermore, the output generation unit 404 uses a predetermined parameter λ to generate an intermediate representation z when input data x (first input data) is input to the trained model TM, and input data x' t+1 Intermediate representation z' when (second input data) is input t+1 A mixed intermediate representation may be generated by combining the two (see, for example, Example 3 described below).
[0092] Specifically, for example, the output generation unit 404 uses the following equation (1) to generate intermediate representation z and intermediate representation z'. t+1 A mixed intermediate representation may be generated by combining and , where z' represents the mixed intermediate representation.
[0093] z'=λz+(1-λ)z' t+1 ... (1)
[0094] The output generation unit 404 may generate output data based on the mixed intermediate representation generated by the trained model TM. Specifically, for example, the output generation unit 404 generates output data based on the mixed intermediate representation using the decoder DC.
[0095] The output generation unit 404 may also generate a mixed intermediate representation by mixing the intermediate representation z when input data x (first input data) is input to the trained model TM and the intermediate representation when input data (third input data) is input to the trained model TM, using a predetermined parameter λ.
[0096] The output unit 405 outputs the generated output data. When the trained model TM is "AlphaFold2", the generated output data includes, for example, all atomic coordinates of the predicted three-dimensional structure. In this case, the output unit 405 may output a three-dimensional atomic model representing the three-dimensional structure of the protein based on the generated output data. When the trained model TM is "Transformer model", the generated output data is, for example, sequence information representing a sentence. In this case, the output unit 405 may output a new sentence based on the generated output data.
[0097] Specifically, for example, the output unit 405 receives the input data x' t+1Output data y' corresponding to (second input data) t+1 The output unit 405 may also output the input data x' that was generated immediately before, if it is determined that a predetermined termination condition has been met. t+1 Corresponding output data y′ t+1 The output unit 405 may also output output data (for example, output data y', described later) generated based on a mixed intermediate representation (for example, the mixed intermediate representation z', described later).
[0098] Furthermore, the output unit 405 may output the generated output data in association with, for example, the input data x (first input data). This makes it easier for the output unit 405 to identify which input data x corresponds to which output data y (generated result). Alternatively, the output unit 405 may output the generated output data in association with the output data y (initial prediction) corresponding to the input data x (first input data). This allows the output unit 405 to output the output data y (initial prediction) along with the new output data obtained by manipulating the intermediate representation z.
[0099] The output format of the output unit 405 includes, for example, storage in a storage device such as memory 302 or disk 304, transmission to another computer via communication I / F 305, display on a display (not shown), and printing to a printer (not shown).
[0100] For example, suppose the first input data x for the trained model TM is received from the client device 202. In this case, the output unit 405, for example, determines that a predetermined termination condition has been met, and outputs the input data x' that was generated immediately before. t+1 The corresponding output data may be sent to the client device 202.
[0101] The functional units (acquisition unit 401 to output unit 405) of the structural prediction device 201 may be implemented by, for example, multiple computers within the information processing system 200 (e.g., the structural prediction device 201 and client device 202). In this case, communication between functional units of different computers is performed, for example, by sending and receiving data between functional units via the network 210.
[0102] (Example of operation of the structural prediction device 201) Next, an example of operation of the structural prediction device 201 will be explained using Figure 5. Here, module ml is input data x' t , output data y' t and intermediate expression z' t Function g(x') with variable t , y' t , z' t ) where t is an integer with an initial value of 0.
[0103] Figure 5 is an explanatory diagram showing an example of the operation of the structural prediction device 201. In Figure 5, the structural prediction device 201 inputs input data x (first input data) to the encoder EC to obtain an intermediate representation z. Next, the structural prediction device 201 applies a predetermined editing operation (corresponding to editing 501 in Figure 5) to the intermediate representation z to obtain an intermediate representation z'0 (first intermediate representation).
[0104] The structure prediction device 201 then inputs the acquired intermediate representation z'0 to the decoder DC to generate output data y'0. Next, the structure prediction device 201 takes the input data x as input data x'0, and applies the input data x'0, output data y'0, and intermediate representation z'0 to module ml (t=0) to generate new input data x' t+1 Obtain it.
[0105] Then, the structural prediction device 201 receives the newly acquired input data x' t+1 By inputting this into the trained model TM, the intermediate representation z' t+1 and output data y' t+1 Specifically, the structural prediction device 201 obtains new input data x' t+1 The intermediate representation z' is input to the encoder EC. t+1 The structure prediction device 201 obtains the intermediate representation z'. t+1 Input to decoder DC and output data y' t+1 Generates.
[0106] The structure prediction device 201 repeatedly executes the following processes (i) and (ii) until predetermined termination conditions are met.
[0107] (i) Input data x' t+1, output data y' t+1 and intermediate representation z' t+1 Apply them to module ml (t = t + 1) to obtain new input data x'. t+1 (ii) By inputting the new input data x' t+1 into the trained model TM, intermediate representation z' t+1 and output data y' t+1 are obtained.
[0108] When the structure prediction device 201 satisfies a predetermined end condition, it outputs the immediately preceding output data y' t+1 as the prediction result (final output).
[0109] As a result, the structure prediction device 201 can output a new structure that suppresses deviation from the training range of the trained model TM. For example, the structure prediction device 201 can repeat the processing by the encoder EC and the decoder DC to pull back an intermediate representation that slightly deviates from the training range due to an editing operation to an area within the training range where there is sufficient data.
[0110] (Training example of module ml) Next, a training example of module ml will be described using FIG. 6.
[0111] FIG. 6 is an explanatory diagram showing a training example of module ml. In FIG. 6, when the trained model TM of the structure prediction device 201 does not have a self-reference mechanism, for example, the structure prediction device 201 trains the module ml separately from the trained model TM.
[0112] Specifically, for example, the structure prediction device 201 obtains training data (teacher data) consisting of a pair of input data x and output data y. The training data may be obtained, for example, by receiving it from a management device (not shown), or may be obtained by an administrator's operation input using an input device (not shown).
[0113] The structure prediction device 201 then trains module ml based on the acquired training data. More specifically, for example, the structure prediction device 201 uses module ml to acquire different input data (updated input data) of the same format as input data x, based on the intermediate representation z when input data x is input to the trained model TM.
[0114] Next, the structure prediction device 201 trains module ml so that the output data obtained by inputting the updated input data into the trained model TM approaches the output data y. Based on the acquired training data, the structure prediction device 201 repeats this series of processes (training processes) a predetermined number of times.
[0115] As a result, the structure prediction device 201 can train a module ml that can output different data of the same format for the data, even when the trained model TM does not have a self-referencing mechanism.
[0116] (Structural prediction processing procedure of structural prediction device 201) Next, the structural prediction processing procedure of structural prediction device 201 will be explained using Figure 7.
[0117] Figure 7 is a flowchart showing an example of the structural prediction processing procedure of the structural prediction device 201. In the flowchart of Figure 7, first, the structural prediction device 201 acquires input data x for the trained model TM (step S701). Then, the structural prediction device 201 inputs the acquired input data x to the encoder EC to obtain an intermediate representation z (step S702).
[0118] Next, the structure prediction device 201 applies a predetermined editing operation to the intermediate representation z to obtain an intermediate representation z'0 (step S703). Then, the obtained intermediate representation z'0 is input to the decoder DC to generate output data y'0 (step S704). Next, the structure prediction device 201 sets the input data x to input data x'0 (step S705).
[0119] Then, the structure prediction device 201, with t=0 (step S706), uses the input data x' t , output data y' tand intermediate representation z' t Apply it to module ml to obtain new input data x' t+1 (Step S707). However, module ml is g(x' t , y' t , z' t ).
[0120] Next, the structure prediction device 201 inputs the new input data x' t+1 to the encoder EC to obtain the intermediate representation z' t+1 (Step S708). Then, the structure prediction device 201 inputs the intermediate representation z' t+1 to the decoder DC to generate the output data y' t+1 (Step S709).
[0121] Next, the structure prediction device 201 determines whether a predetermined end condition is satisfied (Step S710). Here, if the end condition is not satisfied (Step S710: No), the structure prediction device 201 increments t (Step S711) and returns to Step S707. On the other hand, if the end condition is satisfied (Step S710: Yes), the structure prediction device 201 outputs the immediately preceding generated output data y' t+1 (Step S712) and ends the series of processes according to this flowchart.
[0122] Thus, the structure prediction device 201 can output a new structure (output data y' t+1 ) that suppresses deviation from the training range of the trained model TM.
[0123] (Example 1) Next, Example 1 of the structure prediction device 201 will be described. In Example 1, the case of performing protein structure prediction with the trained model TM as "AlphaFold2" will be described.
[0124] FIG. 8 is an explanatory diagram showing Example 1 of the structure prediction device 201. In FIG. 8, the trained model TM is a machine learning model that outputs a 3D structure as a typical atomic structure of a protein when an InputSequence showing an amino acid sequence is input.
[0125] Here, the trained model TM includes Evoformer 801, Structure module 802, and Recycling 803. Evoformer 801 corresponds to encoder EC shown in Figure 4. Structure module 802 corresponds to decoder DC shown in Figure 4.
[0126] Recycling803 corresponds to module ml shown in Figure 4. In the existing AlphaFold2, Recycling803 is used as a self-referencing mechanism to improve the quality of predictions for complex structures by repeatedly updating the features of the original input sequence.
[0127] The structure prediction device 201 inputs input data x (first input data) to Evoformer 801 to obtain an intermediate representation z. Here, the input data x is, for example, MSA representation(s c ,r,c m ) and Pair representation (r, r, c z )
[0128] The intermediate representation z is, for example, information (intermediate features) output from Evoformer 801. However, the intermediate representation z may be the same information (intermediate features) as the input to Evoformer 801 (input data x). Alternatively, the intermediate representation z may be information obtained by applying Evoformer block n times (1 ≤ n < 48) to the input data x in the intermediate layer of Evoformer 801.
[0129] Next, the structure prediction device 201 obtains an intermediate representation z'0 (first intermediate representation) by applying a predetermined editing operation to the intermediate representation z. Specifically, for example, the structure prediction device 201 inputs the intermediate representation z to the Structure module 802 to generate output data y. Here, the output data y represents the protein structure (3D structure).
[0130] Furthermore, the structure prediction device 201 converts the protein structure (predicted result) represented by the output data y into a three-dimensional density map 810 that limits the structure in a differentiable form. The structure prediction device 201 then calculates the difference 830 between the converted three-dimensional density map 810 and the measured three-dimensional density map 820.
[0131] The three-dimensional density map 820 is an EM image that limits the atomic structure of a protein, for example, captured by an electron microscope such as a cryo-electron microscope. Next, the structure prediction device 201 calculates the backpropagation of the difference 830 and calculates an intermediate representation (intermediate feature) that minimizes the difference 830. The structure prediction device 201 denotes this intermediate representation (intermediate feature) as intermediate representation z'0.
[0132] Then, the structure prediction device 201 inputs the intermediate representation z'0 to the Structure module 802 to generate output data y'0. Next, the structure prediction device 201 takes the input data x as input data x'0, and applies the output data y'0 and the intermediate representation z'0 to Recycling 803 (t=0) to generate new input data x' in the same format as the input data x'0. t+1 Obtain it.
[0133] Then, the structural prediction device 201 receives new input data x' t+1 Input this into Evoformer801 and express it as an intermediate expression z' t+1 The structure prediction device 201 obtains the intermediate representation z'. t+1 Input this into Structure module 802 and output data y' t+1 Generates.
[0134] As a result, the structure prediction device 201 can output a new protein structure with desired properties. Furthermore, the structure prediction device 201 can utilize the self-referencing mechanism (Recycling 803) of the trained model TM to correct intermediate representations z'0 that have deviated from the training range of the trained model TM through editing operations back into the training range.
[0135] As explained in Figure 5, the structure prediction device 201 may repeatedly perform the same processes as (i) and (ii) above until predetermined termination conditions are met. This allows the structure prediction device 201 to bring intermediate representations that have deviated somewhat from the training range due to editing operations back into the training range region where there is sufficient data.
[0136] (Example 2) Next, Example 2 of the structure prediction device 201 will be described. Example 2 describes a case in which editing operations of the intermediate representation and updating of input data are performed alternately.
[0137] In this example, in Example 1, the input data when the predetermined termination condition is met is "Input Data x' T (0) The output data is written as "Output data y'" T (0) The intermediate expression is written as "intermediate expression z' T (0) It is sometimes written as "T is an integer greater than or equal to 1".
[0138] (x' T (0) , y' T (0) , z' T (0) This corresponds to a state where the intermediate representation has been edited once and the input data has been updated T times. In this case, the structure prediction device 201 uses the intermediate representation z' T (0) Let this be the intermediate representation z, and by applying editing operations to the intermediate representation z, the intermediate representation z'0 (1) Obtain the (second intermediate representation).
[0139] Then, the structure prediction device 201 uses the intermediate representation z'0 (1) Input this into Structure module 802 and output data y'0 (1) Next, the structure prediction device 201 generates the input data x'. T (0) Input data x'0 (1) Let the output data y'0 (1) and intermediate representation z'0 (1) Apply this to Recycle803 (t=0), input data x'0(1) New input data x' in the same format as above. t+1 (1) Retrieve the (third input data).
[0140] Then, the structural prediction device 201 receives new input data x' t+1 (1) Input this into Evoformer801 and express it as an intermediate expression z' t+1 (1) The structure prediction device 201 obtains the intermediate representation z'. t+1 (1) Input this into Structure module 802 and output data y' t+1 (1) Generates.
[0141] The structure prediction device 201 may repeatedly perform the same processes as (i) and (ii) above until a predetermined termination condition is met. T (1) , y' T (1) , z' T (1) ) can be obtained. (x' T (1) , y' T (1) , z' T (1) ) is (x' T (0) , y' T (0) , z' T (0) This corresponds to a state where, from the state described above, one further editing operation of the intermediate representation is performed, and the input data is updated T times.
[0142] The following steps involve applying editing operations to the intermediate representation z, followed by the updating of the input data T times (input data x'0 (m) ⇒x' T (m) The process up to ) is sometimes referred to as "a series of processes X" (m = 0, 1, 2, ...). m corresponds to the number of times the editing operation was applied to the intermediate representation z.
[0143] The structure prediction device 201 uses the intermediate representation z' T (m)Using the intermediate representation z, a series of processes similar to process X are repeatedly executed a predetermined number of times. For example, (x' T (1) , y' T (1) , z' T (1) After obtaining the intermediate representation z' T (1) If we use the intermediate representation z and perform the same process as the series of processes X, then (x' T (2) , y' T (2) , z' T (2) ) can be obtained.
[0144] Furthermore, until the number of times editing operations are applied to the intermediate representation z reaches M, the intermediate representation z' T (m) If we take the intermediate representation z and repeatedly perform the same process as the series of processes X, then (x' T (M) , y' T (M) , z' T (M) ) is obtained. The structure prediction device 201 outputs data y' T (M) This may be output as the prediction result (final output).
[0145] As a result, the structure prediction device 201 can bring the predicted structure closer to the target structure by repeatedly editing the intermediate representation to have the desired properties, and updating the input data when the structure deviates significantly from the original structure.
[0146] (Example 3) Next, Example 3 of the structure prediction device 201 will be described. Example 3 describes the case in which intermediate representations before and after updating are mixed and used.
[0147] In this example, in Example 1, the input data when the predetermined termination condition is met is "Input Data x' T The output data is written as "Output data y'" T The intermediate expression is written as "intermediate expression z' T It is sometimes written as "T is an integer greater than or equal to 1".
[0148] (x' T , y' T , z' T ) corresponds to a state in which the intermediate representation has been edited once and the input data has been updated T times. In this case, the structure prediction device 201 uses a predetermined parameter λ to determine the intermediate representation z when the input data x (first input data) is input to the trained model TM, and the input data x' T Intermediate representation z' when (second input data) is input T This generates an intermediate representation z' (third intermediate representation) which is a mixture of the two.
[0149] Specifically, for example, the structure prediction device 201 uses the above formula (1) to determine the intermediate representation z and the intermediate representation z'. T An intermediate representation z′ is generated by mixing and . However, z′ included in the above equation (1) t+1 , z' T This corresponds to the structure prediction device 201, which generates output data y' based on the intermediate representation z' using the Structure module 802. The structure prediction device 201 may also output the output data y' as the prediction result (final output).
[0150] As a result, the structure prediction device 201 converts the original intermediate representation z to the updated intermediate representation z'. T By using it in combination with other methods, it is possible to prevent the intermediate representation from deviating significantly from the knowledge range of the trained model TM, thus preventing the predicted structure from deviating too much from the initial prediction.
[0151] As described above, according to the structure prediction device 201 of this embodiment, based on the first intermediate representation z'0 obtained by applying a predetermined editing operation to the intermediate representation z when input data x (first input data) is input to the trained model TM, input data x'1 (second input data) of the same format as input data x can be generated. The predetermined editing operation is an operation performed for the purpose of generating new output data (structure) having specific properties. The structure prediction device 201 can then input the generated input data x'1 to the trained model TM. Specifically, for example, the structure prediction device 201 may generate output data y'1 corresponding to the input data x'1 by inputting the input data x'1 to the trained model TM.
[0152] As a result, the structure prediction device 201 can output a new structure that has the desired properties and suppresses deviation from the training range of the trained model TM. For example, if the trained model TM is sufficiently trained and has achieved generalization performance, the output of the encoder EC (intermediate representation) tends to fall within a range that does not deviate significantly from the training range of the trained model TM. Therefore, the structure prediction device 201 generates new input data from the intermediate representation after the editing operation and processes it with the encoder EC and decoder DC. This allows the intermediate representation to be brought back into the training range region where there is sufficient data, even if it deviates from the training range due to the editing operation.
[0153] Furthermore, the structure prediction device 201 can generate input data x'1 (second input data) based on the first intermediate representation z'0 using a module ml that can output different data of the same format for the given data. For example, if the trained model TM is "AlphaFold2", then module ml is recycling included in AlphaFold2.
[0154] As a result, the structure prediction device 201 can use module ml to generate different input data in the same format as the input data x. For example, if the trained model TM is "AlphaFold2", the structure prediction device 201 can use the self-referencing mechanism (recycling) in AlphaFold2 to generate different input data in the same format as the input data x.
[0155] Furthermore, according to the structure prediction device 201, input data x' t+1 Corresponding output data y′ t+1 As a result of generating the data, it is possible to determine whether or not a predetermined termination condition is met. According to the structure prediction device 201, if the termination condition is not met, the input data x' is sent to the trained model TM. t+1 Intermediate representation z' when input t+1 Based on the input data x' t+1 It generates different input data in the same format, and the generated different input data is input data x'. t+1 (Second input data) is the input data x'. t+1 By inputting this into the trained model TM, the input data x' t+1 Corresponding output data y′ t+1 The process of generating can be repeatedly executed until the termination condition is met.
[0156] As a result, the structure prediction device 201 can repeatedly process the trained model TM using the encoder EC and decoder DC, thereby bringing back intermediate representations that have deviated somewhat from the training range due to editing operations back into the training range region where there is sufficient data.
[0157] Furthermore, according to the structure prediction device 201, input data x' is input to the trained model TM. t+1 Intermediate representation z' when (second input data) is input t+1 A second intermediate representation (for example, intermediate representation z') obtained by applying editing operations to it. T (0) Based on the input data x' t+1 A third input data in the same format (for example, input data x') t+1 (1)) can be generated. And, according to the structure prediction device 201, the generated third input data is input data x' t+1 (Second input data) is the input data x'. t+1 By inputting this into the trained model TM, the input data x' t+1 Corresponding output data y′ t+1 It can generate [this].
[0158] This allows the structure prediction device 201 to re-edit the intermediate representation to have the desired properties, while simultaneously returning to the training range region where there is sufficient data.
[0159] Furthermore, according to the structure prediction device 201, the process of generating third input data and the input data x' of the third input data t+1 (Second input data) is input data x' t+1 Corresponding output data y′ t+1 The process of generating can be repeated a predetermined number of times.
[0160] This allows the structure prediction device 201 to bring the predicted structure closer to the target structure by repeatedly editing the intermediate representation to have the desired properties and updating the input data when the structure deviates significantly from the original structure.
[0161] Furthermore, the structure prediction device 201 uses the parameter λ to determine the intermediate representation z when input data x (first input data) is input to the trained model TM, and input data x' T Intermediate representation z' when (second input data) is input T A mixed intermediate representation z′ can be generated by mixing the two. Then, according to the structure prediction device 201, output data y′ can be generated based on the generated mixed intermediate representation z′ using the trained model TM.
[0162] As a result, the structure prediction device 201 converts the original intermediate representation z to the updated intermediate representation z'. TBy using it in combination with other methods, it is possible to prevent the intermediate representation from deviating significantly from the knowledge range of the trained model TM, thus preventing the predicted structure from deviating too much from the initial prediction.
[0163] Furthermore, according to the structure prediction device 201, input data x' t+1 Output data y' corresponding to (second input data) t+1 It can output the input data x′ generated immediately before, if the structural prediction device 201 determines that a predetermined termination condition is met. t+1 Corresponding output data y′ t+1 It can output.
[0164] As a result, the structure prediction device 201 can provide a new, high-quality structure as a prediction result that has desired properties and is different from known structures (output data y) based on the input data x (first input data).
[0165] Based on these considerations, the structure prediction device 201 according to this embodiment enables the output of new structures that possess desired properties and suppress deviations from the training range of the trained model TM, thereby improving the quality of structure prediction. Furthermore, the structure prediction device 201 can achieve diverse outputs without requiring additional training by utilizing the data distribution knowledge possessed by the trained model TM.
[0166] This information processing method can be applied, for example, to a structure prediction service that takes amino acid sequence information as input and outputs the structure of a protein. In this case, this information processing method makes it possible to provide, for example, a structural polymorphism B based on the same sequence as a known protein structure A, thereby improving the quality of the structure prediction service.
[0167] Furthermore, this information processing method can be applied, for example, to a natural language processing service that takes sequence information representing a sentence as input and outputs another sentence. In this case, this information processing method makes it possible to provide a child-friendly version of sentence B based on a text A intended for experts, thereby improving the quality of the natural language processing service.
[0168] Here, using Figure 9, we will explain how an intermediate representation that has deviated from the training range of the trained model TM is brought back into the training range region by an editing operation performed to output a structure with desired properties.
[0169] Figure 9 is an explanatory diagram illustrating how the intermediate representation is pulled back into the training range. In Figure 9, the encoder EC and decoder DC of the trained model TM are shown. The training range 910 represents the training range of the trained model TM in the feature space of the intermediate representation. The range 920 represents the range in the prediction structure space in which high-quality predictions can be made based on training.
[0170] ● 901 represents an intermediate representation (first intermediate representation) obtained by applying a predetermined editing operation to the original intermediate representation. Here, ● 901 deviates from the training range 910 by applying the editing operation. × 903 represents a structure (output data) generated based on the intermediate representation represented by ● 901. Here, since ● 901 deviates from the training range 910, × 903 also falls outside the range 920.
[0171] ● mark 902 represents the intermediate representation (intermediate representation corresponding to the second input data) obtained when this information processing method is applied to the intermediate representation represented by ● mark 901. × mark 904 represents the structure (output data) generated based on the intermediate representation represented by ● mark 902. Here, ● mark 902 is brought back into the training range 910 by applying this information processing method. As a result, × mark 904 falls within the range 920, and high-quality prediction results are obtained.
[0172] The information processing method described in this embodiment can be implemented by executing a pre-prepared program on a computer such as a personal computer or workstation. This information processing program is recorded on a computer-readable recording medium such as a hard disk, flexible disk, CD-ROM, DVD, or USB memory, and is executed when read from the recording medium by a computer. This information processing program may also be distributed via a network such as the Internet.
[0173] Furthermore, the information processing device 100 (structure prediction device 201) described in this embodiment can also be realized using application-specific ICs such as standard cells and structured ASICs (Application Specific Integrated Circuits), or PLDs (Programmable Logic Devices) such as FPGAs.
[0174] 100 Information Processing Device 110, TM Trained Model 120, EC Encoder 130, DC Decoder 140, ml Module 150, 501 Editing 200 Information Processing System 201 Structure Prediction Device 202 Client Device 210 Network 300 Bus 301 CPU 302 Memory 303 Disk Drive 304 Disk 305 Communication I / F 306 GPU 307 Portable Recording Medium I / F 308 Portable Recording Medium 401 Acquisition Unit 402 Operation Unit 403 Input Generation Unit 404 Output Generation Unit 405 Output Unit 410 Storage Unit 600 Control Unit 801 Evoformer 802 module 803 Recycling 810, 820 3D Density Map 830 Reverse 901, 902 ● Mark 903, 904 × Mark 910 Learning range 920 Range
Claims
1. An information processing program characterized by causing a computer to execute a process that involves applying a predetermined editing operation to a first intermediate representation obtained when first input data is input to a trained machine learning model that has access to the intermediate representation, generating second input data in the same format as the first input data based on the first intermediate representation obtained, and inputting the generated second input data into the machine learning model.
2. The information processing program according to claim 1, characterized in that the input process generates output data corresponding to the second input data by inputting the second input data into the machine learning model.
3. An information processing program according to claim 2, characterized in that, as a result of generating output data corresponding to the second input data, it is determined whether a predetermined termination condition is met, if the termination condition is not met, the computer is repeatedly made to perform the following process until the termination condition is met: generating different input data in the same format as the second input data based on the intermediate representation when the second input data was input to the machine learning model, and inputting the generated different input data as the second input data to the machine learning model to generate output data corresponding to the second input data.
4. The information processing program according to claim 2, characterized in that it causes the computer to perform the following processes: generate a third input data in the same format as the second input data based on a second intermediate representation obtained by applying the editing operation to the intermediate representation when the second input data is input to the machine learning model; and input the generated third input data as the second input data to the machine learning model to generate output data corresponding to the second input data.
5. The information processing program according to claim 4, characterized in that the computer is repeatedly made to perform the process of generating the third input data and the process of generating output data corresponding to the second input data using the third input data as the second input data, a predetermined number of times.
6. The information processing program according to claim 1, characterized in that it causes the computer to perform the following processes: generating a mixed intermediate representation by mixing the intermediate representation when the first input data is input to the machine learning model and the intermediate representation when the second input data is input to the machine learning model using predetermined parameters; and generating output data based on the mixed intermediate representation using the machine learning model.
7. The information processing program according to claim 1, characterized in that the process for generating the second input data is to generate the second input data based on the first intermediate representation using a module capable of outputting different data of the same format for the input data.
8. The information processing program according to claim 7, characterized in that the machine learning model is AlphaFold2, and the module is recycling included in AlphaFold2.
9. An information processing program according to any one of 2 to 5, characterized in that it causes the computer to perform a process that outputs output data corresponding to the generated second input data.
10. An information processing method characterized in that a computer performs the following steps: generate a second input data in the same format as the first input data based on a first intermediate representation obtained by applying a predetermined editing operation to the intermediate representation when the first input data is input to a trained machine learning model that has access to the intermediate representation; and input the generated second input data to the machine learning model.
11. An information processing device having a control unit that generates a second input data in the same format as the first input data based on a first intermediate representation obtained by applying a predetermined editing operation to the intermediate representation when the first input data is input to a trained machine learning model that has access to the intermediate representation, and inputs the generated second input data to the machine learning model.