GPU-Accelerated Deep Learning Library in Python

Related tags

Deep Learninghebel
Overview

Hebel

GPU-Accelerated Deep Learning Library in Python

Hebel is a library for deep learning with neural networks in Python using GPU acceleration with CUDA through PyCUDA. It implements the most important types of neural network models and offers a variety of different activation functions and training methods such as momentum, Nesterov momentum, dropout, and early stopping.

I no longer actively develop Hebel. If you are looking for a deep learning framework in Python, I now recommend Chainer.

Models

Right now, Hebel implements feed-forward neural networks for classification and regression on one or multiple tasks. Other models such as Autoencoder, Convolutional neural nets, and Restricted Boltzman machines are planned for the future.

Hebel implements dropout as well as L1 and L2 weight decay for regularization.

Optimization

Hebel implements stochastic gradient descent (SGD) with regular and Nesterov momentum.

Compatibility

Currently, Hebel will run on Linux and Windows, and probably Mac OS X (not tested).

Dependencies

  • PyCUDA
  • numpy
  • PyYAML
  • skdata (only for MNIST example)

Installation

Hebel is on PyPi, so you can install it with

pip install hebel

Getting started

Study the yaml configuration files in examples/ and run

python train_model.py examples/mnist_neural_net_shallow.yml

The script will create a directory in examples/mnist where the models and logs are saved.

Read the Getting started guide at hebel.readthedocs.org/en/latest/getting_started.html for more information.

Documentation

hebel.readthedocs.org

Contact

Maintained by Hannes Bretschneider ([email protected]). If your are using Hebel, please let me know whether you find it useful and file a Github issue if you find any bugs or have feature requests.

Citing

http://dx.doi.org/10.5281/zenodo.10050

If you make use of Hebel in your research, please cite it. The BibTeX reference is

@article{Bretschneider:10050,
  author        = "Hannes Bretschneider",
  title         = "{Hebel - GPU-Accelerated Deep Learning Library in Python}",
  month         = "May",
  year          = "2014",
  doi           = "10.5281/zenodo.10050",
  url           = "https://zenodo.org/record/10050",
}

What's with the name?

Hebel is the German word for lever, one of the oldest tools that humans use. As Archimedes said it: "Give me a lever long enough and a fulcrum on which to place it, and I shall move the world."

Comments
  • Contributing PyCUDA routines

    Contributing PyCUDA routines

    Heya

    I stumbled across this project looking for some PyCUDA routines that operate on matrices per-row or per-column. It seems you have a bunch of handy routines for this, which is awesome, e.g. row-wise maximum, add_vec_to_mat etc.

    Would you be willing to contribute them back to PyCUDA? a lot of these routines seem like they'd definitely be useful more widely. And perhaps offering the contribution might give the PyCUDA guys some inspiration or a kick in the arse to create a more general partial reductions API (like numpy's axis=0 arguments) and broadcasting behaviour for element-wise operations on GPUArrays? (I would attempt this myself but my CUDA-fu is weak)

    Just a thought anyway. I would suggest it to them myself but the licencing is different (GPL vs MIT)

    Cheers!

    opened by mjwillson 6
  • [WIP][HEP3] Implement convolution for DNA sequence

    [WIP][HEP3] Implement convolution for DNA sequence

    I am merging my code for training conv-nets from DNA sequence into Hebel. This should be done by the end of January 2015. Please follow this issue if you are interested in using Hebel for learning from DNA sequence or would like to test it.

    Hebel Enhancement Proposal 
    opened by hannes-brt 3
  • Compiling issues with MacOSX

    Compiling issues with MacOSX

    I am trying to compile in Mac OSX yosemite and it seems hebel is not running. i installed PyCUDA and other libraries needed but stuck at this error.

    $ python hebel_test.py Traceback (most recent call last): File "hebel_test.py", line 18, in hebel.init(0) File "/Users/prabhubalakrishnan/Desktop/hebel/hebel/init.py", line 131, in init from pycuda import gpuarray, driver, curandom File "/Library/Python/2.7/site-packages/pycuda-2014.1-py2.7-macosx-10.10-intel.egg/pycuda/gpuarray.py", line 3, in import pycuda.elementwise as elementwise File "/Library/Python/2.7/site-packages/pycuda-2014.1-py2.7-macosx-10.10-intel.egg/pycuda/elementwise.py", line 34, in from pytools import memoize_method File "/Library/Python/2.7/site-packages/pytools-2014.3.5-py2.7.egg/pytools/init.py", line 5, in from six.moves import range, zip, intern, input ImportError: cannot import name intern

    How to fix?

    opened by olddocks 3
  • Global name 'hidden_inputs' is not defined

    Global name 'hidden_inputs' is not defined

    When running optimizer.run(100), an error occurred: global name 'hidden_inputs' is not defined in line 323 of ./hebel/hebel/models/neurals_net.py

    Where to define the global variable 'hidden_inputs'? Thanks!

    opened by Robert0812 3
  • AttributeError: python: undefined symbol: cuPointerGetAttribute

    AttributeError: python: undefined symbol: cuPointerGetAttribute

    [email protected]:~/github/hebel$ echo $LD_LIBRARY_PATH /usr/local/cuda:/usr/local/cuda/bin:/usr/local/cuda/lib64:/home/ubgpu/torch/install/lib:/home/ubgpu/torch/install/lib [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ python train_model.py examples/mnist_neural_net_shallow.yml Traceback (most recent call last): File "train_model.py", line 39, in run_from_config(yaml_src) File "/home/ubgpu/github/hebel/hebel/config.py", line 41, in run_from_config config = load(yaml_src) File "/home/ubgpu/github/hebel/hebel/config.py", line 92, in load proxy_graph = yaml.load(string, **kwargs) File "/usr/local/lib/python2.7/dist-packages/yaml/init.py", line 71, in load return loader.get_single_data() File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 39, in get_single_data return self.construct_document(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 48, in construct_document for dummy in generator: File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 398, in construct_yaml_map value = self.construct_mapping(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 208, in construct_mapping return BaseConstructor.construct_mapping(self, node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 133, in construct_mapping value = self.construct_object(value_node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 90, in construct_object data = constructor(self, tag_suffix, node) File "/home/ubgpu/github/hebel/hebel/config.py", line 318, in multi_constructor mapping = loader.construct_mapping(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 208, in construct_mapping return BaseConstructor.construct_mapping(self, node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 133, in construct_mapping value = self.construct_object(value_node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 90, in construct_object data = constructor(self, tag_suffix, node) File "/home/ubgpu/github/hebel/hebel/config.py", line 318, in multi_constructor mapping = loader.construct_mapping(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 208, in construct_mapping return BaseConstructor.construct_mapping(self, node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 133, in construct_mapping value = self.construct_object(value_node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 90, in construct_object data = constructor(self, tag_suffix, node) File "/home/ubgpu/github/hebel/hebel/config.py", line 323, in multi_constructor classname = try_to_import(tag_suffix) File "/home/ubgpu/github/hebel/hebel/config.py", line 251, in try_to_import exec('import %s' % modulename) File "", line 1, in File "/home/ubgpu/github/hebel/hebel/layers/init.py", line 17, in from .dummy_layer import DummyLayer File "/home/ubgpu/github/hebel/hebel/layers/dummy_layer.py", line 17, in from .hidden_layer import HiddenLayer File "/home/ubgpu/github/hebel/hebel/layers/hidden_layer.py", line 25, in from ..pycuda_ops import linalg File "/home/ubgpu/github/hebel/hebel/pycuda_ops/linalg.py", line 32, in from . import cublas File "/home/ubgpu/github/hebel/hebel/pycuda_ops/cublas.py", line 47, in import cuda File "/home/ubgpu/github/hebel/hebel/pycuda_ops/cuda.py", line 36, in from cudadrv import * File "/home/ubgpu/github/hebel/hebel/pycuda_ops/cudadrv.py", line 233, in _libcuda.cuPointerGetAttribute.restype = int File "/usr/lib/python2.7/ctypes/init.py", line 378, in getattr func = self.getitem(name) File "/usr/lib/python2.7/ctypes/init.py", line 383, in getitem func = self._FuncPtr((name_or_ordinal, self)) AttributeError: python: undefined symbol: cuPointerGetAttribute [email protected]:~/github/hebel$

    opened by andyyuan78 2
  • OSError: CUDA runtime library not found

    OSError: CUDA runtime library not found

    [email protected]:~/github/hebel$ sudo pip install pyCUDA Requirement already satisfied (use --upgrade to upgrade): pyCUDA in /usr/local/lib/python2.7/dist-packages Requirement already satisfied (use --upgrade to upgrade): decorator>=3.2.0 in /usr/local/lib/python2.7/dist-packages (from pyCUDA) Requirement already satisfied (use --upgrade to upgrade): pytools>=2011.2 in /usr/local/lib/python2.7/dist-packages (from pyCUDA) Requirement already satisfied (use --upgrade to upgrade): pytest>=2 in /usr/local/lib/python2.7/dist-packages (from pyCUDA) Requirement already satisfied (use --upgrade to upgrade): appdirs>=1.4.0 in /usr/local/lib/python2.7/dist-packages (from pytools>=2011.2->pyCUDA) Requirement already satisfied (use --upgrade to upgrade): six in /usr/local/lib/python2.7/dist-packages (from pytools>=2011.2->pyCUDA) Requirement already satisfied (use --upgrade to upgrade): py>=1.4.25 in /usr/local/lib/python2.7/dist-packages (from pytest>=2->pyCUDA) [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ python Python 2.7.6 (default, Mar 22 2014, 22:59:56) [GCC 4.8.2] on linux2 Type "help", "copyright", "credits" or "license" for more information.

    quit() [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ sudo pip install PyCUDA Requirement already satisfied (use --upgrade to upgrade): PyCUDA in /usr/local/lib/python2.7/dist-packages Requirement already satisfied (use --upgrade to upgrade): decorator>=3.2.0 in /usr/local/lib/python2.7/dist-packages (from PyCUDA) Requirement already satisfied (use --upgrade to upgrade): pytools>=2011.2 in /usr/local/lib/python2.7/dist-packages (from PyCUDA) Requirement already satisfied (use --upgrade to upgrade): pytest>=2 in /usr/local/lib/python2.7/dist-packages (from PyCUDA) Requirement already satisfied (use --upgrade to upgrade): appdirs>=1.4.0 in /usr/local/lib/python2.7/dist-packages (from pytools>=2011.2->PyCUDA) Requirement already satisfied (use --upgrade to upgrade): six in /usr/local/lib/python2.7/dist-packages (from pytools>=2011.2->PyCUDA) Requirement already satisfied (use --upgrade to upgrade): py>=1.4.25 in /usr/local/lib/python2.7/dist-packages (from pytest>=2->PyCUDA) [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ echo $PYTHONPATH /usr/local/lib/python2.7/dist-packages [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ [email protected]:~/github/hebel$ python train_model.py examples/mnist_neural_net_shallow.yml Traceback (most recent call last): File "train_model.py", line 39, in run_from_config(yaml_src) File "/home/ubgpu/github/hebel/hebel/config.py", line 41, in run_from_config config = load(yaml_src) File "/home/ubgpu/github/hebel/hebel/config.py", line 92, in load proxy_graph = yaml.load(string, **kwargs) File "/usr/local/lib/python2.7/dist-packages/yaml/init.py", line 71, in load return loader.get_single_data() File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 39, in get_single_data return self.construct_document(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 48, in construct_document for dummy in generator: File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 398, in construct_yaml_map value = self.construct_mapping(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 208, in construct_mapping return BaseConstructor.construct_mapping(self, node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 133, in construct_mapping value = self.construct_object(value_node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 90, in construct_object data = constructor(self, tag_suffix, node) File "/home/ubgpu/github/hebel/hebel/config.py", line 318, in multi_constructor mapping = loader.construct_mapping(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 208, in construct_mapping return BaseConstructor.construct_mapping(self, node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 133, in construct_mapping value = self.construct_object(value_node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 90, in construct_object data = constructor(self, tag_suffix, node) File "/home/ubgpu/github/hebel/hebel/config.py", line 318, in multi_constructor mapping = loader.construct_mapping(node) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 208, in construct_mapping return BaseConstructor.construct_mapping(self, node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 133, in construct_mapping value = self.construct_object(value_node, deep=deep) File "/usr/local/lib/python2.7/dist-packages/yaml/constructor.py", line 90, in construct_object data = constructor(self, tag_suffix, node) File "/home/ubgpu/github/hebel/hebel/config.py", line 323, in multi_constructor classname = try_to_import(tag_suffix) File "/home/ubgpu/github/hebel/hebel/config.py", line 251, in try_to_import exec('import %s' % modulename) File "", line 1, in File "/home/ubgpu/github/hebel/hebel/layers/init.py", line 17, in from .dummy_layer import DummyLayer File "/home/ubgpu/github/hebel/hebel/layers/dummy_layer.py", line 17, in from .hidden_layer import HiddenLayer File "/home/ubgpu/github/hebel/hebel/layers/hidden_layer.py", line 25, in from ..pycuda_ops import linalg File "/home/ubgpu/github/hebel/hebel/pycuda_ops/linalg.py", line 32, in from . import cublas File "/home/ubgpu/github/hebel/hebel/pycuda_ops/cublas.py", line 47, in import cuda File "/home/ubgpu/github/hebel/hebel/pycuda_ops/cuda.py", line 35, in from cudart import * File "/home/ubgpu/github/hebel/hebel/pycuda_ops/cudart.py", line 60, in raise OSError('CUDA runtime library not found') OSError: CUDA runtime library not found

    opened by andyyuan78 1
  • AttributeError: 'NoneType' object has no attribute 'cudaGetErrorString'

    AttributeError: 'NoneType' object has no attribute 'cudaGetErrorString'

    at commit a7f4cbb91c029c344921db76850bf9dc8eb47af4 with python 2.7.6 I try: 'python train_model.py examples/mnist_neural_net_shallow.yml' And i get the following

    Traceback (most recent call last):
      File "train_model.py", line 39, in <module>
        run_from_config(yaml_src)
      File "/Users/epic/Documents/git/hebel/hebel/config.py", line 41, in run_from_config
        config = load(yaml_src)
      File "/Users/epic/Documents/git/hebel/hebel/config.py", line 92, in load
        proxy_graph = yaml.load(string, **kwargs)
      File "/usr/local/lib/python2.7/site-packages/yaml/__init__.py", line 71, in load
        return loader.get_single_data()
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 39, in get_single_data
        return self.construct_document(node)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 48, in construct_document
        for dummy in generator:
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 398, in construct_yaml_map
        value = self.construct_mapping(node)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 208, in construct_mapping
        return BaseConstructor.construct_mapping(self, node, deep=deep)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 133, in construct_mapping
        value = self.construct_object(value_node, deep=deep)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 90, in construct_object
        data = constructor(self, tag_suffix, node)
      File "/Users/epic/Documents/git/hebel/hebel/config.py", line 318, in multi_constructor
        mapping = loader.construct_mapping(node)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 208, in construct_mapping
        return BaseConstructor.construct_mapping(self, node, deep=deep)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 133, in construct_mapping
        value = self.construct_object(value_node, deep=deep)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 90, in construct_object
        data = constructor(self, tag_suffix, node)
      File "/Users/epic/Documents/git/hebel/hebel/config.py", line 318, in multi_constructor
        mapping = loader.construct_mapping(node)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 208, in construct_mapping
        return BaseConstructor.construct_mapping(self, node, deep=deep)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 133, in construct_mapping
        value = self.construct_object(value_node, deep=deep)
      File "/usr/local/lib/python2.7/site-packages/yaml/constructor.py", line 90, in construct_object
        data = constructor(self, tag_suffix, node)
      File "/Users/epic/Documents/git/hebel/hebel/config.py", line 323, in multi_constructor
        classname = try_to_import(tag_suffix)
      File "/Users/epic/Documents/git/hebel/hebel/config.py", line 251, in try_to_import
        exec('import %s' % modulename)
      File "<string>", line 1, in <module>
      File "/Users/epic/Documents/git/hebel/hebel/layers/__init__.py", line 17, in <module>
        from .dummy_layer import DummyLayer
      File "/Users/epic/Documents/git/hebel/hebel/layers/dummy_layer.py", line 17, in <module>
        from .hidden_layer import HiddenLayer
      File "/Users/epic/Documents/git/hebel/hebel/layers/hidden_layer.py", line 25, in <module>
        from ..pycuda_ops import linalg
      File "/Users/epic/Documents/git/hebel/hebel/pycuda_ops/linalg.py", line 32, in <module>
        from . import cublas
      File "/Users/epic/Documents/git/hebel/hebel/pycuda_ops/cublas.py", line 47, in <module>
        import cuda
      File "/Users/epic/Documents/git/hebel/hebel/pycuda_ops/cuda.py", line 35, in <module>
        from cudart import *
      File "/Users/epic/Documents/git/hebel/hebel/pycuda_ops/cudart.py", line 142, in <module>
        _libcudart.cudaGetErrorString.restype = ctypes.c_char_p
    AttributeError: 'NoneType' object has no attribute 'cudaGetErrorString'
    
    opened by epichub 1
  • Report a tiny bug in running example script

    Report a tiny bug in running example script

    Example script data_providers.py imports skdata by
    from skdata.mnist.view import OfficialVectorClassification

    It should be skdata.mnist.views, otherwise errors occur.

    opened by Robert0812 1
  • Missing packages added.

    Missing packages added.

    It's not enough to specify root package (i.e. hebel) in packages argument of setup.py. In order to successfully install hebel, subpackages must be listed as well.

    opened by mnowotka 0
  • docs: fix simple typo, initalized -> initialized

    docs: fix simple typo, initalized -> initialized

    There is a small typo in hebel/layers/hidden_layer.py, hebel/layers/linear_regression_layer.py, hebel/layers/logistic_layer.py, hebel/layers/softmax_layer.py.

    Should read initialized rather than initalized.

    Semi-automated pull request generated by https://github.com/timgates42/meticulous/blob/master/docs/NOTE.md

    opened by timgates42 0
  • Small documentation enhancement request

    Small documentation enhancement request

    Hi there, I really appreciate Hebel. It was a good first step for me to "take the plunge" into using GPU.

    I struggled a bit after going through the example (MNIST) script. In particular, it wasn't clear how to have the model predict new data (i.e., data you don't have targets for).

    The first (small) stumble was what to with the DataProvider. I just put in dummy zero targets. Perhaps targets could be an optional field somehow?

    A more thorny issue was how to actually do the predictions. I couldn't for the life of me figure out how to feed the DataProvider data into the feed_forward without getting the error:

      File "/usr/local/lib/python2.7/dist-packages/hebel/models/neural_net.py", line 422, in feed_forward
        prediction=prediction))
      File "/usr/local/lib/python2.7/dist-packages/hebel/layers/input_dropout.py", line 96, in feed_forward
        return (input_data * (1 - self.dropout_probability),)
    TypeError: unsupported operand type(s) for *: 'MiniBatchDataProvider' and 'float'
    

    This was my original attempt:

    # After loading in the data . . .
    Xv = Xv.astype(np.float32)
    yv = pd.get_dummies(yv).values.astype(np.float32)
    valid_data = MiniBatchDataProvider(Xv, yv, batch_size=5000)
    

    I finally resorted to useing a gpu array which worked:

    from pycuda import gpuarray
    valid_data = gpuarray.to_gpu(Xt)
    y_pred = model.feed_forward(valid_data, return_cache=False, prediction=True).get()
    

    The .get() at the end of the last statement was also something I had to figure out going through code.

    Having an example in the documentation would be helpful.

    opened by walterreade 1
Releases(v0.02.1)
Owner
Hannes Bretschneider
Postdoctoral Fellow in the Blencowe Lab at University of Toronto
Hannes Bretschneider
Weighted QMIX: Expanding Monotonic Value Function Factorisation

This repo contains the cleaned-up code that was used in "Weighted QMIX: Expanding Monotonic Value Function Factorisation"

whirl 82 Dec 29, 2022
The Most Efficient Temporal Difference Learning Framework for 2048

moporgic/TDL2048+ TDL2048+ is a highly optimized temporal difference (TD) learning framework for 2048. Features Many common methods related to 2048 ar

Hung Guei 5 Nov 23, 2022
Mixed Transformer UNet for Medical Image Segmentation

MT-UNet Update 2021/11/19 Thank you for your interest in our work. We have uploaded the code of our MTUNet to help peers conduct further research on i

dotman 92 Dec 25, 2022
Framework for evaluating ANNS algorithms on billion scale datasets.

Billion-Scale ANN http://big-ann-benchmarks.com/ Install The only prerequisite is Python (tested with 3.6) and Docker. Works with newer versions of Py

Harsha Vardhan Simhadri 132 Dec 24, 2022
KDD CUP 2020 Automatic Graph Representation Learning: 1st Place Solution

KDD CUP 2020: AutoGraph Team: aister Members: Jianqiang Huang, Xingyuan Tang, Mingjian Chen, Jin Xu, Bohang Zheng, Yi Qi, Ke Hu, Jun Lei Team Introduc

96 May 30, 2022
The FIRST GANs-based omics-to-omics translation framework

OmiTrans Please also have a look at our multi-omics multi-task DL freamwork 👀 : OmiEmbed The FIRST GANs-based omics-to-omics translation framework Xi

Xiaoyu Zhang 6 Dec 14, 2022
This is the official implementation of "One Question Answering Model for Many Languages with Cross-lingual Dense Passage Retrieval".

CORA This is the official implementation of the following paper: Akari Asai, Xinyan Yu, Jungo Kasai and Hannaneh Hajishirzi. One Question Answering Mo

Akari Asai 59 Dec 28, 2022
CTRL-C: Camera calibration TRansformer with Line-Classification

CTRL-C: Camera calibration TRansformer with Line-Classification This repository contains the official code and pretrained models for CTRL-C (Camera ca

57 Nov 14, 2022
Detecting and Tracking Small and Dense Moving Objects in Satellite Videos: A Benchmark

This dataset is a large-scale dataset for moving object detection and tracking in satellite videos, which consists of 40 satellite videos captured by Jilin-1 satellite platforms.

Qingyong 87 Dec 22, 2022
OpenDelta - An Open-Source Framework for Paramter Efficient Tuning.

OpenDelta is a toolkit for parameter efficient methods (we dub it as delta tuning), by which users could flexibly assign (or add) a small amount parameters to update while keeping the most paramters

THUNLP 386 Dec 26, 2022
Benchmarking Pipeline for Prediction of Protein-Protein Interactions

B4PPI Benchmarking Pipeline for the Prediction of Protein-Protein Interactions How this benchmarking pipeline has been built, and how to use it, is de

Loïc Lannelongue 4 Jun 27, 2022
An unofficial implementation of "Unpaired Image Super-Resolution using Pseudo-Supervision." CVPR2020

UnpairedSR An unofficial implementation of "Unpaired Image Super-Resolution using Pseudo-Supervision." CVPR2020 turn RCAN(modified) -- xmodel(xilinx

JiaKui Hu 10 Oct 28, 2022
VSR-Transformer - This paper proposes a new Transformer for video super-resolution (called VSR-Transformer).

VSR-Transformer By Jiezhang Cao, Yawei Li, Kai Zhang, Luc Van Gool This paper proposes a new Transformer for video super-resolution (called VSR-Transf

Jiezhang Cao 225 Nov 13, 2022
Code for our paper 'Generalized Category Discovery'

Generalized Category Discovery This repo is a placeholder for code for our paper: Generalized Category Discovery Abstract: In this paper, we consider

107 Dec 28, 2022
4K videos with annotated masks in our ICCV2021 paper 'Internal Video Inpainting by Implicit Long-range Propagation'.

Annotated 4K Videos paper | project website | code | demo video 4K videos with annotated object masks in our ICCV2021 paper: Internal Video Inpainting

Tengfei Wang 21 Nov 05, 2022
It's like Shape Editor in Maya but works with skeletons (transforms).

Skeleposer What is Skeleposer? Briefly, it's like Shape Editor in Maya, but works with transforms and joints. It can be used to make complex facial ri

Alexander Zagoruyko 1 Nov 11, 2022
Working demo of the Multi-class and Anomaly classification model using the CLIP feature space

👁️ Hindsight AI: Crime Classification With Clip About For Educational Purposes Only This is a recursive neural net trained to classify specific crime

Miles Tweed 2 Jun 05, 2022
Single-stage Keypoint-based Category-level Object Pose Estimation from an RGB Image

CenterPose Overview This repository is the official implementation of the paper "Single-stage Keypoint-based Category-level Object Pose Estimation fro

NVIDIA Research Projects 188 Dec 27, 2022
Acute ischemic stroke dataset

AISD Acute ischemic stroke dataset contains 397 Non-Contrast-enhanced CT (NCCT) scans of acute ischemic stroke with the interval from symptom onset to

Kongming Liang 21 Sep 06, 2022
Angle data is a simple data type.

angledat Angle data is a simple data type. Installing + using Put angledat.py in the main dir of your project. Import it and use. Comments Comments st

1 Jan 05, 2022