SuanShu, a Java numerical and statistical library



com.numericalmethod.suanshu.stats.regression.linear.glm
Class GeneralizedLinearModel

java.lang.Object
  extended by com.numericalmethod.suanshu.stats.regression.linear.glm.GeneralizedLinearModel
All Implemented Interfaces:
LinearModel

public class GeneralizedLinearModel
extends Object
implements LinearModel

The Generalized Linear Model (GLM) is a flexible generalization of the Ordinary Least Squares regression. GLM generalizes linear regression by allowing the linear model to be related to the response variable via a link function and by allowing the magnitude of the variance of each measurement to be a function of its predicted value. In GLM, each outcome of the dependent variables, Y, is assumed to be generated from a particular distribution in the exponential family, a large range of probability distributions that includes the normal, binomial and Poisson distributions, among others. The mean, μ, of the distribution depends on the independent variables, X, through

E(Y) = μ = g-1(Xβ)
where E(Y) is the expected value of Y; is the linear predictor, a linear combination of unknown parameters, β; g is the link function.

The R equivalent function is glm.

See Also:

Constructor Summary
GeneralizedLinearModel(GLMProblem problem)
          Solves a generalized linear problem using the Iterative Re-weighted Least Squares algorithm.
GeneralizedLinearModel(GLMProblem problem, GLMFitting fitting)
          Constructs a GeneralizedLinearModel instance.
 
Method Summary
 double AIC()
          Gets the Akaike information criterion (AIC).
 GLMBeta beta()
          Gets the GLM coefficients estimator, β^.
 double Ey(Vector x)
          Computes the expectation \(E(y(x))\) given an input.
 GLMResiduals residuals()
          Gets the residual analysis of this GLM regression.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeneralizedLinearModel

public GeneralizedLinearModel(GLMProblem problem,
                              GLMFitting fitting)
Constructs a GeneralizedLinearModel instance.

Parameters:
problem - the generalized linear regression problem to be solved
fitting - the fitting method, c.f., GLMFitting

GeneralizedLinearModel

public GeneralizedLinearModel(GLMProblem problem)
Solves a generalized linear problem using the Iterative Re-weighted Least Squares algorithm.

Parameters:
problem - the generalized linear regression problem to be solved
See Also:
IWLS
Method Detail

Ey

public double Ey(Vector x)
Description copied from interface: LinearModel
Computes the expectation \(E(y(x))\) given an input.

Specified by:
Ey in interface LinearModel
Parameters:
x - an input
Returns:
\(E(y(x))\)

beta

public GLMBeta beta()
Gets the GLM coefficients estimator, β^.

Specified by:
beta in interface LinearModel
Returns:
the GLM coefficients estimator, β^

residuals

public GLMResiduals residuals()
Gets the residual analysis of this GLM regression.

Specified by:
residuals in interface LinearModel
Returns:
the residual analysis of this GLM regression

AIC

public double AIC()
Gets the Akaike information criterion (AIC).

Returns:
the Akaike information criterion (AIC)


Copyright © 2010-2014 Numerical Method Incorporation Limited. All Rights Reserved.