Как построить ландшафт потерь и путь градиентного спуска в логистической регрессии

Разбираюсь с логистической регрессией и пытаюсь всё визуализировать. Нашёл хороший пример визуализации из одного курса в интернете DS-100: введите сюда описание изображения

и с следующим кодом:

uvalues = np.linspace(1,8,70)
vvalues = np.linspace(-5,5,70)
(u,v) = np.meshgrid(uvalues, vvalues)
thetas = np.vstack((u.flatten(),v.flatten()))
lr_loss_values = np.array([lr_loss(t, Phi, Y) for t in thetas.T])
lr_loss_surface = go.Surface(name="Logistic Regression Loss",
        x=u, y=v, z=np.reshape(lr_loss_values,(len(uvalues), len(vvalues))),
        contours=dict(z=dict(show=True, color="gray", project=dict(z=True)))
    )
optimal_batch_lr_point = go.Scatter3d(name = "Optimal Point",
        x = [theta_batch[0]], y = [theta_batch[1]], 
        z = [lr_loss(theta_batch, Phi, Y)],
        marker=dict(size=10, color="red")
    )
py.iplot(go.Figure(data=[lr_loss_surface, optimal_batch_lr_point]))

введите сюда описание изображения

в данном блокноте массив X состоит из одного значения X и двух тета ( в данном случае 4900,2 это значения для поверхности как я понимаю)

В моей же задачи два значения X

введите сюда описание изображения

и три получаемых значений тета в результате градиентного спуска. Как мне в таком случае надо построить ландшафт потерь и как он вобще должен выглядеть?

Аналогичный вопрос по визуализации пути градиентного спуска, это случаем не одно и тоже? И как визуализировать это если у меня три величины для тета, а в примере который я рассматриваю их две.

введите сюда описание изображения

Мой ноутбук с моими данными Здесь (logistic_regression мой ноутбук, DS-100 та часть из курса)


Ответы (0 шт):