Homologous protein search method based on scale-invariant feature transformation and pre-filtering

By using SIFT and pre-filtering methods in the protein structure alignment tool, the characteristic points of the protein structure are extracted and high-dimensional spherical mapping is carried out, which solves the problem of inefficient alignment in the prior art and achieves efficient and fast protein structure alignment.

CN119399500BActive Publication Date: 2025-04-08TSINGHUA UNIVERSITY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510003657.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-02
Publication Date
2025-04-08
Estimated Expiration
2045-01-02

AI Technical Summary

Technical Problem

Existing protein structure comparison tools are inefficient when processing large-scale data, making it difficult to take into account both the accuracy and speed of comparison, and the resource occupies a large amount of resources, making it difficult to promote and apply.

Method used

Homology protein search method based on scale-invariant feature transformation (SIFT) and pre-filtering is used to extract the -carbon atom coordinates of the protein structure, calculate the distance matrix, extract SIFT feature points, build a feature description vector matrix, and map it to the high-dimensional sphere for pre-filtering and precise alignment.

Benefits of technology

While maintaining the accuracy of the comparison, it significantly improves the comparison speed and reduces the use of computing resources. It overcomes the shortcomings of difficulty in taking into account efficiency and accuracy in the existing technology. It is suitable for fast search and efficient comparison of large-scale protein databases.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119399500B_ABST
    Figure CN119399500B_ABST
Patent Text Reader

Abstract

The present application relates to the field of bioinformatics technology, and in particular to a method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering, wherein the method comprises: obtaining the carbon-atom coordinates in the protein structure to be compared, calculating the corresponding distance matrix, and extracting the characteristic description vector matrix of the distance matrix using the SIFT algorithm, mapping the matrix to a high-dimensional sphere, and quickly screening out candidate protein structures that meet the pre-filtering conditions from a large-scale protein database through a pre-filtering algorithm of spherical partitioning, and performing GPU-accelerated precise comparison of the characteristic description vector matrix of the protein structure to be compared with the candidate protein structure to generate a protein structure comparison result, and then determining the homologous protein corresponding to the protein to be compared. As a result, the present application improves the comparison speed while maintaining the comparison accuracy, overcomes the insufficiency of the prior art that efficiency and accuracy are difficult to take into account, and is suitable for rapid search and efficient comparison of large-scale protein databases.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of bioinformatics, and in particular to a homologous protein search method based on scale-invariant feature transformation and pre-filtering. Background Art

[0002] With the rapid development of artificial intelligence-driven protein structure prediction tools (such as AlphaFold2, RoseTTAFold, and ESMFold), billions of protein structures have been obtained in the field of bioinformatics.

[0003] However, existing protein structure alignment tools (such as Dali, CE align, etc.) still have the problem of low efficiency when processing large-scale data, such as Figure 1 Specifically, Figure 1 As shown in (a), this is a speed comparison of the mainstream algorithms Foldseek algorithm (including Foldseek algorithm with pre-filter and Foldseek algorithm without pre-filter), Dali (Distance matrix alignment) algorithm, CE (Combinatorial Extension) algorithm and ADAMS (Align DistAnce Matrices with SIFT, using scale-invariant feature transform algorithm to align distance matrices) algorithm. The Dali algorithm may take months or even years for a single search of a protein database with hundreds of millions of proteins. The new generation of structural alignment algorithms, such as Foldseek and Progres, have improved the speed, but the accuracy has decreased when dealing with proteins with highly flexible regions. For example, the Foldseek algorithm improves the speed by simplifying the structural alignment to a sequence alignment. However, when dealing with proteins with highly flexible regions, such as Figure 1 As shown in (b), the Foldseek algorithm may make incorrect alignments or miss important homologous structures, where Figure 1 (b) The accuracy of structural alignment of human-C. elegans homologous proteins using Foldseek algorithm and ADAMS algorithm is compared, where: Figure 1 The Venn diagram in (b) shows the number of correct alignments of the two algorithms, and the histogram shows the length of the disordered region of the protein in the correct alignment results. Figure 1 As can be seen from (b) in the figure, ADAMS can better handle the structural alignment of long disordered regions.

[0004] Furthermore, if Figure 1 (c) and Figure 1As shown in (d), by statistically analyzing the accuracy of ADAMS and Foldseek alignments for proteins with disordered regions of different lengths, the protein structure alignment tool ADAMS has solved the noise problem caused by highly flexible regions to a certain extent, and is similar to Foldseek in terms of structure search speed. However, its data pre-filter mechanism is not efficient, resulting in the need to traverse the entire database when performing structural search and alignment on large-scale databases. This process requires a large GPU (Graphics Processing Unit) video memory and memory resources to pre-store the results, which consumes a lot of computing resources and time.

[0005] In summary, in the related technologies, it is difficult to take into account both the comparison accuracy and the comparison speed at the same time, and the resource occupation is relatively serious, making it difficult to promote and apply, and needs to be improved. Summary of the invention

[0006] The present invention provides a homologous protein search method based on scale-invariant feature transformation and pre-filtering to solve the technical problems in related technologies that it is difficult to take into account both the comparison accuracy and the comparison speed, and the resource occupation is relatively serious and it is difficult to promote and apply.

[0007] In a first aspect, an embodiment of the present invention provides a method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering, comprising the following steps: extracting a protein structure to be compared and a protein structure of each protein structure to be screened from a preset large-scale protein database; - carbon atom coordinates, and based on the -Calculate the corresponding distance matrix based on the carbon atom coordinates, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to a target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all protein structures to be screened, and determine whether the intersection meets a preset pre-filtering condition according to a preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and screen out at least one candidate protein structure in the large-scale protein database according to the judgment result; perform GPU-accelerated precise comparison of the feature description vector matrices of the protein structure to be compared and the at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared according to the comparison result.

[0008] Optionally, in one embodiment of the present application, the protein structure to be compared is extracted and each protein structure to be screened in a preset large-scale protein database is extracted. - carbon atom coordinates, and based on the -Calculate the corresponding distance matrix of carbon atom coordinates, extract multiple SIFT feature points from the distance matrix, and construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, including: extracting the - Carbon atom coordinates, and according to the - Carbon atom coordinates to construct the protein structure corresponding to - carbon atom coordinate matrix; calculate the - Every two carbon atoms in the coordinate matrix -Euclidean distance between carbon atom coordinates, based on the -The distance matrix is ​​established by the Euclidean distance between the carbon atom coordinates; a plurality of SIFT feature points of each scale of the distance matrix are extracted by a preset scale-invariant feature transformation algorithm, and each SIFT feature point in the plurality of SIFT feature points is represented by a target dimension vector to obtain a feature description vector corresponding to each SIFT feature point, and the module length of the feature description vector is normalized to obtain a feature description vector matrix corresponding to the protein structure to be compared and each protein structure to be screened.

[0009] Optionally, in one embodiment of the present application, mapping the feature description vector matrix of the protein structure to be compared and each protein structure to be screened to a target high-dimensional sphere to determine the block identifier of the feature description vector matrix of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere includes: dividing the positive semi-axis plane of each pair of coordinate axes in the target high-dimensional sphere of the target dimension into a plurality of sector-shaped regions, and calculating the center angle of each sector-shaped region; dividing the target high-dimensional sphere into a plurality of sub-regions according to the center angle, and representing the block identifier corresponding to each sub-region by a multi-digit pentad number; mapping each feature description vector of the protein structure to be compared and each protein structure to be screened to a corresponding sub-region of the target high-dimensional sphere to determine the block identifier of each feature description vector of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere, and converting the multi-digit pentad number block identifier of the protein structure to be compared and each protein structure to be screened into a decimal number.

[0010] Optionally, in one embodiment of the present application, the step of obtaining the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened, and judging whether the intersection satisfies a preset pre-filtering condition according to a preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and screening out at least one candidate protein structure in the large-scale protein database according to the judgment result, includes: performing a deduplication operation on all decimal block identifiers of each protein structure, and calculating the intersection of the deduplicated block identifier of the protein structure to be screened and the deduplicated block identifier of the protein structure to be compared; judging whether the number of block identifiers in the intersection is greater than a preset pre-filtering threshold, if the number of block identifiers in the intersection is greater than the pre-filtering threshold, determining the corresponding protein structure to be screened as a candidate protein structure, otherwise, filtering the protein structure to be screened.

[0011] Optionally, in one embodiment of the present application, the GPU-accelerated precise comparison of the feature description vector matrix of the protein structure to be compared with the at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determining the homologous protein structure corresponding to the protein structure to be compared based on the comparison result, includes: based on the feature description vector matrix of the protein structure to be compared and each candidate protein structure in the at least one candidate protein structure, calculating the cosine similarity of each SIFT feature pair between the protein structure to be compared and each candidate protein structure by matrix dot multiplication to obtain a cosine similarity matrix of the protein structure to be compared and each candidate protein structure; comparing the cosine similarity matrix; and a preset similarity threshold, and when the cosine similarity is greater than the similarity threshold, it is determined that the SIFT feature pair corresponding to the cosine similarity meets the preset matching condition, and each SIFT feature of the protein structure to be compared is matched with the most similar SIFT feature in each candidate protein structure to calculate the matching score, matching number and similarity between the protein structure to be compared and each candidate protein structure; the matching scores and matching numbers of the protein structure to be compared and all candidate protein structures are normalized, and the normalized matching scores and matching numbers are added to obtain a total matching score, and the homologous protein structure corresponding to the protein to be compared is determined according to the total matching score or the similarity ranking.

[0012] Optionally, in one embodiment of the present application, the calculation expression of the cosine similarity matrix of all SIFT feature pairs between the protein structure to be compared and each candidate protein structure is:

[0013]

[0014] in, A feature description vector matrix of a rows and 128 columns representing the protein structures to be compared; The transpose of a matrix of b rows and 128 columns of feature description vectors representing the candidate protein structure; Represents the cosine similarity matrix with a rows and b columns.

[0015] The second aspect of the present invention provides a homologous protein search device based on scale-invariant feature transformation and pre-filtering, comprising: a database processing module for extracting protein structures to be compared and each protein structure to be screened in a preset large-scale protein database; - carbon atom coordinates, and based on the - carbon atom coordinates to calculate the corresponding distance matrix, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to a target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; a pre-filtering module, used to obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all protein structures to be screened, and determine whether the intersection meets the preset pre-filtering condition according to a preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and screen out at least one candidate protein structure in the large-scale protein database according to the judgment result; an accelerated comparison module, used to perform GPU-accelerated precise comparison of the feature description vector matrices of the protein structure to be compared with the at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared according to the comparison result.

[0016] Optionally, in one embodiment of the present application, the database processing module includes: an extraction unit for extracting each amino acid in the protein structure. - Carbon atom coordinates, and according to the - Carbon atom coordinates to construct the protein structure corresponding to - Carbon atom coordinate matrix; distance matrix calculation unit, used to calculate the - Every two carbon atoms in the coordinate matrix -Euclidean distance between carbon atom coordinates, based on the -Euclidean distance between carbon atom coordinates to establish the distance matrix; a matrix construction unit is used to extract multiple SIFT feature points of each scale of the distance matrix using a preset scale-invariant feature transformation algorithm, and represent each SIFT feature point in the multiple SIFT feature points by a target dimension vector to obtain a feature description vector corresponding to each SIFT feature point, and normalize the module length of the feature description vector to obtain a feature description vector matrix corresponding to the protein structure to be compared and each protein structure to be screened.

[0017] Optionally, in one embodiment of the present application, the database processing module further includes: an equal division unit, used to divide the positive semi-axis plane of each pair of coordinate axes in the target high-dimensional sphere of the target dimension into a plurality of sector-shaped areas, and calculate the central angle of each sector-shaped area; a characterization unit, used to divide the target high-dimensional sphere into a plurality of sub-areas according to the central angle, and characterize the block identifier corresponding to each sub-area by a multi-digit five-digit number; a mapping unit, used to map each feature description vector of the protein structure to be compared and each protein structure to be screened to the corresponding sub-area of ​​the target high-dimensional sphere, so as to determine the block identifier of each feature description vector of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere, and convert the multi-digit five-digit number block identifier of the protein structure to be compared and each protein structure to be screened into a decimal number.

[0018] Optionally, in one embodiment of the present application, the pre-filtering module includes: a deduplication unit, used to perform a deduplication operation on all decimal block identifiers of each protein structure, and calculate the intersection of the deduplicated block identifiers of the protein structure to be screened and the deduplicated block identifiers of the protein structure to be compared; a judgment unit, used to judge whether the number of block identifiers in the intersection is greater than a preset pre-filtering threshold, if the number of block identifiers in the intersection is greater than the pre-filtering threshold, the corresponding protein structure to be screened is determined as a candidate protein structure, otherwise, the protein structure to be screened is filtered.

[0019] Optionally, in one embodiment of the present application, the accelerated comparison module includes: a cosine similarity calculation unit, which is used to calculate the cosine similarity of each SIFT feature pair between the protein structure to be compared and each candidate protein structure in the at least one candidate protein structure based on the feature description vector matrix of the protein structure to be compared and each candidate protein structure by matrix dot multiplication to obtain the cosine similarity matrix of the protein structure to be compared and each candidate protein structure; a matching unit, which is used to compare the cosine similarity with a preset similarity threshold, and when the cosine similarity is greater than the similarity threshold, determine the cosine similarity. The corresponding SIFT feature pairs satisfy the preset matching conditions, and each SIFT feature of the protein structure to be compared is matched with the most similar SIFT feature in each candidate protein structure to calculate the matching score, matching number and similarity between the protein structure to be compared and each candidate protein structure; a search unit is used to normalize the matching scores and matching numbers of the protein structure to be compared with all candidate protein structures, and add the normalized matching scores and matching numbers to obtain a total matching score, and determine the homologous protein structure corresponding to the protein to be compared according to the total matching score or the similarity ranking.

[0020] Optionally, in one embodiment of the present application, the calculation expression of the cosine similarity matrix of all SIFT feature pairs between the protein structure to be compared and each candidate protein structure is:

[0021]

[0022] in, A feature description vector matrix of a rows and 128 columns representing the protein structures to be compared; The transpose of a matrix of b rows and 128 columns of feature description vectors representing the candidate protein structure; Represents the cosine similarity matrix with a rows and b columns.

[0023] Therefore, the embodiments of the present application have the following beneficial effects:

[0024] In the present embodiment, the protein structure to be compared is extracted from a preset large-scale protein database and each protein structure to be screened is extracted. - Carbon atom coordinates, and based on -Calculate the corresponding distance matrix based on the carbon atom coordinates, extract multiple SIFT (Scale Invariant Feature Transform) feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to the target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened, and determine whether the intersection meets the preset pre-filtering condition according to a preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and screen out at least one candidate protein structure in a large-scale protein database according to the judgment result; perform GPU-accelerated precise comparison of the feature description vector matrices of the protein structure to be compared with at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared according to the comparison result. The present application can significantly improve the comparison speed while maintaining the comparison accuracy, and reduce the computing resource usage, thus overcoming the shortcomings of the prior art in that it is difficult to balance efficiency and accuracy, and is suitable for fast search and efficient comparison of large-scale protein databases. Thus, the technical problems in the related art that it is difficult to balance the comparison accuracy and comparison speed, and the resource usage is relatively serious, making it difficult to promote and apply are solved.

[0025] Additional aspects and advantages of the present invention will be given in part in the following description and in part will be obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] The above and / or additional aspects and advantages of the present invention will become apparent and easily understood from the following description of the embodiments in conjunction with the accompanying drawings, in which:

[0027] Figure 1 Schematic diagram of the performance comparison between existing protein structure alignment algorithms;

[0028] Figure 1 (a) is a schematic diagram for comparing the running speeds of the Foldseek algorithm (including the Foldseek algorithm with a prefilter and the Foldseek algorithm without a prefilter), the ADAMS algorithm, the Dali algorithm, and the CE algorithm;

[0029] Figure 1 (b) is a schematic diagram showing the accuracy comparison of the structural alignment of human-Caenorhabditis elegans homologous proteins using the Foldseek algorithm and the ADAMS algorithm;

[0030] Figure 1 (c) is a schematic diagram of the distribution of the length of the intrinsic disordered region in the unique positive results of the ADAMS algorithm and the Foldseek algorithm;

[0031] Figure 1 (d) is a diagram showing the statistical results of the alignment accuracy of the ADAMS algorithm and the Foldseek algorithm for proteins with disordered regions of different lengths;

[0032] Figure 2 A flowchart of a method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering according to an embodiment of the present application;

[0033] Figure 3 A schematic diagram of extracting SIFT feature points of various scales of a distance matrix by using a scale-invariant feature transformation algorithm according to an embodiment of the present application;

[0034] Figure 4 It is a schematic diagram of the principle of a spherical partition mapper according to an embodiment of the present application;

[0035] Figure 5 Schematic diagram of the execution flow of the ADAMS 2.0 algorithm according to one embodiment of the present application;

[0036] Figure 6 A schematic diagram of a flow chart of a pre-filter performing a pre-filtering operation according to an embodiment of the present application;

[0037] Figure 7 A schematic diagram showing a speed comparison of searching for cdh-10 and TUBA1 in the protein database SwissProtein using the Foldseek algorithm (including the Foldseek algorithm with a prefilter and the Foldseek algorithm without a prefilter), the ADAMS algorithm, and the ADAMS 2.0 algorithm according to an embodiment of the present application;

[0038] Figure 8 A schematic diagram of a visualization result according to an embodiment of the present application;

[0039] Fig. 9 A schematic diagram of the structure of a homologous protein search device based on scale-invariant feature transformation and pre-filtering provided according to an embodiment of the present application. DETAILED DESCRIPTION

[0040] Embodiments of the present invention are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present invention, and should not be construed as limiting the present invention.

[0041] The following describes the homologous protein search method based on scale-invariant feature transformation and pre-filtering of the embodiment of the present application with reference to the accompanying drawings. In view of the technical problems that it is difficult to take into account both the comparison accuracy and the comparison speed in the related technologies mentioned in the above background technology, and the resource occupation is relatively serious, and it is difficult to promote and apply, the present application provides a homologous protein search method based on scale-invariant feature transformation and pre-filtering, in which the protein structure to be compared and each protein structure to be screened in the preset large-scale protein database are extracted. - Carbon atom coordinates, and based on - carbon atom coordinates, calculate the corresponding distance matrix, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to the target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all protein structures to be screened, and determine whether the intersection meets the preset pre-filtering condition according to a preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and screen out at least one candidate protein structure in a large-scale protein database according to the judgment result; perform GPU-accelerated precise comparison of the feature description vector matrices of the protein structure to be compared with at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared according to the comparison result. The present application can significantly improve the comparison speed while maintaining the comparison accuracy, and reduce the computing resource usage, thus overcoming the shortcomings of the prior art in that it is difficult to balance efficiency and accuracy, and is suitable for fast search and efficient comparison of large-scale protein databases. Thus, the technical problems in the related art that it is difficult to balance the comparison accuracy and comparison speed, and the resource usage is relatively serious, making it difficult to promote and apply are solved.

[0042] Specifically, Figure 2 A schematic flow chart of a homologous protein search method based on scale-invariant feature transformation and pre-filtering provided in an embodiment of the present application.

[0043] like Figure 2As shown, the homologous protein search method based on scale-invariant feature transformation and pre-filtering includes the following steps:

[0044] In step S201, the protein structure to be compared and the protein structure of each protein structure to be screened in the preset large-scale protein database are extracted. - Carbon atom coordinates, and based on -Calculate the corresponding distance matrix based on the carbon atom coordinates, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to the target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere.

[0045] Those skilled in the art should understand that proteins are composed of tens to tens of thousands of amino acids, which are usually described by their all-atom three-dimensional coordinates. Therefore, the present application embodiment can first process the protein structure in a large-scale protein database. Specifically, the present application embodiment can extract the protein structure of each protein in the large-scale protein database. - carbon atom coordinates, and using this -Carbon atom coordinates are used to calculate the corresponding distance matrix; secondly, the embodiments of the present application can extract multiple SIFT feature points from the distance matrix of each protein structure, and construct a corresponding feature description vector matrix for each protein structure through the SIFT feature points, and map the feature description vector matrix of each protein structure to the target high-dimensional sphere to determine the block identifier of the feature description vector matrix of each protein structure in the target high-dimensional sphere.

[0046] It should be noted that the above-mentioned operations such as distance matrix calculation, feature description vector matrix extraction and mapping to a high-dimensional sphere are all database preprocessing processes that need to be completed in advance, and database preprocessing only needs to be performed once. Even if more protein structure comparison tasks are processed, there is no need to re-perform the above-mentioned database preprocessing operations.

[0047] Therefore, the embodiments of the present application can separate high-confidence structural information from low-confidence structural information for artificial intelligence prediction models by extracting key rotationally invariant structural information of proteins, thereby preventing low-confidence information from contaminating the overall structural features and avoiding the need to consider information differences caused by the spatial rotation of the protein structure itself under three-dimensional coordinate representation.

[0048] Optionally, in one embodiment of the present application, the protein structure to be compared and each protein structure to be screened in the preset large-scale protein database are extracted. - Carbon atom coordinates, and based on -Calculate the corresponding distance matrix of carbon atom coordinates, extract multiple SIFT feature points from the distance matrix, and construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on multiple SIFT feature points, including: extracting the - Carbon atom coordinates, and according to each amino acid - Carbon atom coordinates to construct protein structures - Carbon atom coordinate matrix; calculation - Every two carbon atoms in the coordinate matrix -Euclidean distance between carbon atom coordinates, based on each two -Euclidean distance between carbon atom coordinates is used to establish a distance matrix; a plurality of SIFT feature points at each scale of the distance matrix are extracted using a preset scale-invariant feature transformation algorithm, and each of the plurality of SIFT feature points is represented by a target dimension vector to obtain a feature description vector corresponding to each SIFT feature point, and the modulus of the feature description vector is normalized to obtain a matrix of feature description vectors corresponding to the protein structure to be compared and each protein structure to be screened.

[0049] It should be noted that the embodiment of the present application can first extract the α-carbon atom coordinates of each amino acid in the protein structure to be compared. For a protein to be compared containing n amino acids, its centroid coordinates are n*3. - Carbon atom coordinate matrix. -The Euclidean distances of the coordinates in the carbon atom coordinate matrix are calculated pairwise, thus obtaining a distance matrix of size n*n.

[0050] It should be noted that in actual implementation, - Carbon atom distance matrix calculation, such as the nitrogen atom, oxygen atom, hydrogen atom designed on the peptide bond or the center of mass of each amino acid can replace the distance matrix based on - Distance matrix calculation of carbon atom coordinates.

[0051] Furthermore, the embodiments of the present application can also extract SIFT feature points of various scales based on the distance matrix by applying a scale-invariant feature transformation algorithm, such as Figure 3 As shown, each SIFT feature point is represented as a 128-dimensional feature description vector, and the modulus of each feature description vector is normalized to 1; if a protein structure has multiple SIFT feature points (such as m SIFT feature points), according to the complexity of the distance matrix, m feature descriptors can be obtained, thus forming an m*128 feature description vector matrix.

[0052] It should be noted that in the actual implementation process, technical personnel in this field may select other appropriate computer vision comparison technologies based on image key points such as SURF, ORB, etc. according to actual conditions, or use deep learning strategies related to computer vision such as contrastive learning models to replace the SIFT algorithm to extract feature points, and no specific limitation is made here.

[0053] Therefore, the embodiments of the present application can effectively extract multi-scale information of protein structure and unit-vectorize the information of the internal interactions of these proteins to facilitate subsequent calculations.

[0054] Optionally, in one embodiment of the present application, the feature description vector matrices of the protein structure to be compared and each protein structure to be screened are mapped to a target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere, including: dividing the positive semi-axis plane of each pair of coordinate axes in the target high-dimensional sphere of the target dimension into a plurality of sector-shaped regions, and calculating the center angle of each sector-shaped region in the plurality of sector-shaped regions; dividing the target high-dimensional sphere into a plurality of sub-regions according to the center angles, and representing the block identifier corresponding to each sub-region by a multi-digit pentad number; mapping each feature description vector of the protein structure to be compared and each protein structure to be screened to the corresponding sub-region of the target high-dimensional sphere to determine the block identifiers of each feature description vector of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere, and converting the multi-digit pentad number block identifiers of the protein structure to be compared and each protein structure to be screened into decimal numbers.

[0055] Specifically, as a feasible method, the feature description vector in the embodiment of the present application is a fully positive 128-dimensional vector, which can be regarded as distributed on the first positive high-dimensional sphere. To construct a pre-filter, the embodiment of the present application can divide the plane composed of the positive semi-axes of each pair of coordinate axes (a total of 127 pairs of coordinate axes) in the 128-dimensional high-dimensional sphere into a plurality of sector-shaped areas (such as being divided into 5 sector-shaped areas, and each sector-shaped area is numbered with a quinary number of 0-4, which is also the reason for the subsequent use of quinary numbers to represent the block identifier), and calculate the central angle of each sector-shaped area in the plurality of sector-shaped areas, so as to divide the target high-dimensional sphere into a plurality of sub-areas according to the central angle.

[0056] For example, the default similarity threshold of the existing ADAMS algorithm is generally 0.95, that is, the angle between the feature description vectors is less than It indicates a successful match of the feature description vector; therefore, the embodiment of the present application can divide the plane composed of the positive semi-axis of each pair of coordinate axes into 5 equal sectors, and the central angle of each sector is , thus dividing each coordinate plane of the sphere located on the positive semi-axis by 18°, so that For the convenience of characterization, the embodiment of the present application can determine the block identifier corresponding to each sub-region, and represent its coordinates with the above-mentioned quinary number, such as Figure 4 As shown, the block identifier of each sub-area can be numbered using a 127-bit quinary number.

[0057] It should be noted that in the embodiments of the present application, different formats may be used for the block identifiers of the high-dimensional sphere in the pre-filter, such as conversion to binary and then using bit operations to perform intersection calculations, which is not specifically limited here.

[0058] Afterwards, an embodiment of the present application can map each feature description vector of each protein structure in a large-scale protein database to a corresponding sub-region of a target high-dimensional sphere (there are m feature description vectors in an m*128 feature description vector matrix, which are mapped to the high-dimensional sphere respectively) to determine the block identifier of each feature description vector of each protein structure in the target high-dimensional sphere; for example, if a protein structure has m SIFT feature points, it has m feature description vectors, each feature description vector can be assigned a corresponding block identifier, and finally the protein structure can obtain corresponding m block identifiers.

[0059] Furthermore, the embodiment of the present application can convert the 127-bit quinary block identifier of each protein structure into a decimal number for subsequent calculation.

[0060] In step S202, the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened is obtained, and it is judged whether the intersection meets the preset pre-filtering condition according to the preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and at least one candidate protein structure in the large-scale protein database is screened out according to the judgment result.

[0061] After mapping the feature description vector matrix of each protein structure to the high-dimensional sphere in the pre-filter, and obtaining the decimal block identifier of the feature description vector matrix of the protein structure to be compared in the target high-dimensional sphere and the decimal block identifier of the feature description vector matrix of each protein structure to be screened in the target high-dimensional sphere, further, the embodiment of the present application also needs to obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all protein structures to be screened, and then determine whether the intersection meets the pre-filtering condition according to the preset pre-filtering algorithm. If the intersection meets the preset pre-filtering condition, the protein structure to be screened corresponding to the intersection can be used as a candidate protein structure for subsequent ADAMS comparison operation.

[0062] Therefore, the embodiments of the present application introduce a pre-filter to filter out unmatched proteins based on the regional distribution of feature points, thereby reducing the amount of calculation and significantly speeding up the comparison speed. In particular, it can effectively reduce the occupancy of hardware resources in large-scale databases, while avoiding more than 70% of unnecessary calculations, making the present application easier to deploy on low-cost computers and speeding up by more than 50%, making it possible to search a larger protein structure database within a limited time.

[0063] Optionally, in one embodiment of the present application, the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened is obtained, and it is judged whether the intersection meets the preset pre-filtering condition according to the preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and at least one candidate protein structure in the large-scale protein database is screened out according to the judgment result, including: deduplication operation is performed on all decimal block identifiers of each protein structure, and the intersection of the deduplicated block identifier of the protein structure to be screened and the deduplicated block identifier of the protein structure to be compared is calculated; it is judged whether the number of block identifiers in the intersection is greater than the preset pre-filtering threshold, if the number of block identifiers in the intersection is greater than the pre-filtering threshold, the corresponding protein structure to be screened is determined as the candidate protein structure, otherwise, the protein structure to be screened is filtered.

[0064] Specifically, those skilled in the art should understand that the feature description vectors of many proteins are actually completely mismatched, and in most search cases, proteins with a matching number of 0 account for more than 80% of the entire protein library.

[0065] In order to filter out completely unmatched proteins and reduce the amount of calculation, the present application embodiment can construct a Figure 5 The ADAMS 2.0 algorithm shown in FIG. 1 adds an efficient pre-filter to the original ADAMS algorithm.

[0066] In the actual implementation process, the embodiment of the present application can use the pre-filter to calculate the intersection of the block identifier of the protein structure to be compared and the block identifiers of all the protein structures to be screened, so as to analyze and judge the intersection, thereby pre-filtering the protein structure to be screened in the large-scale protein database. The specific process is as follows:

[0067] 1. De-duplicate the m decimal block identifiers of each protein structure (i.e., all block identifiers corresponding to each protein structure);

[0068] 2. Calculate the intersection of the block identifiers of the protein structure to be screened after deduplication and the block identifiers of the protein structure to be compared after deduplication;

[0069] 3. Determine whether the number of block identifiers in the intersection is greater than the preset pre-filtering threshold, such as Figure 6 As shown, (for example, the pre-filtering threshold can be set to ,in, is the preprocessor threshold parameter, the default is 1%, is the number of block identifiers to which the feature description vector of the protein to be compared belongs; that is, whether the number of block identifiers in the intersection exceeds 1% of the block identifiers of the protein structure to be compared after deduplication);

[0070] 4. If the number of block identifiers in the intersection is greater than the pre-filtering threshold, the corresponding protein structure to be screened is determined as a candidate protein structure for subsequent GPU-accelerated precise comparison operations; otherwise, the protein structure to be screened is filtered.

[0071] For example, in an embodiment of the present application, the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifier of all the protein structures to be screened is obtained, that is, whether the feature description vectors of the two protein structures are located in the same sub-region; if the feature description vectors of the two protein structures are located in the same region, the probability that the cosine similarity is greater than 0.95 in the subsequent comparison operation is high; on the contrary, if all the feature vectors of the two proteins do not fall in the same region, they can be considered to be non-similar proteins and can be excluded in the subsequent GPU calculation; in this pre-filter, the default threshold can be set to 1% of the number of all feature description vectors of the protein to be queried. For example, if the number of regions to which the feature description vector of the protein to be compared belongs is 600, only when a protein in the database has more than 6 feature description vectors that fall in the same region will it be included in the ADAMS calculation on the GPU.

[0072] Therefore, the embodiment of the present application introduces a pre-filter, which can perform highly sensitive pre-screening of protein structures in large-scale structural databases, allowing a small number of truly similar proteins to enter the structural comparison stage of ADAMS. At the same time, it reduces the amount of calculation and the use of hardware resources, reduces unnecessary protein comparison operations, greatly improves the search speed and computing efficiency, and enables users to easily perform scientific calculations on consumer-grade home graphics cards.

[0073] In step S203, the protein structure to be compared is precisely compared with the feature description vector matrix of at least one candidate protein structure using GPU acceleration to generate a comparison result of the protein structure to be compared, and a homologous protein structure corresponding to the protein structure to be compared is determined according to the comparison result.

[0074] Furthermore, the embodiments of the present application can calculate the cosine similarity of the feature description vectors between the protein structure to be compared and the candidate protein structure, so as to calculate the matching between the protein SIFT feature points according to the cosine similarity, so as to screen out potential similar proteins, thereby determining the homologous protein corresponding to the protein to be compared.

[0075] Therefore, the embodiments of the present application adjust the comparison mode of the KNN (K-Nearest Neighbor) algorithm in the native SIFT algorithm, and use matrix dot multiplication to calculate the vector cosine similarity without considering the scale and size of the feature points, thereby obtaining a faster comparison speed and using a GPU that is more suitable for matrix calculations for fast calculations, thereby achieving a significant improvement in the protein comparison speed while maintaining a high comparison accuracy.

[0076] Optionally, in one embodiment of the present application, a GPU-accelerated precise comparison is performed on the feature description vector matrix of the protein structure to be compared and at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and a homologous protein structure corresponding to the protein structure to be compared is determined according to the comparison result, including: based on the feature description vector matrix of the protein structure to be compared and each candidate protein structure in the at least one candidate protein structure, the cosine similarity of each SIFT feature pair between the protein structure to be compared and each candidate protein structure is calculated by matrix dot multiplication to obtain a cosine similarity matrix of the protein structure to be compared and each candidate protein structure; and comparing the cosine similarity and A preset similarity threshold is set, and when the cosine similarity is greater than the similarity threshold, it is determined that the SIFT feature pair corresponding to the cosine similarity meets the preset matching condition, and each SIFT feature of the protein structure to be compared is matched with the most similar SIFT feature in each candidate protein structure to calculate the matching score, matching number and similarity between the protein structure to be compared and each candidate protein structure; the matching score and matching number of the protein structure to be compared and all candidate protein structures are normalized, and the normalized matching score and matching number are added to obtain a total matching score, and the homologous protein structure corresponding to the protein to be compared is determined according to the total matching score or similarity ranking.

[0077] When comparing proteins using the ADAMS algorithm, the feature description vector matrices of the two proteins to be compared can be expressed as , and the cosine similarity matrix of all SIFT features of the two proteins is calculated through the calculation expression of the cosine similarity matrix.

[0078] Optionally, in one embodiment of the present application, the calculation expression of the cosine similarity matrix of all SIFT feature pairs between the protein structure to be compared and each candidate protein structure is:

[0079]

[0080] in, A matrix of feature description vectors with a rows and 128 columns representing the protein structures to be compared; The transpose of the matrix of feature description vectors with rows b and columns 128 representing the candidate protein structure; Represents the cosine similarity matrix with a rows and b columns.

[0081] It should be noted that, in the embodiment of the present application, the cosine similarity of each SIFT feature pair between the protein structure to be compared and each candidate protein structure can be calculated by matrix dot multiplication, thereby obtaining a cosine similarity matrix of the protein structure to be compared and each candidate protein structure, as shown in the following formula:

[0082]

[0083] in, A matrix of feature description vectors with a rows and 128 columns representing the protein structures to be compared; The transpose of the matrix of feature description vectors with rows b and columns 128 representing the candidate protein structure; Represents the cosine similarity matrix with a rows and b columns.

[0084] In the actual implementation process, the embodiment of the present application needs to compare the cosine similarity with a preset similarity threshold so that when the cosine similarity is greater than the similarity threshold (such as 0.95), it is determined that the SIFT feature pair corresponding to the cosine similarity meets the preset matching condition; each SIFT feature of the protein structure to be compared is finally matched with the most similar SIFT feature in each candidate protein structure.

[0085] For example, if the cosine similarities of SIFT feature 1 of the protein structure to be compared and SIFT features 1, 2, and 3 in the candidate protein structure are 0.96, 1, and 0.98, respectively, which are all greater than the similarity threshold of 0.95, the embodiment of the present application only takes the maximum value 1, and considers that SIFT feature 1 of the protein structure to be compared and SIFT feature 2 in the candidate protein structure are the most similar pair of SIFT features, and performs corresponding matching operations.

[0086] Afterwards, the embodiments of the present application further need to calculate the matching score, matching number and similarity between the protein structure to be compared and each candidate protein structure (wherein the corresponding matching score can be calculated by subtracting the similarity threshold from the cosine similarity corresponding to the SIFT feature), and normalize the matching score and matching number of the protein structure to be compared with all the candidate protein structures, and add the normalized matching score and matching number to obtain the corresponding total matching score.

[0087] It should be noted that in the specific implementation process, the embodiments of the present application may Each cosine similarity in is subtracted by 0.95, and the maximum value is taken by column to obtain a one-dimensional list including b numbers; the matching score between the protein structure to be compared and a candidate protein structure is the sum of the elements greater than 0 in the one-dimensional array; the number of matches is the number of elements greater than 0; in addition, in an embodiment of the present application, the similarity between the protein structure to be compared and a candidate protein structure is the ratio of the intersection of the SIFT features of the protein structure to be compared and a candidate protein structure to the union of the SIFT features.

[0088] In the actual implementation process, if there are n candidate protein structures to be compared, there are n matching scores and n matching numbers in total; thereafter, the embodiment of the present application can normalize the n matching scores and matching numbers, and add the normalized matching scores and matching numbers to obtain the corresponding total matching score.

[0089] Furthermore, the embodiments of the present application can determine the homologous protein structure corresponding to the protein to be compared according to the total matching score or similarity ranking.

[0090] It can be understood that since vector and matrix operations are particularly suitable for acceleration using a GPU, the above comparison calculation process can be completed quickly.

[0091] It should be noted that in the specific implementation process, technical personnel in this field may use methods such as KNN, RANSAC, etc. to match feature points according to actual needs. Although there is performance loss, more accurate matching results may be obtained. In addition, for scoring the matching results, technical personnel in this field may also give other scores such as E-value based on statistics, which are not specifically limited here.

[0092] In addition, if Figure 7As shown, the embodiments of the present application can use the Foldseek algorithm (including the Foldseek algorithm with a pre-filter and the Foldseek algorithm without a pre-filter), the ADAMS algorithm and the ADAMS 2.0 algorithm to search for cdh-10 and TUBA1 in the protein database Swiss Protein verified by biological experts for structure search and comparison. When the search results remain unchanged, the speed of ADAMS 2.0 is significantly faster than ADAMS and Foldseek. In this process, the Foldseek algorithm uses two computers equipped with Intel Platinum 8352V professional server CPU (Central Processing Unit), making full use of its 144 threads, while the ADAMS algorithm and the ADAMS2.0 algorithm use two NVIDIA RTX 4090 gaming graphics cards for calculation.

[0093] The following takes a computer with Linux system, NVIDIA GTX 10 series or above graphics card, and equipped with Python 3.8 or above, CUDA 11.0 or above program environment as an example, and combines the accompanying drawings to further illustrate the execution process and effect of the homologous protein search method based on scale-invariant feature transformation and pre-filtering of the present application.

[0094] Step S1: Download the protein database and establish the ADAMS database; taking the 542,379 proteins in the Swiss-prot part of the AlphaFold Database as an example, the embodiment of the present application can download and decompress the data from https: / / alphafold.com / download, and use ADAMS's db_maker to build the ADAMS feature database after entering the python environment.

[0095] The embodiment of the present application can convert all files downloaded to the pdb folder into pkl files readable by ADAMS2.0 and store them in the adamsdb folder.

[0096] Step 2: The embodiment of the present application can obtain the protein structure from protein structure databases such as AlphaFold / RCSB, where osm-3 is taken as an example.

[0097] Step S3: In the example, the structure is used to search the already created local Swiss-Prot database. In the embodiment of the present application, the downloaded osm-3.pdb structure can be input into ADAMS2.0, and GPU-0 and GPU-1 are used for comparison. The threshold of the preprocessor is set to 0.01, and the results are saved in the osm3_result.csv file.

[0098] Step S4: The returned results can be conveniently saved as a file that can be opened in Excel. The user can sort the results according to similarity or total matching score. The default sorting is from large to small total matching score, and a sorting table as shown in Table 1 is obtained.

[0099] Table 1

[0100]

[0101] Step S5: Take the top 5 results and visualize them to get Figure 8 Results shown.

[0102] In summary, in order to solve the problem of slow matching speed caused by insufficient pre-filtering mechanism in the prior art, the embodiment of the present application achieves a matching speed 3-5 times faster than the existing homologous protein search strategy by adding an efficient pre-filter, and shows significant advantages when processing proteins with flexible regions, reducing false positives and missed negatives; in addition, the embodiment of the present application reduces the consumption of hardware resources, allowing users to achieve large-scale scientific computing in a more general computing environment.

[0103] According to the homologous protein search method based on scale-invariant feature transformation and pre-filtering proposed in the embodiment of the present application, by extracting the protein structure to be compared and each protein structure to be screened in a preset large-scale protein database, - Carbon atom coordinates, and based on - carbon atom coordinates, calculate the corresponding distance matrix, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to the target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all protein structures to be screened, and determine whether the intersection meets the preset pre-filtering condition according to a preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and screen out at least one candidate protein structure in a large-scale protein database according to the judgment result; perform GPU-accelerated precise comparison of the feature description vector matrices of the protein structure to be compared with at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared according to the comparison result. The present application can significantly improve the alignment speed while maintaining the alignment accuracy and reduce the computing resource usage, overcoming the shortcomings of the prior art in that it is difficult to strike a balance between efficiency and accuracy, and is suitable for rapid search and efficient alignment of large-scale protein databases.

[0104] Next, a homologous protein search device based on scale-invariant feature transformation and pre-filtering proposed in accordance with an embodiment of the present application is described with reference to the accompanying drawings.

[0105] Fig. 9 It is a block diagram of a homologous protein search device based on scale-invariant feature transformation and pre-filtering according to an embodiment of the present application.

[0106] like Fig. 9 As shown, the homologous protein search device 10 based on scale-invariant feature transformation and pre-filtering includes: a database processing module 100 , a pre-filtering module 200 and an accelerated comparison module 300 .

[0107] Specifically, the database processing module 100 is used to extract the protein structure to be compared and each protein structure to be screened from the preset large-scale protein database. - Carbon atom coordinates, and based on -Calculate the corresponding distance matrix based on the carbon atom coordinates, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to the target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere.

[0108] The pre-filtering module 200 is used to obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened, and judge whether the intersection meets the preset pre-filtering condition according to the preset pre-filtering algorithm, so as to determine the judgment result of each protein structure to be screened, and screen out at least one candidate protein structure in the large-scale protein database according to the judgment result.

[0109] The accelerated comparison module 300 is used to perform GPU-accelerated precise comparison of the protein structure to be compared with the feature description vector matrix of at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared based on the comparison result.

[0110] Optionally, in one embodiment of the present application, the database processing module 100 includes: an extraction unit, a distance matrix calculation unit and a matrix construction unit.

[0111] Among them, the extraction unit is used to extract each amino acid in the protein structure. -Carbon atom coordinates, and according to each amino acid - Carbon atom coordinates to construct protein structures - Carbon atom coordinate matrix.

[0112] Distance matrix calculation unit, used to calculate - Every two carbon atoms in the coordinate matrix -Euclidean distance between carbon atom coordinates, based on each two -The Euclidean distances between carbon atom coordinates create a distance matrix.

[0113] The matrix construction unit is used to extract multiple SIFT feature points of each scale of the distance matrix by using a preset scale-invariant feature transformation algorithm, and to characterize each SIFT feature point in the multiple SIFT feature points by a target dimension vector to obtain a feature description vector corresponding to each SIFT feature point, and to normalize the modulus of the feature description vector to obtain a feature description vector matrix corresponding to the protein structure to be compared and each protein structure to be screened.

[0114] Optionally, in one embodiment of the present application, the database processing module 100 further includes: an equal division unit, a representation unit and a mapping unit.

[0115] The dividing unit is used to divide the positive semi-axis plane of each pair of coordinate axes in the target high-dimensional sphere of the target dimension into multiple sector-shaped areas, and calculate the central angle of each sector-shaped area in the multiple sector-shaped areas.

[0116] The representation unit is used to divide the target high-dimensional sphere into multiple sub-areas according to the central angle, and to represent the block identifier corresponding to each sub-area by a multi-digit quinary number.

[0117] A mapping unit is used to map each feature description vector of the protein structure to be compared and each protein structure to be screened to a corresponding sub-region of the target high-dimensional sphere, so as to determine a block identifier of each feature description vector of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere, and convert the multi-digit pentad block identifiers of the protein structure to be compared and each protein structure to be screened into decimal numbers.

[0118] Optionally, in one embodiment of the present application, the pre-filtering module 200 includes: a deduplication unit and a judgment unit.

[0119] The deduplication unit is used to perform deduplication operations on all decimal block identifiers of each protein structure, and calculate the intersection of the deduplicated block identifiers of the protein structure to be screened and the deduplicated block identifiers of the protein structure to be compared.

[0120] The judging unit is used to judge whether the number of block identifiers in the intersection is greater than a preset pre-filtering threshold. If the number of block identifiers in the intersection is greater than the pre-filtering threshold, the corresponding protein structure to be screened is determined as a candidate protein structure; otherwise, the protein structure to be screened is filtered.

[0121] Optionally, in one embodiment of the present application, the accelerated comparison module 300 includes: a cosine similarity calculation unit, a matching unit and a search unit.

[0122] Among them, the cosine similarity calculation unit is used to calculate the cosine similarity of each SIFT feature pair between the protein structure to be compared and each candidate protein structure by matrix dot multiplication based on the feature description vector matrix of the protein structure to be compared and each candidate protein structure in at least one candidate protein structure, so as to obtain the cosine similarity matrix of the protein structure to be compared and each candidate protein structure.

[0123] The matching unit is used to compare the cosine similarity with a preset similarity threshold, and when the cosine similarity is greater than the similarity threshold, determine that the SIFT feature pair corresponding to the cosine similarity meets the preset matching condition, and match each SIFT feature of the protein structure to be compared with the most similar SIFT feature in each candidate protein structure to calculate the matching score, matching number and similarity between the protein structure to be compared and each candidate protein structure.

[0124] The search unit is used to normalize the matching scores and matching numbers of the protein structure to be compared with all candidate protein structures, and add the normalized matching scores and matching numbers to obtain a total matching score, and determine the homologous protein structure corresponding to the protein to be compared according to the total matching score or similarity sorting.

[0125] Optionally, in one embodiment of the present application, the calculation expression of the cosine similarity matrix of all SIFT feature pairs between the protein structure to be compared and each candidate protein structure is:

[0126]

[0127] in, A matrix of feature description vectors with a rows and 128 columns representing the protein structures to be compared; The transpose of the matrix of feature description vectors with rows b and columns 128 representing the candidate protein structure; Represents the cosine similarity matrix with a rows and b columns.

[0128] It should be noted that the above explanation of the embodiment of the method for searching for homologous proteins based on scale-invariant feature transformation and pre-filtering is also applicable to the apparatus for searching for homologous proteins based on scale-invariant feature transformation and pre-filtering in this embodiment, and will not be repeated here.

[0129] The homologous protein search device based on scale-invariant feature transformation and pre-filtering proposed in the embodiment of the present application includes a database processing module 100 for extracting protein structures to be compared and each protein structure to be screened in a preset large-scale protein database. - Carbon atom coordinates, and based on - carbon atom coordinates to calculate the corresponding distance matrix, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to the target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; a pre-filtering module 200, used to obtain the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all protein structures to be screened, and determine whether the intersection meets the preset pre-filtering condition according to a preset pre-filtering algorithm to determine the judgment result of each protein structure to be screened, and screen out at least one candidate protein structure in a large-scale protein database according to the judgment result; an accelerated comparison module 300, used to perform GPU-accelerated precise comparison of the feature description vector matrices of the protein structure to be compared with at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared according to the comparison result. The present application can significantly improve the alignment speed while maintaining the alignment accuracy and reduce the computing resource usage, overcoming the shortcomings of the prior art in that it is difficult to strike a balance between efficiency and accuracy, and is suitable for rapid search and efficient alignment of large-scale protein databases.

[0130] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or N embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.

[0131] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In the description of the present invention, the meaning of "N" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.

[0132] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, fragment or portion of code comprising one or N executable instructions for implementing the steps of a custom logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present invention belong.

Claims

1. A homologous protein search method based on scale-invariant feature transformation and pre-filtering, characterized in that: The following steps are involved: Extract the protein structure to be compared and each protein structure to be screened from the preset large-scale protein database - carbon atom coordinates, and based on the -Calculate the corresponding distance matrix based on the carbon atom coordinates, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to a target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; Obtaining the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened, and judging whether the intersection meets a preset pre-filtering condition according to a preset pre-filtering algorithm, so as to determine a judgment result of each protein structure to be screened, and screening out at least one candidate protein structure in the large-scale protein database according to the judgment result; The protein structure to be compared is precisely compared with the feature description vector matrix of the at least one candidate protein structure using GPU acceleration to generate an comparison result of the protein structure to be compared, and a homologous protein structure corresponding to the protein structure to be compared is determined according to the comparison result.

2. The method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering according to claim 1, characterized in that: The method of extracting the protein structure to be compared and each protein structure to be screened in the preset large-scale protein database - carbon atom coordinates, and based on the - calculating a corresponding distance matrix of carbon atom coordinates, extracting a plurality of SIFT feature points from the distance matrix, and constructing a corresponding feature description vector matrix for the protein structure to be compared and each protein structure to be screened based on the plurality of SIFT feature points, including: Extract each amino acid in the protein structure - Carbon atom coordinates, and according to the - Carbon atom coordinates to construct the protein structure corresponding to - Carbon atom coordinate matrix; Calculate the - Every two carbon atoms in the coordinate matrix -Euclidean distance between carbon atom coordinates, based on the -Euclidean distances between carbon atom coordinates to establish the distance matrix; A preset scale-invariant feature transformation algorithm is used to extract multiple SIFT feature points at each scale of the distance matrix, and each SIFT feature point in the multiple SIFT feature points is represented by a target dimension vector to obtain a feature description vector corresponding to each SIFT feature point, and the modulus of the feature description vector is normalized to obtain a feature description vector matrix corresponding to the protein structure to be compared and each protein structure to be screened.

3. The method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering according to claim 1, characterized in that: The step of mapping the feature description vector matrices of the protein structure to be compared and each of the protein structures to be screened to a target high-dimensional sphere to determine block identifiers of the feature description vector matrices of the protein structure to be compared and each of the protein structures to be screened in the target high-dimensional sphere includes: Divide the positive semi-axis plane of each pair of coordinate axes in the target high-dimensional sphere of the target dimension into a plurality of fan-shaped areas, and calculate the central angle of each of the plurality of fan-shaped areas; Dividing the target high-dimensional sphere into a plurality of sub-regions according to the central angle, and representing a block identifier corresponding to each sub-region by a multi-digit quinary number; Each feature description vector of the protein structure to be compared and each protein structure to be screened is mapped to a corresponding sub-region of the target high-dimensional sphere to determine a block identifier of each feature description vector of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere, and the multi-digit five-digit block identifiers of the protein structure to be compared and each protein structure to be screened are converted into decimal numbers.

4. The method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering according to claim 1, characterized in that: The step of obtaining the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened, and judging whether the intersection satisfies a preset pre-filtering condition according to a preset pre-filtering algorithm to determine a judgment result of each protein structure to be screened, and screening out at least one candidate protein structure in the large-scale protein database according to the judgment result, comprises: Deduplication is performed on all decimal block identifiers of each protein structure, and the intersection of the deduplication-free block identifiers of the protein structure to be screened and the deduplication-free block identifiers of the protein structure to be compared is calculated; It is determined whether the number of block identifiers in the intersection is greater than a preset pre-filtering threshold. If the number of block identifiers in the intersection is greater than the pre-filtering threshold, the corresponding protein structure to be screened is determined as a candidate protein structure; otherwise, the protein structure to be screened is filtered.

5. The method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering according to claim 1, characterized in that: The step of performing GPU-accelerated precise comparison of the protein structure to be compared with the feature description vector matrix of the at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determining a homologous protein structure corresponding to the protein structure to be compared according to the comparison result, comprises: Based on the feature description vector matrix of the protein structure to be compared and each candidate protein structure in the at least one candidate protein structure, calculating the cosine similarity of each SIFT feature pair between the protein structure to be compared and each candidate protein structure by matrix dot multiplication, to obtain a cosine similarity matrix between the protein structure to be compared and each candidate protein structure; Comparing the cosine similarity with a preset similarity threshold, and when the cosine similarity is greater than the similarity threshold, determining that the SIFT feature pair corresponding to the cosine similarity satisfies a preset matching condition, and matching each SIFT feature of the protein structure to be compared with the most similar SIFT feature in each candidate protein structure, so as to calculate a matching score, a matching number and a similarity between the protein structure to be compared and each candidate protein structure; The matching scores and matching numbers of the protein structure to be compared and all candidate protein structures are normalized, and the normalized matching scores and matching numbers are added to obtain a total matching score, and the homologous protein structure corresponding to the protein to be compared is determined according to the total matching score or the similarity ranking.

6. The method for searching homologous proteins based on scale-invariant feature transformation and pre-filtering according to claim 5, characterized in that: The calculation expression of the cosine similarity matrix of all SIFT feature pairs between the protein structure to be compared and each candidate protein structure is: in, A feature description vector matrix of a rows and 128 columns representing the protein structures to be compared; The transpose of a matrix of b rows and 128 columns of feature description vectors representing the candidate protein structure; Represents the cosine similarity matrix with a rows and b columns.

7. A homologous protein search device based on scale-invariant feature transformation and pre-filtering, characterized in that: include: The database processing module is used to extract the protein structures to be compared and each protein structure to be screened in the preset large-scale protein database. - carbon atom coordinates, and based on the -Calculate the corresponding distance matrix based on the carbon atom coordinates, extract multiple SIFT feature points from the distance matrix, construct corresponding feature description vector matrices for the protein structure to be compared and each protein structure to be screened based on the multiple SIFT feature points, and map the feature description vector matrices of the protein structure to be compared and each protein structure to be screened to a target high-dimensional sphere to determine the block identifiers of the feature description vector matrices of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere; A pre-filtering module, used for obtaining the intersection of the block identifier of the protein structure to be compared on the target high-dimensional sphere and the block identifiers of all the protein structures to be screened, and judging whether the intersection meets the preset pre-filtering condition according to a preset pre-filtering algorithm, so as to determine the judgment result of each protein structure to be screened, and screening out at least one candidate protein structure in the large-scale protein database according to the judgment result; The accelerated comparison module is used to perform GPU-accelerated precise comparison of the protein structure to be compared with the feature description vector matrix of the at least one candidate protein structure to generate a comparison result of the protein structure to be compared, and determine the homologous protein structure corresponding to the protein structure to be compared according to the comparison result.

8. The homologous protein search device based on scale-invariant feature transformation and pre-filtering according to claim 7, characterized in that: The database processing module includes: Extraction unit, used to extract each amino acid in the protein structure - Carbon atom coordinates, and according to the - Carbon atom coordinates to construct the protein structure corresponding to - Carbon atom coordinate matrix; The distance matrix calculation unit is used to calculate the - Every two carbon atoms in the coordinate matrix -Euclidean distance between carbon atom coordinates, based on the -Euclidean distances between carbon atom coordinates to establish the distance matrix; A matrix construction unit is used to extract multiple SIFT feature points of each scale of the distance matrix by using a preset scale-invariant feature transformation algorithm, and to characterize each SIFT feature point of the multiple SIFT feature points by a target dimension vector to obtain a feature description vector corresponding to each SIFT feature point, and to normalize the modulus of the feature description vector to obtain a feature description vector matrix corresponding to the protein structure to be compared and each protein structure to be screened.

9. The homologous protein search device based on scale-invariant feature transformation and pre-filtering according to claim 7, characterized in that: The database processing module also includes: An equal division unit, used for equally dividing the positive semi-axis plane of each pair of coordinate axes in the target high-dimensional sphere of the target dimension into a plurality of sector-shaped areas, and calculating the central angle of each of the plurality of sector-shaped areas; A characterization unit, configured to divide the target high-dimensional spherical surface into a plurality of sub-regions according to the central angle, and characterize a block identifier corresponding to each sub-region by a multi-digit quinary number; A mapping unit is used to map each feature description vector of the protein structure to be compared and each protein structure to be screened to a corresponding sub-region of the target high-dimensional sphere, so as to determine a block identifier of each feature description vector of the protein structure to be compared and each protein structure to be screened in the target high-dimensional sphere, and convert the multi-digit pentad block identifiers of the protein structure to be compared and each protein structure to be screened into decimal numbers.

10. The homologous protein search device based on scale-invariant feature transformation and pre-filtering according to claim 7, characterized in that: The pre-filter module comprises: A deduplication unit, used for deduplicating all decimal block identifiers of each protein structure, and calculating the intersection of the deduplicated block identifiers of the protein structure to be screened and the deduplicated block identifiers of the protein structure to be compared; A judging unit is used to judge whether the number of block identifiers in the intersection is greater than a preset pre-filtering threshold. If the number of block identifiers in the intersection is greater than the pre-filtering threshold, the corresponding protein structure to be screened is determined as a candidate protein structure; otherwise, the protein structure to be screened is filtered.

11. The homologous protein search device based on scale-invariant feature transformation and pre-filtering according to claim 7, characterized in that: The accelerated comparison module comprises: a cosine similarity calculation unit, configured to calculate the cosine similarity of each SIFT feature pair between the protein structure to be compared and each candidate protein structure by matrix dot multiplication based on the feature description vector matrix of the protein structure to be compared and each candidate protein structure in the at least one candidate protein structure, so as to obtain a cosine similarity matrix between the protein structure to be compared and each candidate protein structure; a matching unit, configured to compare the cosine similarity with a preset similarity threshold, and when the cosine similarity is greater than the similarity threshold, determine that the SIFT feature pair corresponding to the cosine similarity satisfies a preset matching condition, and match each SIFT feature of the protein structure to be compared with the most similar SIFT feature in each candidate protein structure, so as to calculate a matching score, a matching number and a similarity between the protein structure to be compared and each candidate protein structure; The search unit is used to normalize the matching scores and matching numbers of the protein structure to be compared with all candidate protein structures, and add the normalized matching scores and matching numbers to obtain a total matching score, and determine the homologous protein structure corresponding to the protein to be compared according to the total matching score or the similarity ranking.

12. The homologous protein search device based on scale-invariant feature transformation and pre-filtering according to claim 11, characterized in that: The calculation expression of the cosine similarity matrix of all SIFT feature pairs between the protein structure to be compared and each candidate protein structure is: in, A feature description vector matrix of a rows and 128 columns representing the protein structures to be compared; The transpose of a matrix of b rows and 128 columns of feature description vectors representing the candidate protein structure; Represents the cosine similarity matrix with a rows and b columns.

Citation Information

Patent Citations

  • SIFT parallel algorithm based on CPU+MIC heterogeneous platform

    CN106650315A

  • Multi-domain protein homologous structure searching method based on semi-automatic structure library

    CN114550829A