Что означает вывод в разделе «Потеря поезда» [закрыто]Python

Программы на Python
Anonymous
Что означает вывод в разделе «Потеря поезда» [закрыто]

Сообщение Anonymous »

Я изучаю Python deepxde и примеры из него. У меня вопрос по поводу вывода примера из deepxde. Вот ссылка на пример https://deepxde.readthedocs.io/en/lates ... verse.html
Это код, который я изучаю< /p>

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

"""Backend supported: tensorflow.compat.v1, tensorflow, pytorch, paddle"""
import deepxde as dde
import numpy as np
# Backend tensorflow.compat.v1 or tensorflow
from deepxde.backend import tf
# Backend pytorch
# import torch
# Backend paddle
# import paddle

C = dde.Variable(2.0)

def pde(x, y):
dy_t = dde.grad.jacobian(y, x, i=0, j=1)
dy_xx = dde.grad.hessian(y, x, i=0, j=0)
# Backend tensorflow.compat.v1 or tensorflow
return (
dy_t
- C * dy_xx
+ tf.exp(-x[:, 1:])
* (tf.sin(np.pi * x[:, 0:1]) - np.pi ** 2 * tf.sin(np.pi * x[:, 0:1]))
)
# Backend pytorch
# return (
#     dy_t
#     - C * dy_xx
#     + torch.exp(-x[:, 1:])
#     * (torch.sin(np.pi * x[:, 0:1]) - np.pi ** 2 * torch.sin(np.pi * x[:, 0:1]))
# )
# Backend paddle
# return (
#     dy_t
#     - C * dy_xx
#     + paddle.exp(-x[:, 1:])
#     * (paddle.sin(np.pi * x[:, 0:1]) - np.pi ** 2 * paddle.sin(np.pi * x[:, 0:1]))
# )

def func(x):
return np.sin(np.pi * x[:, 0:1]) * np.exp(-x[:, 1:])

geom = dde.geometry.Interval(-1, 1)
timedomain = dde.geometry.TimeDomain(0, 1)
geomtime = dde.geometry.GeometryXTime(geom, timedomain)

bc = dde.icbc.DirichletBC(geomtime, func, lambda _, on_boundary: on_boundary)
ic = dde.icbc.IC(geomtime, func, lambda _, on_initial: on_initial)

observe_x = np.vstack((np.linspace(-1, 1, num=10), np.full((10), 1))).T
observe_y = dde.icbc.PointSetBC(observe_x, func(observe_x), component=0)

data = dde.data.TimePDE(
geomtime,
pde,
[bc, ic, observe_y],
num_domain=40,
num_boundary=20,
num_initial=10,
anchors=observe_x,
solution=func,
num_test=10000,
)

layer_size = [2] + [32] * 3 + [1]
activation = "tanh"
initializer = "Glorot uniform"
net = dde.nn.FNN(layer_size, activation, initializer)

model = dde.Model(data, net)

model.compile(
"adam", lr=0.001, metrics=["l2 relative error"], external_trainable_variables=C
)
variable = dde.callbacks.VariableValue(C, period=1000)
losshistory, train_state = model.train(iterations=50000, callbacks=[variable])

dde.saveplot(losshistory, train_state, issave=True, isplot=True)
Частичный вывод связанного примера, как показано ниже.
Я немного путаю значение выходного значения при потере обучения.

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

'compile' took 0.105187 s

Training model...

Step      Train loss                                  Test loss                                   Test metric
0         [1.44e+01, 1.72e-02, 4.35e-01, 5.47e-02]    [1.69e+01, 1.72e-02, 4.35e-01, 5.47e-02]    [8.97e-01]
0 [2.00e+00]
2024-09-19 19:03:02.335896: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:388] MLIR V1 optimization pass is not enabled
1000      [5.61e-03, 2.52e-02, 4.84e-02, 1.76e-02]    [6.90e-03, 2.52e-02, 4.84e-02, 1.76e-02]
Почему он имеет четыре значения под потерей поезда «[1.44e+01, 1.72e-02, 4.35e-01, 5.47e-02]» и что означает каждое значение . Спасибо за любой ответ или помощь!

Подробнее здесь: https://stackoverflow.com/questions/790 ... train-loss

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