

def make_node(self, alpha, x, y, z):
    if ((not _is_sparse_variable(x)) and (not _is_sparse_variable(y))):
        raise TypeError(x)
    dtype_out = scalar.upcast(alpha.type.dtype, x.type.dtype, y.type.dtype, z.type.dtype)
    alpha = tensor.as_tensor_variable(alpha)
    z = tensor.as_tensor_variable(z)
    assert (z.ndim == 2)
    assert (alpha.type.broadcastable == ((True,) * alpha.ndim))
    if (not _is_sparse_variable(x)):
        x = tensor.as_tensor_variable(x)
        assert (y.format in ['csr', 'csc'])
        assert (x.ndim == 2)
    if (not _is_sparse_variable(y)):
        y = tensor.as_tensor_variable(y)
        assert (x.format in ['csr', 'csc'])
        assert (y.ndim == 2)
    return gof.Apply(self, [alpha, alpha, y, z], [tensor.tensor(dtype=dtype_out, broadcastable=(False, False))])

dataset/ETHPy150Open rizar/attention-lvcsr/libs/Theano/theano/sparse/basic.py Usmm.make_node/VarMisuse@220/264 `x`->`alpha`