Clustering with variational Bayes and population Monte Carlo

Overview

PyPI version DOI Build/Check/Deploy to PyPI

pypmc

pypmc is a python package focusing on adaptive importance sampling. It can be used for integration and sampling from a user-defined target density. A typical application is Bayesian inference, where one wants to sample from the posterior to marginalize over parameters and to compute the evidence. The key idea is to create a good proposal density by adapting a mixture of Gaussian or student's t components to the target density. The package is able to efficiently integrate multimodal functions in up to about 30-40 dimensions at the level of 1% accuracy or less. For many problems, this is achieved without requiring any manual input from the user about details of the function. pypmc supports importance sampling on a cluster of machines via mpi4py out of the box.

Useful tools that can be used stand-alone include:

  • importance sampling (sampling & integration)
  • adaptive Markov chain Monte Carlo (sampling)
  • variational Bayes (clustering)
  • population Monte Carlo (clustering)

Installation

Instructions are maintained here.

Getting started

Fully documented examples are shipped in the examples subdirectory of the source distribution or available online including sample output here. Feel free to save and modify them according to your needs.

Documentation

The full documentation with a manual and api description is available at here.

Credits

pypmc was developed by Stephan Jahn (TU Munich) under the supervision of Frederik Beaujean (LMU Munich) as part of Stephan's master's thesis at the Excellence Cluster Universe, Garching, Germany, in 2014.

If you use pypmc in academic work, we kindly ask you to cite the respective release as indicated by the zenodo DOI above. Thanks!

Day to day maintenance is assisted by Danny van Dyk.

Comments
  • Handle NaN gracefully in sampler.MarkovChain

    Handle NaN gracefully in sampler.MarkovChain

    Lieber Fred,

    I sometimes encounter NaNs in the log(target) in corners of the parameter space. It would be very helpful, if this modification or something similar to it could end up in a released version of pypmc.

    I am also happy to change the name of the keyword argument if you disagree. I had considered e.g. ignore_NaN. Let my know what you think!

    Cheers Danny

    opened by dvandyk 9
  • pypmc from fails to install under Python 3.7

    pypmc from fails to install under Python 3.7

    Installing pypmc with pip under Python 3.7 fails, see e.g. here for an error log.

    I suspect re-generating the Cython files with a more up-to-date Cython version is sufficient to fix it.

    (Of course, having wheels on PyPI would be even cooler...)

    Cheers! D.

    opened by DavidMStraub 8
  • Include pyx files in release

    Include pyx files in release

    Hi Fred,

    This PR does two things:

    It addresses part of #67, with the solution I saw at https://github.com/aresch/rencode/pull/25/files

    And it fixes a type bug I reported before: https://github.com/fredRos/pypmc/pull/59

    Is having the secret deploy keys in the github repository intentional?

    Cheers, Johannes

    opened by JohannesBuchner 7
  • Clarification needed in the example concerning the 'last generated samples/weights'

    Clarification needed in the example concerning the 'last generated samples/weights'

    As @dvandyk realized in the EOS code, there is a global misunderstanding of whether PMC updates should be performed on the last step samples/weights or on all the samples/weights. The misunderstanding is also present in the documentation: https://github.com/pypmc/pypmc/blob/5f705e9c67add23e46999f8b3c2483e1593f3683/examples/pmc.py#L67-L69

    By changing [:] by [-1] as it should be from the comment, the efficiency of the adaptation is greatly improved! A perplexity of 0.99 is obtained after 5 steps vs. 0.53 after 10 steps in the present version of the example!

    opened by mreboud 6
  • Update docs

    Update docs

    • [x] update links in docs to new URL pypmc.github.io/pypmc
    • [x] update theme: old matplotlib theme looks dated now
    • [x] update copyright notice: definitely year, authors?
    • [ ] ~~have a fresh look: text out of date?~~
    • [ ] ~~add section with testimonials or others using pypmc, either in docs or in readme~~
    doc 
    opened by fredRos 6
  • Issues installing pypmc on Windows 10

    Issues installing pypmc on Windows 10

    Whenever I run the setup.py through pip or directly through python it gives me this error: Coding Error Image I went into the setup.py and fiddled with the code and found that these lines were causing the errors: Setup.py Code Issue It allows me to install pypmc if I delete the commands inside the extra_compile_args function, but then it doesn't function properly as it can not import the name 'gauss'.

    wontfix 
    opened by tiseever 5
  • conda package

    conda package

    Hi all,

    This is just to let you know that there is now a pypmc package on conda-forge.

    https://github.com/conda-forge/pypmc-feedstock https://anaconda.org/conda-forge/pypmc

    I used this to build the snowline Bayesian inference package on top of it. https://johannesbuchner.github.io/snowline/

    Cheers, Johannes

    opened by JohannesBuchner 4
  • Improve log messages

    Improve log messages

    This pull request changes the way printing status messages is handled.

    1. All print functionality is replaced by the logging standard library. Messages that were wrapped with if(verbose) are logged as information, or as warnings otherwise.
    2. The new function util.log_to_stdout sets up a basic logging handler for easy standalone usage of pypmc. This function is called in __init__.py as a drop-in replacement of the current behaviour.

    Comments

    • Every submodule uses its own logger such that the level of granularity is still high. E.g. to only log warnings and errors from PMC, use logging.getLogger('pypmc.mix_adapt.pmc').setLevel(logging.WARNING).
    • Note that the default behaviour of logging when no log handler is specified, is to print warnings and errors to stderr.
    • Importing pypmc is setting up a log handler (to stdout), which must be removed explicity to use the module as a library.

    WIP

    • [x] Adding the default StreamHandler creates uncaptured output in the nosetests, as warnings log to stderr. To comply with the previous code, we specify to log only to stdout.
    • [x] Emit deprecation notice for optional verbose argument instead of removing the option (breaking change).
    • [ ] Document logging behaviour and how to use pypmc as a library. The wiki page is a good place to document logging after the proposed changes are approved.

    Solves #95

    opened by pluegh 4
  • Drop support for python2

    Drop support for python2

    Why

    Python2 has reached end of life and from 1.2 and onwards, we won't test the code on that platform anymore. Occasionally, the code is more complex to support two major version of python

    Acceptance criteria

    • [x] All source code can be freed of compatibility constructs to make it work with python 2 and 3
    • [x] the Makefile is cleaned up
    • [x] the docs updated
    packaging 
    opened by fredRos 4
  • Create Gitub Actions workflow to build, check and deploy to PyPI

    Create Gitub Actions workflow to build, check and deploy to PyPI

    • Uses the manylinux2014 docker image. I use the same for EOS. Can be changed later to e.g. manylinux2010 or even manylinux1?
    • Builds for python3 only. Do we really need python2.x?
    • Builds wheel for every commit, but only deploys to PyPI for tagged commits.
    • Builds and deploys documentation for every commit. Should this step deploy only on tagged commits?
    opened by dvandyk 4
  • No .tar.gz for v1.1.4 on pypi.org

    No .tar.gz for v1.1.4 on pypi.org

    Tach @fredRos!

    Since there is not tar.gz file for the v1.1.4 release on pypi, pip falls back to installing from 1.1.2 source on MacOS. I've worked around that problem for the time being my downloading the tarball and installing from the downloaded file in the EOS CI. However, it would be nice if you could make sure that 1.1.4 and future releases support from-source builds.

    opened by dvandyk 4
  • Periodic parameters

    Periodic parameters

    When a parameters is described with an angle (eg the argument of a complex number), MCMC and PMC have trouble describing the periodic boundaries of the parameter range. I see two possible solutions:

    • Allow parameters to be periodic. This may require a bit of work for the correlations and correct distributions though.
    • The user can provide an extended range, eg [-100*pi, 100*pi], but it would be nice if pypmc could wrap the parameter space when estimating certain quantities
    opened by mreboud 7
  • Variational Bayes documentation

    Variational Bayes documentation

    Two issues in the documentation https://pypmc.github.io/user_guide.html#variational-bayes:

    • The url in reference [Bis06] is broken
    • \vecth and \vecgamma are not correctly displayed (at least for me)
    opened by mreboud 2
  • `pip install pypmc` fails on windows

    `pip install pypmc` fails on windows

    I get the following stack trace when trying to install pypmc on Windows 10.

    > pip install pypmc
    Defaulting to user installation because normal site-packages is not writeable
    Collecting pypmc
      Using cached pypmc-1.2.tar.gz (979 kB)
      Installing build dependencies ... done
      Getting requirements to build wheel ... done
        Preparing wheel metadata ... done
    Requirement already satisfied: numpy<2.0,>=1.6 in c:\program files\python38\lib\site-packages (from pypmc) (1.19.1)
    Requirement already satisfied: scipy in c:\users\astiff\appdata\roaming\python\python38\site-packages (from pypmc) (1.7.1)
    Building wheels for collected packages: pypmc
      Building wheel for pypmc (PEP 517) ... error
      ERROR: Command errored out with exit status 1:
       command: 'c:\program files\python38\python.exe' 'C:\Users\astiff\AppData\Roaming\Python\Python38\site-packages\pip\_vendor\pep517\in_process\_in_process.py' build_wheel 'C:\Users\astiff\AppData\Local\Temp\tmpo5rojaiy'
           cwd: C:\Users\astiff\AppData\Local\Temp\pip-install-k386b90x\pypmc_4bb93d97d9944d4592bc69d1ad5ff28e
      Complete output (57 lines):
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-3.8
      creating build\lib.win-amd64-3.8\pypmc
      copying pypmc\_version.py -> build\lib.win-amd64-3.8\pypmc
      copying pypmc\__init__.py -> build\lib.win-amd64-3.8\pypmc
      creating build\lib.win-amd64-3.8\pypmc\density
      copying pypmc\density\base.py -> build\lib.win-amd64-3.8\pypmc\density
      copying pypmc\density\base_test.py -> build\lib.win-amd64-3.8\pypmc\density
      copying pypmc\density\gauss_test.py -> build\lib.win-amd64-3.8\pypmc\density
      copying pypmc\density\mixture_test.py -> build\lib.win-amd64-3.8\pypmc\density
      copying pypmc\density\student_t_test.py -> build\lib.win-amd64-3.8\pypmc\density
      copying pypmc\density\__init__.py -> build\lib.win-amd64-3.8\pypmc\density
      creating build\lib.win-amd64-3.8\pypmc\mix_adapt
      copying pypmc\mix_adapt\hierarchical.py -> build\lib.win-amd64-3.8\pypmc\mix_adapt
      copying pypmc\mix_adapt\hierarchical_test.py -> build\lib.win-amd64-3.8\pypmc\mix_adapt
      copying pypmc\mix_adapt\pmc_test.py -> build\lib.win-amd64-3.8\pypmc\mix_adapt
      copying pypmc\mix_adapt\r_value.py -> build\lib.win-amd64-3.8\pypmc\mix_adapt
      copying pypmc\mix_adapt\r_value_test.py -> build\lib.win-amd64-3.8\pypmc\mix_adapt
      copying pypmc\mix_adapt\variational_test.py -> build\lib.win-amd64-3.8\pypmc\mix_adapt
      copying pypmc\mix_adapt\__init__.py -> build\lib.win-amd64-3.8\pypmc\mix_adapt
      creating build\lib.win-amd64-3.8\pypmc\sampler
      copying pypmc\sampler\importance_sampling.py -> build\lib.win-amd64-3.8\pypmc\sampler
      copying pypmc\sampler\importance_sampling_test.py -> build\lib.win-amd64-3.8\pypmc\sampler
      copying pypmc\sampler\markov_chain.py -> build\lib.win-amd64-3.8\pypmc\sampler
      copying pypmc\sampler\markov_chain_test.py -> build\lib.win-amd64-3.8\pypmc\sampler
      copying pypmc\sampler\__init__.py -> build\lib.win-amd64-3.8\pypmc\sampler
      creating build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\convergence.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\convergence_test.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\linalg_test.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\parallel_sampler.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\parallel_sampler_test.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\partition_test.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\plot_test.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\regularize_test.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\_doc.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\_history.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\_partition.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\_plot.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\_probability_densities.py -> build\lib.win-amd64-3.8\pypmc\tools
      copying pypmc\tools\__init__.py -> build\lib.win-amd64-3.8\pypmc\tools
      creating build\lib.win-amd64-3.8\pypmc\tools\indicator
      copying pypmc\tools\indicator\indicator_factory_test.py -> build\lib.win-amd64-3.8\pypmc\tools\indicator
      copying pypmc\tools\indicator\_indicator_factory.py -> build\lib.win-amd64-3.8\pypmc\tools\indicator
      copying pypmc\tools\indicator\_indicator_merge.py -> build\lib.win-amd64-3.8\pypmc\tools\indicator
      copying pypmc\tools\indicator\__init__.py -> build\lib.win-amd64-3.8\pypmc\tools\indicator
      running build_ext
      creating build\temp.win-amd64-3.8
      creating build\temp.win-amd64-3.8\Release
      creating build\temp.win-amd64-3.8\Release\pypmc
      creating build\temp.win-amd64-3.8\Release\pypmc\density
      "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.28.29910\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Users\astiff\AppData\Local\Temp\pip-build-env-7tnf_mmt\overlay\Lib\site-packages\numpy\core\include "-Ic:\program files\python38\include" "-Ic:\program files\python38\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.28.29910\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" /Tcpypmc\density\gauss.c /Fobuild\temp.win-amd64-3.8\Release\pypmc\density\gauss.obj -Wno-unused-but-set-variable -Wno-unused-function -O3
      cl : Command line error D8021 : invalid numeric argument '/Wno-unused-but-set-variable'
      error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.28.29910\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
      ----------------------------------------
      ERROR: Failed building wheel for pypmc
    Failed to build pypmc
    ERROR: Could not build wheels for pypmc which use PEP 517 and cannot be installed directly
    

    The same command gives no problems when installing on Linux (or WSL).

    I believe it's just that the build is using a compiler flag that is supported by gcc, but not by Visual Studio.

    opened by aestiff 5
  • Installation issues

    Installation issues

    see https://github.com/eos/eos/issues/411 for error messages.

    After closing the issue, the same error cropped up again even though I didn't reinstall pypmc:

    at 21:42:27 ❯ python3.8 -c "import pypmc"
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/home/fred/.local/lib/python3.8/site-packages/pypmc/__init__.py", line 9, in <module>
        from . import mix_adapt, density, sampler, tools
      File "/home/fred/.local/lib/python3.8/site-packages/pypmc/mix_adapt/__init__.py", line 7, in <module>
        from . import hierarchical, variational, pmc, r_value
      File "pypmc/mix_adapt/variational.pyx", line 1, in init pypmc.mix_adapt.variational
    ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 88 from C header, got 80 from PyObject
    
    opened by fredRos 1
  • Failing to install pypmc on macOS - could not cythonize

    Failing to install pypmc on macOS - could not cythonize

    Dear all

    I was trying to install pypmc on my Mac (macOS 10.14.5), to use it in EOS, but the installation fails with:

    pip3 install --user pypmc Collecting pypmc Using cached https://files.pythonhosted.org/packages/07/d3/86d432f20b2d82109e431c40e536ccac702a2e1cc85d6974c68b4be5d358/pypmc-1.1.2.tar.gz Requirement already satisfied: numpy in /Users/michel/Library/Python/3.7/lib/python/site-packages (from pypmc) (1.17.0) Requirement already satisfied: scipy in /Users/michel/Library/Python/3.7/lib/python/site-packages (from pypmc) (1.3.1) Building wheels for collected packages: pypmc Building wheel for pypmc (setup.py) ... error ERROR: Complete output from command /usr/local/opt/python/bin/python3.7 -u -c 'import setuptools, tokenize;__file__='"'"'/private/var/folders/4w/rfpfxc9d2ndfgz6lv9xtdrjc0000gn/T/pip-install-f1fe16hz/pypmc/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/4w/rfpfxc9d2ndfgz6lv9xtdrjc0000gn/T/pip-wheel-esu5sr7n --python-tag cp37: ERROR: WARNING: Could not cythonize: ModuleNotFoundError("No module named 'Cython'") ... followed by a long list of errors (I can paste them here if needed). I did install cython and it is in my PATH

    Any help is appreciated, thanks!

    opened by MichelDC 13
Releases(v1.1.4)
  • v1.1.4(Jun 21, 2019)

    Improve the CI support and support building and deploying wheels

    Fixed issues

    #62

    changes to the build system

    • Require cython to build the code to avoid brokens builds with newer version of python/cython
    • move to xenial and test on python 3.7
    • add doc and deploy stages
    • test mpi with just one process due to travis limitations
    • build wheels for linux and deploy to Pypi
    • declare pypmc stable on pypi

    Changes to the functional core of pypmc

    None

    Source code(tar.gz)
    Source code(zip)
  • v1.1.2(Jan 23, 2018)

    No change to the actual source code was done but it is now easier to install pypmc from pypi. If numpy is not available, it will be properly installed before at attempt is made to build pypmc itself.

    The basic ground work for binary wheels for multiple platforms via cibuild is done, too. It requires a final tweak and travis to actually build and deploy.

    Source code(tar.gz)
    Source code(zip)
  • v1.1.1(Sep 26, 2017)

    Version 1.1.1

    This is a maintenance release.

    Infrastructure

    pypmc now runs on travis and the docs are automatically built and deployed to http://fredros.github.io/pypmc/html/. Every release is tagged on zenodo.

    Fixes

    • explicit integer/float handling for compatibility with numpy v1.13
    • update color map for compatibility with matplotlib v2.0
    Source code(tar.gz)
    Source code(zip)
  • v1.1(Aug 31, 2016)

    DOI

    New features

    • ImportanceSampler optionally stores the values of the target density
    • plot_mixture can color components based on their weight rather than their index
    • the new PMC class can run multiple EM updates until convergence

    Fixes

    • fix installation on mac without cython
    • compatible to newer version of numpy
    • fix too large a prune value in GaussianInference

    Breaking changes

    • remove DeterministicIS. No class was needed, all the functionality is now contained in combine_weights
    • MarkovChain and ImportanceSampler don't have a combined history anymore, weights and samples are accessible as their own History objects
    Source code(tar.gz)
    Source code(zip)
    pypmc-1.1.tar.gz(832.35 KB)
  • v1.0(Feb 22, 2015)

Breast cancer is been classified into benign tumour and malignant tumour.

Breast cancer is been classified into benign tumour and malignant tumour. Logistic regression is applied in this model.

1 Feb 04, 2022
Improving Calibration for Long-Tailed Recognition (CVPR2021)

MiSLAS Improving Calibration for Long-Tailed Recognition Authors: Zhisheng Zhong, Jiequan Cui, Shu Liu, Jiaya Jia [arXiv] [slide] [BibTeX] Introductio

Jia Research Lab 116 Dec 20, 2022
ADOP: Approximate Differentiable One-Pixel Point Rendering

ADOP: Approximate Differentiable One-Pixel Point Rendering Abstract: We present a novel point-based, differentiable neural rendering pipeline for scen

Darius Rückert 1.9k Jan 06, 2023
NovelD: A Simple yet Effective Exploration Criterion

NovelD: A Simple yet Effective Exploration Criterion Intro This is an implementation of the method proposed in NovelD: A Simple yet Effective Explorat

29 Dec 05, 2022
SPTAG: A library for fast approximate nearest neighbor search

SPTAG: A library for fast approximate nearest neighbor search SPTAG SPTAG (Space Partition Tree And Graph) is a library for large scale vector approxi

Microsoft 4.3k Jan 01, 2023
Repositório criado para abrigar os notebooks com a listas de exercícios propostos pelo professor Gustavo Guanabara do canal Curso em Vídeo do YouTube durante o Curso de Python 3

Curso em Vídeo - Exercícios de Python 3 Sobre o repositório Este repositório contém os notebooks com a listas de exercícios propostos pelo professor G

João Pedro Pereira 9 Oct 15, 2022
Dense Prediction Transformers

Vision Transformers for Dense Prediction This repository contains code and models for our paper: Vision Transformers for Dense Prediction René Ranftl,

Intelligent Systems Lab Org 1.3k Jan 02, 2023
Cooperative multi-agent reinforcement learning for high-dimensional nonequilibrium control

Cooperative multi-agent reinforcement learning for high-dimensional nonequilibrium control Official implementation of: Cooperative multi-agent reinfor

0 Nov 16, 2021
AI Summer's complete catalog of articles

Learn Deep Learning with AI Summer A collection of all articles (almost 100) written for the AI Summer blog organized by topic. Deep Learning Theory M

AI Summer 95 Dec 29, 2022
Aggragrating Nested Transformer Official Jax Implementation

NesT is a simple method, which aggragrates nested local transformers on image blocks. The idea makes vision transformers attain better accuracy, data efficiency, and convergence on the ImageNet bench

Google Research 169 Dec 20, 2022
Implement slightly different caffe-segnet in tensorflow

Tensorflow-SegNet Implement slightly different (see below for detail) SegNet in tensorflow, successfully trained segnet-basic in CamVid dataset. Due t

Tseng Kuan Lun 364 Oct 27, 2022
An architecture that makes any doodle realistic, in any specified style, using VQGAN, CLIP and some basic embedding arithmetics.

Sketch Simulator An architecture that makes any doodle realistic, in any specified style, using VQGAN, CLIP and some basic embedding arithmetics. See

12 Dec 18, 2022
ManipulaTHOR, a framework that facilitates visual manipulation of objects using a robotic arm

ManipulaTHOR: A Framework for Visual Object Manipulation Kiana Ehsani, Winson Han, Alvaro Herrasti, Eli VanderBilt, Luca Weihs, Eric Kolve, Aniruddha

AI2 65 Dec 30, 2022
Official PyTorch Implementation of Mask-aware IoU and maYOLACT Detector [BMVC2021]

The official implementation of Mask-aware IoU and maYOLACT detector. Our implementation is based on mmdetection. Mask-aware IoU for Anchor Assignment

Kemal Oksuz 46 Sep 29, 2022
Camview - A CLI-tool used to stream CCTV online footage based on URL params

CamView A CLI-tool used to stream CCTV online footage based on URL params Get St

Finn Lancaster 54 Dec 09, 2022
Pytorch implementation of AngularGrad: A New Optimization Technique for Angular Convergence of Convolutional Neural Networks

AngularGrad Optimizer This repository contains the oficial implementation for AngularGrad: A New Optimization Technique for Angular Convergence of Con

mario 124 Sep 16, 2022
A machine learning benchmark of in-the-wild distribution shifts, with data loaders, evaluators, and default models.

WILDS is a benchmark of in-the-wild distribution shifts spanning diverse data modalities and applications, from tumor identification to wildlife monitoring to poverty mapping.

P-Lambda 437 Dec 30, 2022
Offical implementation of Shunted Self-Attention via Multi-Scale Token Aggregation

Shunted Transformer This is the offical implementation of Shunted Self-Attention via Multi-Scale Token Aggregation by Sucheng Ren, Daquan Zhou, Shengf

156 Dec 27, 2022
[CVPR2022] Representation Compensation Networks for Continual Semantic Segmentation

RCIL [CVPR2022] Representation Compensation Networks for Continual Semantic Segmentation Chang-Bin Zhang1, Jia-Wen Xiao1, Xialei Liu1, Ying-Cong Chen2

Chang-Bin Zhang 71 Dec 28, 2022
Source code for the plant extraction workflow introduced in the paper “Agricultural Plant Cataloging and Establishment of a Data Framework from UAV-based Crop Images by Computer Vision”

Plant extraction workflow Source code for the plant extraction workflow introduced in the paper "Agricultural Plant Cataloging and Establishment of a

Maurice Günder 0 Apr 22, 2022