Я создаю автоэнкодер, используя модель Keras. Я хочу создать индивидуальную потерю в виде alpha* L2(x, x_pred) + beta * L1(day_x, day_x_pred)
. Второй член потери L1, подлежащий наказанию, относительно времени (day_x - это номер дня). День - это первая особенность моих входных данных. мои входные данные имеют форму ['day', 'beta', 'sigma', 'gamma', 'mu']
.
входной x имеет форму (размер партии, количество функций), и у меня есть 5 функций. Итак, мой вопрос в том, как извлечь первую функцию из x and x_pred
, чтобы вычислить L1(t_x, t_x_pred)
. Это моя текущая функция потерь:
def loss_function(x, x_predicted):
#with tf.compat.v1.Session() as sess: print(x.eval())
return 0.7 * K.square(x- x_predicted) + 0.3 * K.abs(x[:,1]-x_predicted[:,1])
, но у меня это не сработало.