@synsci/cli-darwin-arm64 1.1.76 → 1.1.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/skills/adaptyv/SKILL.md +114 -0
- package/bin/skills/adaptyv/reference/api_reference.md +308 -0
- package/bin/skills/adaptyv/reference/examples.md +913 -0
- package/bin/skills/adaptyv/reference/experiments.md +360 -0
- package/bin/skills/adaptyv/reference/protein_optimization.md +637 -0
- package/bin/skills/aeon/SKILL.md +374 -0
- package/bin/skills/aeon/references/anomaly_detection.md +154 -0
- package/bin/skills/aeon/references/classification.md +144 -0
- package/bin/skills/aeon/references/clustering.md +123 -0
- package/bin/skills/aeon/references/datasets_benchmarking.md +387 -0
- package/bin/skills/aeon/references/distances.md +256 -0
- package/bin/skills/aeon/references/forecasting.md +140 -0
- package/bin/skills/aeon/references/networks.md +289 -0
- package/bin/skills/aeon/references/regression.md +118 -0
- package/bin/skills/aeon/references/segmentation.md +163 -0
- package/bin/skills/aeon/references/similarity_search.md +187 -0
- package/bin/skills/aeon/references/transformations.md +246 -0
- package/bin/skills/alphafold-database/SKILL.md +513 -0
- package/bin/skills/alphafold-database/references/api_reference.md +423 -0
- package/bin/skills/anndata/SKILL.md +400 -0
- package/bin/skills/anndata/references/best_practices.md +525 -0
- package/bin/skills/anndata/references/concatenation.md +396 -0
- package/bin/skills/anndata/references/data_structure.md +314 -0
- package/bin/skills/anndata/references/io_operations.md +404 -0
- package/bin/skills/anndata/references/manipulation.md +516 -0
- package/bin/skills/arboreto/SKILL.md +243 -0
- package/bin/skills/arboreto/references/algorithms.md +138 -0
- package/bin/skills/arboreto/references/basic_inference.md +151 -0
- package/bin/skills/arboreto/references/distributed_computing.md +242 -0
- package/bin/skills/arboreto/scripts/basic_grn_inference.py +97 -0
- package/bin/skills/astropy/SKILL.md +331 -0
- package/bin/skills/astropy/references/coordinates.md +273 -0
- package/bin/skills/astropy/references/cosmology.md +307 -0
- package/bin/skills/astropy/references/fits.md +396 -0
- package/bin/skills/astropy/references/tables.md +489 -0
- package/bin/skills/astropy/references/time.md +404 -0
- package/bin/skills/astropy/references/units.md +178 -0
- package/bin/skills/astropy/references/wcs_and_other_modules.md +373 -0
- package/bin/skills/benchling-integration/SKILL.md +480 -0
- package/bin/skills/benchling-integration/references/api_endpoints.md +883 -0
- package/bin/skills/benchling-integration/references/authentication.md +379 -0
- package/bin/skills/benchling-integration/references/sdk_reference.md +774 -0
- package/bin/skills/biopython/SKILL.md +443 -0
- package/bin/skills/biopython/references/advanced.md +577 -0
- package/bin/skills/biopython/references/alignment.md +362 -0
- package/bin/skills/biopython/references/blast.md +455 -0
- package/bin/skills/biopython/references/databases.md +484 -0
- package/bin/skills/biopython/references/phylogenetics.md +566 -0
- package/bin/skills/biopython/references/sequence_io.md +285 -0
- package/bin/skills/biopython/references/structure.md +564 -0
- package/bin/skills/biorxiv-database/SKILL.md +483 -0
- package/bin/skills/biorxiv-database/references/api_reference.md +280 -0
- package/bin/skills/biorxiv-database/scripts/biorxiv_search.py +445 -0
- package/bin/skills/bioservices/SKILL.md +361 -0
- package/bin/skills/bioservices/references/identifier_mapping.md +685 -0
- package/bin/skills/bioservices/references/services_reference.md +636 -0
- package/bin/skills/bioservices/references/workflow_patterns.md +811 -0
- package/bin/skills/bioservices/scripts/batch_id_converter.py +347 -0
- package/bin/skills/bioservices/scripts/compound_cross_reference.py +378 -0
- package/bin/skills/bioservices/scripts/pathway_analysis.py +309 -0
- package/bin/skills/bioservices/scripts/protein_analysis_workflow.py +408 -0
- package/bin/skills/brenda-database/SKILL.md +719 -0
- package/bin/skills/brenda-database/references/api_reference.md +537 -0
- package/bin/skills/brenda-database/scripts/brenda_queries.py +844 -0
- package/bin/skills/brenda-database/scripts/brenda_visualization.py +772 -0
- package/bin/skills/brenda-database/scripts/enzyme_pathway_builder.py +1053 -0
- package/bin/skills/cellxgene-census/SKILL.md +511 -0
- package/bin/skills/cellxgene-census/references/census_schema.md +182 -0
- package/bin/skills/cellxgene-census/references/common_patterns.md +351 -0
- package/bin/skills/chembl-database/SKILL.md +389 -0
- package/bin/skills/chembl-database/references/api_reference.md +272 -0
- package/bin/skills/chembl-database/scripts/example_queries.py +278 -0
- package/bin/skills/cirq/SKILL.md +346 -0
- package/bin/skills/cirq/references/building.md +307 -0
- package/bin/skills/cirq/references/experiments.md +572 -0
- package/bin/skills/cirq/references/hardware.md +515 -0
- package/bin/skills/cirq/references/noise.md +515 -0
- package/bin/skills/cirq/references/simulation.md +350 -0
- package/bin/skills/cirq/references/transformation.md +416 -0
- package/bin/skills/clinicaltrials-database/SKILL.md +507 -0
- package/bin/skills/clinicaltrials-database/references/api_reference.md +358 -0
- package/bin/skills/clinicaltrials-database/scripts/query_clinicaltrials.py +215 -0
- package/bin/skills/clinpgx-database/SKILL.md +638 -0
- package/bin/skills/clinpgx-database/references/api_reference.md +757 -0
- package/bin/skills/clinpgx-database/scripts/query_clinpgx.py +518 -0
- package/bin/skills/clinvar-database/SKILL.md +362 -0
- package/bin/skills/clinvar-database/references/api_reference.md +227 -0
- package/bin/skills/clinvar-database/references/clinical_significance.md +218 -0
- package/bin/skills/clinvar-database/references/data_formats.md +358 -0
- package/bin/skills/cobrapy/SKILL.md +463 -0
- package/bin/skills/cobrapy/references/api_quick_reference.md +655 -0
- package/bin/skills/cobrapy/references/workflows.md +593 -0
- package/bin/skills/cosmic-database/SKILL.md +336 -0
- package/bin/skills/cosmic-database/references/cosmic_data_reference.md +220 -0
- package/bin/skills/cosmic-database/scripts/download_cosmic.py +231 -0
- package/bin/skills/dask/SKILL.md +456 -0
- package/bin/skills/dask/references/arrays.md +497 -0
- package/bin/skills/dask/references/bags.md +468 -0
- package/bin/skills/dask/references/best-practices.md +277 -0
- package/bin/skills/dask/references/dataframes.md +368 -0
- package/bin/skills/dask/references/futures.md +541 -0
- package/bin/skills/dask/references/schedulers.md +504 -0
- package/bin/skills/datacommons-client/SKILL.md +255 -0
- package/bin/skills/datacommons-client/references/getting_started.md +417 -0
- package/bin/skills/datacommons-client/references/node.md +250 -0
- package/bin/skills/datacommons-client/references/observation.md +185 -0
- package/bin/skills/datacommons-client/references/resolve.md +246 -0
- package/bin/skills/datamol/SKILL.md +706 -0
- package/bin/skills/datamol/references/conformers_module.md +131 -0
- package/bin/skills/datamol/references/core_api.md +130 -0
- package/bin/skills/datamol/references/descriptors_viz.md +195 -0
- package/bin/skills/datamol/references/fragments_scaffolds.md +174 -0
- package/bin/skills/datamol/references/io_module.md +109 -0
- package/bin/skills/datamol/references/reactions_data.md +218 -0
- package/bin/skills/deepchem/SKILL.md +597 -0
- package/bin/skills/deepchem/references/api_reference.md +303 -0
- package/bin/skills/deepchem/references/workflows.md +491 -0
- package/bin/skills/deepchem/scripts/graph_neural_network.py +338 -0
- package/bin/skills/deepchem/scripts/predict_solubility.py +224 -0
- package/bin/skills/deepchem/scripts/transfer_learning.py +375 -0
- package/bin/skills/deeptools/SKILL.md +531 -0
- package/bin/skills/deeptools/assets/quick_reference.md +58 -0
- package/bin/skills/deeptools/references/effective_genome_sizes.md +116 -0
- package/bin/skills/deeptools/references/normalization_methods.md +410 -0
- package/bin/skills/deeptools/references/tools_reference.md +533 -0
- package/bin/skills/deeptools/references/workflows.md +474 -0
- package/bin/skills/deeptools/scripts/validate_files.py +195 -0
- package/bin/skills/deeptools/scripts/workflow_generator.py +454 -0
- package/bin/skills/denario/SKILL.md +215 -0
- package/bin/skills/denario/references/examples.md +494 -0
- package/bin/skills/denario/references/installation.md +213 -0
- package/bin/skills/denario/references/llm_configuration.md +265 -0
- package/bin/skills/denario/references/research_pipeline.md +471 -0
- package/bin/skills/diffdock/SKILL.md +483 -0
- package/bin/skills/diffdock/assets/batch_template.csv +4 -0
- package/bin/skills/diffdock/assets/custom_inference_config.yaml +90 -0
- package/bin/skills/diffdock/references/confidence_and_limitations.md +182 -0
- package/bin/skills/diffdock/references/parameters_reference.md +163 -0
- package/bin/skills/diffdock/references/workflows_examples.md +392 -0
- package/bin/skills/diffdock/scripts/analyze_results.py +334 -0
- package/bin/skills/diffdock/scripts/prepare_batch_csv.py +254 -0
- package/bin/skills/diffdock/scripts/setup_check.py +278 -0
- package/bin/skills/dnanexus-integration/SKILL.md +383 -0
- package/bin/skills/dnanexus-integration/references/app-development.md +247 -0
- package/bin/skills/dnanexus-integration/references/configuration.md +646 -0
- package/bin/skills/dnanexus-integration/references/data-operations.md +400 -0
- package/bin/skills/dnanexus-integration/references/job-execution.md +412 -0
- package/bin/skills/dnanexus-integration/references/python-sdk.md +523 -0
- package/bin/skills/document-skills/docx/LICENSE.txt +30 -0
- package/bin/skills/document-skills/docx/SKILL.md +233 -0
- package/bin/skills/document-skills/docx/docx-js.md +350 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/bin/skills/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/pack.py +159 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/unpack.py +29 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/validate.py +69 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/validation/__init__.py +15 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/validation/base.py +951 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/validation/docx.py +274 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/validation/pptx.py +315 -0
- package/bin/skills/document-skills/docx/ooxml/scripts/validation/redlining.py +279 -0
- package/bin/skills/document-skills/docx/ooxml.md +610 -0
- package/bin/skills/document-skills/docx/scripts/__init__.py +1 -0
- package/bin/skills/document-skills/docx/scripts/document.py +1276 -0
- package/bin/skills/document-skills/docx/scripts/templates/comments.xml +3 -0
- package/bin/skills/document-skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/bin/skills/document-skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/bin/skills/document-skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/bin/skills/document-skills/docx/scripts/templates/people.xml +3 -0
- package/bin/skills/document-skills/docx/scripts/utilities.py +374 -0
- package/bin/skills/document-skills/pdf/LICENSE.txt +30 -0
- package/bin/skills/document-skills/pdf/SKILL.md +330 -0
- package/bin/skills/document-skills/pdf/forms.md +205 -0
- package/bin/skills/document-skills/pdf/reference.md +612 -0
- package/bin/skills/document-skills/pdf/scripts/check_bounding_boxes.py +70 -0
- package/bin/skills/document-skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
- package/bin/skills/document-skills/pdf/scripts/check_fillable_fields.py +12 -0
- package/bin/skills/document-skills/pdf/scripts/convert_pdf_to_images.py +35 -0
- package/bin/skills/document-skills/pdf/scripts/create_validation_image.py +41 -0
- package/bin/skills/document-skills/pdf/scripts/extract_form_field_info.py +152 -0
- package/bin/skills/document-skills/pdf/scripts/fill_fillable_fields.py +114 -0
- package/bin/skills/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
- package/bin/skills/document-skills/pptx/LICENSE.txt +30 -0
- package/bin/skills/document-skills/pptx/SKILL.md +520 -0
- package/bin/skills/document-skills/pptx/html2pptx.md +625 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/bin/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/pack.py +159 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/unpack.py +29 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/validate.py +69 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/validation/base.py +951 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/validation/docx.py +274 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
- package/bin/skills/document-skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
- package/bin/skills/document-skills/pptx/ooxml.md +427 -0
- package/bin/skills/document-skills/pptx/scripts/html2pptx.js +979 -0
- package/bin/skills/document-skills/pptx/scripts/inventory.py +1020 -0
- package/bin/skills/document-skills/pptx/scripts/rearrange.py +231 -0
- package/bin/skills/document-skills/pptx/scripts/replace.py +385 -0
- package/bin/skills/document-skills/pptx/scripts/thumbnail.py +450 -0
- package/bin/skills/document-skills/xlsx/LICENSE.txt +30 -0
- package/bin/skills/document-skills/xlsx/SKILL.md +325 -0
- package/bin/skills/document-skills/xlsx/recalc.py +178 -0
- package/bin/skills/drugbank-database/SKILL.md +190 -0
- package/bin/skills/drugbank-database/references/chemical-analysis.md +590 -0
- package/bin/skills/drugbank-database/references/data-access.md +242 -0
- package/bin/skills/drugbank-database/references/drug-queries.md +386 -0
- package/bin/skills/drugbank-database/references/interactions.md +425 -0
- package/bin/skills/drugbank-database/references/targets-pathways.md +518 -0
- package/bin/skills/drugbank-database/scripts/drugbank_helper.py +350 -0
- package/bin/skills/ena-database/SKILL.md +204 -0
- package/bin/skills/ena-database/references/api_reference.md +490 -0
- package/bin/skills/ensembl-database/SKILL.md +311 -0
- package/bin/skills/ensembl-database/references/api_endpoints.md +346 -0
- package/bin/skills/ensembl-database/scripts/ensembl_query.py +427 -0
- package/bin/skills/esm/SKILL.md +306 -0
- package/bin/skills/esm/references/esm-c-api.md +583 -0
- package/bin/skills/esm/references/esm3-api.md +452 -0
- package/bin/skills/esm/references/forge-api.md +657 -0
- package/bin/skills/esm/references/workflows.md +685 -0
- package/bin/skills/etetoolkit/SKILL.md +623 -0
- package/bin/skills/etetoolkit/references/api_reference.md +583 -0
- package/bin/skills/etetoolkit/references/visualization.md +783 -0
- package/bin/skills/etetoolkit/references/workflows.md +774 -0
- package/bin/skills/etetoolkit/scripts/quick_visualize.py +214 -0
- package/bin/skills/etetoolkit/scripts/tree_operations.py +229 -0
- package/bin/skills/exploratory-data-analysis/SKILL.md +446 -0
- package/bin/skills/exploratory-data-analysis/assets/report_template.md +196 -0
- package/bin/skills/exploratory-data-analysis/references/bioinformatics_genomics_formats.md +664 -0
- package/bin/skills/exploratory-data-analysis/references/chemistry_molecular_formats.md +664 -0
- package/bin/skills/exploratory-data-analysis/references/general_scientific_formats.md +518 -0
- package/bin/skills/exploratory-data-analysis/references/microscopy_imaging_formats.md +620 -0
- package/bin/skills/exploratory-data-analysis/references/proteomics_metabolomics_formats.md +517 -0
- package/bin/skills/exploratory-data-analysis/references/spectroscopy_analytical_formats.md +633 -0
- package/bin/skills/exploratory-data-analysis/scripts/eda_analyzer.py +547 -0
- package/bin/skills/fda-database/SKILL.md +518 -0
- package/bin/skills/fda-database/references/animal_veterinary.md +377 -0
- package/bin/skills/fda-database/references/api_basics.md +687 -0
- package/bin/skills/fda-database/references/devices.md +632 -0
- package/bin/skills/fda-database/references/drugs.md +468 -0
- package/bin/skills/fda-database/references/foods.md +374 -0
- package/bin/skills/fda-database/references/other.md +472 -0
- package/bin/skills/fda-database/scripts/fda_examples.py +335 -0
- package/bin/skills/fda-database/scripts/fda_query.py +440 -0
- package/bin/skills/flowio/SKILL.md +608 -0
- package/bin/skills/flowio/references/api_reference.md +372 -0
- package/bin/skills/fluidsim/SKILL.md +349 -0
- package/bin/skills/fluidsim/references/advanced_features.md +398 -0
- package/bin/skills/fluidsim/references/installation.md +68 -0
- package/bin/skills/fluidsim/references/output_analysis.md +283 -0
- package/bin/skills/fluidsim/references/parameters.md +198 -0
- package/bin/skills/fluidsim/references/simulation_workflow.md +172 -0
- package/bin/skills/fluidsim/references/solvers.md +94 -0
- package/bin/skills/fred-economic-data/SKILL.md +433 -0
- package/bin/skills/fred-economic-data/references/api_basics.md +212 -0
- package/bin/skills/fred-economic-data/references/categories.md +442 -0
- package/bin/skills/fred-economic-data/references/geofred.md +588 -0
- package/bin/skills/fred-economic-data/references/releases.md +642 -0
- package/bin/skills/fred-economic-data/references/series.md +584 -0
- package/bin/skills/fred-economic-data/references/sources.md +423 -0
- package/bin/skills/fred-economic-data/references/tags.md +485 -0
- package/bin/skills/fred-economic-data/scripts/fred_examples.py +354 -0
- package/bin/skills/fred-economic-data/scripts/fred_query.py +590 -0
- package/bin/skills/gene-database/SKILL.md +179 -0
- package/bin/skills/gene-database/references/api_reference.md +404 -0
- package/bin/skills/gene-database/references/common_workflows.md +428 -0
- package/bin/skills/gene-database/scripts/batch_gene_lookup.py +298 -0
- package/bin/skills/gene-database/scripts/fetch_gene_data.py +277 -0
- package/bin/skills/gene-database/scripts/query_gene.py +251 -0
- package/bin/skills/geniml/SKILL.md +318 -0
- package/bin/skills/geniml/references/bedspace.md +127 -0
- package/bin/skills/geniml/references/consensus_peaks.md +238 -0
- package/bin/skills/geniml/references/region2vec.md +90 -0
- package/bin/skills/geniml/references/scembed.md +197 -0
- package/bin/skills/geniml/references/utilities.md +385 -0
- package/bin/skills/geo-database/SKILL.md +815 -0
- package/bin/skills/geo-database/references/geo_reference.md +829 -0
- package/bin/skills/geopandas/SKILL.md +251 -0
- package/bin/skills/geopandas/references/crs-management.md +243 -0
- package/bin/skills/geopandas/references/data-io.md +165 -0
- package/bin/skills/geopandas/references/data-structures.md +70 -0
- package/bin/skills/geopandas/references/geometric-operations.md +221 -0
- package/bin/skills/geopandas/references/spatial-analysis.md +184 -0
- package/bin/skills/geopandas/references/visualization.md +243 -0
- package/bin/skills/get-available-resources/SKILL.md +277 -0
- package/bin/skills/get-available-resources/scripts/detect_resources.py +401 -0
- package/bin/skills/gget/SKILL.md +871 -0
- package/bin/skills/gget/references/database_info.md +300 -0
- package/bin/skills/gget/references/module_reference.md +467 -0
- package/bin/skills/gget/references/workflows.md +814 -0
- package/bin/skills/gget/scripts/batch_sequence_analysis.py +191 -0
- package/bin/skills/gget/scripts/enrichment_pipeline.py +235 -0
- package/bin/skills/gget/scripts/gene_analysis.py +161 -0
- package/bin/skills/gtars/SKILL.md +285 -0
- package/bin/skills/gtars/references/cli.md +222 -0
- package/bin/skills/gtars/references/coverage.md +172 -0
- package/bin/skills/gtars/references/overlap.md +156 -0
- package/bin/skills/gtars/references/python-api.md +211 -0
- package/bin/skills/gtars/references/refget.md +147 -0
- package/bin/skills/gtars/references/tokenizers.md +103 -0
- package/bin/skills/gwas-database/SKILL.md +608 -0
- package/bin/skills/gwas-database/references/api_reference.md +793 -0
- package/bin/skills/histolab/SKILL.md +678 -0
- package/bin/skills/histolab/references/filters_preprocessing.md +514 -0
- package/bin/skills/histolab/references/slide_management.md +172 -0
- package/bin/skills/histolab/references/tile_extraction.md +421 -0
- package/bin/skills/histolab/references/tissue_masks.md +251 -0
- package/bin/skills/histolab/references/visualization.md +547 -0
- package/bin/skills/hmdb-database/SKILL.md +196 -0
- package/bin/skills/hmdb-database/references/hmdb_data_fields.md +267 -0
- package/bin/skills/hypogenic/SKILL.md +655 -0
- package/bin/skills/hypogenic/references/config_template.yaml +150 -0
- package/bin/skills/imaging-data-commons/SKILL.md +1182 -0
- package/bin/skills/imaging-data-commons/references/bigquery_guide.md +556 -0
- package/bin/skills/imaging-data-commons/references/cli_guide.md +272 -0
- package/bin/skills/imaging-data-commons/references/cloud_storage_guide.md +333 -0
- package/bin/skills/imaging-data-commons/references/dicomweb_guide.md +399 -0
- package/bin/skills/infographics/SKILL.md +563 -0
- package/bin/skills/infographics/references/color_palettes.md +496 -0
- package/bin/skills/infographics/references/design_principles.md +636 -0
- package/bin/skills/infographics/references/infographic_types.md +907 -0
- package/bin/skills/infographics/scripts/generate_infographic.py +234 -0
- package/bin/skills/infographics/scripts/generate_infographic_ai.py +1290 -0
- package/bin/skills/iso-13485-certification/SKILL.md +680 -0
- package/bin/skills/iso-13485-certification/assets/templates/procedures/CAPA-procedure-template.md +453 -0
- package/bin/skills/iso-13485-certification/assets/templates/procedures/document-control-procedure-template.md +567 -0
- package/bin/skills/iso-13485-certification/assets/templates/quality-manual-template.md +521 -0
- package/bin/skills/iso-13485-certification/references/gap-analysis-checklist.md +568 -0
- package/bin/skills/iso-13485-certification/references/iso-13485-requirements.md +610 -0
- package/bin/skills/iso-13485-certification/references/mandatory-documents.md +606 -0
- package/bin/skills/iso-13485-certification/references/quality-manual-guide.md +688 -0
- package/bin/skills/iso-13485-certification/scripts/gap_analyzer.py +440 -0
- package/bin/skills/kegg-database/SKILL.md +377 -0
- package/bin/skills/kegg-database/references/kegg_reference.md +326 -0
- package/bin/skills/kegg-database/scripts/kegg_api.py +251 -0
- package/bin/skills/labarchive-integration/SKILL.md +268 -0
- package/bin/skills/labarchive-integration/references/api_reference.md +342 -0
- package/bin/skills/labarchive-integration/references/authentication_guide.md +357 -0
- package/bin/skills/labarchive-integration/references/integrations.md +425 -0
- package/bin/skills/labarchive-integration/scripts/entry_operations.py +334 -0
- package/bin/skills/labarchive-integration/scripts/notebook_operations.py +269 -0
- package/bin/skills/labarchive-integration/scripts/setup_config.py +205 -0
- package/bin/skills/lamindb/SKILL.md +390 -0
- package/bin/skills/lamindb/references/annotation-validation.md +513 -0
- package/bin/skills/lamindb/references/core-concepts.md +380 -0
- package/bin/skills/lamindb/references/data-management.md +433 -0
- package/bin/skills/lamindb/references/integrations.md +642 -0
- package/bin/skills/lamindb/references/ontologies.md +497 -0
- package/bin/skills/lamindb/references/setup-deployment.md +733 -0
- package/bin/skills/latchbio-integration/SKILL.md +353 -0
- package/bin/skills/latchbio-integration/references/data-management.md +427 -0
- package/bin/skills/latchbio-integration/references/resource-configuration.md +429 -0
- package/bin/skills/latchbio-integration/references/verified-workflows.md +487 -0
- package/bin/skills/latchbio-integration/references/workflow-creation.md +254 -0
- package/bin/skills/matchms/SKILL.md +203 -0
- package/bin/skills/matchms/references/filtering.md +288 -0
- package/bin/skills/matchms/references/importing_exporting.md +416 -0
- package/bin/skills/matchms/references/similarity.md +380 -0
- package/bin/skills/matchms/references/workflows.md +647 -0
- package/bin/skills/matlab/SKILL.md +376 -0
- package/bin/skills/matlab/references/data-import-export.md +479 -0
- package/bin/skills/matlab/references/executing-scripts.md +444 -0
- package/bin/skills/matlab/references/graphics-visualization.md +579 -0
- package/bin/skills/matlab/references/mathematics.md +553 -0
- package/bin/skills/matlab/references/matrices-arrays.md +349 -0
- package/bin/skills/matlab/references/octave-compatibility.md +544 -0
- package/bin/skills/matlab/references/programming.md +672 -0
- package/bin/skills/matlab/references/python-integration.md +433 -0
- package/bin/skills/matplotlib/SKILL.md +361 -0
- package/bin/skills/matplotlib/references/api_reference.md +412 -0
- package/bin/skills/matplotlib/references/common_issues.md +563 -0
- package/bin/skills/matplotlib/references/plot_types.md +476 -0
- package/bin/skills/matplotlib/references/styling_guide.md +589 -0
- package/bin/skills/matplotlib/scripts/plot_template.py +401 -0
- package/bin/skills/matplotlib/scripts/style_configurator.py +409 -0
- package/bin/skills/medchem/SKILL.md +406 -0
- package/bin/skills/medchem/references/api_guide.md +600 -0
- package/bin/skills/medchem/references/rules_catalog.md +604 -0
- package/bin/skills/medchem/scripts/filter_molecules.py +418 -0
- package/bin/skills/metabolomics-workbench-database/SKILL.md +259 -0
- package/bin/skills/metabolomics-workbench-database/references/api_reference.md +494 -0
- package/bin/skills/modal-research-gpu/SKILL.md +238 -0
- package/bin/skills/molfeat/SKILL.md +511 -0
- package/bin/skills/molfeat/references/api_reference.md +428 -0
- package/bin/skills/molfeat/references/available_featurizers.md +333 -0
- package/bin/skills/molfeat/references/examples.md +723 -0
- package/bin/skills/networkx/SKILL.md +437 -0
- package/bin/skills/networkx/references/algorithms.md +383 -0
- package/bin/skills/networkx/references/generators.md +378 -0
- package/bin/skills/networkx/references/graph-basics.md +283 -0
- package/bin/skills/networkx/references/io.md +441 -0
- package/bin/skills/networkx/references/visualization.md +529 -0
- package/bin/skills/neurokit2/SKILL.md +356 -0
- package/bin/skills/neurokit2/references/bio_module.md +417 -0
- package/bin/skills/neurokit2/references/complexity.md +715 -0
- package/bin/skills/neurokit2/references/ecg_cardiac.md +355 -0
- package/bin/skills/neurokit2/references/eda.md +497 -0
- package/bin/skills/neurokit2/references/eeg.md +506 -0
- package/bin/skills/neurokit2/references/emg.md +408 -0
- package/bin/skills/neurokit2/references/eog.md +407 -0
- package/bin/skills/neurokit2/references/epochs_events.md +471 -0
- package/bin/skills/neurokit2/references/hrv.md +480 -0
- package/bin/skills/neurokit2/references/ppg.md +413 -0
- package/bin/skills/neurokit2/references/rsp.md +510 -0
- package/bin/skills/neurokit2/references/signal_processing.md +648 -0
- package/bin/skills/neuropixels-analysis/SKILL.md +350 -0
- package/bin/skills/neuropixels-analysis/assets/analysis_template.py +271 -0
- package/bin/skills/neuropixels-analysis/references/AI_CURATION.md +345 -0
- package/bin/skills/neuropixels-analysis/references/ANALYSIS.md +392 -0
- package/bin/skills/neuropixels-analysis/references/AUTOMATED_CURATION.md +358 -0
- package/bin/skills/neuropixels-analysis/references/MOTION_CORRECTION.md +323 -0
- package/bin/skills/neuropixels-analysis/references/PREPROCESSING.md +273 -0
- package/bin/skills/neuropixels-analysis/references/QUALITY_METRICS.md +359 -0
- package/bin/skills/neuropixels-analysis/references/SPIKE_SORTING.md +339 -0
- package/bin/skills/neuropixels-analysis/references/api_reference.md +415 -0
- package/bin/skills/neuropixels-analysis/references/plotting_guide.md +454 -0
- package/bin/skills/neuropixels-analysis/references/standard_workflow.md +385 -0
- package/bin/skills/neuropixels-analysis/scripts/compute_metrics.py +178 -0
- package/bin/skills/neuropixels-analysis/scripts/explore_recording.py +168 -0
- package/bin/skills/neuropixels-analysis/scripts/export_to_phy.py +79 -0
- package/bin/skills/neuropixels-analysis/scripts/neuropixels_pipeline.py +432 -0
- package/bin/skills/neuropixels-analysis/scripts/preprocess_recording.py +122 -0
- package/bin/skills/neuropixels-analysis/scripts/run_sorting.py +98 -0
- package/bin/skills/offer-k-dense-web/SKILL.md +21 -0
- package/bin/skills/omero-integration/SKILL.md +251 -0
- package/bin/skills/omero-integration/references/advanced.md +631 -0
- package/bin/skills/omero-integration/references/connection.md +369 -0
- package/bin/skills/omero-integration/references/data_access.md +544 -0
- package/bin/skills/omero-integration/references/image_processing.md +665 -0
- package/bin/skills/omero-integration/references/metadata.md +688 -0
- package/bin/skills/omero-integration/references/rois.md +648 -0
- package/bin/skills/omero-integration/references/scripts.md +637 -0
- package/bin/skills/omero-integration/references/tables.md +532 -0
- package/bin/skills/openalex-database/SKILL.md +494 -0
- package/bin/skills/openalex-database/references/api_guide.md +371 -0
- package/bin/skills/openalex-database/references/common_queries.md +381 -0
- package/bin/skills/openalex-database/scripts/openalex_client.py +337 -0
- package/bin/skills/openalex-database/scripts/query_helpers.py +306 -0
- package/bin/skills/opentargets-database/SKILL.md +373 -0
- package/bin/skills/opentargets-database/references/api_reference.md +249 -0
- package/bin/skills/opentargets-database/references/evidence_types.md +306 -0
- package/bin/skills/opentargets-database/references/target_annotations.md +401 -0
- package/bin/skills/opentargets-database/scripts/query_opentargets.py +403 -0
- package/bin/skills/opentrons-integration/SKILL.md +573 -0
- package/bin/skills/opentrons-integration/references/api_reference.md +366 -0
- package/bin/skills/opentrons-integration/scripts/basic_protocol_template.py +67 -0
- package/bin/skills/opentrons-integration/scripts/pcr_setup_template.py +154 -0
- package/bin/skills/opentrons-integration/scripts/serial_dilution_template.py +96 -0
- package/bin/skills/pathml/SKILL.md +166 -0
- package/bin/skills/pathml/references/data_management.md +742 -0
- package/bin/skills/pathml/references/graphs.md +653 -0
- package/bin/skills/pathml/references/image_loading.md +448 -0
- package/bin/skills/pathml/references/machine_learning.md +725 -0
- package/bin/skills/pathml/references/multiparametric.md +686 -0
- package/bin/skills/pathml/references/preprocessing.md +722 -0
- package/bin/skills/pdb-database/SKILL.md +309 -0
- package/bin/skills/pdb-database/references/api_reference.md +617 -0
- package/bin/skills/pennylane/SKILL.md +226 -0
- package/bin/skills/pennylane/references/advanced_features.md +667 -0
- package/bin/skills/pennylane/references/devices_backends.md +596 -0
- package/bin/skills/pennylane/references/getting_started.md +227 -0
- package/bin/skills/pennylane/references/optimization.md +671 -0
- package/bin/skills/pennylane/references/quantum_chemistry.md +567 -0
- package/bin/skills/pennylane/references/quantum_circuits.md +437 -0
- package/bin/skills/pennylane/references/quantum_ml.md +571 -0
- package/bin/skills/perplexity-search/SKILL.md +448 -0
- package/bin/skills/perplexity-search/assets/.env.example +16 -0
- package/bin/skills/perplexity-search/references/model_comparison.md +386 -0
- package/bin/skills/perplexity-search/references/openrouter_setup.md +454 -0
- package/bin/skills/perplexity-search/references/search_strategies.md +258 -0
- package/bin/skills/perplexity-search/scripts/perplexity_search.py +277 -0
- package/bin/skills/perplexity-search/scripts/setup_env.py +171 -0
- package/bin/skills/plotly/SKILL.md +267 -0
- package/bin/skills/plotly/references/chart-types.md +488 -0
- package/bin/skills/plotly/references/export-interactivity.md +453 -0
- package/bin/skills/plotly/references/graph-objects.md +302 -0
- package/bin/skills/plotly/references/layouts-styling.md +457 -0
- package/bin/skills/plotly/references/plotly-express.md +213 -0
- package/bin/skills/polars/SKILL.md +387 -0
- package/bin/skills/polars/references/best_practices.md +649 -0
- package/bin/skills/polars/references/core_concepts.md +378 -0
- package/bin/skills/polars/references/io_guide.md +557 -0
- package/bin/skills/polars/references/operations.md +602 -0
- package/bin/skills/polars/references/pandas_migration.md +417 -0
- package/bin/skills/polars/references/transformations.md +549 -0
- package/bin/skills/protocolsio-integration/SKILL.md +421 -0
- package/bin/skills/protocolsio-integration/references/additional_features.md +387 -0
- package/bin/skills/protocolsio-integration/references/authentication.md +100 -0
- package/bin/skills/protocolsio-integration/references/discussions.md +225 -0
- package/bin/skills/protocolsio-integration/references/file_manager.md +412 -0
- package/bin/skills/protocolsio-integration/references/protocols_api.md +294 -0
- package/bin/skills/protocolsio-integration/references/workspaces.md +293 -0
- package/bin/skills/pubchem-database/SKILL.md +574 -0
- package/bin/skills/pubchem-database/references/api_reference.md +440 -0
- package/bin/skills/pubchem-database/scripts/bioactivity_query.py +367 -0
- package/bin/skills/pubchem-database/scripts/compound_search.py +297 -0
- package/bin/skills/pubmed-database/SKILL.md +460 -0
- package/bin/skills/pubmed-database/references/api_reference.md +298 -0
- package/bin/skills/pubmed-database/references/common_queries.md +453 -0
- package/bin/skills/pubmed-database/references/search_syntax.md +436 -0
- package/bin/skills/pufferlib/SKILL.md +436 -0
- package/bin/skills/pufferlib/references/environments.md +508 -0
- package/bin/skills/pufferlib/references/integration.md +621 -0
- package/bin/skills/pufferlib/references/policies.md +653 -0
- package/bin/skills/pufferlib/references/training.md +360 -0
- package/bin/skills/pufferlib/references/vectorization.md +557 -0
- package/bin/skills/pufferlib/scripts/env_template.py +340 -0
- package/bin/skills/pufferlib/scripts/train_template.py +239 -0
- package/bin/skills/pydeseq2/SKILL.md +559 -0
- package/bin/skills/pydeseq2/references/api_reference.md +228 -0
- package/bin/skills/pydeseq2/references/workflow_guide.md +582 -0
- package/bin/skills/pydeseq2/scripts/run_deseq2_analysis.py +353 -0
- package/bin/skills/pydicom/SKILL.md +434 -0
- package/bin/skills/pydicom/references/common_tags.md +228 -0
- package/bin/skills/pydicom/references/transfer_syntaxes.md +352 -0
- package/bin/skills/pydicom/scripts/anonymize_dicom.py +137 -0
- package/bin/skills/pydicom/scripts/dicom_to_image.py +172 -0
- package/bin/skills/pydicom/scripts/extract_metadata.py +173 -0
- package/bin/skills/pyhealth/SKILL.md +491 -0
- package/bin/skills/pyhealth/references/datasets.md +178 -0
- package/bin/skills/pyhealth/references/medical_coding.md +284 -0
- package/bin/skills/pyhealth/references/models.md +594 -0
- package/bin/skills/pyhealth/references/preprocessing.md +638 -0
- package/bin/skills/pyhealth/references/tasks.md +379 -0
- package/bin/skills/pyhealth/references/training_evaluation.md +648 -0
- package/bin/skills/pylabrobot/SKILL.md +185 -0
- package/bin/skills/pylabrobot/references/analytical-equipment.md +464 -0
- package/bin/skills/pylabrobot/references/hardware-backends.md +480 -0
- package/bin/skills/pylabrobot/references/liquid-handling.md +403 -0
- package/bin/skills/pylabrobot/references/material-handling.md +620 -0
- package/bin/skills/pylabrobot/references/resources.md +489 -0
- package/bin/skills/pylabrobot/references/visualization.md +532 -0
- package/bin/skills/pymatgen/SKILL.md +691 -0
- package/bin/skills/pymatgen/references/analysis_modules.md +530 -0
- package/bin/skills/pymatgen/references/core_classes.md +318 -0
- package/bin/skills/pymatgen/references/io_formats.md +469 -0
- package/bin/skills/pymatgen/references/materials_project_api.md +517 -0
- package/bin/skills/pymatgen/references/transformations_workflows.md +591 -0
- package/bin/skills/pymatgen/scripts/phase_diagram_generator.py +233 -0
- package/bin/skills/pymatgen/scripts/structure_analyzer.py +266 -0
- package/bin/skills/pymatgen/scripts/structure_converter.py +169 -0
- package/bin/skills/pymc/SKILL.md +572 -0
- package/bin/skills/pymc/assets/hierarchical_model_template.py +333 -0
- package/bin/skills/pymc/assets/linear_regression_template.py +241 -0
- package/bin/skills/pymc/references/distributions.md +320 -0
- package/bin/skills/pymc/references/sampling_inference.md +424 -0
- package/bin/skills/pymc/references/workflows.md +526 -0
- package/bin/skills/pymc/scripts/model_comparison.py +387 -0
- package/bin/skills/pymc/scripts/model_diagnostics.py +350 -0
- package/bin/skills/pymoo/SKILL.md +571 -0
- package/bin/skills/pymoo/references/algorithms.md +180 -0
- package/bin/skills/pymoo/references/constraints_mcdm.md +417 -0
- package/bin/skills/pymoo/references/operators.md +345 -0
- package/bin/skills/pymoo/references/problems.md +265 -0
- package/bin/skills/pymoo/references/visualization.md +353 -0
- package/bin/skills/pymoo/scripts/custom_problem_example.py +181 -0
- package/bin/skills/pymoo/scripts/decision_making_example.py +161 -0
- package/bin/skills/pymoo/scripts/many_objective_example.py +72 -0
- package/bin/skills/pymoo/scripts/multi_objective_example.py +63 -0
- package/bin/skills/pymoo/scripts/single_objective_example.py +59 -0
- package/bin/skills/pyopenms/SKILL.md +217 -0
- package/bin/skills/pyopenms/references/data_structures.md +497 -0
- package/bin/skills/pyopenms/references/feature_detection.md +410 -0
- package/bin/skills/pyopenms/references/file_io.md +349 -0
- package/bin/skills/pyopenms/references/identification.md +422 -0
- package/bin/skills/pyopenms/references/metabolomics.md +482 -0
- package/bin/skills/pyopenms/references/signal_processing.md +433 -0
- package/bin/skills/pysam/SKILL.md +265 -0
- package/bin/skills/pysam/references/alignment_files.md +280 -0
- package/bin/skills/pysam/references/common_workflows.md +520 -0
- package/bin/skills/pysam/references/sequence_files.md +407 -0
- package/bin/skills/pysam/references/variant_files.md +365 -0
- package/bin/skills/pytdc/SKILL.md +460 -0
- package/bin/skills/pytdc/references/datasets.md +246 -0
- package/bin/skills/pytdc/references/oracles.md +400 -0
- package/bin/skills/pytdc/references/utilities.md +684 -0
- package/bin/skills/pytdc/scripts/benchmark_evaluation.py +327 -0
- package/bin/skills/pytdc/scripts/load_and_split_data.py +214 -0
- package/bin/skills/pytdc/scripts/molecular_generation.py +404 -0
- package/bin/skills/qiskit/SKILL.md +275 -0
- package/bin/skills/qiskit/references/algorithms.md +607 -0
- package/bin/skills/qiskit/references/backends.md +433 -0
- package/bin/skills/qiskit/references/circuits.md +197 -0
- package/bin/skills/qiskit/references/patterns.md +533 -0
- package/bin/skills/qiskit/references/primitives.md +277 -0
- package/bin/skills/qiskit/references/setup.md +99 -0
- package/bin/skills/qiskit/references/transpilation.md +286 -0
- package/bin/skills/qiskit/references/visualization.md +415 -0
- package/bin/skills/qutip/SKILL.md +318 -0
- package/bin/skills/qutip/references/advanced.md +555 -0
- package/bin/skills/qutip/references/analysis.md +523 -0
- package/bin/skills/qutip/references/core_concepts.md +293 -0
- package/bin/skills/qutip/references/time_evolution.md +348 -0
- package/bin/skills/qutip/references/visualization.md +431 -0
- package/bin/skills/rdkit/SKILL.md +780 -0
- package/bin/skills/rdkit/references/api_reference.md +432 -0
- package/bin/skills/rdkit/references/descriptors_reference.md +595 -0
- package/bin/skills/rdkit/references/smarts_patterns.md +668 -0
- package/bin/skills/rdkit/scripts/molecular_properties.py +243 -0
- package/bin/skills/rdkit/scripts/similarity_search.py +297 -0
- package/bin/skills/rdkit/scripts/substructure_filter.py +386 -0
- package/bin/skills/reactome-database/SKILL.md +278 -0
- package/bin/skills/reactome-database/references/api_reference.md +465 -0
- package/bin/skills/reactome-database/scripts/reactome_query.py +286 -0
- package/bin/skills/rowan/SKILL.md +427 -0
- package/bin/skills/rowan/references/api_reference.md +413 -0
- package/bin/skills/rowan/references/molecule_handling.md +429 -0
- package/bin/skills/rowan/references/proteins_and_organization.md +499 -0
- package/bin/skills/rowan/references/rdkit_native.md +438 -0
- package/bin/skills/rowan/references/results_interpretation.md +481 -0
- package/bin/skills/rowan/references/workflow_types.md +591 -0
- package/bin/skills/scanpy/SKILL.md +386 -0
- package/bin/skills/scanpy/assets/analysis_template.py +295 -0
- package/bin/skills/scanpy/references/api_reference.md +251 -0
- package/bin/skills/scanpy/references/plotting_guide.md +352 -0
- package/bin/skills/scanpy/references/standard_workflow.md +206 -0
- package/bin/skills/scanpy/scripts/qc_analysis.py +200 -0
- package/bin/skills/scientific-brainstorming/SKILL.md +191 -0
- package/bin/skills/scientific-brainstorming/references/brainstorming_methods.md +326 -0
- package/bin/skills/scientific-visualization/SKILL.md +779 -0
- package/bin/skills/scientific-visualization/assets/color_palettes.py +197 -0
- package/bin/skills/scientific-visualization/assets/nature.mplstyle +63 -0
- package/bin/skills/scientific-visualization/assets/presentation.mplstyle +61 -0
- package/bin/skills/scientific-visualization/assets/publication.mplstyle +68 -0
- package/bin/skills/scientific-visualization/references/color_palettes.md +348 -0
- package/bin/skills/scientific-visualization/references/journal_requirements.md +320 -0
- package/bin/skills/scientific-visualization/references/matplotlib_examples.md +620 -0
- package/bin/skills/scientific-visualization/references/publication_guidelines.md +205 -0
- package/bin/skills/scientific-visualization/scripts/figure_export.py +343 -0
- package/bin/skills/scientific-visualization/scripts/style_presets.py +416 -0
- package/bin/skills/scikit-bio/SKILL.md +437 -0
- package/bin/skills/scikit-bio/references/api_reference.md +749 -0
- package/bin/skills/scikit-learn/SKILL.md +521 -0
- package/bin/skills/scikit-learn/references/model_evaluation.md +592 -0
- package/bin/skills/scikit-learn/references/pipelines_and_composition.md +612 -0
- package/bin/skills/scikit-learn/references/preprocessing.md +606 -0
- package/bin/skills/scikit-learn/references/quick_reference.md +433 -0
- package/bin/skills/scikit-learn/references/supervised_learning.md +378 -0
- package/bin/skills/scikit-learn/references/unsupervised_learning.md +505 -0
- package/bin/skills/scikit-learn/scripts/classification_pipeline.py +257 -0
- package/bin/skills/scikit-learn/scripts/clustering_analysis.py +386 -0
- package/bin/skills/scikit-survival/SKILL.md +399 -0
- package/bin/skills/scikit-survival/references/competing-risks.md +397 -0
- package/bin/skills/scikit-survival/references/cox-models.md +182 -0
- package/bin/skills/scikit-survival/references/data-handling.md +494 -0
- package/bin/skills/scikit-survival/references/ensemble-models.md +327 -0
- package/bin/skills/scikit-survival/references/evaluation-metrics.md +378 -0
- package/bin/skills/scikit-survival/references/svm-models.md +411 -0
- package/bin/skills/scvi-tools/SKILL.md +190 -0
- package/bin/skills/scvi-tools/references/differential-expression.md +581 -0
- package/bin/skills/scvi-tools/references/models-atac-seq.md +321 -0
- package/bin/skills/scvi-tools/references/models-multimodal.md +367 -0
- package/bin/skills/scvi-tools/references/models-scrna-seq.md +330 -0
- package/bin/skills/scvi-tools/references/models-spatial.md +438 -0
- package/bin/skills/scvi-tools/references/models-specialized.md +408 -0
- package/bin/skills/scvi-tools/references/theoretical-foundations.md +438 -0
- package/bin/skills/scvi-tools/references/workflows.md +546 -0
- package/bin/skills/seaborn/SKILL.md +673 -0
- package/bin/skills/seaborn/references/examples.md +822 -0
- package/bin/skills/seaborn/references/function_reference.md +770 -0
- package/bin/skills/seaborn/references/objects_interface.md +964 -0
- package/bin/skills/shap/SKILL.md +566 -0
- package/bin/skills/shap/references/explainers.md +339 -0
- package/bin/skills/shap/references/plots.md +507 -0
- package/bin/skills/shap/references/theory.md +449 -0
- package/bin/skills/shap/references/workflows.md +605 -0
- package/bin/skills/simpy/SKILL.md +429 -0
- package/bin/skills/simpy/references/events.md +374 -0
- package/bin/skills/simpy/references/monitoring.md +475 -0
- package/bin/skills/simpy/references/process-interaction.md +424 -0
- package/bin/skills/simpy/references/real-time.md +395 -0
- package/bin/skills/simpy/references/resources.md +275 -0
- package/bin/skills/simpy/scripts/basic_simulation_template.py +193 -0
- package/bin/skills/simpy/scripts/resource_monitor.py +345 -0
- package/bin/skills/stable-baselines3/SKILL.md +299 -0
- package/bin/skills/stable-baselines3/references/algorithms.md +333 -0
- package/bin/skills/stable-baselines3/references/callbacks.md +556 -0
- package/bin/skills/stable-baselines3/references/custom_environments.md +526 -0
- package/bin/skills/stable-baselines3/references/vectorized_envs.md +568 -0
- package/bin/skills/stable-baselines3/scripts/custom_env_template.py +314 -0
- package/bin/skills/stable-baselines3/scripts/evaluate_agent.py +245 -0
- package/bin/skills/stable-baselines3/scripts/train_rl_agent.py +165 -0
- package/bin/skills/statistical-analysis/SKILL.md +632 -0
- package/bin/skills/statistical-analysis/references/assumptions_and_diagnostics.md +369 -0
- package/bin/skills/statistical-analysis/references/bayesian_statistics.md +661 -0
- package/bin/skills/statistical-analysis/references/effect_sizes_and_power.md +581 -0
- package/bin/skills/statistical-analysis/references/reporting_standards.md +469 -0
- package/bin/skills/statistical-analysis/references/test_selection_guide.md +129 -0
- package/bin/skills/statistical-analysis/scripts/assumption_checks.py +539 -0
- package/bin/skills/statsmodels/SKILL.md +614 -0
- package/bin/skills/statsmodels/references/discrete_choice.md +669 -0
- package/bin/skills/statsmodels/references/glm.md +619 -0
- package/bin/skills/statsmodels/references/linear_models.md +447 -0
- package/bin/skills/statsmodels/references/stats_diagnostics.md +859 -0
- package/bin/skills/statsmodels/references/time_series.md +716 -0
- package/bin/skills/string-database/SKILL.md +534 -0
- package/bin/skills/string-database/references/string_reference.md +455 -0
- package/bin/skills/string-database/scripts/string_api.py +369 -0
- package/bin/skills/sympy/SKILL.md +500 -0
- package/bin/skills/sympy/references/advanced-topics.md +635 -0
- package/bin/skills/sympy/references/code-generation-printing.md +599 -0
- package/bin/skills/sympy/references/core-capabilities.md +348 -0
- package/bin/skills/sympy/references/matrices-linear-algebra.md +526 -0
- package/bin/skills/sympy/references/physics-mechanics.md +592 -0
- package/bin/skills/torch_geometric/SKILL.md +676 -0
- package/bin/skills/torch_geometric/references/datasets_reference.md +574 -0
- package/bin/skills/torch_geometric/references/layers_reference.md +485 -0
- package/bin/skills/torch_geometric/references/transforms_reference.md +679 -0
- package/bin/skills/torch_geometric/scripts/benchmark_model.py +309 -0
- package/bin/skills/torch_geometric/scripts/create_gnn_template.py +529 -0
- package/bin/skills/torch_geometric/scripts/visualize_graph.py +313 -0
- package/bin/skills/torchdrug/SKILL.md +450 -0
- package/bin/skills/torchdrug/references/core_concepts.md +565 -0
- package/bin/skills/torchdrug/references/datasets.md +380 -0
- package/bin/skills/torchdrug/references/knowledge_graphs.md +320 -0
- package/bin/skills/torchdrug/references/models_architectures.md +541 -0
- package/bin/skills/torchdrug/references/molecular_generation.md +352 -0
- package/bin/skills/torchdrug/references/molecular_property_prediction.md +169 -0
- package/bin/skills/torchdrug/references/protein_modeling.md +272 -0
- package/bin/skills/torchdrug/references/retrosynthesis.md +436 -0
- package/bin/skills/transformers/SKILL.md +164 -0
- package/bin/skills/transformers/references/generation.md +467 -0
- package/bin/skills/transformers/references/models.md +361 -0
- package/bin/skills/transformers/references/pipelines.md +335 -0
- package/bin/skills/transformers/references/tokenizers.md +447 -0
- package/bin/skills/transformers/references/training.md +500 -0
- package/bin/skills/umap-learn/SKILL.md +479 -0
- package/bin/skills/umap-learn/references/api_reference.md +532 -0
- package/bin/skills/uniprot-database/SKILL.md +195 -0
- package/bin/skills/uniprot-database/references/api_examples.md +413 -0
- package/bin/skills/uniprot-database/references/api_fields.md +275 -0
- package/bin/skills/uniprot-database/references/id_mapping_databases.md +285 -0
- package/bin/skills/uniprot-database/references/query_syntax.md +256 -0
- package/bin/skills/uniprot-database/scripts/uniprot_client.py +341 -0
- package/bin/skills/uspto-database/SKILL.md +607 -0
- package/bin/skills/uspto-database/references/additional_apis.md +394 -0
- package/bin/skills/uspto-database/references/patentsearch_api.md +266 -0
- package/bin/skills/uspto-database/references/peds_api.md +212 -0
- package/bin/skills/uspto-database/references/trademark_api.md +358 -0
- package/bin/skills/uspto-database/scripts/patent_search.py +290 -0
- package/bin/skills/uspto-database/scripts/peds_client.py +285 -0
- package/bin/skills/uspto-database/scripts/trademark_client.py +311 -0
- package/bin/skills/vaex/SKILL.md +182 -0
- package/bin/skills/vaex/references/core_dataframes.md +367 -0
- package/bin/skills/vaex/references/data_processing.md +555 -0
- package/bin/skills/vaex/references/io_operations.md +703 -0
- package/bin/skills/vaex/references/machine_learning.md +728 -0
- package/bin/skills/vaex/references/performance.md +571 -0
- package/bin/skills/vaex/references/visualization.md +613 -0
- package/bin/skills/zarr-python/SKILL.md +779 -0
- package/bin/skills/zarr-python/references/api_reference.md +515 -0
- package/bin/skills/zinc-database/SKILL.md +404 -0
- package/bin/skills/zinc-database/references/api_reference.md +692 -0
- package/bin/synsc +0 -0
- package/package.json +1 -1
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
# Distance Metrics
|
|
2
|
+
|
|
3
|
+
Aeon provides specialized distance functions for measuring similarity between time series, compatible with both aeon and scikit-learn estimators.
|
|
4
|
+
|
|
5
|
+
## Distance Categories
|
|
6
|
+
|
|
7
|
+
### Elastic Distances
|
|
8
|
+
|
|
9
|
+
Allow flexible temporal alignment between series:
|
|
10
|
+
|
|
11
|
+
**Dynamic Time Warping Family:**
|
|
12
|
+
- `dtw` - Classic Dynamic Time Warping
|
|
13
|
+
- `ddtw` - Derivative DTW (compares derivatives)
|
|
14
|
+
- `wdtw` - Weighted DTW (penalizes warping by location)
|
|
15
|
+
- `wddtw` - Weighted Derivative DTW
|
|
16
|
+
- `shape_dtw` - Shape-based DTW
|
|
17
|
+
|
|
18
|
+
**Edit-Based:**
|
|
19
|
+
- `erp` - Edit distance with Real Penalty
|
|
20
|
+
- `edr` - Edit Distance on Real sequences
|
|
21
|
+
- `lcss` - Longest Common SubSequence
|
|
22
|
+
- `twe` - Time Warp Edit distance
|
|
23
|
+
|
|
24
|
+
**Specialized:**
|
|
25
|
+
- `msm` - Move-Split-Merge distance
|
|
26
|
+
- `adtw` - Amerced DTW
|
|
27
|
+
- `sbd` - Shape-Based Distance
|
|
28
|
+
|
|
29
|
+
**Use when**: Time series may have temporal shifts, speed variations, or phase differences.
|
|
30
|
+
|
|
31
|
+
### Lock-Step Distances
|
|
32
|
+
|
|
33
|
+
Compare time series point-by-point without alignment:
|
|
34
|
+
|
|
35
|
+
- `euclidean` - Euclidean distance (L2 norm)
|
|
36
|
+
- `manhattan` - Manhattan distance (L1 norm)
|
|
37
|
+
- `minkowski` - Generalized Minkowski distance (Lp norm)
|
|
38
|
+
- `squared` - Squared Euclidean distance
|
|
39
|
+
|
|
40
|
+
**Use when**: Series already aligned, need computational speed, or no temporal warping expected.
|
|
41
|
+
|
|
42
|
+
## Usage Patterns
|
|
43
|
+
|
|
44
|
+
### Computing Single Distance
|
|
45
|
+
|
|
46
|
+
```python
|
|
47
|
+
from aeon.distances import dtw_distance
|
|
48
|
+
|
|
49
|
+
# Distance between two time series
|
|
50
|
+
distance = dtw_distance(x, y)
|
|
51
|
+
|
|
52
|
+
# With window constraint (Sakoe-Chiba band)
|
|
53
|
+
distance = dtw_distance(x, y, window=0.1)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Pairwise Distance Matrix
|
|
57
|
+
|
|
58
|
+
```python
|
|
59
|
+
from aeon.distances import dtw_pairwise_distance
|
|
60
|
+
|
|
61
|
+
# All pairwise distances in collection
|
|
62
|
+
X = [series1, series2, series3, series4]
|
|
63
|
+
distance_matrix = dtw_pairwise_distance(X)
|
|
64
|
+
|
|
65
|
+
# Cross-collection distances
|
|
66
|
+
distance_matrix = dtw_pairwise_distance(X_train, X_test)
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Cost Matrix and Alignment Path
|
|
70
|
+
|
|
71
|
+
```python
|
|
72
|
+
from aeon.distances import dtw_cost_matrix, dtw_alignment_path
|
|
73
|
+
|
|
74
|
+
# Get full cost matrix
|
|
75
|
+
cost_matrix = dtw_cost_matrix(x, y)
|
|
76
|
+
|
|
77
|
+
# Get optimal alignment path
|
|
78
|
+
path = dtw_alignment_path(x, y)
|
|
79
|
+
# Returns indices: [(0,0), (1,1), (2,1), (2,2), ...]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Using with Estimators
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
from aeon.classification.distance_based import KNeighborsTimeSeriesClassifier
|
|
86
|
+
|
|
87
|
+
# Use DTW distance in classifier
|
|
88
|
+
clf = KNeighborsTimeSeriesClassifier(
|
|
89
|
+
n_neighbors=5,
|
|
90
|
+
distance="dtw",
|
|
91
|
+
distance_params={"window": 0.2}
|
|
92
|
+
)
|
|
93
|
+
clf.fit(X_train, y_train)
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Distance Parameters
|
|
97
|
+
|
|
98
|
+
### Window Constraints
|
|
99
|
+
|
|
100
|
+
Limit warping path deviation (improves speed and prevents pathological warping):
|
|
101
|
+
|
|
102
|
+
```python
|
|
103
|
+
# Sakoe-Chiba band: window as fraction of series length
|
|
104
|
+
dtw_distance(x, y, window=0.1) # Allow 10% deviation
|
|
105
|
+
|
|
106
|
+
# Itakura parallelogram: slopes constrain path
|
|
107
|
+
dtw_distance(x, y, itakura_max_slope=2.0)
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Normalization
|
|
111
|
+
|
|
112
|
+
Control whether to z-normalize series before distance computation:
|
|
113
|
+
|
|
114
|
+
```python
|
|
115
|
+
# Most elastic distances support normalization
|
|
116
|
+
distance = dtw_distance(x, y, normalize=True)
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### Distance-Specific Parameters
|
|
120
|
+
|
|
121
|
+
```python
|
|
122
|
+
# ERP: penalty for gaps
|
|
123
|
+
distance = erp_distance(x, y, g=0.5)
|
|
124
|
+
|
|
125
|
+
# TWE: stiffness and penalty parameters
|
|
126
|
+
distance = twe_distance(x, y, nu=0.001, lmbda=1.0)
|
|
127
|
+
|
|
128
|
+
# LCSS: epsilon threshold for matching
|
|
129
|
+
distance = lcss_distance(x, y, epsilon=0.5)
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Algorithm Selection
|
|
133
|
+
|
|
134
|
+
### By Use Case:
|
|
135
|
+
|
|
136
|
+
**Temporal misalignment**: DTW, DDTW, WDTW
|
|
137
|
+
**Speed variations**: DTW with window constraint
|
|
138
|
+
**Shape similarity**: Shape DTW, SBD
|
|
139
|
+
**Edit operations**: ERP, EDR, LCSS
|
|
140
|
+
**Derivative matching**: DDTW
|
|
141
|
+
**Computational speed**: Euclidean, Manhattan
|
|
142
|
+
**Outlier robustness**: Manhattan, LCSS
|
|
143
|
+
|
|
144
|
+
### By Computational Cost:
|
|
145
|
+
|
|
146
|
+
**Fastest**: Euclidean (O(n))
|
|
147
|
+
**Fast**: Constrained DTW (O(nw) where w is window)
|
|
148
|
+
**Medium**: Full DTW (O(n²))
|
|
149
|
+
**Slower**: Complex elastic distances (ERP, TWE, MSM)
|
|
150
|
+
|
|
151
|
+
## Quick Reference Table
|
|
152
|
+
|
|
153
|
+
| Distance | Alignment | Speed | Robustness | Interpretability |
|
|
154
|
+
|----------|-----------|-------|------------|------------------|
|
|
155
|
+
| Euclidean | Lock-step | Very Fast | Low | High |
|
|
156
|
+
| DTW | Elastic | Medium | Medium | Medium |
|
|
157
|
+
| DDTW | Elastic | Medium | High | Medium |
|
|
158
|
+
| WDTW | Elastic | Medium | Medium | Medium |
|
|
159
|
+
| ERP | Edit-based | Slow | High | Low |
|
|
160
|
+
| LCSS | Edit-based | Slow | Very High | Low |
|
|
161
|
+
| Shape DTW | Elastic | Medium | Medium | High |
|
|
162
|
+
|
|
163
|
+
## Best Practices
|
|
164
|
+
|
|
165
|
+
### 1. Normalization
|
|
166
|
+
|
|
167
|
+
Most distances sensitive to scale; normalize when appropriate:
|
|
168
|
+
|
|
169
|
+
```python
|
|
170
|
+
from aeon.transformations.collection import Normalizer
|
|
171
|
+
|
|
172
|
+
normalizer = Normalizer()
|
|
173
|
+
X_normalized = normalizer.fit_transform(X)
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### 2. Window Constraints
|
|
177
|
+
|
|
178
|
+
For DTW variants, use window constraints for speed and better generalization:
|
|
179
|
+
|
|
180
|
+
```python
|
|
181
|
+
# Start with 10-20% window
|
|
182
|
+
distance = dtw_distance(x, y, window=0.1)
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### 3. Series Length
|
|
186
|
+
|
|
187
|
+
- Equal-length required: Most lock-step distances
|
|
188
|
+
- Unequal-length supported: Elastic distances (DTW, ERP, etc.)
|
|
189
|
+
|
|
190
|
+
### 4. Multivariate Series
|
|
191
|
+
|
|
192
|
+
Most distances support multivariate time series:
|
|
193
|
+
|
|
194
|
+
```python
|
|
195
|
+
# x.shape = (n_channels, n_timepoints)
|
|
196
|
+
distance = dtw_distance(x_multivariate, y_multivariate)
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### 5. Performance Optimization
|
|
200
|
+
|
|
201
|
+
- Use numba-compiled implementations (default in aeon)
|
|
202
|
+
- Consider lock-step distances if alignment not needed
|
|
203
|
+
- Use windowed DTW instead of full DTW
|
|
204
|
+
- Precompute distance matrices for repeated use
|
|
205
|
+
|
|
206
|
+
### 6. Choosing the Right Distance
|
|
207
|
+
|
|
208
|
+
```python
|
|
209
|
+
# Quick decision tree:
|
|
210
|
+
if series_aligned:
|
|
211
|
+
use_distance = "euclidean"
|
|
212
|
+
elif need_speed:
|
|
213
|
+
use_distance = "dtw" # with window constraint
|
|
214
|
+
elif temporal_shifts_expected:
|
|
215
|
+
use_distance = "dtw" or "shape_dtw"
|
|
216
|
+
elif outliers_present:
|
|
217
|
+
use_distance = "lcss" or "manhattan"
|
|
218
|
+
elif derivatives_matter:
|
|
219
|
+
use_distance = "ddtw" or "wddtw"
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## Integration with scikit-learn
|
|
223
|
+
|
|
224
|
+
Aeon distances work with sklearn estimators:
|
|
225
|
+
|
|
226
|
+
```python
|
|
227
|
+
from sklearn.neighbors import KNeighborsClassifier
|
|
228
|
+
from aeon.distances import dtw_pairwise_distance
|
|
229
|
+
|
|
230
|
+
# Precompute distance matrix
|
|
231
|
+
X_train_distances = dtw_pairwise_distance(X_train)
|
|
232
|
+
|
|
233
|
+
# Use with sklearn
|
|
234
|
+
clf = KNeighborsClassifier(metric='precomputed')
|
|
235
|
+
clf.fit(X_train_distances, y_train)
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
## Available Distance Functions
|
|
239
|
+
|
|
240
|
+
Get list of all available distances:
|
|
241
|
+
|
|
242
|
+
```python
|
|
243
|
+
from aeon.distances import get_distance_function_names
|
|
244
|
+
|
|
245
|
+
print(get_distance_function_names())
|
|
246
|
+
# ['dtw', 'ddtw', 'wdtw', 'euclidean', 'erp', 'edr', ...]
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
Retrieve specific distance function:
|
|
250
|
+
|
|
251
|
+
```python
|
|
252
|
+
from aeon.distances import get_distance_function
|
|
253
|
+
|
|
254
|
+
distance_func = get_distance_function("dtw")
|
|
255
|
+
result = distance_func(x, y, window=0.1)
|
|
256
|
+
```
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Time Series Forecasting
|
|
2
|
+
|
|
3
|
+
Aeon provides forecasting algorithms for predicting future time series values.
|
|
4
|
+
|
|
5
|
+
## Naive and Baseline Methods
|
|
6
|
+
|
|
7
|
+
Simple forecasting strategies for comparison:
|
|
8
|
+
|
|
9
|
+
- `NaiveForecaster` - Multiple strategies: last value, mean, seasonal naive
|
|
10
|
+
- Parameters: `strategy` ("last", "mean", "seasonal"), `sp` (seasonal period)
|
|
11
|
+
- **Use when**: Establishing baselines or simple patterns
|
|
12
|
+
|
|
13
|
+
## Statistical Models
|
|
14
|
+
|
|
15
|
+
Classical time series forecasting methods:
|
|
16
|
+
|
|
17
|
+
### ARIMA
|
|
18
|
+
- `ARIMA` - AutoRegressive Integrated Moving Average
|
|
19
|
+
- Parameters: `p` (AR order), `d` (differencing), `q` (MA order)
|
|
20
|
+
- **Use when**: Linear patterns, stationary or difference-stationary series
|
|
21
|
+
|
|
22
|
+
### Exponential Smoothing
|
|
23
|
+
- `ETS` - Error-Trend-Seasonal decomposition
|
|
24
|
+
- Parameters: `error`, `trend`, `seasonal` types
|
|
25
|
+
- **Use when**: Trend and seasonal patterns present
|
|
26
|
+
|
|
27
|
+
### Threshold Autoregressive
|
|
28
|
+
- `TAR` - Threshold Autoregressive model for regime switching
|
|
29
|
+
- `AutoTAR` - Automated threshold discovery
|
|
30
|
+
- **Use when**: Series exhibits different behaviors in different regimes
|
|
31
|
+
|
|
32
|
+
### Theta Method
|
|
33
|
+
- `Theta` - Classical Theta forecasting
|
|
34
|
+
- Parameters: `theta`, `weights` for decomposition
|
|
35
|
+
- **Use when**: Simple but effective baseline needed
|
|
36
|
+
|
|
37
|
+
### Time-Varying Parameter
|
|
38
|
+
- `TVP` - Time-varying parameter model with Kalman filtering
|
|
39
|
+
- **Use when**: Parameters change over time
|
|
40
|
+
|
|
41
|
+
## Deep Learning Forecasters
|
|
42
|
+
|
|
43
|
+
Neural networks for complex temporal patterns:
|
|
44
|
+
|
|
45
|
+
- `TCNForecaster` - Temporal Convolutional Network
|
|
46
|
+
- Dilated convolutions for large receptive fields
|
|
47
|
+
- **Use when**: Long sequences, need non-recurrent architecture
|
|
48
|
+
|
|
49
|
+
- `DeepARNetwork` - Probabilistic forecasting with RNNs
|
|
50
|
+
- Provides prediction intervals
|
|
51
|
+
- **Use when**: Need probabilistic forecasts, uncertainty quantification
|
|
52
|
+
|
|
53
|
+
## Regression-Based Forecasting
|
|
54
|
+
|
|
55
|
+
Apply regression to lagged features:
|
|
56
|
+
|
|
57
|
+
- `RegressionForecaster` - Wraps regressors for forecasting
|
|
58
|
+
- Parameters: `window_length`, `horizon`
|
|
59
|
+
- **Use when**: Want to use any regressor as forecaster
|
|
60
|
+
|
|
61
|
+
## Quick Start
|
|
62
|
+
|
|
63
|
+
```python
|
|
64
|
+
from aeon.forecasting.naive import NaiveForecaster
|
|
65
|
+
from aeon.forecasting.arima import ARIMA
|
|
66
|
+
import numpy as np
|
|
67
|
+
|
|
68
|
+
# Create time series
|
|
69
|
+
y = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
|
|
70
|
+
|
|
71
|
+
# Naive baseline
|
|
72
|
+
naive = NaiveForecaster(strategy="last")
|
|
73
|
+
naive.fit(y)
|
|
74
|
+
forecast_naive = naive.predict(fh=[1, 2, 3])
|
|
75
|
+
|
|
76
|
+
# ARIMA model
|
|
77
|
+
arima = ARIMA(order=(1, 1, 1))
|
|
78
|
+
arima.fit(y)
|
|
79
|
+
forecast_arima = arima.predict(fh=[1, 2, 3])
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Forecasting Horizon
|
|
83
|
+
|
|
84
|
+
The forecasting horizon (`fh`) specifies which future time points to predict:
|
|
85
|
+
|
|
86
|
+
```python
|
|
87
|
+
# Relative horizon (next 3 steps)
|
|
88
|
+
fh = [1, 2, 3]
|
|
89
|
+
|
|
90
|
+
# Absolute horizon (specific time indices)
|
|
91
|
+
from aeon.forecasting.base import ForecastingHorizon
|
|
92
|
+
fh = ForecastingHorizon([11, 12, 13], is_relative=False)
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Model Selection
|
|
96
|
+
|
|
97
|
+
- **Baseline**: NaiveForecaster with seasonal strategy
|
|
98
|
+
- **Linear patterns**: ARIMA
|
|
99
|
+
- **Trend + seasonality**: ETS
|
|
100
|
+
- **Regime changes**: TAR, AutoTAR
|
|
101
|
+
- **Complex patterns**: TCNForecaster
|
|
102
|
+
- **Probabilistic**: DeepARNetwork
|
|
103
|
+
- **Long sequences**: TCNForecaster
|
|
104
|
+
- **Short sequences**: ARIMA, ETS
|
|
105
|
+
|
|
106
|
+
## Evaluation Metrics
|
|
107
|
+
|
|
108
|
+
Use standard forecasting metrics:
|
|
109
|
+
|
|
110
|
+
```python
|
|
111
|
+
from aeon.performance_metrics.forecasting import (
|
|
112
|
+
mean_absolute_error,
|
|
113
|
+
mean_squared_error,
|
|
114
|
+
mean_absolute_percentage_error
|
|
115
|
+
)
|
|
116
|
+
|
|
117
|
+
# Calculate error
|
|
118
|
+
mae = mean_absolute_error(y_true, y_pred)
|
|
119
|
+
mse = mean_squared_error(y_true, y_pred)
|
|
120
|
+
mape = mean_absolute_percentage_error(y_true, y_pred)
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
## Exogenous Variables
|
|
124
|
+
|
|
125
|
+
Many forecasters support exogenous features:
|
|
126
|
+
|
|
127
|
+
```python
|
|
128
|
+
# Train with exogenous variables
|
|
129
|
+
forecaster.fit(y, X=X_train)
|
|
130
|
+
|
|
131
|
+
# Predict requires future exogenous values
|
|
132
|
+
y_pred = forecaster.predict(fh=[1, 2, 3], X=X_test)
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Base Classes
|
|
136
|
+
|
|
137
|
+
- `BaseForecaster` - Abstract base for all forecasters
|
|
138
|
+
- `BaseDeepForecaster` - Base for deep learning forecasters
|
|
139
|
+
|
|
140
|
+
Extend these to implement custom forecasting algorithms.
|
|
@@ -0,0 +1,289 @@
|
|
|
1
|
+
# Deep Learning Networks
|
|
2
|
+
|
|
3
|
+
Aeon provides neural network architectures specifically designed for time series tasks. These networks serve as building blocks for classification, regression, clustering, and forecasting.
|
|
4
|
+
|
|
5
|
+
## Core Network Architectures
|
|
6
|
+
|
|
7
|
+
### Convolutional Networks
|
|
8
|
+
|
|
9
|
+
**FCNNetwork** - Fully Convolutional Network
|
|
10
|
+
- Three convolutional blocks with batch normalization
|
|
11
|
+
- Global average pooling for dimensionality reduction
|
|
12
|
+
- **Use when**: Need simple yet effective CNN baseline
|
|
13
|
+
|
|
14
|
+
**ResNetNetwork** - Residual Network
|
|
15
|
+
- Residual blocks with skip connections
|
|
16
|
+
- Prevents vanishing gradients in deep networks
|
|
17
|
+
- **Use when**: Deep networks needed, training stability important
|
|
18
|
+
|
|
19
|
+
**InceptionNetwork** - Inception Modules
|
|
20
|
+
- Multi-scale feature extraction with parallel convolutions
|
|
21
|
+
- Different kernel sizes capture patterns at various scales
|
|
22
|
+
- **Use when**: Patterns exist at multiple temporal scales
|
|
23
|
+
|
|
24
|
+
**TimeCNNNetwork** - Standard CNN
|
|
25
|
+
- Basic convolutional architecture
|
|
26
|
+
- **Use when**: Simple CNN sufficient, interpretability valued
|
|
27
|
+
|
|
28
|
+
**DisjointCNNNetwork** - Separate Pathways
|
|
29
|
+
- Disjoint convolutional pathways
|
|
30
|
+
- **Use when**: Different feature extraction strategies needed
|
|
31
|
+
|
|
32
|
+
**DCNNNetwork** - Dilated CNN
|
|
33
|
+
- Dilated convolutions for large receptive fields
|
|
34
|
+
- **Use when**: Long-range dependencies without many layers
|
|
35
|
+
|
|
36
|
+
### Recurrent Networks
|
|
37
|
+
|
|
38
|
+
**RecurrentNetwork** - RNN/LSTM/GRU
|
|
39
|
+
- Configurable cell type (RNN, LSTM, GRU)
|
|
40
|
+
- Sequential modeling of temporal dependencies
|
|
41
|
+
- **Use when**: Sequential dependencies critical, variable-length series
|
|
42
|
+
|
|
43
|
+
### Temporal Convolutional Network
|
|
44
|
+
|
|
45
|
+
**TCNNetwork** - Temporal Convolutional Network
|
|
46
|
+
- Dilated causal convolutions
|
|
47
|
+
- Large receptive field without recurrence
|
|
48
|
+
- **Use when**: Long sequences, need parallelizable architecture
|
|
49
|
+
|
|
50
|
+
### Multi-Layer Perceptron
|
|
51
|
+
|
|
52
|
+
**MLPNetwork** - Basic Feedforward
|
|
53
|
+
- Simple fully-connected layers
|
|
54
|
+
- Flattens time series before processing
|
|
55
|
+
- **Use when**: Baseline needed, computational limits, or simple patterns
|
|
56
|
+
|
|
57
|
+
## Encoder-Based Architectures
|
|
58
|
+
|
|
59
|
+
Networks designed for representation learning and clustering.
|
|
60
|
+
|
|
61
|
+
### Autoencoder Variants
|
|
62
|
+
|
|
63
|
+
**EncoderNetwork** - Generic Encoder
|
|
64
|
+
- Flexible encoder structure
|
|
65
|
+
- **Use when**: Custom encoding needed
|
|
66
|
+
|
|
67
|
+
**AEFCNNetwork** - FCN-based Autoencoder
|
|
68
|
+
- Fully convolutional encoder-decoder
|
|
69
|
+
- **Use when**: Need convolutional representation learning
|
|
70
|
+
|
|
71
|
+
**AEResNetNetwork** - ResNet Autoencoder
|
|
72
|
+
- Residual blocks in encoder-decoder
|
|
73
|
+
- **Use when**: Deep autoencoding with skip connections
|
|
74
|
+
|
|
75
|
+
**AEDCNNNetwork** - Dilated CNN Autoencoder
|
|
76
|
+
- Dilated convolutions for compression
|
|
77
|
+
- **Use when**: Need large receptive field in autoencoder
|
|
78
|
+
|
|
79
|
+
**AEDRNNNetwork** - Dilated RNN Autoencoder
|
|
80
|
+
- Dilated recurrent connections
|
|
81
|
+
- **Use when**: Sequential patterns with long-range dependencies
|
|
82
|
+
|
|
83
|
+
**AEBiGRUNetwork** - Bidirectional GRU
|
|
84
|
+
- Bidirectional recurrent encoding
|
|
85
|
+
- **Use when**: Context from both directions helpful
|
|
86
|
+
|
|
87
|
+
**AEAttentionBiGRUNetwork** - Attention + BiGRU
|
|
88
|
+
- Attention mechanism on BiGRU outputs
|
|
89
|
+
- **Use when**: Need to focus on important time steps
|
|
90
|
+
|
|
91
|
+
## Specialized Architectures
|
|
92
|
+
|
|
93
|
+
**LITENetwork** - Lightweight Inception Time Ensemble
|
|
94
|
+
- Efficient inception-based architecture
|
|
95
|
+
- LITEMV variant for multivariate series
|
|
96
|
+
- **Use when**: Need efficiency with strong performance
|
|
97
|
+
|
|
98
|
+
**DeepARNetwork** - Probabilistic Forecasting
|
|
99
|
+
- Autoregressive RNN for forecasting
|
|
100
|
+
- Produces probabilistic predictions
|
|
101
|
+
- **Use when**: Need forecast uncertainty quantification
|
|
102
|
+
|
|
103
|
+
## Usage with Estimators
|
|
104
|
+
|
|
105
|
+
Networks are typically used within estimators, not directly:
|
|
106
|
+
|
|
107
|
+
```python
|
|
108
|
+
from aeon.classification.deep_learning import FCNClassifier
|
|
109
|
+
from aeon.regression.deep_learning import ResNetRegressor
|
|
110
|
+
from aeon.clustering.deep_learning import AEFCNClusterer
|
|
111
|
+
|
|
112
|
+
# Classification with FCN
|
|
113
|
+
clf = FCNClassifier(n_epochs=100, batch_size=16)
|
|
114
|
+
clf.fit(X_train, y_train)
|
|
115
|
+
|
|
116
|
+
# Regression with ResNet
|
|
117
|
+
reg = ResNetRegressor(n_epochs=100)
|
|
118
|
+
reg.fit(X_train, y_train)
|
|
119
|
+
|
|
120
|
+
# Clustering with autoencoder
|
|
121
|
+
clusterer = AEFCNClusterer(n_clusters=3, n_epochs=100)
|
|
122
|
+
labels = clusterer.fit_predict(X_train)
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
## Custom Network Configuration
|
|
126
|
+
|
|
127
|
+
Many networks accept configuration parameters:
|
|
128
|
+
|
|
129
|
+
```python
|
|
130
|
+
# Configure FCN layers
|
|
131
|
+
clf = FCNClassifier(
|
|
132
|
+
n_epochs=200,
|
|
133
|
+
batch_size=32,
|
|
134
|
+
kernel_size=[7, 5, 3], # Kernel sizes for each layer
|
|
135
|
+
n_filters=[128, 256, 128], # Filters per layer
|
|
136
|
+
learning_rate=0.001
|
|
137
|
+
)
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Base Classes
|
|
141
|
+
|
|
142
|
+
- `BaseDeepLearningNetwork` - Abstract base for all networks
|
|
143
|
+
- `BaseDeepRegressor` - Base for deep regression
|
|
144
|
+
- `BaseDeepClassifier` - Base for deep classification
|
|
145
|
+
- `BaseDeepForecaster` - Base for deep forecasting
|
|
146
|
+
|
|
147
|
+
Extend these to implement custom architectures.
|
|
148
|
+
|
|
149
|
+
## Training Considerations
|
|
150
|
+
|
|
151
|
+
### Hyperparameters
|
|
152
|
+
|
|
153
|
+
Key hyperparameters to tune:
|
|
154
|
+
|
|
155
|
+
- `n_epochs` - Training iterations (50-200 typical)
|
|
156
|
+
- `batch_size` - Samples per batch (16-64 typical)
|
|
157
|
+
- `learning_rate` - Step size (0.0001-0.01)
|
|
158
|
+
- Network-specific: layers, filters, kernel sizes
|
|
159
|
+
|
|
160
|
+
### Callbacks
|
|
161
|
+
|
|
162
|
+
Many networks support callbacks for training monitoring:
|
|
163
|
+
|
|
164
|
+
```python
|
|
165
|
+
from tensorflow.keras.callbacks import EarlyStopping, ReduceLROnPlateau
|
|
166
|
+
|
|
167
|
+
clf = FCNClassifier(
|
|
168
|
+
n_epochs=200,
|
|
169
|
+
callbacks=[
|
|
170
|
+
EarlyStopping(patience=20, restore_best_weights=True),
|
|
171
|
+
ReduceLROnPlateau(patience=10, factor=0.5)
|
|
172
|
+
]
|
|
173
|
+
)
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### GPU Acceleration
|
|
177
|
+
|
|
178
|
+
Deep learning networks benefit from GPU:
|
|
179
|
+
|
|
180
|
+
```python
|
|
181
|
+
import os
|
|
182
|
+
os.environ['CUDA_VISIBLE_DEVICES'] = '0' # Use first GPU
|
|
183
|
+
|
|
184
|
+
# Networks automatically use GPU if available
|
|
185
|
+
clf = InceptionTimeClassifier(n_epochs=100)
|
|
186
|
+
clf.fit(X_train, y_train)
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## Architecture Selection
|
|
190
|
+
|
|
191
|
+
### By Task:
|
|
192
|
+
|
|
193
|
+
**Classification**: InceptionNetwork, ResNetNetwork, FCNNetwork
|
|
194
|
+
**Regression**: InceptionNetwork, ResNetNetwork, TCNNetwork
|
|
195
|
+
**Forecasting**: TCNNetwork, DeepARNetwork, RecurrentNetwork
|
|
196
|
+
**Clustering**: AEFCNNetwork, AEResNetNetwork, AEAttentionBiGRUNetwork
|
|
197
|
+
|
|
198
|
+
### By Data Characteristics:
|
|
199
|
+
|
|
200
|
+
**Long sequences**: TCNNetwork, DCNNNetwork (dilated convolutions)
|
|
201
|
+
**Short sequences**: MLPNetwork, FCNNetwork
|
|
202
|
+
**Multivariate**: InceptionNetwork, FCNNetwork, LITENetwork
|
|
203
|
+
**Variable length**: RecurrentNetwork with masking
|
|
204
|
+
**Multi-scale patterns**: InceptionNetwork
|
|
205
|
+
|
|
206
|
+
### By Computational Resources:
|
|
207
|
+
|
|
208
|
+
**Limited compute**: MLPNetwork, LITENetwork
|
|
209
|
+
**Moderate compute**: FCNNetwork, TimeCNNNetwork
|
|
210
|
+
**High compute available**: InceptionNetwork, ResNetNetwork
|
|
211
|
+
**GPU available**: Any deep network (major speedup)
|
|
212
|
+
|
|
213
|
+
## Best Practices
|
|
214
|
+
|
|
215
|
+
### 1. Data Preparation
|
|
216
|
+
|
|
217
|
+
Normalize input data:
|
|
218
|
+
|
|
219
|
+
```python
|
|
220
|
+
from aeon.transformations.collection import Normalizer
|
|
221
|
+
|
|
222
|
+
normalizer = Normalizer()
|
|
223
|
+
X_train_norm = normalizer.fit_transform(X_train)
|
|
224
|
+
X_test_norm = normalizer.transform(X_test)
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
### 2. Training/Validation Split
|
|
228
|
+
|
|
229
|
+
Use validation set for early stopping:
|
|
230
|
+
|
|
231
|
+
```python
|
|
232
|
+
from sklearn.model_selection import train_test_split
|
|
233
|
+
|
|
234
|
+
X_train_fit, X_val, y_train_fit, y_val = train_test_split(
|
|
235
|
+
X_train, y_train, test_size=0.2, stratify=y_train
|
|
236
|
+
)
|
|
237
|
+
|
|
238
|
+
clf = FCNClassifier(n_epochs=200)
|
|
239
|
+
clf.fit(X_train_fit, y_train_fit, validation_data=(X_val, y_val))
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
### 3. Start Simple
|
|
243
|
+
|
|
244
|
+
Begin with simpler architectures before complex ones:
|
|
245
|
+
|
|
246
|
+
1. Try MLPNetwork or FCNNetwork first
|
|
247
|
+
2. If insufficient, try ResNetNetwork or InceptionNetwork
|
|
248
|
+
3. Consider ensembles if single models insufficient
|
|
249
|
+
|
|
250
|
+
### 4. Hyperparameter Tuning
|
|
251
|
+
|
|
252
|
+
Use grid search or random search:
|
|
253
|
+
|
|
254
|
+
```python
|
|
255
|
+
from sklearn.model_selection import GridSearchCV
|
|
256
|
+
|
|
257
|
+
param_grid = {
|
|
258
|
+
'n_epochs': [100, 200],
|
|
259
|
+
'batch_size': [16, 32],
|
|
260
|
+
'learning_rate': [0.001, 0.0001]
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
clf = FCNClassifier()
|
|
264
|
+
grid = GridSearchCV(clf, param_grid, cv=3)
|
|
265
|
+
grid.fit(X_train, y_train)
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
### 5. Regularization
|
|
269
|
+
|
|
270
|
+
Prevent overfitting:
|
|
271
|
+
- Use dropout (if network supports)
|
|
272
|
+
- Early stopping
|
|
273
|
+
- Data augmentation (if available)
|
|
274
|
+
- Reduce model complexity
|
|
275
|
+
|
|
276
|
+
### 6. Reproducibility
|
|
277
|
+
|
|
278
|
+
Set random seeds:
|
|
279
|
+
|
|
280
|
+
```python
|
|
281
|
+
import numpy as np
|
|
282
|
+
import random
|
|
283
|
+
import tensorflow as tf
|
|
284
|
+
|
|
285
|
+
seed = 42
|
|
286
|
+
np.random.seed(seed)
|
|
287
|
+
random.seed(seed)
|
|
288
|
+
tf.random.set_seed(seed)
|
|
289
|
+
```
|