«фигуры не выровненные» в автоградной тензорной норме - PullRequest
0 голосов
/ 02 мая 2018

Я хотел бы использовать autograd для вычисления градиента нормы тензора, как показано ниже:

from autograd import grad
import autograd.numpy as np

N = 100; X = np.random.normal(0,1,size=N);
tensor = np.outer(np.outer(X,X),X).reshape(N,N,N);

def cost(X):
    X_t = np.outer(np.outer(X,X),X).reshape(N,N,N);
    return np.linalg.norm(tensor - X_t);
gradient_cost = grad(cost);

X_0 = np.random.normal(0,1,size=N);
gradient_cost(X_0)

Я также пробовал другую реализацию (например, используя мою собственную норму или используя различные формы тензора), но я всегда получаю ошибку

ValueError: фигуры (100,100) и (10000,100) не выровнены: 100 (тусклый 1)! = 10000 (дим 0)

...