.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/ensemble/plot_voting_decision_regions.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. or to run this example in your browser via Binder .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_ensemble_plot_voting_decision_regions.py: ================================================== 绘制VotingClassifier的决策边界 ================================================== .. currentmodule:: sklearn 绘制Iris数据集的两个特征的 :class:`~ensemble.VotingClassifier` 的决策边界。 绘制玩具数据集中第一个样本的类别概率,这些概率由三个不同的分类器预测并由 :class:`~ensemble.VotingClassifier` 进行平均。 首先,初始化三个示例性分类器( :class:`~tree.DecisionTreeClassifier` 、 :class:`~neighbors.KNeighborsClassifier` 和 :class:`~svm.SVC` ),并使用权重 `[2, 1, 2]` 初始化一个软投票 :class:`~ensemble.VotingClassifier` ,这意味着在计算平均概率时, :class:`~tree.DecisionTreeClassifier` 和 :class:`~svm.SVC` 的预测概率各自的权重是 :class:`~neighbors.KNeighborsClassifier` 分类器权重的两倍。 .. GENERATED FROM PYTHON SOURCE LINES 15-61 .. image-sg:: /auto_examples/ensemble/images/sphx_glr_plot_voting_decision_regions_001.png :alt: Decision Tree (depth=4), KNN (k=7), Kernel SVM, Soft Voting :srcset: /auto_examples/ensemble/images/sphx_glr_plot_voting_decision_regions_001.png :class: sphx-glr-single-img .. code-block:: Python from itertools import product import matplotlib.pyplot as plt from sklearn import datasets from sklearn.ensemble import VotingClassifier from sklearn.inspection import DecisionBoundaryDisplay from sklearn.neighbors import KNeighborsClassifier from sklearn.svm import SVC from sklearn.tree import DecisionTreeClassifier # 加载一些示例数据 iris = datasets.load_iris() X = iris.data[:, [0, 2]] y = iris.target # 训练分类器 clf1 = DecisionTreeClassifier(max_depth=4) clf2 = KNeighborsClassifier(n_neighbors=7) clf3 = SVC(gamma=0.1, kernel="rbf", probability=True) eclf = VotingClassifier( estimators=[("dt", clf1), ("knn", clf2), ("svc", clf3)], voting="soft", weights=[2, 1, 2], ) clf1.fit(X, y) clf2.fit(X, y) clf3.fit(X, y) eclf.fit(X, y) # 绘制决策区域 f, axarr = plt.subplots(2, 2, sharex="col", sharey="row", figsize=(10, 8)) for idx, clf, tt in zip( product([0, 1], [0, 1]), [clf1, clf2, clf3, eclf], ["Decision Tree (depth=4)", "KNN (k=7)", "Kernel SVM", "Soft Voting"], ): DecisionBoundaryDisplay.from_estimator( clf, X, alpha=0.4, ax=axarr[idx[0], idx[1]], response_method="predict" ) axarr[idx[0], idx[1]].scatter(X[:, 0], X[:, 1], c=y, s=20, edgecolor="k") axarr[idx[0], idx[1]].set_title(tt) plt.show() .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.336 seconds) .. _sphx_glr_download_auto_examples_ensemble_plot_voting_decision_regions.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: binder-badge .. image:: images/binder_badge_logo.svg :target: https://mybinder.org/v2/gh/scikit-learn/scikit-learn/main?urlpath=lab/tree/notebooks/auto_examples/ensemble/plot_voting_decision_regions.ipynb :alt: Launch binder :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_voting_decision_regions.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_voting_decision_regions.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_voting_decision_regions.zip ` .. include:: plot_voting_decision_regions.recommendations .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_