jml.regression
Class Regression

java.lang.Object
  extended by jml.regression.Regression
Direct Known Subclasses:
LASSO

public abstract class Regression
extends java.lang.Object

Abstract super class for all regression methods.

Version:
1.0 Jan. 14th, 2013
Author:
Mingjie Qian

Field Summary
 double epsilon
          Convergence tolerance.
 int maxIter
          Maximal number of iterations.
 int n
          Number of samples.
 int ny
          Number of dependent variables.
 int p
          Number of independent variables.
 org.apache.commons.math.linear.RealMatrix W
          Unknown parameters represented as a matrix (p x ny).
 org.apache.commons.math.linear.RealMatrix X
          Training data matrix (n x p) with each row being a data example.
 org.apache.commons.math.linear.RealMatrix Y
          Dependent variable matrix for training (n x ny).
 
Constructor Summary
Regression()
           
Regression(double epsilon)
           
Regression(int maxIter, double epsilon)
           
Regression(Options options)
           
 
Method Summary
 void feedData(double[][] data)
          Feed training data for this regression model.
 void feedData(org.apache.commons.math.linear.RealMatrix X)
          Feed training data for the regression model.
 void feedDependentVariables(double[][] depVars)
          Feed training dependent variables for this regression model.
 void feedDependentVariables(org.apache.commons.math.linear.RealMatrix Y)
          Feed training dependent variables for this regression model.
abstract  void loadModel(java.lang.String filePath)
           
 org.apache.commons.math.linear.RealMatrix predict(double[][] Xt)
          Predict the dependent variables for test data Xt.
 org.apache.commons.math.linear.RealMatrix predict(org.apache.commons.math.linear.RealMatrix Xt)
          Predict the dependent variables for test data Xt.
abstract  void saveModel(java.lang.String filePath)
           
abstract  void train()
          Train the regression model.
abstract  org.apache.commons.math.linear.RealMatrix train(org.apache.commons.math.linear.RealMatrix X, org.apache.commons.math.linear.RealMatrix Y)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ny

public int ny
Number of dependent variables.


p

public int p
Number of independent variables.


n

public int n
Number of samples.


X

public org.apache.commons.math.linear.RealMatrix X
Training data matrix (n x p) with each row being a data example.


Y

public org.apache.commons.math.linear.RealMatrix Y
Dependent variable matrix for training (n x ny).


W

public org.apache.commons.math.linear.RealMatrix W
Unknown parameters represented as a matrix (p x ny).


epsilon

public double epsilon
Convergence tolerance.


maxIter

public int maxIter
Maximal number of iterations.

Constructor Detail

Regression

public Regression()

Regression

public Regression(double epsilon)

Regression

public Regression(int maxIter,
                  double epsilon)

Regression

public Regression(Options options)
Method Detail

feedData

public void feedData(org.apache.commons.math.linear.RealMatrix X)
Feed training data for the regression model.

Parameters:
X - data matrix with each row being a data example

feedData

public void feedData(double[][] data)
Feed training data for this regression model.

Parameters:
data - an n x d 2D double array with each row being a data example

feedDependentVariables

public void feedDependentVariables(org.apache.commons.math.linear.RealMatrix Y)
Feed training dependent variables for this regression model.

Parameters:
Y - dependent variable matrix for training with each row being the dependent variable vector for each data training data example

feedDependentVariables

public void feedDependentVariables(double[][] depVars)
Feed training dependent variables for this regression model.

Parameters:
depVars - an n x c 2D double array

train

public abstract void train()
Train the regression model.


train

public abstract org.apache.commons.math.linear.RealMatrix train(org.apache.commons.math.linear.RealMatrix X,
                                                                org.apache.commons.math.linear.RealMatrix Y)

predict

public org.apache.commons.math.linear.RealMatrix predict(org.apache.commons.math.linear.RealMatrix Xt)
Predict the dependent variables for test data Xt.

Parameters:
Xt - test data matrix with each row being a data example.
Returns:
dependent variables for Xt

predict

public org.apache.commons.math.linear.RealMatrix predict(double[][] Xt)
Predict the dependent variables for test data Xt.

Parameters:
Xt - an n x d 2D double array with each row being a data example
Returns:
dependent variables for Xt

loadModel

public abstract void loadModel(java.lang.String filePath)

saveModel

public abstract void saveModel(java.lang.String filePath)