Class: GeneralizedLinearRegression

eclairjs/ml/regression.GeneralizedLinearRegression

:: Experimental :: Fit a Generalized Linear Model ([[https://en.wikipedia.org/wiki/Generalized_linear_model]]) specified by giving a symbolic description of the linear predictor (link function) and a description of the error distribution (family). It supports "gaussian", "binomial", "poisson" and "gamma" as family. Valid link functions for each family is listed below. The first link function of each family is the default one. - "gaussian" -> "identity", "log", "inverse" - "binomial" -> "logit", "probit", "cloglog" - "poisson" -> "log", "identity", "sqrt" - "gamma" -> "inverse", "identity", "log"

Constructor

new GeneralizedLinearRegression(uid)

Parameters:
Name Type Description
uid string
Source:

Extends

Methods

(static) load(path) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Parameters:
Name Type Description
path string
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

copy(extra) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Parameters:
Name Type Description
extra module:eclairjs/ml/param.ParamMap
Overrides:
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

extractParamMap() → {module:eclairjs/ml/param.ParamMap}

Inherited From:
Source:
Returns:
Type
module:eclairjs/ml/param.ParamMap

fit(dataset) → {module:eclairjs/ml/regression.LinearRegressionModel}

Parameters:
Name Type Description
dataset module:eclairjs/sql.DataFrame
Overrides:
Source:
Returns:
Type
module:eclairjs/ml/regression.LinearRegressionModel

setFamily(value) → {type}

Sets the value of param family. Default is "gaussian".
Parameters:
Name Type Description
value string
Source:
Returns:
Type
type

setFeaturesCol(value) → {module:eclairjs/ml.Predictor}

Parameters:
Name Type Description
value string
Inherited From:
Source:
Returns:
Type
module:eclairjs/ml.Predictor

setFitIntercept(value) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Set if we should fit the intercept Default is true.
Parameters:
Name Type Description
value boolean
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

setLabelCol(value) → {module:eclairjs/ml.Predictor}

Parameters:
Name Type Description
value string
Inherited From:
Source:
Returns:
Type
module:eclairjs/ml.Predictor
Sets the value of param link.
Parameters:
Name Type Description
value string
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

setLinkPredictionCol(value) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Sets the link prediction (linear predictor) column name.
Parameters:
Name Type Description
value string
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

setMaxIter(value) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Sets the maximum number of iterations (applicable for solver "irls"). Default is 25.
Parameters:
Name Type Description
value number
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

setPredictionCol(value) → {module:eclairjs/ml.Predictor}

Parameters:
Name Type Description
value string
Inherited From:
Source:
Returns:
Type
module:eclairjs/ml.Predictor

setRegParam(value) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Sets the regularization parameter for L2 regularization. The regularization term is
Parameters:
Name Type Description
value number
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression
Example
0.5 * regParam * L2norm(coefficients)^2

Default is 0.0.

setSolver(value) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Sets the solver algorithm used for optimization. Currently only supports "irls" which is also the default solver.
Parameters:
Name Type Description
value string
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

setTol(value) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Sets the convergence tolerance of iterations. Smaller value will lead to higher accuracy with the cost of more iterations. Default is 1E-6.
Parameters:
Name Type Description
value number
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

setWeightCol(value) → {module:eclairjs/ml/regression.GeneralizedLinearRegression}

Sets the value of param weightCol. If this is not set or empty, we treat all instance weights as 1.0. Default is not set, so all instances have weight one.
Parameters:
Name Type Description
value string
Source:
Returns:
Type
module:eclairjs/ml/regression.GeneralizedLinearRegression

transformSchema(schema) → {module:eclairjs/sql/types.StructType}

Parameters:
Name Type Description
schema module:eclairjs/sql/types.StructType
Inherited From:
Source:
Returns:
Type
module:eclairjs/sql/types.StructType

uid() → {Promise.<string>}

An immutable unique ID for the object and its derivatives.
Source:
Returns:
Type
Promise.<string>