# HDMF-AI - an HDMF schema and API for AI/ML workflows
`HDMF-AI` is a schema and Python API for storing the common results of AI algorithms in a standardized way within the [Hierarchical Data Modeling Framework (HDMF)](https://hdmf.readthedocs.io/en/stable/).
`HDMF-AI` is designed to be flexible and extensible, allowing users to store a range of AI and machine learning results and metadata, such as from classification, regression, and clustering. These results are stored in the `ResultsTable` data type, which extends the `DynamicTable` data type within the base HDMF schema. The `ResultsTable` schema represents each data sample as a row and includes columns for storing model outputs and information about the AI/ML workflow, such as which data were used for training, validation, and testing.
By leveraging existing HDMF tools and standards, `HDMF-AI` provides a scalable and extensible framework for storing AI results in an accessible, standardized way that is compatible with other HDMF-based data formats, such as [Neurodata Without Borders (NWB)](https://nwb-overview.readthedocs.io/), a popular data standard for neurophysiology, and [HDMF-Seq](https://github.com/exabiome/deep-taxon), a format for storing taxonomic and genomic sequence data. By enabling standardized co-storage of data and AI results, `HDMF-AI` may enhance the reproducibility and explainability of AI for science.
![UML diagram of the HDMF-AI schema. Data types with orange headers are introduced by HDMF-AI. Data types with blue headers are defined in HDMF. Fields colored in gray are optional.](paper/schema.png)
## Installation
```bash
pip install hdmf-ai
```
## Usage
For example usage, see `example_usage.ipynb`.
Raw data
{
"_id": null,
"home_page": null,
"name": "hdmf-ai",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "python, cross-platform, open-data, data-format, open-source, open-science, reproducible-research, artificial-intelligence, machine-learning, data-standards",
"author": null,
"author_email": "Ryan Ly <rly@lbl.gov>, Andrew Tritt <ajtritt@lbl.gov>",
"download_url": "https://files.pythonhosted.org/packages/4b/3b/28b22febf3b3d66ca88ced8bc760a04b2d70144559d9cedcf306be9487cd/hdmf_ai-0.2.0.tar.gz",
"platform": null,
"description": "# HDMF-AI - an HDMF schema and API for AI/ML workflows\n\n`HDMF-AI` is a schema and Python API for storing the common results of AI algorithms in a standardized way within the [Hierarchical Data Modeling Framework (HDMF)](https://hdmf.readthedocs.io/en/stable/).\n\n`HDMF-AI` is designed to be flexible and extensible, allowing users to store a range of AI and machine learning results and metadata, such as from classification, regression, and clustering. These results are stored in the `ResultsTable` data type, which extends the `DynamicTable` data type within the base HDMF schema. The `ResultsTable` schema represents each data sample as a row and includes columns for storing model outputs and information about the AI/ML workflow, such as which data were used for training, validation, and testing.\n\nBy leveraging existing HDMF tools and standards, `HDMF-AI` provides a scalable and extensible framework for storing AI results in an accessible, standardized way that is compatible with other HDMF-based data formats, such as [Neurodata Without Borders (NWB)](https://nwb-overview.readthedocs.io/), a popular data standard for neurophysiology, and [HDMF-Seq](https://github.com/exabiome/deep-taxon), a format for storing taxonomic and genomic sequence data. By enabling standardized co-storage of data and AI results, `HDMF-AI` may enhance the reproducibility and explainability of AI for science.\n\n![UML diagram of the HDMF-AI schema. Data types with orange headers are introduced by HDMF-AI. Data types with blue headers are defined in HDMF. Fields colored in gray are optional.](paper/schema.png)\n\n## Installation\n\n```bash\npip install hdmf-ai\n```\n\n## Usage\n\nFor example usage, see `example_usage.ipynb`.\n",
"bugtrack_url": null,
"license": "BSD-3-Clause-LBNL",
"summary": "A schema and API for storing the results from AI/ML workflows",
"version": "0.2.0",
"project_urls": {
"Bug Tracker": "https://github.com/hdmf-dev/hdmf-ai/issues",
"Homepage": "https://github.com/hdmf-dev/hdmf-ai"
},
"split_keywords": [
"python",
" cross-platform",
" open-data",
" data-format",
" open-source",
" open-science",
" reproducible-research",
" artificial-intelligence",
" machine-learning",
" data-standards"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fcd391d9a0594f9bd6e5bd461ae452eeac011e1766e6ddeab851e8578f7938c6",
"md5": "508a1c77210f9c8ec9a7b5f8af86b1a0",
"sha256": "d716e5ac8ccbc1c9fc0b4784b0012a14c5b1282b4b06a705502fa8f5ee80ecef"
},
"downloads": -1,
"filename": "hdmf_ai-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "508a1c77210f9c8ec9a7b5f8af86b1a0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 9848,
"upload_time": "2024-04-11T09:39:24",
"upload_time_iso_8601": "2024-04-11T09:39:24.929182Z",
"url": "https://files.pythonhosted.org/packages/fc/d3/91d9a0594f9bd6e5bd461ae452eeac011e1766e6ddeab851e8578f7938c6/hdmf_ai-0.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4b3b28b22febf3b3d66ca88ced8bc760a04b2d70144559d9cedcf306be9487cd",
"md5": "86b658c6474a8791d55970c0846bb3c4",
"sha256": "aec4782d8f66a49e64c0db2e289ed419e657a10e378f37be9e4b527f4ee19e5b"
},
"downloads": -1,
"filename": "hdmf_ai-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "86b658c6474a8791d55970c0846bb3c4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 212671,
"upload_time": "2024-04-11T09:39:26",
"upload_time_iso_8601": "2024-04-11T09:39:26.849849Z",
"url": "https://files.pythonhosted.org/packages/4b/3b/28b22febf3b3d66ca88ced8bc760a04b2d70144559d9cedcf306be9487cd/hdmf_ai-0.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-11 09:39:26",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hdmf-dev",
"github_project": "hdmf-ai",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "hdmf",
"specs": [
[
"==",
"3.13.0"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"1.26.4"
]
]
},
{
"name": "scikit-learn",
"specs": [
[
"==",
"1.4.0"
]
]
}
],
"lcname": "hdmf-ai"
}