I maskininlärning används ofta olika funktioner eller "fingerprints" för att representera kemiska föreningar och deras potentiella egenskaper. En central komponent i den här processen är hur vi kan tolka modellvikterna och deras samband med specifika bitar i molekylstrukturer. I en situation där negativa modellvikter är associerade med bitar som minskar en viss egenskap, är det viktigt att förstå att varje substruktur i en förening ofta påverkar flera bitar, och varje bit kan vara relevant för flera olika strukturer. Därför är det inte alltid möjligt att dra en exakt slutsats om hur en enskild bit relaterar till en enda struktur. Trots detta kan vi extrahera exempel på fingeravtryck som har en betydande inverkan på bitar, och genom dessa exempel kan vi få insikter i hur specifika strukturella element påverkar prediktionerna.
En metod för att visualisera denna påverkan är att identifiera de bitar i fingeravtrycken som har de största positiva och negativa vikterna. Detta kan göras genom att sortera modellvikterna och därefter extrahera exempel som representerar de bitar som har störst inverkan på en egenskap. Genom att använda programvara kan vi visualisera dessa strukturer och förstå hur de påverkar den övergripande modellen. För varje bit som har en stor positiv eller negativ vikt, kan vi identifiera de substrukturer i molekyler som är förknippade med denna bit och undersöka hur dessa strukturer samverkar för att påverka den predicerade egenskapen.
I figur 3.19 visas exempel på tre strukturer med de mest positiva och negativa vikterna. Varje bit kan motsvara flera olika strukturer, men vi visar endast den första strukturen för varje bit. Det är viktigt att notera att dessa visuella representationer kan vara mycket informativa när vi försöker förstå modellens interna funktion och de kemiska egenskaper som påverkar modellens beslut.
För att ytterligare förstå och utvärdera modellen, används ofta prestandamått för att benchmarka den mot andra metoder. En enkel metod är att använda en slumpmässig eller naiv klassificerare för att jämföra modellens prestanda. Detta ger oss en baslinje för att förstå om vår modell faktiskt tillför något i relation till en helt godtycklig gissning. En annan användbar jämförelse är att utvärdera modellen mot experimentella data, som till exempel IC50-värden, och se hur noggrant modellen kan förutsäga dessa värden.
Matthews korrelationskoefficient (MCC) är ett användbart mått för binära klassificeringsmodeller, särskilt när datasetet är obalanserat, som det ofta är i farmaceutiska tillämpningar. MCC är ett sätt att ta hänsyn till alla delar av förvirringsmatrisen, vilket gör det till ett bra val för att förstå modellens verkliga förmåga att förutsäga olika klasser. Ett MCC-värde nära +1 indikerar en perfekt klassificerare, medan ett värde nära 0 tyder på att modellen inte presterar bättre än en slumpmässig gissning.
En viktig aspekt av alla modeller är att förstå deras tillämplighetsområde. Detta innebär att vi måste bedöma hur väl modellen generaliserar till nya data, särskilt till molekyler som skiljer sig avsevärt från de som ingår i träningsdatan. Detta kallas modellens "applicability domain". I många fall kan en modell vara mycket bra för att förutsäga egenskaper hos molekyler som liknar de i träningsuppsättningen, men det är osäkert hur bra den kommer att prestera på helt nya molekyler. För att verkligen förstå en modells styrka måste vi definiera detta domänområde och regelbundet utvärdera om modellen är tillförlitlig för de nya data som den kommer att tillämpas på.
En ytterligare aspekt är att vi också måste kunna spara och tillämpa våra modeller på nya, externa data. Detta görs genom att spara modellen i ett filformat som kan laddas och användas för framtida prediktioner. Scikit-learn ger stöd för att spara och ladda modeller, vilket är avgörande för att tillämpa dem på nya datasätt. Genom att använda koden för att applicera modellen på data från exempelvis Malaria Box kan vi utvärdera hur väl modellen fungerar på data som inte fanns i träningsuppsättningen.
I vår modellutveckling har vi gått igenom alla steg från problemdefinition och datainsamling till modellträning och utvärdering. För att säkerställa att vår modell fortsätter att vara användbar och effektiv måste vi också ha en plan för att kontinuerligt utvärdera och uppdatera den. Detta kan inkludera att identifiera problem i datakurationen eller förändringar i molekylstandardisering som kan påverka modellens prestanda.
Sammanfattningsvis är det centralt att förstå vikten av modellens interna parametrar, som bitar och vikter, och hur dessa kan kopplas till specifika strukturella egenskaper hos molekyler. Att ha en robust metod för att utvärdera modellens prestanda, inklusive användning av lämpliga benchmark-mått och tillämplighetsdomän, är avgörande för att säkerställa att den verkligen är användbar i praktiska tillämpningar. Det handlar också om att kunna spara och applicera modellen på externa data, vilket gör det möjligt att använda den för att identifiera nya potentiella läkemedelsmål eller för att föreslå nya molekylära strukturer som kan vara av intresse i läkemedelsforskning.
Hur latenta rum gör det möjligt att optimera molekyler med hjälp av förstärkningsinlärning
Decompression är där magin händer. Genom att välja en slumpmässig punkt på kartan – även en punkt som inte motsvarar någon befintlig "ZIP-fil" – kan vi "avzipa" den. Modellen använder sina inlärda kemiska regler för att översätta denna punkt tillbaka till en fullständig och giltig molekylstruktur. Eftersom vi valde en ny punkt, får vi en helt ny molekyl som troligtvis inte existerar i vår ursprungliga databas. Strukturen hos detta komprimerade rum (det latenta rummet) kan också utnyttjas för att optimera egenskaper. För att göra en molekyl mer löslig, behöver man inte plåga sig med att ändra dess atomer och bindningar. Istället kan man hitta dess punkt på kartan och helt enkelt skjuta den mot "höga löslighetens" region. När man "avzipar" denna nya punkt får man en ny molekyl som är liknande den ursprungliga, men som nu är optimerad för bättre löslighet.
Nyckelkonceptet är att vi går från direkt strukturell manipulation till navigering i det latenta rummet. Genom att arbeta inom detta komprimerade latenta rum undviker vi det röriga och komplexa arbetet med att direkt redigera molekyler. Istället kan vi navigera på en mycket enklare, kontinuerlig karta för att designa och optimera nya molekyler med önskade egenskaper, utan att behöva göra explicita kemiska modifieringar. Så länge det latenta rummet är välstrukturerat, är punkterna inom det mer benägna att avkoda till giltiga molekyler.
För att skapa molekyler med specifika, optimerade egenskaper krävs mer än bara en förtränad generativ modell. Här spelar förstärkningsinlärning (RL) en avgörande roll. I RL lär sig en agent (vår optimeringsalgoritm) att fatta en sekvens av beslut inom en miljö (det latenta rummet för vår generativa modell) för att maximera en kumulativ belöning. Belöningsfunktionen är designad för att ge positiv återkoppling när agenten genererar en molekyl med goda egenskaper (t.ex. hög förutsagd bindningsaffinitet, god läkemedelslikhet) och negativ återkoppling i andra fall. Genom att iterativt utforska det latenta rummet och få feedback via belöningsfunktionen, kan RL-agenten lära sig att styra genereringsprocessen mot molekyler som uppfyller våra designmål.
Det latenta rummet fungerar som en karta för vårt explorationssystem. För att skapa en effektiv karta för den kemiska världen måste vi säkerställa att den har vissa nyckelkomponenter: giltighet, rekonstruktion och kontinuitet. Giltighet innebär att punkterna på kartan måste representera verkliga, kemiskt möjliga strukturer. Om agenten pickar en punkt och dekodaren producerar en ogiltig molekyl, kan ingen meningsfull feedback ges, och optimeringen stannar upp. Det är som en världskarta där vissa koordinater leder till obefintliga eller förvrängda platser – en sådan karta skulle vara värdelös.
Rekonstruktion är också avgörande. Efter att en molekyl kodats om till en latent vektor och senare dekodats tillbaka, ska den rekonstruerade molekylen vara så lik den ursprungliga som möjligt. Om koordinaterna för ett landmärke inte kan återge den verkliga platsen, då är kartan bruten. En hög strukturlikhet mellan den ursprungliga molekylen och den rekonstruerade molekylen, till exempel genom Tanimoto-likhet, är en indikator på att vårt latenta rum fångar de relevanta strukturella aspekterna av molekylen.
Slutligen, kontinuitet är en annan viktig egenskap hos ett användbart latent rum. En liten rörelse på kartan bör leda till en liten och förutsägbar förändring i molekylen. Strukturellt lika molekyler ska vara nära varandra, som grannar på kartan. Detta möjliggör en effektiv navigering och en lättare optimeringsprocess.
För att säkerställa att det latenta rummet fungerar på detta sätt, behövs en noggrann design av den generativa modellen, som ofta involverar komplexa nätverksarkitekturer som Variational Autoencoder med Cyclical Annealing (VAE-CYC). Denna modell gör det möjligt att omvandla SMILES-strängar till kontinuerliga latenta vektorer och tillbaka, vilket skapar ett högt kvalitativt latent rum som kan användas för molekyloptimering. Denna typ av generativ modell fungerar inte bara som en karta utan också som en värdefull guide för att generera molekyler med specifika egenskaper.
Förstärkningsinlärning, i kombination med detta latenta rum, skapar en kraftfull metod för att generera nya molekyler som uppfyller strikta designmål. Genom att återkoppla belöningssystemet och kontinuerligt utforska rummet kan vi skapa molekyler med optimala egenskaper för läkemedelsutveckling. I det här sammanhanget fungerar förstärkningsinlärning som en form av vägledning för agenten som, genom trial-and-error, lär sig att hitta den bästa vägen i det latenta rummet.
Genom att förstå och implementera dessa teknologier får forskare ett kraftfullt verktyg för att accelerera upptäckten av nya läkemedel och optimera befintliga molekyler på ett sätt som inte var möjligt tidigare.

Deutsch
Francais
Nederlands
Svenska
Norsk
Dansk
Suomi
Espanol
Italiano
Portugues
Magyar
Polski
Cestina
Русский