Code reimplementation of some papers published in SAIL-Lab

Related tags

HardwareSAIL
Overview

SAIL

SAIL-Lab统一代码库

Motivation

创建这个项目的动机最早来源于实验室组内成员相互Debug代码的时候遇到的麻烦。由于整个小组内所做的课题非常类似,而借鉴的代码都是来自不同的人写的,尽管大部分的时候都使用Pytorch,但是每个人写的特征计算流程、数据预处理流程、模型训练流程、模型推理流程、性能评估流程千差万别,这非常不利于组内的科研交流,因此萌生了写一套完整的、统一的代码库,同时也便于实验室后续的同学继续研究相关课题。

除此之外,还有下列的一些原因帮助推动该代码库持续不断的完善和更新。

  1. 实验室内部对于特征计算以及模型性能评估的理解有所差异甚至出现错误,并且延续了多个年级的研究生。
  2. 当希望尝试加入新的计算特征时发现要对原始代码进行大规模的改动。
  3. 组内所研究的药物分子、晶体分子以及蛋白质分子属于规模复杂程度不同的图,但是很多对于药物分子有效的工程技巧未必适用于另外两者。
  4. 无法避免的batch size=1的问题。

该项目作为我的硕士毕业论文的展望与延伸部分,会持续进行更新,并且在实验室允许的范围内进行开源。

TODO

下面展示的模型代码复现主要方向为SAIL-Lab药物分子、晶体分子以及蛋白质分子相关研究的模型。

CMPNN

  • 根据Moleculenet中收集的数据集,增加Quantum Mechanics系列和Biophysics系列中提到的数据集结果。
  • 根据OGB中收集的数据集,增加结果。

CoMPT

  • 代码进度0%

CrystalNet

  • 检查重现代码的性能与原始实现性能相差较大的问题。
  • 检查由于GRU带来的晶胞图与超晶胞图性能不一致问题。

DeepANIS

  • 代码进度0%

GraphPPIS

  • 增加性能结果日志。

GraphSite

  • 代码进度60%

GraphSol

  • 增加S.cerevisiae数据集的结果。
  • 增加DeepSol数据集的结果。

SPROF

  • 代码进度95%
  • 加速Paper中超大模型的运行时间,减少消耗的显存。

Thank you

如果你觉得本项目对你的科研进展有所帮助的话,请给本项目一个star,谢谢!

Owner
Jianwen Chen
Chemistry, Math, Computer
Jianwen Chen
A LiteX project which builds a SoC with DRAM / HDIM output via the GPDI SYZYGY addon.

ButterStick GPDI LiteX demo A LiteX project which builds a SoC with DRAM / HDIM output via the GPDI SYZYGY addon. Getting started Connect GPDI board t

4 Nov 21, 2021
Robot Framework keyword library wrapper for atlassian-python-api

Robot Framework keyword library wrapper for atlassian-python-api

Marcin Koperski 3 Jul 29, 2022
This Home Assistant custom component adding support for controlling Midea dehumidifiers on local network.

This custom component for Home assistant adds support for Midea dehumidifier appliances via the local area network. homeassistant-midea-dehumidifier-l

Nenad Bogojevic 91 Dec 28, 2022
ESP32 micropython implementation of Art-Net client

E_uArtnet ESP32 micropython implementation of Art-Net client Instalation Use thonny Open the root folder in thonny and upload the Empire folder like i

2 Dec 07, 2021
The goal of this project is for anyone with an old printer to be able to double-sided printing.

Welcome to PDF-double-side! Hi! I'm 15. I have a old printer so I can't print double-sided outs. The goal of this project is for anyone with an old pr

DejaVu 4 Dec 28, 2021
A python library written for the raspberry pi.

A python package for using certain components on the raspberry pi.

Builder212 1 Nov 09, 2021
Kwcpu - An unobtrusive CPU meter that fits in the default Windows 11 taskbar. Supports up to 32 cores.

kwcpu An unobtrusive CPU meter that fits in the default Windows 11 taskbar. Supports up to 32 cores. kwcpu is provided as a Rainmeter skin. By default

Jay Oster 2 Nov 07, 2022
ESP32 recording button presses, and serving webpage that graphs the numbers over time.

ESP32-IoT-button-graph-test ESP32 recording button presses, and serving webpage via webSockets in order to graph the responses. The objective was to t

f-caro 1 Nov 30, 2021
E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

2.8k Dec 30, 2022
A DUCO (Duino-Coin) miner for GigaDevice ARM boards.

GD32 Duino-Coin Miner Description Contains the firmware and miner software for mining DUCO (Duino-Coin) on GigaDevice GD32 chips. Supported boards GD3

Maximilian Gerhardt 2 Feb 20, 2022
LedFx is a network based LED effect controller with support for advanced real-time audio effects

Welcome to LedFx ✨ -Making music come alive! LedFx website: https://ledfx.app/ What is LedFx? What LedFx offers is the ability to take audio input, an

786 Jan 02, 2023
Plug and Play on Internet of Things with LoRa wireless modulation.

IoT-PnP Plug and Play on Internet of Things with LoRa wireless modulation. Device Side In the '505_PnP' folder has a modified ardunino template code s

Lambert Yang 1 May 19, 2022
Hook and simulate global mouse events in pure Python

mouse Take full control of your mouse with this small Python library. Hook global events, register hotkeys, simulate mouse movement and clicks, and mu

BoppreH 722 Dec 31, 2022
raspberry pi servo control using pca9685

RPi_servo-control_pca9685 raspberry pi 180° servo control using pca9685 Requirements Requires you to have the adafruit servokit library installed You

1 Jan 10, 2022
PBA: Pleco Breeding Assistant

A small monitor that reports the external, fishroom and water change parameters to have suitable water parameters and induce breeding. These two features already represent 50% of the "reproductive su

Mirko Mancin 1 Jan 19, 2022
This repository contains all the code and files needed to simulate the notspot quadrupedal robot using Gazebo and ROS.

Notspot robot simulation - Python version This repository contains all the files and code needed to simulate the notspot quadrupedal robot using Gazeb

50 Sep 26, 2022
Beam designs for infinite Z 3D printers

A 3D printed beam that is as stiff as steel A while ago Naomi Wu 机械妖姬 very kindly sent us one of Creality's infinite-Z belt printers. Lots of people h

RepRap Ltd 105 Oct 22, 2022
A Home Assistant integration for Solaredge inverters

A Home Assistant integration for Solaredge inverters. Supports multiple inverters chained through RS485.

Seth 50 Dec 23, 2022
Trajectory optimization package for Mini-Pupper robot

Trajectory optimization package for Mini-Pupper robot Purpose of this repository is to provide low-torque and low-impact trajectory for Mini-Pupper qu

Sotaro Katayama 38 Aug 17, 2022
Connect a TeslaMate instance to Home Assistant, using MQTT

TeslaBuddy Connect a TeslaMate instance to Home Assistant, using MQTT. It allows basic control of your Tesla vehicle via Home Assistant (currently, ju

4 May 23, 2022