code: function(uid) {
      	 this.logger = Logger.getLogger("ml_regression_LinearRegression_js");
          var jvmObject;
          if (uid) {
              if (uid instanceof org.apache.spark.ml.feature.VectorIndexer) {
                  jvmObject = uid;
              } else {
                  jvmObject =  new org.apache.spark.ml.regression.LinearRegression(uid);
              }
          } else {
              jvmObject =  new org.apache.spark.ml.regression.LinearRegression();
          }
  
          Predictor.call(this, jvmObject);
      
      }
docs: @classdesc
  Linear regression.
  
  The learning objective is to minimize the squared error, with regularization.
  The specific squared error loss function used is:
  L = 1/2n ||A coefficients - y||^2^
  
  This support multiple types of regularization:
  - none (a.k.a. ordinary least squares)
  - L2 (ridge regression)
  - L1 (Lasso)
  - L2 + L1 (elastic net)
  @class
  @extends module:eclairjs/ml.Predictor
  @memberof module:eclairjs/ml/regression
  @param {string} [uid]