0

我正在努力在 GP 中生成一个内核矩阵。这是我的功能:

def CovMatrix_scale(x, var, Type):
    " result matrix is n * n "
    n = x.shape[0]
    result = np.zeros((n, n), dtype=tf.float64)

    " determine kernel function "
    cov_function = CovFunction(Type)

    " x is a n * d matrix "
    for i in range(n):
        for j in range(i):
            result[i, j] = result[j, i] = cov_function(x[i, :], x[j, :], var)
        result[i, i] = var

    return np.matrix(result)

cov_function是我使用的核函数,例如 se、exp 或 matern。你可以看到我仍然使用for循环,我知道向量化更有效但我不知道如何向量化它。所以我想请教一些建议。

4

0 回答 0