El siguiente ejemplo a veces cae, @maltamiranomontero puedes verlo tú? Seguramente hay un problema en el modelo o en los límites de los parámetros (aunque no veo nada raro con los valores de los parámetros cuando se cayó). Esto pasa con dos canales y yo creo que la matriz de la covarianza está mal (pero no estoy seguro). Algunos valores son más grandes que el diagonal, que hace que la matriz no es positiva semi-definitiva.
import numpy as np
import pandas as pd
import mogptk
t = np.linspace(1.0, 200.0, 200)
data = pd.read_csv("data_BM.csv")
dataset = mogptk.DataSet(t, [np.array(data['a']), np.array(data['b']), np.array(data['c']), np.array(data['d'])], names=['Channel 1','Channel 2', 'Channel 3','Channel 4'])
dataset.transform(mogptk.TransformNormalize())
dataset.rescale_x()
for data in dataset:
data.remove_randomly(pct=0.80)
dataset = dataset[0:2]
model = mogptk.MOHSM(dataset, Q=1, P=1, rescale_x=True)
model.init_parameters('BNSE')
model.print_parameters()
[data_BM.csv](https://github.com/GAMES-UChile/mogptk/files/8525944/data_BM.csv)
model.train(iters=1000, lr=0.1, verbose=False)
model.predict()
ERROR: torch.linalg_cholesky: The factorization could not be completed because the input is not positive-definite (the leading minor of order 41 is not positive-definite).
El siguiente ejemplo a veces cae, @maltamiranomontero puedes verlo tú? Seguramente hay un problema en el modelo o en los límites de los parámetros (aunque no veo nada raro con los valores de los parámetros cuando se cayó). Esto pasa con dos canales y yo creo que la matriz de la covarianza está mal (pero no estoy seguro). Algunos valores son más grandes que el diagonal, que hace que la matriz no es positiva semi-definitiva.
ERROR: torch.linalg_cholesky: The factorization could not be completed because the input is not positive-definite (the leading minor of order 41 is not positive-definite).