Företaget Google har tillkÀnnagivit öppnandet av koden för projektet Magika, som Àr avsett för att bestÀmma typ av innehÄll baserat pÄ analys av data i filen. Magika kan exakt identifiera programmeringssprÄk, komprimeringsmetoder, installationspaket, körbar kod, typer av markup, ljud-, video-, dokument- och bildformat som anvÀnds i innehÄllet. Verktygen och den fÀrdiga maskininlÀrningsmodellen kopplade till projektet har publicerats under licensen Apache 2.0.
Till skillnad frÄn liknande projekt som bestÀmmer MIME-typ utifrÄn innehÄllet, utmÀrker sig Magika genom att anvÀnda maskininlÀrningsmetoder, hög prestanda och exceptionell precision i identifieringen. Modellen har trÀnats med hjÀlp av Keras-ramverket pÄ 25 miljoner exempel pÄ filer och stöder igenkÀnning av 116 typer data med en noggrannhet pÄ minst 99%. Modellen Àr sammanstÀlld i ONNX-format och har en storlek pÄ bara 1 MB. AnvÀndningen av metoder för djup maskininlÀrning har ökat precisionen med 50% jÀmfört med det tidigare systemet som Google anvÀnde, som baserades pÄ manuellt angivna regler.

I Google anvÀnds systemet för klassificering av filer i tjÀnster som Gmail, Drive, Code Insight och Safe Browsing nÀr sÀkerhetskontroller och efterlevnad av tjÀnsternas regler utförs. Det pÄgÄr arbete med att integrera Magika i plattformen VirusTotal som en del av den initiala filtreringen av filer före specifika analysmetoder. Den konfiguration av Magika som har implementerats inom Googles infrastruktur möjliggör skanning av flera miljoner filer per sekund och flera hundra miljarder filer per vecka. Efter att modellen har laddats upp Àr tiden för att generera ett utdata 5-6 ms vid testning pÄ en CPU-kÀrna. Tiden för identifiering pÄverkas nÀstan inte av filens storlek.
För att anvÀnda Magika i sina projekt har det förberett ett kommandoradsverktyg, ett paket för Python och ett JavaScript-bibliotek som kan fungera i webblÀsaren eller i projekt baserade pÄ Node.js. KommandoradsgrÀnssnittet och API:t stödjer batchoperationer, vilket innebÀr att det gÄr att kontrollera flera filer med en enda förfrÄgan. Det finns ett lÀge för rekursiv skanning av hela katalogens innehÄll och tre förutsÀgelselÀgen för att justera felresistensen (hög sÀkerhet, medelhög sÀkerhet och bÀsta gissning).

KĂ€lla: opennet.ru
