Нахождение аппроксимационной функции, зависящей от 8-параметров

У меня много записей данных, каждая запись состоит из 8 (восьми) чисел.

Для каждой записи я знаю «оценку пригодности» (т.е. насколько «хороша» эта запись).

И я хочу построить/найти функцию аппроксимации («оценка пригодности» в зависимости от этих 8 параметров). Меня устраивает не только математическое представление этой функции, но и любая реализация (например, NN), которая даст мне правдоподобную «оценку пригодности» для произвольной (новой) записи.

Я попробовал нейронные сети (библиотека Encog) и генетический подход (библиотека Watchmaker). Второй подход дал мне гораздо лучшие результаты, чем NN. Однако я представляю функцию аппроксимации как сумму восьми компонентов «a * pow(x, b)», где «a» и «b» мутируются GA, а «x» — параметр ввода данных. Несмотря на то, что у меня есть положительные результаты с помощью ГА, очевидно, что это не лучший подход.

Итак, вопросы: как улучшить функцию аппроксимации поиска в моем случае? Существуют ли другие методы, кроме NN и GA?

Спасибо.




Ответы (1)


Существуют десятки таких методов, так как ваша проблема — это просто регрессия. Просто погуглите такие методы, это действительно слишком широко, чтобы даже перечислить их здесь. Среди прочего, у вас есть:

  • k-nn регрессия
  • деревья регрессии
  • опорная векторная регрессия
  • гребневая регрессия
  • ...

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

person lejlot    schedule 21.10.2013
comment
lejlot, спасибо за ответ. Будет исследовать каждый из этих методов. - person Arsen; 21.10.2013