DNA storage encoding method based on graph convolution network and self-attention mechanism

By using graph convolutional networks and neural networks with self-attention mechanisms, the problem of low DNA storage and encoding efficiency has been solved, achieving more efficient encoding and higher storage density.

CN116206691BActive Publication Date: 2026-02-24DALIAN UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310220809.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-09
Publication Date
2026-02-24
Estimated Expiration
2043-03-09

AI Technical Summary

Technical Problem

Current DNA storage and coding efficiency is low, making it difficult to effectively meet various constraints, leading to increased coding length and reduced storage density.

Method used

A DNA storage coding prediction model is constructed using a neural network based on graph convolutional networks and self-attention mechanism. By extracting graph structure and node features, coding sequences that meet the combined constraints are selected.

Benefits of technology

It improves the efficiency and density of DNA storage and coding, enabling the generation of more coding sequences that meet the constraints, and overcomes the obstacle of increasing coding length.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116206691B_ABST
    Figure CN116206691B_ABST
Patent Text Reader

Abstract

The application discloses a DNA storage coding method based on a graph convolution network and a self-attention mechanism, and belongs to the technical field of coding in DNA storage. Specifically, a DNA coding sequence meeting a combination constraint condition is predicted, first, existing DNA coding is screened and data is cleaned to construct a DNA storage coding training set; second, a prediction model based on a graph convolution neural network and a self-attention mechanism is trained, and the self-attention mechanism is used to capture the relationship of local DNA coding; then, the coding data processed into a graph is input into the prediction model to perform coding prediction meeting the combination constraint; finally, a DNA storage coding set meeting the condition is output. The application constructs a DNA storage coding training set, trains a graph convolution self-attention neural network, better captures the relationship between codings, and adopts a learning-based prediction model to perform DNA storage coding, so that the application has high coding efficiency when processing codings with complex constraints.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of DNA storage coding technology, and relates to machine learning algorithms and DNA storage coding, specifically a DNA storage coding method based on graph convolutional neural networks and self-attention mechanisms. This invention can construct a DNA storage coding prediction model by extracting features from the graph structure and nodes based on the structural features and node attributes of the modeled DNA storage coding graph through graph neural networks and self-attention mechanisms. Background Technology

[0002] DNA, as a high-density, highly durable, and widely distributed storage medium in nature, has become a possible solution for handling massive amounts of data. Especially in the current environment, DNA has a unique advantage in storing cold data. Compared to traditional storage media, DNA storage is a storage method with virtually zero maintenance energy consumption, capable of preserving data for thousands of years in room temperature and dry environments. The basic principle of DNA-based storage is the conversion between digital data (represented as binary information) and DNA molecules (represented as silicon-based DNA sequences). Therefore, encoding is one of the most fundamental and important steps in DNA storage. The most basic biochemical technologies in DNA storage are DNA synthesis ("writing" information), polymerase chain reaction (PCR) amplification ("replicating" information), and DNA sequencing ("reading" information). The use of DNA to store non-biological information can be traced back to 1940 when Davis cloned DNA into plasmids for data preservation. However, at that time, synthesis and sequencing technologies limited the development of DNA storage. In recent years, with continuous advancements in synthesis and sequencing technologies, DNA storage has once again become a global research hotspot. However, the coding efficiency in DNA storage is still not high enough, but with the emergence of various efficient coding algorithms, DNA storage will be a powerful alternative to magnetic media storage in the future. Summary of the Invention

[0003] This invention proposes a DNA storage coding method based on graph convolutional networks and self-attention mechanisms. The method first filters the coding sets that meet the constraints to construct a training dataset. Second, it trains a coding prediction model on the dataset using a neural network based on graph convolutional networks and self-attention mechanisms. Next, it processes the coding into graph data, inputs it into the prediction model, and performs coding prediction that meets the constraints. Finally, it compares whether the probability value of the current node is greater than a threshold, and adds those that meet the conditions to the DNA storage coding set. This method can predict a relatively large number of DNA coding sequences.

[0004] To achieve the above objectives, the technical solution of the present invention is as follows:

[0005] The DNA storage coding method based on graph convolutional networks and self-attention mechanism specifically involves predicting DNA coding sequences that satisfy combinatorial constraints. First, existing DNA codes are screened and cleaned to construct a DNA storage coding training set. Second, a prediction model based on graph convolutional neural networks and self-attention mechanism is trained, utilizing the self-attention mechanism to capture relationships between local DNA codes. Then, the processed graph-based DNA codes are input into the prediction model for coding prediction that satisfies the combinatorial constraints. Finally, the set of DNA storage coding sequences that satisfy the constraints is output. The specific steps are as follows:

[0006] Step 1: Construct a DNA storage encoding training set that satisfies combinatorial constraints.

[0007] DNA storage coding generally needs to satisfy a given combination of constraints, including distance constraints, GC content, no-runlength constraint, non-adjacent subsequence constraint, end-constraint, and self-complementary constraint, in addition to GC content constraints.

[0008] Constructing a DNA storage coding training set requires collecting DNA storage coding results under different constraints from previous work. The DNA storage coding data then undergoes preprocessing, mapping the relationships between DNA storage codes and the information within the codes to nodes and edges in a graph, ultimately completing the construction of the DNA storage coding training set.

[0009] Step 2: Construct a graph convolutional self-attention neural network.

[0010] A graph convolutional self-attention neural network was constructed, consisting of multiple convolutional layers and self-attention mechanism layers. The structure is as follows: input layer, first convolutional layer, first pooling layer, second convolutional layer, second pooling layer, self-attention layer, third convolutional layer, activation layer, and output layer. The pooling layers of the graph convolutional self-attention neural network are set to average pooling, the activation layers use the non-linear activation function ReLU, and the last layer uses the sigmoid function.

[0011] Step 3: Train the graph convolutional self-attention neural network.

[0012] The DNA storage-encoding training set with class labels and satisfying combinatorial constraints constructed in step 1 is input into the graph convolutional self-attention neural network constructed in step 2 to iteratively update the network parameters until the difference between the class labels predicted by the pre-trained loss function and the actual class labels converges, thus obtaining the pre-trained graph convolutional self-attention neural network model.

[0013] The loss function for the initial training is as follows:

[0014]

[0015] Where l is the node classification label, l kg It is l k The g-th element, Here, θ is the input graph vector, and θ is the parameter to be updated. yes The g-th element. The network output is usually not a binary vector, but any number in the interval [0, 1]. Simple rounding may violate the independence of DNA storage encoding, so it can be... It is considered as a likelihood mapping on the vertices.

[0016] Step 4: Classify nodes in the DNA storage coding map that does not contain category labels.

[0017] A DNA coding map without category labels is input into the graph convolutional self-attention neural network trained in step 3. The network outputs a feature vector predicting the probability. By comparing the feature vector with a threshold, it is determined whether each node belongs to the DNA storage coding set.

[0018] The beneficial effects of this invention are:

[0019] 1) The coding results of this invention overcome the coding obstacles caused by the increase in coding length and improve the storage density of the DNA storage system;

[0020] 2) Utilize graph convolutional networks to extract features and self-attention mechanisms to capture the relationships between local DNA codewords, and perform weighted aggregation on DNA coding vectors to improve DNA storage and coding efficiency;

[0021] 3) This invention can construct more DNA storage codes that meet the constraints. Attached Figure Description

[0022] Figure 1 This is a flowchart illustrating the implementation of the present invention. Detailed Implementation

[0023] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. It should be understood that the described examples are only a part of the examples of the present invention, and not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the protection scope of the present invention.

[0024] The detailed steps are as follows:

[0025] Step 1: Construct a DNA storage encoding training set that satisfies combinatorial constraints.

[0026] DNA storage coding generally needs to satisfy a given combination of constraints, including distance constraints, GC content, no-runlength constraint, non-adjacent subsequence constraint, end-constraint, and self-complementary constraint, in addition to GC content constraints.

[0027] Constructing a DNA storage coding training set mainly involves the following steps:

[0028] Step 1.1: Collect DNA storage and encoding results under different constraints from previous work. In this embodiment, the encoding datasets under 5 different combinations of constraints were statistically analyzed, including 589,651 negative samples and 70,734 positive samples.

[0029] Step 1.2: Classify and filter the data, and filter out DNA codes with a length of less than 5, because sequences with a length of less than 5 have only 4^4 = 256 permutations in the case of quadruple codes (ATGC), and the candidate solution set is too small.

[0030] Step 1.3: Name the encoded datasets with five different combinations of constraints as GNH_db, GNHN_db, GNHE_db, GNHS_db, and GNE_db, respectively.

[0031] Step 1.4: Preprocess the DNA storage coding data by mapping the relationships between DNA storage codes and the information in the coding to nodes and edges in the graph, constructing a DNA storage coding graph, and constructing a DNA storage coding training set.

[0032] Step 2: Construct a graph convolutional self-attention neural network.

[0033] A graph convolutional self-attention neural network is constructed, consisting of multiple convolutional layers and self-attention mechanism layers. The structure is as follows: input layer, first convolutional layer, first pooling layer, second convolutional layer, second pooling layer, self-attention layer, third convolutional layer, activation layer, and output layer. The graph convolutional self-attention neural network consists of multiple convolutional layers {H... i Composed of}, where H i It is the feature layer in the i-th layer. All input layers are initialized to 1, and H is passed through the hierarchical convolution formula (1). i Calculate H i+1 :

[0034]

[0035] in, and These are the trainable weights in a convolutional network, c i σ is the number of feature channels in the i-th layer, D is the degree matrix, and A is the adjacency matrix.

[0036] The graph convolutional self-attention neural network uses average pooling for its pooling layers, ReLU for its activation layers, and the sigmoid function for its last layer. Furthermore, it utilizes the self-attention mechanism to capture the internal correlations of the data. For the input vector L, the output vector L* of the single-head attention module is the weighted sum of all input feature vectors, calculated using formula (2):

[0037]

[0038] Where, d o The square of the scaling factor that controls the size of the dot product; softmax() is the normalization function; Q, K, and V represent the query, key, and value, respectively.

[0039] Step 3: Train the graph convolutional self-attention neural network.

[0040] The DNA storage-encoding training set with class labels and satisfying combinatorial constraints constructed in step 1 is input into the graph convolutional self-attention neural network constructed in step 2 to iteratively update the network parameters until the difference between the class labels predicted by the pre-trained loss function and the actual class labels converges, thus obtaining the pre-trained graph convolutional self-attention neural network model.

[0041] The loss function for the initial training is as follows:

[0042]

[0043] Where l is the node classification label, l kg It is l k The g-th element, Here, θ is the input graph vector, and θ is the parameter to be updated. yes The g-th element. The network output is usually not a binary vector, but any number in the interval [0, 1]. Simple rounding may violate the independence of DNA storage encoding, so it can be... It is considered as a likelihood mapping on the vertices.

[0044] Step 4: Classify nodes in the DNA storage coding map that does not contain category labels.

[0045] A DNA coding map without category labels is input into the graph convolutional self-attention neural network trained in step 3. The network outputs a feature vector predicting the probability. By comparing the feature vector with a threshold, it is determined whether each node belongs to the DNA storage coding set.

[0046] Specifically The heuristic function used in the greedy search algorithm, for a given Graph convolutional self-attention neural networks recursively label a batch of DNA codes with 1s or 0s. First, the vertex list is iteratively sorted sequentially, and vertices in the DNA code storage set are marked with 1s, while their neighbors are marked with 0s. The search process stops when a point in the next DNA code set has already been marked with a 0. Then, from... A residual subgraph is obtained from the process. Will As The input is used to obtain a likelihood graph. The above process is repeated to finally obtain a set of DNA storage codes that meet the constraints.

[0047] The effects of the present invention will be further explained below with reference to simulation experiments.

[0048] Simulation Example 1

[0049] 1. Simulation experimental conditions:

[0050] The hardware platform for the simulation experiment of this invention is as follows: Intel i9-9900K processor with a main frequency of 3.6GHz, RTX 3090 graphics card, and 256GB of memory.

[0051] The simulation software platform of this invention is: Ubuntu 18.04 operating system and Python 3.6.

[0052] 2. Simulation content and result analysis:

[0053] The simulation experiment of this invention uses the coding methods of this invention and existing technologies (End-Constrained Coding (EP), Biological Constrained Coding (BC), Kazakh Eagle Coding (NOL-HHO), K-Cluster Multiverse Coding (KMVO), Brown Multiverse Coding (BMVO)) to design DNA storage codes under the same combination constraints, and finally obtains a set of DNA storage codes that satisfy the combination constraints.

[0054] The existing EP storage coding method refers to the end-constraint-based coding algorithm proposed by Wu et al. in “Enhancing Physical and Thermodynamic Properties of DNA Storage Sets with End-constraint, in IEEE transactions on nanobioscience, 21(2):184-193, 2021.”, abbreviated as EP.

[0055] The existing BC storage coding method refers to the coding algorithm based on biological constraint codes proposed by Rasool et al. in "Bio-Constrained Codes with Neural Network for Density-Based DNA Data Storage, in Mathematics, 10(5):845, 2022.", abbreviated as BC.

[0056] The existing NOL-HHO storage coding method refers to the coding algorithm based on NOL-HHO proposed by Yin et al. in "An Intelligent Optimization Algorithm for Constructing a DNA Storage Code: NOL-HHO, in International Journal of Molecular Sciences, 21:6, 2020", abbreviated as NOL-HHO.

[0057] The existing KMVO storage coding method refers to the K-means multiverse DNA storage coding algorithm proposed by Cao et al. in "K-means multiverse optimizer (KMVO) algorithm to construct DNA storage codes, in IEEE Access, 8:29547-29556, 2020.", abbreviated as KMVO.

[0058] The existing BMVO storage coding method refers to the Brownian multiverse DNA storage coding algorithm proposed by Zhang et al. in "Minimum free energy coding for DNA storage, in IEEE Transactions on NanoBioscience, 2:212-222, 2021.", abbreviated as BMVO.

[0059] The encoded datasets used in this simulation experiment are selected from the encoding sets in GNH_db for all cases where 5 < n < 9, forming nine DNA storage encoding datasets.

[0060] Encoding accuracy rate = Number of correctly predicted encodings / Total number of encodings in the dataset.

[0061] In Table 1, n represents the encoding length and d represents the Hamming distance. Combining with Table 1, it can be seen that the present invention has reached the average level of the prior art in all cases where the encoding length n = 7, and has exceeded the prior art in other cases, proving that the present invention can obtain more DNA storage encodings that meet the combination constraints.

[0062] Table 1 Comparison of encoding performances of six DNA storage encoding methods

[0063]

[0064] The above are only the preferred embodiments of the present invention and are not used to limit the present invention. It should be noted that for those of ordinary skill in the art, without departing from the technical principle of the present invention, several improvements and modifications can be made, and these improvements and modifications should also be regarded as the protection scope of the present invention.

Claims

1. A DNA storage encoding method based on graph convolutional networks and self-attention mechanism, characterized in that, The method includes the following steps: Step 1: Construct a DNA storage-encoding training set that satisfies combinatorial constraints We collect DNA storage and coding results under different constraints and preprocess the DNA storage and coding data by mapping the relationships between DNA storage and coding and the information in the coding to nodes and edges in the graph, and finally complete the construction of the DNA storage and coding training set. Step 2: Construct a graph convolutional self-attention neural network A graph convolutional self-attention neural network consisting of multiple convolutional layers and self-attention mechanism layers is constructed. The structure is as follows: input layer, first convolutional layer, first pooling layer, second convolutional layer, second pooling layer, self-attention layer, third convolutional layer, activation layer, and output layer. The pooling layer of the graph convolutional self-attention neural network is set to average pooling, the activation layer uses the non-linear activation function ReLU, and the last layer uses the sigmoid function. Step 3: Train the graph convolutional self-attention neural network The DNA storage-encoded training set with category labels and satisfying combinatorial constraints constructed in step 1 is input into the graph convolutional self-attention neural network constructed in step 2 to iteratively update the network parameters until the difference between the category labels predicted by the pre-trained loss function and the actual category labels converges, thus obtaining the pre-trained graph convolutional self-attention neural network model. Step 4: Classify nodes in the DNA storage coding map that does not contain category labels. A DNA coding map without category labels is input into the graph convolutional self-attention neural network trained in step 3. The network outputs a feature vector predicting the probability. By comparing the feature vector with a threshold, it is determined whether each node belongs to the DNA storage coding set.

2. The DNA storage encoding method based on graph convolutional networks and self-attention mechanism according to claim 1, characterized in that, The steps for constructing the training set in step 1 are as follows: Step 1.1: Collect DNA storage coding results under all conditions under different constraints, and statistically analyze the coding datasets under 5 different combinations of constraints, including 589,651 negative samples and 70,734 positive samples; Step 1.2: Classify and filter the data, removing DNA codes with a length of less than 5. Step 1.3: Name the encoded datasets with five different combinations of constraints as GNH_db, GNHN_db, GNHE_db, GNHS_db, and GNE_db, respectively; Step 1.4: Preprocess the DNA storage coding data by mapping the relationships between DNA storage codes and the information in the codes to nodes and edges in the graph, constructing a DNA storage coding graph, and constructing a DNA storage coding training set.

3. The DNA storage encoding method based on graph convolutional networks and self-attention mechanism according to claim 1 or 2, characterized in that, The formula for the hierarchical convolution of the convolutional layer in step 2 is as follows: The graph shows a convolutional self-attention neural network consisting of multiple convolutional layers {H}. i Composed of}, where H i It is a feature layer in the i-th layer; All input layers are initialized to 1, and H is passed through the hierarchical convolution formula (1). i Calculate H i+1 : in, and These are the trainable weights in a convolutional network, c i σ is the number of feature channels in the i-th layer, D is the degree matrix, and A is the adjacency matrix.

4. The DNA storage encoding method based on graph convolutional networks and self-attention mechanism according to claim 1 or 2, characterized in that, Step 2 utilizes a self-attention mechanism to capture the internal correlations of the encoding: For an input vector L, the output vector L* of the single-head attention module is the weighted sum of all input feature vectors, calculated using formula (2): Where, d o The square of the scaling factor that controls the size of the dot product; softmax() is the normalization function; Q, K, and V represent the query, key, and value, respectively.

5. The DNA storage encoding method based on graph convolutional networks and self-attention mechanism according to claim 3, characterized in that, Step 2 utilizes a self-attention mechanism to capture the internal correlations of the encoding: For an input vector L, the output vector L* of the single-head attention module is the weighted sum of all input feature vectors, calculated using formula (2): Where, d o The square of the scaling factor that controls the size of the dot product; softmax() is the normalization function; Q, K, and V represent the query, key, and value, respectively.

6. The DNA storage encoding method based on graph convolutional networks and self-attention mechanism according to claim 1, 2, or 5, characterized in that, The loss function for the initial training in step 3 is as follows: Where l is the node classification label, l kg It is l k The g-th element, Here, θ is the input graph vector, and θ is the parameter to be updated. yes The g-th element; the network output is usually not a binary vector, but any number in the interval [0, 1].

7. The DNA storage encoding method based on graph convolutional networks and self-attention mechanism according to claim 1, 2, or 5, characterized in that, In step 1, the combined constraints that DNA storage encoding must satisfy include distance constraints, GC content, complete discontinuity constraints, non-adjacent subsequence constraints, end constraints, and self-complement constraints.