Как в Python лучше всего подогнать квадратичный многочлен к p-мерным данным и вычислить его градиент и матрицу Гессе?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как в Python лучше всего подогнать квадратичный многочлен к p-мерным данным и вычислить его градиент и матрицу Гессе?

Сообщение Anonymous »

Я пытался использовать библиотеку scikit-learn для решения этой проблемы. Примерно:

Код: Выделить всё

from sklearn.preprocessing import PolynomialFeatures
from sklearn.linear_model import LinearRegression

# Make or load an n x p data matrix X and n x 1 array y of the corresponding
# function values.

poly = PolynomialFeatures(degree=2)
Xp = poly.fit_transform(X)
model = LinearRegression()
model.fit(Xp, y)

# Approximate the derivatives of the gradient and Hessian using the relevant
# finite-difference equations and model.predict.
Как показано выше, sklearn делает выбор в пользу разделения полиномиальной регрессии на PolynomialFeatures и LinearReгрессия, а не объединения их в одну функцию. У такого разделения есть концептуальные преимущества, но есть и серьезный недостаток: оно фактически не позволяет model предлагать методы градиента и гессиана, а модель была бы значительно полезнее, если бы это было так.
Мой текущий обходной путь использует уравнения конечных разностей и model.predict для аппроксимации элементов градиента и гессиана (как описано здесь). Но мне не нравится этот подход — он чувствителен к ошибкам с плавающей запятой, а «точная» информация, необходимая для построения градиента и гессиана, уже содержится в model.coef_.
Есть ли более элегантный и точный метод подбора p-мерного полинома и нахождения его градиента и гессиана в Python? Меня бы устроил тот, который использует другую библиотеку.>

Подробнее здесь: https://stackoverflow.com/questions/790 ... ensional-d
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»