Вариантов много.
sklearn.preprocessing.PolynomialFeatures - это раз.
Можно вручную преобразовать многомерную полиноминальную модель в многомерную линейную, а потом запустить
sklearn.LinearRegression()
Можно использовать более универсальный вариант
scipy.optimize.curve_fit () , а поскольку регрессия - это по сути задача минимизации, то тут можно подгонять любую функцию. Более того, в scipy.optimize есть множество разных методов численной оптимизации, которые можно использовать для получения регрессионной модели в том числе.
В ТensorFlow можно использовать
GradientDescentOptimizer
Но рекомендую сначала разобраться с задачей и терминологией. Ваша фраза
"50 зависимых переменных " - поначалу ввергла меня в ступор.