Home

NIPALS

NIPALS stands for Nonlinear Iterative Partial Least Squares. It is an iterative algorithm used to compute latent variables in principal component analysis (PCA) and partial least squares (PLS) regression, particularly for small data sets or data with missing values. The method was introduced by Herman Wold in the 1960s and has become a standard technique in chemometrics and related fields.

The method begins with a data matrix X, typically centered and scaled, and, for PLS, a response

Advantages of NIPALS include its simplicity, ability to handle missing data, and suitability for small data

Limitations include potential sensitivity to outliers, dependence on initialization, and possible convergence to local optima rather

matrix
Y.
Components
are
extracted
one
at
a
time
by
alternating
updates
of
score
vectors
and
loading
vectors.
In
the
PCA
setting,
the
algorithm
seeks
a
weight
vector
w
that
maximizes
the
variance
of
X
projected
onto
t
=
X
w,
with
the
loading
p
=
X^T
t
/
(t^T
t)
and
X
deflated
as
X
:=
X
-
t
p^T.
In
PLS,
the
goal
is
to
maximize
the
covariance
between
X
and
Y;
the
algorithm
updates
t
and
a
corresponding
response
score
u
until
convergence,
then
deflates
both
X
and
Y.
sets
and
noisy
measurements.
It
does
not
require
the
full
singular
value
decomposition
and
can
produce
results
with
a
lower
computational
burden
in
certain
contexts.
The
method
relies
on
centering
and
scaling
and
on
deflation
to
separate
successive
latent
variables.
than
a
global
solution.
It
has
several
variants
and
has
been
superseded
in
some
applications
by
more
direct
methods
such
as
SIMPLS,
but
it
remains
widely
taught
and
implemented
in
chemometric
software.