Dyna это язык программирования для исследователей машинного обучения, основанный на логическом программировании, но поддерживающий взвешенные правила и гибкий порядок выполнения.
Позволяет выразить сложные алгоритмы, такие как умножение матриц, последовательность Фибоначчи, CKY-парсинг и нейросети, в нескольких строках кода.
Dyna 1.0 расширил Datalog, введя любую полукольцовую логику, а Dyna 2.0 снял ограничения, добавив функции, свободные переменные, ленивое и жадное вычисление и прототипное наследование.
Текущие исследования сосредоточены на реализации через терминальное переписывание над реляционной алгеброй и на применении обучения с подкреплением для оптимизации порядка выполнения.
Существуют разные реализации Dyna, такие как Dyna3 на Clojure, Dyna-R на Python, Dyna-Pi для семиринговых программ и другие.
Get notified when new stories are published for "Hacker News 🇷🇺 Русский"