Dealing With Misspecification In Fixed-Confidence Linear Top-m Identification

Overview

Dealing With Misspecification In Fixed-Confidence Linear Top-m Identification

This repository is the official implementation of [Dealing With Misspecification In Fixed-Confidence Linear Top-m Identification] (to appear in the proceedings of NIPS'21).

Requirements

To install requirements (Python 3.6.9):

python3 -m pip install -r requirements.txt

Getting started

Reproduce results from the paper

In order to run ExperimentXXX in the paper, do as follows

  • Run command
cd experiments_scripts/
./ExperimentXXX.sh
  • That starts the computation, when it is done, the following files are present in the results/ folder

    • ExperimentXXX/method=[algorithm]_[list of options = values].csv

      Contains a matrix of 3 columns ("complexity": number of sampled arms, "regret": error in identification, "linearity": 1 if the algorithm considers data as linear, 0 otherwise, "running time": time in seconds for running the iteration) and XXX rows (controlled by parameter n_simu in the command) corresponding to each iteration of the algorithm.

    • ExperimentXXX/method=[algorithm]_[list of options = values]-emp_rec.csv

      Contains a matrix of XXX columns (number of arms in the experiment, controlled by parameter K in the command), and two rows, first row being the names of the arms, and the second one being the percentage of the time a given arm was returned in the set of good arms across iterations.

    • ExperimentXXX/params.json

      Saves in a JSON file the parameters set in the call to the code.

  • PNG file ExperimentXXX/boxplot.png is created in folder boxplots/

You can only run the code to plot the boxplot from a previously run ExperimentXXX

  • Run command
cd experiments_scripts
./ExperimentXXX.sh boxplot

ExperimentXXX won't be run, but if the corresponding results folder is present, then it creates the boxplot in folder boxplots/ExperimentXXX

Run

Have a look at file code/main.py to see the arguments needed.

Add new elements of code

  • Add a new bandit by creating a new instance of class Misspecified in file code/misspecified.py
  • Add a new dataset by adding a few lines of code to file code/data.py
  • Add new types of rewards by creating a new instance of class problem in file code/problems.py
  • Add new types of online learners by creating a new instance of class Learner in file code/learners.py

Results

Please refer to the paper.

Contributing

All of the code is under MIT license. Everyone is most welcome to submit pull requests.

Implementation of "Deep Implicit Templates for 3D Shape Representation"

Deep Implicit Templates for 3D Shape Representation Zerong Zheng, Tao Yu, Qionghai Dai, Yebin Liu. arXiv 2020. This repository is an implementation fo

Zerong Zheng 144 Dec 07, 2022
[CVPR 2022 Oral] Versatile Multi-Modal Pre-Training for Human-Centric Perception

Versatile Multi-Modal Pre-Training for Human-Centric Perception Fangzhou Hong1  Liang Pan1  Zhongang Cai1,2,3  Ziwei Liu1* 1S-Lab, Nanyang Technologic

Fangzhou Hong 96 Jan 03, 2023
Official implementation of SIGIR'2021 paper: "Sequential Recommendation with Graph Neural Networks".

SURGE: Sequential Recommendation with Graph Neural Networks This is our TensorFlow implementation for the paper: Sequential Recommendation with Graph

FIB LAB, Tsinghua University 53 Dec 26, 2022
Official pytorch code for SSC-GAN: Semi-Supervised Single-Stage Controllable GANs for Conditional Fine-Grained Image Generation(ICCV 2021)

SSC-GAN_repo Pytorch implementation for 'Semi-Supervised Single-Stage Controllable GANs for Conditional Fine-Grained Image Generation'.PDF SSC-GAN:Sem

tyty 4 Aug 28, 2022
CLDF dataset derived from Robbeets et al.'s "Triangulation Supports Agricultural Spread" from 2021

CLDF dataset derived from Robbeets et al.'s "Triangulation Supports Agricultural Spread" from 2021 How to cite If you use these data please cite the o

Digital Linguistics 2 Dec 20, 2021
Learning Continuous Image Representation with Local Implicit Image Function

LIIF This repository contains the official implementation for LIIF introduced in the following paper: Learning Continuous Image Representation with Lo

Yinbo Chen 1k Dec 25, 2022
Tensors and Dynamic neural networks in Python with strong GPU acceleration

PyTorch is a Python package that provides two high-level features: Tensor computation (like NumPy) with strong GPU acceleration Deep neural networks b

61.4k Jan 04, 2023
Nicholas Lee 3 Jan 09, 2022
Deep Learning as a Cloud API Service.

Deep API Deep Learning as Cloud APIs. This project provides pre-trained deep learning models as a cloud API service. A web interface is available as w

Wu Han 4 Jan 06, 2023
Package to compute Mauve, a similarity score between neural text and human text. Install with `pip install mauve-text`.

MAUVE MAUVE is a library built on PyTorch and HuggingFace Transformers to measure the gap between neural text and human text with the eponymous MAUVE

Krishna Pillutla 182 Jan 02, 2023
Public Code for NIPS submission SimiGrad: Fine-Grained Adaptive Batching for Large ScaleTraining using Gradient Similarity Measurement

Public code for NIPS submission "SimiGrad: Fine-Grained Adaptive Batching for Large Scale Training using Gradient Similarity Measurement" This repo co

Heyang Qin 0 Oct 13, 2021
Survival analysis in Python

What is survival analysis and why should I learn it? Survival analysis was originally developed and applied heavily by the actuarial and medical commu

Cameron Davidson-Pilon 2k Jan 08, 2023
A higher performance pytorch implementation of DeepLab V3 Plus(DeepLab v3+)

A Higher Performance Pytorch Implementation of DeepLab V3 Plus Introduction This repo is an (re-)implementation of Encoder-Decoder with Atrous Separab

linhua 326 Nov 22, 2022
Self-supervised learning (SSL) is a method of machine learning

Self-supervised learning (SSL) is a method of machine learning. It learns from unlabeled sample data. It can be regarded as an intermediate form between supervised and unsupervised learning.

Ashish Patel 4 May 26, 2022
A generalist algorithm for cell and nucleus segmentation.

Cellpose | A generalist algorithm for cell and nucleus segmentation. Cellpose was written by Carsen Stringer and Marius Pachitariu. To learn about Cel

MouseLand 733 Dec 29, 2022
This code provides a PyTorch implementation for OTTER (Optimal Transport distillation for Efficient zero-shot Recognition), as described in the paper.

Data Efficient Language-Supervised Zero-Shot Recognition with Optimal Transport Distillation This repository contains PyTorch evaluation code, trainin

Meta Research 45 Dec 20, 2022
ByteTrack: Multi-Object Tracking by Associating Every Detection Box

ByteTrack ByteTrack is a simple, fast and strong multi-object tracker. ByteTrack: Multi-Object Tracking by Associating Every Detection Box Yifu Zhang,

Yifu Zhang 2.9k Jan 04, 2023
FFTNet vocoder implementation

Unofficial Implementation of FFTNet vocode paper. implement the model. implement tests. overfit on a single batch (sanity check). linearize weights fo

Eren Gölge 81 Dec 08, 2022
An unofficial styleguide and best practices summary for PyTorch

A PyTorch Tools, best practices & Styleguide This is not an official style guide for PyTorch. This document summarizes best practices from more than a

IgorSusmelj 1.5k Jan 05, 2023
PyElastica is the Python implementation of Elastica, an open-source software for the simulation of assemblies of slender, one-dimensional structures using Cosserat Rod theory.

PyElastica PyElastica is the python implementation of Elastica: an open-source project for simulating assemblies of slender, one-dimensional structure

Gazzola Lab 105 Jan 09, 2023