本文简要介绍python语言中 sklearn.model_selection.cross_val_predict
的用法。
用法:
sklearn.model_selection.cross_val_predict(estimator, X, y=None, *, groups=None, cv=None, n_jobs=None, verbose=0, fit_params=None, pre_dispatch='2*n_jobs', method='predict')
为每个输入数据点生成 cross-validated 估计值。
根据 cv 参数拆分数据。每个样本恰好属于一个测试集,并且它的预测是通过安装在相应训练集上的估计器来计算的。
将这些预测传递到评估指标中可能不是衡量泛化性能的有效方法。结果可能与
cross_validate
和cross_val_score
不同,除非所有测试集具有相同的大小并且度量标准在样本上分解。在用户指南中阅读更多信息。
- estimator:实现‘fit’和‘predict’的估计器对象
用于拟合数据的对象。
- X:形状类似数组 (n_samples, n_features)
要拟合的数据。例如,可以是一个列表,或者一个至少 2d 的数组。
- y:形状为 (n_samples,) 或 (n_samples, n_outputs) 的类似数组,默认=无
在监督学习的情况下尝试预测的目标变量。
- groups:形状类似数组 (n_samples,),默认=None
将数据集拆分为训练/测试集时使用的样本的分组标签。仅与 “Group” cv 实例(例如
GroupKFold
)结合使用。- cv:int,交叉验证生成器或可迭代的,默认=无
确定交叉验证拆分策略。 cv 的可能输入是:
- 无,使用默认的 5 折交叉验证,
- int,指定
(Stratified)KFold
中的折叠数, - CV分配器,
- 生成(训练,测试)拆分为索引数组的迭代。
对于 int/None 输入,如果估计器是分类器并且
y
是二进制或多类,则使用StratifiedKFold
。在所有其他情况下,使用KFold
。这些拆分器使用shuffle=False
实例化,因此拆分在调用之间将是相同的。有关可在此处使用的各种交叉验证策略,请参阅用户指南。
- n_jobs:整数,默认=无
并行运行的作业数。训练估计器和预测在交叉验证拆分上并行化。
None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有处理器。有关详细信息,请参阅词汇表。- verbose:整数,默认=0
详细程度。
- fit_params:字典,默认=无
传递给估计器的 fit 方法的参数。
- pre_dispatch:int或str,默认=’2*n_jobs’
控制在并行执行期间分派的作业数。当调度的作业多于 CPU 可以处理的数量时,减少此数字有助于避免内存消耗的爆炸式增长。该参数可以是:
无,在这种情况下,所有作业都会立即创建和生成。将此用于轻量级和 fast-running 作业,以避免由于生成作业 on-demand 造成的延迟
一个 int,给出产生的总作业的确切数量
一个 str,给出一个表达式作为 n_jobs 的函数,如 ‘2*n_jobs’
- method:{‘predict’, ‘predict_proba’,‘predict_log_proba’,‘decision_function’},默认='预测'
estimator
要调用的方法。
- predictions:ndarray
这是调用
method
的结果。形状:当
method
是 ‘predict’ 并且在method
是 ‘decision_function’ 并且目标是二进制的特殊情况下:(n_samples,)当
method
是 {‘predict_proba’, ‘predict_log_proba’, ‘decision_function’} 之一(除非上述特殊情况):(n_samples,n_classes)如果
estimator
是多输出,则会在上面每个形状的末尾添加一个额外的维度‘n_outputs’。
参数:
返回:
注意:
在训练部分中缺少一个或多个类的情况下,如果
method
为每个类生成列,则需要为该类的所有实例分配默认分数,如 {‘decision_function’, ‘predict_proba’, ‘predict_log_proba’}。对于predict_proba
,此值为 0。为了确保有限输出,我们在其他情况下通过 dtype 的最小有限浮点值近似负无穷大。例子:
>>> from sklearn import datasets, linear_model >>> from sklearn.model_selection import cross_val_predict >>> diabetes = datasets.load_diabetes() >>> X = diabetes.data[:150] >>> y = diabetes.target[:150] >>> lasso = linear_model.Lasso() >>> y_pred = cross_val_predict(lasso, X, y, cv=3)
相关用法
- Python sklearn cross_val_score用法及代码示例
- Python sklearn cross_validate用法及代码示例
- Python sklearn confusion_matrix用法及代码示例
- Python sklearn config_context用法及代码示例
- Python sklearn classification_report用法及代码示例
- Python sklearn chi2_kernel用法及代码示例
- Python sklearn completeness_score用法及代码示例
- Python sklearn calibration_curve用法及代码示例
- Python sklearn jaccard_score用法及代码示例
- Python sklearn WhiteKernel用法及代码示例
- Python sklearn CalibrationDisplay.from_predictions用法及代码示例
- Python sklearn VotingRegressor用法及代码示例
- Python sklearn gen_batches用法及代码示例
- Python sklearn ExpSineSquared用法及代码示例
- Python sklearn MDS用法及代码示例
- Python sklearn adjusted_rand_score用法及代码示例
- Python sklearn MLPClassifier用法及代码示例
- Python sklearn train_test_split用法及代码示例
- Python sklearn RandomTreesEmbedding用法及代码示例
- Python sklearn GradientBoostingRegressor用法及代码示例
- Python sklearn GridSearchCV用法及代码示例
- Python sklearn log_loss用法及代码示例
- Python sklearn r2_score用法及代码示例
- Python sklearn ndcg_score用法及代码示例
- Python sklearn ShrunkCovariance用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.model_selection.cross_val_predict。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。