Vi föreslår neural programmerare-tolk (NPI): en återkommande och kompositionella neurala nätverk som lär sig att representera och köra program. NPI har tre inlärbara komponenter: en uppgift-agnostisk återkommande kärna, en ihållande nyckel-värde programminne, och domänspecifika kodare som gör det möjligt för en enda NPI att fungera i flera perceptuellt olika miljöer med distinkta förmåner. Genom att lära sig att komponera lägre nivå program för att uttrycka högre nivå program, NPI minskar prov komplexitet och ökar generalisering förmåga jämfört med sekvens-tosequence LSTMs. Programmet minne möjliggör effektiv inlärning av ytterligare uppgifter genom att bygga på befintliga program. NPI kan också utnyttja miljön (t.ex. en repa med read-write pekare) för att cache mellanliggande resultat av beräkning, vilket minskar den långsiktiga minnesbördan på återkommande dolda enheter. I detta arbete vi utbilda NPI med fullt övervakad körning spår; varje program har exempel sekvenser av samtal till de omedelbara delprogram som är beroende av inmatningen. I stället för att träna på ett stort antal relativt svaga etiketter lär sig NPI av ett litet antal rika exempel. Vi visar vår modells förmåga att lära sig flera typer av kompositionsprogram: addition, sortering och kanonikalisering av 3D-modeller. Dessutom lär sig en enda NPI att köra dessa program och alla 21 tillhörande delprogram.
Neural Programmer-Interpreters REF lär sig att representera och köra program, som fungerar på olika sätt i miljön, och kan införliva beslut bättre fångas i ett neuralt nätverk än i många rader av kod (t.ex. Använda bilden som indata).
Neural Programmer-Interpreters
{'venue': 'ICLR 2016', 'journal': 'arXiv: Learning', 'mag_field_of_study': ['Computer Science', 'Mathematics']}