.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/exercises/plot_cv_diabetes.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_exercises_plot_cv_diabetes.py: =============================================== التحقق المتقاطع على تمرين مجموعة بيانات مرض السكري =============================================== تمرين تعليمي يستخدم التحقق المتقاطع مع النماذج الخطية. يتم استخدام هذا التمرين في جزء :ref:`cv_estimators_tut` من قسم :ref:`model_selection_tut` من :ref:`stat_learn_tut_index`. .. GENERATED FROM PYTHON SOURCE LINES 12-16 .. code-block:: Python # Authors: The scikit-learn developers # SPDX-License-Identifier: BSD-3-Clause .. GENERATED FROM PYTHON SOURCE LINES 17-19 تحميل مجموعة البيانات وتطبيق GridSearchCV ----------------------------------- .. GENERATED FROM PYTHON SOURCE LINES 19-41 .. code-block:: Python import matplotlib.pyplot as plt import numpy as np from sklearn import datasets from sklearn.linear_model import Lasso from sklearn.model_selection import GridSearchCV X, y = datasets.load_diabetes(return_X_y=True) X = X[:150] y = y[:150] lasso = Lasso(random_state=0, max_iter=10000) alphas = np.logspace(-4, -0.5, 30) tuned_parameters = [{"alpha": alphas}] n_folds = 5 clf = GridSearchCV(lasso, tuned_parameters, cv=n_folds, refit=False) clf.fit(X, y) scores = clf.cv_results_["mean_test_score"] scores_std = clf.cv_results_["std_test_score"] .. GENERATED FROM PYTHON SOURCE LINES 42-44 رسم خطوط الخطأ التي توضح +/- أخطاء قياسية للنتائج ------------------------------------------------------ .. GENERATED FROM PYTHON SOURCE LINES 44-61 .. code-block:: Python plt.figure().set_size_inches(8, 6) plt.semilogx(alphas, scores) std_error = scores_std / np.sqrt(n_folds) plt.semilogx(alphas, scores + std_error, "b--") plt.semilogx(alphas, scores - std_error, "b--") # alpha=0.2 يتحكم في شفافية لون التعبئة plt.fill_between(alphas, scores + std_error, scores - std_error, alpha=0.2) plt.ylabel("نتيجة CV +/- الخطأ القياسي") plt.xlabel("alpha") plt.axhline(np.max(scores), linestyle="--", color=".5") plt.xlim([alphas[0], alphas[-1]]) .. image-sg:: /auto_examples/exercises/images/sphx_glr_plot_cv_diabetes_001.png :alt: plot cv diabetes :srcset: /auto_examples/exercises/images/sphx_glr_plot_cv_diabetes_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none (np.float64(0.0001), np.float64(0.31622776601683794)) .. GENERATED FROM PYTHON SOURCE LINES 62-64 مكافأة: ما مدى ثقتك في اختيار alpha؟ ----------------------------------------------------- .. GENERATED FROM PYTHON SOURCE LINES 64-96 .. code-block:: Python # للإجابة على هذا السؤال، نستخدم كائن LassoCV الذي يضبط معلمة alpha # تلقائيًا من البيانات عن طريق التحقق المتقاطع الداخلي (أي أنه # ينفذ التحقق المتقاطع على بيانات التدريب التي يتلقاها). # نستخدم التحقق المتقاطع الخارجي لمعرفة مدى اختلاف قيم alpha التي تم # الحصول عليها تلقائيًا عبر طيات التحقق المتقاطع المختلفة. from sklearn.linear_model import LassoCV from sklearn.model_selection import KFold lasso_cv = LassoCV(alphas=alphas, random_state=0, max_iter=10000) k_fold = KFold(3) print("إجابة السؤال الإضافي:", "ما مدى ثقتك في اختيار alpha؟") print() print("معلمات Alpha التي تزيد من درجة التعميم على مجموعات فرعية مختلفة") print("من البيانات:") for k, (train, test) in enumerate(k_fold.split(X, y)): lasso_cv.fit(X[train], y[train]) print( "[طي {0}] alpha: {1:.5f}, النتيجة: {2:.5f}".format( k, lasso_cv.alpha_, lasso_cv.score(X[test], y[test]) ) ) print() print("الإجابة: ليست كبيرة جدًا نظرًا لأننا حصلنا على قيم alpha مختلفة لمجموعات فرعية مختلفة") print("من البيانات، علاوة على ذلك، تختلف الدرجات لهذه القيم alpha") print("بشكل كبير.") plt.show() .. rst-class:: sphx-glr-script-out .. code-block:: none إجابة السؤال الإضافي: ما مدى ثقتك في اختيار alpha؟ معلمات Alpha التي تزيد من درجة التعميم على مجموعات فرعية مختلفة من البيانات: [طي 0] alpha: 0.05968, النتيجة: 0.54209 [طي 1] alpha: 0.04520, النتيجة: 0.15521 [طي 2] alpha: 0.07880, النتيجة: 0.45192 الإجابة: ليست كبيرة جدًا نظرًا لأننا حصلنا على قيم alpha مختلفة لمجموعات فرعية مختلفة من البيانات، علاوة على ذلك، تختلف الدرجات لهذه القيم alpha بشكل كبير. .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.836 seconds) .. _sphx_glr_download_auto_examples_exercises_plot_cv_diabetes.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/exercises/plot_cv_diabetes.ipynb :alt: Launch binder :width: 150 px .. container:: lite-badge .. image:: images/jupyterlite_badge_logo.svg :target: ../../lite/lab/index.html?path=auto_examples/exercises/plot_cv_diabetes.ipynb :alt: Launch JupyterLite :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_cv_diabetes.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_cv_diabetes.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_cv_diabetes.zip ` .. include:: plot_cv_diabetes.recommendations .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_