{"id":20916271,"url":"https://github.com/giotto-ai/giotto-deep","last_synced_at":"2025-08-02T20:05:36.832Z","repository":{"id":37435164,"uuid":"220038588","full_name":"giotto-ai/giotto-deep","owner":"giotto-ai","description":"Deep learning made topological.","archived":false,"fork":false,"pushed_at":"2024-07-25T10:36:27.000Z","size":107173,"stargazers_count":84,"open_issues_count":6,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-07-30T04:01:16.283Z","etag":null,"topics":["computational-geometry","deep-learning","image-processing","nlp","pytorch","tda"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/giotto-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.rst","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":"GOVERNANCE.rst","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-11-06T16:14:24.000Z","updated_at":"2025-07-23T18:31:02.000Z","dependencies_parsed_at":"2023-10-11T14:15:44.695Z","dependency_job_id":"480cad3d-7e71-4b03-9065-6dbef8c6fca9","html_url":"https://github.com/giotto-ai/giotto-deep","commit_stats":{"total_commits":802,"total_committers":17,"mean_commits":47.1764705882353,"dds":0.587281795511222,"last_synced_commit":"1bf3103743835a75b5c0f3f9d0de948b0b071f85"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/giotto-ai/giotto-deep","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giotto-ai%2Fgiotto-deep","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giotto-ai%2Fgiotto-deep/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giotto-ai%2Fgiotto-deep/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giotto-ai%2Fgiotto-deep/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/giotto-ai","download_url":"https://codeload.github.com/giotto-ai/giotto-deep/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giotto-ai%2Fgiotto-deep/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267986861,"owners_count":24176715,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-31T02:00:08.723Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["computational-geometry","deep-learning","image-processing","nlp","pytorch","tda"],"created_at":"2024-11-18T16:21:12.327Z","updated_at":"2025-08-02T20:05:36.803Z","avatar_url":"https://github.com/giotto-ai.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![image](https://raw.githubusercontent.com/giotto-ai/giotto-deep/master/docs/giotto-deep-big.svg)\n\n![Python package](https://github.com/giotto-ai/giotto-deep/workflows/Python%20package/badge.svg)\n![Deploy to gh-pages](https://github.com/giotto-ai/giotto-deep/workflows/Deploy%20to%20gh-pages/badge.svg)\n![Upload Python Package](https://github.com/giotto-ai/giotto-deep/workflows/Upload%20Python%20Package/badge.svg)\n[![DOI](https://joss.theoj.org/papers/10.21105/joss.04846/status.svg)](https://doi.org/10.21105/joss.04846)\n\n# giotto-deep\n\nThe first library to bring seamless integration between topological data\nanalysis and deep learning on top of PyTorch.\nThe code for Persformer will be released open-source soon together\nwith Giotto-deep.\nIt aims to make the day-to-day of researchers easy, allowing them\nto focus on inventing new models and layers rather than dealing\nwith the more standard deep-learning code.\nIt comes with optimized implementations for multi-GPU/TPU\ncomputations and the ability to run benchmarks and\nhyperparameter optimization in a few lines of code.\n\n## Documentation\n\nYou can find the documentation of this repository here: https://giotto-ai.github.io/giotto-deep/\n\n## Run tensorboard for visualization\n\nIn order to analyse the results of your models, you need to start **tensorboard**. On the terminal, move inside the `/examples` folder. There, run the following command:\n```\ntensorboard --logdir=runs\n```\nAfterwards go [here](http://localhost:6006/) and, after running the notebooks of interest, you will see all the visualization results that you stored in the `writer = SummaryWriter()`.\n\n## Install user version\n\nThe simplest way to install `giotto-deep` is using `pip`:\n```\npython -m pip install -U giotto-deep\n```\nIf necessary, this command will also automatically install all the library dependencies.\n**Note:** we recommend upgrading ``pip`` to a recent version as the above may fail on very old versions.\n\n\n## Install dev version\n\nThe first step to install the developer version of the package is to `git clone` this repository:\n```\ngit clone https://github.com/giotto-ai/giotto-deep.git\n```\nThe change the current working directory to the Repository root folder, e.g. `cd giotto-deep`.\nIt is best practice to create a virtual environment for the project, e.g. using `virtualenv`:\n```\nvirtualenv -p python3.9 venv\n```\nActivate the virtual environment (e.g. `source venv/bin/activate` on Linux or `venv\\Scripts\\activate` on Windows).\n\nFirst make sure you have upgraded to the last version of `pip` with\n```\npython -m pip install --upgrade pip\n```\nMake sure you have the latest version of pytorch installed.\nYou can do this by running the following command (if you have a GPU):\n```\npip install torch --extra-index-url https://download.pytorch.org/whl/cu113\n```\nOnce you are in the root folder, install the package dynamically with:\n```\npip install -e .\n```\n\n\n## Contributing\nThe `giotto-deep` project welcomes contributions of all kinds. Please see our [contributing guidelines](\n    https://giotto-ai.github.io/gtda-docs/latest/contributing/#guidelines\n) for more information.\n\nWe are using pre-commit hooks to ensure that the code is formatted correctly. To install the pre-commit hooks, run the following command from the root folder:\n```\npre-commit install\n```\nThe pre-commit hooks will run automatically before each commit. If you want to run the pre-commit hooks manually, run the following command from the root folder:\n```\npre-commit run --all-files\n```\n\nTo run both unit and integration tests on *macOS* or *Linux*, simply run the following command from the root folder:\n```\nbash local_test.bh\n```\n\n## TPU support in Google Colab\n\nI order to run your analysis on TPU cores, you ca use the following lines:\n```\n!git clone https://username:token@github.com/giotto-ai/giotto-deep\n!ls\n!pip uninstall -y tensorflow\n!pip install -e giotto-deep/\n!pip install cloud-tpu-client==0.10 https://storage.googleapis.com/tpu-pytorch/wheels/torch_xla-1.9-cp37-cp37m-linux_x86_64.whl\n```\nOnce you have run the lines above, please make sure to restart the runtime.\n\nThe code will automatically detect the TPU core and use it as default to run the experiments. GPUs are also automatically supported.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiotto-ai%2Fgiotto-deep","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgiotto-ai%2Fgiotto-deep","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiotto-ai%2Fgiotto-deep/lists"}