Code for running simulations for the paper "Capacity of Group-invariant Linear Readouts from Equivariant Representations: How Many Objects can be Linearly Classified Under All Possible Views?", by Matthew Farrell, Blake Bordelon, Shubhendu Trivedi, and Cengiz Pehlevan. Note that the file models/vgg.py contains copyright statements for the original authors and modifiers of the script. The python packages used for the simulations are contained in environment.yml (this may include extra packages that are not necessary). To generate Figure 1, run python manifold_plots.py This script is fairly simple and self-explanatory. To generate Figures 2 and 3, run python plot_cnn_capacity.py At the bottom of the plot_cnn_capacity.py script, the plotting function is called for different panels. Comment out lines to generate specific figures. This script searches for a match with sets of parameters defined in cnn_capacity_params.py. To modify parameters used for simulations, modify the dictionaries in cnn_capacity_params.py or define your own parameter sets. For a description of different parameter options, see the docstring for the function cnn_capacity.get_capacity. The simulations take quite a lot of time to run, even with parallelization. Also a word of warning that the simulations take a lot of memory (~100GB for n_cores=5). To speed things up and reduce memory usage, one can set perceptron_style=efficient or pool_over_group=True, or reduce n_dichotomies. One can also choose to set seeds to seeds = [3] in plot_cnn_capacity.py. cnn_capacity_utils.py contains utility functions. The VGG model can be found in models/vgg.py. The direct sum (aka "grid cell") convolutional network model can be found in models/gridcellconv.py The code for generating datasets can be found in datasets.py. The code was modified and superficially refactored in preparation for releasing to the public. The simulations haven't been thoroughly tested after this refactoring so it's not 100% guaranteed that the code is correct (though it doesn't appear to throw errors). Fingers crossed that everything works the way it should. The development of this code was supported by the Harvard Data Science Initiative.
Code for generating the figures in the paper "Capacity of Group-invariant Linear Readouts from Equivariant Representations: How Many Objects can be Linearly Classified Under All Possible Views?"
Overview
Owner
Matthew Farrell
Robust Consistent Video Depth Estimation
[CVPR 2021] Robust Consistent Video Depth Estimation This repository contains Python and C++ implementation of Robust Consistent Video Depth, as descr
Python Rapid Artificial Intelligence Ab Initio Molecular Dynamics
Python Rapid Artificial Intelligence Ab Initio Molecular Dynamics
Transfer-Learn is an open-source and well-documented library for Transfer Learning.
Transfer-Learn is an open-source and well-documented library for Transfer Learning. It is based on pure PyTorch with high performance and friendly API. Our code is pythonic, and the design is consist
CAST: Character labeling in Animation using Self-supervision by Tracking
CAST: Character labeling in Animation using Self-supervision by Tracking (Published as a conference paper at EuroGraphics 2022) Note: The CAST paper c
PyTorch implementation for OCT-GAN Neural ODE-based Conditional Tabular GANs (WWW 2021)
OCT-GAN: Neural ODE-based Conditional Tabular GANs (OCT-GAN) Code for reproducing the experiments in the paper: Jayoung Kim*, Jinsung Jeon*, Jaehoon L
A (PyTorch) imbalanced dataset sampler for oversampling low frequent classes and undersampling high frequent ones.
Imbalanced Dataset Sampler Introduction In many machine learning applications, we often come across datasets where some types of data may be seen more
The code release of paper Low-Light Image Enhancement with Normalizing Flow
[AAAI 2022] Low-Light Image Enhancement with Normalizing Flow Paper | Project Page Low-Light Image Enhancement with Normalizing Flow Yufei Wang, Renji
GAN JAX - A toy project to generate images from GANs with JAX
GAN JAX - A toy project to generate images from GANs with JAX This project aims to bring the power of JAX, a Python framework developped by Google and
AWS documentation corpus for zero-shot open-book question answering.
aws-documentation We present the AWS documentation corpus, an open-book QA dataset, which contains 25,175 documents along with 100 matched questions a
Semi-supervised learning for object detection
Source code for STAC: A Simple Semi-Supervised Learning Framework for Object Detection STAC is a simple yet effective SSL framework for visual object
This project aims at providing a concise, easy-to-use, modifiable reference implementation for semantic segmentation models using PyTorch.
Semantic Segmentation on PyTorch (include FCN, PSPNet, Deeplabv3, Deeplabv3+, DANet, DenseASPP, BiSeNet, EncNet, DUNet, ICNet, ENet, OCNet, CCNet, PSANet, CGNet, ESPNet, LEDNet, DFANet)
This is the official implementation for "Do Transformers Really Perform Bad for Graph Representation?".
Graphormer By Chengxuan Ying, Tianle Cai, Shengjie Luo, Shuxin Zheng*, Guolin Ke, Di He*, Yanming Shen and Tie-Yan Liu. This repo is the official impl
Official implementation of Protected Attribute Suppression System, ICCV 2021
Official implementation of Protected Attribute Suppression System, ICCV 2021
MAg: a simple learning-based patient-level aggregation method for detecting microsatellite instability from whole-slide images
MAg Paper Abstract File structure Dataset prepare Data description How to use MAg? Why not try the MAg_lib! Trained models Experiment and results Some
A custom-designed Spider Robot trained to walk using Deep RL in a PyBullet Simulation
SpiderBot_DeepRL Title: Implementation of Single and Multi-Agent Deep Reinforcement Learning Algorithms for a Walking Spider Robot Authors(s): Arijit
How the Deep Q-learning method works and discuss the new ideas that makes the algorithm work
Deep Q-Learning Recommend papers The first step is to read and understand the method that you will implement. It was first introduced in a 2013 paper
[SDM 2022] Towards Similarity-Aware Time-Series Classification
SimTSC This is the PyTorch implementation of SDM2022 paper Towards Similarity-Aware Time-Series Classification. We propose Similarity-Aware Time-Serie
Classification of ecg datas for disease detection
ecg_classification Classification of ecg datas for disease detection
Aspect-Sentiment-Multiple-Opinion Triplet Extraction (NLPCC 2021)
The code and data for the paper "Aspect-Sentiment-Multiple-Opinion Triplet Extraction" Requirements Python 3.6.8 torch==1.2.0 pytorch-transformers==1.
This is the official PyTorch implementation of the CVPR 2020 paper "TransMoMo: Invariance-Driven Unsupervised Video Motion Retargeting".
TransMoMo: Invariance-Driven Unsupervised Video Motion Retargeting Project Page | YouTube | Paper This is the official PyTorch implementation of the C