Pradžia / Programavimas / AI vaistų kūrime

AI vaistų kūrime

Prieš dešimt metų, jei paklaustum farmacijos inžinieriaus, kiek laiko užtrunka sukurti naują vaistą nuo idėjos iki vaistinės lentynos, jis tik nusišypsotų ir pasakytų – dešimt, penkiolika metų, milijardas dolerių, ir dar nėra garantijos, kad viskas pasiseks. Šiandien ta pati diskusija skamba kitaip. Dirbtinis intelektas įsiskverbė į molekulių paiešką, klinikinių tyrimų planavimą, net į tai, kaip prognozuojama, kaip baltymas susisuks trimatėje erdvėje. Nesakau, kad AI jau viską pakeitė – toli gražu ne, bet pokytis, kuris vyksta laboratorijose ir serveriuose vienu metu, yra pakankamai reikšmingas, kad apie jį reikėtų pasikalbėti be per didelio entuziazmo, bet ir be skepticizmo.

Kodėl vaistų kūrimas iš principo yra duomenų uždavinys

Jei pažiūrėtum į vaistų kūrimo procesą kaip programuotojas, pamatytum klasišką paieškos erdvės problemą. Cheminė erdvė, kurioje teoriškai gali egzistuoti mažos molekulės, vertinama apie 10^60 junginių. Palyginimui – visų atomų visatoje yra apie 10^80. Žmogus, dirbantis laboratorijoje, per savo karjerą gali fiziškai išbandyti gal kelis tūkstančius junginių. Tai reiškia, kad tradicinis metodas – sintezuoti, testuoti, koreguoti – yra iš esmės atsitiktinės paieškos algoritmas su labai lėta iteracija.

AI modeliai, ypač generatyviniai tinklai ir grafų neuroniniai tinklai (GNN), leidžia šią paiešką paversti optimizavimo uždaviniu. Vietoj to, kad testuotum viską iš eilės, modelis mokosi iš egzistuojančių duomenų apie molekulių struktūrą ir jų biologinį aktyvumą, ir tada generuoja naujus kandidatus, kurie statistiškai turėtų turėti norimas savybes. Tai panašu į tai, kaip vaizdų generavimo modeliai mokosi iš milijonų nuotraukų ir tada sukuria naują, realistišką vaizdą – tik čia „vaizdas“ yra molekulės struktūra, o „realizmas“ – tikimybė, kad junginys prisijungs prie taikinio baltymo ir neapnuodys pacientos kepenų.

AlphaFold ir baltymų sulankstymo revoliucija

Sunku rašyti apie AI vaistų kūrime ir nepaminėti AlphaFold. DeepMind sukurtas modelis 2020-2021 metais praktiškai išsprendė problemą, kuri biologams kėlė galvos skausmą per pusę amžiaus – kaip iš aminorūgščių sekos numatyti baltymo trimatę struktūrą. Anksčiau tokia struktūra buvo nustatoma rentgeno kristalografijos ar krioelektroninės mikroskopijos būdu, kas užtrunka mėnesius, kartais metus, ir kainuoja nemažus pinigus.

Kai turi baltymo struktūrą, gali suprasti, kur tiksliai molekulė gali prisijungti, kokia yra „kišenė“, į kurią turi tilpti vaistas. Tai yra pamatas visam tolimesniam projektavimui. AlphaFold duomenų bazėje šiuo metu yra sudėtos daugiau nei 200 milijonų baltymų struktūrų – praktiškai visi žinomi baltymai, kuriuos mokslas yra kada nors aprašęs. Tai nereiškia, kad vaistų kūrimas dabar yra trivialus, bet tai reiškia, kad viena iš didžiausių informacinių kliūčių tiesiog dingo.

Molekulių generavimas: kai algoritmas tampa chemiku

De novo molekulių dizainas – terminas, kuris skamba egzotiškai, bet reiškia paprastą dalyką: modelis generuoja naujas chemines struktūras nuo nulio, atsižvelgiant į nurodytus apribojimus. Norit molekulę, kuri slopina konkretų fermentą, bet nepraeina pro kraujo-smegenų barjerą (nes veikia periferinius audinius, ne centrinę nervų sistemą)? Modeliui galima nustatyti tokius parametrus kaip funkciją.

Naudojami skirtingi metodai:

  • Generatyviniai priešiškieji tinklai (GAN) – vienas tinklas generuoja molekules, kitas vertina, ar jos atrodo „tikroviškai“ ir atitinka farmakologines savybes.
  • Variacinis autoenkoderis (VAE) – molekulės koduojamos į vektorinį latentinį erdvę, kurioje galima „vaikščioti“ ir generuoti panašias, bet naujas struktūras.
  • Difuzijos modeliai – tie patys principai, kurie stovi už DALL-E ar Stable Diffusion, pritaikyti trimatėms molekulinėms struktūroms. Tai palyginti nauja kryptis, bet labai greitai auganti.
  • Sustiprinto mokymosi (reinforcement learning) agentai, kurie iteratyviai keičia molekulę, kad maksimizuotų tam tikrą tikslo funkciją – pvz., prisijungimo afinitetą ar tirpumą.

Praktiškai tai atrodo taip: kompanija Insilico Medicine 2021 metais paskelbė, kad jų AI sistema sugeneravo naują molekulę idiopatinei plaučių fibrozei gydyti per mažiau nei 18 mėnesių nuo taikinio identifikavimo iki klinikinių tyrimų pradžios. Palyginimui, tradiciškai šis etapas užtrunka 4-5 metus. Skaičius, žinoma, reikia vertinti atsargiai – vienas atvejis nėra statistika, bet trajektorija rodo, kad greitis keičiasi žymiai.

Kur AI realiai padeda, o kur dar tik žada

Verta atskirti, kur AI jau įrodė vertę, ir kur dar vyksta eksperimentavimas.

Taikinio identifikavimas ir validacija

Prieš pradedant kurti molekulę, reikia žinoti, į ką ji „šaudys“ – kokį baltymą, kokį genetinį kelią. Šiame etape natūrinio kalbos apdorojimo (NLP) modeliai skenuoja milijonus mokslinių publikacijų, patentų, klinikinių duomenų bazių, ieškodami koreliacijų, kurių žmogus tiesiog nepastebėtų dėl informacijos kiekio. Kompanijos kaip BenevolentAI ar Recursion Pharmaceuticals iš esmės parduoda šią kompetenciją – žinių grafų kūrimą ir ryšių tarp genų, ligų ir vaistų atradimą.

Molekulinis dizainas ir optimizacija

Šitas etapas, kaip minėjau, yra labiausiai pažengęs. Yra pakankamai atvirojo kodo įrankių (pvz., RDKit su integruotais ML modeliais), kad net mažesnės laboratorijos gali eksperimentuoti be milijoninių investicijų.

Klinikinių tyrimų planavimas

Čia dalykas įdomus – AI naudojamas ne molekulėms generuoti, o tam, kad klinikiniai tyrimai vyktų efektyviau. Pacientų atranka, stratifikacija pagal biomarkerius, dropout rizikos prognozavimas – visa tai galima modeliuoti statistiniais ir mašininio mokymosi metodais. Tai gal ne tokia „glamūriška“ AI panaudojimo sritis, bet finansiškai ji gali sutaupyti dešimtis milijonų, nes klinikiniai tyrimai yra brangiausia vaisto kūrimo dalis.

Toksiškumo prognozavimas

Vienas iš dažniausių nesėkmės priežasčių vaistų kūrime yra ne tai, kad molekulė neveikia, o tai, kad ji yra toksiška. AI modeliai, treniruoti ant milijonų žinomų junginių ir jų toksiškumo profilių, gali gan tiksliai prognozuoti hepatotoksiškumą, kardiotoksiškumą ar mutageniškumą anksti, be brangaus gyvūnų testavimo. Šitas etapas dar toli nuo idealaus, bet jau naudojamas praktiškai kaip pirminis filtras.

Duomenų kokybės problema, kurios niekas nemyli

Bet čia turiu pasakyti nepatogią tiesą – visa ši technologija tiek gera, kiek geri duomenys, kuriais ji treniruota. Farmacijos pramonėje duomenys istoriškai buvo fragmentuoti, dažnai nepublikuoti (jei eksperimentas nepavyko, retai kas rašo apie tai straipsnį), ir skirtingų laboratorijų matavimo metodikos nebūtinai suderintos.

Tai reiškia, kad modelis, kuris treniruotas viešai prieinamuose duomenų rinkiniuose kaip ChEMBL ar PubChem, gali turėti sisteminių paklaidų. Pavyzdžiui, jei duomenų bazėje daugiau kinazių inhibitorių nei kitų baltymų klasių (nes tai populiari onkologijos taikinių sritis), modelis natūraliai geriau „supranta“ tą chemijos sritį ir prasčiau generuoja idėjas kitiems taikiniams. Tai vadinama duomenų šališkumu (data bias), ir tai yra vienas didžiausių iššūkių, apie kurį rečiau kalbama nei apie modelių architektūrą.

Antra problema – „negatyvūs“ duomenys, tai yra informacija apie tai, kas NEVEIKIA, praktiškai neegzistuoja viešai. Įmonės retai skelbia savo nesėkmingus eksperimentus, nors tokia informacija būtų nepaprastai vertinga treniruojant modelius. Kelios iniciatyvos, pvz., Open Reaction Database, bando šią situaciją keisti, bet procesas lėtas, nes komercinis interesas dažnai eina prieš atvirumą.

Reguliavimo klausimas, kurio negalima ignoruoti

Kad ir kaip gerai AI sugeneruotų molekulę, ji vis tiek turi praeiti FDA ar EMA patvirtinimo procesą, kuris nebuvo sukurtas su algoritminiu dizainu galvoje. 2023 metais FDA paskelbė gaires dėl AI naudojimo vaistų kūrime, kuriose iš esmės pripažįsta, kad reikia naujos sistemos vertinti, kaip AI dalyvavo sprendimų priėmimo procese – nuo taikinio pasirinkimo iki dozavimo optimizavimo.

Problema ta, kad reguliatoriai reikalauja skaidrumo ir atsekamumo (traceability), o daugelis giliojo mokymosi modelių yra „juoda dėžė“ – net kūrėjai negali visiškai paaiškinti, kodėl modelis pasiūlė konkrečią molekulę. Ši tema, žinoma kaip aiškinamasis AI (explainable AI, XAI), tampa vis svarbesnė ne tik dėl reguliavimo, bet ir dėl mokslinio patikimumo – jei negali paaiškinti, kodėl modelis kažko rekomenduoja, sunku pasitikėti rezultatu, kai kalbama apie žmogaus sveikatą.

Praktiniai patarimai tiems, kas dirba ar planuoja dirbti šioje srityje

Jei esi IT specialistas ar duomenų mokslininkas, žvelgiantis į farmacijos sektorių, arba biotechnologas, kuris bando susigaudyti technologijose, keletas dalykų, kurie iš tiesų padeda:

  • Pradėk nuo cheminės informacijos pagrindų. SMILES notacija, molekulinės deskriptorius, Lipinski penkeriuko taisyklė – be šitų sąvokų sunku suprasti, kodėl modeliai daro tai, ką daro. RDKit biblioteka Python aplinkoje yra praktiškai standartas šioje srityje.
  • Nesitikėk, kad modelis pakeis eksperimentą. AI generuoja hipotezes, bet biologinis patvirtinimas laboratorijoje vis tiek būtinas. Kompanijos, kurios pardavė idėją, kad „AI viską padarys“, dažnai nusivylė investuotojus, kai paaiškėjo, kad in silico rezultatai neatitinka in vitro.
  • Sek duomenų kilmę (data provenance). Jei modelis treniruotas nesuderintais duomenimis iš skirtingų šaltinių, rezultatai bus nepatikimi, net jei architektūra puiki. Duomenų valymas dažnai užima daugiau laiko nei modelio treniravimas.
  • Susipažink su federuoto mokymosi (federated learning) koncepcija. Farmacijos kompanijos nenori dalintis savo brangiais patentuotais duomenimis, bet kartu jos supranta, kad kolektyviniai duomenys generuotų geresnius modelius. Federuotas mokymasis leidžia treniruoti modelį keliose vietose, neperduodant patiems duomenims iš organizacijos.
  • Stebėk molekulinius fondacinius modelius (foundation models). Panašiai kaip GPT ar Llama kalbos srityje, cheminėje erdvėje atsiranda didelio mastelio, iš anksto treniruoti modeliai (pvz., MolFormer, ChemBERTa), kuriuos gali pritaikyti (fine-tune) specifiniam uždaviniui su santykinai mažai duomenų. Tai gerokai sumažina barjerą įėjimui į šią sritį.

Molekulė, algoritmas ir kantrybė – recepto trys ingredientai

Jei reikėtų viską sudėti į vieną sakinį, sakyčiau taip: AI nepakeičia chemijos, biologijos ar medicinos, bet keičia greitį, kuriuo šios disciplinos gali generuoti ir testuoti idėjas. Tai nėra revoliucija, kuri vieną dieną paskelbia, kad vaistai nuo visų ligų dabar atrandami per savaitę – tai lėtas, kartais nuobodus procesas, kuriame algoritmai palaipsniui perima vis daugiau užduočių, kurias anksčiau darė žmogus rankomis, mikroskopu ir daugybe kavos puodelių.

Kas man asmeniškai atrodo įdomiausia – tai, kaip šis procesas verčia farmacijos pramonę tapti panašesnę į programinės įrangos kompaniją. Iteracijos ciklai trumpėja, eksperimentai versijuojami kaip kodas, o duomenys tampa tiek pat svarbūs kaip ir cheminė intuicija. Tai reiškia, kad kitos kartos vaistų kūrėjai turės mokėti ne tik chemiją, bet ir Python, ne tik biologiją, bet ir statistinį modeliavimą.

Ir galiausiai – jei kada nors išgirsi žinią, kad „AI sukūrė naują vaistą per mėnesį“, verta būti skeptiškam, bet ne cinišku. Molekulė, kurią sugeneravo algoritmas, vis tiek turi praeiti metus tyrimų, tūkstančius saugumo testų ir biurokratinį labirintą, kol pasieks pacientą. Bet tai, kad ta molekulė šiandien atrandama greičiau, pigiau ir su didesniu tikslumu nei prieš dešimtmetį – tai jau pati savaime yra pakankamai reikšminga permaina, kad į ją verta žiūrėti atidžiai, nepamirštant, kad už kiekvieno algoritmo galiausiai stovi žmogus, kuriam tas vaistas turi tikrai padėti.