Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.

Razlike

Slijede razlike između dviju inačica stranice.

Poveznica na ovu usporedbu

Starije izmjene na obje strane Starija izmjena
Novija izmjena
Starija izmjena
racfor_wiki:strojno_ucenje:napadi_na_modele_strojnog_ucenja [2020/01/10 04:19]
jjukic [Uvod]
racfor_wiki:strojno_ucenje:napadi_na_modele_strojnog_ucenja [2024/12/05 12:24] (trenutno)
Redak 31: Redak 31:
   * **Trovanje podataka**  (engl. //data poisoning//) naslanja se na tehniku neprijateljskih primjera, ali napada model za vrijeme učenja pružajući primjere koji će rušiti pouzdanost klasifikatora. Ubacivanje loših podataka u skup za učenje ima za posljedicu pomicanje decizijske granice, što u konačnici može proizvesti potpuno besmislen model. Napadi trovanjem mogu imati jednu od dvije glavne namjere: ciljanje na raspoloživost modela ili rušenje njegovog integriteta. Prva nakana ostvaruje se uz pomoć ubacivanja velike količine loših podataka, dok potonja pribjegava sofisticiranijim metodama. Kako narušiti cjelovitost algoritma? Takve varijante otvaraju stražnji pristup (engl. //backdoor//) za kojeg arhitekt modela nije svjestan. Primjerice, napadač može naučiti model da proglasi datoteku bezopasnom ako sadrži određeni znakovni niz. Tada napadač ima mogućnost ubacivanja bilo kakvog zloćudnog koda, nakon što doda svemogući niz u svoju datoteku. Naziru se vrlo opasne mogućnosti.   * **Trovanje podataka**  (engl. //data poisoning//) naslanja se na tehniku neprijateljskih primjera, ali napada model za vrijeme učenja pružajući primjere koji će rušiti pouzdanost klasifikatora. Ubacivanje loših podataka u skup za učenje ima za posljedicu pomicanje decizijske granice, što u konačnici može proizvesti potpuno besmislen model. Napadi trovanjem mogu imati jednu od dvije glavne namjere: ciljanje na raspoloživost modela ili rušenje njegovog integriteta. Prva nakana ostvaruje se uz pomoć ubacivanja velike količine loših podataka, dok potonja pribjegava sofisticiranijim metodama. Kako narušiti cjelovitost algoritma? Takve varijante otvaraju stražnji pristup (engl. //backdoor//) za kojeg arhitekt modela nije svjestan. Primjerice, napadač može naučiti model da proglasi datoteku bezopasnom ako sadrži određeni znakovni niz. Tada napadač ima mogućnost ubacivanja bilo kakvog zloćudnog koda, nakon što doda svemogući niz u svoju datoteku. Naziru se vrlo opasne mogućnosti.
  
-  * **Krađa modela**  (engl. //model stealing//) predstavlja dupliciranje modela ili rekonstrukciju skupa podataka za učenje. Često se ovaj pristup ostvaruje ispitivanjem po modelu crne kutije (engl. //black-box probing//). Ovakav napad može se iskoristi za krađu predikcija trgovine dionica ili modela za filtriranje neželjene elektroničke pošte. Ukradene modele moguće je direktno iskoristiti, ali može ih se i uporabiti u drugim vrstama napada kao svojevrsne vodilje u optimizacijskom postupku za ugrozu algoritama.+  * **Krađa modela**  (engl. //model stealing//) predstavlja dupliciranje modela ili rekonstrukciju skupa podataka za učenje. Često se ovaj pristup ostvaruje ispitivanjem po modelu crne kutije (engl. //black-box probing//). Ovakav napad može se iskoristiti za krađu predikcija trgovine dionica ili modela za filtriranje neželjene elektroničke pošte. Ukradene modele moguće je direktno iskoristiti, ali može ih se i uporabiti u drugim vrstama napada kao svojevrsne vodilje u optimizacijskom postupku za ugrozu algoritama.
  
 Sljedeća slika demonstrira primjer neprijateljskoj podatka. Napadač se dovitljivo sjetio kako bi usluga //Gmail//  mogla prikazati samo zadnje navedeni privitak ako je navedeno više istih u pripadnoj elektroničkoj poruci. Nevidljivi privitak je u ovom slučaju iskorišten za pohranu poveznica na sumnjive domene. Na lijevoj strani slike nalazi se izvorni oblik poruke gdje se mogu uočiti dva ista privitka //multipart//  označena crvenim strelicama. Sljedeća slika demonstrira primjer neprijateljskoj podatka. Napadač se dovitljivo sjetio kako bi usluga //Gmail//  mogla prikazati samo zadnje navedeni privitak ako je navedeno više istih u pripadnoj elektroničkoj poruci. Nevidljivi privitak je u ovom slučaju iskorišten za pohranu poveznica na sumnjive domene. Na lijevoj strani slike nalazi se izvorni oblik poruke gdje se mogu uočiti dva ista privitka //multipart//  označena crvenim strelicama.
Redak 69: Redak 69:
 ==== Zabluđivanje klasifikatora ==== ==== Zabluđivanje klasifikatora ====
  
-{{https://openai.com/content/images/2017/02/adversarial_img_1.png?nolink&500x189|Primjer pogrešne klasifikacije zbog dodavanja šuma}}+{{:racfor_wiki:strojno_ucenje:panda.png?nolink&500x189|Primjer pogrešne klasifikacije zbog dodavanja šuma}}
  
 Primjer na prethodnoj slici demonstrira vrlo brz i efikasan način prijevare klasifikatora. Na izvornu sliku pande dodaje se pomno generirani šum, što rezultira pogrešnom klasifikacijom pande kao gibona i to s pouzdanošću od 99.3%. Naime, šum je generiran kao predznak gradijenta pogreške klasifikatora [5]. Dodatno se spomenuti predznak za pojedini piksel skalira malom vrijednošću kako ne bi nastale značajne promjene u reprezentaciji slike. U gornjem primjeru gotovo se ne raspoznaje razlika između originalne i zašumljene slike. Primjer na prethodnoj slici demonstrira vrlo brz i efikasan način prijevare klasifikatora. Na izvornu sliku pande dodaje se pomno generirani šum, što rezultira pogrešnom klasifikacijom pande kao gibona i to s pouzdanošću od 99.3%. Naime, šum je generiran kao predznak gradijenta pogreške klasifikatora [5]. Dodatno se spomenuti predznak za pojedini piksel skalira malom vrijednošću kako ne bi nastale značajne promjene u reprezentaciji slike. U gornjem primjeru gotovo se ne raspoznaje razlika između originalne i zašumljene slike.
Redak 90: Redak 90:
 Opisani postupak zapravo je optimizacijski postupak za sebe i moguće je primijeniti algoritme za pronalaženje ekstrema funkcija za kojih je poznata funkcija cilja - u ovom problemu to je smanjenje vjerojatnosti na izlazu za ciljanu klasu. Proces ne mora biti pohlepan, što bi značilo da se u svakom koraku pomaci osvježavaju samo ako smanjuju vjerojatnost. Brojne su metode koje mogu poslužiti u napadu: genetski algoritmi i strategije, Bayesova optimizacija, postupak po Nelder-Meadu… Opisani postupak zapravo je optimizacijski postupak za sebe i moguće je primijeniti algoritme za pronalaženje ekstrema funkcija za kojih je poznata funkcija cilja - u ovom problemu to je smanjenje vjerojatnosti na izlazu za ciljanu klasu. Proces ne mora biti pohlepan, što bi značilo da se u svakom koraku pomaci osvježavaju samo ako smanjuju vjerojatnost. Brojne su metode koje mogu poslužiti u napadu: genetski algoritmi i strategije, Bayesova optimizacija, postupak po Nelder-Meadu…
  
-Na sljedećoj slici prikazan je primjer opisanog napada. Gornji red sadrži originalne slika, a donji perturbirane (s dodanim šumom). Ljudskom oku teško je uočiti razliku, a napad je rezultirao pogrešnom klasifikacijom modela.+Na sljedećoj slici prikazan je primjer opisanog napada. Gornji red sadrži originalne slike, a donji perturbirane (s dodanim šumom). Ljudskom oku teško je uočiti razliku, a napad je rezultirao pogrešnom klasifikacijom modela.
  
 {{https://davidstutz.de/wordpress/wp-content/uploads/2018/05/narodytska.png?nolink&650x312|Primjer napada}} {{https://davidstutz.de/wordpress/wp-content/uploads/2018/05/narodytska.png?nolink&650x312|Primjer napada}}
Redak 97: Redak 97:
 ===== Kako se obraniti? ===== ===== Kako se obraniti? =====
  
-Potrebno je osmisliti adekvatnu zaštitu za modele strojnog učenja. Formalne metode ne bi funkcionirale zbog prevelikog broja mogućih kombinacija neprijateljskih primjera. Kao alternativa nameću se empirijske metode. One počivaju na demonstraciji njihove učinkovitosti u zaštiti. Primjerice, moguće je napasti model čija se sigurnost procjenjuje na dva načina: u prvoj slučaju model nema nikakvu korištenu zaštitu, dok se u drugom scenariju primjenjuje odabrana metoda zaštite pa se tek onda izvršava napad. Usporedbom rezultata moguće je ocijeniti funkcionalnost zaštite.+Potrebno je osmisliti adekvatnu zaštitu za modele strojnog učenja. Formalne metode ne bi funkcionirale zbog prevelikog broja mogućih kombinacija neprijateljskih primjera. Kao alternativa nameću se empirijske metode. One počivaju na demonstraciji njihove učinkovitosti u zaštiti. Primjerice, moguće je napasti model čija se sigurnost procjenjuje na dva načina: u prvoj slučaju model nema nikakvu korištenu zaštitu, dok se u drugom scenariju primjenjuje odabrana metoda zaštite pa se tek onda izvršava napad. Usporedbom rezultata ocjenjuje se funkcionalnost zaštite.
  
 Neki od popularnih pristupa u obrani modela strojnog učenja su [3]: Neki od popularnih pristupa u obrani modela strojnog učenja su [3]:
Redak 109: Redak 109:
 {{  https://miro.medium.com/max/1500/1*vCXq0OArxz4nvcLH8p2VNw.gif?nolink&650x366  |Opasnost od prevelikog broja neprijateljskih primjera za učenje}} {{  https://miro.medium.com/max/1500/1*vCXq0OArxz4nvcLH8p2VNw.gif?nolink&650x366  |Opasnost od prevelikog broja neprijateljskih primjera za učenje}}
  
-Sljedeća metoda zaštite obrada je ulaznih primjera. Podatci se prije korištenja zaglađuju i pokušava se odstraniti šum ako postoji. Nedostatak ovog pristupa je što će model u konačnici imati lošu izvedbu na podatcima sa šumom. Bolja taktika je na početku učiti model u zatvorenoj okolini bez obrade skupa za učenje, odnosno bez uklanjanja šuma. Kada se model stavi u pogon i bude javno dostupan, tada treba početi s čišćenjem ulaznih primjera ako se isti koristi za dodatno učenje.+Sljedeća metoda zaštite obrada je ulaznih primjera. Podatci se prije korištenja zaglađuju i pokušava se odstraniti šum ako postoji. Nedostatak ovog pristupa je što će model u konačnici imati lošu izvedbu na podatcima sa šumom. Bolja taktika je na početku učiti model u zatvorenoj okolini bez obrade skupa za učenje, odnosno bez uklanjanja šuma. Kada se model stavi u pogon i bude javno dostupan, tada treba početi s čišćenjem ulaznih primjera ako se isti koriste za dodatno učenje.
  
 Konačno, dodavanje klase može poslužiti kao obrambeni mehanizam. U toj pretpostavci model uči samo na podatcima s određenom distribucijom i kada se na ulazi pojavi nešto neobično, to se klasificira kao nepoznata (dodatna) klasa. Umjesto forsiranja modela da uvijek ponudi odgovor za svaki primjer, nudi se rješenje sa slabijim odzivom, ali većom sigurnošću. Konačno, dodavanje klase može poslužiti kao obrambeni mehanizam. U toj pretpostavci model uči samo na podatcima s određenom distribucijom i kada se na ulazi pojavi nešto neobično, to se klasificira kao nepoznata (dodatna) klasa. Umjesto forsiranja modela da uvijek ponudi odgovor za svaki primjer, nudi se rješenje sa slabijim odzivom, ali većom sigurnošću.
racfor_wiki/strojno_ucenje/napadi_na_modele_strojnog_ucenja.1578629982.txt.gz · Zadnja izmjena: 2024/12/05 12:23 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0