Zephyrnet-logo

Foutsimulatie voor AI-veiligheid. Innovatie in verificatie – Semiwiki

Datum:

Meer automotive-inhoud 😀

In moderne auto’s wordt de veiligheid zowel bepaald door op AI gebaseerde functies als door traditionele logica en software. Hoe kunnen deze functies worden beoordeeld op fouten voor FMEDA-analyse? Paul Cunningham (GM, Verification bij Cadence), Raúl Camposano (Silicon Catalyst, ondernemer, voormalig CTO van Synopsys en nu CTO van Silvaco) en ik vervolgen onze serie over onderzoeksideeën. Zoals altijd: feedback welkom.

Foutsimulatie voor AI-veiligheidsbeoordeling

De innovatie

De keuze van deze maand is SiFI-AI: een snel en flexibel RTL-foutsimulatieframework, op maat gemaakt voor AI-modellen en versnellers. Dit artikel is gepubliceerd op het Great Lakes Symposium 2023 op VLSI. De auteurs zijn afkomstig van het Karlsruhe Institute of Technology, Duitsland.

ISO 26262 vereist veiligheidsanalyse op basis van FMEDA-methoden die gebruik maken van foutsimulatie om de gevoeligheid van kritieke functies voor voorbijgaande en systematische fouten te beoordelen, en de effectiviteit van mitigatielogica om fouten te voorkomen. Analyse begint met het inzicht van ontwerpexperts in welk gedrag op hoog niveau moet worden gegarandeerd, samen met welke realistische mislukkingen fouten in dat gedrag zouden kunnen propageren.

Deze deskundige kennis wordt al begrepen voor conventionele logica en software, maar nog niet voor AI-modellen (neurale netten) en de versnellers waarop ze draaien. Veiligheidsingenieurs hebben hulp nodig bij het verkennen van faalmodi en effecten in AI-componenten om te weten waar en hoe fouten in modellen en hardware kunnen optreden. Verder moet die analyse met praktische snelheden worden uitgevoerd op de grote modellen die gebruikelijk zijn voor DNN's. De auteurs stellen een nieuwe techniek voor die volgens hen veel sneller werkt dan de huidige methoden.

De mening van Paul

Een tot nadenken stemmend en intrigerend artikel: hoe schat je het risico in van willekeurige hardwarefouten in een AI-versneller die wordt gebruikt voor rijhulp of autonoom rijden? AI-gevolgtrekking is zelf een statistische methode, dus het bepalen van de relatie tussen een willekeurige bitflip ergens in het gaspedaal en een onjuiste gevolgtrekking is niet triviaal.

In dit artikel wordt voorgesteld een systeem te bouwen dat een echte RTL-simulatie van een enkele laag van een neuraal netwerk kan ‘inruilen’, een overigens pure softwaregebaseerde gevolgtrekking van dat netwerk in PyTorch. Er kan een fout worden geïnjecteerd in de laag die met RTL wordt gesimuleerd om de impact van die fout op de algehele gevolgtrekking te beoordelen.

De auteurs demonstreren hun methode op de Gemmini open-source AI-accelerator met ResNet-18 en GoogLeNet beeldclassificatienetwerken. Ze observeren dat elk element van de Gemmini-accelerator-array 3 registers heeft (ingangsactivatie, gewicht en gedeeltelijke som) en een gewichtsselectiesignaal, samen met 4 mogelijke soorten fouten die kunnen worden geïnjecteerd. Ze voeren 1.5 miljoen gevolgtrekkingsexperimenten uit, elk met een willekeurige fout, waarbij wordt gecontroleerd of de top-1-classificatie van het netwerk onjuist is. Hun looptijd is maar liefst 7x sneller dan eerder werk, en hun grafieken bevestigen de intuïtieve verwachting dat fouten in eerdere lagen van het netwerk een grotere impact hebben dan die in diepere lagen.

Uit hun gegevens blijkt ook duidelijk dat een vorm van hardwareveiligheidsmechanisme (bijvoorbeeld drievoudig stemmen) gerechtvaardigd is, aangezien de absolute waarschijnlijkheid van een top-1-classificatiefout 2-8% bedraagt ​​voor fouten in de eerste tien lagen van het netwerk. Dat is veel te hoog voor een veilige rijervaring!

De mening van Raúl

De belangrijkste bijdrage van SiFI-AI is het simuleren van voorbijgaande fouten in DNN-versnellers, waarbij snelle AI-inferentie wordt gecombineerd met cyclusnauwkeurige RTL-simulatie en op omstandigheden gebaseerde foutinjectie. Dit is 7x sneller dan de stand van de techniek (referentie 2, Condia et al, Combinatie van architecturale simulatie en softwarefoutinjectie voor een snelle en nauwkeurige CNN-betrouwbaarheidsevaluatie op GPU's). De truc is om alleen datgene te simuleren wat nodig is in langzaam-cyclus-nauwkeurige RTL. De gemodelleerde fouten zijn single-event verstoring (SEU), dwz voorbijgaande bit-flips veroorzaakt door externe effecten zoals straling en geladen deeltjes, die aanhouden tot de volgende schrijfoperatie. In dit geval is het bijzonder moeilijk om erachter te komen of een enkele fout een fout zal veroorzaken; de hoge mate van hergebruik van gegevens zou kunnen leiden tot aanzienlijke foutvoortplanting, en bij foutsimulatie moet rekening worden gehouden met zowel de hardwarearchitectuur als de DNN-modeltopologie.

SiFI-AI integreert de hardwaresimulatie in het ML-framework (PyTorch). Voor HW-simulatie wordt Verilator gebruikt, een gratis en open-source Verilog-simulator, om cyclusnauwkeurige RTL-modellen te genereren. Een foutcontroller beheert de foutinjectie zoals aangegeven door de gebruiker, met behulp van een op omstandigheden gebaseerde aanpak, dwz een lijst met omstandigheden die voorkomen dat een fout wordt gemaskeerd. Om te selecteren welk onderdeel in RTL wordt gesimuleerd, worden lagen in kleinere tegels opgedeeld op basis van “de laageigenschappen, lus-tiling-strategie, versneller-indeling en de betreffende fout' en selecteert een tegel.

Het apparaat dat in het experimentele deel werd getest, is Gemmini, een systolische array-DNN-versneller gemaakt bij UC Berkeley in het Chipyard-project, in een configuratie van 16×16 verwerkingselementen (PE). SiFI-AI voert een veerkrachtonderzoek uit met 1.5 miljoen foutinjectie-experimenten op twee typische DNN-workloads, ResNet-18 en GoogleLeNet. Fouten worden geïnjecteerd in drie PE-dataregisters en één stuursignaal, zoals gespecificeerd door de gebruiker. De resultaten laten een lage foutkans zien, wat de veerkracht van DNN’s bevestigt. Ze laten ook zien dat fouten in stuursignalen veel meer impact hebben dan fouten in datasignalen, en dat brede en ondiepe lagen gevoeliger zijn dan smalle en diepe lagen.

Dit is een goed artikel dat vooruitgang boekt op het gebied van de evaluatie van de DNN-betrouwbaarheid. Het artikel is goed geschreven en duidelijk en biedt voldoende details en referenties om de beweringen en resultaten te ondersteunen. Hoewel het kernidee van het combineren van simulatie op verschillende niveaus oud is, gebruiken de auteurs het zeer effectief. Frameworks zoals SciFI-AI kunnen ontwerpers en onderzoekers helpen hun architecturen te optimaliseren en veerkrachtiger te maken. Ik hou ook van de analyse van de impact van fouten op verschillende lagen en signalen, wat een aantal interessante inzichten oplevert. Het document zou kunnen worden verbeterd door meer informatie te geven over de foutinjectiestrategie en de selectie van de tegels. Ondanks dat het onderwerp nogal specifiek is, is het over het geheel genomen een zeer vermakelijk artikel!

Deel dit bericht via:

spot_img

Laatste intelligentie

spot_img