.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/svm/plot_iris_svc.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end <sphx_glr_download_auto_examples_svm_plot_iris_svc.py>` 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_svm_plot_iris_svc.py: ================================================== 在鸢尾花数æ®é›†ä¸Šç»˜åˆ¶ä¸åŒçš„SVM分类器 ================================================== 在鸢尾花数æ®é›†çš„二维投影上比较ä¸åŒçš„线性SVM分类器。我们åªè€ƒè™‘该数æ®é›†çš„å‰ä¸¤ä¸ªç‰¹å¾ï¼š - è¼ç‰‡é•¿åº¦ - è¼ç‰‡å®½åº¦ æ¤ç¤ºä¾‹å±•示了如何绘制具有ä¸åŒæ ¸å‡½æ•°çš„四个SVM分类器的决ç–é¢ã€‚ 线性模型 ``LinearSVC()`` å’Œ ``SVC(kernel='linear')`` 产生的决ç–边界略有ä¸åŒã€‚è¿™å¯èƒ½æ˜¯ç”±äºŽä»¥ä¸‹å·®å¼‚: - ``LinearSVC`` 最å°åŒ–平方铰链æŸå¤±ï¼Œè€Œ ``SVC`` 最å°åŒ–常规铰链æŸå¤±ã€‚ - ``LinearSVC`` 使用一对多(也称为一对其余)多类å‡å°‘方法,而 ``SVC`` 使用一对一多类å‡å°‘方法。 两个线性模型都有线性决ç–边界(相交的超平é¢ï¼‰ï¼Œè€Œéžçº¿æ€§æ ¸æ¨¡åž‹ï¼ˆå¤šé¡¹å¼æˆ–高斯RBFï¼‰å…·æœ‰æ›´çµæ´»çš„éžçº¿æ€§å†³ç–边界,其形状å–å†³äºŽæ ¸çš„ç§ç±»åŠå…¶å‚数。 .. NOTE:: 虽然绘制玩具二维数æ®é›†åˆ†ç±»å™¨çš„决ç–函数有助于直观ç†è§£å®ƒä»¬å„自的表达能力,但请注æ„ï¼Œè¿™äº›ç›´è§‰å¹¶ä¸æ€»æ˜¯èƒ½æŽ¨å¹¿åˆ°æ›´çŽ°å®žçš„é«˜ç»´é—®é¢˜ã€‚ .. GENERATED FROM PYTHON SOURCE LINES 24-77 .. image-sg:: /auto_examples/svm/images/sphx_glr_plot_iris_svc_001.png :alt: SVC with linear kernel, LinearSVC (linear kernel), SVC with RBF kernel, SVC with polynomial (degree 3) kernel :srcset: /auto_examples/svm/images/sphx_glr_plot_iris_svc_001.png :class: sphx-glr-single-img .. code-block:: Python import matplotlib.pyplot as plt from sklearn import datasets, svm from sklearn.inspection import DecisionBoundaryDisplay # å¯¼å…¥ä¸€äº›æ•°æ®æ¥çŽ©çŽ© iris = datasets.load_iris() # å–å‰ä¸¤ä¸ªç‰¹å¾ã€‚我们å¯ä»¥é€šè¿‡ä½¿ç”¨ä¸€ä¸ªäºŒç»´æ•°æ®é›†æ¥é¿å…è¿™ç§æƒ…况。 X = iris.data[:, :2] y = iris.target # 我们创建一个SVMå®žä¾‹å¹¶æ‹Ÿåˆæˆ‘们的数æ®ã€‚我们ä¸å¯¹æ•°æ®è¿›è¡Œç¼©æ”¾ï¼Œå› 为我们想绘制支æŒå‘é‡ã€‚ C = 1.0 # SVM regularization parameter models = ( svm.SVC(kernel="linear", C=C), svm.LinearSVC(C=C, max_iter=10000), svm.SVC(kernel="rbf", gamma=0.7, C=C), svm.SVC(kernel="poly", degree=3, gamma="auto", C=C), ) models = (clf.fit(X, y) for clf in models) # title for the plots titles = ( "SVC with linear kernel", "LinearSVC (linear kernel)", "SVC with RBF kernel", "SVC with polynomial (degree 3) kernel", ) # 设置2x2ç½‘æ ¼è¿›è¡Œç»˜å›¾ã€‚ fig, sub = plt.subplots(2, 2) plt.subplots_adjust(wspace=0.4, hspace=0.4) X0, X1 = X[:, 0], X[:, 1] for clf, title, ax in zip(models, titles, sub.flatten()): disp = DecisionBoundaryDisplay.from_estimator( clf, X, response_method="predict", cmap=plt.cm.coolwarm, alpha=0.8, ax=ax, xlabel=iris.feature_names[0], ylabel=iris.feature_names[1], ) ax.scatter(X0, X1, c=y, cmap=plt.cm.coolwarm, s=20, edgecolors="k") ax.set_xticks(()) ax.set_yticks(()) ax.set_title(title) plt.show() .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.095 seconds) .. _sphx_glr_download_auto_examples_svm_plot_iris_svc.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/svm/plot_iris_svc.ipynb :alt: Launch binder :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_iris_svc.ipynb <plot_iris_svc.ipynb>` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_iris_svc.py <plot_iris_svc.py>` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_iris_svc.zip <plot_iris_svc.zip>` .. include:: plot_iris_svc.recommendations .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery <https://sphinx-gallery.github.io>`_