.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/model_selection/plot_det.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 JupyterLite or Binder .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_model_selection_plot_det.py: ==================================== منحنى الخطأ الكشف (DET) ==================================== في هذا المثال، نقارن بين مقياسين متعددين للعتبات للتصنيف الثنائي: منحنى الخاصية التشغيلية للمستقبل (ROC) ومنحنى الخطأ الكشف (DET). ولتحقيق هذا الغرض، نقوم بتقييم مصنفين مختلفين لنفس مهمة التصنيف. تتميز منحنيات ROC بمعدل الإيجابيات الحقيقية (TPR) على محور Y، ومعدل الإيجابيات الخاطئة (FPR) على محور X. وهذا يعني أن الركن العلوي الأيسر من الرسم البياني هو النقطة "المثالية" - FPR صفر، و TPR واحد. منحنيات DET هي تباين من منحنيات ROC حيث يتم رسم معدل السلبيات الخاطئة (FNR) على محور Y بدلاً من TPR. في هذه الحالة، الأصل (الركن السفلي الأيسر) هو النقطة "المثالية". .. note:: - راجع :func:`sklearn.metrics.roc_curve` لمزيد من المعلومات حول منحنيات ROC. - راجع :func:`sklearn.metrics.det_curve` لمزيد من المعلومات حول منحنيات DET. - هذا المثال يعتمد بشكل فضفاض على :ref:`sphx_glr_auto_examples_classification_plot_classifier_comparison.py` المثال. - راجع :ref:`sphx_glr_auto_examples_model_selection_plot_roc_crossval.py` لمثال لتقدير تباين منحنيات ROC وROC-AUC. .. GENERATED FROM PYTHON SOURCE LINES 31-35 .. code-block:: Python # المؤلفون: مطوري سكايلرن # معرف الترخيص: BSD-3-Clause .. GENERATED FROM PYTHON SOURCE LINES 36-38 توليد بيانات صناعية ----------------------- .. GENERATED FROM PYTHON SOURCE LINES 38-54 .. code-block:: Python from sklearn.datasets import make_classification from sklearn.model_selection import train_test_split from sklearn.preprocessing import StandardScaler X, y = make_classification( n_samples=1_000, n_features=2, n_redundant=0, n_informative=2, random_state=1, n_clusters_per_class=1, ) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=0) .. GENERATED FROM PYTHON SOURCE LINES 55-60 تحديد المصنفات ---------------------- هنا نحدد مصنفين مختلفين. الهدف هو المقارنة البصرية لأدائهم الإحصائي عبر العتبات باستخدام منحنيات ROC وDET. لا يوجد سبب محدد لاختيار هذه المصنفات على مصنفات أخرى متوفرة في سكايلرن. .. GENERATED FROM PYTHON SOURCE LINES 60-72 .. code-block:: Python from sklearn.ensemble import RandomForestClassifier from sklearn.pipeline import make_pipeline from sklearn.svm import LinearSVC classifiers = { "Linear SVM": make_pipeline(StandardScaler(), LinearSVC(C=0.025)), "Random Forest": RandomForestClassifier( max_depth=5, n_estimators=10, max_features=1 ), } .. GENERATED FROM PYTHON SOURCE LINES 73-80 رسم منحنيات ROC وDET ----------------------- يتم رسم منحنيات DET عادةً في مقياس الانحراف الطبيعي. لتحقيق ذلك، تحول عرض DET معدلات الخطأ كما هو مُعاد من قبل :func:`~sklearn.metrics.det_curve` ومقياس المحور باستخدام `scipy.stats.norm`. .. GENERATED FROM PYTHON SOURCE LINES 80-102 .. code-block:: Python import matplotlib.pyplot as plt from sklearn.metrics import DetCurveDisplay, RocCurveDisplay fig, [ax_roc, ax_det] = plt.subplots(1, 2, figsize=(11, 5)) for name, clf in classifiers.items(): clf.fit(X_train, y_train) RocCurveDisplay.from_estimator(clf, X_test, y_test, ax=ax_roc, name=name) DetCurveDisplay.from_estimator(clf, X_test, y_test, ax=ax_det, name=name) ax_roc.set_title("Receiver Operating Characteristic (ROC) curves") ax_det.set_title("Detection Error Tradeoff (DET) curves") ax_roc.grid(linestyle="--") ax_det.grid(linestyle="--") plt.legend() plt.show() .. image-sg:: /auto_examples/model_selection/images/sphx_glr_plot_det_001.png :alt: Receiver Operating Characteristic (ROC) curves, Detection Error Tradeoff (DET) curves :srcset: /auto_examples/model_selection/images/sphx_glr_plot_det_001.png :class: sphx-glr-single-img .. GENERATED FROM PYTHON SOURCE LINES 103-112 لاحظ أنه من الأسهل تقييم الأداء العام لخوارزميات التصنيف المختلفة باستخدام منحنيات DET أكثر من استخدام منحنيات ROC. نظرًا لأن منحنيات ROC يتم رسمها في مقياس خطي، عادةً ما تبدو المصنفات المختلفة متشابهة لجزء كبير من الرسم البياني وتختلف أكثر في الركن العلوي الأيسر من الرسم البياني. من ناحية أخرى، لأن منحنيات DET تمثل خطوطًا مستقيمة في مقياس الانحراف الطبيعي، فإنها تميل إلى أن تكون مميزة ككل ومنطقة الاهتمام تمتد على جزء كبير من الرسم البياني. توفر منحنيات DET تعليقات مباشرة حول خطأ الكشف التجاري لمساعدة في تحليل نقطة التشغيل. بعد ذلك، يمكن للمستخدم تحديد FNR الذي يرغب في قبوله على حساب FPR (أو العكس). .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.243 seconds) .. _sphx_glr_download_auto_examples_model_selection_plot_det.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/model_selection/plot_det.ipynb :alt: Launch binder :width: 150 px .. container:: lite-badge .. image:: images/jupyterlite_badge_logo.svg :target: ../../lite/lab/index.html?path=auto_examples/model_selection/plot_det.ipynb :alt: Launch JupyterLite :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_det.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_det.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_det.zip ` .. include:: plot_det.recommendations .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_