Русская Википедия:Символьная регрессия

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Файл:Genetic Program Tree.png
Дерево выражений, которое можно использовать в символьной регрессии для представления произвольной аналитической функции.

Символьная регрессия — это тип регрессионного анализа, который используется для поиска в пространстве математических выражений модели, наилучшим образом соответствующей заданному набору данных, как с точки зрения точности, так и простоты. Никакой конкретной модели не предоставляется в качестве отправной точки для алгоритма. Вместо этого исходные выражения формируются путём случайного комбинирования математических строительных блоков, таких как математические операторы, аналитические функции, константы и переменные состояния. Обычно подмножество этих примитивов определяется пользователем, но это не является требованием метода. Проблема символьной регрессии для математических функций решалась с помощью множества методов, включая рекомбинирование уравнений, наиболее часто использующих генетическое программирование[1], а также более недавние методы, использующие байесовские методы[2] и ИИ, вдохновлённые физикой[3]. Другой неклассический альтернативный метод символьной регрессии называется инициатором универсальных функций (Шаблон:Lang-en), который имеет другой механизм, пространство поиска и стратегию построения[4].

Не требуя априорного определения модели, на символическую регрессию не влияют человеческие предубеждения или неизвестные пробелы в знаниях в предметной области. Она пытается раскрыть внутренние взаимосвязи набора данных, позволяя шаблонам в самих данных раскрывать соответствующие модели, а не навязывать структуру модели, которая считается математически поддающейся обработке с человеческой точки зрения. Функция приспособленности, которая управляет эволюцией моделей, принимает во внимание не только показатели ошибок (чтобы модели точно предсказывали данные), но и специальные меры описания сложности таким образом гарантируя, что полученные модели раскрывают основную структуру данных в виде понятном с человеческой точки зрения. Это облегчает рассуждения и увеличивает шансы получить представление о системе генерации данных[5].

Отличие от классической регрессии

В то время как традиционные регрессионные методы стремятся оптимизировать параметры для заранее заданной структуры модели, символьная регрессия избегает навязывания предшествующих предположений и вместо этого выводит модель из данных. Другими словами, она пытается обнаружить как структуры модели, так и параметры модели.

Недостатком этого подхода является наличие гораздо большего пространства для поиска, потому что не только пространство поиска в символьной регрессии бесконечно, но существует бесконечное количество моделей, которые идеально подходят для конечного набора данных (при условии, что сложность модели искусственно не ограничена). Это означает, что алгоритму символьной регрессии, возможно, потребуется больше времени, чтобы найти подходящую модель и параметризацию, чем традиционным методам регрессии. Это время можно уменьшить, ограничив набор строительных блоков, предоставляемых алгоритму, на основе существующих знаний о системе, которая предоставила данные; но, в конце концов, использование символьной регрессии — это решение, которое должно быть сбалансировано с тем, сколько известно о базовой системе.

Тем не менее, эта характеристика символьной регрессии также имеет преимущества: поскольку эволюционный алгоритм требует разнообразия для эффективного исследования пространства поиска, конечным результатом, вероятно, будет выбор моделей с высокими показателями (и соответствующего им набора параметров). Изучение этой коллекции может дать лучшее представление о базовом процессе и позволяет пользователю определить приближение, которое лучше соответствует его потребностям с точки зрения точности и простоты.

Примечания

Шаблон:Reflist

Литература

Ссылки

  • Шаблон:Cite web
  • Шаблон:Cite web (Java-апплет) — аппроксимирует функцию путем эволюции комбинаций простых арифметических операторов с использованием алгоритмов, разработанных Джоном Козой .
  • Шаблон:Cite web
  • RGP, фреймворк генетического программирования (GP) на языке R, который поддерживает символическую регрессию
  • GPTIPS, платформа генетического программирования и интеллектуального анализа данных для MATLAB
  • dcgp, набор инструментов для символической регрессии с открытым исходным кодом.
  • Glyph, библиотека Python 3, основанная на deap, обеспечивающая уровни абстракции для проблем символьной регрессии.
  • AI-Feynman python3 + код pytorch для физического метода символьной регрессии.
  • TuringBot, программное обеспечение для символьной регрессии, основанное на моделировании отжига.

Шаблон:Изолированная статья

  1. Ошибка цитирования Неверный тег <ref>; для сносок schmidt2009distilling не указан текст
  2. Ошибка цитирования Неверный тег <ref>; для сносок bayesian не указан текст
  3. Ошибка цитирования Неверный тег <ref>; для сносок aifeynman не указан текст
  4. Ошибка цитирования Неверный тег <ref>; для сносок ufo не указан текст
  5. Ошибка цитирования Неверный тег <ref>; для сносок complexity не указан текст