Deep Learning for Symbolic Mathematics

https://arxiv.org/abs/1912.01412

Когда

2 декабря 2019

🧚‍♀️ Кто

Guillaume Lample, François Charton, Facebook AI Research



🕶 В чем понт

Авторы учат сетку решать диффуры с помощью seq2seq модели и получают сопоставимое, а на ряде задач даже более высокое качество, чем классические фреймворки для решения уравнений - Mathematica, Matlab и Maple.



🔦 Подробнее

Сначала авторам нужно было сгенерировать выборку - уравнения и их решения, чтобы обучать модель seq2seq. Уравнения и решения представлялись как деревья (см рисунок под постом). В первом способе генерации выборки сначала генерировалось уравнение, потом с помощью фреймворков находилось его решение, в этом случае решение было длинным. Во втором способе сначало генерировалось решение, потом оно дифференциировалось и получалось уравнение. В этом случае уравнение получалось длинным, но выборка обогащалась примерами, которые фрейворки возможно не смогли бы решить. Далее обучалась модель seq2seq, на тесте выбиралось топ10 сгенерированных решений, и проверялась их истинность, если одно решение подходило - уравнение считалось правильно решенным. Результаты модели в основном превосходили фреймворки, например на решении дифференциальных уравнений первого порядка модель даёт 97% точности, а Mathematica - 77%



☀️ Что в итоге?

Нейросети умеют решать невероятно сложные задачи - генерировать изображения, переводить тексты, распознавать речь, однако их полезность в решении математических задач оставалась сомнительной. Авторы показали, что нейросети могут помочь в решении уравнений, и что в будущем нужно интегрировать нейросетевые методы в классические математические фреймворки.



🥑 Претензии

Частая претензия к статье - если на фреймворке Mathematica время нахождения решения превышало 30 секунд - авторы считали решение ошибочным, чтобы померить качество на тесте за адекватное время. Однако в статье говорится, что таких ошибок - 20% от всех ошибок, так что если засчитать таймауты как правильные ответы, сравнение модели и фреймворка на тесте не сильно изменится.