我有一个尺寸为 942*50 的矩阵 X。我想用高斯 RBF 内核创建一个亲和矩阵。即,对于 X 矩阵中的每一对行,我想计算 exp(-sigma*norm(x_i-x_j)^2) 其中 x_i 和 x_j 是 X 矩阵的行,并且 i,j 从 1:nrow( X)。我正在用 R 编写代码。下面的 R 代码会引发错误:
library('kernlab')
rbf <- rbfdot(sigma=15.0563)
func <- function(i,j){return(rbf(X[i,],X[j,]))}
rows <- cols <- 1:nrow(X)
outer(rows,cols,FUN=func)
我收到以下错误:外部错误(行,列,乐趣 = 乐趣):暗淡 [产品 887364] 与对象的长度不匹配 [2500]