name: "umap" namespace: "dimred" version: "fix-integration-tests" authors: - name: "Dries De Maeyer" roles: - "maintainer" info: role: "Core Team Member" links: email: "ddemaeyer@gmail.com" github: "ddemaeyer" linkedin: "dries-de-maeyer-b46a814" organizations: - name: "Janssen Pharmaceuticals" href: "https://www.janssen.com" role: "Principal Scientist" argument_groups: - name: "Inputs" arguments: - type: "file" name: "--input" description: "Input h5mu file" info: null example: - "input.h5mu" must_exist: true create_parent: true required: true direction: "input" multiple: false multiple_sep: ";" - type: "string" name: "--modality" info: null default: - "rna" required: false direction: "input" multiple: false multiple_sep: ";" - type: "string" name: "--uns_neighbors" description: "The `.uns` neighbors slot as output by the `find_neighbors` component." info: null default: - "neighbors" required: false direction: "input" multiple: false multiple_sep: ";" - name: "Outputs" arguments: - type: "file" name: "--output" alternatives: - "-o" description: "Output h5mu file." info: null example: - "output.h5mu" must_exist: true create_parent: true required: true direction: "output" multiple: false multiple_sep: ";" - type: "string" name: "--output_compression" description: "The compression format to be used on the output h5mu object." info: null example: - "gzip" required: false choices: - "gzip" - "lzf" direction: "input" multiple: false multiple_sep: ";" - type: "string" name: "--obsm_output" description: "The pre/postfix under which to store the UMAP results." info: null default: - "umap" required: false direction: "input" multiple: false multiple_sep: ";" - name: "Arguments" arguments: - type: "double" name: "--min_dist" description: "The effective minimum distance between embedded points. Smaller\ \ values will result in a more clustered/clumped embedding where nearby points\ \ on the manifold are drawn closer together, while larger values will result\ \ on a more even dispersal of points. The value should be set relative to the\ \ spread value, which determines the scale at which embedded points will be\ \ spread out." info: null default: - 0.5 required: false direction: "input" multiple: false multiple_sep: ";" - type: "double" name: "--spread" description: "The effective scale of embedded points. In combination with `min_dist`\ \ this determines how clustered/clumped the embedded points are." info: null default: - 1.0 required: false direction: "input" multiple: false multiple_sep: ";" - type: "integer" name: "--num_components" description: "The number of dimensions of the embedding." info: null default: - 2 required: false direction: "input" multiple: false multiple_sep: ";" - type: "integer" name: "--max_iter" description: "The number of iterations (epochs) of the optimization. Called `n_epochs`\ \ in the original UMAP. Default is set to 500 if neighbors['connectivities'].shape[0]\ \ <= 10000, else 200." info: null required: false direction: "input" multiple: false multiple_sep: ";" - type: "double" name: "--alpha" description: "The initial learning rate for the embedding optimization." info: null default: - 1.0 required: false direction: "input" multiple: false multiple_sep: ";" - type: "double" name: "--gamma" description: "Weighting applied to negative samples in low dimensional embedding\ \ optimization. Values higher than one will result in greater weight being given\ \ to negative samples." info: null default: - 1.0 required: false direction: "input" multiple: false multiple_sep: ";" - type: "integer" name: "--negative_sample_rate" description: "The number of negative edge/1-simplex samples to use per positive\ \ edge/1-simplex sample in optimizing the low dimensional embedding." info: null default: - 5 required: false direction: "input" multiple: false multiple_sep: ";" - type: "string" name: "--init_pos" description: "How to initialize the low dimensional embedding. Called `init` in\ \ the original UMAP. Options are:\n \n* Any key from `.obsm`\n* `'paga'`: positions\ \ from `paga()`\n* `'spectral'`: use a spectral embedding of the graph\n* `'random'`:\ \ assign initial embedding positions at random.\n" info: null default: - "spectral" required: false direction: "input" multiple: false multiple_sep: ";" resources: - type: "python_script" path: "script.py" is_executable: true - type: "file" path: "setup_logger.py" - type: "file" path: "nextflow_labels.config" dest: "nextflow_labels.config" description: "UMAP (Uniform Manifold Approximation and Projection) is a manifold learning\ \ technique suitable for visualizing high-dimensional data. Besides tending to be\ \ faster than tSNE, it optimizes the embedding such that it best reflects the topology\ \ of the data, which we represent throughout Scanpy using a neighborhood graph.\ \ tSNE, by contrast, optimizes the distribution of nearest-neighbor distances in\ \ the embedding such that these best match the distribution of distances in the\ \ high-dimensional space. We use the implementation of umap-learn [McInnes18]. For\ \ a few comparisons of UMAP with tSNE, see this preprint.\n" test_resources: - type: "python_script" path: "test.py" is_executable: true - type: "file" path: "pbmc_1k_protein_v3" - type: "file" path: "openpipelinetestutils" dest: "openpipelinetestutils" info: null status: "enabled" links: repository: "https://github.com/openpipelines-bio/openpipeline" docker_registry: "ghcr.io" runners: - type: "executable" id: "executable" docker_setup_strategy: "ifneedbepullelsecachedbuild" - type: "nextflow" id: "nextflow" directives: label: - "highcpu" - "midmem" tag: "$id" auto: simplifyInput: true simplifyOutput: false transcript: false publish: false config: labels: mem1gb: "memory = 1000000000.B" mem2gb: "memory = 2000000000.B" mem5gb: "memory = 5000000000.B" mem10gb: "memory = 10000000000.B" mem20gb: "memory = 20000000000.B" mem50gb: "memory = 50000000000.B" mem100gb: "memory = 100000000000.B" mem200gb: "memory = 200000000000.B" mem500gb: "memory = 500000000000.B" mem1tb: "memory = 1000000000000.B" mem2tb: "memory = 2000000000000.B" mem5tb: "memory = 5000000000000.B" mem10tb: "memory = 10000000000000.B" mem20tb: "memory = 20000000000000.B" mem50tb: "memory = 50000000000000.B" mem100tb: "memory = 100000000000000.B" mem200tb: "memory = 200000000000000.B" mem500tb: "memory = 500000000000000.B" mem1gib: "memory = 1073741824.B" mem2gib: "memory = 2147483648.B" mem4gib: "memory = 4294967296.B" mem8gib: "memory = 8589934592.B" mem16gib: "memory = 17179869184.B" mem32gib: "memory = 34359738368.B" mem64gib: "memory = 68719476736.B" mem128gib: "memory = 137438953472.B" mem256gib: "memory = 274877906944.B" mem512gib: "memory = 549755813888.B" mem1tib: "memory = 1099511627776.B" mem2tib: "memory = 2199023255552.B" mem4tib: "memory = 4398046511104.B" mem8tib: "memory = 8796093022208.B" mem16tib: "memory = 17592186044416.B" mem32tib: "memory = 35184372088832.B" mem64tib: "memory = 70368744177664.B" mem128tib: "memory = 140737488355328.B" mem256tib: "memory = 281474976710656.B" mem512tib: "memory = 562949953421312.B" cpu1: "cpus = 1" cpu2: "cpus = 2" cpu5: "cpus = 5" cpu10: "cpus = 10" cpu20: "cpus = 20" cpu50: "cpus = 50" cpu100: "cpus = 100" cpu200: "cpus = 200" cpu500: "cpus = 500" cpu1000: "cpus = 1000" script: - "includeConfig(\"nextflow_labels.config\")" debug: false container: "docker" engines: - type: "docker" id: "docker" image: "python:3.9-slim" target_registry: "images.viash-hub.com" target_tag: "fix-integration-tests" namespace_separator: "/" setup: - type: "apt" packages: - "procps" interactive: false - type: "python" user: false packages: - "anndata==0.10.8" - "mudata~=0.2.4" - "pandas!=2.1.2" - "numpy<2.0.0" - "scanpy~=1.9.6" upgrade: true test_setup: - type: "python" user: false packages: - "viashpy==0.8.0" upgrade: true entrypoint: [] cmd: null - type: "native" id: "native" build_info: config: "src/dimred/umap/config.vsh.yaml" runner: "executable" engine: "docker|native" output: "target/executable/dimred/umap" executable: "target/executable/dimred/umap/umap" viash_version: "0.9.0" git_commit: "5e3f3231456facaf14da57fa563d4de58492ca82" git_remote: "https://x-access-token:ghs_EujrUcz58S6J44CLSvromEPEcaMxTc30MU1j@github.com/openpipelines-bio/openpipeline" git_tag: "0.2.0-1942-g5e3f3231" package_config: name: "openpipeline" version: "fix-integration-tests" info: test_resources: - type: "s3" path: "s3://openpipelines-data" dest: "resources_test" viash_version: "0.9.0" source: "src" target: "target" config_mods: - ".test_resources += {path: '/src/base/openpipelinetestutils', dest: 'openpipelinetestutils'}\n\ .resources += {path: '/src/workflows/utils/labels.config', dest: 'nextflow_labels.config'}\n\ .runners[.type == 'nextflow'].directives.tag := '$id'\n.runners[.type == 'nextflow'].config.script\ \ := 'includeConfig(\"nextflow_labels.config\")'\n" - ".engines += { type: \"native\" }" - ".engines[.type == 'docker'].target_registry := 'images.viash-hub.com'" - ".engines[.type == 'docker'].target_tag := 'fix-integration-tests'" organization: "vsh" links: repository: "https://github.com/openpipelines-bio/openpipeline" docker_registry: "ghcr.io" homepage: "https://openpipelines.bio" documentation: "https://openpipelines.bio/fundamentals" issue_tracker: "https://github.com/openpipelines-bio/openpipeline/issues"