class sklearn.linear_model.MultiTaskLassoCV(eps=0.001, n_alphas=100, alphas=None, fit_intercept=True, normalize=False, max_iter=1000, tol=0.0001, copy_X=True, cv=’warn’, verbose=False, n_jobs=None, random_state=None, selection=’cyclic’)
[source]
Multitask L1/L2 Lasso with builtin crossvalidation.
The optimization objective for MultiTaskLasso is:
(1 / (2 * n_samples)) * Y  XW^Fro_2 + alpha * W_21
Where:
W_21 = \sum_i \sqrt{\sum_j w_{ij}^2}
i.e. the sum of norm of each row.
Read more in the User Guide.
Parameters: 


Attributes: 

See also
The algorithm used to fit the model is coordinate descent.
To avoid unnecessary memory duplication the X argument of the fit method should be directly passed as a Fortrancontiguous numpy array.
>>> from sklearn.linear_model import MultiTaskLassoCV >>> from sklearn.datasets import make_regression >>> X, y = make_regression(n_targets=2, noise=4, random_state=0) >>> reg = MultiTaskLassoCV(cv=5, random_state=0).fit(X, y) >>> reg.score(X, y) 0.9994... >>> reg.alpha_ 0.5713... >>> reg.predict(X[:1,]) array([[153.7971..., 94.9015...]])
fit (X, y)  Fit linear model with coordinate descent 
get_params ([deep])  Get parameters for this estimator. 
path (X, y[, eps, n_alphas, alphas, …])  Compute Lasso path with coordinate descent 
predict (X)  Predict using the linear model 
score (X, y[, sample_weight])  Returns the coefficient of determination R^2 of the prediction. 
set_params (**params)  Set the parameters of this estimator. 
__init__(eps=0.001, n_alphas=100, alphas=None, fit_intercept=True, normalize=False, max_iter=1000, tol=0.0001, copy_X=True, cv=’warn’, verbose=False, n_jobs=None, random_state=None, selection=’cyclic’)
[source]
fit(X, y)
[source]
Fit linear model with coordinate descent
Fit is on grid of alphas and best alpha estimated by crossvalidation.
Parameters: 


get_params(deep=True)
[source]
Get parameters for this estimator.
Parameters: 


Returns: 

static path(X, y, eps=0.001, n_alphas=100, alphas=None, precompute=’auto’, Xy=None, copy_X=True, coef_init=None, verbose=False, return_n_iter=False, positive=False, **params)
[source]
Compute Lasso path with coordinate descent
The Lasso optimization function varies for mono and multioutputs.
For monooutput tasks it is:
(1 / (2 * n_samples)) * y  Xw^2_2 + alpha * w_1
For multioutput tasks it is:
(1 / (2 * n_samples)) * Y  XW^2_Fro + alpha * W_21
Where:
W_21 = \sum_i \sqrt{\sum_j w_{ij}^2}
i.e. the sum of norm of each row.
Read more in the User Guide.
Parameters: 


Returns: 

See also
lars_path
, Lasso
, LassoLars
, LassoCV
, LassoLarsCV
, sklearn.decomposition.sparse_encode
For an example, see examples/linear_model/plot_lasso_coordinate_descent_path.py.
To avoid unnecessary memory duplication the X argument of the fit method should be directly passed as a Fortrancontiguous numpy array.
Note that in certain cases, the Lars solver may be significantly faster to implement this functionality. In particular, linear interpolation can be used to retrieve model coefficients between the values output by lars_path
Comparing lasso_path and lars_path with interpolation:
>>> X = np.array([[1, 2, 3.1], [2.3, 5.4, 4.3]]).T >>> y = np.array([1, 2, 3.1]) >>> # Use lasso_path to compute a coefficient path >>> _, coef_path, _ = lasso_path(X, y, alphas=[5., 1., .5]) >>> print(coef_path) [[0. 0. 0.46874778] [0.2159048 0.4425765 0.23689075]]
>>> # Now use lars_path and 1D linear interpolation to compute the >>> # same path >>> from sklearn.linear_model import lars_path >>> alphas, active, coef_path_lars = lars_path(X, y, method='lasso') >>> from scipy import interpolate >>> coef_path_continuous = interpolate.interp1d(alphas[::1], ... coef_path_lars[:, ::1]) >>> print(coef_path_continuous([5., 1., .5])) [[0. 0. 0.46915237] [0.2159048 0.4425765 0.23668876]]
predict(X)
[source]
Predict using the linear model
Parameters: 


Returns: 

score(X, y, sample_weight=None)
[source]
Returns the coefficient of determination R^2 of the prediction.
The coefficient R^2 is defined as (1  u/v), where u is the residual sum of squares ((y_true  y_pred) ** 2).sum() and v is the total sum of squares ((y_true  y_true.mean()) ** 2).sum(). The best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of y, disregarding the input features, would get a R^2 score of 0.0.
Parameters: 


Returns: 

set_params(**params)
[source]
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form <component>__<parameter>
so that it’s possible to update each component of a nested object.
Returns: 


© 2007–2018 The scikitlearn developers
Licensed under the 3clause BSD License.
http://scikitlearn.org/stable/modules/generated/sklearn.linear_model.MultiTaskLassoCV.html