@@ -151,13 +151,13 @@ True
151151
152152参考文献
153153
154- | [[ B2001]] ( #id9 ) |
154+ | [[ B2001]] ( #id9 ) |
155155
1561561 . Breiman, “Random Forests”, Machine Learning, 45(1), 5-32, 2001.
157157
158158 |
159159
160- | [[ B1998]] ( #id7 ) |
160+ | [[ B1998]] ( #id7 ) |
161161
1621621 . Breiman, “Arcing Classifiers”, Annals of Statistics 1998.
163163
@@ -243,7 +243,7 @@ AdaBoost 既可以用在分类问题也可以用在回归问题中:
243243
244244| [[ ZZRH2009]] ( #id18 ) | J. Zhu, H. Zou, S. Rosset, T. Hastie. “Multi-class AdaBoost”, 2009. |
245245
246- | [[ D1997]] ( #id19 ) |
246+ | [[ D1997]] ( #id19 ) |
247247
2482481 . Drucker. “Improving Regressors using Boosting Techniques”, 1997.
249249
@@ -348,28 +348,28 @@ Note
348348GBRT 可以认为是以下形式的可加模型:
349349
350350> ``` py
351- >
351+ >
352352> 
353- >
353+ >
354354> ```
355355
356356其中  是基本函数,在提升算法场景中它通常被称作 _weak learners_ 。梯度树提升算法(Gradient Tree Boosting)使用固定大小 的 [decision trees](tree.html# tree) 作为弱分类器,决策树本身拥有的一些特性使它能够在提升过程中变得有价值, 即处理混合类型数据以及构建具有复杂功能模型的能力.
357357
358358与其他提升算法类似, GBRT 利用前向分步算法思想构建加法模型:
359359
360360> ```py
361- >
361+ >
362362> 
363- >
363+ >
364364> ```
365365
366366在每一个阶段中,基于当前模型  和拟合函数  选择合适的决策树函数  ,从而最小化损失函数  。
367367
368368> ```py
369- >
369+ >
370370> 
372- >
372+ >
373373> ```
374374
375375初始模型  是问题的具体,对于最小二乘回归,通常选择目标值的平均值.
@@ -381,19 +381,19 @@ Note
381381梯度提升(Gradient Boosting)尝试通过最速下降法以数字方式解决这个最小化问题.最速下降方向是在当前模型  下的损失函数的负梯度方向,其中模型  可以计算任何可微损失函数:
382382
383383> ```py
384- >
384+ >
385385> 
387- >
387+ >
388388> ```
389389
390390其中步长  通过如下方式线性搜索获得:
391391
392392> ```py
393- >
393+ >
394394> 
396- >
396+ >
397397> ```
398398
399399该算法处理分类和回归问题不同之处在于具体损失函数的使用。
414414
415415# ## 1.11.4.6\. Regularization(正则化)
416416
417- # ### 1.11.4.6.1\. 收缩率 ( Shrinkage)
417+ # ### 1.11.4.6.1\. 收缩率 ( Shrinkage)
418418
419419[[F2001]](# f2001) 提出一个简单的正则化策略,通过一个因子  来衡量每个弱分类器对于最终结果的贡献:
420420
424424
425425在训练一定数量的弱分类器时,参数 `learning_rate` 和参数 `n_estimators` 之间有很强的制约关系。 较小的 `learning_rate` 需要大量的弱分类器才能维持训练误差的稳定。经验表明数值较小的 `learning_rate` 将会得到更好的测试误差。 [[HTF2009 ]](# htf2009) 推荐把 `learning_rate` 设置为一个较小的常数 (例如: `learning_rate <= 0.1` )同时通过提前停止策略来选择合适的 `n_estimators` . 有关 `learning_rate` 和 `n_estimators` 更详细的讨论可以参考 [[R2007]](#r2007).
426426
427- # ### 1.11.4.6.2\. 子采样 ( Subsampling)
427+ # ### 1.11.4.6.2\. 子采样 ( Subsampling)
428428
429429[[F1999]](# f1999) 提出了随机梯度提升,这种方法将梯度提升(gradient boosting)和 bootstrap averaging(bagging) 相结合。在每次迭代中,基分类器是通过抽取所有可利用训练集中一小部分的 `subsample` 训练得到的子样本采用无放回的方式采样。 `subsample` 参数的值一般设置为 0.5 。
430430
@@ -499,7 +499,7 @@ array([ 0.11, 0.1 , 0.11, ...
499499>> > clf = GradientBoostingClassifier(n_estimators = 100 , learning_rate = 1.0 ,
500500... max_depth = 1 , random_state = 0 ).fit(X, y)
501501>> > features = [0 , 1 , (0 , 1 )]
502- >> > fig, axs = plot_partial_dependence(clf, X, features)
502+ >> > fig, axs = plot_partial_dependence(clf, X, features)
503503
504504```
505505
@@ -511,7 +511,7 @@ array([ 0.11, 0.1 , 0.11, ...
511511>> > mc_clf = GradientBoostingClassifier(n_estimators = 10 ,
512512... max_depth = 1 ).fit(iris.data, iris.target)
513513>> > features = [3 , 2 , (3 , 2 )]
514- >> > fig, axs = plot_partial_dependence(mc_clf, X, features, label = 0 )
514+ >> > fig, axs = plot_partial_dependence(mc_clf, X, features, label = 0 )
515515
516516```
517517
@@ -546,19 +546,19 @@ array([[ 2.46643157, 2.46643157, ...
546546
547547| [F2001] | _([1 ](# id26), [2](#id27), [3](#id28))_ J. Friedman, “Greedy Function Approximation: A Gradient Boosting Machine”, The Annals of Statistics, Vol. 29, No. 5, 2001. |
548548
549- | [[F1999]](# id31) |
549+ | [[F1999]](# id31) |
550550
5515511 . Friedman, “Stochastic Gradient Boosting”, 1999
552552
553553 |
554554
555- | [[HTF2009 ]](# id29) |
555+ | [[HTF2009 ]](# id29) |
556556
5575571 . Hastie, R. Tibshirani and J. Friedman, “Elements of Statistical Learning Ed. 2”, Springer, 2009 .
558558
559559 |
560560
561- | [[R2007]](# id30) |
561+ | [[R2007]](# id30) |
562562
5635631 . Ridgeway, “Generalized Boosted Models: A guide to the gbm package”, 2007
564564
@@ -568,7 +568,7 @@ array([[ 2.46643157, 2.46643157, ...
568568
569569`VotingClassifier` (投票分类器)的原理是结合了多个不同的机器学习分类器,并且采用多数表决(majority vote)(硬投票) 或者平均预测概率(软投票)的方式来预测分类标签。 这样的分类器可以用于一组同样表现良好的模型,以便平衡它们各自的弱点。
570570
571- # ## 1.11.5.1\. 多数类标签 ( 又称为 多数/硬投票)
571+ # ## 1.11.5.1\. 多数类标签 ( 又称为 多数/硬投票)
572572
573573在多数投票中,对于每个特定样本的预测类别标签是所有单独分类器预测的类别标签中票数占据多数(模式)的类别标签。
574574
@@ -720,4 +720,4 @@ Accuracy: 0.95 (+/- 0.05) [Ensemble]
720720```py
721721>> > eclf = VotingClassifier(estimators = [(' lr' , clf1), (' rf' , clf2), (' gnb' , clf3)], voting = ' soft' , weights = [2 ,5 ,1 ])
722722
723- ```
723+ ```
0 commit comments