Dyna è un linguaggio di programmazione logica pensato per la ricerca in apprendimento automatico, che supporta regole pesate e ordini di esecuzione flessibili.
Dyna permette di esprimere programmi complessi, come moltiplicazione di matrici, sequenza di Fibonacci, parsing CKY e reti neurali in poche linee di codice senza gestire esplicitamente l’ordine di esecuzione.
La versione 1.0 estende Datalog consentendo l’uso di qualsiasi semiring per eseguire programmi dinamici, mentre Dyna 2.0 introduce funzioni, unificazione, espressioni lazy ed eager e ereditarietà prototipale.
La ricerca in corso esplora l’uso di algebra relazionale e riscrittura di termini per implementare Dyna e applica il reinforcement learning per ottimizzare automaticamente le strategie di esecuzione.
Sono disponibili diverse implementazioni di Dyna, tra cui Dyna3 in Clojure, Dyna-R in Python, Dyna-Pi per studiare ottimizzazioni tramite RL, Dyna-Phi con Graal e Dyna2 in Haskell e Python.
Get notified when new stories are published for "Hacker News 🇮🇹 Italiano"