{"id":22582441,"url":"https://github.com/paccmann/fdsa","last_synced_at":"2025-10-03T23:52:57.064Z","repository":{"id":100216035,"uuid":"342278581","full_name":"PaccMann/fdsa","owner":"PaccMann","description":"A fully differentiable set autoencoder","archived":false,"fork":false,"pushed_at":"2024-04-03T14:55:46.000Z","size":6394,"stargazers_count":17,"open_issues_count":1,"forks_count":3,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-10T19:39:20.025Z","etag":null,"topics":["deep-learning","multimodal-data","set-autoencoder"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PaccMann.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-02-25T14:52:40.000Z","updated_at":"2024-08-14T14:43:35.000Z","dependencies_parsed_at":"2024-04-03T15:58:32.737Z","dependency_job_id":"88a6717f-7250-4bb2-af47-f745c10f8de3","html_url":"https://github.com/PaccMann/fdsa","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PaccMann/fdsa","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Ffdsa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Ffdsa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Ffdsa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Ffdsa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PaccMann","download_url":"https://codeload.github.com/PaccMann/fdsa/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PaccMann%2Ffdsa/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278245377,"owners_count":25955014,"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-10-03T02:00:06.070Z","response_time":53,"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":["deep-learning","multimodal-data","set-autoencoder"],"created_at":"2024-12-08T06:09:53.988Z","updated_at":"2025-10-03T23:52:57.010Z","avatar_url":"https://github.com/PaccMann.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n# Fully Differentiable Set Autoencoder (fdsa)\n\nA fully differentiable set autoencoder for encoding sets. [Paper @KDD 2022](https://dl.acm.org/doi/10.1145/3534678.3539153).\n\n\nThe work is inspired by [\"The Set Autoencoder: Unsupervised Representation Learning for Sets \"](https://openreview.net/forum?id=r1tJKuyRZ). The model makes use of an\nencoder from [\"Order Matters: Sequence to sequence for sets\"](https://arxiv.org/abs/1511.06391) and the decoder is a slightly modified version of the one in [\"The Set Autoencoder: Unsupervised Representation Learning for Sets \"](https://openreview.net/forum?id=r1tJKuyRZ). To efficiently match the reconstructions of the autoencoder to their corresponding inputs to create a differentiable loss function, three architectures were developed and evaluated that could approximate the assignment problem and thus act as an end-to-end\nset matching network. The package includes code for these networks as well as baseline implementations of the set autoencoder fitted with the Hungarian matching algorithm and the Gale-Shapley algorithm.\n\n## Installation\n\nCreate a conda environment:\n\n```console\nconda env create -f conda.yml\n```\n\nActivate the environment:\n\n```console\nconda activate fdsa\n```\n\nInstall:\n\n```console\npip install .\n```\n\n### development\n\nInstall in editable mode for development:\n\n```sh\npip install --user -e .\n```\n\n## Examples\n\nFor some examples on how to use `fdsa` see [here](./examples)\n\n## Citation\n\nIf you use `fdsa` in your projects, please cite:\n\n\n```bib\n@inproceedings{10.1145/3534678.3539153,\n  author = {Janakarajan, Nikita and Born, Jannis and Manica, Matteo},\n  title = {A Fully Differentiable Set Autoencoder},\n  year = {2022},\n  isbn = {9781450393850},\n  publisher = {Association for Computing Machinery},\n  address = {New York, NY, USA},\n  url = {https://doi.org/10.1145/3534678.3539153},\n  doi = {10.1145/3534678.3539153},\n  booktitle = {Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining},\n  pages = {3061–3071},\n  numpages = {11},\n  keywords = {set matching network, multi-modality, autoencoders, sets},\n  location = {Washington DC, USA},\n  series = {KDD '22}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaccmann%2Ffdsa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaccmann%2Ffdsa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaccmann%2Ffdsa/lists"}