# make_regression

### cuml.dask.datasets.make_regression(n_samples=100, n_features=100, n_informative=10, n_targets=1, bias=0.0, effective_rank=None, tail_strength=0.5, noise=0.0, shuffle=False, coef=False, random_state=None, n_parts=1, n_samples_per_part=None, order='F', dtype='float32', client=None, use_full_low_rank=True)[[source]](https://github.com/NVIDIA/cuml/blob/93418baf5/python/cuml/cuml/dask/datasets/regression.py#L326)

Generate a random regression problem.

The input set can either be well conditioned (by default) or have a low
rank-fat tail singular profile.

The output is generated by applying a (potentially biased) random linear
regression model with “n_informative” nonzero regressors to the previously
generated input and some gaussian centered noise with some adjustable
scale.

* **Parameters:**
  **n_samples**
  : The number of samples.

  **n_features**
  : The number of features.

  **n_informative**
  : The number of informative features, i.e., the number of features used
    to build the linear model used to generate the output.

  **n_targets**
  : The number of regression targets, i.e., the dimension of the y output
    vector associated with a sample. By default, the output is a scalar.

  **bias**
  : The bias term in the underlying linear model.

  **effective_rank**
  : if not None:
    : The approximate number of singular vectors required to explain most
      of the input data by linear combinations. Using this kind of
      singular spectrum in the input allows the generator to reproduce
      the correlations often observed in practice.
    <br/>
    if None:
    : The input set is well conditioned, centered and gaussian with
      unit variance.

  **tail_strength**
  : The relative importance of the fat noisy tail of the singular values
    profile if “effective_rank” is not None.

  **noise**
  : The standard deviation of the gaussian noise applied to the output.

  **shuffle**
  : Shuffle the samples and the features.

  **coef**
  : If True, the coefficients of the underlying linear model are returned.

  **random_state**
  : Determines random number generation for dataset creation. Pass an int
    for reproducible output across multiple function calls.

  **n_parts**
  : The number of parts of work.

  **order**
  : Row-major or Col-major

  **dtype: str, optional (default=’float32’)**
  : dtype of generated data

  **use_full_low_rank**
  : Whether to use the entire dataset to generate the low rank matrix.
    If False, it creates a low rank covariance and uses the
    corresponding covariance to generate a multivariate normal
    distribution on the remaining chunks
* **Returns:**
  **X**
  : The input samples.

  **y**
  : The output values.

  **coef**
  : The coefficient of the underlying linear model. It is returned only if
    coef is True.

### Notes

Known Performance Limitations:
: 1. When `effective_rank` is set and `use_full_low_rank` is True,         we cannot generate order `F` by construction, and an explicit         transpose is performed on each part. This may cause memory to spike         (other parameters make order `F` by construction)
  2. When `n_targets > 1` and `order = 'F'` as above, we have to         explicitly transpose the `y` array. If `coef = True`, then we also         explicitly transpose the `ground_truth` array
  3. When `shuffle = True` and `order = F`, there are memory spikes to         shuffle the `F` order arrays

#### NOTE
If out-of-memory errors are encountered in any of the above
configurations, try increasing the `n_parts` parameter.

<!-- !! processed by numpydoc !! -->
