keras-team/keras · error · TypeError
{b.ndim}-dimensional array given. Array must be one or two-d
Error message
{b.ndim}-dimensional array given. Array must be one or two-dimensional What it means
Error "{b.ndim}-dimensional array given. Array must be one or two-dimensional" thrown in keras-team/keras.
Source
Thrown at keras/src/backend/tensorflow/linalg.py:222
x, full_matrices=full_matrices, compute_uv=compute_uv
)
return u, s, tf.linalg.adjoint(v)
def lstsq(a, b, rcond=None):
a = convert_to_tensor(a)
b = convert_to_tensor(b)
if a.shape[0] != b.shape[0]:
raise ValueError("Leading dimensions of input arrays must match")
b_orig_ndim = b.ndim
if b_orig_ndim == 1:
b = b[:, None]
if a.ndim != 2:
raise TypeError(
f"{a.ndim}-dimensional array given. Array must be two-dimensional"
)
if b.ndim != 2:
raise TypeError(
f"{b.ndim}-dimensional array given. "
"Array must be one or two-dimensional"
)
m, n = a.shape
dtype = a.dtype
eps = tf.experimental.numpy.finfo(dtype).eps
if a.shape == ():
s = tf.zeros(0, dtype=a.dtype)
x = tf.zeros((n, *b.shape[1:]), dtype=a.dtype)
else:
if rcond is None:
rcond = eps * max(n, m)
else:
rcond = tf.where(rcond < 0, eps, rcond)
u, s, vt = svd(a, full_matrices=False)
mask = s >= tf.convert_to_tensor(rcond, dtype=s.dtype) * s[0]
safe_s = tf.cast(tf.where(mask, s, 1), dtype=a.dtype)
s_inv = tf.where(mask, 1 / safe_s, 0)[:, tf.newaxis]View on GitHub (pinned to 7a34a03db6)
When it happens
Trigger: Thrown at keras/src/backend/tensorflow/linalg.py:222 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of keras-team/keras@7a34a03db6 (2026-08-25).
Data as JSON: /api/errors/c21fe83374b2ddb3.
Report an issue: GitHub.