Note

This page is a reference documentation. It only explains the class signature, and not how to use it. Please refer to the user guide for the big picture.

8.12.5. nilearn.glm.OLSModel

class nilearn.glm.OLSModel(design)

A simple ordinary least squares model.

Parameters:

design : array-like

This is your design matrix. Data are assumed to be column ordered with observations in rows.

Attributes

design(ndarray) This is the design, or X, matrix.
whitened_design(ndarray) This is the whitened design matrix. design == whitened_design by default for the OLSModel, though models that inherit from the OLSModel will whiten the design.
calc_beta(ndarray) This is the Moore-Penrose pseudoinverse of the whitened design matrix.
normalized_cov_beta(ndarray) np.dot(calc_beta, calc_beta.T)
df_residuals(scalar) Degrees of freedom of the residuals. Number of observations less the rank of the design.
df_model(scalar) Degrees of freedome of the model. The rank of the design.

Methods

model.__init___(design) 
model.logL(b=self.beta, Y) 
__init__(design)
Parameters:

design : array-like

This is your design matrix. Data are assumed to be column ordered with observations in rows.

df_resid()
fit(Y)

Fit model to data Y

Full fit of the model including estimate of covariance matrix, (whitened) residuals and scale.

Parameters:

Y : array-like

The dependent variable for the Least Squares problem.

Returns:

fit : RegressionResults

initialize(design)
logL(beta, Y, nuisance=None)

Returns the value of the loglikelihood function at beta.

Given the whitened design matrix, the loglikelihood is evaluated at the parameter vector, beta, for the dependent variable, Y and the nuisance parameter, sigma.

Parameters:

beta : ndarray

The parameter estimates. Must be of length df_model.

Y : ndarray

The dependent variable

nuisance : dict, optional

A dict with key ‘sigma’, which is an optional estimate of sigma. If None, defaults to its maximum likelihood estimate (with beta fixed) as sum((Y - X*beta)**2) / n, where n=Y.shape[0], X=self.design.

Returns:

loglf : float

The value of the loglikelihood function.

Notes

The log-Likelihood Function is defined as

\ell(\beta,\sigma,Y)=
-\frac{n}{2}\log(2\pi\sigma^2) - \|Y-X\beta\|^2/(2\sigma^2)

The parameter \sigma above is what is sometimes referred to as a nuisance parameter. That is, the likelihood is considered as a function of \beta, but to evaluate it, a value of \sigma is needed.

If \sigma is not provided, then its maximum likelihood estimate:

\hat{\sigma}(\beta) = \frac{\text{SSE}(\beta)}{n}

is plugged in. This likelihood is now a function of only \beta and is technically referred to as a profile-likelihood.

References

    1. Green. “Econometric Analysis,” 5th ed., Pearson, 2003.
wdesign()
whiten(X)

Whiten design matrix

Parameters:

X : array

design matrix

Returns:

whitened_X : array

This matrix is the matrix whose pseudoinverse is ultimately used in estimating the coefficients. For OLSModel, it is does nothing. For WLSmodel, ARmodel, it pre-applies a square root of the covariance matrix to X.