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
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

Eugene Khvedchenya 1.3k Jan 05, 2023
Tutorial for surrogate gradient learning in spiking neural networks

SpyTorch A tutorial on surrogate gradient learning in spiking neural networks Version: 0.4 This repository contains tutorial files to get you started

Friedemann Zenke 203 Nov 28, 2022
TorchSSL: A PyTorch-based Toolbox for Semi-Supervised Learning

TorchSSL: A PyTorch-based Toolbox for Semi-Supervised Learning

1k Dec 28, 2022
Training PyTorch models with differential privacy

Opacus is a library that enables training PyTorch models with differential privacy. It supports training with minimal code changes required on the cli

1.3k Dec 29, 2022
S3-plugin is a high performance PyTorch dataset library to efficiently access datasets stored in S3 buckets.

S3-plugin is a high performance PyTorch dataset library to efficiently access datasets stored in S3 buckets.

Amazon Web Services 138 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
3D-RETR: End-to-End Single and Multi-View3D Reconstruction with Transformers

3D-RETR: End-to-End Single and Multi-View 3D Reconstruction with Transformers (BMVC 2021) Zai Shi*, Zhao Meng*, Yiran Xing, Yunpu Ma, Roger Wattenhofe

Zai Shi 36 Dec 21, 2022
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

George Hotz 9.7k Jan 05, 2023
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
Differentiable SDE solvers with GPU support and efficient sensitivity analysis.

PyTorch Implementation of Differentiable SDE Solvers This library provides stochastic differential equation (SDE) solvers with GPU support and efficie

Google Research 1.2k Jan 04, 2023
Official implementations of EigenDamage: Structured Pruning in the Kronecker-Factored Eigenbasis.

EigenDamage: Structured Pruning in the Kronecker-Factored Eigenbasis This repo contains the official implementations of EigenDamage: Structured Prunin

Chaoqi Wang 107 Apr 20, 2022
High-level batteries-included neural network training library for Pytorch

Pywick High-Level Training framework for Pytorch Pywick is a high-level Pytorch training framework that aims to get you up and running quickly with st

382 Dec 06, 2022
A tiny package to compare two neural networks in PyTorch

Compare neural networks by their feature similarity

Anand Krishnamoorthy 180 Dec 30, 2022
OptNet: Differentiable Optimization as a Layer in Neural Networks

OptNet: Differentiable Optimization as a Layer in Neural Networks This repository is by Brandon Amos and J. Zico Kolter and contains the PyTorch sourc

CMU Locus Lab 428 Dec 24, 2022
An optimizer that trains as fast as Adam and as good as SGD.

AdaBound An optimizer that trains as fast as Adam and as good as SGD, for developing state-of-the-art deep learning models on a wide variety of popula

LoLo 2.9k Dec 27, 2022
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
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
On the Variance of the Adaptive Learning Rate and Beyond

RAdam On the Variance of the Adaptive Learning Rate and Beyond We are in an early-release beta. Expect some adventures and rough edges. Table of Conte

Liyuan Liu 2.5k Dec 27, 2022
A lightweight wrapper for PyTorch that provides a simple declarative API for context switching between devices, distributed modes, mixed-precision, and PyTorch extensions.

A lightweight wrapper for PyTorch that provides a simple declarative API for context switching between devices, distributed modes, mixed-precision, and PyTorch extensions.

Fidelity Investments 56 Sep 13, 2022