MiniHack the Planet: A Sandbox for Open-Ended Reinforcement Learning Research

Related tags

Deep Learningminihack
Overview

MiniHack the Planet: A Sandbox for Open-Ended Reinforcement Learning Research

MiniHack Environments

MiniHack is a sandbox framework for easily designing rich and diverse environments for Reinforcement Learning (RL). Based on the game of NetHack, arguably the hardest grid-based game in the world, MiniHack uses the NetHack Learning Environment (NLE) to communicate with the game and provide a convenient interface for customly created RL testbeds.

MiniHack already comes with a large list of challenging tasks. However, it is primarily built for easily designing new ones. The motivation behind MiniHack is to be able to perform RL experiments in a controlled setting while being able to increasingly scale the complexity of the tasks.

To this end, MiniHack leverages the description files of NetHack. The description files (or des-files) are human-readable specifications of levels: distributions of grid layouts together with monsters, objects on the floor, dungeon features, etc. The des-files can be compiled into binary using the NetHack level compiler, and MiniHack maps them to Gym environments. We refer users to our brief overview, detailed tutorial, or interactive notebook for further information on des-files.

Our documentation will walk you through everything you need to know about MiniHack, step-by-step, including information on how to get started, configure environments or design new ones, train baseline agents, and much more.

Installation

MiniHack is available on pypi and can be installed as follows:

pip install minihack

We advise using a conda environment for this:

conda create -n minihack python=3.8
conda activate minihack
pip install minihack

NOTE: NLE requires cmake>=3.15 to be installed when building the package. Check out here how to install it on MacOS and Ubuntu 18.04. Windows users should use Docker.

NOTE: Baseline agents have separate installation instructions. See here for more details.

Extending MiniHack

If you wish to extend MiniHack, please install the package as follows:

git clone https://github.com/facebookresearch/minihack
cd minihack
pip install -e ".[dev]"
pre-commit install

Docker

We have provided several Dockerfiles for building images with pre-installed MiniHack. Please follow the instructions described here.

Trying out MiniHack

MiniHack uses the popular Gym interface for the interactions between the agent and the environment. A pre-registered MiniHack environment can be used as follows:

import gym
import minihack
env = gym.make("MiniHack-River-v0")
env.reset() # each reset generates a new environment instance
env.step(1)  # move agent '@' north
env.render()

To see the list of all MiniHack environments, run:

python -m minihack.scripts.env_list

The following scripts allow to play MiniHack environments with a keyboard:

# Play the MiniHack in the Terminal as a human
python -m minihack.scripts.play --env MiniHack-River-v0

# Use a random agent
python -m minihack.scripts.play --env MiniHack-River-v0  --mode random

# Play the MiniHack with graphical user interface (gui)
python -m minihack.scripts.play_gui --env MiniHack-River-v0

NOTE: If the package has been properly installed one could run the scripts above with mh-envs, mh-play, and mh-guiplay commands.

Baseline Agents

In order to get started with MiniHack environments, we provide a variety of baselines agent integrations.

TorchBeast

A TorchBeast agent is bundled in minihack.agent.polybeast together with a simple model to provide a starting point for experiments. To install and train this agent, first install torchbeast by following the instructions here, then use the following commands:

pip install ".[polybeast]"
python -m minihack.agent.polybeast.polyhydra env=MiniHack-Room-5x5-v0 total_steps=100000

More information on running our TorchBeast agents, and instructions on how to reproduce the results of the paper, can be found here. The learning curves for all of our polybeast experiments can be accessed in our Weights&Biases repository.

RLlib

An RLlib agent is provided in minihack.agent.rllib, with a similar model to the torchbeast agent. This can be used to try out a variety of different RL algorithms. To install and train an RLlib agent, use the following commands:

pip install ".[rllib]"
python -m minihack.agent.rllib.train algo=dqn env=MiniHack-Room-5x5-v0 total_steps=1000000

More information on running RLlib agents can be found here.

Unsupervised Environment Design

MiniHack also enables research in Unsupervised Environment Design, whereby an adaptive task distribution is learned during training by dynamically adjusting free parameters of the task MDP. Check out the ucl-dark/paired repository for replicating the examples from the paper using the PAIRED.

Citation

If you use MiniHack in your work, please cite:

@inproceedings{samvelyan2021minihack,
  title={MiniHack the Planet: A Sandbox for Open-Ended Reinforcement Learning Research},
  author={Mikayel Samvelyan and Robert Kirk and Vitaly Kurin and Jack Parker-Holder and Minqi Jiang and Eric Hambro and Fabio Petroni and Heinrich Kuttler and Edward Grefenstette and Tim Rockt{\"a}schel},
  booktitle={Thirty-fifth Conference on Neural Information Processing Systems Datasets and Benchmarks Track (Round 1)},
  year={2021},
  url={https://openreview.net/forum?id=skFwlyefkWJ}
}

If you use our example ported environments, please cite the original papers: MiniGrid (see license, bib), Boxoban (see license, bib).

Contributions and Maintenance

We welcome contributions to MiniHack. If you are interested in contributing, please see this document. Our maintenance plan can be found here.

Papers using the MiniHack

Open a pull request to add papers.

Comments
  • Manual pickup multiple items

    Manual pickup multiple items

    ๐Ÿ› Bug

    When autopickup=True the agent will attempt to pickup all the objects at a location. If I set autopickup=False, I can use the Command.PICKUP/, command to pickup the item, but if there are multiple items at that locations nothing happens. I don't see any message or prompt either. If this isn't a bug is there a work around?

    To Reproduce

    Steps to reproduce the behavior:

    1. Set autopickup=False
    2. Spawn two different items at a single spot
    3. Attempt to pickup using Command.PICKUP

    Expected behavior

    Nethack should return a prompt listing the objects available for pickup.

    Environment

    NLE version: 0.7.3
    PyTorch version: 1.10.0+cu113
    Is debug build: No
    CUDA used to build PyTorch: 11.3
    
    OS: Ubuntu 20.04.2 LTS
    GCC version: (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
    CMake version: version 3.21.3
    
    Python version: 3.8
    Is CUDA available: Yes
    CUDA runtime version: Could not collect
    GPU models and configuration: GPU 0: NVIDIA GeForce RTX 3090
    Nvidia driver version: 495.29.05
    cuDNN version: Could not collect
    
    Versions of relevant libraries:
    [pip3] numpy==1.21.2
    [pip3] torch==1.10.0+cu113
    [pip3] torchtext==0.11.0
    [conda] Could not collect
    

    Additional context

    Could be a problem with nle? If this isn't a bug is there a work around?

    bug 
    opened by kolbytn 6
  • [BUG] Error creating environment or running mh-play (Mac OSX 12.6)

    [BUG] Error creating environment or running mh-play (Mac OSX 12.6)

    ๐Ÿ› Bug

    Can't create environment or run play scripts in MacOSX 12.6

    To Reproduce

    Steps to reproduce the behavior:

    1. Install NLE 0.8.1 following workaround at https://github.com/facebookresearch/nle/issues/340
    2. pip install minihack
    3. mh-play leads to error: AttributeError: 'MiniHackRoom5x5Random' object has no attribute 'env'
    4. python -m minihack.scripts.play --env MiniHack-River-v0 --mode random leads to similar error: AttributeError: 'MiniHackRiver' object has no attribute 'env'

    Expected behavior

    Environment created successfully

    Environment

    MiniHack version: 0.1.2 NLE version: 0.8.1+103c667 Gym version: 0.21.0 PyTorch version: N/A Is debug build: N/A CUDA used to build PyTorch: N/A

    OS: Mac OSX 12.6 GCC version: Could not collect CMake version: version 3.24.2

    Python version: 3.8 Is CUDA available: N/A CUDA runtime version: Could not collect GPU models and configuration: Could not collect Nvidia driver version: Could not collect cuDNN version: Could not collect

    Versions of relevant libraries: [pip3] numpy==1.23.3 [conda] Could not collect

    Additional context

    Used workaround for NLE install described here: https://github.com/facebookresearch/nle/issues/340 nle-play works as expected mh-env returns list of environments as expected. Same error encountered with python 3.9 & 3.10, and minihack version 0.1.3 (not tested all combinations)

    bug 
    opened by tmssmith 5
  • #64 issue solved: Fix access from base.py to nethack _vardir

    #64 issue solved: Fix access from base.py to nethack _vardir

    #64 issue solved: Fix access from base.py to nethack _vardir. I tested the modification on my local project. Seem that before this modification the library wasn't able to run because there was an access to self.env._vardir instead of self.nethack._vardir.

    CLA Signed core 
    opened by GeremiaPompei 3
  • [BUG] minihack.scripts.play don't work on Debian 11

    [BUG] minihack.scripts.play don't work on Debian 11

    ๐Ÿ› Bug

    After installing minihack+nle to Debian 11 the following commands work:

    import gym import minihack env = gym.make("MiniHack-River-v0") env.reset() # each reset generates a new environment instance env.step(1) # move agent '@' north env.render()

    But when running

    python3 -m minihack.scripts.play --env MiniHack-River-v0

    The program fails to errors.

    To Reproduce

    Steps to reproduce the behavior:

    1. Install Debian 11. Install minihack+nle (+deps) using pip install/apt-get commands.
    2. python3 -m minihack.scripts.play --env MiniHack-River-v0

    Error messages/traceback:

    Traceback (most recent call last): File "/usr/lib/python3.9/runpy.py", line 197, in _run_module_as_main return _run_code(code, main_globals, None, File "/usr/lib/python3.9/runpy.py", line 87, in _run_code exec(code, run_globals) File "/usr/local/lib/python3.9/dist-packages/minihack/scripts/play.py", line 334, in main() File "/usr/local/lib/python3.9/dist-packages/minihack/scripts/play.py", line 330, in main play(**vars(flags)) File "/usr/local/lib/python3.9/dist-packages/minihack/scripts/play.py", line 123, in play print("Available actions:", env._actions) File "/home/optimus/.local/lib/python3.9/site-packages/gym/core.py", line 235, in getattr raise AttributeError( AttributeError: attempted to get missing private attribute '_actions'

    Expected behavior

    One should be able to play minihack using keyboard commands.

    Environment

    Collecting environment information...

    MiniHack version: 0.1.1 NLE version: 0.7.3 PyTorch version: N/A Is debug build: N/A CUDA used to build PyTorch: N/A

    OS: Debian GNU/Linux 11 (bullseye) GCC version: (Debian 10.2.1-6) 10.2.1 20210110 CMake version: version 3.18.4

    Python version: 3.9 Is CUDA available: N/A CUDA runtime version: Could not collect GPU models and configuration: Could not collect Nvidia driver version: Could not collect cuDNN version: Could not collect

    Versions of relevant libraries: [pip3] msgpack-numpy==0.4.7.1 [pip3] numpy==1.19.5 [conda] Could not collect

    Additional context

    No Anaconda installed.

    bug 
    opened by cslr 3
  • Is it possible to generate pixel images (ideally cropped) in a desired resolution?

    Is it possible to generate pixel images (ideally cropped) in a desired resolution?

    Right now, I use opencv as

    env = gym.make(env, observation_keys=("pixel_crop",), penalty_step=0.0)
    obs_dict, reward, done, info = env.step(action)
    image = cv2.resize(obs_dict['pixel_crop'], dsize=(64, 64), interpolation=cv2.INTER_LINEAR)
    

    I'm wondering if it's possible to avoid this resizing by just directly rendering in the desired resolution.

    enhancement 
    opened by wcarvalho 2
  • [BUG] Broken monster generation from des file

    [BUG] Broken monster generation from des file

    ๐Ÿ› Bug

    I'm trying to generate different levels using des files. It works fine when I'm using just map. But MONSTER brakes env: instead of my map it returns some different random levels

    To Reproduce

    Steps to reproduce the behavior:

    1. Generate env with MONSTER
    2. Try to render it with get_des_file_rendering

    this generates random levels:

    from minihack.tiles.rendering import get_des_file_rendering
    import IPython.display
    def render_des_file(des_file, **kwargs):
        image = get_des_file_rendering(des_file, **kwargs)
        IPython.display.display(image)
    
    des = """
    MAZE: "mylevel", ' '
    FLAGS:premapped
    GEOMETRY:center,center
    
    MAP
    .....
    .....
    L....
    ..L..
    |....
    ENDMAP
    
    STAIR:(4, 4),down
    BRANCH: (0,0,0,0),(1,1,1,1)
    MONSTER:'v',"dust vortex",(0,4)
    """
    render_des_file(des, n_images=2, full_screen=False)
    

    this works ok:

    des = """
    MAZE: "mylevel", ' '
    FLAGS:premapped
    GEOMETRY:center,center
    
    MAP
    .....
    .....
    L....
    ..L..
    |....
    ENDMAP
    
    STAIR:(4, 4),down
    BRANCH: (0,0,0,0),(1,1,1,1)
    """
    render_des_file(des, n_images=2, full_screen=False)
    

    Expected behavior

    Env consists of map described is des file

    Environment

    Collecting environment information... MiniHack version: 0.1.3 NLE version: 0.8.1 Gym version: 0.21.0 PyTorch version: 1.12.0+cu113 Is debug build: No CUDA used to build PyTorch: 11.3

    OS: Ubuntu 18.04.5 LTS GCC version: (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 CMake version: version 3.22.5

    Python version: 3.7 Is CUDA available: Yes CUDA runtime version: Could not collect GPU models and configuration: GPU 0: Tesla T4 Nvidia driver version: 460.32.03 cuDNN version: Probably one of the following: /usr/lib/x86_64-linux-gnu/libcudnn.so.7.6.5 /usr/lib/x86_64-linux-gnu/libcudnn.so.8.0.5 /usr/lib/x86_64-linux-gnu/libcudnn_adv_infer.so.8.0.5 /usr/lib/x86_64-linux-gnu/libcudnn_adv_train.so.8.0.5 /usr/lib/x86_64-linux-gnu/libcudnn_cnn_infer.so.8.0.5 /usr/lib/x86_64-linux-gnu/libcudnn_cnn_train.so.8.0.5 /usr/lib/x86_64-linux-gnu/libcudnn_ops_infer.so.8.0.5 /usr/lib/x86_64-linux-gnu/libcudnn_ops_train.so.8.0.5

    Versions of relevant libraries: [pip3] numpy==1.21.6 [pip3] torch==1.12.0+cu113 [pip3] torchaudio==0.12.0+cu113 [pip3] torchsummary==1.5.1 [pip3] torchtext==0.13.0 [pip3] torchvision==0.13.0+cu113 [conda] Could not collect

    bug 
    opened by salamantos 2
  • [BUG] Inconsistent environment seeding

    [BUG] Inconsistent environment seeding

    ๐Ÿ› Bug

    Seeding doesn't consistently generate the same environment.

    To Reproduce

    Steps to reproduce the behavior:

    1. Run this snippet repeatedly:
    env = gym.make("MiniHack-KeyRoom-Fixed-S5-v0",
        observation_keys=("pixel", "colors", "chars", "glyphs", "tty_chars"),
        seeds=(42, 42, False))
    env.seed(42, 42, False)
    obs = env.reset()
    env.render()
    print(env.get_seeds())
    

    Sometimes this prints

    Hello Agent, welcome to NetHack!  You are a chaotic male human Rogue.           
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                           ----                                     
                                           |..|                                     
                                           +(.|                                     
                                        ----..|                                     
                                        |.....|                                     
                                        |...@.|                                     
                                        -------                                     
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
    Agent the Footpad              St:18/02 Dx:18 Co:13 In:8 Wi:9 Ch:7 Chaotic S:0  
    Dlvl:1 $:0 HP:12(12) Pw:2(2) AC:7 Xp:1/0                                        
    (42, 42, False)
    

    But also occasionally prints (note the printed seeds are (0, 0, False)):

    Hello Agent, welcome to NetHack!  You are a chaotic male human Rogue.           
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                           ----                                     
                                           |@.|                                     
                                           +..|                                     
                                           -..|                                     
                                            ..|                                     
                                            ..|                                     
                                           ----                                     
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
    Agent the Footpad              St:14 Dx:18 Co:14 In:11 Wi:11 Ch:8 Chaotic S:0   
    Dlvl:1 $:0 HP:12(12) Pw:2(2) AC:7 Xp:1/0                                        
    (0, 0, False)
    

    Expected behavior

    Same positions of agent/key, and same seeds being printed by env.get_seeds()

    Environment

    
    MiniHack version: 0.1.3+57ca418
    NLE version: 0.8.1
    Gym version: 0.21.0
    PyTorch version: 1.11.0+cu102
    Is debug build: No
    CUDA used to build PyTorch: 10.2
    
    OS: Ubuntu 20.04.3 LTS
    GCC version: (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
    CMake version: version 3.23.1
    
    Python version: 3.8
    Is CUDA available: Yes
    CUDA runtime version: Could not collect
    GPU models and configuration:
    GPU 0: NVIDIA GeForce RTX 3080
    GPU 1: NVIDIA GeForce RTX 3080
    
    Nvidia driver version: 510.47.03
    cuDNN version: Could not collect
    
    Versions of relevant libraries:
    [pip3] numpy==1.21.6
    [pip3] torch==1.11.0
    [conda] torch                     1.11.0                   pypi_0    pypi
    
    bug 
    opened by jlin816 2
  • [FEATURE] Suggested MiniHack Editor Webpage tweaks

    [FEATURE] Suggested MiniHack Editor Webpage tweaks

    ๐Ÿš€ Feature

    Could we populate the level with a standard level that demonstrates the individual building blocks (like the one used on the readme)? Could we also have a "clear level" button to get to the empty level that is currently shown when calling https://minihack-editor.github.io/

    enhancement 
    opened by rockt 2
  • [BUG] No module named 'minihack.version' when importing

    [BUG] No module named 'minihack.version' when importing

    When installing via pip, you get an bug after importing: "ModuleNotFoundError: No module named 'minihack.version'". This can be resolved by adding a file "version.py" with the correct info to the install directory. (version = '0.1.3+4c398d4' git_version = '4c398d480eac26883104e867280d1d3ddbcb9a20' ).

    bug 
    opened by nesou2 2
  • With it as-is, I get 'can only concatenate list (not tuple) to list'

    With it as-is, I get 'can only concatenate list (not tuple) to list'

    I can't currently run the fb-internal minihack due to this bug. Here's the obvious fix; if there's one that's more suitable, let me know.

    Basically what happened here was that when I switched from the public minihack to the fb internal one, I started getting this concat issue. I'm not 100% sure what changed, but the basic issue is that before, a list was acceptable as inputs to the observation keys, but now it isn't. By casting to the consistent type, both should be acceptable.

    CLA Signed 
    opened by SamNPowers 2
  • [BUG] Minihack does not work with NLE v0.9.0

    [BUG] Minihack does not work with NLE v0.9.0

    ๐Ÿ› Bug

    Minihack does not work with NLE v0.9.0

    To Reproduce

    Follow the Trying Out MiniHack example

    [/usr/local/lib/python3.7/dist-packages/minihack/base.py](https://localhost:8080/#) in _patch_nhdat(self, des_file)
        366         """
        367         if not des_file.endswith(".des"):
    --> 368             fpath = os.path.join(self.env._vardir, "mylevel.des")
        369             # If the des-file is passed as a string
        370             with open(fpath, "w") as f:
    
    AttributeError: 'MiniHackRiver' object has no attribute 'env'
    
    bug 
    opened by ngoodger 1
  • [FEATURE] monobeast baseline implementation

    [FEATURE] monobeast baseline implementation

    ๐Ÿš€ Feature

    current polybeast implementation has most code written in C++, requesting for mnonobeast implementation for more clarity

    Motivation

    readability/flexibility

    Pitch

    monobeast implementation will offfer more readability and flexibility

    Alternatives

    N/A

    Additional context

    N/A

    enhancement 
    opened by Andrewzh112 0
Releases(v0.1.4)
  • v0.1.4(Dec 9, 2022)

    Installing MiniHack

    Install with pip: pip install minihack==0.1.4.

    See README.md for further instructions.

    New in MiniHack v0.1.4

    • MiniHack version 0.1.4 (#67, @samvelyan)
    • Gym issue fix (#58, @samvelyan)
    • pushing the fix for more height in the logo (#49, @Bam4d)
    • [WIP] Bam4d/level editor (#46, @Bam4d)

    ๐Ÿ“ Documentation

    • Deleted level editor site code (#50, @samvelyan)

    ๐Ÿ”จ Maintenance

    • Fixing the seeding issue (#68, @samvelyan)
    • Fixing the NetHack variable renaming and _underscore access recently introduced in NLE==0.9.0 (#66, @samvelyan)

    ๐ŸŽก Environment

    • Fixing the NetHack variable renaming and _underscore access recently introduced in NLE==0.9.0 (#66, @samvelyan)
    • Fix forced actions (#55, @ian-cannon)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.3(Mar 14, 2022)

    Installing MiniHack

    Install with pip: pip install minihack==0.1.3.

    See README.md for further instructions.

    New in MiniHack v0.1.3

    ๐Ÿ“ Documentation

    • MiniHack Environment Zoo (#38, @samvelyan)

    ๐Ÿ”จ Maintenance

    • A flag for including pet to the game (#40, @samvelyan)

    ๐ŸŽก Environment

    • Turned autopickup off for ExploreMaze envs (#45, @samvelyan)
    • Fixing boxoban level data path (#42, @samvelyan)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.2(Nov 30, 2021)

    Installing MiniHack

    Install with pip: pip install minihack==0.1.2.

    See README.md for further instructions.

    New in MiniHack v0.1.2

    • Cached Environment Wrapper (#33, @samvelyan)
    • Printing the gym version in the collect_env script (#30, @samvelyan)
    • Update README.md (#24, @samvelyan)
    • Updating the PR labeler and Release Drafter (#23, @samvelyan)

    ๐Ÿ“ Documentation

    • Fixes to the documentation (#37, @samvelyan)
    • Updating docs (#25, @samvelyan)
    • Fixed Typo (#22, @mohamadmansourX)

    ๐Ÿ”จ Maintenance

    • Bump the MiniHack and NLE versions (#36, @samvelyan)
    • Supporting gym version 0.21.0 (#31, @samvelyan)

    ๐ŸŽก Environment

    • Fixing seeding in MiniGrid (#34, @samvelyan)
    • Supporting gym version 0.21.0 (#31, @samvelyan)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.1(Sep 30, 2021)

    Installing MiniHack

    Install with pip: pip install minihack==0.1.1.

    See README.md for further instructions.

    New in MiniHack v0.1.1

    • Added a workflow for testing and pushing the releases to PyPI (#21, @samvelyan)
    • Importing Pillow whenever needed. (#20, @samvelyan)
    • Release drafter GitHub workflow (#19, @samvelyan)
    • Being able to save gifs when evaluating pre-trained agents (#18, @samvelyan)
    • Updating README (#16, @samvelyan)
    • Update MANIFEST.in (#15, @samvelyan)

    ๐Ÿ“ Documentation

    • Updating REAMDE (#17, @samvelyan)
    Source code(tar.gz)
    Source code(zip)
Owner
Facebook Research
Facebook Research
An official PyTorch Implementation of Boundary-aware Self-supervised Learning for Video Scene Segmentation (BaSSL)

An official PyTorch Implementation of Boundary-aware Self-supervised Learning for Video Scene Segmentation (BaSSL)

Kakao Brain 72 Dec 28, 2022
Prefix-Tuning: Optimizing Continuous Prompts for Generation

Prefix Tuning Files: . โ”œโ”€โ”€ gpt2 # Code for GPT2 style autoregressive LM โ”‚ โ”œโ”€โ”€ train_e2e.py # high-level script

530 Jan 04, 2023
Improving Factual Completeness and Consistency of Image-to-text Radiology Report Generation

Improving Factual Completeness and Consistency of Image-to-text Radiology Report Generation The reference code of Improving Factual Completeness and C

46 Dec 15, 2022
All the essential resources and template code needed to understand and practice data structures and algorithms in python with few small projects to demonstrate their practical application.

Data Structures and Algorithms Python INDEX 1. Resources - Books Data Structures - Reema Thareja competitiveCoding Big-O Cheat Sheet DAA Syllabus Inte

Shushrut Kumar 129 Dec 15, 2022
Boundary IoU API (Beta version)

Boundary IoU API (Beta version) Bowen Cheng, Ross Girshick, Piotr Dollรกr, Alexander C. Berg, Alexander Kirillov [arXiv] [Project] [BibTeX] This API is

Bowen Cheng 177 Dec 29, 2022
ElasticFace: Elastic Margin Loss for Deep Face Recognition

This is the official repository of the paper: ElasticFace: Elastic Margin Loss for Deep Face Recognition Paper on arxiv: arxiv Model Log file Pretrain

Fadi Boutros 113 Dec 14, 2022
Quantized models with python

quantized-network download .pth files to qmodels/: googlenet : https://download.

adreamxcj 2 Dec 28, 2021
An open-source project for applying deep learning to medical scenarios

Auto Vaidya An open source solution for creating end-end web app for employing the power of deep learning in various clinical scenarios like implant d

Smaranjit Ghose 18 May 29, 2022
A lightweight tool to get an AI Infrastructure Stack up in minutes not days.

K3ai will take care of setup K8s for You, deploy the AI tool of your choice and even run your code on it.

k3ai 105 Dec 04, 2022
Focal Loss for Dense Rotation Object Detection

Convert ResNets weights from GluonCV to Tensorflow Abstract GluonCV released some new resnet pre-training weights and designed some new resnets (such

17 Nov 24, 2021
NIMA: Neural IMage Assessment

PyTorch NIMA: Neural IMage Assessment PyTorch implementation of Neural IMage Assessment by Hossein Talebi and Peyman Milanfar. You can learn more from

Kyryl Truskovskyi 293 Dec 30, 2022
PyTorch version of the paper 'Enhanced Deep Residual Networks for Single Image Super-Resolution' (CVPRW 2017)

About PyTorch 1.2.0 Now the master branch supports PyTorch 1.2.0 by default. Due to the serious version problem (especially torch.utils.data.dataloade

Sanghyun Son 2.1k Dec 27, 2022
Consensus score for tripadvisor

ContripScore ContripScore is essentially a score that combines an Internet platform rating and a consensus rating from sentiment analysis (For instanc

Pepe 1 Jan 13, 2022
Neural-fractal - Create Fractals Using Complex-Valued Neural Networks!

Neural Fractal Create Fractals Using Complex-Valued Neural Networks! Home Page Features Define Dynamical Systems Using Complex-Valued Neural Networks

Amirabbas Asadi 10 Dec 17, 2022
Accompanying code for the paper "A Kernel Test for Causal Association via Noise Contrastive Backdoor Adjustment".

#backdoor-HSIC (bd_HSIC) Accompanying code for the paper "A Kernel Test for Causal Association via Noise Contrastive Backdoor Adjustment". To generate

Robert Hu 0 Nov 25, 2021
deep-table implements various state-of-the-art deep learning and self-supervised learning algorithms for tabular data using PyTorch.

deep-table implements various state-of-the-art deep learning and self-supervised learning algorithms for tabular data using PyTorch.

63 Oct 17, 2022
aka "Bayesian Methods for Hackers": An introduction to Bayesian methods + probabilistic programming with a computation/understanding-first, mathematics-second point of view. All in pure Python ;)

Bayesian Methods for Hackers Using Python and PyMC The Bayesian method is the natural approach to inference, yet it is hidden from readers behind chap

Cameron Davidson-Pilon 25.1k Jan 02, 2023
FG-transformer-TTS Fine-grained style control in transformer-based text-to-speech synthesis

LST-TTS Official implementation for the paper Fine-grained style control in transformer-based text-to-speech synthesis. Submitted to ICASSP 2022. Audi

Li-Wei Chen 64 Dec 30, 2022
The source code and dataset for the RecGURU paper (WSDM 2022)

RecGURU About The Project Source code and baselines for the RecGURU paper "RecGURU: Adversarial Learning of Generalized User Representations for Cross

Chenglin Li 17 Jan 07, 2023
ATAC: Adversarially Trained Actor Critic

ATAC: Adversarially Trained Actor Critic Adversarially Trained Actor Critic for Offline Reinforcement Learning by Ching-An Cheng*, Tengyang Xie*, Nan

Microsoft 41 Dec 08, 2022