Data construction method and device and storage medium

By generating an initial array for the baseline current and performing random via marking processing, combining noise addition, an accurate via trajectory array is generated, which solves the problem of inconsistent via event detection results in the existing technology, and improves the accuracy of the machine learning model in via event detection.

CN120108516APending Publication Date: 2025-06-06CHINA MOBILE CHENGDU INFORMATION & TELECOMM TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311670282.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-06
Publication Date
2025-06-06

AI Technical Summary

Technical Problem

The detection results of the via event detection methods in the prior art are inconsistent, resulting in a decrease in the accuracy of the model when using these detection results to train a machine learning model.

Method used

Through a data construction method, an initial array of preset length is generated, and random via marking is performed according to the baseline current to obtain the via marking array of via events, and noise is added to the array to obtain the via track array.

Benefits of technology

The accuracy of using machine learning models for via event detection is improved. By generating an accurate via trajectory array as a sample training model, the consistency and accuracy of the detection results are enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120108516A_ABST
    Figure CN120108516A_ABST
Patent Text Reader

Abstract

Embodiments of the invention disclose a data construction method and apparatus, and a storage medium. The method comprises the steps of generating an initial array with a preset length according to a baseline current; the baseline current is the current when no target molecule passes through the nanopore; performing random via hole marking processing on the initial array to obtain a via hole marking array of the via hole event; and adding noise in the via hole mark array to obtain a via hole track array.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of signal processing technology, and in particular to a data construction method and device, and a storage medium. Background Art

[0002] As the latest generation of gene sequencing technology, nanopore sequencing is considered to be the future development direction of gene sequencing technology due to its significant advantages such as simple sample preparation, long sequencing read length and portable instrument.

[0003] In the related art, the via event detection methods are all based on statistical analysis, and there are two main types: one is a method based on global thresholds, and the other is a method of setting thresholds by data self-driven. The detection results of these two via event detection methods are also inconsistent. Therefore, when the via event detection results in the prior art are used as samples to train the machine learning model, the accuracy of the model will be reduced, that is, the accuracy of via event detection using the machine learning model will be reduced. Summary of the invention

[0004] In order to solve the above technical problems, the embodiments of the present application hope to provide a data construction method and device, and a storage medium, which can improve the accuracy of via event detection using a machine learning model.

[0005] The technical solution of this application is implemented as follows:

[0006] The present application provides a data construction method, which includes:

[0007] Generating an initial array of preset length according to a baseline current; the baseline current is the current when no target molecule passes through the nanopore;

[0008] Performing random via mark processing on the initial array to obtain a via mark array of via events;

[0009] Noise is added to the via mark array to obtain a via trace array.

[0010] The present application provides a data construction device, the device comprising:

[0011] A generating unit, used to generate an initial array of a preset length according to a baseline current; the baseline current is a current when no target molecule passes through the nanopore;

[0012] A processing unit, used for performing random via mark processing on the initial array to obtain a via mark array of via events;

[0013] The adding unit is used to add noise to the via mark array to obtain a via track array.

[0014] The present application provides a data construction device, the device comprising:

[0015] A memory, a processor and a communication bus, wherein the memory communicates with the processor via the communication bus, and the memory stores a data construction program executable by the processor. When the data construction program is executed, the data construction method described above is executed by the processor.

[0016] An embodiment of the present application provides a storage medium having a computer program stored thereon, which is applied to a data construction device, and is characterized in that the computer program implements the above-mentioned data construction method when executed by a processor.

[0017] The embodiment of the present application provides a data construction method and device, and a storage medium, wherein the data construction method includes: generating an initial array of preset length according to a baseline current; the baseline current is the current when no target molecules pass through the nanopore; performing random via mark processing on the initial array to obtain a via mark array of via events; adding noise to the via mark array to obtain a via trajectory array. The above method is implemented, and the data construction device generates an initial array according to the baseline current, and by performing random via mark processing on the initial array, the via events in the initial array can be accurately determined, and an accurate via mark array of via events can be obtained. By adding noise to the via mark array, the noise of via in actual situations is simulated, and an accurate via trajectory array is obtained. When the accurate via trajectory array is used as a sample to train a machine learning model, the accuracy of the model is improved, thereby improving the accuracy of via event detection using the machine learning model. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 A schematic diagram of a data construction method provided in an embodiment of the present application;

[0019] Figure 2 A schematic diagram of an exemplary solid-state nanopore sequencing simulation data provided in an embodiment of the present application;

[0020] Figure 3 A schematic diagram of a first pore-through event in an exemplary solid-state nanopore sequencing simulation data provided in an embodiment of the present application;

[0021] Figure 4 A distribution diagram of the amplitude and duration of all pore-through events in an exemplary solid-state nanopore sequencing data provided in an embodiment of the present application;

[0022] Figure 5 A schematic diagram of the structure of a click rate prediction device provided in an embodiment of the present application Figure 1 ;

[0023] Figure 6 A schematic diagram of the structure of a click rate prediction device provided in an embodiment of the present application Figure 2 . DETAILED DESCRIPTION

[0024] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. It should be understood that the specific embodiments described here are only used to explain the present application and are not used to limit the present application.

[0025] The present application embodiment provides a data construction method, which is applied to a data construction device. Figure 1 A flow chart of a data construction method provided in an embodiment of the present application is as follows: Figure 1 As shown, the data construction method may include:

[0026] S101, generating an initial array of preset length according to a baseline current; the baseline current is the current when no target molecules pass through the nanopore.

[0027] A data construction method provided in an embodiment of the present application is suitable for the scenario of constructing a via trajectory array.

[0028] In the embodiments of the present application, the data construction device can be implemented in various forms. For example, the data construction device described in the present application may include devices such as mobile phones, cameras, tablet computers, laptop computers, PDAs, portable media players (PMPs), navigation devices, wearable devices, smart bracelets, pedometers, and devices such as digital TVs, desktop computers, and servers.

[0029] In an embodiment of the present application, the number of elements in the initial array may be 75 million, or any other number of elements. The specific number of elements in the initial array may be determined based on actual conditions, and the embodiment of the present application does not limit this.

[0030] In an embodiment of the present application, the current value of the baseline current can be a current value configured in the data construction device, or a current value transmitted to the data construction device by other equipment, or a current value obtained by the data construction device through other methods. The specific method in which the data construction device obtains the baseline current can be determined based on actual conditions, and the embodiment of the present application does not limit this.

[0031] In an embodiment of the present application, the preset length can be a length parameter configured in the data construction device, or a length parameter transmitted to the data construction device by other devices, or a length parameter obtained by the data construction device through other methods. The specific method of obtaining the preset length by data construction can be determined according to actual conditions, and the embodiment of the present application does not limit this.

[0032] Exemplarily, the preset length can be 75 million, the preset length can be 100 million, or other length values. The specific value of the preset length can be determined based on actual conditions, and the embodiments of the present application do not limit this.

[0033] In the embodiments of the present application, the target molecule may be a DNA molecule or other molecules. The specific target molecule may be determined according to actual conditions, and the embodiments of the present application do not limit this.

[0034] In the embodiment of the present application, the nanopore may be a solid nanopore processed by silicon-based, carbon-based or other materials.

[0035] In an embodiment of the present application, the process of a data construction device generating an initial array of a preset length based on a baseline current includes: generating multiple floating-point numbers; combining the multiple floating-point numbers and the baseline current respectively to obtain multiple elements; and establishing an initial array based on the multiple elements.

[0036] In the embodiment of the present application, the number of the multiple floating-point numbers is a number of preset lengths.

[0037] In the embodiment of the present application, the method of generating multiple floating-point numbers can be a method in the prior art, and the specific embodiment of the present application is not limited.

[0038] It should be noted that the generated floating point number can be a parameter in the range of 0-1.

[0039] In an embodiment of the present application, the process of combining multiple floating-point numbers and a baseline current to obtain multiple elements can be as follows: first determine the sum of a first floating-point number and the baseline current to obtain a first element; determine the sum of a second floating-point number and the baseline current to obtain a second element;...; determine the sum of a last floating-point number and the baseline current to obtain a last element; and take the first element, the second element,..., and the last element as multiple elements.

[0040] Exemplarily, the current value of the baseline current is 1A, and 5 floating-point numbers are generated (i.e., the preset length is 5), namely 0.1, 0.3, 0.2, 0.8, and 0.4. Then, the sum of the first floating-point number 0.1 and the baseline current 1A is determined to obtain the first element 1.1A; the sum of the second floating-point number 0.3 and the baseline current 1A is determined to obtain the second element 1.3A; the sum of the third floating-point number 0.2 and the baseline current 1A is determined to obtain the third element 1.2A; the sum of the fourth floating-point number 0.8 and the baseline current 1A is determined to obtain the fourth element 1.8A; the sum of the last floating-point number 0.4 and the baseline current 1A is determined to obtain the last element 1.4A; the first element, the second element, the third element, the fourth element, and the last element are taken as multiple elements.

[0041] It should be noted that the initial array includes multiple elements.

[0042] In the embodiment of the present application, a sampling rate of 250KHz is used to generate 300 seconds of data. First, a one-dimensional array X with a length of 75 million is generated. 0 , whose element value is the baseline current I 0 Add a random floating point number between 0 and 1 to each value.

[0043] In an embodiment of the present application, before the data construction device generates an initial array of a preset length based on the baseline current, it also determines the voltage applied across the nanopore, the conductivity of the solution in the reaction tank, the thickness and pore size of the nanopore; and determines the baseline current based on the voltage, conductivity, thickness and pore size.

[0044] In the embodiment of the present application, the voltage applied across the nanopore may be a configured voltage value or a preset voltage value, which may be determined based on actual conditions and is not limited in the embodiment of the present application.

[0045] In the present embodiment, the baseline current I 0 (i.e., the current value when no DNA passes through the nanopore) can be determined according to formula (1):

[0046]

[0047] Where V is the voltage applied across the nanopore, G is the conductivity of the solution in the reaction tank, which is determined by the mobility of cations and anions, the surface charge density of the nanopore, and the concentration of the KCl solution in the reaction tank, h is the thickness of the nanopore, and d is pore is the diameter of the nanopore, and π is the circumference of the circumference.

[0048] S102, performing random via mark processing on the initial array to obtain a via mark array of via events.

[0049] In the embodiment of the present application, after the data construction device generates an initial array of preset length according to the baseline current, the initial array can be subjected to random via mark processing to obtain a via mark array of via events.

[0050] In an embodiment of the present application, a data construction device performs random via marking processing on an initial array to obtain a via marking array of via events, including: determining an element corresponding to the via event from the initial array to obtain at least one via event element; determining the number of at least one via event element to obtain a first number; generating a Gaussian distribution array and an exponential distribution coefficient array; and determining, based on the Gaussian distribution array and the coefficient array, in turn, current trajectory parameters corresponding to at least one via event element to obtain a via marking array.

[0051] In an embodiment of the present application, the coefficient array can be an array of monotonically decreasing exponential distribution or an array of monotonically increasing exponential distribution. The monotonicity of the specific coefficient array can be determined based on actual conditions, and the embodiment of the present application does not limit this.

[0052] In the embodiment of the present application, the number of elements in the coefficient array is the first number, and the number of elements in the Gaussian distribution array is the first number, that is, the number of elements in the Gaussian distribution array is the same as the number of elements in the coefficient distribution array. The number of elements in the Gaussian distribution array is also the same as the number of at least one via event element.

[0053] In the embodiment of the present application, the method of generating a Gaussian distribution array may be a method in the prior art, and the specific embodiment of the present application does not limit this. The method of generating an exponential distribution array may be a method in the prior art, and the specific embodiment of the present application does not limit this.

[0054] In an embodiment of the present application, a data construction device determines the current trajectory parameters corresponding to at least one via event element in sequence according to a Gaussian distribution array and a coefficient array to obtain a via mark array, including: determining a first current trajectory corresponding to a first via event element in at least one via event element according to a Gaussian distribution array and a coefficient array; and continuing to determine the current trajectory parameters corresponding to at least one via event element according to the Gaussian distribution array and the coefficient array in the manner of determining the first current trajectory; and determining the current trajectory parameters as a via mark array.

[0055] In an embodiment of the present application, a first current trajectory corresponding to a first via event element in at least one via event element can be determined based on a Gaussian distribution array and a coefficient array; a second current trajectory corresponding to a second via event element in at least one via event element can be determined based on a Gaussian distribution array and a coefficient array,...; a last current trajectory corresponding to a last via event element in at least one via event element can be determined based on a Gaussian distribution array and a coefficient array, and the first current trajectory, the second current trajectory,..., and the last current trajectory are determined as current trajectory parameters corresponding to at least one via event element; the current trajectory parameters are determined as a via mark array.

[0056] In an embodiment of the present application, a process in which a data construction device determines a first current trajectory corresponding to a first via event element in at least one via event element based on a Gaussian distribution array and a coefficient array includes: generating a first random number; and randomly obtaining a first element from the Gaussian distribution array, and determining the first element as the via duration of a first via event corresponding to the first via event element; obtaining a preset sampling rate; determining a starting element and an ending element of the first via event in an initial array based on the first random number, the via duration, and the sampling rate; obtaining a first coefficient from the coefficient array; and determining a first current trajectory corresponding to the first via event based on the starting element, the ending element, and the first coefficient.

[0057] It should be noted that the first element is any element in the Gaussian distribution array.

[0058] It should be noted that the first coefficient is any element in the coefficient array.

[0059] In the embodiment of the present application, the number of the first random number is one, and the value range of the first random number satisfies the preset random number range.

[0060] It should be noted that the preset random number range can be 0.3-0.7, and the preset random number range can also be 0.4-0.6. The specific range of the preset random number can be determined according to actual conditions, and the embodiments of the present application do not limit this.

[0061] In the embodiment of the present application, the via event must include a peak value, a rising interval, and a falling interval. However, according to the observation results of real data, the rising interval and the falling interval are not necessarily evenly distributed. That is, if the via event takes 1 second, the distribution of the rising period and the falling period is basically not 0.5 seconds each, but the difference between the two will not be too large, and the number of points before and after the peak is not the same. To simulate this process, the random number here simulates the rise time as 0.3 to 0.7 of the duration of the via event, and the corresponding fall time is 0.7 to 0.3. Only when the first random number is 0.5, the rise period and the fall period will appear symmetrical.

[0062] In an embodiment of the present application, the process of determining the starting element and the ending element of the first via event in the initial array according to the first random number, the via duration and the sampling rate can be: determining a first product between the first random number, the via duration and the sampling rate, and rounding the first product to obtain a first current quantity at the rising edge of the first via event; determining a difference between 1 and the first random number, determining a second product between the difference, the via duration and the sampling rate, and rounding the second product to obtain a second current quantity at the falling edge of the first via event; in the initial array, obtaining a current value of the first current quantity before the first via event element to obtain the starting element of the first via event; obtaining a current value of the second current quantity after the first via event element in the initial array to obtain the ending element of the first via event.

[0063] Exemplarily, the first product between the sampling rate, the via duration and the first random number is determined, i.e., samplig_rate*possible_dur*ω, the first product is taken as the number of current values ​​included in the rising period of the via event, recorded as left_number (i.e., the first current number), the difference between 1 and the first random number is determined, the second product between the sampling rate, the via duration and the difference is determined, i.e., samplig_rate*possible_dur*(1-ω) is calculated, and the second product is taken as the number of current values ​​included in the falling period of the via event, recorded as right_number (i.e., the second current number). In other words, the indexes of the starting point and the ending point of the via event are start_index=iter_index-left_number (in the initial array, the current value of the first current number before the first via event element is obtained to obtain the starting element of the first via event) and end_index=iter_index+right_number (in the initial array, the current value of the second current number after the first via event element is obtained to obtain the ending element of the first via event).

[0064] In an embodiment of the present application, a data construction device determines a process of a first current trajectory corresponding to a first via event based on a starting element, an ending element, and a first coefficient, including: obtaining the pore size of a nanopore and a molecular diameter of a target molecule; determining a current peak value of the first via event based on the first coefficient, the starting element, the pore size, and the molecular diameter; determining a linear relationship between elements in an initial array and a time interval from a starting element to an ending element; determining a first auxiliary value and a second auxiliary value based on the starting element and the ending element; and determining a first current trajectory based on the first auxiliary value, the second auxiliary value, the current peak value, the linear relationship, and a preset floating-point number.

[0065] In the embodiment of the present application, the pore size of the nanopore is a parameter that has been determined when the solid-state nanopore is manufactured. The molecular diameter of the target molecule can be the diameter of a DNA molecule.

[0066] In the embodiment of the present application, the current peak value of the first via event is determined according to the first coefficient, the starting element, the pore size and the molecular diameter, as shown in formula (2):

[0067]

[0068] Where peak_value is the current peak value, X[start_index] is the starting element; β is the first coefficient; is the square of the ratio of the molecular diameter to the pore size.

[0069] It should be noted that when a diameter is d DNA The molecules pass through the nanopore (pore size d pore ), the resulting current change amplitude meets the conditions of formula (3):

[0070]

[0071] Among them, d DNA is the diameter of the DNA molecule, DI is the amplitude of the current change, I 0 is the element in the initial array, i.e., the baseline current.

[0072] In the embodiment of the present application, the method of determining the linear relationship between the elements in the initial array and the interval from the start element to the end element and time is as shown in formula (4):

[0073]

[0074] It should be noted that index_ is the index in the interval [start_index:end_index+1], start_index is the index of the starting element, t[index_] is the time corresponding to the index in the interval [start_index:end_index+1], left_number is the first current quantity, and right_number is the second current quantity.

[0075] In the embodiment of the present application, the process of determining the first auxiliary value and the second auxiliary value according to the starting element and the ending element is shown in formulas (5)-(6):

[0076]

[0077]

[0078] It should be noted that Itemp1 is the first auxiliary value, I temp2 is the second auxiliary value, end_index is the index of the ending element, and start_index is the index of the starting element.

[0079] It should be noted that the index of the starting element corresponding to the starting element and the index of the ending element corresponding to the ending element are first determined, and then the first auxiliary value and the second auxiliary value are determined according to the index of the starting element and the index of the ending element using formulas (5)-(6).

[0080] In the embodiment of the present application, the process of determining the first current trajectory is as shown in formula (7) according to the first auxiliary value, the second auxiliary value, the current peak value, the linear relationship and the preset floating point number:

[0081] Determine a comprehensive assistance value (I) based on the first assistance value and the second assistance value temp ), i.e. I temp =-(I temp1 *index_+I temp2 ) 2 +2.1, it should be noted that index_ is an index in the interval [start_index:end_index+1]. The floating point number ε is preset to be any floating point number between 0.5 and 2, then there is formula (7)

[0082]

[0083] Formula (7) is the simulation of the current value in the via event time period [start_index:end_index+1]. Where peak_value is the current peak value, and X[index_] is the current value at time t[index_].

[0084] In an embodiment of the present application, a data construction device determines an element corresponding to a via event from an initial array to obtain at least one via event element, including: generating an index corresponding to each element in the initial array to obtain multiple indexes; generating multiple floating-point numbers when the index values ​​of multiple first indexes in the multiple indexes are less than the length value of a preset length; and taking an element corresponding to at least one first floating-point number in the initial array as at least one via event element when at least one first floating-point number in the multiple floating-point numbers is less than or equal to a preset via event probability.

[0085] It should be noted that the multiple first indexes are partial indexes among the multiple indexes.

[0086] In an embodiment of the present application, an index corresponding to each element in the initial array is generated to obtain multiple indexes. The method can be to set the index corresponding to the first array in the initial array as the first index; and to accumulate the first indexes in sequence according to the preset data length to obtain multiple accumulated indexes, and to use the multiple accumulated indexes as the indexes corresponding to the remaining arrays in the initial array except the first array.

[0087] Exemplarily, there are 5 elements in the initial array, namely 1.1, 1.5, 1.3, 1.8, and 1.2; the index corresponding to the first array 1.1 in the initial array is set to the first index (0); and the first indexes are accumulated in sequence according to the preset data length (1) to obtain multiple accumulated indexes (i.e. 0+1=1, 0+1+1=2, 0+1+1+1=3, 0+1+1+1+1=4), and then the index corresponding to the second array 1.5 in the initial array is set to 1; the index corresponding to the third array 1.3 in the initial array is set to 2; the index corresponding to the fourth array 1.8 in the initial array is set to 3; and the index corresponding to the fifth array 1.2 in the initial array is set to 4.

[0088] In the embodiment of the present application, the method of generating multiple floating-point numbers can be a method in the prior art, and the specific embodiment of the present application is not limited to this.

[0089] In the embodiment of the present application, the preset via event probability can be a probability configured in the data construction device, or a probability transmitted to the data construction device by other equipment, or a probability obtained by the data construction device in other ways. The specific way in which the data construction device obtains the preset via event probability can be determined based on actual conditions, and the embodiment of the present application does not limit this.

[0090] In an embodiment of the present application, when at least one first floating-point number among a plurality of floating-point numbers is less than or equal to a preset via event probability, the data construction device also obtains the sample concentration, ambient temperature, voltage applied across the nanopore, basic charge, Boltzmann constant and coefficient of the target molecule to be passed through the nanopore before using the element corresponding to at least one first floating-point number in the initial array as at least one via event element; and determines the preset via event probability based on the sample concentration, ambient temperature, voltage, basic charge, Boltzmann constant and coefficient.

[0091] In the present application, the difficulty of solid-state nanopore sequencing is that DNA passes through the nanopore very quickly, so a high sampling rate and a low sample concentration are usually used, making the distribution of DNA passing through the nanopore random and sparse. At the same time, the current change corresponding to the pore-passing event is seriously affected by noise.

[0092] In an embodiment of the present application, after the solid-state nanopore data sequencing experiment starts, the measured current value of the device is the sum of the baseline current and the noise. When a DNA molecule passes through the nanopore, it causes a short blockage of the nanopore, triggering an obvious change in the current value. This phenomenon can be understood as a peak being generated for each translocation event. If the DNA sample concentration is C DNA , the probability of a current peak occurring at a specific moment is shown in formula (8):

[0093]

[0094] where k 0 is a coefficient, k B is the Boltzmann constant, T is the temperature of the environment where the experiment is conducted (ambient temperature), e is the elementary charge, V is the voltage applied across the nanopore, and C DNA is the sample concentration of the target molecule.

[0095] In an embodiment of the present application, the process in which the data construction device takes the elements corresponding to at least one first floating-point number in the initial array as at least one translocation event element further includes: determining at least one target index corresponding to at least one first floating-point number from multiple indexes; and determining at least one target index as at least one index corresponding to at least one translocation event peak.

[0096] Exemplarily, in an embodiment of the present application, the process of performing a random translocation marking process on the initial array to obtain a translocation marking array of translocation events is as shown in steps (1)-(8):

[0097] Step (1): Given an array X of current changing with time (i.e., the initial array) and the index iter_index of the current value in the array, for each iter_index < len(X), a floating-point number between 0 and 1 is randomly generated. When this floating-point number is less than or equal to the above probability P, it is determined as the index of the translocation event peak:

[0098] Step (2): Generate a Gaussian distribution array, and randomly select one element from it as the duration of this translocation event, denoted as possible_dur, with a range between 0.05 milliseconds and 0.35 milliseconds and an average value of 0.2 milliseconds; it should be noted that this Gaussian distribution array is only generated once, and the durations of all subsequent translocation events (i.e., the elements of the Gaussian distribution array) are selected from this Gaussian distribution array and are not repeated;

[0099] Step (3): Generate a random number ω between 0.3 and 0.7, calculate samplig_rate*possible_dur*ω and take the integer as the number of current values ​​included in the rising period of the via event, recorded as left_number, calculate samplig_rate*possible_dur*(1-ω) and take the integer as the number of current values ​​included in the falling period of the via event, recorded as right_number. In other words, the indexes of the starting point and the ending point of the via event are start_index=iter_index-left_number and end_index=iter_index+right_number respectively;

[0100] Step (4): Generate a monotonically decreasing exponential distribution array ranging from 2 to 0.01, and randomly select an element β as the coefficient of the current peak. It should be noted that this array is only generated once, and the current peak coefficients of all subsequent via events are selected from this array without duplication;

[0101] Step (5): reset the iter_indexth current value to the sum of the baseline current and the via event amplitude generated above, i.e.

[0102] Step (6): The time t corresponding to the interval X[start_index:end_index+1] is a linear relationship: For the index index_ in the interval [start_index:end_index+1], there exists formula (4):

[0103]

[0104] Step (7): Take two auxiliary values ​​before adding the current change value within the via event range as shown in formulas (5)-(6):

[0105]

[0106]

[0107] Step (8): Take I temp =-(I temp1 *index_+I temp2 ) 2 +2.1, let ε be any floating point number between 0.5 and 2, then there exists formula (7)

[0108]

[0109] At this point, the simulation of the current value in the via event time period [start_index:end_index+1] is completed. Repeating the above steps (1)-(8) starting from the index end_index+1 can complete the current simulation on the entire current signal array.

[0110] S103 , adding noise to the via mark array to obtain a via trajectory array.

[0111] In an embodiment of the present application, after the data construction device performs random via mark processing on the initial array and obtains a via mark array of via events, noise can be added to the via mark array to obtain a via trajectory array.

[0112] In an embodiment of the present application, the data construction device adds noise to the via mark array to obtain a via trajectory array, and also obtains a preset signal-to-noise ratio parameter; generates an initial noise array; determines the noise array based on the initial noise array and the signal-to-noise ratio parameter; accordingly, the process of adding noise to the via mark array to obtain a via trajectory array includes: respectively fusing the elements in the via mark array and the elements in the noise array to obtain a via trajectory array.

[0113] In an embodiment of the present application, the method for generating the initial noise array can be to generate a plurality of random numbers equal to the number of preset initial noise arrays, and use the plurality of random numbers as elements of the initial noise array to obtain the initial noise array; the initial noise array can also be generated in other ways, and the specific method for generating the initial noise array can be determined according to actual conditions, and the embodiment of the present application is not limited to this.

[0114] In the embodiment of the present application, the noise array is determined according to the initial noise array and the signal-to-noise ratio parameter, as shown in formula (9):

[0115]

[0116] It should be noted that WGN (X, F) is a noise array. For example, Gaussian white noise (WGN) can be used to simulate the noise in the data acquisition process; F is the signal-to-noise ratio, and the one-dimensional array is an array of current changes over time, that is, the initial noise array X = (x 1 ,x 2 ,...,x n ), there are n elements in the initial noise array, x i is the ith element.

[0117] It is understandable that the data generation method in the embodiment of the present application solves the problem of lack of public, high-quality labeled data sets faced by existing event detection methods and event classification methods based on machine learning. In the embodiment of the present application, for the simulation of the via event, based on artificial settings, a solution is proposed for the problem that the via event characteristics cannot be obtained through experimental observation. The data generation method in the embodiment of the present application takes into account the randomness of the via event and the principle of nanopore conductivity. First, the time point of the via event is determined by calculating the probability, and then the via event signal that conforms to the nanopore conductivity is added at the event point, so that the generated signal is very close to the real data. The data generation method in the embodiment of the present application combines the via event characteristics reported in the literature, proposes the via event duration based on exponential distribution, and the via event current change amplitude based on Gaussian distribution, and the generated via event is diverse and relatively concentrated, which is of great help to evaluate the existing via event detection method and develop the via event detection / classification algorithm based on machine learning.

[0118] For example, a set of single-stranded DNA signals passing through a solid-state nanopore is generated with a sampling rate of 250 kHz, a signal-to-noise ratio of 10, a voltage of 300 mV, and a nanopore diameter of 2 nm. The total length of the signal is 300 seconds, and the generated data is as follows: Figure 2 As shown, there are multiple via event peaks within 300 seconds, that is, the time point corresponding to each current value is generated.

[0119] When the data is output, the via event features added to the data set are output as labels for the data, which will be used to evaluate the performance of the via event detection algorithm or to develop an AI-based via event detection algorithm. The output label information is shown in Table 1.

[0120] Table 1: Figure 2 Label information corresponding to the signal shown

[0121]

[0122]

[0123] The details of the first via event after zooming in are as follows Figure 3 As shown, there is a peak value between 0.098 and 0.09825 seconds, that is, a via event, and each current value and the corresponding time point corresponding to the via event are obtained.

[0124] In the embodiments of the present application, Figure 2 There are 2,936 pore-through events in the solid-state nanopore sequencing data shown in Figure 1. The distribution of their amplitude and pore-through time is shown in Figure 1. Figure 4 shown.

[0125] It can be understood that the data construction device generates an initial array based on the baseline current, and performs random via marking processing on the initial array, so that the via events in the initial array can be accurately determined, and an accurate via marking array of the via events can be obtained. By adding noise to the via marking array to simulate the noise during vias in actual situations, an accurate via trajectory array can be obtained. When the accurate via trajectory array is used as a sample to train a machine learning model, the accuracy of the model will be improved, thereby improving the accuracy of via event detection using the machine learning model.

[0126] Based on the same inventive concept as the above-mentioned data construction method, the embodiment of the present application provides a data construction device 1, corresponding to a data construction method; Figure 5 A schematic diagram of the structure of a data construction device provided in an embodiment of the present application Figure 1 , the data construction device 1 may include:

[0127] A generating unit 11, configured to generate an initial array of a preset length according to a baseline current; the baseline current is a current when no target molecule passes through the nanopore;

[0128] A processing unit 12 is used to perform random via mark processing on the initial array to obtain a via mark array of via events;

[0129] The adding unit 13 is used to add noise to the via mark array to obtain a via track array.

[0130] In some embodiments of the present application, the apparatus further comprises a determining unit;

[0131] The determination unit is used to determine the element corresponding to the via event from the initial array to obtain at least one via event element; determine the number of the at least one via event element to obtain a first number; and determine the current trajectory parameters corresponding to the at least one via event element in sequence according to the Gaussian distribution array and the coefficient array to obtain the via mark array;

[0132] The generating unit 11 is used to generate a Gaussian distribution array and an exponential distribution coefficient array, wherein the number of elements in the Gaussian distribution array is the first number; and the number of elements in the coefficient array is the first number.

[0133] In some embodiments of the present application, the determination unit is used to determine a first current trajectory corresponding to a first via event element among the at least one via event element based on the Gaussian distribution array and the coefficient array; and in accordance with the manner of determining the first current trajectory, continue to determine the current trajectory parameters corresponding to the at least one via event element based on the Gaussian distribution array and the coefficient array; and determine the current trajectory parameters as the via mark array.

[0134] In some embodiments of the present application, the apparatus further includes an acquisition unit;

[0135] The generating unit 11 is used to generate a first random number;

[0136] The acquisition unit is used to randomly acquire a first element from the Gaussian distribution array; the first element is any element in the Gaussian distribution array; acquire a preset sampling rate; acquire a first coefficient from the coefficient array; the first coefficient is any element in the coefficient array;

[0137] The determination unit is used to determine the first element as the via duration of the first via event corresponding to the first via event element; determine the starting element and the ending element of the first via event in the initial array according to the first random number, the via duration and the sampling rate; and determine the first current trajectory corresponding to the first via event according to the starting element, the ending element and the first coefficient.

[0138] In some embodiments of the present application, the acquisition unit is used to acquire the pore size of the nanopore and the molecular diameter of the target molecule;

[0139] The determination unit is used to determine the current peak of the first via event based on the first coefficient, the starting element, the pore size and the molecular diameter; determine the linear relationship between the elements in the initial array and the time in the interval from the starting element to the ending element; determine the first auxiliary value and the second auxiliary value based on the starting element and the ending element; determine the first current trajectory based on the first auxiliary value, the second auxiliary value, the current peak, the linear relationship and a preset floating point number.

[0140] In some embodiments of the present application, the generating unit 11 is used to generate an index corresponding to each element in the initial array to obtain multiple indexes; when the index values ​​of multiple first indexes in the multiple indexes are less than the length value of the preset length, generate multiple floating point numbers; the multiple first indexes are partial indexes in the multiple indexes;

[0141] The determining unit is configured to use an element corresponding to the at least one first floating-point number in the initial array as the at least one via event element when at least one first floating-point number among the multiple floating-point numbers is less than or equal to a preset via event probability.

[0142] In some embodiments of the present application, the acquisition unit is used to acquire the sample concentration of the target molecule to be passed through the nanopore, the ambient temperature, the voltage applied across the nanopore, the basic charge, the Boltzmann constant and the coefficient;

[0143] The determination unit is used to determine the preset via event probability according to the sample concentration, the ambient temperature, the voltage, the basic charge, the Boltzmann constant and the coefficient.

[0144] In some embodiments of the present application, the determination unit is used to determine at least one target index corresponding to at least one first floating-point number from multiple indexes; and determine the at least one target index as at least one index corresponding to at least one via event peak.

[0145] In some embodiments of the present application, the acquisition unit is used to acquire a preset signal-to-noise ratio parameter;

[0146] The generating unit 11 is used to generate an initial noise array;

[0147] The determining unit is used to determine the noise array according to the initial noise array and the signal-to-noise ratio parameter;

[0148] Accordingly, the device further comprises a fusion unit;

[0149] The fusion unit is used to fuse the elements in the via mark array and the elements in the noise array respectively to obtain the via track array.

[0150] In some embodiments of the present application, the apparatus further comprises an establishing unit;

[0151] The generating unit 11 is used to generate a plurality of floating point numbers;

[0152] The fusion unit is used to combine the multiple floating point numbers and the baseline current respectively to obtain multiple elements;

[0153] The establishing unit is used to establish the initial array according to the multiple elements.

[0154] In some embodiments of the present application, the determination unit is used to determine the voltage applied across the nanopore, the conductivity of the solution in the reaction tank, the thickness and the pore size of the nanopore; and determine the baseline current based on the voltage, the conductivity, the thickness and the pore size.

[0155] It should be noted that, in actual applications, the above-mentioned generation unit 11, processing unit 12 and adding unit 13 can be implemented by a processor 14 on the data construction device 1, specifically a CPU (Central Processing Unit), an MPU (Microprocessor Unit), a DSP (Digital Signal Processing) or a field programmable gate array (FPGA); the above-mentioned data storage can be implemented by a memory 15 on the data construction device 1.

[0156] The present application also provides a data construction device 1, such as Figure 6 As shown, the data construction device 1 includes: a processor 14, a memory 15 and a communication bus 16. The memory 15 communicates with the processor 14 via the communication bus 16. The memory 15 stores a program executable by the processor 14. When the program is executed, the data construction method described above is executed by the processor 14.

[0157] In practical applications, the memory 15 may be a volatile memory, such as a random access memory (RAM); or a non-volatile memory, such as a read-only memory (ROM), a flash memory, a hard disk (HDD) or a solid-state drive (SSD); or a combination of the above types of memory, and provide instructions and data to the processor 14.

[0158] An embodiment of the present application provides a computer-readable storage medium having a computer program thereon, and when the program is executed by the processor 14, the data construction method as described above is implemented.

[0159] It can be understood that the data construction device generates an initial array based on the baseline current, and performs random via marking processing on the initial array, so that the via events in the initial array can be accurately determined, and an accurate via marking array of the via events can be obtained. By adding noise to the via marking array to simulate the noise during vias in actual situations, an accurate via trajectory array can be obtained. When the accurate via trajectory array is used as a sample to train a machine learning model, the accuracy of the model will be improved, thereby improving the accuracy of via event detection using the machine learning model.

[0160] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of hardware embodiments, software embodiments, or embodiments in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) that contain computer-usable program code.

[0161] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0162] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0163] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0164] The above description is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application.

Claims

1. A data construction method, It is characterized in that The method comprises: Generating an initial array of preset length according to a baseline current; the baseline current is the current when no target molecule passes through the nanopore; Performing random via mark processing on the initial array to obtain a via mark array of via events; Noise is added to the via mark array to obtain a via trace array.

2. The method according to claim 1, It is characterized in that The performing random via mark processing on the initial array to obtain a via mark array of via events includes: Determine an element corresponding to a via event from the initial array to obtain at least one via event element; Determine the number of the at least one via event element to obtain a first number; Generate a Gaussian distribution array and an exponential distribution coefficient array, wherein the number of elements in the Gaussian distribution array is the first number; the number of elements in the coefficient array is the first number; According to the Gaussian distribution array and the coefficient array, the current trajectory parameters corresponding to the at least one via event element are determined in sequence to obtain the via mark array.

3. The method according to claim 2, It is characterized in that The step of sequentially determining the current trajectory parameters corresponding to the at least one via event element according to the Gaussian distribution array and the coefficient array to obtain the via mark array includes: Determine a first current trajectory corresponding to a first via event element among the at least one via event element according to the Gaussian distribution array and the coefficient array; and determine the current trajectory parameter corresponding to the at least one via event element according to the Gaussian distribution array and the coefficient array in the manner of determining the first current trajectory; The current trace parameters are determined as the via mark array.

4. The method according to claim 3, It is characterized in that The determining, according to the Gaussian distribution array and the coefficient array, a first current trajectory corresponding to a first via event element of the at least one via event element comprises: Generate a first random number; randomly obtain a first element from the Gaussian distribution array, and determine the first element as the via duration of the first via event corresponding to the first via event element; the first element is any element in the Gaussian distribution array; Get the preset sampling rate; Determine a start element and an end element of the first via event in the initial array according to the first random number, the via duration and the sampling rate; Obtaining a first coefficient from the coefficient array; the first coefficient is any element in the coefficient array; A first current trajectory corresponding to the first via event is determined according to the starting element, the ending element, and the first coefficient.

5. The method according to claim 4, It is characterized in that The determining, according to the starting element, the ending element, and the first coefficient, a first current trajectory corresponding to the first via event includes: Obtaining the pore size of the nanopore and the molecular diameter of the target molecule; determining a current peak value of a first via event according to the first coefficient, the starting element, the pore size, and the molecular diameter; Determine a linear relationship between elements in the initial array and time within a range from the start element to the end element; Determine a first auxiliary value and a second auxiliary value according to the start element and the end element; The first current trajectory is determined according to the first auxiliary value, the second auxiliary value, the current peak value, the linear relationship and a preset floating point number.

6. The method according to claim 2, It is characterized in that The step of determining an element corresponding to a via event from the initial array to obtain at least one via event element includes: Generate an index corresponding to each element in the initial array to obtain multiple indexes; In the case where the index values ​​of a plurality of first indexes among the plurality of indexes are less than the length value of the preset length, generating a plurality of floating point numbers; the plurality of first indexes are partial indexes among the plurality of indexes; When at least one first floating-point number among the multiple floating-point numbers is less than or equal to a preset via event probability, an element corresponding to the at least one first floating-point number in the initial array is used as the at least one via event element.

7. The method according to claim 6, It is characterized in that Before taking the element corresponding to the at least one first floating-point number in the initial array as the at least one via event element when at least one first floating-point number among the multiple floating-point numbers is less than or equal to a preset via event probability, the method further includes: Obtaining the sample concentration of the target molecule to be passed through the nanopore, the ambient temperature, the voltage applied across the nanopore, the elementary charge, the Boltzmann constant and the coefficient; The preset via event probability is determined according to the sample concentration, the ambient temperature, the voltage, the elementary charge, the Boltzmann constant and the coefficient.

8. The method according to claim 6, It is characterized in that The step of using the element corresponding to the at least one first floating point number in the initial array as the at least one via event element further includes: Determine at least one target index corresponding to at least one first floating point number from the plurality of indexes; The at least one target index is determined as at least one index corresponding to at least one via event peak.

9. The method according to claim 1, It is characterized in that Before adding noise to the via mark array to obtain the via trace array, the method further includes: Get the preset signal-to-noise ratio parameters; Generate initial noise array; Determine a noise array according to the initial noise array and the signal-to-noise ratio parameter; Correspondingly, adding noise to the via mark array to obtain a via track array includes: The elements in the via mark array and the elements in the noise array are merged respectively to obtain the via trace array.

10. The method according to claim 1, It is characterized in that The step of generating an initial array of a preset length according to the baseline current comprises: Generate multiple floating point numbers; Combining the plurality of floating point numbers and the baseline current respectively to obtain a plurality of elements; The initial array is established according to the plurality of elements.

11. The method according to claim 1, It is characterized in that Before generating an initial array of preset length according to the baseline current, the method further includes: Determining the voltage applied across the nanopore, the conductivity of the solution in the reaction tank, and the thickness and pore size of the nanopore; The baseline current is determined based on the voltage, the conductivity, the thickness, and the pore size.

12. A data construction device, It is characterized in that The device comprises: A generating unit, used to generate an initial array of a preset length according to a baseline current; the baseline current is a current when no target molecule passes through the nanopore; A processing unit, used for performing random via mark processing on the initial array to obtain a via mark array of via events; The adding unit is used to add noise to the via mark array to obtain a via track array.

13. A data construction device, It is characterized in that The device comprises: A memory, a processor and a communication bus, wherein the memory communicates with the processor via the communication bus, the memory stores a data-structured program executable by the processor, and when the data-structured program is executed, the method according to any one of claims 1 to 11 is executed by the processor.

14. A storage medium having a computer program stored thereon, applied to a data construction device, It is characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 11 is implemented.