Duplication and deletion detection using transformation processing of depth vectors
Abstract
Techniques for accurately identifying duplications and deletions using depth vectors. A depth vector is generated for each of multiple clients based on a set of reads that is received and aligned to a reference data set. A transformation processing of the depth vectors is performed to produce multiple components. Each of the components is assigned an order based on the extent to which it accounts for cross-client differences in the depth vectors. Each of the components includes an intensity, multiple values, and multiple client weights. A subset of the components is identified based on the order. A sparse indicator and positional data for the sparse indicator can be determined from the components in the subset, and one or more clients can be identified as being associated with the components.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method for generating and transforming depth vectors for sparse-indicator detection, the method comprising:
for each client of a set of clients:
receiving a set of reads, each read of the set of reads being associated with the client, each read of the set of reads including a set of identifiers, the set of identifiers being arranged in a particular order in the read;
aligning each read of the set of reads with a portion of a reference data set; and
generating a depth vector for the client that includes a plurality of elements, each element of the plurality of elements being generated based on a quantity of reads that include an identifier aligned to a portion that includes a particular position within the reference data set; and
performing a transformation processing of the depth vectors to produce a plurality of components, each of the plurality of components being assigned an order based on an extent to which the component accounts for cross-client differences;
identifying a subset of the plurality of components based on the order; and
for each component in the subset:
generating, for each client in the set of clients, a weight for the component;
determining, for each client of one or more of the set of clients, that the weight for the component indicates that the client is to be associated with a sparse indicator;
determining positional data for the sparse indicator based on values in the component; and
storing, for each of the one or more of the set of clients, an association between an identifier of the client and sparse-indicator data that includes the positional data.
2. The method of claim 1 , further comprising:
for each client of a set of clients:
generating a normalized depth vector for the client based on the depth vector for the client and a plurality of other depth vectors, each of the plurality of other depth vectors being associated with a corresponding other client different than the client;
wherein generating the normalized depth vector includes, for each element of the plurality of elements:
identifying, from each depth vector of at least one of the plurality of other depth vectors, an other depth value from the depth vector, the other depth value being associated with the element;
generating a normalization factor for the element based at least in part on each identified other depth value; and
defining a value for the element in the normalized depth vector based on a value for the element in the depth vector and the normalization factor.
3. The method of claim 1 , wherein assigning the order to each of the plurality of components includes:
assigning an intensity to each of the plurality of components based on the extent to which the component accounts for cross-client differences; and
assigning the order to each of the plurality of components by sorting the plurality of components by intensity in descending order.
4. The method of claim 3 , further comprising:
identifying one or more first components of the plurality of components; and
identifying one or more second components of the plurality of components;
wherein the intensity assigned to each of the one or more first components is greater than the intensity assigned to each of the one or more second components;
wherein the subset of the plurality of components includes the one or more first components but not the one or more second components.
5. The method of claim 4 , wherein determining, for each client of one or more of the set of clients, that the weight for the component indicates that the client is to be associated with the sparse indicator includes:
determining that the weight for the component is above a predetermined threshold.
6. The method of claim 4 , wherein determining the positional data for the sparse indicator based on the values in the component includes:
identifying one or more values of the values in the component that are above a predetermined threshold.
7. The method of claim 1 , wherein each of the plurality of components includes a vector comprising the values, and wherein:
a size of the values corresponds to a size of the depth vector; and
a size of the plurality of components corresponds to a size of the set of clients.
8. The method of claim 1 , further comprising:
determining whether the sparse indicator corresponds to a duplication or a deletion.
9. A system, comprising:
one or more data processors; and
a non-transitory computer readable storage medium containing instructions which when executed on the one or more data processors, cause the one or more data processors to perform actions including:
for each client of a set of clients:
receiving a set of reads, each read of the set of reads being associated with the client, each read of the set of reads including a set of identifiers, the set of identifiers being arranged in a particular order in the read;
aligning each read of the set of reads with a portion of a reference data set; and
generating a depth vector for the client that includes a plurality of elements, each element of the plurality of elements being generated based on a quantity of reads that include an identifier aligned to a portion that includes a particular position within the reference data set; and
performing a transformation processing of the depth vectors to produce a plurality of components, each of the plurality of components being assigned an order based on an extent to which the component accounts for cross-client differences;
identifying a subset of the plurality of components based on the order; and
for each component in the subset:
generating, for each client in the set of clients, a weight for the component;
determining, for each client of one or more of the set of clients, that the weight for the component indicates that the client is to be associated with a sparse indicator;
determining positional data for the sparse indicator based on values in the component; and
storing, for each of the one or more of the set of clients, an association between an identifier of the client and sparse-indicator data that includes the positional data.
10. The system of claim 9 , wherein the actions further include:
for each client of a set of clients:
generating a normalized depth vector for the client based on the depth vector for the client and a plurality of other depth vectors, each of the plurality of other depth vectors being associated with a corresponding other client different than the client;
wherein generating the normalized depth vector includes, for each element of the plurality of elements:
identifying, from each depth vector of at least one of the plurality of other depth vectors, an other depth value from the depth vector, the other depth value being associated with the element;
generating a normalization factor for the element based at least in part on each identified other depth value; and
defining a value for the element in the normalized depth vector based on a value for the element in the depth vector and the normalization factor.
11. The system of claim 9 , wherein assigning the order to each of the plurality of components includes:
assigning an intensity to each of the plurality of components based on the extent to which the component accounts for cross-client differences; and
assigning the order to each of the plurality of components by sorting the plurality of components by intensity in descending order.
12. The system of claim 11 , wherein the actions further include:
identifying one or more first components of the plurality of components; and
identifying one or more second components of the plurality of components;
wherein the intensity assigned to each of the one or more first components is greater than the intensity assigned to each of the one or more second components;
wherein the subset of the plurality of components includes the one or more first components but not the one or more second components.
13. The system of claim 12 , wherein determining, for each client of one or more of the set of clients, that the weight for the component indicates that the client is to be associated with the sparse indicator includes:
determining that the weight for the component is above a predetermined threshold.
14. The system of claim 12 , wherein determining the positional data for the sparse indicator based on the values in the component includes:
identifying one or more values of the values in the component that are above a predetermined threshold.
15. The system of claim 9 , wherein each of the plurality of components includes a vector comprising the values, and wherein:
a size of the values corresponds to a size of the depth vector; and
a size of the plurality of components corresponds to a size of the set of clients.
16. The system of claim 9 , further comprising:
determining whether the sparse indicator corresponds to a duplication or a deletion.
17. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause one or more data processors to perform actions including:
for each client of a set of clients:
receiving a set of reads, each read of the set of reads being associated with the client, each read of the set of reads including a set of identifiers, the set of identifiers being arranged in a particular order in the read;
aligning each read of the set of reads with a portion of a reference data set; and
generating a depth vector for the client that includes a plurality of elements, each element of the plurality of elements being generated based on a quantity of reads that include an identifier aligned to a portion that includes a particular position within the reference data set; and
performing a transformation processing of the depth vectors to produce a plurality of components, each of the plurality of components being assigned an order based on an extent to which the component accounts for cross-client differences;
identifying a subset of the plurality of components based on the order; and
for each component in the subset:
generating, for each client in the set of clients, a weight for the component;
determining, for each client of one or more of the set of clients, that the weight for the component indicates that the client is to be associated with a sparse indicator;
determining positional data for the sparse indicator based on values in the component; and
storing, for each of the one or more of the set of clients, an association between an identifier of the client and sparse-indicator data that includes the positional data.
18. The computer-program product of claim 17 , wherein the actions further include:
for each client of a set of clients:
generating a normalized depth vector for the client based on the depth vector for the client and a plurality of other depth vectors, each of the plurality of other depth vectors being associated with a corresponding other client different than the client;
wherein generating the normalized depth vector includes, for each element of the plurality of elements:
identifying, from each depth vector of at least one of the plurality of other depth vectors, an other depth value from the depth vector, the other depth value being associated with the element;
generating a normalization factor for the element based at least in part on each identified other depth value; and
defining a value for the element in the normalized depth vector based on a value for the element in the depth vector and the normalization factor.
19. The computer-program product of claim 17 , wherein assigning the order to each of the plurality of components includes:
assigning an intensity to each of the plurality of components based on the extent to which the component accounts for cross-client differences; and
assigning the order to each of the plurality of components by sorting the plurality of components by intensity in descending order.
20. The computer-program product of claim 19 , wherein the actions further include:
identifying one or more first components of the plurality of components; and
identifying one or more second components of the plurality of components;
wherein the intensity assigned to each of the one or more first components is greater than the intensity assigned to each of the one or more second components;
wherein the subset of the plurality of components includes the one or more first components but not the one or more second components.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.