Nākotnes vīzijas |
[Apr. 8th, 2018|11:42 pm] |
Nu jau kādas pāris dekādes būs pagājušas, kopš cilvēki ir izdomājuši dresēt (limitētu) AI. Arī ar jomu nesaistītie gan jau būs dzirdējuši par superdatoriem, kuri reiz spēlēja šahu lielmeistaru līmenī, un nu jau spēj šos sasist, pat ja dzelži nav sevišķi jaudīgāki par standarta smārtfōnu. Krietni nesenāk plašāku ievērību guva spēle Go, un programmatūra, kas spēja pārspēt cilvēku šajā spēlē.
Ievērības cienīgus šos pasākumus padarīja tas, ka bija cilvēki, kuri uzskatīja, ka šīm spēlēm nepieciešama "cilvēka komponente", respektīvi, pieredze, intuīcija, spēja domāt vairākus gājienus uz priekšu, un ka "mašīna" nespēs replicēt šīs spēlei svarīgās īpatnības. Kā izrādījās - un kā jau varētu gaidīt no spēles ar ierobežotu noteikumu apjomu un limitētu, kaut milzīgu, pozīciju iespējamību skaitu - tā nepavisam nav. Šajā gadījumā, skaitļošanas jauda наше всё.
Protams, allaž aktuāls jautājums - kur vēl šo pieeju var pielietot? Kā viena no atbildēm, radusies salīdzinoši nesen (vismaz pēdējā iterācijā) - organiskās sintēzes plānošanā.
Lūk, interesants raksts no Derek Lowe par jaunākajiem centieniem pielietot tādu limitētu AI retrosintēzes plānošanā.
Atkāpīte paskaidrojumam par retrosintēzi. Pieņemsm, ka kādā pētījumā ir identificēta kādas dabas vielas struktūra. Vai, piemēram, kāds farmācijas uzņēmums grib ražot kādu akīvo farmaceitisko vielu. Vai arī, piemēram, kādas laboratorijas vadītājs ir sapnī redzējis kādas vielas struktūru, un uzskatījis to par zīmi no augšas, ka šito toč vajag uzsintezēt. Visos šajos gadījumos ir zināma vielas struktūrformula, t.i., ir skaidrs, ko vajag iegūt. Jautājums, kuru jārisina sintētiķim - kā šito iegūt; kā šo uz papīra uzzīmēto fikciju pārvērst pudelītē ieberamā pulverī.
Retrosintētiskā pieeja ir viena no 20. gs. organiskās ķīmijas dižgariem, E.J.Corey jaunievedums, un tās būtība ir konceptuāli vienkārša: jebkurš savienojums, lai cik sarežģīts, sastāv no vienkāršākiem fragmentiem, attiecīgi, jāmeklē tādi fragmenti, no kuriem būtu iespējams iegūt vajadzīgo savienojumu. Fragmenti arī ir sarežģīti? Pielietot augstākminēto metodi vēlreiz. Un vēlreiz, un tā, līdz tiek nonākts līdz tādiem fragmentiem, kurus var nopirkt veikalā (domāts nopietni, ir uzņēmumi, kas tirgo daudzas salīdzinoši vienkāršas vielas, dažādus reaģentus, katalizatorus un ko tik vēl ne). Šis, protams, ir vienkāršots apraksts - tiek ņemts vērā, kurus atomu grupējumus iespējams vienkārši un kontrolēti pārvērst citos, un ko tālāk iesākt ar iegūtajiem, bet pati būtība, ja tā pavisam vienkārši, noreducējas uz "tā, no kā mēs varētu dabūt šito, un vai mēs to varam nopirkt/vienkārši uzsintezēt no tā, kas mums jau ir plauktā".
Šis plānošanas process pilnībā balstās uz iepriekš iegūtajām zināšanām. Teiksim, kāds reiz ir konstatējis, ka šitādu savienojumu var pārtaisīt par šitādu te, lietojot lūk, šādu reaģentu. Ja tas ir tieši tas, kas vajadzīgs, tad tik uz priekšu, atkārtot. Ja tas ir aptuveni tas, ko vēlies panākt, visādi var sanākt. Un ja neviens šādu transformāciju nav mēģinājis, tad, nu... Nu, vai nu atrodi citu ceļu, kā tikt līdz vajadzīgajam savienojumam, vai arī paļaujies uz vispārīgām metodēm un savu veiksmi. Dažkārt sanāk, dažkārt galīgi nē. Jebkurā gadījumā, neatsverama palīdzība šajā procesā nāk no iepriekš iegūtajiem datiem, un to apkopojumiem viegli pārmeklējamās datubāzēs. Būsim reāli, uzzīmēt formulu kaut kādā meklēšanas programmā būs nesalīdzināmi ātrāks pasākums, nekā vilkties uz bibliotēku, un manuāli malties cauri rakstiem, kuros varbūt ir pieminēts vajadzīgais savienojums (pašam ir nācies darīt kā vienu, tā arī otru, kas gan ir atsevišķa ieraksta cienīga atkāpe). Tālab ērti pieejamas datubāzes ir sintētiķa labākais draugs. Un datubāzes ir tikpat labi pieejamas cilvēkam, kā programmai.
Vispārīgā gadījumā, ir skaidrs, ka programma, t.i., algoritmu čupa, spēs izmalties cauri datu kaudzei krietni ātrāk, nekā cilvēks. Retrosintēzes gadījumā jautājums ir - ātrāk, bet vai efektīvāk? Teiksim, cilvēks paskatīsies uz kādu savienojumu, kas ir pusceļā no komerciāli pieejjamām izejvielām uz vajadzīgo galaproduktu, un ievēros - lūk, šitajā galā ir funkcionālā grupa, kuru vajag reducēt, tajā galā, savukārt, ir grupa, kuru vajag oksidēt. Cilvēkam šajā brīdī ir skaidrs, ka diez vai izdosies veikt šīs diametrāli pretējā rakstura pārvērtības vienas molekulas ietvaros (reizēm var, bet reti) - nooksidēsies abas grupas, un ja pēc tam reducēsi, reducēsies abas. Vai otrādi - tāpat rezultāts nebūs vēlamais. Vai programma spēs šo saprast, un netērēt mašīnlaiku uz šī sintēzes varianta plānošanu?
Kā augstāk minētajā rakstā var lasīt - jā, spēj gan. Programma ar pilnīgu pieeju vienai no populārākajām datubāzēm ir spējīga izplānot salīdzinoši sarežģīta savienojuma sintēzi. Pie kam ārkārtīgi ātri, salīdzinot ar cilvēku, kuram būtu dots tas pats uzdevums - taisnības labad, es nezinu, cik ilgu laiku varētu uzskatīt par rekordu, ko uz šo uzdevumu patērētu cilvēks, bet ir pilnīgi skaidrs, ka daudz vairāk par 5,4 sekundēm, kuras tas prasīja attiecīgajai programmai. Un rezultāts bija pilnīgi korekts un ticams.
===
Jautājums: ko šis tehnoloģiskā progresa solis nozīmē organiskajai ķīmijai. Mana atbilde būtu - neko fundamentāli jaunu. Manā skatījumā, šis lēciens, pat ja tiktu ieviests plašākā lietojumā, būtu aptuvens ekvivalents tām pārmaiņām, kuras izraisīja pirmās datorizētās datubāzes. Respektīvi, daudz mazāk laika tiek patērēts uz tādiem darba aspektiem, kurus iespējams automatizēt. Tajā pašā laikā, šādu programmu pielietojums ir limitēts - un limitējošais faktors, lai cik ironiski tas neliktos, ir cilvēks. Daļa no tā informācijas apjoma, kas ir iekļauts datubāzēs, tomēr ir kļūdaina. Runājot par agrīnajām 19.gs beigu/20. gs. sākuma publikācijām, tas ir neizbēgami. Ievērojama daļa no tā laika novērojumiem ir neprecīzi interpretēta, un tālāk jau datubāzēs nonākusi fakta statusā. Papildus tam, ir vērts atcerēties, ka datorizētās datubāzes ir veidojuši cilvēki - tā, ka tiešām sēdējuši ar kožu saēstiem vecu žurnālu sējumiem uz galda, un pārrakstījuši saturu kaut kādā formā. Protams, ka šajā procesā var rasties kļūdas - pats tādas esmu atradis. Respektīvi, no programmētāju viedokļa, garbage in - garbage out, jebšu izvaddatu kvalitāti ļoti ietekmē ievaddati, un jau pašreizējā limenī ir zināms, ka ievaddati ir patālu no ideāla. Otrkārt, šādas programmas spējas ir limitētas ar līdz šim zināmo datu kopumu. Respektīvi, tā nespēs izdomāt jaunu reakciju, kurai "intuitīvi vajadzētu notikt". Šis, manuprāt, ir tikai īslaicīgs limits, jo iemesli, kādēļ reakcijas notiek, kā arī tie, kādēļ tās nenotiek tā, kā ieplānots, ir balstīti fizikā. Un fiziku mēs tomēr līdz zināmai robežai spējam aprakstīt "datoram saprotamā valodā". Un arī līdz tam, mēs vienmēr varam paļauties uz trulo, bet efektīvo "robots var veikt veselu čupu reakciju īsākā laikā, nekā cilvēks" pieeju jaunu reakciju meklējumos. Tiesa, šeit atkal mašīna veiks datu ražošanas darbu, bet to interpretācijas un izvērtēšanas darbs gulsies uz cilvēka pleciem.
Tā kā, summāri, spektrā, kur optimistiskais gals ir "urrā, mašīnas mums atvieglos darbu, un ļaus pievērsties nozīmīgākām lietām", un pesimistiskais ir "ak nē, mašīnas mums atņems darbu, un mēs būsim bomži, kamēr mašīnas izdomās, kamēr mūs lietot kā baterijas, un tad Matrix, un viss", es tomēr esmu krietni tuvāk optimistiskajam. |
|
|