Multikollinaritet är ett vanligt problem som kan orsaka stora koefficienter i regressionsmodeller. Ett huvudsyfte med regression är att isolera sambandet mellan varje oberoende variabel och målvariabeln. En regressionskoefficient representerar förändringen i den beroende variabeln för varje enhetsändring i en oberoende variabel. Men när flera strukturer sätter bitar och vi använder dessa bitar som funktioner, finns det troligtvis en icke försumbar korrelation mellan varje funktion. Multikollinaritet påverkar vår förmåga att tolka modellens vikter, eftersom de underliggande korrelationerna mellan funktionerna kan leda till alltför stora och instabila koefficientvikter. Små förändringar i en koefficient under inlärning sprider sig till de koefficienter som är korrelerade med den, vilket gör det svårt att isolera hur en förändring i en viss funktion påverkar målvariabeln. Ju starkare korrelationen mellan funktionerna, desto svårare blir det att tolka effekten av förändringar i en funktion, då de "oberoende" funktionerna faktiskt förändras samtidigt.
För att upptäcka multikollinaritet kan vi beräkna Variance Inflation Factor (VIF) för varje oberoende variabel. VIF mäter hur mycket variansen i en uppskattad regressionskoefficient ökar om dina prediktorer är korrelerade. En tumregel är att om VIF-värden överstiger 10 indikerar det allvarlig multikollinaritet som kräver åtgärd. En annan metod är att undersöka korrelationsmatrisen mellan funktioner och leta efter korrelationskoefficienter nära +1 eller -1.
För att motverka överanpassning finns det olika tillvägagångssätt. Ett sätt är att skaffa mer data eller välja en enklare modell, som en linjär modell som tar in 512-bitars fingeravtryck istället för 2048-bitars fingeravtryck. Ett annat alternativ är att behålla flexibiliteten hos mer komplexa modeller samtidigt som man begränsar inlärningsalgoritmen mot enklare modeller som kan generalisera bättre till tidigare osedda prover. Modellen riskerar att överanpassa sig till specifika substrukturer med stora avvikande koefficienter eller till substrukturer vars fragment överlappar med det fragment som är den verkliga orsaken till hERG-blockering.
Regularisering är en teknik för att förhindra att en modell blir för komplex eller anpassar sig för mycket till träningsdata, vilket främjar att modellen följer enklare och mer robusta mönster i data. Vi definierar en modells komplexitet genom vikternas magnitud, och vi lägger till ett straffterm till modellens kostnadsfunktion som uppmuntrar modellen att minska storleken på sina koefficientvikter. Vi kommer att överväga tre vanliga regulariseringsvarianter – lasso-regression, ridge-regression och elastic net.
Lasso-regression använder L1-normen som en extra straffterm till kostnadsfunktionen, där summan av de absoluta värdena av vikterna multipliceras med en konstant regulariseringsparameter, λ. Ju större regulariseringsparametern, desto högre straff. En relaterad metod är ridge-regression, som använder L2-normen som regularisator, där summan av de kvadrerade vikterna används som straff. I ridge-regression prioriteras minskning av större vikter och de reduceras först, vilket uppmuntrar en mer jämnt fördelad fördelning av vikterna. Medan ridge-regression krymper vikterna mot noll, kommer det inte att sätta några till exakt noll. Lasso-regression prioriterar däremot att minska vikterna för funktioner som är irrelevanta och sätter dessa vikter till noll. Funktioner med nollvikter tas effektivt bort från modellen, vilket lämnar ett subset av de verkligt relevanta funktionerna. I början verkar lasso-regression vara mest användbar när vi har fler parametrar än datapunkter, och eftersom fingeravtrycks-funktionerna är sparsamma, hjälper lasso till att eliminera funktioner som inte ger någon information för att förutsäga hERG-blockering.
En annan viktig aspekt av regressionsmodellernas förmåga att passa data är den linjära antagandet. Linjärmodellens antagande innebär att vi förväntar oss att data har en linjär form, vilket betyder att en förändring i en inmatad funktions värde motsvarar en konstant förändring i output-prediktionen, och det övergripande sambandet kan representeras med en rak linje. Om data är icke-linjär kommer en linjär modell inte att kunna passa data, vilket leder till felaktiga förutsägelser och oförmåga att generalisera till osedda data.
För att testa linjäriteten kan vi plotta linjärmodellens förutsägelser mot de sanna värdena. Linjäritetsantagandet gäller om de plottade punkterna är symmetriskt fördelade över en diagonal. Vi kan också plotta modellens förutsägelser mot modellens residualer, och linjäritetsantagandet gäller om de plottade punkterna är symmetriskt fördelade över en horisontell linje. Om vi är osäkra kan Harvey-Collier statistiska test för linjäritet appliceras.
Om vi misstänker att våra data bara kan separeras med en icke-linjär beslutgräns, innebär det inte nödvändigtvis att vi måste överge vår linjära modellstrategi. Linjära modeller inkluderar en linjär kombination av datafunktioner och modellvikter för att beräkna en förutsägelse. Linjäriteten i modellvikterna är den centrala egenskapen som utgör en linjär modell. Vi kan ändå transformera funktionerna som vi önskar. Så länge modellvikterna förblir linjära stannar vi inom det analytiska området för linjära modeller. Om våra data bryter linjäritetsantagandena kan vi transformera dem till ett icke-linjärt funktionsutrymme och passa en linjär modell på de transformerade data.
Det finns olika typer av icke-linjära funktionstransformationer tillgängliga genom Scikit-Learn, där vi kan använda polynomiala funktionstransformationer. Om vi har två funktioner, a och b, skulle en 2-graders polynomtransformation resultera i funktionerna 1, a, b, a², ab, b². På samma sätt, för en 3-gradig polynomtransformation, skulle resultatet vara en bias (värdet 1), alla funktioner upphöjda till en viss grad (a, a², a³, b, b², b³) och alla möjliga kombinationer av alla funktioner (t.ex. ab, a²b, ab²). Termer som är produkten mellan två eller fler variabler är interaktionstermer och fångar den kombinerade effekten eller interaktionen mellan de involverade variablerna, vilket ger en mer nyanserad och kontextspecifik förståelse för deras påverkan på målvariabeln.
Även om funktionstransformationer erbjuder ökad flexibilitet och modellkapacitet kan de leda till en kombinatorisk explosion av funktioner som ökar både beräkningarna och risken för överanpassning. Funktionstransformationer ska väljas innan man ser på träningsdata för att undvika dataläckage eller så kallad "data snooping". Detta innebär att vi väljer en inlärningsmodell innan vi ser på data och endast baserar oss på antal datapunkter eller tidigare kunskap om att det finns ett inneboende icke-linjärt samband mellan indata och utdata.
Hur fungerar protein-ligand docking i läkemedelsdesign och strukturbaserad drug discovery?
Protein-ligand docking är en beräkningsmetod som används för att förutsäga hur små molekyler, såsom potentiella läkemedelskandidater, binder till specifika bindningsställen på proteiner. Denna teknik är särskilt användbar i läkemedelsdesign och vid förståelsen av biologiska processer, där proteiner spelar en central roll i cellernas funktioner. Att förstå och korrekt modellera interaktionen mellan ett protein och en ligand kräver en noggrann övervägning av både proteinets struktur och ligandens egenskaper, vilket gör processen både komplex och utmanande.
Trots att vi ofta arbetar med relativt små molekyler, måste vi ta hänsyn till proteinets dynamiska natur. Även de bäst veckade proteinerna genomgår lokaliserade rörelser eller stora konformationella förändringar för att utföra sina biologiska funktioner. Detta innebär att även små förändringar i proteinets form kan påverka hur ett ligand binder, vilket gör att docking-metoder ofta måste anpassas för att fånga dessa dynamiska aspekter. Tidigare, innan tillgången på högupplösta 3D-strukturer av proteiner blev mer utbredd, förlitade vi oss på experimentella metoder som kristallisering för att bevara proteinets form och skapa 3D-modeller. Men med dagens tillgång till avancerad beräkningskraft och förbättrade algoritmer är det möjligt att utföra mer precisa och omfattande dockingstudier.
Målet med ett molekylärt dockingexperiment är att förutsäga 3D-strukturen av det komplex som bildas när en eller flera molekyler binder till ett protein. Proteinbindningsställen är specifika regioner inom proteinets struktur där molekyler kan interagera och binda. Dessa bindningsställen kännetecknas ofta av en unik arrangemang av aminosyror som skapar en komplementär miljö för liganden i termer av form, laddningsfördelning, hydrofobicitet och vätebindningskapacitet. Den precisa konfigurationen av dessa bindningsställen gör att proteiner kan binda till specifika molekyler, vilket är avgörande för deras biologiska funktion.
Proteinbindningsställen är direkt relaterade till molekylär docking, som är en samling beräkningsmetoder som används för att förutsäga hur små molekyler binder till ett proteins aktiva eller allostera bindningsställe. Molekylär docking simulerar interaktionen mellan ett protein och en ligand genom att undersöka olika möjliga orienteringar och konformationer av liganden inom proteinets bindningsställe. Målet är att identifiera den mest energetiskt fördelaktiga bindningen, vilket ofta sker genom att poängsätta bindningen baserat på faktorer som komplementaritet, bindningsaffinitet och stabiliteten i interaktionen.
För att skapa en effektiv och pålitlig dockning krävs det två huvudkomponenter: konformationell sampling och pose-evaluering. För det första behöver vi en mekanism för att utforska det möjliga konformationsutrymmet för liganden inom proteinets bindningsställe. Detta kan ses som en sökalgoritm som går igenom alla möjliga konfigurationer av liganden. För det andra måste vi ha ett sätt att poängsätta eller rangordna dessa möjliga bindningar för att identifiera den mest troliga bindningen för varje förening och skapa en prioritetsordning bland föreningarna. Denna poängsättning kan ta hänsyn till faktorer som van der Waals-interaktioner, elektrostatiska interaktioner, vätebindningar och desolvationseffekter. Målet med dockningen är att hitta den ligandpose som har den lägsta (mest fördelaktiga) poängen, vilket innebär den mest stabila och troliga bindningen.
Docking är en process som kan liknas vid att lösa ett komplext 3D-pussel, men det är betydligt svårare, eftersom pusselbitarna inte är stela utan dynamiska. Detta innebär att de kan ändra form och anpassa sig till mycket komplexa former, vilket gör det svårt att hitta rätt orientering och skapa en stabil kontakt. Dockning kräver därför mycket exakta och detaljerade algoritmer för att kunna förutsäga och rangordna de möjliga bindningarna korrekt.
För att genomföra ett framgångsrikt protein-ligand dockningsexperiment krävs en noggrann förberedelse av indata, vilket inkluderar både proteinet och ligandens strukturer, samt en definition av bindningsstället där dockningen ska fokuseras. Ett exempel på ett sådant system är EGFR (epidermal growth factor receptor), som vi undersökte i kapitel 8. I vårt fall fokuserar vi på ATP-bindningsstället i EGFR:s gångjärnsregion, vilket har kopplingar till mutationer i EGFR som är associerade med icke-småcellig lungcancer (NSCLC). För att utföra docking behöver vi 3D-strukturen av det kristalliserade protein-ligand-komplexet, vilket hämtas från Protein Data Bank (PDB). Denna PDB-fil innehåller atomnivåns 3D-strukturella data för biomolekyler, inklusive atomkoordinater, bindningsförbindelser och andra viktiga metadata.
Den noggranna förberedelsen av både receptor- och ligandfiler är avgörande för att dockingexperimentet ska kunna genomföras korrekt. Därefter använder vi dockingprogramvara som AutoDock Vina för att utföra konformationssampling och pose-evaluering, följt av post-processering och analys av interaktionerna mellan liganden och proteinet. För att kunna göra detta krävs en omfattande förståelse för både de verktyg och metoder som används i dockningen, samt för det biologiska sammanhanget som vi undersöker.
Det är också viktigt att notera att molekylär docking inte bara handlar om att hitta bindningar mellan proteiner och ligander. Det handlar också om att förstå hur dessa bindningar kan påverka proteinets funktion, vilket är avgörande för att utveckla läkemedel som kan modulera denna funktion på ett specifikt sätt. Ofta är målet att antingen hämma eller aktivera ett proteins biologiska aktivitet, vilket kan göras genom att binda till dess aktiva eller allostera bindningsställen. I läkemedelsutveckling är denna förståelse grundläggande för att skapa mer effektiva och selektiva läkemedel.
Hur generativa modeller förändrar molekylär design inom läkemedelsutveckling
Läkemedelsutveckling, den komplexa och tidskrävande processen att hitta nya mediciner, liknas ofta vid att leta efter en nål i en enorm höstack. Denna process är utmanande inte bara för dess omfattning utan också för de höga kostnaderna och de höga misslyckande-nivåerna. I kärnan handlar läkemedelsutveckling om att hitta eller skapa en molekyl som besitter de specifika egenskaper som krävs för att effektivt och säkert behandla en sjukdom. För att navigera denna enorma uppgift har forskare tagit till sig beräkningsmässiga tekniker som syftar till att göra processen mer effektiv och målinriktad. I denna del av boken undersöks hur generativa modeller kan hjälpa till att designa helt nya molekyler med önskvärda egenskaper.
Målet är att skapa en generativ modell som lär sig en komprimerad representation av den kemiska världen, en så kallad "latent space". Denna metod tillåter oss att navigera i denna förenklade värld för att designa och optimera nya molekyler utan att behöva undersöka hela den kemiska höstacken. I följande stycken beskriver vi hur en sådan kraftfull molekylär designmotor kan byggas och de specifika teknikerna bakom generativa modeller som kan förändra hur vi skapar nya läkemedel.
Den största utmaningen inom läkemedelsutveckling är den oöverträffade storleken på den kemiska världen, eller "kemiskt rum", som omfattar alla möjliga molekyler som kan betraktas som läkemedelslika. Det uppskattas att antalet möjliga föreningar kan överstiga 10^60, en siffra som vida överstiger antalet atomer i det observerbara universum. Detta innebär att det är omöjligt att på ett effektivt sätt syntetisera och testa ens en liten bråkdel av alla potentiella molekyler. Traditionella metoder som högkapacitets screening (HTS) har visat sig framgångsrika, men de är också kostsamma, tidskrävande och begränsade till redan existerande bibliotek av föreningar.
För att adressera denna enorma utmaning har forskare börjat använda generativa modeller för att skapa helt nya molekylära strukturer från grunden. Detta har lett till en ny paradigm för molekylär design. Istället för att göra små, diskreta ändringar på befintliga molekyler kan generativa modeller skapa nya molekyler som inte finns i databaser, vilket gör det möjligt att hitta nya och potentiellt mer effektiva kemiska strukturer.
Generativa modeller, som autoencoders och variational autoencoders (VAEs), lär sig de underliggande mönstren och fördelningarna i en given uppsättning data och använder denna kunskap för att skapa nya syntetiska exempel. Genom att lära sig de grundläggande reglerna för kemi, såsom hur atomer kopplas ihop eller vilka orienteringar som är stabila, kan dessa modeller skapa förenklingar av komplexa molekyler i en så kallad latent space. Tänk på denna latent space som ett slags "komprimerat arkiv" för molekyler. En molekyls struktur är som en detaljerad ritning, men den kan komprimeras till en enklare uppsättning koordinater som bevarar all viktig information om den ursprungliga molekylen.
Detta komprimerade utrymme organiseras så att molekyler med liknande egenskaper hamnar nära varandra. Till exempel kan molekyler som är lösliga i vatten samlas på ett ställe, medan molekyler med specifika biologiska aktiviteter samlas på andra ställen. Genom att förstå och manipulera detta latent space kan vi designa molekyler som möter specifika terapeutiska behov, till exempel hög aktivitet mot ett mål, god löslighet och låg toxicitet.
En annan viktig komponent i dessa generativa modeller är användningen av avancerade tekniker som Recurrent Neural Networks (GRUs) och cyklisk uppvärmning. Dessa tekniker gör det möjligt för modeller att effektivt utforska den kemiska rymden och skapa molekyler med önskade egenskaper. Därtill spelar sofistikerad tokenisering och inbäddningslager en viktig roll, eftersom de tillåter modellen att representera och manipulera molekylstrukturer på ett sätt som är både effektivt och skalbart.
Det är också värt att notera att vanliga autoencoders ofta misslyckas med att generera helt nya molekyler. Detta beror på att de tenderar att bara återskapa befintliga strukturer utan att introducera verkligt nya och innovativa molekylära skeenden. VAEs övervinner denna begränsning genom att anta en probabilistisk ansats, vilket gör det möjligt för modellerna att skapa molekyler som inte bara är baserade på tidigare data utan också har möjlighet att upptäcka nya områden av kemiskt utrymme.
För att verkligen förstå potentialen med generativa modeller i läkemedelsutveckling är det också viktigt att beakta de praktiska tillämpningarna av denna teknik. Genom att generera nya molekyler från grunden kan vi skapa föreningar som inte bara är nya utan också bättre optimerade för specifika biologiska aktiviteter och fysiska egenskaper. Detta innebär en stor tids- och kostnadsbesparing för läkemedelsföretag, eftersom mycket av den traditionella forskningen som krävs för att finna lovande föreningar kan effektiviseras.
Det är också viktigt att förstå att trots de stora framstegen med generativa modeller, finns det fortfarande många utmaningar kvar. Molekyler som genereras behöver inte bara vara kemiskt stabila utan måste också genomgå rigorösa biologiska och toxikologiska tester innan de kan bli en potentiell läkemedelskandidat. Även om dessa modeller kan minska tiden för att hitta lovande föreningar, är det fortfarande ett betydande arbete kvar i att bekräfta deras säkerhet och effektivitet.

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