Giter Site home page Giter Site logo

group-selfies's Introduction

Group SELFIES

https://arxiv.org/abs/2211.13322

Installation

Python >= 3.8 is required.

RDKit is required to use this package. Once it is installed, clone this repository using

git clone https://github.com/aspuru-guzik-group/group-selfies

and run

pip install .

in the cloned folder.

Introduction

Group SELFIES extends SELFIES with the ability to represent groups with single tokens. This improves interpretability, compactness, and performance in generative models.

Encoding
Encoding process
Decoding
Decoding process

Usage

See tutorial.ipynb for details on usage. For key classes/functions, see below:

Class/Function Description
group_selfies.Group Class that represents groups.
group_selfies.GroupGrammar Class that represents a grammar, which is a set of groups used for encoding and decoding.
grammar.extract_groups Finds occurences of the grammar's defined set of groups in a molecule.
grammar.encoder Encodes a molecule to its corresponding Group SELFIES representation. Requires extracted group occurences returned by grammar.extract_groups
grammar.decoder Decodes a Group SELFIES string to its corresponding molecule.
grammar.full_encoder Extracts groups from a molecule and encodes it, essentially a combination of grammar.extract_groups and grammar.encoder. Mainly for convenience.
group_selfies.fragment_mols Fragments a set of molecules into a set of reasonable groups.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.