AugLiChem - The augmentation library for chemical systems.

Overview

AugLiChem

Build Status codecov

Welcome to AugLiChem! The augmentation library for chemical systems. This package supports augmentation for both crystaline and molecular systems, as well as provides automatic downloading for our benchmark datasets, and easy to use model implementations. In depth documentation about how to use AugLiChem, make use of transformations, and train models is given on our website.

Installation

AugLiChem is a python3.8+ package.

Linux

It is recommended to use an environment manager such as conda to install AugLiChem. Instructions can be found here. If using conda, creating a new environment is ideal and can be done simply by running the following command:

conda create -n auglichem python=3.8

Then activating the new environment with

conda activate auglichem

AugLiChem is built primarily with pytorch and that should be installed independently according to your system specifications. After activating your conda environment, pytorch can be installed easily and instructions are found here.

torch_geometric needs to be installed with conda install pyg -c pyg -c conda-forge.

Once you have pytorch and torch_geometric installed, installing AugLiChem can be done using PyPI:

pip install auglichem

MacOS ARM64 Architecture

A more involved install is required to run on the new M1 chips since some of the packages do not have official support yet. We are working on a more elegant solution given the current limitations.

First, download this repo.

If you do not have it yet,, conda for ARM64 architecture needs to be installed. This can be done with Miniforge (which contains conda installer) which is installed by following the guide here

Once you have miniforge compatible with ARM64 architecture, a new environment with rdkit can be i nstalled. If you do not specify python=3.8 it will default to python=3.9.6 as of the time of writing th is.

conda create -n auglichem python=3.8 rdkit

Now activate the environment:

conda activate auglichem

From here, individual packages can be installed:

conda install -c pytorch pytorch

conda install -c fastchan torchvision

conda install scipy

conda install cython

conda install scikit-learn

pip install torch-scatter -f https://data.pyg.org/whl/torch-1.10.0+cpu.html

pip install torch-sparse -f https://data.pyg.org/whl/torch-1.10.0+cpu.html

pip install torch-geometric

Before installing the package, you must go into setup.py in the main directory and comment out rdkit-pypi and tensorboard from the install_requires list since they are already installed. Not commenting these packages out will result in an error during installation.

Finally, run:

pip install .

Usage guides are provided in the examples/ directory and provide useful guides for using both the molecular and crystal sides of the package. Make sure to install jupyter before working with examples, using conda install jupyter. After installing the package as described above, the example notebooks can be downloaded separately and run locally.

Authors

Rishikesh Magar*, Yuyang Wang*, Cooper Lorsung*, Hariharan Ramasubramanian, Chen Liang, Peiyuan Li, Amir Barati Farimani

*Equal contribution

Paper

Our paper can be found here

Citation

If you use AugLiChem in your work, please cite:

@misc{magar2021auglichem,
      title={AugLiChem: Data Augmentation Library ofChemical Structures for Machine Learning}, 
      author={Rishikesh Magar and Yuyang Wang and Cooper Lorsung and Chen Liang and Hariharan Ramasubramanian and Peiyuan Li and Amir Barati Farimani},
      year={2021},
      eprint={2111.15112},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}

License

AugLiChem is MIT licensed, as found in the LICENSE file. Please note that some of the dependencies AugLiChem uses may be licensed under different terms.

Owner
BaratiLab
BaratiLab
KSAI Lite is a deep learning inference framework of kingsoft, based on tensorflow lite

KSAI Lite is a deep learning inference framework of kingsoft, based on tensorflow lite

80 Dec 27, 2022
Fuzzing tool (TFuzz): a fuzzing tool based on program transformation

T-Fuzz T-Fuzz consists of 2 components: Fuzzing tool (TFuzz): a fuzzing tool based on program transformation Crash Analyzer (CrashAnalyzer): a tool th

HexHive 244 Nov 09, 2022
Implementation of Research Paper "Learning to Enhance Low-Light Image via Zero-Reference Deep Curve Estimation"

Zero-DCE and Zero-DCE++(Lite architechture for Mobile and edge Devices) Papers Abstract The paper presents a novel method, Zero-Reference Deep Curve E

Tauhid Khan 15 Dec 10, 2022
DAT4 - General Assembly's Data Science course in Washington, DC

DAT4 Course Repository Course materials for General Assembly's Data Science course in Washington, DC (12/15/14 - 3/16/15). Instructors: Sinan Ozdemir

Kevin Markham 779 Dec 25, 2022
This is a simple face recognition mini project that was completed by a team of 3 members in 1 week's time

PeekingDuckling 1. Description This is an implementation of facial identification algorithm to detect and identify the faces of the 3 team members Cla

Eric Kwok 2 Jan 25, 2022
Python Actor concurrency library

Thespian Actor Library This library provides the framework of an Actor model for use by applications implementing Actors. Thespian Site with Documenta

Kevin Quick 177 Dec 11, 2022
Create UIs for prototyping your machine learning model in 3 minutes

Note: We just launched Hosted, where anyone can upload their interface for permanent hosting. Check it out! Welcome to Gradio Quickly create customiza

Gradio 11.7k Jan 07, 2023
Deep Surface Reconstruction from Point Clouds with Visibility Information

Data, code and pretrained models for the paper Deep Surface Reconstruction from Point Clouds with Visibility Information.

Raphael Sulzer 23 Jan 04, 2023
Small-bets - Ergodic Experiment With Python

Ergodic Experiment Based on this video. Run this experiment with this command: p

Michael Brant 3 Jan 11, 2022
Code for EMNLP 2021 paper: "Learning Implicit Sentiment in Aspect-based Sentiment Analysis with Supervised Contrastive Pre-Training"

SCAPT-ABSA Code for EMNLP2021 paper: "Learning Implicit Sentiment in Aspect-based Sentiment Analysis with Supervised Contrastive Pre-Training" Overvie

Zhengyan Li 66 Dec 04, 2022
HHP-Net: A light Heteroscedastic neural network for Head Pose estimation with uncertainty

HHP-Net: A light Heteroscedastic neural network for Head Pose estimation with uncertainty Giorgio Cantarini, Francesca Odone, Nicoletta Noceti, Federi

18 Aug 02, 2022
CUP-DNN is a deep neural network model used to predict tissues of origin for cancers of unknown of primary.

CUP-DNN CUP-DNN is a deep neural network model used to predict tissues of origin for cancers of unknown of primary. The model was trained on the expre

1 Oct 27, 2021
Adversarial Attacks are Reversible via Natural Supervision

Adversarial Attacks are Reversible via Natural Supervision ICCV2021 Citation @InProceedings{Mao_2021_ICCV, author = {Mao, Chengzhi and Chiquier

Computer Vision Lab at Columbia University 20 May 22, 2022
An implementation of Fastformer: Additive Attention Can Be All You Need in TensorFlow

Fast Transformer This repo implements Fastformer: Additive Attention Can Be All You Need by Wu et al. in TensorFlow. Fast Transformer is a Transformer

Rishit Dagli 139 Dec 28, 2022
Zalo AI challenge 2021 task hum to song

Zalo AI challenge 2021 task Hum to Song pipeline: Chuẩn bị dữ liệu cho quá trình train: Sửa các file đường dẫn trong config/preprocess.yaml raw_path:

Vo Van Phuc 105 Dec 16, 2022
MutualGuide is a compact object detector specially designed for embedded devices

Introduction MutualGuide is a compact object detector specially designed for embedded devices. Comparing to existing detectors, this repo contains two

ZHANG Heng 103 Dec 13, 2022
Yolov5 deepsort inference,使用YOLOv5+Deepsort实现车辆行人追踪和计数,代码封装成一个Detector类,更容易嵌入到自己的项目中

使用YOLOv5+Deepsort实现车辆行人追踪和计数,代码封装成一个Detector类,更容易嵌入到自己的项目中。

813 Dec 31, 2022
Official code release for 3DV 2021 paper Human Performance Capture from Monocular Video in the Wild.

Official code release for 3DV 2021 paper Human Performance Capture from Monocular Video in the Wild.

Chen Guo 58 Dec 24, 2022
Python script that takes an Impulse response .wav and a input .wav to demonstrate audio convolution.

convolver Python script that takes an Impulse response .wav and a input .wav to demonstrate audio convolution. Created by Sean Higley

Sean Higley 1 Feb 23, 2022
thundernet ncnn

MMDetection_Lite 基于mmdetection 实现一些轻量级检测模型,安装方式和mmdeteciton相同 voc0712 voc 0712训练 voc2007测试 coco预训练 thundernet_voc_shufflenetv2_1.5 input shape mAP 320

DayBreak 39 Dec 05, 2022