FMI_SU_Yotkova_Kastreva at SemEval-2026 Task 13: Lightweight Detection of LLM-Generated Code via Stylometric Signals
Dit artikel presenteert een computatie-efficiënte, CPU-gebaseerde aanpak voor het detecteren van door LLM gegenereerde code in SemEval-2026 Taak 13 Subtaak A, die lengte-robuste ratio-gebaseerde kenmerken, parsingshulpmiddelen en een code-tegen-tekst-classificatie met een ondiepe beslisboom en heuristische regels combineert om een bijna onmiddellijke inferentie te bereiken zonder afhankelijkheid van grote vooraf getrainde modellen.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je een enorme digitale bibliotheek voor waar boeken worden geschreven door twee soorten auteurs: Menselijke Bibliothecarissen en Robotschrijvers. De Robotschrijvers zijn ongelooflijk snel en kunnen in vele verschillende talen schrijven, maar ze hebben de neiging om specifieke "sporen" achter te laten die hun mechanische aard verraad.
Dit artikel beschrijft hoe een team van onderzoekers een lichtgewicht, supersnelle detective bouwde om deze Robotschrijvers in de bibliotheek op te sporen, specifiek voor een wedstrijd genaamd SemEval-2026.
Hieronder wordt uitgelegd hoe hun detective werkt, opgesplitst in eenvoudige concepten:
1. Het Probleem: Waarom is het moeilijk om de robots te spotten?
Normaal gesproken zoek je naar grote, complexe aanwijzingen om een nep te ontdekken. Maar in de wereld van computercodes zijn de robots lastig. Ze schrijven code die aan de oppervlakte perfect lijkt.
- De "Grote Brein"-Valstrik: De onderzoekers probeerden enorme, superintelligente AI-modellen (zoals een gigantische, alwetende encyclopedie) te gebruiken om de neppen op te sporen. Het werkte uitstekend op de trainingsboeken (voornamelijk geschreven in Python), maar toen ze probeerden boeken in andere talen te lezen (zoals Go, C# of JavaScript), raakte het "Grote Brein" in de war. Het was als een detective die alleen Engels kan lezen en probeert een mysterie op te lossen in een vreemd land; ze misten de aanwijzingen omdat ze te gefocust waren op de specifieke taal.
2. De Oplossing: De "Lichtgewicht Detective"
In plaats van een gigantisch, duur brein te gebruiken, bouwde het team een eenvoudige, snelle detective die zoekt naar kleine, alledaagse gewoonten die robots niet kunnen helpen herhalen. Ze noemen deze "stylometrische signalen".
Denk eraan als het opsporen van een robot door hoe het een pen vasthoudt, in plaats van de volledige zinsstructuur te analyseren.
De Belangrijkste Aanwijzingen (De "Sporen")
De detective zoekt naar drie hoofddingen:
- De "Gezellige" Commentaarverhouding: Robots houden ervan om zichzelf uit te leggen. Ze schrijven vaak te veel commentaar (notities voor de lezer) in verhouding tot de daadwerkelijke code. De detective berekent de verhouding tussen "gezellige notities" en "daadwerkelijk werk". Als een fragment voor 50% uit notities en voor 50% uit code bestaat, is het waarschijnlijk een robot.
- De "Werkwoord"-Controle: In de notities die robots schrijven, gebruiken ze specifieke actiewoorden (werkwoorden) op een zeer repetitieve, verklarende manier. De detective telt hoeveel actiewoorden voorkomen in de notities versus in de code.
- De "Tekst versus Code"-Mix: Soms plakken robots per ongeluk hele alinea's met normale conversatie (zoals een chatbericht) direct in de code. Het team trainde een kleine helper om regel voor regel te scannen en te vragen: "Is dit een regel code, of is dit gewoon een zin?" Als een codefragment te veel "gewoon zinnen" bevat, wordt het gemarkeerd.
3. De Speciale Trucs (Heuristieken)
De detective gebruikt ook een paar "vuistregels" gebaseerd op wat ze in de data opmerkten:
- De "Taallabel"-Truc: Robots raken vaak in de war door opmaak. Ze schrijven vaak de naam van de taal (zoals "python" of "java") als een losstaande regel direct voordat de code begint. Mensen doen dit zelden. Als de detective een regel ziet die alleen "python" zegt en alleen staat, is dat een enorm rood vlaggetje.
- De "Achterblijvende Fout"-Truc: Robots stoppen soms abrupt met schrijven. De detective controleert het alleruiteinde van het codefragment. Als de code precies aan het einde afbreekt met een syntaxisfout (zoals een zin die halverwege een woord eindigt), is het waarschijnlijk een robot die de tijd of tokens is uitgegaan.
4. Hoe Ze Het Alles Samenvoegen
Het systeem vertrouwt niet op één groot brein. In plaats daarvan maakt het gebruik van een tweestapsproces:
- De Scanner: Het controleert snel op het "Taallabel" en de "Tekst versus Code"-mix. Als het een duidelijk robotspoor ziet, zegt het direct: "Dit is een robot!"
- De Rekenmachine: Als de scanner niet zeker is, geeft hij de code door aan een eenvoudige rekenmachine (een beslissingsboom). Deze rekenmachine weegt de "Gezellige Verhouding" en de "Werkwoordverhouding" om een laatste gok te doen.
5. Het Resultaat
Het systeem van het team is ongelooflijk efficiënt.
- Geen Zware Inspanning: Het draait op een standaard computerprocessor (CPU) en heeft geen supercomputer nodig.
- Directe Snelheid: Het geeft bijna direct antwoorden.
- Prestatie: In de wedstrijd eindigde deze eenvoudige, "lichtgewicht" detective in de top 15% van alle inzendingen, en versloeg veel systemen die veel complexere en duurdere technologie gebruikten.
Samenvattend: Het artikel laat zien dat je geen supercomplexe AI nodig hebt om AI-genererde code op te sporen. Soms is een eenvoudige detective die gewoon telt hoeveel notities de schrijver heeft gemaakt en controleert of ze per ongeluk een chatbericht in de code hebben geplakt, voldoende om de robot te vangen.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.