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
Activate Numpad inside the touchpad with top right corner switch or F8 key

This is a python service which enables switching between numpad and touchpad for the Asus UX433. It may work for other models.

Mohamed Badaoui 230 Jan 08, 2023
CircuitPython library for the CH559 USB to Serial chip

CH559 (USB to Serial) CircuitPython Library Why? Because you might want to get keyboard/mouse/gamepad/HID input into your CircuitPython projects witho

Guy Dupont 3 Nov 19, 2022
Playing diabolo with two robot arms in ROS + Gazebo

Playing diabolo with robots This repository holds the ROS packages for playing diabolo with two UR5e robot arms on ROS Melodic (Ubuntu 18.04). Read ou

23 Dec 18, 2022
Count the number of people around you 👨‍👨‍👦 by monitoring wifi signals 📡 .

howmanypeoplearearound Count the number of people around you 👨‍👨‍👦 by monitoring wifi signals 📡 . howmanypeoplearearound calculates the number of

Zack 6.7k Jan 07, 2023
Bucatini: a soft PIPE PHY for FPGA SerDes

Bucatini: a soft PIPE PHY for FPGA SerDes Bucatini is a noodly gateware layer capable of transforming an FPGA SerDes into a PIPE PHY, allowing you to

Great Scott Gadgets 28 Dec 02, 2022
This application works with serial communication. Use a simple gui to send and receive serial data from arduino and control leds and motor direction

This application works with serial communication. Use a simple gui to send and receive serial data from arduino and control leds and motor direction

ThyagoKZKR 2 Jul 18, 2022
Code reimplementation of some papers published in SAIL-Lab

SAIL SAIL-Lab统一代码库 Motivation 创建这个项目的动机最早来源于实验室组内成员相互Debug代码的时候遇到的麻烦。

Jianwen Chen 8 Nov 15, 2022
Python library to manipulate Ingenico mobile payment device like iCT220 or iWL220 equipped with Telium Manager. RS232/USB.

Python library to manipulate Ingenico mobile payment device like iCT220 or iWL220 equipped with Telium Manager. RS232/USB.

TAHRI Ahmed R. 72 Dec 24, 2022
Lego Mindstorms EV3 and Lego Spike Prime

Lego Mindstorms EV3 and Lego Spike Prime What is FLL? The FIRST LEGO League Challenge Robotics Tournament challenges students from 9 to 16 years old t

Danimar Campos da Costa 1 Nov 14, 2021
PyTorch implementation of paper "MT-ORL: Multi-Task Occlusion Relationship Learning" (ICCV 2021)

MT-ORL: Multi-Task Occlusion Relationship Learning Official implementation of paper "MT-ORL: Multi-Task Occlusion Relationship Learning" (ICCV 2021) P

Panhe Feng 12 Oct 11, 2022
Inykcal is a software written in python for selected E-Paper displays.

Inykcal is a software written in python for selected E-Paper displays. It converts these displays into useful information dashboards. It's open-source, free for personal use, fully modular and user-f

Ace 727 Jan 02, 2023
Pihole-eink-display - A simple Python script to display PiHole statistics on an eInk Display

Pihole-eink-display - A simple Python script to display PiHole statistics on an eInk Display

Mark McIntyre 64 Oct 11, 2022
Ha-rpi gpio - Home Assistant Raspberry Pi GPIO Integration

Home Assistant Raspberry Pi GPIO custom integration This is a spin-off from the

Shay Levy 98 Dec 24, 2022
An alternative to Demise-Assistant-Batch made entirely in Python for more capabilities.

Demise-Assistant-Python An alternative to Demise-Assistant-Batch made entirely in Python for more capabilities. IMPORTANT NOTE Demise-Assistant-Batch

SkelOrganisation 1 Nov 24, 2021
Python library for the Phomemo m02s bluetooth thermal printer

Phomemo M02S Python library This is a basic Python library for controlling the Phomemo M02S bluetooth thermal printer. It probably only works on Mac &

Stargirl Flowers 28 Nov 07, 2022
gdsfactory is an EDA (electronics design automation) tool to Layout Integrated Circuits.

gdsfactory 3.5.5 gdsfactory is an EDA (electronics design automation) tool to Layout Integrated Circuits. It is build on top of phidl gdspy and klayou

147 Jan 04, 2023
Home solar infrastructure (with Peimar Inverter) monitoring based on Raspberry Pi 3 B+ using Grafana, InfluxDB, Custom Python Collector and Shelly EM.

raspberry-solar-mon Home solar infrastructure (with Peimar Inverter) monitoring based on Raspberry Pi 3 B+ using Grafana, InfluxDB, Custom Python Coll

cislow 10 Dec 23, 2022
Mycodo is open source software for the Raspberry Pi that couples inputs and outputs in interesting ways to sense and manipulate the environment.

Mycodo Environmental Regulation System Latest version: 8.12.9 Mycodo is open source software for the Raspberry Pi that couples inputs and outputs in i

Kyle Gabriel 2.3k Dec 29, 2022
For use with an 8-bit parallel TFT touchscreen using micropython

ILI9341-parallel-TFT-driver-for-micropython For use with an 8-bit parallel TFT touchscreen using micropython. Many thanks to prenticedavid and his MCU

3 Aug 02, 2022
An IoT Trivia app that shows you how to take a JSON web API such as the opentdb.com API and stream and display it on a FeatherS2 in an OLED display.

CircuitPython IoT Trivia ESP32-S2 OLED Version An IoT Trivia app that shows you how to take a JSON web API such as the opentdb.com API and stream and

Kevin Thomas 1 Nov 27, 2021