Ну, вот монотонность крайне полезна была бы...
Общий подход, через максимальное правдоподобие, приводит либо к системе полиномиальных уравнений со многими неизвестными (если взять производные и приравнять к нулю, как для линейной регрессии), которые лично я решать (в общем случае) не умею, либо, если использовать какой-либо метод численной оптимизации, по всей видимости получится многоэкстремальная функция.
В качестве довольно легко реализуемого (но без гарантии!) приложения случайного поиска - можно сгенерировать выборку
с заданным распределением, получить полиномиальные регрессии y и z на x, выбрать какую-то меру качества подгонки (скажем, сумму дисперсий ошибок моделей для y и z) и, повторив эту процедуру многократно, генерируя разные x, выбрать наилучшую выборку. Число повторений должно быть весьма велико, но при малом числе выборок, возможно, получатся хорошие начальные приближения для оптимизации правдоподобия. Метод хорошо распараллеливается, что делает его привлекательным для CUDA и вообще многопроцессорных систем. Исчерпывается ли его привлекательность этим, да ещё простотой программирования - не знаю.
Ещё один подход, возможно, представляющий интерес как курьёз, а возможно, и рабочий, может состоять в следующем:
- положим, что существует зависимость не только y от x, но и x от y (и z, соответственно). Не выписывая её явно (что потребует решения уравнений высоких степеней), аппроксимируем её полиномом (или более сложной, но так же линейной по параметрам функцией, в которую кроме степеней y будут входить корни и даже логарифмы или синусы, лишь бы функции от y были бы определены на интервале значений y.
- то есть будем искать зависимость
и аналогично зависимость от z (возможно, на другом наборе функций). Если коэффициенты подобраны удачно, то оцененные по y и z значения x должны быть близки.
- но задача нахождения коэффициентов линейных комбинаций двух заданных наборов данных таких, что значения этих комбинаций близки, в статистике разработана. Это "канонические корреляции" (кажется, был заказ на "каноническое"? ;), использовавшиеся, например, для сравнения наборов тестов в психологии. Алгоритмы для этого метода входят в большинство статпакетов, а метод описан во множестве учебников (обычно рядом с факторным или компонентным анализом), хотя применяется не слишком широко.
- очевидно, если будет монотонность, такой метод имеет шанс сработать, в немонотонном случае - "не догоню, так хоть согреюсь", но вдруг?