Methods and apparatus for predicting protein and gene function, training machine learning models
By using particle swarm optimization algorithm to select protein feature combinations and combining them with machine learning models, the problems of low efficiency and high cost in protein function prediction are solved, and efficient and low-cost identification of nucleic acid binding proteins is achieved.
Patent Information
- Application Number
- CN202111258851.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-25
- Publication Date
- 2026-11-03
- Estimated Expiration
- 2041-10-25
AI Technical Summary
Existing protein function prediction methods suffer from low efficiency and high cost, especially in identifying nucleic acid-binding proteins, which requires expensive experiments and a large amount of human and material resources.
The particle swarm optimization algorithm is used to select the optimal feature combination from the initial feature vector, and combined with the machine learning model for protein function prediction. By optimizing dimensionality reduction and feature selection, the model parameters and size are reduced, and the recognition efficiency is improved.
While maintaining model accuracy, the model parameters and size were significantly reduced, improving the efficiency and accuracy of protein function prediction and reducing identification time and cost.
Smart Images

Figure CN116030893B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of bioinformatics, and in particular to methods for predicting protein function, methods for determining feature vector combinations, methods for training machine learning models, methods for predicting gene function, devices for predicting protein function, devices for determining feature vector combinations, computing devices, and computer-readable storage media. Background Technology
[0002] Proteins are the most essential and versatile macromolecules in living organisms, and understanding their functions is crucial for advancements in science and agriculture. With the development of the post-genomic era, a large number of protein sequences with unknown structures and functions have rapidly emerged in the NCBI database, making them a hot research topic.
[0003] However, current methods for predicting protein function still need improvement. Summary of the Invention
[0004] In view of the above-mentioned defects or deficiencies in the prior art, this application proposes a means to effectively predict protein function in order to improve the prediction accuracy of protein feature extraction and other related predictions, reduce working costs, and improve prediction efficiency.
[0005] In a first aspect, according to embodiments of this application, this application proposes a method for predicting the function of a protein, comprising: obtaining an initial feature vector of the protein; extracting input features from the initial feature vector according to a predetermined combination of feature vectors; and inputting the input features into a trained machine learning model to obtain a function prediction result of the protein, wherein the predetermined combination of feature vectors is determined from the initial feature vector through particle swarm optimization.
[0006] Secondly, according to embodiments of this application, this application proposes a method for determining a feature vector combination, wherein the feature vector combination is used for functional prediction of a protein. The method includes: obtaining an initial feature vector combination of the protein; determining an optimal particle position by iteratively updating the particle position through particle swarm optimization based on the particle position and the fitness value corresponding to the particle position; and determining an optimal feature vector combination based on the optimal particle position; wherein the fitness value corresponding to the particle position is determined by the following steps: determining a candidate feature vector combination corresponding to the particle position from the initial feature vector combination based on the particle position; training the machine learning model using the candidate feature vector combination as input features using a training dataset; and determining an evaluation metric for the trained machine learning model to obtain the fitness value.
[0007] Thirdly, according to embodiments of this application, this application proposes a method for training a machine learning model, the machine learning model being used to predict the function of proteins, the method comprising: obtaining initial feature vectors of multiple proteins, the multiple proteins having known functions; selecting training features from the initial feature vectors according to a predetermined feature combination, the predetermined feature combination being determined by the method described in the second aspect; and inputting the training features into the machine learning model, and using the known functions as labels to train the machine learning model.
[0008] Fourthly, according to embodiments of this application, this application proposes a method for predicting gene function, comprising: determining the protein encoded by the gene based on the gene sequence; and predicting the function of the protein according to the method described in the first aspect.
[0009] Fifthly, according to embodiments of this application, this application proposes an apparatus for predicting the function of a protein, comprising: an initial feature vector acquisition module for acquiring an initial feature vector of the protein; an input feature extraction module for extracting input features from the initial feature vector according to a predetermined feature vector combination; and a function prediction module for inputting the input features into a trained machine learning model to obtain a function prediction result of the protein, wherein the predetermined optimal feature vector combination is extracted from the initial feature vector through particle swarm optimization.
[0010] Sixthly, according to embodiments of this application, this application proposes an apparatus for determining a feature vector combination, the feature vector combination being used for functional prediction of a protein. The apparatus includes: an initial feature vector combination acquisition module, used to acquire an initial feature vector combination of the protein; a particle swarm optimization module, used to determine an optimal particle position by iteratively updating the particle position based on the particle position and the fitness value corresponding to the particle position through particle swarm optimization; and an optimal feature vector combination determination module, used to determine an optimal feature vector combination based on the optimal particle position; wherein the particle swarm optimization module includes: a candidate feature vector combination submodule, used to determine a candidate feature vector combination corresponding to the particle position from the initial feature vector combination based on the particle position; a model training submodule, used to train a machine learning model using a training dataset and the candidate feature vector combination as input features; and a model evaluation submodule, used to determine an evaluation metric for the trained machine learning model to obtain the fitness value.
[0011] In a seventh aspect, according to embodiments of this application, this application proposes a computing device, characterized in that it includes: a processor and a memory; the memory is used to store a computer program; the processor is used to execute the computer program to implement the method described above.
[0012] In a seventh aspect, according to embodiments of this application, this application provides a computer-readable storage medium comprising computer instructions that, when executed by a computer, cause the computer to perform the method described above.
[0013] According to embodiments of this application, this application proposes a method for predicting protein function, a method for determining feature vector combinations, a method for training a machine learning model, a method for predicting gene function, an apparatus for predicting protein function, an apparatus for determining feature vector combinations, a computing device, and a computer-readable storage medium. This allows for the efficient extraction of effective feature vectors from protein data, such as amino acid sequences and amino acid properties, that can be used for protein function prediction, thereby effectively training machine learning models. According to embodiments of this application, the size of the machine learning model can be reduced, the number of parameters requiring training can be decreased, or overfitting can be prevented.
[0014] According to embodiments of this application, in the protein function prediction method proposed in this application, firstly, a dataset consisting of a training set, such as RNA-binding proteins and non-RNA-binding proteins, is encoded into a fixed-length feature vector to represent these protein data. Secondly, a feature selection method is used to select the optimal feature combination to obtain a new feature vector to represent the protein, which greatly reduces the dimensionality compared to the original feature vector. Finally, a machine learning algorithm is used to identify proteins with specific functions, such as RNA-binding proteins.
[0015] According to embodiments of this application, the present invention proposes a method for predicting protein function, such as predicting whether a protein can recognize nucleic acids such as RNA or DNA. In other words, in some embodiments, the present invention proposes a method for identifying nucleic acid (RNA or DNA) binding proteins. According to some embodiments of this application, the method described in the embodiments of this application can effectively reduce the number of model parameters and model size (specifically, both the model parameters and size are significantly reduced compared to the original model) while ensuring model accuracy, thus greatly reducing the identification time for target proteins, such as nucleic acid binding proteins. Therefore, according to specific embodiments of this application, the present invention proposes a method for identifying RNA binding proteins, which, compared to traditional model methods, can significantly reduce the number of model parameters and size, thus enabling faster identification of RNA binding proteins, significantly improving the processing efficiency of machine learning models, removing the influence of redundant features, and improving accuracy. Simultaneously, a novel feature selection optimization method is also proposed, which has a faster convergence speed and can find the optimal solution more quickly. Attached Figure Description
[0016] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:
[0017] Figure 1 A flowchart illustrating a method for predicting protein function according to an embodiment of this application is shown.
[0018] Figure 2 A schematic flowchart of particle swarm optimization according to another embodiment of this application is shown;
[0019] Figure 3 A flowchart illustrating the fitness value determination process according to yet another embodiment of this application is shown;
[0020] Figure 4 A schematic flowchart of a particle swarm optimization process according to yet another embodiment of this application is shown;
[0021] Figure 5 A flowchart illustrating a method for determining a combination of feature vectors according to an embodiment of this application is shown;
[0022] Figure 6 A flowchart illustrating a method for training a machine learning model according to an embodiment of this application is shown.
[0023] Figure 7 A flowchart illustrating a method for predicting gene function according to an embodiment of this application is shown;
[0024] Figure 8A schematic diagram of a device for predicting protein function according to an embodiment of this application is shown.
[0025] Figure 9 A schematic diagram of the structure of a device for determining a combination of feature vectors according to an embodiment of this application is shown;
[0026] Figure 10 A schematic diagram of the structure of a particle swarm optimization module according to an embodiment of this application is shown;
[0027] Figure 11 A flowchart illustrating a method for predicting RNA-binding proteins based on protein data according to an embodiment of this application is shown.
[0028] Figure 12 A schematic diagram illustrating the determination of an initial combination of protein feature vectors according to an embodiment of this application is shown;
[0029] Figure 13 A schematic flowchart of particle swarm optimization according to an embodiment of this application is shown; and
[0030] Figure 14 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Detailed Implementation
[0031] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings.
[0032] It should be understood that in the embodiments of this application, "B corresponding to A" means that B is associated with A. In one implementation, B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B solely based on A; B can also be determined based on A and / or other information.
[0033] In the description of this application, unless otherwise stated, "a plurality of" means two or more.
[0034] Furthermore, to facilitate a clear description of the technical solutions in the embodiments of this application, the terms "first" and "second" are used in the embodiments of this application to distinguish identical or similar items with substantially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and the terms "first" and "second" are not necessarily different.
[0035] To facilitate understanding of the embodiments of this application, the relevant concepts involved in the embodiments of this application will be briefly introduced as follows:
[0036] Artificial intelligence (AI) is the theory, methods, technology, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a comprehensive technology within computer science that attempts to understand the essence of intelligence and produce a new kind of intelligent machine that can react in a way similar to human intelligence. AI studies the design principles and implementation methods of various intelligent machines, enabling them to possess the functions of perception, reasoning, and decision-making.
[0037] Artificial intelligence (AI) is a comprehensive discipline encompassing a wide range of fields, including both hardware and software technologies. Fundamental AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing, operating / interactive systems, and mechatronics. AI software technologies primarily include computer vision, speech processing, natural language processing, and machine learning / deep learning.
[0038] Particle Swarm Optimization (PSO) has become a hot research topic in the field of modern optimization methods. It seeks the global optimum by following the currently found optimal value.
[0039] Proteins are among the most essential and versatile macromolecules in living organisms, and understanding their functions is crucial for advancements in science, medicine, and agriculture. The binding of proteins to nucleic acids (DNA or RNA) is closely related to a range of cellular activities, making them vital for the health and disease states of the organism. Given their indispensable role in a wide range of biological processes, regulating the binding of proteins to other molecular entities, such as nucleic acids, holds immense potential in the field of drug development.
[0040] Effectively predicting protein function is a major task for pharmaceutical companies developing biopharmaceuticals. In one possible implementation of this application, protein optimization relies heavily on the experience of medicinal chemists, iteratively improving through continuous trial and error. For example, current antibody binding site determination mainly depends on expensive structural analysis experiments or time-consuming molecular knockout screening experiments. This places extremely high demands on human and material resources.
[0041] The biggest advantage of AI technology is that it can digest a large amount of learning data in a short period of time through a self-learning process, achieving the goal of self-learning without a teacher.
[0042] Based on this, embodiments of this application provide a method for predicting protein function, a method for determining feature vector combinations, a method for training a machine learning model, a method for predicting gene function, an apparatus for predicting protein function, an apparatus for determining feature vector combinations, a computing device, and a computer-readable storage medium. According to embodiments of this application, the technical solutions provided by these embodiments can provide more effective feature representations for protein data extraction. Therefore, the extracted features have low prediction costs and high prediction efficiency in subsequent downstream tasks related to protein function prediction.
[0043] The application scenarios of this application include, but are not limited to, medical, biological, and scientific research fields, such as drug production, drug development, and vaccine development, for the rapid and accurate identification of nucleic acid binding proteins, such as RNA binding proteins or DNA binding proteins, and the entire identification process does not require human intervention and has low identification costs.
[0044] The technical solutions of the embodiments of this application will be described in detail below through some examples. The following embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.
[0045] In a first aspect, according to embodiments of this application, this application proposes a method for predicting the function of proteins.
[0046] The following is a reference appendix. Figures 1-4 A method for predicting protein function according to embodiments of this application will be described in detail.
[0047] According to embodiments of this application, a method for predicting the function of a protein includes the following steps:
[0048] S110: Obtain the initial feature vector of the protein.
[0049] In this step, those skilled in the art can obtain protein features using conventional methods and further combine them to obtain an initial feature vector. Features that can be used for protein function prediction are not particularly limited; they can include features based on protein structure or features based on the protein's amino acid sequence.
[0050] According to embodiments of this application, the initial feature vector used in this step includes those determined based on the amino acid sequence of the protein. This is therefore more suitable for the initial stages of protein research, especially when only the amino acid sequence of the protein is available. Even in some bioinformatics applications, where only gene sequence information is available, functional prediction can only be performed after converting the gene sequence information into an amino acid sequence using a codon table. Conversely, obtaining the three-dimensional structure of a protein is far more complex than obtaining its amino acid sequence.
[0051] In addition, according to the embodiments of this application, a comprehensive feature based on amino acid composition and amino acid physicochemical properties is used for protein function prediction, such as predicting whether a protein can bind to nucleic acids such as DNA or RNA, such as mRNA. Thus, the characteristic information of the protein can be fully utilized to obtain more accurate prediction results and improve prediction efficiency.
[0052] According to embodiments of this application, possible combinations of initial feature vectors include:
[0053] The first multidimensional feature vector is obtained by C-T-D encoding of amino acid sequences based on the hydrophobicity, polarity, normalized van der Waals volume, and polarizability of amino acids; and
[0054] The second multidimensional feature vector is obtained by encoding the amino acid sequence in triplets based on the polarity and charge of amino acids.
[0055] The following is for reference. Figure 12 The C-T-D encoding and triplet encoding methods used in the acquisition of the first and second multidimensional feature vectors are described in detail.
[0056] First, for C-T-D encoding, the amino acid sequence is re-encoded after classification based on the physicochemical properties of amino acids (e.g., hydrophobicity, polarity, normalized van der Waals volume, and polarizability). For the re-encoded sequence, information related to C (composition), T (transition), and D (distribution) is extracted to obtain the first multidimensional feature vector.
[0057] The physicochemical properties that can be used for amino acid classification may include, but are not limited to, the hydrophobicity, polarity, normalized van der Waals volume (also known as "normalized van der Waals volume"), and polarizability of amino acids. Using these physicochemical properties as examples, amino acids can be classified according to the following criteria:
[0058]
[0059] The following section uses an amino acid sequence to illustrate the C-T-D encoding method using hydrophobicity as an example.
[0060] Based on hydrophobicity, amino acids are classified into three categories: P, N, and H.
[0061] Therefore, amino acid sequence
[0062] MSDKPDMAEIEKFSKETIEQEKQAGESTQEKNPLPMLLPATDKSKLKKTE
[0063] Re-encoded as
[0064] HNPPNPHNPHPPHNPPNHPPPPPNNPNNPPP PNHNHHHNNNPPNPHPPNP.
[0065] Furthermore, relevant information is extracted from the re-encoded sequence, specifically including: C (composition), T (transition), and D (distribution).
[0066] For C (composition), it includes the percentage content of H, N, and P.
[0067] For T (transition), it includes the percentage of transitions between two adjacent letters, such as transitions between H and N, N and P, and H and P.
[0068] For D (distribution), it represents the distribution of each amino acid in the above sequence, for example, the position of the amino acid sequence that ranks 1st, 25th, 50th, 75th and 100th in each category (which can still be expressed as a percentage of the amino acid sequence).
[0069] After processing using the above methods, multi-dimensional feature vectors can be obtained based on the information extraction methods of C, T, and D respectively. For example, C-type information includes a 3-dimensional vector, T-type information includes a 3-dimensional vector, and D-type information includes a 15-dimensional feature vector.
[0070] In addition, similar information extraction methods were used to extract polarity, normalized van der Waals volume (also known as "normalized van der Waals volume"), and polarization. After comprehensive merging, the first multidimensional feature vector was obtained.
[0071] Next, for the triplet encoding, it involves first classifying common amino acids according to the two physicochemical properties of the amino acid side chain polarity and charge, for example, into four categories. With three amino acids as units, there are many, for example, 64 combinations (4*4*4=64). Then, the content of each combination in the amino acid sequence is determined. Thus, a second multidimensional feature vector (e.g., 64-dimensional) can be obtained.
[0072] Therefore, according to the embodiments of this application, through the above encoding method, a multidimensional initial feature vector can be obtained based on the amino acid sequence of the protein, such as a 148-dimensional initial feature vector, wherein the first multidimensional feature vector is 84-dimensional (21*4) and the second multidimensional feature vector is 64-dimensional.
[0073] Those skilled in the art will understand that, after obtaining the aforementioned initial feature vectors, they can either be used directly for subsequent analysis, or the relevant data features can be transformed through mathematical operations without changing the dimensions before subsequent analysis. For example, by performing fixed mathematical operations on each vector data, the magnitude difference between the data can be minimized. Further details will not be elaborated here.
[0074] S120: Extract input features from the initial feature vector according to the predetermined feature vector combination.
[0075] According to an embodiment of this application, after obtaining the initial feature vector, relevant dimensional information is extracted from the initial feature vector according to predetermined rules, such as predetermined feature vector combinations, as input features, thereby achieving the purpose of dimensionality reduction of the initial feature vector.
[0076] As mentioned above, the initial feature vector has a relatively high dimension. According to the embodiments of this application, the initial feature vector has 148 dimensions of data. Therefore, its training efficiency for machine learning will be low, the model involved will be relatively large, the processing speed will be low, and redundant features and background features will also affect the accuracy of the prediction.
[0077] According to embodiments of this application, a predetermined combination of feature vectors can be determined from an initial feature vector through particle swarm optimization. In other words, particle swarm optimization determines the rules for extracting input features from the initial feature vector; that is, it determines which dimensions of feature values to select and which dimensions to exclude. By using input features obtained through particle swarm optimization, fewer model parameters and a smaller model size can be achieved while maintaining model accuracy (specifically, both the model parameters and size are significantly reduced compared to the original model). Therefore, it can greatly reduce the identification time for target proteins, such as nucleic acid-binding proteins, and also avoid overfitting during machine learning model training.
[0078] The method of determining the predetermined combination of eigenvectors using particle swarm optimization will be described in detail later.
[0079] S130: Input the input features into the trained machine learning model to obtain the protein function prediction results.
[0080] After obtaining the above input features, the function of the protein can be predicted using these input features, for example, by inputting the above input features into a trained machine learning model.
[0081] According to embodiments of this application, the machine learning model is trained using a training set, i.e., a set containing relevant input features and known functionalities as labels, such as supervised or semi-supervised training. Additionally, a test set can be set to verify the training results of the machine learning model.
[0082] According to embodiments of this application, different training and test sets can be selected based on protein function. The following uses a machine learning model for predicting RNA-binding proteins as an example to illustrate how to set up the training and test sets.
[0083] According to embodiments of this application, the positive samples in the training set are from the Uniprot database. Based on Uniprot's GO (Gene Ontology) annotation information, the database can be searched using the GO term "RNA binding". According to embodiments of this application, the Uniprot database is used instead of PDB data to construct the training set of positive samples because the Uniprot database contains more RBPs. Uniprot not only contains RBPs from PDBs but also RBPs identified through high-throughput experiments.
[0084] For negative samples, the method reported in SPOT-StruRNA (Nature Communications volume 10, Article number: 5407(2019)) was adopted. In short, negative samples were obtained by using PISCES (Bioinformatics. 2003 Aug 12; 19(12): 1589-91.). First, the sequence consistency was set to 25% to ensure the non-redundancy of the negative samples. Second, the length was set between 50 and 10000. The minimum value was set to 50 to filter out peptides, since the focus was on proteins. The maximum value was set to 10000 to avoid increasing the computational complexity by including large proteins. The resolution was set to less than 3.0 angstroms. The negative samples constructed in this way were mixed with the positive samples and then redundancy was removed using psi-cd-hit with 25% consistency. Finally, a training set containing 2780 positive samples and 7093 negative samples was obtained.
[0085] A dataset consisting of equal numbers of positive and negative samples is called a balanced dataset, while a dataset consisting of unequal numbers of positive and negative samples is called an unbalanced set. Models trained on unbalanced sets tend to predict the type of sample that is more prevalent in training; this phenomenon is called algorithmic bias. This imbalance is often the case in real-world environments. Models trained on balanced sets do not exhibit this bias. Therefore, to compare the performance of models on balanced and unbalanced sets, according to an embodiment of this application, the inventors constructed a balanced dataset. From 7093 negative samples, 2780 negative samples were randomly selected and combined with 2780 positive samples to form a balanced dataset (RBP). The remaining 4313 negative samples were used as a negative dataset (non-RBP), which was only used to test the performance of balanced models trained on balanced sets.
[0086] According to an embodiment of this application, to test the model's performance, the inventors used the RBPPred test set (http: / / rnabinding.com / RBPPred.html). Since there is redundancy between the RBPPred test set and training set, and this redundancy may affect predictions, the psi-cd-hit utility from the CD-HIT package was used to remove redundancy from the RBPPred test set. First, the test set and training set were mixed together. Then, the mixed dataset was clustered using psi-cd-hit with a consistency of 30%, and classes that did not contain any training set members were selected. This step ensured the non-redundancy of the training and test sets. Finally, a representative protein sequence recommended by the CD-HIT utility was selected from each class. This step ensured that the data in the test set was non-redundant. After the above steps, the inventors finally obtained a test set of 348 samples, including 239 negative samples and 249 positive samples. From a species perspective, the test set included 72 positive and 13 negative samples from Arabidopsis thaliana, 129 positive and 163 negative samples from humans, and 48 positive and 62 negative samples from yeast. Compared to the 2,546 samples in the RBPPred test set, 2,058 proteins were discarded due to redundancy.
[0087] According to embodiments of this application, as described above, since the input features are dimensionality-reduced relative to the initial feature vector combination, conventional machine learning models can be used for training to obtain a trained machine learning model capable of predicting protein function. According to specific embodiments of this application, the machine learning models that can be used include supervised classification models, such as at least one of KNN, support vector machines, random forests, decision trees, and neural networks. Evaluation metrics include at least one of accuracy, precision, recall, P-R curve, F1 score, confusion matrix, ROC, and AUC.
[0088] According to embodiments of this application, the protein function that can be predicted using the above-described machine learning model includes predicting whether the protein can bind to nucleic acids, optionally, where the nucleic acid is RNA. Therefore, according to embodiments of this application, this application provides an efficient means of identifying whether a protein belongs to an RBP (Restricted Protein-Binding Pathway). An RBP refers to an RNA-binding protein, and the bound RNA can be mRNA. These proteins play an important role in regulating mRNA. Therefore, the prediction of RNA-binding proteins can be further applied to protein-RNA interaction research and biomedical research.
[0089] Therefore, for reference Figure 11 According to embodiments of this application, a method for recognizing RNA-binding proteins (RBPs) is proposed, comprising:
[0090] First, the dataset consisting of RNA-binding proteins and non-RNA-binding proteins is encoded into a fixed-length feature vector to represent these protein data.
[0091] Secondly, feature selection methods are used to choose the optimal feature values to form a new feature vector to represent the protein, which significantly reduces the dimensionality compared to the original feature vector; and
[0092] Finally, machine learning algorithms were used to identify RNA-binding proteins.
[0093] Therefore, according to embodiments of this application, the present invention proposes a method for protein function prediction, which can predict whether a protein can recognize nucleic acids such as RNA or DNA. This method effectively reduces model parameters and size (specifically, both model parameters and size are significantly reduced compared to the original model) while maintaining model accuracy, thus greatly reducing the identification time for target proteins, such as nucleic acid-binding proteins. Therefore, according to specific embodiments of this application, compared to traditional model methods, the number of model parameters and size can be greatly reduced, thus enabling faster identification of RNA-binding proteins, significantly improving the processing efficiency of machine learning models, removing the influence of redundant features, and improving accuracy.
[0094] The following is for reference. Figures 2-4 Sections 1 and 13 provide a detailed description of the process of optimizing a combination of feature vectors that can be used for protein function prediction through particle swarm optimization.
[0095] Particle Swarm Optimization (PSO), also known as particle swarm optimization or particle group optimization, is a swarm-based algorithm that moves individuals within a swarm to better regions based on their fitness to the environment. However, it does not use evolutionary operators on individuals; instead, it treats each individual as a particle (point) with no volume in a D-dimensional search space, flying at a certain speed that is dynamically adjusted based on its own flight experience and that of its companions.
[0096] The standard PSO algorithm flow is typically as follows:
[0097] (1) Initialize a group of particles (group size m), including random positions and velocities;
[0098] (2) Evaluate the fitness of each particle;
[0099] (3) For each particle, compare its fitness value with the best position it has ever experienced, pbest. If it is better, then take it as the current best position, pbest.
[0100] (4) For each particle, compare its fitness value with the best position gbest that it has experienced globally. If it is better, reset the index number of gbest.
[0101] (5) Update the velocity and position of the particles;
[0102] (6) If the termination condition is not met (usually a sufficiently good fitness value or reaching a preset maximum number of iterations Gmax), return to (2).
[0103] According to embodiments of this application, particle swarm optimization includes:
[0104] S210: Based on the particle position and its corresponding fitness value, determine the optimal particle position by iteratively updating the particle position.
[0105] In particle swarm optimization, multiple particles are first initialized in a multidimensional space, for example, 100 particles can be selected. The dimension of this multidimensional space is related to the dimension of the initial feature vector. According to embodiments of the present invention, the dimension of the multidimensional space is the same as the dimension of the initial feature vector. Therefore, the dimension of the multidimensional space can correspond one-to-one with the dimension of the initial feature vector. Thus, according to specific embodiments of this application, the particle position is determined by multidimensional coordinate values, and the candidate feature vector combination is selected from the initial feature vector combination based on the difference between the multidimensional coordinate values and the predetermined threshold. For example, for each particle, its position can be limited by coordinate values in the multidimensional space, and the selection of input features based on the initial feature vector is determined according to given rules.
[0106] For example, in a 148-dimensional space, the coordinates of each dimension are between 0 and 1. These coordinates can be seen as the probability that the feature corresponding to each coordinate value in the initial feature vector combination can be selected as the input feature. For instance, a threshold of 0.5 can be chosen. For a given particle position, only vectors corresponding to coordinate values not lower than 0.5 are selected as feature vector combinations, while vectors corresponding to coordinate values less than 0.5 are not selected. Utilizing these patterns in feature vector combinations, corresponding input features can be extracted from the training dataset to train a machine learning model. Furthermore, the machine learning model can be evaluated, and the resulting evaluation can be used as the fitness value in particle swarm optimization.
[0107] refer to Figure 3 The fitness value corresponding to the particle's position is determined through the following steps:
[0108] S201: Based on the particle position, determine the candidate feature vector combination corresponding to the particle position in the initial feature vector;
[0109] S202: Extract input features from the training dataset according to the candidate feature vector combinations, and train the machine learning model; and
[0110] S203: Determine the evaluation metrics for the trained machine learning model to obtain its fitness value.
[0111] As mentioned earlier, the machine learning models that can be used include supervised classification models. Specifically, the machine learning models include at least one of KNN, support vector machines, random forests, decision trees, and neural networks. Additionally, the evaluation metrics that can be used to determine the fitness value include at least one of accuracy, precision, recall, P-R curve, F1 score, confusion matrix, ROC, and AUC.
[0112] in,
[0113]
[0114]
[0115]
[0116] The F1 function is a commonly used metric; the F1 value is the harmonic mean of precision and recall.
[0117]
[0118]
[0119] In the above calculation formula, Positive (P) and Negative (N) are the predicted labels, and True (T) and False (F) represent the correctness of the prediction.
[0120] According to embodiments of this application, the AUC parameter of the ROC curve can be used as an evaluation metric. Those skilled in the art can use conventional methods to evaluate machine learning models and obtain corresponding AUC results, which will not be elaborated upon here.
[0121] According to embodiments of this application, the evaluation index can be directly used as the fitness value, or it can be used as the fitness value after mathematical calculation, so as to further improve the efficiency of optimization to obtain the optimal particle position. According to embodiments of this application, the AUC evaluation results of each particle are normalized, for example, by using Softmax transformation, so that the fitness value is in the range of 0 to 1.
[0122] Regarding the Softmax transformation, it is defined as follows: Given an array V, where Vi represents the i-th element in V, the Softmax value of this element is...
[0123]
[0124] After obtaining the fitness values, the positions of each particle can be updated based on their fitness values. The process of training the machine learning model to obtain fitness values is repeated until a particle position that meets the convergence condition is obtained or the optimal particle position is selected after reaching the highest number of iterations.
[0125] S220: Determine a predetermined combination of feature vectors based on the optimal particle position;
[0126] After obtaining the optimal particle position, according to predetermined rules, such as comparing with a predetermined threshold, vectors of the corresponding dimension are selected from the combination of initial feature vectors to obtain a predetermined combination of vectors used to construct the input features.
[0127] In addition, according to the embodiments of this application, the inventors proposed a new optimization algorithm based on the classic particle swarm optimization algorithm to improve optimization efficiency and achieve the technical effects of the present invention.
[0128] For details, please refer to Figure 4 and 13 According to embodiments of this application, particle swarm optimization includes:
[0129] In a multidimensional space, S310 initializes and generates multiple particles. The dimension of the multidimensional space is determined based on the dimension of the combination of the initial feature vectors.
[0130] The particle positions of multiple particles are updated iteratively at least once to obtain the optimal particle positions. Each of the at least one round of iterative updates includes:
[0131] S320: Determine the fitness value corresponding to the particle's position;
[0132] S330: Based on fitness values, multiple particles are classified into a first particle group and a second particle group, where the fitness value of the first particle group is higher than that of the second particle group; and
[0133] S340: For particles in the first particle swarm, update the particle position using the group optimal position, particle velocity, and individual optimal position. For particles in the second particle swarm, update the particle position using a guiding particle, which is determined in the first particle swarm.
[0134] Therefore, by employing particle classification in each update round, different update strategies are adopted for different particle groups, and the strategy of selecting the optimal or guiding particle in each round is diversified, which can achieve higher randomness in particle position updates and increase the probability of obtaining the optimal particle position. This strategy is also known as RF-PSO (Random Follower PSO).
[0135] According to embodiments of this application, classifying multiple particles into a first particle group and a second particle group includes:
[0136] The particles are ranked from best to worst based on their fitness; and
[0137] Particles ranked within a predetermined proportion are selected to form the first particle swarm, and the remaining particles are selected to form the second particle swarm.
[0138] Optionally, the pre-ordered proportion shall not exceed 50%, the optional proportion shall not exceed 40%, 30%, 20%, or 10%.
[0139] According to an embodiment of this application, after determining a first particle group and a second particle group, a guiding particle is selected in the first particle group to update the particles in the second particle group, wherein the guiding particle is determined through the following steps:
[0140] For each of at least a subset of particles in the first particle swarm, the attraction probability of the particle is determined according to the formula p(i) = f(m)rand(0, 1); and
[0141] The particle with the highest attraction probability is selected as the guiding particle.
[0142] in,
[0143] p(i) represents the attraction probability of particle i.
[0144] m represents the rank of particle i in the ranking.
[0145] f(m) represents a nonlinear function that is positively correlated with m.
[0146] rand(0, 1) represents a random number between 0 and 1.
[0147] Optionally, according to the formula p(i)=[1-e -a(m-1) rand(0, 1) determines the probability of attraction.
[0148] Here, 'a' represents a predetermined constant, and 'a > ln(M-1)', where M represents the number of particles in the first particle swarm. This increases the randomness of particle generation and the probability of obtaining the optimal result.
[0149] After determining the guiding particle, the particle positions in the second particle swarm are updated using the guiding particle. Specifically, according to embodiments of this application, the particle positions in the second particle swarm can be updated according to the following rules:
[0150]
[0151] in,
[0152] This indicates the position of particle i in the current second particle swarm.
[0153] This represents the updated particle position of particle i.
[0154] This indicates the position of the currently guiding particle m.
[0155] A represents a constant in the range of 0 to 1.
[0156] rand(0, 1) represents a random number between 0 and 1.
[0157] B im This represents the attraction of guiding particle m to particle i. The attraction is non-linearly negatively correlated with the distance between the positions of guiding particle m and particle i.
[0158] Optional,
[0159] The attractiveness level is determined according to the following formula:
[0160]
[0161] Among them, B im This represents the attraction of guiding particle m to particle i.
[0162] B0 represents a predetermined constant.
[0163] r im This represents the distance between the guiding particle m and particle i.
[0164] Furthermore, the particles in the first particle swarm and the particles in the second particle swarm employ different update strategies. According to embodiments of this application, the particles in the first particle swarm are updated according to the following rules:
[0165]
[0166]
[0167] in,
[0168] This indicates the current particle position of particle j.
[0169] This indicates the updated particle position of particle j.
[0170] ω represents a predetermined inertia factor. According to embodiments of this application, this inertia factor can be a fixed constant or a variable that gradually decreases with iteration.
[0171] This represents the velocity of particle j at present.
[0172] This represents the velocity of particle j after the update.
[0173] Two rand(0, 1) values independently represent random numbers between 0 and 1.
[0174] pbest j Let represent the individual optimal position of particle j, and
[0175] gbest j This represents the swarm optimal position of particle j.
[0176] It should be noted that the particle velocity was not used in the update of the second particle swarm, while it was used in the update of the first particle swarm. Those skilled in the art will understand that when a particle is first selected into the first particle swarm, an initial velocity is provided to that particle, and when a particle is not selected into the first particle swarm, its current velocity is recorded for use when it is subsequently selected again.
[0177] Furthermore, those skilled in the art will understand that rand(0, 1) used in this document are independent and are generated independently and randomly in each round of updates. For ease of description, different composites are not used to represent them.
[0178] refer to Figure 13 The particle swarm optimization in this application includes the following:
[0179] Select the number of particles in the particle swarm (100 according to one embodiment of this application), the spatial dimension of the particle swarm (148 according to one embodiment of this application, which is equal to the characteristic dimension of the protein sequence), and initialize the particle position and velocity. This can be achieved using normally distributed random numbers.
[0180] First, the fitness values are calculated for N (N is 100 according to one embodiment of this application). According to one embodiment of this application, the value of the fitness function is the AUC (one of the indicators for evaluating the quality of a model in machine learning) of the calculated RNA protein recognition result.
[0181] Then, based on the calculated 100 fitness values, the top M (or, according to one embodiment of this application, the top 20 with better fitness values) particles corresponding to the best fitness function values are selected as the direction followed by the other N-M particles. The specific update strategy is as follows:
[0182] For the i-th particle among the remaining N-M particles, its position at the next moment (the updated position) depends on the m-th particle (the guide particle) among the first M particles it selected. The selection strategy is as follows:
[0183] The formula for calculating the attraction probability of the m-th particle to the i-th particle is:
[0184] [1-e -a(m-1) ]*rand(0,1)
[0185] Where a > ln(M-1), 1 <= m <= M, after many experiments, the inventors chose a to be between 2 and 5, for example, between 3 and 5.
[0186] Calculate the attraction probability of the first M particles and select the particle with the highest probability as the guiding particle. This particle will then be the particle that particle i follows. The formula for calculating the attraction of particle m to particle i is:
[0187]
[0188]
[0189] Particle i will fly in the direction of m, and its position update formula is:
[0190]
[0191] Where A is a random number between [0, 1], and the other factor is a random factor following a uniform distribution. After numerous experiments, the inventors selected A to be between 0.5 and 0.8. Thus, they achieved...
[0192] Meanwhile, the particles corresponding to the 20 best fitness functions are updated with their positions and velocities according to the update strategy of the classic particle swarm optimization algorithm.
[0193] In short, updates should be performed according to the following rules:
[0194]
[0195]
[0196] in,
[0197] This indicates the current particle position of particle j.
[0198] This indicates the updated particle position of particle j.
[0199] ω represents the predetermined inertia factor.
[0200] This represents the velocity of particle j at present.
[0201] This represents the velocity of particle j after the update.
[0202] Two rand(0, 1) values independently represent random numbers between 0 and 1.
[0203] pbest j Let represent the individual optimal position of particle j, and
[0204] gbest j This represents the swarm optimal position of particle j.
[0205] According to embodiments of this application, the inertia factor can be a fixed constant or a variable that gradually decreases with iteration, as long as it is non-negative. The inventors have found that when ω is large, the global optimization ability is strong, but the local optimization ability is weak; conversely, when ω is small, the global optimization ability is weak, but the local optimization ability is strong. Therefore, according to embodiments of this application, a linearly decreasing weight strategy is adopted for ω. This improves the performance of the PSO algorithm.
[0206] Finally, update the best pbest in the system and the best gbest in the population until the optimal result is achieved or the number of iterations is reached, then stop updating. Otherwise, the above process is continuously updated and iterated to find the optimal solution.
[0207] Application scenarios
[0208] The feature point combination (e.g., 95 feature points) selected by the aforementioned Random Following Particle Swarm Optimization (RF-PSO) is input into the classifier to obtain the recognition result. This scheme uses the Support Vector Machine (SVM) algorithm as the classifier. Compared with feature-free methods, this significantly reduces the number of parameters and the model size, and effectively prevents overfitting. Furthermore, both the Genetic Algorithm (GA) and the classic Particle Swarm Optimization (PSO) algorithm improve the accuracy on the test set and converge to the optimal value faster during training.
[0209] The comparison results are shown in the table below:
[0210]
[0211] In the table above, GA represents the genetic algorithm, PSO represents the classic particle swarm algorithm, and RF-PSO represents the modified particle swarm algorithm mentioned in this scheme - the randomized tracking particle swarm algorithm.
[0212] Secondly, according to embodiments of this application, this application proposes a method for determining a combination of feature vectors, wherein the combination of feature vectors is used to predict the function of a protein.
[0213] refer to Figure 5 Methods for determining the combination of feature vectors include:
[0214] S410: Obtain the initial combination of protein feature vectors;
[0215] S420: Through particle swarm optimization, based on the particle position and its corresponding fitness value, the optimal particle position is determined by iteratively updating the particle position; and
[0216] S430 determines the optimal combination of eigenvectors based on the optimal particle position;
[0217] The fitness value corresponding to the particle's position is determined through the following steps:
[0218] Based on the particle position, candidate feature vector combinations corresponding to the particle position are determined from the initial feature vector combinations.
[0219] Using the training dataset, a machine learning model is trained by employing combinations of candidate feature vectors as input features; and
[0220] Determine the evaluation metrics for the trained machine learning model to obtain its fitness value.
[0221] The process of determining the combination of eigenvectors has already been described in detail in the first aspect, and will not be repeated here.
[0222] Thirdly, according to embodiments of this application, this application proposes a method for training a machine learning model for predicting the function of proteins.
[0223] refer to Figure 6 The method for training machine learning models includes:
[0224] S510: Obtain the initial feature vectors of multiple proteins, which have known functions;
[0225] S520: According to a predetermined feature combination, training features are selected from the initial feature vector; the predetermined feature combination is determined by the method in the second aspect; and
[0226] S530: Input the training features into the machine learning model and use known features as labels to train the machine learning model.
[0227] Fourthly, according to embodiments of this application, this application proposes a method for predicting gene function, referring to... Figure 7 The method includes:
[0228] S610: Based on gene sequences, determine the proteins encoded by genes; and
[0229] S620: Based on the method of the first aspect, predict the function of the protein.
[0230] Therefore, it is possible to predict gene function without expressing related proteins after obtaining the gene sequence.
[0231] Fifthly, according to embodiments of this application, this application proposes a device for predicting the function of proteins, referring to... Figure 8 It includes:
[0232] The initial feature vector acquisition module 110 is used to acquire the initial feature vector of the protein;
[0233] The input feature extraction module 120 is used to extract input features from the initial feature vector according to a predetermined combination of feature vectors;
[0234] The function prediction module 130 is used to input the input features into a trained machine learning model to obtain the function prediction results of the protein. The predetermined optimal feature vector combination is extracted from the initial feature vector through particle swarm optimization.
[0235] Sixthly, according to embodiments of this application, this application proposes an apparatus for determining a combination of feature vectors, which is used for protein function prediction, with reference to... Figure 9 The device includes:
[0236] The initial feature vector combination acquisition module 201 is used to acquire the initial feature vector combination of the protein;
[0237] Particle swarm optimization module 210 is used to determine the optimal particle position through particle swarm optimization, based on the particle position and the fitness value corresponding to the particle position, by iteratively updating the particle position; and
[0238] The optimal eigenvector combination determination module 220 is used to determine the optimal eigenvector combination based on the optimal particle position.
[0239] According to an embodiment of this application, the particle swarm optimization module 210 includes:
[0240] The candidate feature vector combination submodule 310 is used to determine, based on the particle position, a candidate feature vector combination corresponding to the particle position from the initial feature vector combination;
[0241] Model training submodule 320 uses the training dataset and candidate feature vector combinations as input features to train the machine learning model; and
[0242] The model evaluation submodule 330 is used to determine the evaluation metrics of the trained machine learning model in order to obtain the fitness value.
[0243] In a seventh aspect, according to embodiments of this application, this application proposes a computing device, characterized in that it includes: a processor and a memory; the memory for storing a computer program; and the processor for executing the computer program to implement the method as described above.
[0244] In a seventh aspect, according to embodiments of this application, this application proposes a computer-readable storage medium including computer instructions that, when executed by a computer, cause the computer to implement the method described above.
[0245] In summary, according to embodiments of this application, this application proposes a method for predicting protein function, a method for determining feature vector combinations, a method for training a machine learning model, a method for predicting gene function, an apparatus for predicting protein function, an apparatus for determining feature vector combinations, a computing device, and a computer-readable storage medium. This allows for the efficient extraction of effective feature vectors for protein function prediction from protein data, such as amino acid sequences and amino acid properties, thereby effectively training machine learning models. According to embodiments of this application, the size of the machine learning model can be reduced, the number of parameters requiring training can be decreased, or overfitting can be prevented. According to embodiments of this application, in the protein function prediction method proposed in this application, firstly, a dataset consisting of a training set, such as RNA-binding proteins and non-RNA-binding proteins, is encoded into fixed-length feature vectors to represent these protein data. Secondly, a feature selection method is used to select the optimal feature combination to obtain a new feature vector representing the protein, which significantly reduces the dimensionality compared to the original feature vector. Finally, a machine learning algorithm is used to identify proteins with specific functions, such as RNA-binding proteins. According to embodiments of this application, the present invention proposes a method for predicting protein function, such as predicting whether a protein can recognize nucleic acids, such as RNA or DNA. In other words, in some embodiments, the present invention proposes a method for identifying nucleic acid (RNA or DNA) binding proteins. According to some embodiments of this application, compared with a baseline model, the method according to the embodiments of this application can effectively reduce the number of model parameters and model size (specifically, the number of model parameters and size are significantly reduced compared to the original model) while ensuring model accuracy, thus greatly reducing the identification time of nucleic acid binding proteins. Therefore, according to specific embodiments of this application, the present invention proposes a method for identifying RNA binding proteins, which, compared with traditional model methods, can greatly reduce the number of model parameters and model size, thus enabling faster identification of RNA binding proteins, significantly improving the processing efficiency of machine learning models, removing the influence of redundant features, and improving accuracy. Simultaneously, a new feature selection optimization method is also proposed, which has a faster convergence speed and can find the optimal solution more quickly.
[0246] Figure 14 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application.
[0247] like Figure 14As shown, the electronic device 600 includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from the storage portion 602 into a random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of the electronic device 600. The CPU 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0248] The following components are connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 610 as needed so that computer programs read from it can be installed into storage section 608 as needed.
[0249] Specifically, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a machine-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611. When the computer program is executed by central processing unit (CPU) 601, it performs the functions defined in the electronic device of this application.
[0250] It should be noted that the computer-readable medium shown in this application can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example, but not limited to, an electronic device, apparatus, or device that is electrical, magnetic, optical, electromagnetic, infrared, or semiconductor, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this application, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an electronic device, apparatus, or device that executes instructions. In this application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit programs for use by or in connection with an electronic device, apparatus, or device whose instructions are executed. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0251] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of processing and receiving devices, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based electronic device that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0252] The units or modules described in the embodiments of this application can be implemented in software or hardware. The described units or modules can also be housed in a processor, which executes the program to implement the scheme of this application.
[0253] The above description is merely a preferred embodiment of this application and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure in this application is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the foregoing disclosed concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this application.
Claims
1. A method for predicting the function of proteins, characterized in that, include: Obtain the initial feature vector of the protein; Input features are extracted from the initial feature vector according to a predetermined combination of feature vectors; The input features are fed into a trained machine learning model to obtain the functional prediction result of the protein; wherein the predetermined feature vector combination is determined from the initial feature vector through particle swarm optimization. The particle swarm optimization includes: Based on the particle position and the fitness value corresponding to the particle position, the optimal particle position is determined by iteratively updating the particle position; and based on the optimal particle position, the predetermined feature vector combination is determined. The particle swarm optimization includes: In a multidimensional space, multiple particles are initialized and generated, the dimension of which is determined based on the dimension of the combination of the initial feature vectors; and the particle positions of the multiple particles are iteratively updated at least once to obtain the optimal particle position; wherein each of the at least one iterative update includes: Determine the fitness value corresponding to the particle's position; Based on the fitness value, the multiple particles are classified into a first particle group and a second particle group, wherein the fitness value of the first particle group is better than the fitness value of the second particle group. For each particle in the first particle swarm, its position is updated using the swarm's optimal position, the particle's velocity, and its individual optimal position; and For the particles in the second particle swarm, the particle positions of the particles are updated using a guiding particle, wherein the guiding particle is determined in the first particle swarm. The guiding particle is determined through the following steps: For each of at least a portion of the particles in the first particle swarm, according to the formula Determine the attraction probability of the particle; and select the particle with the highest attraction probability as the guiding particle. in, Let represent the attraction probability of particle i. This indicates the rank of particle i in the ranking. This represents a nonlinear function that is positively correlated with m. Represents a random number between 0 and 1; the attraction probability is calculated according to the formula It is confirmed that, among them, Represents a predetermined constant, and , This represents the number of particles in the first particle swarm. For the particles in the second particle swarm, the particle positions are updated according to the following rules: in, This indicates the position of particle i in the current second particle swarm. This indicates the updated position of particle i. This represents the position of the currently guiding particle m, where A represents a constant in the range of 0 to 1. Represents a random number between 0 and 1, and This represents the attraction of the guiding particle m to the particle i, and the attraction is non-linearly negatively correlated with the particle position distance between the guiding particle m and the particle i; The attractiveness is determined according to the following formula: in, This represents the attraction of the guiding particle m to the particle i. Represents a predetermined constant. This represents the particle position distance between the guiding particle m and the particle i; The particles in the first particle swarm are updated according to the following rules: in, The position of particle j is indicated by the particle's position. This represents the updated position of particle j, where ω represents the predetermined inertia factor. This represents the velocity of the current particle j. This represents the velocity of particle j after the update, two... Each of these can independently represent a random number between 0 and 1. Describes the optimal position of the individual particle j, and This represents the optimal position of particle j in the population.
2. The method according to claim 1, characterized in that, The functional prediction includes predicting whether the protein can bind to nucleic acids; wherein the nucleic acid is RNA.
3. The method according to claim 1, characterized in that, The fitness value corresponding to the particle position is determined through the following steps: Based on the particle position, a candidate feature vector combination corresponding to the particle position is determined from the initial feature vector; Based on the combination of candidate feature vectors, input features are extracted from the training dataset to train the machine learning model; and Determine the evaluation metric for the trained machine learning model to obtain the fitness value; The particle position is determined by multidimensional coordinate values, and the candidate feature vector combination is selected from the initial feature vector combination based on the difference between the multidimensional coordinate values and the predetermined threshold, according to a predetermined threshold.
4. The method according to any one of claims 1 to 3, characterized in that, The initial feature vector is determined based on the amino acid sequence of the protein, and the combination of the initial feature vectors includes: The first multidimensional feature vector is obtained by CTD encoding of the amino acid sequence based on the hydrophobicity, polarity, normalized van der Waals volume, and polarizability of the amino acid; and The second multidimensional feature vector is obtained by encoding the amino acid sequence in a triplet manner based on the polarity and charge of the amino acid.
5. The method according to claim 1, characterized in that, Classifying the plurality of particles into a first particle group and a second particle group includes: The particles are ranked from best to worst according to their fitness; and The particles whose ranking falls within a predetermined proportion are selected to form the first particle swarm, and the remaining particles are selected to form the second particle swarm, wherein the predetermined proportion does not exceed 50%.
6. The method according to claim 1, characterized in that, The machine learning model includes a supervised classification model; the machine learning model includes at least one of KNN, support vector machine, random forest, decision tree, and neural network, and / or The evaluation metrics include at least one of accuracy, precision, recall, PR curve, F1 score, confusion matrix, ROC, and AUC.
7. A method for determining a combination of feature vectors, characterized in that, The feature vector combination is used to predict the function of a protein, and the method includes: Obtain the initial feature vector combination of the protein; Through particle swarm optimization, the optimal particle position is determined by iteratively updating the particle position based on the particle position and the fitness value corresponding to the particle position; and the optimal feature vector combination is determined based on the optimal particle position. The particle swarm optimization includes: In a multidimensional space, multiple particles are initialized and generated, the dimension of which is determined based on the dimension of the combination of the initial feature vectors; and the particle positions of the multiple particles are iteratively updated at least once to obtain the optimal particle position; wherein each of the at least one iterative update includes: Determine the fitness value corresponding to the particle's position; Based on the fitness value, the multiple particles are classified into a first particle group and a second particle group, wherein the fitness value of the first particle group is better than the fitness value of the second particle group. For each particle in the first particle swarm, its position is updated using the swarm's optimal position, the particle's velocity, and its individual optimal position; and For the particles in the second particle swarm, the particle positions of the particles are updated using a guiding particle, wherein the guiding particle is determined in the first particle swarm. The fitness value corresponding to the particle position is determined through the following steps: Based on the particle position, a candidate feature vector combination corresponding to the particle position is determined from the initial feature vector combination; Using the training dataset, the candidate feature vector combination is used as input features to train the machine learning model; and the evaluation index of the trained machine learning model is determined to obtain the fitness value. The guiding particle is determined through the following steps: For each of at least a portion of the particles in the first particle swarm, according to the formula Determine the attraction probability of the particle; and select the particle with the highest attraction probability as the guiding particle. in, Let represent the attraction probability of particle i. This indicates the rank of particle i in the ranking. This represents a nonlinear function that is positively correlated with m. Represents a random number between 0 and 1; the attraction probability is calculated according to the formula It is confirmed that, among them, Represents a predetermined constant, and , This represents the number of particles in the first particle swarm. For the particles in the second particle swarm, the particle positions are updated according to the following rules: in, This indicates the position of particle i in the current second particle swarm. This indicates the updated position of particle i. This represents the position of the currently guiding particle m, where A represents a constant in the range of 0 to 1. Represents a random number between 0 and 1, and This represents the attraction of the guiding particle m to the particle i, and the attraction is non-linearly negatively correlated with the particle position distance between the guiding particle m and the particle i; The attractiveness is determined according to the following formula: in, This represents the attraction of the guiding particle m to the particle i. Represents a predetermined constant. This represents the particle position distance between the guiding particle m and the particle i; The particles in the first particle swarm are updated according to the following rules: in, The position of particle j is indicated by the particle's position. This represents the updated position of particle j, where ω represents the predetermined inertia factor. This represents the velocity of the current particle j. This represents the velocity of particle j after the update, two... Each of these can independently represent a random number between 0 and 1. Describes the optimal position of the individual particle j, and This represents the optimal position of particle j in the population.
8. A method for training a machine learning model, characterized in that, The machine learning model is used to predict the function of proteins, and the method includes: Obtain initial feature vectors for multiple proteins, which have known functions; Training features are selected from the initial feature vector according to a predetermined feature combination, wherein the predetermined feature combination is determined by the method described in claim 7; and The training features are input into the machine learning model, and the known functions are used as labels to train the machine learning model.
9. A method for predicting gene function, characterized in that: Based on the gene sequence, the protein encoded by the gene is determined; The method according to any one of claims 1 to 6 is used to predict the function of the protein.
10. A device for predicting the function of proteins, characterized in that, include: An initial feature vector acquisition module is used to acquire the initial feature vector of the protein; The input feature extraction module is used to extract input features from the initial feature vector according to a predetermined combination of feature vectors; The function prediction module is used to input the input features into a trained machine learning model to obtain the function prediction result of the protein; wherein, the predetermined optimal feature vector combination is extracted from the initial feature vector through particle swarm optimization; The particle swarm optimization includes: Based on the particle position and the fitness value corresponding to the particle position, the optimal particle position is determined by iteratively updating the particle position; and based on the optimal particle position, the predetermined feature vector combination is determined. The particle swarm optimization includes: In a multidimensional space, multiple particles are initialized and generated, the dimension of which is determined based on the dimension of the combination of the initial feature vectors; and the particle positions of the multiple particles are iteratively updated at least once to obtain the optimal particle position; wherein each of the at least one iterative update includes: Determine the fitness value corresponding to the particle's position; Based on the fitness value, the multiple particles are classified into a first particle group and a second particle group, wherein the fitness value of the first particle group is better than the fitness value of the second particle group. For each particle in the first particle swarm, its position is updated using the swarm's optimal position, the particle's velocity, and its individual optimal position; and For the particles in the second particle swarm, the particle positions of the particles are updated using a guiding particle, wherein the guiding particle is determined in the first particle swarm. The guiding particle is determined through the following steps: For each of at least a portion of the particles in the first particle swarm, according to the formula Determine the attraction probability of the particle; and select the particle with the highest attraction probability as the guiding particle. in, Let represent the attraction probability of particle i. This indicates the rank of particle i in the ranking. This represents a nonlinear function that is positively correlated with m. Represents a random number between 0 and 1; the attraction probability is calculated according to the formula It is confirmed that, among them, Represents a predetermined constant, and , This represents the number of particles in the first particle swarm. For the particles in the second particle swarm, the particle positions are updated according to the following rules: in, This indicates the position of particle i in the current second particle swarm. This indicates the updated position of particle i. This represents the position of the currently guiding particle m, where A represents a constant in the range of 0 to 1. Represents a random number between 0 and 1, and This represents the attraction of the guiding particle m to the particle i, and the attraction is non-linearly negatively correlated with the particle position distance between the guiding particle m and the particle i; The attractiveness is determined according to the following formula: in, This represents the attraction of the guiding particle m to the particle i. Represents a predetermined constant. This represents the particle position distance between the guiding particle m and the particle i; The particles in the first particle swarm are updated according to the following rules: in, The position of particle j is indicated by the particle's position. This represents the updated position of particle j, where ω represents the predetermined inertia factor. This represents the velocity of the current particle j. This represents the velocity of particle j after the update, two... Each of these can independently represent a random number between 0 and 1. Describes the optimal position of the individual particle j, and This represents the optimal position of particle j in the population.
11. A device for determining a combination of feature vectors, characterized in that, The feature vector combination is used for protein function prediction, and the device includes: An initial feature vector combination acquisition module is used to acquire the initial feature vector combination of the protein; The particle swarm optimization module is used to determine the optimal particle position by iteratively updating the particle position based on the particle position and the fitness value corresponding to the particle position through particle swarm optimization; and The optimal feature vector combination determination module is used to determine the optimal feature vector combination based on the optimal particle position. in, The particle swarm optimization module includes: The candidate feature vector combination submodule is used to determine, based on the particle position, a candidate feature vector combination corresponding to the particle position from the initial feature vector combination; The model training submodule uses the training dataset and the candidate feature vector combination as input features to train the machine learning model; and The model evaluation submodule is used to determine the evaluation metrics of the trained machine learning model in order to obtain the fitness value; The particle swarm optimization includes: In a multidimensional space, multiple particles are initialized and generated, the dimensions of which are determined based on the dimensions of the combination of the initial feature vectors; and The particle positions of the plurality of particles are updated iteratively at least once to obtain the optimal particle position; wherein each of the at least one round of iterative updates includes: Determine the fitness value corresponding to the particle's position; Based on the fitness value, the multiple particles are classified into a first particle group and a second particle group, wherein the fitness value of the first particle group is better than the fitness value of the second particle group. For each particle in the first particle swarm, its position is updated using the swarm's optimal position, the particle's velocity, and its individual optimal position; and For the particles in the second particle swarm, the particle positions of the particles are updated using a guiding particle, wherein the guiding particle is determined in the first particle swarm. The guiding particle is determined through the following steps: For each of at least a portion of the particles in the first particle swarm, according to the formula Determine the attraction probability of the particle; and select the particle with the highest attraction probability as the guiding particle. in, Let represent the attraction probability of particle i. This indicates the rank of particle i in the ranking. This represents a nonlinear function that is positively correlated with m. Represents a random number between 0 and 1; the attraction probability is calculated according to the formula It is confirmed that, among them, Represents a predetermined constant, and , This represents the number of particles in the first particle swarm. For the particles in the second particle swarm, the particle positions are updated according to the following rules: in, This indicates the position of particle i in the current second particle swarm. This indicates the updated position of particle i. This represents the position of the currently guiding particle m, where A represents a constant in the range of 0 to 1. Represents a random number between 0 and 1, and This represents the attraction of the guiding particle m to the particle i, and the attraction is non-linearly negatively correlated with the particle position distance between the guiding particle m and the particle i; The attractiveness is determined according to the following formula: in, This represents the attraction of the guiding particle m to the particle i. Represents a predetermined constant. This represents the particle position distance between the guiding particle m and the particle i; The particles in the first particle swarm are updated according to the following rules: in, The position of particle j is indicated by the particle's position. This represents the updated position of particle j, where ω represents the predetermined inertia factor. This represents the velocity of the current particle j. This represents the velocity of particle j after the update, two... Each of these can independently represent a random number between 0 and 1. Describes the optimal position of the individual particle j, and This represents the optimal position of particle j in the population.
12. A computing device, characterized in that, include: Processor and memory; The memory is used to store computer programs; The processor is configured to execute the computer program to implement the method as described in any one of claims 1 to 9.
13. A computer-readable storage medium, characterized in that, The storage medium includes computer instructions that, when executed by a computer, cause the computer to perform the method as described in any one of claims 1 to 9.
Citation Information
Patent Citations
Underwater target tracking method based on particle filtering
CN110765897A
Protein prediction model generation method, device and equipment and storage medium
CN111048145A
Mouse Down's syndrome key protein screening method based on gene-enhanced skeleton particle swarm optimization feature selection algorithm
CN111354415A
