public abstract class Distribution extends Iced<Distribution>
| Modifier and Type | Field and Description |
|---|---|
hex.genmodel.utils.DistributionFamily |
distribution |
double |
huberDelta |
hex.LinkFunction |
linkFunction |
double |
quantileAlpha |
double |
tweediePower |
| Constructor and Description |
|---|
Distribution(hex.genmodel.utils.DistributionFamily family) |
Distribution(hex.genmodel.utils.DistributionFamily family,
hex.LinkFunction lf) |
Distribution(Model.Parameters params) |
Distribution(Model.Parameters params,
hex.LinkFunction lf) |
| Modifier and Type | Method and Description |
|---|---|
double |
deviance(double w,
double y,
double f)
Deviance of given distribution function at predicted value f
|
double |
gammaDenom(double w,
double y,
double z,
double f)
Contribution to denominator for GBM's leaf node prediction
|
double |
gammaNum(double w,
double y,
double z,
double f)
Contribution to numerator for GBM's leaf node prediction
|
double |
initFDenom(double w,
double o,
double y)
Contribution to denominator for initial value computation
|
double |
initFNum(double w,
double o,
double y)
Contribution to numerator for initial value computation
|
double |
link(double f)
Canonical link
|
double |
linkInv(double f)
Canonical link inverse
|
java.lang.String |
linkInvString(java.lang.String f)
String version of link inverse (for POJO scoring code generation)
|
double |
negHalfGradient(double y,
double f)
(Negative half) Gradient of deviance function at predicted value f, for actual response y
This assumes that the deviance(w,y,f) is w*deviance(y,f), so the gradient is w * d/df deviance(y,f)
|
void |
setHuberDelta(double huberDelta)
Setter of huber delta.
|
asBytes, clone, copyOver, frozenType, read, readExternal, readJSON, reloadFromBytes, toJsonString, write, writeExternal, writeJSONpublic final double tweediePower
public final double quantileAlpha
public double huberDelta
public final hex.LinkFunction linkFunction
public final hex.genmodel.utils.DistributionFamily distribution
public Distribution(hex.genmodel.utils.DistributionFamily family,
hex.LinkFunction lf)
public Distribution(hex.genmodel.utils.DistributionFamily family)
public Distribution(Model.Parameters params, hex.LinkFunction lf)
public Distribution(Model.Parameters params)
public void setHuberDelta(double huberDelta)
huberDelta - public double link(double f)
f - value in original space, to be transformed to link spacepublic double linkInv(double f)
f - value in link space, to be transformed back to original spacepublic java.lang.String linkInvString(java.lang.String f)
f - value to be transformed by link inversepublic double deviance(double w,
double y,
double f)
w - observation weighty - (actual) responsef - (predicted) response in original response space (including offset)public double negHalfGradient(double y,
double f)
y - (actual) responsef - (predicted) response in link space (including offset)public double initFNum(double w,
double o,
double y)
w - weighto - offsety - responsepublic double initFDenom(double w,
double o,
double y)
w - weighto - offsety - responsepublic double gammaNum(double w,
double y,
double z,
double f)
w - weighty - responsez - residualf - predicted value (including offset)public double gammaDenom(double w,
double y,
double z,
double f)
w - weighty - responsez - residualf - predicted value (including offset)