General molecular generator with deep learning approach is difficult to fix substructure. But common SAR expansion by medchem is focus on specific part such as terminal part, core and linker.
Linker is defined as a part which connect parts of molecules. Linker is important of drug design and is called scaffold when the linker connets two or three parts. And also important in PROTAC design. So it’s useful if deep learning based generator can design linker ;). As you know delinker(https://github.com/fimrie/DeLinker) is one of the useful and cool code for linker design.
Recently, AstraZeneca team disclosed cool linker generator code for REINVET named Link-INVENT which is implemented in REINVENT v3.2. Link-INVENT is new option of REINVENT for liker design with many useful scoring options.
Link-INVENT can use following linker design specific scoring functions. As you can see, the package can design specific linker.
LinkerEffectiveLength
LinkerGraphLength
LinkerLengthRatio
LinkerNumRings
LinkerNumAliphaticRings
LinkerNumAromaticRings
LinkerNumSPAtoms
LinkerNumSP2Atoms
LinkerNumSP3Atoms
LinkerNumHBA
LinkerNumHBD
LinkerMolWeight
LinkerRatioRotatableBonds
I had interest the code and tried to use it. Fortunately Reinvent community provides useful example code in ReinventCommunity. Ok, let’s test it!
At first I modified code from ReinventCommunity, added scoring function.
I added ‘linker_graph_length’ scoring function for controlling length of molecules.
And after running the learnig process, I checked the learning process with tensorboad. It’s really useful to review the learning process becase I can see not only learning score but also structures of each learning process.

Here is the first output of the learning process.

And here is the molecules from last learning step .

The molecules which generated at last learning step has rigid and short linker which is defined by scoring function.
In summary, I think REINVENT is cool and flexible molecular generator code. I respect authors work and thank for sharing the nice code ;)