Pytorch implementation of set transformer.
juho-lee/set_transformer is ranked 14,947 with 691 stars.
Same-category comparison
juho-lee/set_transformer is ranked 14,947 among these 8 peers; google-research/pix2struct is ranked 14,946.
Same-category comparison| Name | Rank | Metrics |
|---|
| xuehy/pytorch-maddpg | 14,938 | - Language:
- Python
- Stars:
- 692
- Forks:
- 126
- Description:
- A pytorch implementation of MADDPG (multi-agent deep deterministic policy gradient).
|
|---|
| Bobo-y/flexible-yolov5 | 14,939 | - Language:
- Python
- Stars:
- 691
- Forks:
- 117
- Description:
- More readable and flexible yolov5 with more backbone(gcn, resnet, shufflenet, moblienet, efficientnet, hrnet, swin-transformer, etc) and (cbam,dcn and so on), and tensorrt.
|
|---|
| PaulDanielML/MuJoCo_RL_UR5 | 14,942 | - Language:
- Python
- Stars:
- 691
- Forks:
- 70
- Description:
- A MuJoCo/Gym environment for robot control using Reinforcement Learning. The task of agents in this environment is pixel-wise prediction of grasp success chances.
|
|---|
| google-research/pix2struct | 14,946 | - Language:
- Python
- Stars:
- 691
- Forks:
- 62
|
|---|
| philipperemy/FX-1-Minute-Data | 14,950 | - Language:
- Python
- Stars:
- 691
- Forks:
- 172
- Description:
- HISTDATA - Dataset composed of all FX trading pairs / Crude Oil / Stock Indexes. Simple API to retrieve 1 Minute data (and tick data) Historical FX Prices (up to date).
|
|---|
| rizkiarm/LipNet | 14,951 | - Language:
- Python
- Stars:
- 691
- Forks:
- 244
- Description:
- Keras implementation of 'LipNet: End-to-End Sentence-level Lipreading'.
|
|---|
| vanderschaarlab/synthcity | 14,953 | - Language:
- Python
- Stars:
- 691
- Forks:
- 99
- Description:
- A library for generating and evaluating synthetic tabular data for privacy, fairness and data augmentation.
|
|---|
| x4nth055/emotion-recognition-using-speech | 14,954 | - Language:
- Python
- Stars:
- 691
- Forks:
- 252
- Description:
- Building and training Speech Emotion Recognizer that predicts human emotions using Python, Sci-kit learn and Keras.
|
|---|
Key parameters and specifications
Key parameters and specifications| Parameter | Value |
|---|
| Language | Jupyter Notebook |
|---|
| Category | Model Development |
|---|
| Subcategory | Architecture |
|---|
| Stars | 691 |
|---|
| Forks | 118 |
|---|
| Contributors | 1 |
|---|
| Created date | 2019-05-03 |
|---|
| Updated date | 2026-10-11 |
|---|
| Stars in 1 day | 0 |
|---|
| Stars in 7 days | 1 |
|---|
| Rank | 14,947 |
|---|
| Previous rank | 14,776 |
|---|
| Rank change | -171 |
|---|
| 7-day stars rank | 10,918 |
|---|
| Previous 7-day stars rank | 14,742 |
|---|
| 7-day stars rank change | 3,824 |
|---|
| Total stars rank | 15,031 |
|---|
| Previous total stars rank | 15,007 |
|---|
| Total stars rank change | -24 |
|---|
| Country | South Korea |
|---|
README summary
set_transformer Official PyTorch implementation of the paper Set Transformer: A Framework for Attention-based Permutation-Invariant Neural Networks . 0 matplotlib scipy tqdm Abstract Many machine learning tasks such as multiple instance learning, 3D shape recognition, and few-shot image classification are defined on sets of instances. Since solutions to such problems do not depend on the order of elements of the set, models used to address them should be permutation invariant. We present an attention-based neural network module
, the Set Transformer, specifically designed to model interactions among elements in the input set. The model consists of an encoder and a decoder, both of which rely on attention mechanisms. In an effort to reduce computational complexity, we introduce an attention scheme inspired by inducing point methods from sparse Gaussian process literature. It reduces the computation time of self-attention from quadratic to linear in the number of elements in the set. We show that our model is theoretically attractive
and we evaluate it on a range of tasks, demonstrating the state-of-the-art performance compared to recent methods for set-structured data. Experiments This repository implements the maximum value regression (section 5. 3), and point cloud classification (section 5. Maximum Value Regression This experiment is reproduced in . Amortized Clustering To run the amortized clustering experiment with Set Transformer, run To run the same experiment with Deep Sets, run Point Cloud Classification We used the same preprocessed ModelNet40 dataset
used in the DeepSets paper. We cannot publicly share this file due to copyright and license issues. To run this code, you must obtain the preprocessed dataset "ModelNet40_cloud. We recommend using multiple GPUs for this experiment; we used 8 Tesla P40s. To run the point cloud classification experiment, run The hyperparameters here were minimally tuned yet reproduced the results in the paper. It is likely that further tuning will get better results. Reference If you found the provided code
useful, please consider citing our work.
Frequently asked questions
How many stars and forks are recorded?
juho-lee/set_transformer has 691 stars and 118 forks.
What is the repository rank?
juho-lee/set_transformer is ranked 14,947.
What language and category are recorded?
juho-lee/set_transformer has 691 stars, uses Jupyter Notebook and belongs to Model Development.
Which repository is closest in rank?
juho-lee/set_transformer is compared with google-research/pix2struct, ranked 14,946 with 691 stars.
set_transformer
Official PyTorch implementation of the paper
Set Transformer: A Framework for Attention-based Permutation-Invariant Neural Networks
.
Requirements
- Python 3
- torch >= 1.0
- matplotlib
- scipy
- tqdm
Abstract
Many machine learning tasks such as multiple instance learning, 3D shape recognition, and few-shot image classification are defined on sets of instances.
Since solutions to such problems do not depend on the order of elements of the set, models used to address them should be permutation invariant.
We present an attention-based neural network module, the Set Transformer, specifically designed to model interactions among elements in the input set.
The model consists of an encoder and a decoder, both of which rely on attention mechanisms.
In an effort to reduce computational complexity, we introduce an attention scheme inspired by inducing point methods from sparse Gaussian process literature.
It reduces the computation time of self-attention from quadratic to linear in the number of elements in the set.
We show that our model is theoretically attractive and we evaluate it on a range of tasks, demonstrating the state-of-the-art performance compared to recent methods for set-structured data.
Experiments
This repository implements the
maximum value regression (section 5.1),
amortized clustering (section 5.3),
and point cloud classification (section 5.5)
experiments in the paper.
Maximum Value Regression
This experiment is reproduced in max_regression_demo.ipynb.
Amortized Clustering
To run the amortized clustering experiment with Set Transformer, run
python run.py --net=set_transformer
To run the same experiment with Deep Sets, run
python run.py --net=deepset
Point Cloud Classification
We used the same preprocessed ModelNet40 dataset used in the DeepSets paper.
We cannot publicly share this file due to copyright and license issues.
To run this code, you must obtain the preprocessed dataset "ModelNet40_cloud.h5".
We recommend using multiple GPUs for this experiment; we used 8 Tesla P40s.
To run the point cloud classification experiment, run
python main_pointcloud.py --batch_size 256 --num_pts 100
python main_pointcloud.py --batch_size 256 --num_pts 1000
python main_pointcloud.py --batch_size 256 --num_pts 5000
The hyperparameters here were minimally tuned yet reproduced the results in the paper.
It is likely that further tuning will get better results.
Reference
If you found the provided code useful, please consider citing our work.
@InProceedings{lee2019set,
title={Set Transformer: A Framework for Attention-based Permutation-Invariant Neural Networks},
author={Lee, Juho and Lee, Yoonho and Kim, Jungtaek and Kosiorek, Adam and Choi, Seungjin and Teh, Yee Whye},
booktitle={Proceedings of the 36th International Conference on Machine Learning},
pages={3744--3753},
year={2019}
}