From d9f6afc16fb4d13904dfce32a8694d42e411251e Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Fri, 6 Dec 2024 18:27:01 -0500 Subject: [PATCH 01/13] feat: update to anndata 0.11 and memory efficient reads --- .../cellxgene_schema/utils.py | 28 ++++++- .../cellxgene_schema/validate.py | 76 ++++++++++--------- cellxgene_schema_cli/requirements.txt | 2 +- cellxgene_schema_cli/tests/test_utils.py | 1 - cellxgene_schema_cli/tests/test_validate.py | 8 +- 5 files changed, 72 insertions(+), 43 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/utils.py b/cellxgene_schema_cli/cellxgene_schema/utils.py index e2b558f7..90cb8547 100644 --- a/cellxgene_schema_cli/cellxgene_schema/utils.py +++ b/cellxgene_schema_cli/cellxgene_schema/utils.py @@ -6,7 +6,10 @@ from typing import Dict, List, Union import anndata as ad +import h5py import numpy as np +from anndata.experimental import read_dispatched +from anndata.io import read_elem, sparse_dataset from cellxgene_ontology_guide.ontology_parser import OntologyParser from scipy import sparse from xxhash import xxh3_64_intdigest @@ -116,6 +119,28 @@ def getattr_anndata(adata: ad.AnnData, attr: str = None): return getattr(adata, attr) +def read_backed(f): + def callback(func, elem_name: str, elem, iospec): + if "layers" in elem_name or ("X" in elem_name and "X_" not in elem_name): + if iospec.encoding_type in ( + "csr_matrix", + "csc_matrix", + ): + return sparse_dataset(elem) + # Preventing recursing inside of these types + return read_elem(elem) + elif iospec.encoding_type == "array" and len(elem.shape) > 1: + return elem + else: + func(elem) + else: + return func(elem) + + adata = read_dispatched(f, callback=callback) + + return adata + + def read_h5ad(h5ad_path: Union[str, bytes, os.PathLike]) -> ad.AnnData: """ Reads h5ad into adata @@ -124,7 +149,8 @@ def read_h5ad(h5ad_path: Union[str, bytes, os.PathLike]) -> ad.AnnData: :rtype None """ try: - adata = ad.read_h5ad(h5ad_path, backed="r") + f = h5py.File(h5ad_path) + adata = read_backed(f) # This code, and AnnData in general, is optimized for row access. # Running backed, with CSC, is prohibitively slow. Read the entire diff --git a/cellxgene_schema_cli/cellxgene_schema/validate.py b/cellxgene_schema_cli/cellxgene_schema/validate.py index 781b72d1..6e8f9305 100644 --- a/cellxgene_schema_cli/cellxgene_schema/validate.py +++ b/cellxgene_schema_cli/cellxgene_schema/validate.py @@ -11,7 +11,6 @@ import numpy as np import pandas as pd import scipy -from anndata._core.sparse_dataset import SparseDataset from cellxgene_ontology_guide.ontology_parser import OntologyParser from pandas.errors import UndefinedVariableError from scipy import sparse @@ -474,7 +473,9 @@ def _chunk_matrix( if start < n: yield (matrix[start:n], start, n) - def _count_matrix_nonzero(self, matrix_name: str, matrix: Union[np.ndarray, sparse.spmatrix]) -> int: + def _count_matrix_nonzero( + self, matrix_name: str, matrix: Union[np.ndarray, sparse.spmatrix], filter_by_column: pd.Series = None + ) -> int: if matrix_name in self.number_non_zero: return self.number_non_zero[matrix_name] @@ -483,6 +484,8 @@ def _count_matrix_nonzero(self, matrix_name: str, matrix: Union[np.ndarray, spar nnz = 0 matrix_format = get_matrix_format(self.adata, matrix) for matrix_chunk, _, _ in self._chunk_matrix(matrix): + if filter_by_column is not None: + matrix_chunk = matrix_chunk[:, filter_by_column] nnz += matrix_chunk.count_nonzero() if matrix_format != "dense" else np.count_nonzero(matrix_chunk) self.number_non_zero[matrix_name] = nnz @@ -607,20 +610,7 @@ def _validate_column_feature_is_filtered(self, column: pd.Series, column_name: s return if sum(column) > 0: - n_nonzero = 0 - - X_format = get_matrix_format(self.adata, self.adata.X) - if X_format in SPARSE_MATRIX_TYPES: - n_nonzero = self.adata.X[:, column].count_nonzero() - - elif X_format == "dense": - n_nonzero = np.count_nonzero(self.adata.X[:, column]) - - else: - self.errors.append( - f"X matrix is of type {type(self.adata.X)}, validation of 'feature_is_filtered' " - f"cannot be completed." - ) + n_nonzero = self._count_matrix_nonzero("feature_is_filtered", self.adata.X, column) if n_nonzero > 0: self.errors.append( @@ -1350,33 +1340,45 @@ def _validate_raw_data(self, x: Union[np.ndarray, sparse.spmatrix], is_sparse_ma self._raw_layer_exists = False self.errors.append("All non-zero values in raw matrix must be positive integers of type numpy.float32.") - def _validate_raw_data_with_in_tissue_0( - self, x: Union[np.ndarray, sparse.spmatrix, SparseDataset], is_sparse_matrix: bool - ): + def _validate_raw_data_with_in_tissue_0(self, x: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool): """ Special case validation checks for Visium data with is_single = True and in_tissue column in obs where in_tissue - has at least one value 0. Static matrix size of 4992 rows, so chunking is not required. + has at least one value 0. :param x: raw matrix - :param is_sparse_matrix: bool indicating if the matrix is sparse {csc, csr, coo} + :param is_sparse_matrix: bool indicating if the matrix is sparse """ has_tissue_0_non_zero_row = False has_tissue_1_zero_row = False - if isinstance(x, SparseDataset): - x = x.to_memory() - if is_sparse_matrix: - nonzero_row_indices, _ = x.nonzero() - else: # must be dense matrix - nonzero_row_indices = np.where(np.any(x != 0, axis=1))[0] - for i in range(x.shape[0]): - if not has_tissue_0_non_zero_row and i in nonzero_row_indices and self.adata.obs["in_tissue"].iloc[i] == 0: - has_tissue_0_non_zero_row = True - elif ( - not has_tissue_1_zero_row and i not in nonzero_row_indices and self.adata.obs["in_tissue"].iloc[i] == 1 - ): - has_tissue_1_zero_row = True - if has_tissue_0_non_zero_row and has_tissue_1_zero_row: - # exit early and report + has_invalid_nonzero_values = False + + for matrix_chunk, start, _ in self._chunk_matrix(x): + if not has_invalid_nonzero_values and self._matrix_has_invalid_nonzero_values(matrix_chunk): + has_invalid_nonzero_values = True + + if is_sparse_matrix: + nonzero_row_indices, _ = matrix_chunk.nonzero() + else: # must be dense matrix + nonzero_row_indices = np.where(np.any(matrix_chunk != 0, axis=1))[0] + for i in range(matrix_chunk.shape[0]): + if has_tissue_0_non_zero_row and has_tissue_1_zero_row: + # exit inner loop early + break + unchunked_i = i + start + if ( + not has_tissue_0_non_zero_row + and i in nonzero_row_indices + and self.adata.obs["in_tissue"].iloc[unchunked_i] == 0 + ): + has_tissue_0_non_zero_row = True + elif ( + not has_tissue_1_zero_row + and i not in nonzero_row_indices + and self.adata.obs["in_tissue"].iloc[unchunked_i] == 1 + ): + has_tissue_1_zero_row = True + if has_tissue_0_non_zero_row and has_tissue_1_zero_row and has_invalid_nonzero_values: + # exit outer loop early and report break if not has_tissue_0_non_zero_row: @@ -1391,7 +1393,7 @@ def _validate_raw_data_with_in_tissue_0( "Each observation with obs['in_tissue'] == 1 must have at least one " "non-zero value in its row in the raw matrix." ) - if self._matrix_has_invalid_nonzero_values(x): + if has_invalid_nonzero_values: self._raw_layer_exists = False self.errors.append("All non-zero values in raw matrix must be positive integers of type numpy.float32.") diff --git a/cellxgene_schema_cli/requirements.txt b/cellxgene_schema_cli/requirements.txt index d8b2bcdd..ae391ec9 100644 --- a/cellxgene_schema_cli/requirements.txt +++ b/cellxgene_schema_cli/requirements.txt @@ -1,4 +1,4 @@ -anndata>=0.8,<0.11 +anndata==0.11 cellxgene-ontology-guide==1.3.0 # update before a schema migration click<9 Cython<4 diff --git a/cellxgene_schema_cli/tests/test_utils.py b/cellxgene_schema_cli/tests/test_utils.py index 69d8808e..4a88a515 100644 --- a/cellxgene_schema_cli/tests/test_utils.py +++ b/cellxgene_schema_cli/tests/test_utils.py @@ -155,4 +155,3 @@ def test_read_h5ad(self): h5ad_path = h5ad_valid adata = read_h5ad(h5ad_path) assert isinstance(adata, AnnData) - assert adata.isbacked diff --git a/cellxgene_schema_cli/tests/test_validate.py b/cellxgene_schema_cli/tests/test_validate.py index cd7652bf..f8ec49f6 100644 --- a/cellxgene_schema_cli/tests/test_validate.py +++ b/cellxgene_schema_cli/tests/test_validate.py @@ -370,13 +370,15 @@ def test__validate_spatial_visium_ok(self): validator.validate_adata() assert not validator.errors + @mock.patch("cellxgene_schema.validate.VISIUM_AND_IS_SINGLE_TRUE_MATRIX_SIZE", 2) def test__validate_from_file(self): - """Testing compatibility with SparseDatset types in Anndata""" + """Testing compatibility with SparseDataset types in Anndata""" validator: Validator = Validator() validator._set_schema_def() + validator._visium_and_is_single_true_matrix_size = 2 with tempfile.TemporaryDirectory() as temp_dir: - file_path = os.path.join(temp_dir, "slide_seqv2.h5ad") - adata_slide_seqv2.write_h5ad(file_path) + file_path = os.path.join(temp_dir, "visium.h5ad") + adata_visium.write_h5ad(file_path) # Confirm spatial is valid. validator.validate_adata(file_path) assert not validator.errors From 0189f7e3a6fc4b4399bce38d959b00e1fbcd469b Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Tue, 10 Dec 2024 18:55:48 -0500 Subject: [PATCH 02/13] use dask for memory-efficient writes --- cellxgene_schema_cli/cellxgene_schema/write_labels.py | 4 +++- cellxgene_schema_cli/requirements.txt | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/write_labels.py b/cellxgene_schema_cli/cellxgene_schema/write_labels.py index 9e6c4b63..0ccc5020 100644 --- a/cellxgene_schema_cli/cellxgene_schema/write_labels.py +++ b/cellxgene_schema_cli/cellxgene_schema/write_labels.py @@ -2,6 +2,7 @@ import traceback from typing import Dict, List, Optional +import dask import pandas as pd from cellxgene_schema import gencode from cellxgene_schema.env import SCHEMA_REFERENCE_BASE_URL, SCHEMA_REFERENCE_FILE_NAME @@ -381,7 +382,8 @@ def write_labels(self, add_labels_file: str): # Write file try: - self.adata.write_h5ad(add_labels_file, compression="gzip") + with dask.config.set(scheduler="single-threaded"): + self.adata.write_h5ad(add_labels_file, compression="gzip") except Exception as e: tb = traceback.format_exc() self.errors.append((f"Writing h5ad was unsuccessful, got exception '{e}'.", tb)) diff --git a/cellxgene_schema_cli/requirements.txt b/cellxgene_schema_cli/requirements.txt index ae391ec9..8db9526a 100644 --- a/cellxgene_schema_cli/requirements.txt +++ b/cellxgene_schema_cli/requirements.txt @@ -2,6 +2,7 @@ anndata==0.11 cellxgene-ontology-guide==1.3.0 # update before a schema migration click<9 Cython<4 +dask==2024.12.0 numpy<2 pandas>2,<3 PyYAML<7 From 90441e716794cb5c289ef3c27c62be003894064d Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Tue, 10 Dec 2024 18:56:30 -0500 Subject: [PATCH 03/13] remove TODOs for features anndata is not planning to support --- cellxgene_schema_cli/cellxgene_schema/validate.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/validate.py b/cellxgene_schema_cli/cellxgene_schema/validate.py index 6e8f9305..4bc0acd2 100644 --- a/cellxgene_schema_cli/cellxgene_schema/validate.py +++ b/cellxgene_schema_cli/cellxgene_schema/validate.py @@ -933,8 +933,7 @@ def _validate_dataframe(self, df_name: str): for column_name in df.columns: column = df[column_name] if column.dtype.name != "category": - # Check for columns with mixed values, which is not supported by anndata 0.8.0 - # TODO: check if this can be removed after upgading to anndata 0.10.0 + # Check for columns with mixed values, which is not supported by anndata value_types = {type(x) for x in column.values} if len(value_types) != 1: self.errors.append( @@ -951,16 +950,14 @@ def _validate_dataframe(self, df_name: str): ) self._validate_genetic_ancestry() categorical_types = {type(x) for x in column.dtype.categories.values} - # Check for columns that have illegal categories, which are not supported by anndata 0.8.0 - # TODO: check if this can be removed after upgading to anndata 0.10.0 + # Check for columns that have illegal categories, which are not supported by anndata blocked_categorical_types = {bool} illegal_categorical_types = categorical_types & blocked_categorical_types if illegal_categorical_types: self.errors.append( f"Column '{column_name}' in dataframe '{df_name}' contains {illegal_categorical_types=}." ) - # Check for categorical column has mixed types, which is not supported by anndata 0.8.0 - # TODO: check if this can be removed after upgading to anndata 0.10.0 + # Check for categorical column has mixed types, which is not supported by anndata categorical_types = {type(x) for x in column.dtype.categories.values} if len(categorical_types) > 1: self.errors.append( From 9e2ef7446e1bdca978a0d3e98976ce8cefba2c36 Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Wed, 11 Dec 2024 15:56:43 -0500 Subject: [PATCH 04/13] use dask arrays --- .../cellxgene_schema/utils.py | 30 ++++++------- .../cellxgene_schema/validate.py | 45 +++++++++---------- .../tests/test_schema_compliance.py | 2 +- docker-compose.yml | 1 - scripts/memtest/run.py | 2 +- 5 files changed, 37 insertions(+), 43 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/utils.py b/cellxgene_schema_cli/cellxgene_schema/utils.py index 90cb8547..b66bb005 100644 --- a/cellxgene_schema_cli/cellxgene_schema/utils.py +++ b/cellxgene_schema_cli/cellxgene_schema/utils.py @@ -8,8 +8,8 @@ import anndata as ad import h5py import numpy as np -from anndata.experimental import read_dispatched -from anndata.io import read_elem, sparse_dataset +from anndata.compat import DaskArray +from anndata.experimental import read_dispatched, read_elem_as_dask from cellxgene_ontology_guide.ontology_parser import OntologyParser from scipy import sparse from xxhash import xxh3_64_intdigest @@ -71,7 +71,7 @@ def remap_deprecated_features(*, adata: ad.AnnData, remapped_features: Dict[str, return adata -def get_matrix_format(adata: ad.AnnData, matrix: Union[np.ndarray, sparse.spmatrix]) -> str: +def get_matrix_format(matrix: Union[np.ndarray, sparse.spmatrix, DaskArray]) -> str: """ Given a matrix, returns the format as one of: csc, csr, coo, dense or unknown. @@ -87,14 +87,13 @@ def get_matrix_format(adata: ad.AnnData, matrix: Union[np.ndarray, sparse.spmatr # >>> return getattr(matrix, "format_str", "dense) # matrix_format = "unknown" - if adata.n_obs == 0 or adata.n_vars == 0: + matrix_slice = matrix[0:1, 0:1] + if isinstance(matrix_slice, DaskArray): + matrix_slice = matrix_slice.compute() + if isinstance(matrix_slice, sparse.spmatrix): + matrix_format = matrix_slice.format + elif isinstance(matrix_slice, np.ndarray): matrix_format = "dense" - else: - matrix_slice = matrix[0:1, 0:1] - if isinstance(matrix_slice, sparse.spmatrix): - matrix_format = matrix_slice.format - elif isinstance(matrix_slice, np.ndarray): - matrix_format = "dense" assert matrix_format in ["unknown", "csr", "csc", "coo", "dense"] return matrix_format @@ -126,11 +125,10 @@ def callback(func, elem_name: str, elem, iospec): "csr_matrix", "csc_matrix", ): - return sparse_dataset(elem) - # Preventing recursing inside of these types - return read_elem(elem) + n_vars = elem.attrs.get("shape")[1] + return read_elem_as_dask(elem, chunks=(10_000, n_vars)) elif iospec.encoding_type == "array" and len(elem.shape) > 1: - return elem + return read_elem_as_dask(elem) else: func(elem) else: @@ -155,8 +153,8 @@ def read_h5ad(h5ad_path: Union[str, bytes, os.PathLike]) -> ad.AnnData: # This code, and AnnData in general, is optimized for row access. # Running backed, with CSC, is prohibitively slow. Read the entire # AnnData into memory if it is CSC. - if (get_matrix_format(adata, adata.X) == "csc") or ( - (adata.raw is not None) and (get_matrix_format(adata, adata.raw.X) == "csc") + if (get_matrix_format(adata.X) == "csc") or ( + (adata.raw is not None) and (get_matrix_format(adata.raw.X) == "csc") ): logger.warning("Matrices are in CSC format; loading entire dataset into memory.") adata = adata.to_memory() diff --git a/cellxgene_schema_cli/cellxgene_schema/validate.py b/cellxgene_schema_cli/cellxgene_schema/validate.py index de457997..332bad79 100644 --- a/cellxgene_schema_cli/cellxgene_schema/validate.py +++ b/cellxgene_schema_cli/cellxgene_schema/validate.py @@ -11,6 +11,7 @@ import numpy as np import pandas as pd import scipy +from anndata.compat import DaskArray from cellxgene_ontology_guide.ontology_parser import OntologyParser from pandas.errors import UndefinedVariableError from scipy import sparse @@ -78,9 +79,6 @@ def reset(self, hi_res_size: Optional[int] = None, true_mat_size: Optional[int] self._hires_max_dimension_size = hi_res_size self._visium_and_is_single_true_matrix_size = true_mat_size - # Matrix (e.g., X, raw.X, ...) number non-zero cache - self.number_non_zero = dict() - @property def adata(self) -> anndata.AnnData: return self._adata @@ -449,8 +447,8 @@ def _validate_feature_id(self, feature_id: str, df_name: str): return @staticmethod - def _chunk_matrix( - matrix: Union[np.ndarray, sparse.spmatrix], + def chunk_matrix( + matrix: Union[np.ndarray, sparse.spmatrix, DaskArray], obs_chunk_size: Optional[int] = 10_000, ): """ @@ -468,27 +466,26 @@ def _chunk_matrix( for i in range(int(n // obs_chunk_size)): logger.debug(f"_chunk_matrix [{i} of {math.ceil(n / obs_chunk_size)}]") end = start + obs_chunk_size - yield (matrix[start:end], start, end) + matrix_chunk = matrix[start:end] + if isinstance(matrix_chunk, DaskArray): + matrix_chunk = matrix_chunk.compute() + yield (matrix_chunk, start, end) start = end if start < n: - yield (matrix[start:n], start, n) - - def _count_matrix_nonzero( - self, matrix_name: str, matrix: Union[np.ndarray, sparse.spmatrix], filter_by_column: pd.Series = None - ) -> int: - if matrix_name in self.number_non_zero: - return self.number_non_zero[matrix_name] - - logger.debug(f"Counting non-zero values in {matrix_name}") + matrix_chunk = matrix[start:n] + if isinstance(matrix_chunk, DaskArray): + matrix_chunk = matrix_chunk.compute() + yield (matrix_chunk, start, n) + @staticmethod + def count_matrix_nonzero(matrix: Union[np.ndarray, sparse.spmatrix], filter_by_column: pd.Series = None) -> int: nnz = 0 - matrix_format = get_matrix_format(self.adata, matrix) - for matrix_chunk, _, _ in self._chunk_matrix(matrix): + matrix_format = get_matrix_format(matrix) + for matrix_chunk, _, _ in Validator.chunk_matrix(matrix): if filter_by_column is not None: matrix_chunk = matrix_chunk[:, filter_by_column] nnz += matrix_chunk.count_nonzero() if matrix_format != "dense" else np.count_nonzero(matrix_chunk) - self.number_non_zero[matrix_name] = nnz return nnz def _validate_genetic_ancestry(self): @@ -611,7 +608,7 @@ def _validate_column_feature_is_filtered(self, column: pd.Series, column_name: s return if sum(column) > 0: - n_nonzero = self._count_matrix_nonzero("feature_is_filtered", self.adata.X, column) + n_nonzero = self.count_matrix_nonzero(self.adata.X, column) if n_nonzero > 0: self.errors.append( @@ -1079,7 +1076,7 @@ def _validate_sparsity(self): # Check sparsity for x, x_name in to_validate: - matrix_format = get_matrix_format(self.adata, x) + matrix_format = get_matrix_format(x) if matrix_format == "csr": continue assert matrix_format != "unknown" @@ -1091,7 +1088,7 @@ def _validate_sparsity(self): # function is to recommend CSR for _any_ matrix with sparsity beyond # a given limit. - nnz = self._count_matrix_nonzero(x_name, x) + nnz = self.count_matrix_nonzero(x) sparsity = 1 - nnz / np.prod(x.shape) if sparsity > max_sparsity: self.warnings.append( @@ -1278,7 +1275,7 @@ def _has_valid_raw(self, force: bool = False) -> bool: self.errors.append("Raw matrix values must have type numpy.float32.") return self._raw_layer_exists - matrix_format = get_matrix_format(self.adata, x) + matrix_format = get_matrix_format(x) assert matrix_format != "unknown" self._raw_layer_exists = True is_sparse_matrix = matrix_format in SPARSE_MATRIX_TYPES @@ -1313,7 +1310,7 @@ def _validate_raw_data(self, x: Union[np.ndarray, sparse.spmatrix], is_sparse_ma """ has_row_of_zeros = False has_invalid_nonzero_value = False - for matrix_chunk, _, _ in self._chunk_matrix(x): + for matrix_chunk, _, _ in self.chunk_matrix(x): if not has_row_of_zeros: if is_sparse_matrix: row_indices, _ = matrix_chunk.nonzero() @@ -1349,7 +1346,7 @@ def _validate_raw_data_with_in_tissue_0(self, x: Union[np.ndarray, sparse.spmatr has_tissue_1_zero_row = False has_invalid_nonzero_values = False - for matrix_chunk, start, _ in self._chunk_matrix(x): + for matrix_chunk, start, _ in self.chunk_matrix(x): if not has_invalid_nonzero_values and self._matrix_has_invalid_nonzero_values(matrix_chunk): has_invalid_nonzero_values = True diff --git a/cellxgene_schema_cli/tests/test_schema_compliance.py b/cellxgene_schema_cli/tests/test_schema_compliance.py index bf83c97b..8aaac023 100644 --- a/cellxgene_schema_cli/tests/test_schema_compliance.py +++ b/cellxgene_schema_cli/tests/test_schema_compliance.py @@ -451,7 +451,7 @@ def test_raw_values__matrix_chunks(self, validator_with_adata): """ Test adata is validated correctly when matrix is larger than the chunk size """ - with unittest.mock.patch.object(validator_with_adata._chunk_matrix, "__defaults__", (1,)): + with unittest.mock.patch.object(validator_with_adata.chunk_matrix, "__defaults__", (1,)): validator = validator_with_adata validator.validate_adata() assert validator.errors == [] diff --git a/docker-compose.yml b/docker-compose.yml index 60ad008e..0a6aa998 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,7 +2,6 @@ name: cellxgene-schema-cli services: memtest: - platform: linux/amd64 build: context: . dockerfile: ./scripts/memtest/Dockerfile diff --git a/scripts/memtest/run.py b/scripts/memtest/run.py index ecd5a9bd..fe8ece3e 100644 --- a/scripts/memtest/run.py +++ b/scripts/memtest/run.py @@ -2,7 +2,7 @@ from cellxgene_schema.validate import validate -H5AD_FILE = "/data/dataset_34gb_unlabeled.h5ad" +H5AD_FILE = "/memtest/data/slow_cxg.h5ad" if __name__ == "__main__": From 6a18d94f84b72124bf667b74acb1cc2738a81be4 Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Wed, 11 Dec 2024 16:00:20 -0500 Subject: [PATCH 05/13] revert local changes --- docker-compose.yml | 1 + scripts/memtest/run.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 0a6aa998..60ad008e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,6 +2,7 @@ name: cellxgene-schema-cli services: memtest: + platform: linux/amd64 build: context: . dockerfile: ./scripts/memtest/Dockerfile diff --git a/scripts/memtest/run.py b/scripts/memtest/run.py index fe8ece3e..ecd5a9bd 100644 --- a/scripts/memtest/run.py +++ b/scripts/memtest/run.py @@ -2,7 +2,7 @@ from cellxgene_schema.validate import validate -H5AD_FILE = "/memtest/data/slow_cxg.h5ad" +H5AD_FILE = "/data/dataset_34gb_unlabeled.h5ad" if __name__ == "__main__": From eec787bc8a001a3ff0e32b86f88f3c26041d4c1c Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Mon, 16 Dec 2024 11:10:28 -0500 Subject: [PATCH 06/13] replace custom chunk_matrix function with dask built-in chunking --- .../cellxgene_schema/utils.py | 22 +-- .../cellxgene_schema/validate.py | 135 +++++++++--------- .../tests/fixtures/examples_validate.py | 31 ++-- .../tests/test_schema_compliance.py | 31 ++-- cellxgene_schema_cli/tests/test_validate.py | 13 +- 5 files changed, 112 insertions(+), 120 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/utils.py b/cellxgene_schema_cli/cellxgene_schema/utils.py index b66bb005..a476a3d0 100644 --- a/cellxgene_schema_cli/cellxgene_schema/utils.py +++ b/cellxgene_schema_cli/cellxgene_schema/utils.py @@ -71,7 +71,7 @@ def remap_deprecated_features(*, adata: ad.AnnData, remapped_features: Dict[str, return adata -def get_matrix_format(matrix: Union[np.ndarray, sparse.spmatrix, DaskArray]) -> str: +def get_matrix_format(matrix: DaskArray) -> str: """ Given a matrix, returns the format as one of: csc, csr, coo, dense or unknown. @@ -87,14 +87,11 @@ def get_matrix_format(matrix: Union[np.ndarray, sparse.spmatrix, DaskArray]) -> # >>> return getattr(matrix, "format_str", "dense) # matrix_format = "unknown" - matrix_slice = matrix[0:1, 0:1] - if isinstance(matrix_slice, DaskArray): - matrix_slice = matrix_slice.compute() + matrix_slice = matrix[0:1, 0:1].compute() if isinstance(matrix_slice, sparse.spmatrix): matrix_format = matrix_slice.format elif isinstance(matrix_slice, np.ndarray): matrix_format = "dense" - assert matrix_format in ["unknown", "csr", "csc", "coo", "dense"] return matrix_format @@ -118,7 +115,16 @@ def getattr_anndata(adata: ad.AnnData, attr: str = None): return getattr(adata, attr) -def read_backed(f): +def read_backed(f: h5py.File, chunk_size: int = 10_000) -> ad.AnnData: + """ + Read an AnnData object from a h5py.File object, reading in matrices (dense or sparse) as dask arrays. Does not + read full matrices into memory. + + :param f: h5py.File object + :param chunk_size: size of chunks to read matrices in + :return: ad.AnnData object + """ + def callback(func, elem_name: str, elem, iospec): if "layers" in elem_name or ("X" in elem_name and "X_" not in elem_name): if iospec.encoding_type in ( @@ -126,11 +132,11 @@ def callback(func, elem_name: str, elem, iospec): "csc_matrix", ): n_vars = elem.attrs.get("shape")[1] - return read_elem_as_dask(elem, chunks=(10_000, n_vars)) + return read_elem_as_dask(elem, chunks=(chunk_size, n_vars)) elif iospec.encoding_type == "array" and len(elem.shape) > 1: return read_elem_as_dask(elem) else: - func(elem) + return func(elem) else: return func(elem) diff --git a/cellxgene_schema_cli/cellxgene_schema/validate.py b/cellxgene_schema_cli/cellxgene_schema/validate.py index 332bad79..19c12762 100644 --- a/cellxgene_schema_cli/cellxgene_schema/validate.py +++ b/cellxgene_schema_cli/cellxgene_schema/validate.py @@ -1,5 +1,4 @@ import logging -import math import numbers import os import re @@ -13,6 +12,7 @@ import scipy from anndata.compat import DaskArray from cellxgene_ontology_guide.ontology_parser import OntologyParser +from dask.array import map_blocks from pandas.errors import UndefinedVariableError from scipy import sparse @@ -447,46 +447,23 @@ def _validate_feature_id(self, feature_id: str, df_name: str): return @staticmethod - def chunk_matrix( - matrix: Union[np.ndarray, sparse.spmatrix, DaskArray], - obs_chunk_size: Optional[int] = 10_000, - ): - """ - Iterator which chunks the _named_ or _specified_ matrix by the - first (obs) dimension - - The parameter type restrictions are strictly for ensuring that the - AnnData read fast-path is used (as of AnnData 0.8.0). - - Iterator produces a sequence of tuples, each containing - (chunk, start, end) - """ - start = 0 - n = matrix.shape[0] - for i in range(int(n // obs_chunk_size)): - logger.debug(f"_chunk_matrix [{i} of {math.ceil(n / obs_chunk_size)}]") - end = start + obs_chunk_size - matrix_chunk = matrix[start:end] - if isinstance(matrix_chunk, DaskArray): - matrix_chunk = matrix_chunk.compute() - yield (matrix_chunk, start, end) - start = end - if start < n: - matrix_chunk = matrix[start:n] - if isinstance(matrix_chunk, DaskArray): - matrix_chunk = matrix_chunk.compute() - yield (matrix_chunk, start, n) - - @staticmethod - def count_matrix_nonzero(matrix: Union[np.ndarray, sparse.spmatrix], filter_by_column: pd.Series = None) -> int: - nnz = 0 - matrix_format = get_matrix_format(matrix) - for matrix_chunk, _, _ in Validator.chunk_matrix(matrix): + def count_matrix_nonzero(matrix: DaskArray, filter_by_column: pd.Series = None) -> int: + def count_nonzeros( + matrix_chunk: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool, filter_by_column: pd.Series + ) -> np.array: if filter_by_column is not None: matrix_chunk = matrix_chunk[:, filter_by_column] - nnz += matrix_chunk.count_nonzero() if matrix_format != "dense" else np.count_nonzero(matrix_chunk) - - return nnz + nnz = matrix_chunk.count_nonzero() if is_sparse_matrix else np.count_nonzero(matrix_chunk) + return np.array([nnz]) + + # Use map_blocks to handle mixed formats + is_sparse_matrix = get_matrix_format(matrix) in SPARSE_MATRIX_TYPES + nonzeros = ( + map_blocks(count_nonzeros, matrix, is_sparse_matrix, filter_by_column, drop_axis=1, dtype=int) + .compute() + .sum() + ) + return nonzeros def _validate_genetic_ancestry(self): """ @@ -1301,31 +1278,35 @@ def _has_valid_raw(self, force: bool = False) -> bool: return self._raw_layer_exists - def _validate_raw_data(self, x: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool): + def _validate_raw_data(self, x: DaskArray, is_sparse_matrix: bool): """ Validates the data values in the raw matrix. Matrix size is chunked for large matrices. :param x: raw matrix :param is_sparse_matrix: bool indicating if the matrix is sparse {csc, csr, coo} """ - has_row_of_zeros = False - has_invalid_nonzero_value = False - for matrix_chunk, _, _ in self.chunk_matrix(x): - if not has_row_of_zeros: + + def validate_chunk(matrix_chunk: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool) -> np.array: + chunk_has_row_of_zeros = False + chunk_has_invalid_nonzero_value = False + if not chunk_has_row_of_zeros: if is_sparse_matrix: row_indices, _ = matrix_chunk.nonzero() if len(set(row_indices)) != matrix_chunk.shape[0]: - has_row_of_zeros = True + chunk_has_row_of_zeros = True # else, must be dense matrix, confirm that all rows have at least 1 nonzero value elif not all(np.apply_along_axis(np.any, axis=1, arr=matrix_chunk)): - has_row_of_zeros = True + chunk_has_row_of_zeros = True + + if not chunk_has_invalid_nonzero_value and self._matrix_has_invalid_nonzero_values(matrix_chunk): + chunk_has_invalid_nonzero_value = True - if not has_invalid_nonzero_value and self._matrix_has_invalid_nonzero_values(matrix_chunk): - has_invalid_nonzero_value = True + return np.array([np.array([chunk_has_row_of_zeros, chunk_has_invalid_nonzero_value], dtype=object)]) - if has_row_of_zeros and has_invalid_nonzero_value: - # Fail fast, exit loop and report - break + results = map_blocks(validate_chunk, x, is_sparse_matrix, dtype=object).compute() + # Combine the results from all chunks + has_row_of_zeros = any(chunk_result[0] for chunk_result in results) + has_invalid_nonzero_value = any(chunk_result[1] for chunk_result in results) if has_row_of_zeros: self._raw_layer_exists = False @@ -1334,7 +1315,7 @@ def _validate_raw_data(self, x: Union[np.ndarray, sparse.spmatrix], is_sparse_ma self._raw_layer_exists = False self.errors.append("All non-zero values in raw matrix must be positive integers of type numpy.float32.") - def _validate_raw_data_with_in_tissue_0(self, x: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool): + def _validate_raw_data_with_in_tissue_0(self, x: DaskArray, is_sparse_matrix: bool): """ Special case validation checks for Visium data with is_single = True and in_tissue column in obs where in_tissue has at least one value 0. @@ -1342,38 +1323,56 @@ def _validate_raw_data_with_in_tissue_0(self, x: Union[np.ndarray, sparse.spmatr :param x: raw matrix :param is_sparse_matrix: bool indicating if the matrix is sparse """ - has_tissue_0_non_zero_row = False - has_tissue_1_zero_row = False - has_invalid_nonzero_values = False - - for matrix_chunk, start, _ in self.chunk_matrix(x): - if not has_invalid_nonzero_values and self._matrix_has_invalid_nonzero_values(matrix_chunk): - has_invalid_nonzero_values = True + def validate_chunk( + matrix_chunk: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool, block_info: dict = None + ) -> np.array: + chunk_has_tissue_0_non_zero_row = False + chunk_has_tissue_1_zero_row = False + chunk_has_invalid_nonzero_values = False + chunk_start_row = block_info[0]["array-location"][0][0] if block_info.get(0) else 0 + if self._matrix_has_invalid_nonzero_values(matrix_chunk): + chunk_has_invalid_nonzero_values = True if is_sparse_matrix: nonzero_row_indices, _ = matrix_chunk.nonzero() else: # must be dense matrix nonzero_row_indices = np.where(np.any(matrix_chunk != 0, axis=1))[0] for i in range(matrix_chunk.shape[0]): - if has_tissue_0_non_zero_row and has_tissue_1_zero_row: + if chunk_has_tissue_0_non_zero_row and chunk_has_tissue_1_zero_row: # exit inner loop early break - unchunked_i = i + start + unchunked_i = i + chunk_start_row if ( - not has_tissue_0_non_zero_row + not chunk_has_tissue_0_non_zero_row and i in nonzero_row_indices and self.adata.obs["in_tissue"].iloc[unchunked_i] == 0 ): - has_tissue_0_non_zero_row = True + chunk_has_tissue_0_non_zero_row = True elif ( - not has_tissue_1_zero_row + not chunk_has_tissue_1_zero_row and i not in nonzero_row_indices and self.adata.obs["in_tissue"].iloc[unchunked_i] == 1 ): - has_tissue_1_zero_row = True - if has_tissue_0_non_zero_row and has_tissue_1_zero_row and has_invalid_nonzero_values: - # exit outer loop early and report - break + chunk_has_tissue_1_zero_row = True + return np.array( + [ + np.array( + [ + chunk_has_tissue_0_non_zero_row, + chunk_has_tissue_1_zero_row, + chunk_has_invalid_nonzero_values, + ], + dtype=object, + ) + ] + ) + + results = map_blocks(validate_chunk, x, is_sparse_matrix, dtype=object).compute() + + # Combine the results from all chunks + has_tissue_0_non_zero_row = any(chunk_result[0] for chunk_result in results) + has_tissue_1_zero_row = any(chunk_result[1] for chunk_result in results) + has_invalid_nonzero_values = any(chunk_result[2] for chunk_result in results) if not has_tissue_0_non_zero_row: self._raw_layer_exists = False diff --git a/cellxgene_schema_cli/tests/fixtures/examples_validate.py b/cellxgene_schema_cli/tests/fixtures/examples_validate.py index accbecfc..f102cccc 100644 --- a/cellxgene_schema_cli/tests/fixtures/examples_validate.py +++ b/cellxgene_schema_cli/tests/fixtures/examples_validate.py @@ -5,6 +5,7 @@ import os from scipy import sparse from cellxgene_schema.utils import get_hash_digest_column +from dask.array import from_array # -----------------------------------------------------------------# # General example information @@ -473,8 +474,8 @@ # --- # 4. Creating expression matrix, # X has integer values and non_raw_X has real values -X = numpy.ones([good_obs.shape[0], good_var.shape[0]], dtype=numpy.float32) -non_raw_X = sparse.csr_matrix(X.copy()) +X = from_array(sparse.csr_matrix(numpy.ones([good_obs.shape[0], good_var.shape[0]], dtype=numpy.float32))) +non_raw_X = X.copy() non_raw_X[0, 0] = 1.5 # --- @@ -487,14 +488,14 @@ # the unittests # Valid anndata -adata = anndata.AnnData(X=sparse.csr_matrix(X), obs=good_obs, uns=good_uns, obsm=good_obsm, var=good_var) +adata = anndata.AnnData(X=X, obs=good_obs, uns=good_uns, obsm=good_obsm, var=good_var) adata.raw = adata.copy() adata.X = non_raw_X adata.raw.var.drop("feature_is_filtered", axis=1, inplace=True) # Anndata with "X" and "raw.X" but neither has actual raw values adata_no_raw_values = anndata.AnnData( - X=sparse.csr_matrix(non_raw_X), + X=non_raw_X, obs=good_obs, uns=good_uns, obsm=good_obsm, @@ -504,11 +505,11 @@ adata_no_raw_values.raw.var.drop("feature_is_filtered", axis=1, inplace=True) # Anndata with no obs nor var -adata_minimal = anndata.AnnData(X=sparse.csr_matrix(X), uns=good_uns, obsm=good_obsm) +adata_minimal = anndata.AnnData(X=X, uns=good_uns, obsm=good_obsm) # Anndata with a expression matrix that is not raw adata_non_raw = anndata.AnnData( - X=sparse.csr_matrix(non_raw_X), + X=non_raw_X, obs=good_obs, uns=good_uns, obsm=good_obsm, @@ -517,7 +518,7 @@ # Expected anndata with labels that the validator must write in obs and var adata_with_labels = anndata.AnnData( - X=sparse.csr_matrix(X), + X=X, obs=pd.concat([good_obs, obs_expected], axis=1), var=var_expected, uns=good_uns_with_labels, @@ -525,20 +526,18 @@ ) # Expected anndata with colors for categorical obs fields -adata_with_colors = anndata.AnnData( - X=sparse.csr_matrix(X), obs=good_obs, uns=good_uns_with_colors, obsm=good_obsm, var=good_var -) +adata_with_colors = anndata.AnnData(X=X, obs=good_obs, uns=good_uns_with_colors, obsm=good_obsm, var=good_var) # Expected anndata with Visium spatial data adata_visium = anndata.AnnData( - X=sparse.csr_matrix(X), obs=good_obs_visium, uns=good_uns_with_visium_spatial, obsm=good_obsm_spatial, var=good_var + X=X, obs=good_obs_visium, uns=good_uns_with_visium_spatial, obsm=good_obsm_spatial, var=good_var ) adata_visium.raw = adata_visium.copy() adata_visium.raw.var.drop("feature_is_filtered", axis=1, inplace=True) # Expected anndata with Slide-seqV2 spatial data adata_slide_seqv2 = anndata.AnnData( - X=sparse.csr_matrix(X), + X=X, obs=good_obs_slide_seqv2, uns=good_uns_with_slide_seqV2_spatial, obsm=good_obsm_spatial, @@ -546,7 +545,7 @@ ) adata_spatial_is_single_false = anndata.AnnData( - X=sparse.csr_matrix(X), + X=X, obs=good_obs_visium_is_single_false, uns=good_uns_with_is_single_false, obsm=good_obsm_spatial, @@ -619,9 +618,11 @@ ], ) -unmigrated_X = numpy.zeros([unmigrated_obs.shape[0], var_unmigrated.shape[0]], dtype=numpy.float32) +unmigrated_X = from_array( + sparse.csr_matrix(numpy.zeros([unmigrated_obs.shape[0], var_unmigrated.shape[0]], dtype=numpy.float32)) +) adata_with_labels_unmigrated = anndata.AnnData( - X=sparse.csr_matrix(unmigrated_X), + X=unmigrated_X, obs=unmigrated_obs, uns=good_uns_with_labels, var=var_unmigrated, diff --git a/cellxgene_schema_cli/tests/test_schema_compliance.py b/cellxgene_schema_cli/tests/test_schema_compliance.py index 8aaac023..1bc125d0 100644 --- a/cellxgene_schema_cli/tests/test_schema_compliance.py +++ b/cellxgene_schema_cli/tests/test_schema_compliance.py @@ -2,7 +2,6 @@ Tests for schema compliance of an AnnData object """ -import tempfile import unittest from copy import deepcopy @@ -13,7 +12,7 @@ import pytest import scipy.sparse from cellxgene_schema.schema import get_schema_definition -from cellxgene_schema.utils import getattr_anndata +from cellxgene_schema.utils import getattr_anndata, read_h5ad from cellxgene_schema.validate import ( ASSAY_VISIUM_11M, ERROR_SUFFIX_IS_SINGLE, @@ -28,6 +27,7 @@ Validator, ) from cellxgene_schema.write_labels import AnnDataLabelAppender +from dask.array import from_array from fixtures.examples_validate import visium_library_id schema_def = get_schema_definition() @@ -107,17 +107,6 @@ def label_writer(validator_with_validated_adata) -> AnnDataLabelAppender: return label_writer -def save_and_read_adata(adata: anndata.AnnData) -> anndata.AnnData: - """ - Saves adata to a temporary file and reads it back. Used to test read/write errors. - :param adata: AnnData object - :return: AnnData object - """ - with tempfile.NamedTemporaryFile(suffix=".h5ad") as f: - adata.write_h5ad(f.name) - return anndata.read_h5ad(f.name) - - class TestValidAnndata: """ Tests a valid AnnData object. Most other tests below modify this AnnData object and test for failure cases. @@ -175,7 +164,7 @@ def test_sparsity(self, validator_with_adata): sparse_X = numpy.zeros([validator.adata.obs.shape[0], validator.adata.var.shape[0]], dtype=numpy.float32) sparse_X[0, 1] = 1 sparse_X[1, 1] = 1 - validator.adata.X = sparse_X + validator.adata.X = from_array(sparse_X) validator.validate_adata() assert validator.warnings == [ "WARNING: Sparsity of 'X' is 0.75 which is greater than 0.5, " @@ -285,8 +274,8 @@ def test_raw_values__contains_all_zero_rows_in_tissue_0(self, validator_with_vis validator = validator_with_visium_assay validator.adata.obs["in_tissue"] = 0 validator.adata.obs["cell_type_ontology_term_id"] = "unknown" - validator.adata.X = numpy.zeros( - [validator.adata.obs.shape[0], validator.adata.var.shape[0]], dtype=numpy.float32 + validator.adata.X = from_array( + numpy.zeros([validator.adata.obs.shape[0], validator.adata.var.shape[0]], dtype=numpy.float32) ) validator.adata.raw = validator.adata.copy() validator.adata.raw.var.drop("feature_is_filtered", axis=1, inplace=True) @@ -384,8 +373,8 @@ def test_raw_values__multiple_invalid_in_tissue_errors( validator.adata.uns["spatial"][visium_library_id]["images"]["hires"] = numpy.zeros( (1, image_size, 3), dtype=numpy.uint8 ) - validator.adata.X = numpy.zeros( - [validator.adata.obs.shape[0], validator.adata.var.shape[0]], dtype=numpy.float32 + validator.adata.X = from_array( + numpy.zeros([validator.adata.obs.shape[0], validator.adata.var.shape[0]], dtype=numpy.float32) ) validator.adata.raw = validator.adata.copy() validator.adata.raw.var.drop("feature_is_filtered", axis=1, inplace=True) @@ -451,7 +440,7 @@ def test_raw_values__matrix_chunks(self, validator_with_adata): """ Test adata is validated correctly when matrix is larger than the chunk size """ - with unittest.mock.patch.object(validator_with_adata.chunk_matrix, "__defaults__", (1,)): + with unittest.mock.patch.object(read_h5ad, "__defaults__", (1,)): validator = validator_with_adata validator.validate_adata() assert validator.errors == [] @@ -2638,7 +2627,6 @@ def test_obsm_size_zero(self, validator_with_adata): validator = validator_with_adata adata = validator.adata adata.obsm["badsize"] = numpy.empty((2, 0)) - validator.adata = save_and_read_adata(adata) validator.validate_adata() assert validator.errors == [ "ERROR: The size of the ndarray stored for a 'adata.obsm['badsize']' MUST NOT " "be zero.", @@ -2655,7 +2643,6 @@ def test_obsp_size_zero(self, validator_with_adata): validator = validator_with_adata adata = validator.adata adata.obsp["badsize"] = numpy.empty((2, 2, 0)) - validator.adata = save_and_read_adata(adata) validator.validate_adata() assert validator.errors == [ "ERROR: The size of the ndarray stored for a 'adata.obsp['badsize']' MUST NOT be zero." @@ -2670,7 +2657,6 @@ def test_varm_size_zero(self, validator_with_adata): validator = validator_with_adata adata = validator.adata adata.varm["badsize"] = numpy.empty((4, 0)) - validator.adata = save_and_read_adata(adata) validator.validate_adata() assert validator.errors == [ "ERROR: The size of the ndarray stored for a 'adata.varm['badsize']' MUST NOT be " "zero." @@ -2685,7 +2671,6 @@ def test_varp_size_zero(self, validator_with_adata): validator = validator_with_adata adata = validator.adata adata.varp["badsize"] = numpy.empty((4, 4, 0)) - validator.adata = save_and_read_adata(adata) validator.validate_adata() assert validator.errors == [ "ERROR: The size of the ndarray stored for a 'adata.varp['badsize']' MUST NOT be zero." diff --git a/cellxgene_schema_cli/tests/test_validate.py b/cellxgene_schema_cli/tests/test_validate.py index f8ec49f6..230061a2 100644 --- a/cellxgene_schema_cli/tests/test_validate.py +++ b/cellxgene_schema_cli/tests/test_validate.py @@ -22,6 +22,7 @@ validate, ) from cellxgene_schema.write_labels import AnnDataLabelAppender +from dask.array import from_array from fixtures.examples_validate import adata as adata_valid from fixtures.examples_validate import ( adata_minimal, @@ -388,7 +389,7 @@ def test__validate_spatial_visium_dense_matrix_ok(self): validator._set_schema_def() validator.adata = adata_visium.copy() validator._visium_and_is_single_true_matrix_size = 2 - validator.adata.X = validator.adata.X.toarray() + validator.adata.X = from_array(validator.adata.X.compute().toarray()) validator.adata.raw = validator.adata.copy() validator.adata.raw.var.drop("feature_is_filtered", axis=1, inplace=True) # Confirm spatial is valid. @@ -1253,15 +1254,15 @@ def create_validator(data: Union[ndarray, spmatrix], matrix_format: str) -> Vali "data, matrix_format, expected_result", [ # Test case with integer values in a dense matrix - (np.array([[1, 2, 3], [4, 5, 6]], dtype=np.float32), "dense", True), + (from_array(np.array([[1, 2, 3], [4, 5, 6]], dtype=np.float32)), "dense", True), # Test case with float values in a dense matrix - (np.array([[1.1, 2.2, 3.3], [4.4, 5.5, 6.6]]), "dense", False), + (from_array(np.array([[1.1, 2.2, 3.3], [4.4, 5.5, 6.6]])), "dense", False), # Test case with integer values in a sparse matrix (CSR format) - (sparse.csr_matrix([[1, 0, 3], [0, 5, 0]], dtype=np.float32), "csr", True), + (from_array(sparse.csr_matrix([[1, 0, 3], [0, 5, 0]], dtype=np.float32)), "csr", True), # Test case with float values in a sparse matrix (CSC format) - (sparse.csc_matrix([[1.1, 0, 3.3], [0, 5.5, 0]]), "csc", False), + (from_array(sparse.csc_matrix([[1.1, 0, 3.3], [0, 5.5, 0]])), "csc", False), # Test case with mixed integer and float values in a dense matrix - (np.array([[1, 2.2, 3], [4.4, 5, 6.6]]), "dense", False), + (from_array(np.array([[1, 2.2, 3], [4.4, 5, 6.6]])), "dense", False), ], ) def test_has_valid_raw(self, data, matrix_format, expected_result): From 26abac4f9eddfed60ab65cfae71a709c3f690c94 Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Tue, 17 Dec 2024 00:47:09 -0500 Subject: [PATCH 07/13] use single-threaded --- .../cellxgene_schema/validate.py | 46 ++++++++++++------- 1 file changed, 29 insertions(+), 17 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/validate.py b/cellxgene_schema_cli/cellxgene_schema/validate.py index 77782e53..447567e1 100644 --- a/cellxgene_schema_cli/cellxgene_schema/validate.py +++ b/cellxgene_schema_cli/cellxgene_schema/validate.py @@ -6,6 +6,7 @@ from typing import Dict, List, Mapping, Optional, Tuple, Union import anndata +import dask import matplotlib.colors as mcolors import numpy as np import pandas as pd @@ -20,6 +21,8 @@ logger = logging.getLogger(__name__) +dask.config.set(scheduler="single-threaded") + ONTOLOGY_PARSER = OntologyParser(schema_version="v5.3.0") ASSAY_VISIUM = "EFO:0010961" @@ -455,13 +458,15 @@ def count_nonzeros( nnz = matrix_chunk.count_nonzero() if is_sparse_matrix else np.count_nonzero(matrix_chunk) return np.array([nnz]) - # Use map_blocks to handle mixed formats is_sparse_matrix = get_matrix_format(matrix) in SPARSE_MATRIX_TYPES - nonzeros = ( - map_blocks(count_nonzeros, matrix, is_sparse_matrix, filter_by_column, drop_axis=1, dtype=int) - .compute() - .sum() - ) + if len(matrix.chunks[0]) > 1: + nonzeros = ( + map_blocks(count_nonzeros, matrix, is_sparse_matrix, filter_by_column, drop_axis=1, dtype=int) + .compute() + .sum() + ) + else: + nonzeros = count_nonzeros(matrix.compute(), is_sparse_matrix, filter_by_column)[0] return nonzeros def _validate_genetic_ancestry(self): @@ -1271,10 +1276,13 @@ def validate_chunk(matrix_chunk: Union[np.ndarray, sparse.spmatrix], is_sparse_m return np.array([np.array([chunk_has_row_of_zeros, chunk_has_invalid_nonzero_value], dtype=object)]) - results = map_blocks(validate_chunk, x, is_sparse_matrix, dtype=object).compute() - # Combine the results from all chunks - has_row_of_zeros = any(chunk_result[0] for chunk_result in results) - has_invalid_nonzero_value = any(chunk_result[1] for chunk_result in results) + if len(x.chunks[0]) > 1: + results = map_blocks(validate_chunk, x, is_sparse_matrix, dtype=object).compute() + # Combine the results from all chunks + has_row_of_zeros = any(chunk_result[0] for chunk_result in results) + has_invalid_nonzero_value = any(chunk_result[1] for chunk_result in results) + else: + has_row_of_zeros, has_invalid_nonzero_value = validate_chunk(x.compute(), is_sparse_matrix)[0] if has_row_of_zeros: self._raw_layer_exists = False @@ -1298,7 +1306,7 @@ def validate_chunk( chunk_has_tissue_0_non_zero_row = False chunk_has_tissue_1_zero_row = False chunk_has_invalid_nonzero_values = False - chunk_start_row = block_info[0]["array-location"][0][0] if block_info.get(0) else 0 + chunk_start_row = block_info[0]["array-location"][0][0] if (block_info and block_info.get(0)) else 0 if self._matrix_has_invalid_nonzero_values(matrix_chunk): chunk_has_invalid_nonzero_values = True if is_sparse_matrix: @@ -1335,12 +1343,16 @@ def validate_chunk( ] ) - results = map_blocks(validate_chunk, x, is_sparse_matrix, dtype=object).compute() - - # Combine the results from all chunks - has_tissue_0_non_zero_row = any(chunk_result[0] for chunk_result in results) - has_tissue_1_zero_row = any(chunk_result[1] for chunk_result in results) - has_invalid_nonzero_values = any(chunk_result[2] for chunk_result in results) + if len(x.chunks[0]) > 1: + results = map_blocks(validate_chunk, x, is_sparse_matrix, dtype=object).compute() + # Combine the results from all chunks + has_tissue_0_non_zero_row = any(chunk_result[0] for chunk_result in results) + has_tissue_1_zero_row = any(chunk_result[1] for chunk_result in results) + has_invalid_nonzero_values = any(chunk_result[2] for chunk_result in results) + else: + has_tissue_0_non_zero_row, has_tissue_1_zero_row, has_invalid_nonzero_values = validate_chunk( + x.compute(), is_sparse_matrix + )[0] if not has_tissue_0_non_zero_row: self._raw_layer_exists = False From 1fdeebecca1fc9be288b6fdc75a38daaa0a97606 Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Wed, 18 Dec 2024 13:05:50 -0500 Subject: [PATCH 08/13] filter columns in matrix outside of count_matrix_nonzero + fix test fixtures --- .../cellxgene_schema/validate.py | 18 +++++------------ .../tests/fixtures/examples_validate.py | 20 +++++++++---------- 2 files changed, 15 insertions(+), 23 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/validate.py b/cellxgene_schema_cli/cellxgene_schema/validate.py index 447567e1..70488982 100644 --- a/cellxgene_schema_cli/cellxgene_schema/validate.py +++ b/cellxgene_schema_cli/cellxgene_schema/validate.py @@ -449,24 +449,16 @@ def _validate_feature_id(self, feature_id: str, df_name: str): return @staticmethod - def count_matrix_nonzero(matrix: DaskArray, filter_by_column: pd.Series = None) -> int: - def count_nonzeros( - matrix_chunk: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool, filter_by_column: pd.Series - ) -> np.array: - if filter_by_column is not None: - matrix_chunk = matrix_chunk[:, filter_by_column] + def count_matrix_nonzero(matrix: DaskArray) -> int: + def count_nonzeros(matrix_chunk: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool) -> np.array: nnz = matrix_chunk.count_nonzero() if is_sparse_matrix else np.count_nonzero(matrix_chunk) return np.array([nnz]) is_sparse_matrix = get_matrix_format(matrix) in SPARSE_MATRIX_TYPES if len(matrix.chunks[0]) > 1: - nonzeros = ( - map_blocks(count_nonzeros, matrix, is_sparse_matrix, filter_by_column, drop_axis=1, dtype=int) - .compute() - .sum() - ) + nonzeros = map_blocks(count_nonzeros, matrix, is_sparse_matrix, drop_axis=1, dtype=int).compute().sum() else: - nonzeros = count_nonzeros(matrix.compute(), is_sparse_matrix, filter_by_column)[0] + nonzeros = count_nonzeros(matrix.compute(), is_sparse_matrix)[0] return nonzeros def _validate_genetic_ancestry(self): @@ -589,7 +581,7 @@ def _validate_column_feature_is_filtered(self, column: pd.Series, column_name: s return if sum(column) > 0: - n_nonzero = self.count_matrix_nonzero(self.adata.X, column) + n_nonzero = self.count_matrix_nonzero(self.adata.X[:, column]) if n_nonzero > 0: self.errors.append( diff --git a/cellxgene_schema_cli/tests/fixtures/examples_validate.py b/cellxgene_schema_cli/tests/fixtures/examples_validate.py index f102cccc..c046d84e 100644 --- a/cellxgene_schema_cli/tests/fixtures/examples_validate.py +++ b/cellxgene_schema_cli/tests/fixtures/examples_validate.py @@ -488,14 +488,14 @@ # the unittests # Valid anndata -adata = anndata.AnnData(X=X, obs=good_obs, uns=good_uns, obsm=good_obsm, var=good_var) +adata = anndata.AnnData(X=X.copy(), obs=good_obs, uns=good_uns, obsm=good_obsm, var=good_var) adata.raw = adata.copy() adata.X = non_raw_X adata.raw.var.drop("feature_is_filtered", axis=1, inplace=True) # Anndata with "X" and "raw.X" but neither has actual raw values adata_no_raw_values = anndata.AnnData( - X=non_raw_X, + X=non_raw_X.copy(), obs=good_obs, uns=good_uns, obsm=good_obsm, @@ -505,11 +505,11 @@ adata_no_raw_values.raw.var.drop("feature_is_filtered", axis=1, inplace=True) # Anndata with no obs nor var -adata_minimal = anndata.AnnData(X=X, uns=good_uns, obsm=good_obsm) +adata_minimal = anndata.AnnData(X=X.copy(), uns=good_uns, obsm=good_obsm) # Anndata with a expression matrix that is not raw adata_non_raw = anndata.AnnData( - X=non_raw_X, + X=non_raw_X.copy(), obs=good_obs, uns=good_uns, obsm=good_obsm, @@ -518,7 +518,7 @@ # Expected anndata with labels that the validator must write in obs and var adata_with_labels = anndata.AnnData( - X=X, + X=X.copy(), obs=pd.concat([good_obs, obs_expected], axis=1), var=var_expected, uns=good_uns_with_labels, @@ -526,18 +526,18 @@ ) # Expected anndata with colors for categorical obs fields -adata_with_colors = anndata.AnnData(X=X, obs=good_obs, uns=good_uns_with_colors, obsm=good_obsm, var=good_var) +adata_with_colors = anndata.AnnData(X=X.copy(), obs=good_obs, uns=good_uns_with_colors, obsm=good_obsm, var=good_var) # Expected anndata with Visium spatial data adata_visium = anndata.AnnData( - X=X, obs=good_obs_visium, uns=good_uns_with_visium_spatial, obsm=good_obsm_spatial, var=good_var + X=X.copy(), obs=good_obs_visium, uns=good_uns_with_visium_spatial, obsm=good_obsm_spatial, var=good_var ) adata_visium.raw = adata_visium.copy() adata_visium.raw.var.drop("feature_is_filtered", axis=1, inplace=True) # Expected anndata with Slide-seqV2 spatial data adata_slide_seqv2 = anndata.AnnData( - X=X, + X=X.copy(), obs=good_obs_slide_seqv2, uns=good_uns_with_slide_seqV2_spatial, obsm=good_obsm_spatial, @@ -545,7 +545,7 @@ ) adata_spatial_is_single_false = anndata.AnnData( - X=X, + X=X.copy(), obs=good_obs_visium_is_single_false, uns=good_uns_with_is_single_false, obsm=good_obsm_spatial, @@ -622,7 +622,7 @@ sparse.csr_matrix(numpy.zeros([unmigrated_obs.shape[0], var_unmigrated.shape[0]], dtype=numpy.float32)) ) adata_with_labels_unmigrated = anndata.AnnData( - X=unmigrated_X, + X=unmigrated_X.copy(), obs=unmigrated_obs, uns=good_uns_with_labels, var=var_unmigrated, From fa25f404e9793c7d19073f1a9b46016dc05cccbd Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Fri, 20 Dec 2024 16:39:26 -0500 Subject: [PATCH 09/13] chunk dense arrays in same chunk_size as sparse arrays --- cellxgene_schema_cli/cellxgene_schema/utils.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/utils.py b/cellxgene_schema_cli/cellxgene_schema/utils.py index a476a3d0..67049b83 100644 --- a/cellxgene_schema_cli/cellxgene_schema/utils.py +++ b/cellxgene_schema_cli/cellxgene_schema/utils.py @@ -134,7 +134,8 @@ def callback(func, elem_name: str, elem, iospec): n_vars = elem.attrs.get("shape")[1] return read_elem_as_dask(elem, chunks=(chunk_size, n_vars)) elif iospec.encoding_type == "array" and len(elem.shape) > 1: - return read_elem_as_dask(elem) + n_vars = elem.shape[1] + return read_elem_as_dask(elem, chunks=(chunk_size, n_vars)) else: return func(elem) else: From 2df0e0d5344aa4c51148348ac16581e833f1bf81 Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Sat, 21 Dec 2024 14:04:21 -0500 Subject: [PATCH 10/13] don't accidentally dask process metadata arrays with X in their name --- cellxgene_schema_cli/cellxgene_schema/utils.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/utils.py b/cellxgene_schema_cli/cellxgene_schema/utils.py index 67049b83..b5b11de0 100644 --- a/cellxgene_schema_cli/cellxgene_schema/utils.py +++ b/cellxgene_schema_cli/cellxgene_schema/utils.py @@ -126,14 +126,14 @@ def read_backed(f: h5py.File, chunk_size: int = 10_000) -> ad.AnnData: """ def callback(func, elem_name: str, elem, iospec): - if "layers" in elem_name or ("X" in elem_name and "X_" not in elem_name): + if "layers" in elem_name or elem_name == "/X" or elem_name == "/raw/X": if iospec.encoding_type in ( "csr_matrix", "csc_matrix", ): n_vars = elem.attrs.get("shape")[1] return read_elem_as_dask(elem, chunks=(chunk_size, n_vars)) - elif iospec.encoding_type == "array" and len(elem.shape) > 1: + elif iospec.encoding_type == "array" and len(elem.shape) == 2: n_vars = elem.shape[1] return read_elem_as_dask(elem, chunks=(chunk_size, n_vars)) else: From 6dddf1883712a3b417fe69a249675a3b9c3b1dbb Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Mon, 23 Dec 2024 09:27:47 -0500 Subject: [PATCH 11/13] don't pick up embeddings with 'layers' in the name --- cellxgene_schema_cli/cellxgene_schema/utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/utils.py b/cellxgene_schema_cli/cellxgene_schema/utils.py index b5b11de0..d0e60678 100644 --- a/cellxgene_schema_cli/cellxgene_schema/utils.py +++ b/cellxgene_schema_cli/cellxgene_schema/utils.py @@ -126,7 +126,7 @@ def read_backed(f: h5py.File, chunk_size: int = 10_000) -> ad.AnnData: """ def callback(func, elem_name: str, elem, iospec): - if "layers" in elem_name or elem_name == "/X" or elem_name == "/raw/X": + if "/layers" in elem_name or elem_name == "/X" or elem_name == "/raw/X": if iospec.encoding_type in ( "csr_matrix", "csc_matrix", From b8c8c297155b97ee5ec09920f0d2e4d0e7d3d3ff Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Mon, 23 Dec 2024 15:28:49 -0500 Subject: [PATCH 12/13] leverage implicit 0 requirement in X matrix --- .../cellxgene_schema/validate.py | 2 +- .../tests/fixtures/examples_validate.py | 4 +++- .../tests/fixtures/h5ads/example_valid.h5ad | Bin 593864 -> 407437 bytes .../tests/test_schema_compliance.py | 2 +- 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/validate.py b/cellxgene_schema_cli/cellxgene_schema/validate.py index 70488982..15f889c7 100644 --- a/cellxgene_schema_cli/cellxgene_schema/validate.py +++ b/cellxgene_schema_cli/cellxgene_schema/validate.py @@ -451,7 +451,7 @@ def _validate_feature_id(self, feature_id: str, df_name: str): @staticmethod def count_matrix_nonzero(matrix: DaskArray) -> int: def count_nonzeros(matrix_chunk: Union[np.ndarray, sparse.spmatrix], is_sparse_matrix: bool) -> np.array: - nnz = matrix_chunk.count_nonzero() if is_sparse_matrix else np.count_nonzero(matrix_chunk) + nnz = matrix_chunk.nnz if is_sparse_matrix else np.count_nonzero(matrix_chunk) return np.array([nnz]) is_sparse_matrix = get_matrix_format(matrix) in SPARSE_MATRIX_TYPES diff --git a/cellxgene_schema_cli/tests/fixtures/examples_validate.py b/cellxgene_schema_cli/tests/fixtures/examples_validate.py index c046d84e..f6e56778 100644 --- a/cellxgene_schema_cli/tests/fixtures/examples_validate.py +++ b/cellxgene_schema_cli/tests/fixtures/examples_validate.py @@ -474,7 +474,9 @@ # --- # 4. Creating expression matrix, # X has integer values and non_raw_X has real values -X = from_array(sparse.csr_matrix(numpy.ones([good_obs.shape[0], good_var.shape[0]], dtype=numpy.float32))) +X = from_array(sparse.csr_matrix((good_obs.shape[0], good_var.shape[0]), dtype=numpy.float32)) +X[0, 0] = 1 +X[1, 0] = 1 non_raw_X = X.copy() non_raw_X[0, 0] = 1.5 diff --git a/cellxgene_schema_cli/tests/fixtures/h5ads/example_valid.h5ad b/cellxgene_schema_cli/tests/fixtures/h5ads/example_valid.h5ad index a1b121bdf605779d0a34649907a8467a31fa1076..d037317a4f9b75dda65a09ea0e0442697f187b81 100644 GIT binary patch delta 165741 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�Pi)$#(GubO}ayaHF2S{QbSfV#+BA;!kFXR$){v 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 O1cGCR2j+_)pdJ7ZGaA+a literal 593864 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.?9W)&{+9dykMlq5@5|L?H-`}q@RP2KBSXnQ?N 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

PB{zypSs=dZgnxF|SBNNHhyEb&}epeiHRYA8T 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 diff --git a/cellxgene_schema_cli/tests/test_schema_compliance.py b/cellxgene_schema_cli/tests/test_schema_compliance.py index 55d93dc8..8b00b5ec 100644 --- a/cellxgene_schema_cli/tests/test_schema_compliance.py +++ b/cellxgene_schema_cli/tests/test_schema_compliance.py @@ -1820,7 +1820,7 @@ def test_feature_is_filtered(self, validator_with_adata): for i in range(X.shape[0]): X[i, 0] = 0 X[0, 0] = 1 - + validator.adata.X = X.map_blocks(lambda x: (x.eliminate_zeros() or x), dtype=X.dtype, meta=X._meta) validator.reset(None, 2) validator.validate_adata() assert validator.errors == [ From 4e20f613aef52fc05a9358496b52df775a57b835 Mon Sep 17 00:00:00 2001 From: nayib-jose-gloria Date: Mon, 23 Dec 2024 16:11:36 -0500 Subject: [PATCH 13/13] configurable chunk_size in read_h5ad --- cellxgene_schema_cli/cellxgene_schema/utils.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cellxgene_schema_cli/cellxgene_schema/utils.py b/cellxgene_schema_cli/cellxgene_schema/utils.py index d0e60678..dcb1d83f 100644 --- a/cellxgene_schema_cli/cellxgene_schema/utils.py +++ b/cellxgene_schema_cli/cellxgene_schema/utils.py @@ -115,7 +115,7 @@ def getattr_anndata(adata: ad.AnnData, attr: str = None): return getattr(adata, attr) -def read_backed(f: h5py.File, chunk_size: int = 10_000) -> ad.AnnData: +def read_backed(f: h5py.File, chunk_size: int) -> ad.AnnData: """ Read an AnnData object from a h5py.File object, reading in matrices (dense or sparse) as dask arrays. Does not read full matrices into memory. @@ -146,7 +146,7 @@ def callback(func, elem_name: str, elem, iospec): return adata -def read_h5ad(h5ad_path: Union[str, bytes, os.PathLike]) -> ad.AnnData: +def read_h5ad(h5ad_path: Union[str, bytes, os.PathLike], chunk_size: int = 10_000) -> ad.AnnData: """ Reads h5ad into adata :params Union[str, bytes, os.PathLike] h5ad_path: path to h5ad to read @@ -155,7 +155,7 @@ def read_h5ad(h5ad_path: Union[str, bytes, os.PathLike]) -> ad.AnnData: """ try: f = h5py.File(h5ad_path) - adata = read_backed(f) + adata = read_backed(f, chunk_size) # This code, and AnnData in general, is optimized for row access. # Running backed, with CSC, is prohibitively slow. Read the entire