Христо Тодоров и защитата на невронните мрежи
Дванайсетокласникът от Природоматематическата гимназия в Кюстендил Христо Тодоров има не просто обещаващо бъдеще като софтуерен специалист, а и вече солидна биография, въпреки че дори не е завършил училище. Христо е един от двамата носители на тазгодишната грамота „Джон Атанасов - дебютен пробив в областта на компютърните технологии“. Вече е автор на три научни и приложни проекта. Носител на отличия от редица престижни състезания. Класиран за участие в конкурса на Европейския съюз за млади учени 2021-ва и печели наградата на швейцарския форум за млади таланти с авторски проект. Има много голям интерес към невронните мрежи и ето какво ни разказа в рубриката "Човекът от бъдещето".
Христо, бихте ли обяснили подробно разработката, с която бяхте отличени с грамотата “Джон Атанасов”? Става дума за невронни мрежи, кибер атаките срещу тях и ваша идея, с която те могат да бъдат неутрализирани.
Изкуствените невронните мрежи са математически апарати, които биват компютърно “обучени” да намират закономерности в данни. Основната идея е, че ние можем да си набавим огромно количество данни (например снимки на кучета и котки, като знаем коя снимка какво животно изобразява), след което да ѝ поставим задачата да различава снимка на куче от снимка на котка. Отначалото, невронната мрежа ще прави много грешки, но с времето започва да става все по-добра в тази задача. Това е доста сходно на начина, по който бебетата учат. Да кажем, че едно бебе не е знае какво е чайник. Следователно е доста малко вероятно да познае чайник, ако го види. Но ако родителите му покажат няколко вида чайници, то ще си изгради представа какви са основните характеристики на чайника, и вече ще може да го различава от останалите обекти. Същата е идеята и при невронните мрежи - чрез многобройни опити за решаване на дадена задача, те започват да правят все по-точни предположения. Този процес се нарича трениране.
В момента невронните мрежи се използват в широк набор от сфери, например в самоуправляващите се автомобили, разпознаването на глас и здравеопазването. Обаче през 2014-та се демонстрира, че всички видове невронни мрежи могат да бъдат заблудени много лесно чрез така наречените противникови атаки (adversarial attacks). Тези видове атаки представляват нещо като оптически илюзии. Ако се върнем на примера за кучетата и котките, то се оказва, че можем да вземем една снимка на куче, която вече добре тренирана и успешна невронна мрежа класифицира правилно, да променим цвета на само един пиксел (не произволен, а доста фино подбран), след което същата снимка да бъде класифицирана като нещо тотално различно, например сладолед. Такива видове атаки могат да бъдат изпълнявани и срещу далеч по-рискови модели. Един експеримент показва, че може да бъде залепен много малък стикер на знак "стоп", след което самоуправляващ се автомобил да разпознае знака като ограничение на скоростта. Друг пример е изработването на специални маски за лице, които разбиват системи за лицево разпознаване. Отново, най-големият проблем тук е, че всяка една невронна мрежа може да бъде заблудена по такъв начин.
Оказва се, че единственият начин да създадем невронни мрежи, които са стабилни срещу такива атаки, е да ги “закалим”, тоест да създадем силни видове атаки, след което да обучим мрежите да не бъдат заблуждавани от тях. Моята разработка се занимава именно с това - разработването на по-ефикасни атаки, които впоследствие могат да бъдат използвани за изграждането на по-надеждни модели.
Това ли е обичайният начин, по който определена технологии се “заздравява” - правим опити да “влезем в обувките” на хакерите и самите ние да я атакуваме така, както биха направили те, за да я направим по-добра? И как на самият вас това ви стана интересно?
Задължително е всяка една система да бъде тествана срещу различни видове атаки, за да се определи както степента ѝ на надеждност, така и да се начертае план за бъдещото ѝ развитие, което да адресира някои от откритите слаби места. Даже има и такава професия - етичен хакер или хакер с бяла шапка - чиято работа е да тества технологии, като играе ролята на един потенциален хакер, след което докладва на разработчиците какво е открил. Самият процес на атакуване обаче не “заздравява” единствено невронните мрежи и другите подходи от областта на изкуствения интелект, тъй като те могат да бъдат тренирани срещу тях, тоест автоматично да променят структурата си, така че да бъдат по-стабилни. При другите видове софтуер се изисква от разработчиците да модифицират кода.
Аз се заинтригувах от сферата по времето на участието си на Лятната изследователска школа на ученическия институт по математика и информатика (УчИМИ), където се запознах с ментора си, Кристиан Георгиев. Той ме ме запали по тази тема. Цялата подкрепа на УчИМИ е може би факторът, който най-много е допринесъл досега за развитието ми, и горещо препоръчвам на всички ученици, на които им се занимава с математика, информатика или наука като цяло, да участват в различните събитията, които те организират. Темата за атаките срещу невронни мрежи ме запали, тъй като отначало се шокирах, след като разбрах колко всъщност “чупливи” са те, макар и да постигат свръхчовешки резултати в сфери като шаха или разпознаването на изображения. Тогава си дадох сметка, че те не могат да да станат надеждна част от животите ни, без този проблем да бъде разрешен, което ме мотивира да започна работата си в тази сфера.
От Европейската нощ на учените
Кой обикновено е един ход напред при киберсигурността - хакерът или онези, които се опитват да организират защитата й? И как протича тази динамика и сблъсък?
Това е доста точен аналог, защото положението е точно такова - има постоянна битка между това да се измислят все по-силни атаки, и съответно по-силни защити срещу тях. За жалост, в тази ситуация преимущество винаги ще е при “атакуващите”, тъй като една атака се води успешна, ако поне веднъж успее да заблуди системата. Докато една система трябва да бъде стабилна срещу всеки един вид атака, за да бъде напълно успешна. Хубавото обаче е, че резултатът от тази непрестанна битка е именно подобрението в стабилността на моделите, както и някои допълнителни бонуси, като например по-ефикасното научаване на шаблони от входните данни от стабилните модели.
Ваши проекти са отличени в престижни научни състезания тук и по света. Може ли да разкажите какво представляват тези идеи и какво е приложението им?
До сега съм разработил 3 проекта, всички от сферата на изкуствения интелект. Единият е този с атаките, който обясних по-горе.
Друг проект, който разработих в екип с едно момче от Хасково (Христо Канев), се занимава с това дали може една невронна мрежа да се научи да създава изображения, които изискват огромни количества креативност, като например логота. Този проект може да бъде използван от графичните дизайнери като полезен инструмент в работата им (тъй като невронните мрежи все още не могат да ги заменят напълно). Също може да бъде изследвано чрез него как невронните мрежи могат да симулират креативно поведение, което е един от най-сериозните проблеми в сферата.
Последният проект започнах да разработвам на една лятна школа, наречена Research Science Institute (организира се от MIT и се провежда 6 седмици в Бостън, но тази година беше онлайн поради пандемията), на която отидох пак благодарение на УчИМИ. По време на нея работих по това как можем да изградим невронни мрежи, които могат да бъдат използвани за изследване на генетичен материал. Проблемът тук е, че в повечето случаи е доста трудно една невронна мрежа да бъде “интерпретирана”, тоест да се разбере какво точно е научила от данните. В разработката си изследвах как може да бъде повишена тази интерпретируемост в контекста на генетиката, което е от огромно значение както за развитието на изкуствения интелект, тъй като това прави моделите по-прозрачни и съответно по-надеждни, както и за биологията, тъй като могат да бъдат направени нови открития в генетиката.
Христо заедно с българският отбор за Regeneron ISEF 2021
Как се запалихте по програмирането, с какво то предизвика интереса ви?
Бях в 6-ти клас, когато развих интереса към него. Тогава играех разни игри, и ми стана интересно дали не мога чрез написването на малко код да ги направи по-забавни. Постепенно си дадох сметка, че това ми харесва, както и че мога да разработвам и далеч по-значими за обществото проекти. Отделно, винаги съм имал интерес и към математиката и към това как мозъкът работи. И за щастие успях да комбинирам всички тези интереси в лицето на изкуствения интелект.
Кои са най-важните новости, които самият вие очаквате от технологиите и би трябвало да се реализират в близко бъдеще?
Според мен едно от най-важните им приложения е в контекста на здравеопазването, където вече има доста подобрения заради развитието на технологиите. Също така вярвам, че те ще бъдат ключови в изследването на човешкия мозък, който е една от най-големите загадки на науката до този момент.
Как планирате да се развивате оттук насетне - къде бихте искали да учите и как си представяте собственото си бъдеще?
Ще кандидатствам в чужбина. Смятам да продължа да се занимавам в областта на компютърните науки и по-точно на изкуствения интелект.
Интервю на Райко Байчев