PyTorch toolkit for biomedical imaging

Overview

logo

🤖 farabio ❤️

PyPI version DOI PyPI - Downloads Documentation Status GitHub commit activity GitHub

🎉 What's New

August 26, 2021

Publishing farabio==0.0.3 (latest version):
PyPI | Release notes

August 18, 2021

Publishing farabio==0.0.2:
PyPI | Release notes

April 21, 2021

This work is presented at PyTorch Ecosystem day. Poster is here.

April 2, 2021

Publishing farabio==0.0.1:
PyPI | Release notes

March 3, 2021

This work is selected for PyTorch Ecosystem Day.

💡 Introduction

farabio is a minimal PyTorch toolkit for out-of-the-box deep learning support in biomedical imaging. For further information, see Wikis and Docs.

🔥 Features

  • Biomedical datasets
  • Common DL models
  • Flexible trainers (*in progress)

📚 Biodatasets

🚢 Models

Classification:

Segmentation:

🚀 Getting started (Installation)

1. Create and activate conda environment:

conda create -n myenv python=3.8
conda activate myenv

2. Install PyTorch:

pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html

3. Install farabio:

A. With pip:

pip install farabio

B. Setup from source:

git clone https://github.com/tuttelikz/farabio.git && cd farabio
pip install .

🤿 Tutorials

Tutorial 1: Training a classifier for ChestXrayDataset - Notebook
Tutorial 2: Training a segmentation model for DSB18Dataset - Notebook
Tutorial 3: Training a Faster-RCNN detection model for VinBigDataset - Notebook

🔎 Links

Credits

If you like this repository, please click on Star.

How to cite | doi:

@software{sanzhar_askaruly_2021_5746474,
  author       = {Sanzhar Askaruly and
                  Nurbolat Aimakov and
                  Alisher Iskakov and
                  Hyewon Cho and
                  Yujin Ahn and
                  Myeong Hoon Choi and
                  Hyunmo Yang and
                  Woonggyu Jung},
  title        = {Farabio: Deep learning for biomedical imaging},
  month        = dec,
  year         = 2021,
  publisher    = {Zenodo},
  version      = {v0.0.3-doi},
  doi          = {10.5281/zenodo.5746474},
  url          = {https://doi.org/10.5281/zenodo.5746474}
}

📃 Licenses

This work is licensed Apache 2.0.

🤩 Acknowledgements

This work is based upon efforts of open-source PyTorch Community. I have tried to acknowledge related works (github links, arxiv papers) inside the source material, eg. README, documentation, and code docstrings. Please contact if I missed anything.

You might also like...
PyTorch Extension Library of Optimized Scatter Operations

PyTorch Scatter Documentation This package consists of a small extension library of highly optimized sparse update (scatter and segment) operations fo

PyTorch Extension Library of Optimized Autograd Sparse Matrix Operations

PyTorch Sparse This package consists of a small extension library of optimized sparse matrix operations with autograd support. This package currently

Reformer, the efficient Transformer, in Pytorch
Reformer, the efficient Transformer, in Pytorch

Reformer, the Efficient Transformer, in Pytorch This is a Pytorch implementation of Reformer https://openreview.net/pdf?id=rkgNKkHtvB It includes LSH

higher is a pytorch library allowing users to obtain higher order gradients over losses spanning training loops rather than individual training steps.
higher is a pytorch library allowing users to obtain higher order gradients over losses spanning training loops rather than individual training steps.

higher is a library providing support for higher-order optimization, e.g. through unrolled first-order optimization loops, of "meta" aspects of these

PyTorch implementation of TabNet paper : https://arxiv.org/pdf/1908.07442.pdf

README TabNet : Attentive Interpretable Tabular Learning This is a pyTorch implementation of Tabnet (Arik, S. O., & Pfister, T. (2019). TabNet: Attent

PyTorch extensions for fast R&D prototyping and Kaggle farming

Pytorch-toolbelt A pytorch-toolbelt is a Python library with a set of bells and whistles for PyTorch for fast R&D prototyping and Kaggle farming: What

An implementation of Performer, a linear attention-based transformer, in Pytorch
An implementation of Performer, a linear attention-based transformer, in Pytorch

Performer - Pytorch An implementation of Performer, a linear attention-based transformer variant with a Fast Attention Via positive Orthogonal Random

The goal of this library is to generate more helpful exception messages for numpy/pytorch matrix algebra expressions.
The goal of this library is to generate more helpful exception messages for numpy/pytorch matrix algebra expressions.

Tensor Sensor See article Clarifying exceptions and visualizing tensor operations in deep learning code. One of the biggest challenges when writing co

You like pytorch? You like micrograd? You love tinygrad! ❤️
You like pytorch? You like micrograd? You love tinygrad! ❤️

For something in between a pytorch and a karpathy/micrograd This may not be the best deep learning framework, but it is a deep learning framework. Due

Comments
  • invalid input type

    invalid input type

    Instructions To Reproduce the Bug

    1. What exact command you run:
    If making changes to the project itself, please use output of the following command:
    git rev-parse HEAD; git diff
    
    <put code or diff here>
    
    1. Full logs or other relevant observations:
    <put logs here>
    
    1. please simplify the steps as much as possible so they do not require additional resources to run, such as a private dataset.

    Expected behavior:

    If there are no obvious error in "what you observed" provided above, please tell us the expected behavior.

    Environment:

    Provide your environment information using the following command:

    git clone https://gist.github.com/tuttelikz/ebd5ab3ffb29cb9399f2596b8f163a4e a && python a/cenv.py
    
    opened by aminemosbah 3
Releases(v0.0.3-doi)
  • v0.0.3-doi(Dec 1, 2021)

  • v0.0.3(Aug 25, 2021)

  • v0.0.2(Aug 17, 2021)

    TLDR: This is a fresh, restructured release package compared to v0.0.1. Here, we ship several classification models and biodatasets in PyTorch friendly format.

    Models:

    • AlexNet
    • GoogLeNet
    • MobileNetV2
    • MobileNetV3
    • ResNet
    • ShuffleNetV2
    • SqueezeNet
    • VGG

    Biodatasets:

    • ChestXrayDataset
    • DSB18Dataset
    • HistocancerDataset
    • RANZCRDataset
    • RetinopathyDataset
    Source code(tar.gz)
    Source code(zip)
    farabio-0.0.2-py3-none-any.whl(32.98 KB)
  • v0.0.1(Aug 25, 2021)

    TLDR: This is the very first release. In this release, we ship various baseline models for classification, segmentation, detection, super-resolution and image translation tasks. As well, basis for model trainers and biodatasets are described here. Architectures are not as clean. Please refer to new releases in the future.

    Biodatasets:

    • ChestXrayDataset
    • DSB18Dataset
    • HistocancerDataset
    • RANZCRDataset
    • RetinopathyDataset

    Trainers:

    • BaseTrainer
    • ConvnetTrainer
    • GanTrainer

    Models:

    • DenseNet
    • GoogLeNet
    • VGG
    • ResNet
    • MobileNetV2
    • ShuffleNetV2
    • ViT
    • U-Net
    • Attention U-Net
    • FasterRCNN
    • YOLOv3
    • CycleGAN
    • SRGAN
    Source code(tar.gz)
    Source code(zip)
    farabio-0.0.1-py3-none-any.whl(100.73 KB)
Owner
San Askaruly
Willing to join fast-paced team to build amazing future!
San Askaruly
A tutorial on "Bayesian Compression for Deep Learning" published at NIPS (2017).

Code release for "Bayesian Compression for Deep Learning" In "Bayesian Compression for Deep Learning" we adopt a Bayesian view for the compression of

Karen Ullrich 190 Dec 30, 2022
Use Jax functions in Pytorch with DLPack

Use Jax functions in Pytorch with DLPack

Phil Wang 106 Dec 17, 2022
High-fidelity performance metrics for generative models in PyTorch

High-fidelity performance metrics for generative models in PyTorch

Vikram Voleti 5 Oct 24, 2021
This is an differentiable pytorch implementation of SIFT patch descriptor.

This is an differentiable pytorch implementation of SIFT patch descriptor. It is very slow for describing one patch, but quite fast for batch. It can

Dmytro Mishkin 150 Dec 24, 2022
Tez is a super-simple and lightweight Trainer for PyTorch. It also comes with many utils that you can use to tackle over 90% of deep learning projects in PyTorch.

Tez: a simple pytorch trainer NOTE: Currently, we are not accepting any pull requests! All PRs will be closed. If you want a feature or something does

abhishek thakur 1.1k Jan 04, 2023
A simplified framework and utilities for PyTorch

Here is Poutyne. Poutyne is a simplified framework for PyTorch and handles much of the boilerplating code needed to train neural networks. Use Poutyne

GRAAL/GRAIL 534 Dec 17, 2022
A pure Python implementation of Compact Bilinear Pooling and Count Sketch for PyTorch.

Compact Bilinear Pooling for PyTorch. This repository has a pure Python implementation of Compact Bilinear Pooling and Count Sketch for PyTorch. This

Grégoire Payen de La Garanderie 234 Dec 07, 2022
Over9000 optimizer

Optimizers and tests Every result is avg of 20 runs. Dataset LR Schedule Imagenette size 128, 5 epoch Imagewoof size 128, 5 epoch Adam - baseline OneC

Mikhail Grankin 405 Nov 27, 2022
GPU-accelerated PyTorch implementation of Zero-shot User Intent Detection via Capsule Neural Networks

GPU-accelerated PyTorch implementation of Zero-shot User Intent Detection via Capsule Neural Networks This repository implements a capsule model Inten

Joel Huang 15 Dec 24, 2022
Reformer, the efficient Transformer, in Pytorch

Reformer, the Efficient Transformer, in Pytorch This is a Pytorch implementation of Reformer https://openreview.net/pdf?id=rkgNKkHtvB It includes LSH

Phil Wang 1.8k Jan 06, 2023
Pytorch bindings for Fortran

Pytorch bindings for Fortran

Dmitry Alexeev 46 Dec 29, 2022
Fast Discounted Cumulative Sums in PyTorch

TODO: update this README! Fast Discounted Cumulative Sums in PyTorch This repository implements an efficient parallel algorithm for the computation of

Daniel Povey 7 Feb 17, 2022
Fast and Easy-to-use Distributed Graph Learning for PyTorch Geometric

Fast and Easy-to-use Distributed Graph Learning for PyTorch Geometric

Quiver Team 221 Dec 22, 2022
Kaldi-compatible feature extraction with PyTorch, supporting CUDA, batch processing, chunk processing, and autograd

Kaldi-compatible feature extraction with PyTorch, supporting CUDA, batch processing, chunk processing, and autograd

Fangjun Kuang 119 Jan 03, 2023
A tiny package to compare two neural networks in PyTorch

Compare neural networks by their feature similarity

Anand Krishnamoorthy 180 Dec 30, 2022
A Closer Look at Structured Pruning for Neural Network Compression

A Closer Look at Structured Pruning for Neural Network Compression Code used to reproduce experiments in https://arxiv.org/abs/1810.04622. To prune, w

Bayesian and Neural Systems Group 140 Dec 05, 2022
Bunch of optimizer implementations in PyTorch

Bunch of optimizer implementations in PyTorch

Hyeongchan Kim 76 Jan 03, 2023
Tacotron 2 - PyTorch implementation with faster-than-realtime inference

Tacotron 2 (without wavenet) PyTorch implementation of Natural TTS Synthesis By Conditioning Wavenet On Mel Spectrogram Predictions. This implementati

NVIDIA Corporation 4.1k Jan 03, 2023
Riemannian Adaptive Optimization Methods with pytorch optim

geoopt Manifold aware pytorch.optim. Unofficial implementation for “Riemannian Adaptive Optimization Methods” ICLR2019 and more. Installation Make sur

642 Jan 03, 2023
Training RNNs as Fast as CNNs (https://arxiv.org/abs/1709.02755)

News SRU++, a new SRU variant, is released. [tech report] [blog] The experimental code and SRU++ implementation are available on the dev branch which

ASAPP Research 2.1k Jan 01, 2023