public final class ComputationState
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
ComputationState.GLMSubsetGinfo |
static class |
ComputationState.GramXY
Cached state of COD (with covariate updates) solver.
|
| Modifier and Type | Field and Description |
|---|---|
boolean |
_lsNeeded |
java.lang.String[] |
_randCoeffNames |
| Constructor and Description |
|---|
ComputationState(water.Job job,
GLMModel.GLMParameters parms,
DataInfo dinfo,
GLM.BetaConstraint bc,
int nclasses) |
ComputationState(water.Job job,
GLMModel.GLMParameters parms,
DataInfo dinfo,
GLM.BetaConstraint bc,
int nclasses,
double[][][] penaltyMat,
int[][] gamColInd) |
| Modifier and Type | Method and Description |
|---|---|
GLM.BetaConstraint |
activeBC() |
DataInfo |
activeData() |
DataInfo |
activeDataMultinomial() |
DataInfo |
activeDataMultinomial(int c) |
protected void |
applyStrongRules(double lambdaNew,
double lambdaOld)
Apply strong rules to filter out expected inactive (with zero coefficient) predictors.
|
protected int |
applyStrongRulesMultinomial_old(double lambdaNew,
double lambdaOld)
Apply strong rules to filter out expected inactive (with zero coefficient) predictors.
|
protected void |
applyStrongRulesMultinomial(double lambdaNew,
double lambdaOld)
Apply strong rules to filter out expected inactive (with zero coefficient) predictors.
|
double[] |
beta() |
double[] |
betaMultinomial() |
double[] |
betaMultinomial(int c,
double[] beta) |
protected boolean |
checkKKTs() |
protected boolean |
checkKKTsMultinomial() |
ComputationState.GramXY |
computeGram(double[] beta,
GLMModel.GLMParameters.Solver s) |
protected ComputationState.GramXY |
computeNewGram(DataInfo activeData,
double[] beta,
GLMModel.GLMParameters.Solver s) |
boolean |
converged() |
double |
deviance() |
void |
dropActiveData() |
double[] |
expandBeta(double[] beta) |
double |
get_correction_HL() |
double[] |
get_phi() |
water.fvec.Frame |
get_priorw_wpsi() |
double[] |
get_psi() |
double |
get_tau() |
GLM.GLMGradientInfo |
ginfo() |
ComputationState.GLMSubsetGinfo |
ginfoMultinomial(int c) |
boolean |
ginfoNull() |
GLM.GLMGradientSolver |
gslvr() |
OptimizationUtils.GradientSolver |
gslvrMultinomial(int c) |
double |
l1pen() |
double |
l2pen() |
double |
lambda() |
double |
likelihood() |
double |
objective() |
double |
objective(double[] beta,
double likelihood) |
int[] |
removeCols(int[] cols) |
void |
set_beta_HGLM(double[] beta,
int startIdx,
int len,
boolean interceptFirst)
Copy GLM coefficients stored in beta to _beta of computationState
|
void |
set_likelihoodInfo(double hlik,
double pvh,
double pbvh,
double cAIC) |
void |
set_phi(double[] phi) |
void |
set_psi(double[] psi) |
void |
set_sumEtaSquareConvergence(double[] sumInfo) |
void |
set_tau(double tau) |
void |
set_ubeta_HGLM(double[] ubeta,
int startIdx,
int len) |
void |
setActiveClass(int activeClass) |
void |
setBC(GLM.BetaConstraint bc) |
void |
setBetaMultinomial(int c,
double[] beta,
double[] bc) |
protected void |
setHGLMComputationState(double[] beta,
double[] ubeta,
double[] psi,
double[] phi,
double hlcorrection,
double tau,
water.fvec.Frame wpsi,
java.lang.String[] randCoeffNames) |
void |
setLambda(double lambda) |
void |
setLambdaMax(double lmax) |
java.lang.String |
toString() |
double[] |
ubeta() |
protected double |
updateState(double[] beta,
double likelihood) |
protected double |
updateState(double[] beta,
GLM.GLMGradientInfo ginfo) |
public java.lang.String[] _randCoeffNames
public boolean _lsNeeded
public ComputationState(water.Job job,
GLMModel.GLMParameters parms,
DataInfo dinfo,
GLM.BetaConstraint bc,
int nclasses)
nclasses - - number of classes for multinomial, 1 for everybody elsepublic ComputationState(water.Job job,
GLMModel.GLMParameters parms,
DataInfo dinfo,
GLM.BetaConstraint bc,
int nclasses,
double[][][] penaltyMat,
int[][] gamColInd)
public void set_sumEtaSquareConvergence(double[] sumInfo)
public void set_beta_HGLM(double[] beta,
int startIdx,
int len,
boolean interceptFirst)
beta: - store coefficients to be copied fromstartIdx: - first index of beta to copy fromlen: - length of coefficients to copy from betainterceptFirst: - true if the first index of beta stored the intercept termpublic void set_likelihoodInfo(double hlik,
double pvh,
double pbvh,
double cAIC)
public void set_ubeta_HGLM(double[] ubeta,
int startIdx,
int len)
public double[] get_psi()
public double get_correction_HL()
public double[] get_phi()
public water.fvec.Frame get_priorw_wpsi()
public double get_tau()
public void set_tau(double tau)
public void set_psi(double[] psi)
public void set_phi(double[] phi)
public GLM.GLMGradientSolver gslvr()
public double lambda()
public void setLambdaMax(double lmax)
public void setLambda(double lambda)
public double[] beta()
public double[] ubeta()
public GLM.GLMGradientInfo ginfo()
public GLM.BetaConstraint activeBC()
public double likelihood()
public boolean ginfoNull()
public DataInfo activeData()
public DataInfo activeDataMultinomial()
public void dropActiveData()
public java.lang.String toString()
toString in class java.lang.Objectpublic double l1pen()
public double l2pen()
protected void applyStrongRules(double lambdaNew,
double lambdaOld)
public DataInfo activeDataMultinomial(int c)
public double[] betaMultinomial()
public double[] betaMultinomial(int c,
double[] beta)
public ComputationState.GLMSubsetGinfo ginfoMultinomial(int c)
public void setBC(GLM.BetaConstraint bc)
public void setActiveClass(int activeClass)
public double deviance()
public OptimizationUtils.GradientSolver gslvrMultinomial(int c)
public void setBetaMultinomial(int c,
double[] beta,
double[] bc)
protected int applyStrongRulesMultinomial_old(double lambdaNew,
double lambdaOld)
protected void applyStrongRulesMultinomial(double lambdaNew,
double lambdaOld)
protected boolean checkKKTsMultinomial()
protected boolean checkKKTs()
public int[] removeCols(int[] cols)
public double objective()
public double objective(double[] beta,
double likelihood)
protected double updateState(double[] beta,
double likelihood)
public boolean converged()
protected double updateState(double[] beta,
GLM.GLMGradientInfo ginfo)
protected void setHGLMComputationState(double[] beta,
double[] ubeta,
double[] psi,
double[] phi,
double hlcorrection,
double tau,
water.fvec.Frame wpsi,
java.lang.String[] randCoeffNames)
public double[] expandBeta(double[] beta)
protected ComputationState.GramXY computeNewGram(DataInfo activeData, double[] beta, GLMModel.GLMParameters.Solver s)
public ComputationState.GramXY computeGram(double[] beta, GLMModel.GLMParameters.Solver s)