معیارهای عملکرد و اعتبارسنجی: چگونه بدانیم مدل خوب است

چه چیزی اندازه‌گیری می‌شود، روی کدام داده‌ها، و عددی که گزارش می‌شود چگونه قابل اعتماد می‌شود – از مجموعه آزمون تا حد خطا، و از نشت داده‌ها تا آزمودنی‌هایی که از یکدیگر مستقل نیستند. بخش الف – روش‌های پژوهش.

راهنما

در این صفحه

یک مدل پیش‌بینی فقط به یک شیوه اعتبارسنجی می‌شود – روی داده‌هایی که ندیده است. صفحه یادگیری ماشین توضیح می‌دهد که تفاوت مدلی که تبیین می‌کند با مدلی که پیش‌بینی می‌کند چیست، مدل‌ها کدام‌اند و یک پروژه چگونه ساخته می‌شود؛ این صفحه به یک پرسش می‌پردازد که هر گزارشی درباره چنین مدلی بر آن استوار است یا با آن فرو می‌ریزد: این عدد از کجا آمده است. چهار پرسش فرعی، به ترتیبی که پیش می‌آیند: کدام معیار (1) – زیرا "صحت" اغلب معیار نادرستی است؛ روی کدام داده‌ها (2) – آموزش، اعتبارسنجی و آزمون، و چرا مجموعه آزمون پیش از هر چیز کنار گذاشته می‌شود؛ چگونه نه فقط یک عدد بلکه دقت آن را نیز به دست آوریم (3) – اعتبارسنجی متقابل؛ و آن عدد اصلاً چه می‌تواند باشد (4) – سوگیری، واریانس، و خطای بیز، حدی که هیچ مدلی از آن پایین‌تر نمی‌رود. و سپس دو راهی که عدد در آن‌ها دروغ می‌شود بی‌آنکه کسی تقلب کرده باشد: نشت داده‌ها (5)، و آزمودنی‌هایی که از یکدیگر مستقل نیستند – خانواده‌ها، کلاس‌های درس، شبکه‌ها – که تقسیم معمول به آموزش و آزمون آن‌ها را نادیده می‌گیرد (6). بخش 7 همه این‌ها را به یک بند گزارش تبدیل می‌کند. منابع، چهار کتاب درسی صفحه یادگیری ماشین‌اند – ژرون (2022)، هستی، تیبشیرانی و فریدمن (2009)، بیشاپ (2006)، ایشی و همکاران (2026) – و سه مقاله که برای پژوهشگران نوشته شده‌اند: درباره نشت (Kapoor & Narayanan, 2023)، درباره حدود پیش‌بینی (Salganik et al., 2020) و درباره تفاوت میان اعتبارسنجی مدل تبیینی و اعتبارسنجی مدل پیش‌بین (Shmueli, 2010)؛ و برای بخش 6 – کتاب بنیادی یادگیری رابطه‌ای (Getoor & Taskar, 2007). و منبع پنجم، از سوی نرم‌افزار: کتاب درسی ترونگ (2026) برای SPSS Modeler، که "هم برای یادگیرندگانی از رشته‌های غیرفنی و هم برای پژوهشگران باتجربه" نوشته شده است – و می‌گوید همان مفاهیم در منوهای IBM چه نامیده می‌شوند، نرم‌افزار به‌طور پیش‌فرض چه می‌کند، و گزارش چگونه نوشته می‌شود. و وقتی اصلاً متغیر وابسته‌ای وجود ندارد – و بنابراین معیاری هم نیست – چه پیش می‌آید، در یادگیری بدون نظارت.

خطای آموزش، خطای تعمیم

خطای آموزش روی مشاهداتی اندازه‌گیری می‌شود که مدل از آن‌ها یاد گرفته است، و هرچه مدل پیچیده‌تر شود پایین‌تر می‌آید – تا صفر. خطای تعمیم (generalization error) خطا روی مشاهدات تازه است – و تنها عددی است که اهمیت دارد.

آستانه

یک طبقه‌بند نمره‌ای محاسبه می‌کند و بر اساس یک آستانه تصمیم می‌گیرد. آستانه نسبت میان هشدارهای کاذب و از دست رفته‌ها را تعیین می‌کند؛ 0.5 یک پیش‌فرض است، نه قانون. معیارهای طبقه‌بندی در آستانه‌ای معین اندازه‌گیری می‌شوند – یا روی همه آستانه‌ها (منحنی‌های ROC و PR).

نشت

Leakage: اطلاعاتی از مجموعه آزمون، یا از آینده، یا از خود هدف، که به آموزش راه یافته است. مدل عالی به نظر می‌رسد و هیچ ارزشی ندارد. رایج‌ترین اشتباه در علم مبتنی بر یادگیری ماشین، و در خروجی دیده نمی‌شود.

خطای بیز

حد پایین خطا برای مجموعه‌ای معین از ویژگی‌ها – "خطای اجتناب‌ناپذیر" ناشی از هم‌پوشانی توزیع‌ها. هیچ مدلی از آن پایین‌تر نمی‌رود؛ وقتی دویست مدل در یک نقطه متوقف می‌شوند، احتمالاً به آن رسیده‌اند.

1. معیار: بر اساس وظیفه و بر اساس هزینه خطا

معیار در آغاز پروژه انتخاب می‌شود، نه در پایان آن – زیرا تعیین می‌کند کدام مدل "خوب" است (Géron, 2022, Chapter 2, "Select a Performance Measure"). برای رگرسیون – RMSE، ریشه میانگین مجذور خطاها، بر حسب واحد هدف، که به خطاهای بزرگ وزن بیشتری می‌دهد؛ یا MAE، میانگین قدر مطلق خطاها، وقتی داده‌های پرت زیادند. برای طبقه‌بندی – مشکل از اینجا آغاز می‌شود. فصل 3 ژرون یک طبقه‌بند دووجهی را برای تشخیص رقم 5 در تصاویر ارقام دست‌نویس آموزش می‌دهد: اعتبارسنجی متقابل صحت کلی (accuracy، نسبت طبقه‌بندی‌های درست) بالای 95% در هر لایه نشان می‌دهد. سپس یک طبقه‌بند ساختگی که درباره هر تصویر می‌گوید "5 نیست" – و بالای 90% می‌گیرد، چون فقط حدود یک‌دهم تصاویر 5 هستند. "نوستراداموس را شکست می‌دهد." نتیجه: "صحت معمولاً معیار عملکرد ترجیحی برای طبقه‌بندها نیست، به‌ویژه وقتی با مجموعه‌داده‌های نامتوازن سروکار دارید" (Chapter 3, "Performance Measures") – و مجموعه‌داده‌های پژوهش اجتماعی تقریباً همیشه نامتوازن‌اند: ترک تحصیل، خشونت، بیکاری، رأی به حزبی کوچک. بیشاپ همان مثال را از پزشکی می‌آورد: سرطان در 1 از هر 1,000 تصویر رادیولوژی – "طبقه‌بندی که هر نقطه را به کلاس عادی نسبت دهد از همان ابتدا به 99.9% صحت می‌رسد، و اجتناب از این راه‌حل پیش‌پاافتاده دشوار خواهد بود"؛ راه‌حل او آموزش روی مجموعه‌ای متوازن و سپس اصلاح احتمال‌ها بر اساس نسبت کلاس‌ها در جامعه آماری است (Bishop, 2006, p. 45).

ماتریس درهم‌ریختگی (confusion matrix) ابزار کار است: سطرها – کلاس واقعی، ستون‌ها – کلاس پیش‌بینی‌شده؛ در مثال ژرون 53,892 منفی واقعی، 687 مثبت کاذب (خطای نوع I)، 1,891 منفی کاذب (خطای نوع II) و 3,530 مثبت واقعی – و این ماتریس روی پیش‌بینی‌های "تمیز"، خارج از نمونه، محاسبه می‌شود که مدل برای مشاهداتی داده است که در آموزش ندیده است. از آن precision ("دقت مثبت": وقتی مدل می‌گوید 5 – در چه نسبتی درست می‌گوید؛ 83.7%) و حساسیت (recall: چه نسبتی از 5های واقعی را می‌گیرد؛ 65.1%) به دست می‌آیند، و F1 – میانگین هارمونیک آن دو (.73)، که فقط وقتی هر دو بالا باشند بالاست. و اینکه کدام‌یک مهم است – پرسشی درباره هزینه خطاست، نه درباره آمار: فیلتر ویدئو برای کودکان به precision بالا نیاز دارد حتی به بهای حساسیت پایین؛ آشکارساز دزد در فروشگاه می‌تواند به 30% precision بسنده کند اگر حساسیت 99% باشد. این دو از راه آستانه با یکدیگر مبادله می‌شوند: بالا بردن آستانه precision را بالا و حساسیت را پایین می‌برد (Chapter 3, "The Precision/Recall Trade-off"). منحنی ROC حساسیت را در برابر نرخ مثبت‌های کاذب روی همه آستانه‌ها نشان می‌دهد، و سطح زیر آن (AUC) – 1 برای طبقه‌بند کامل، 0.5 برای طبقه‌بند تصادفی – طبقه‌بندها را بدون انتخاب آستانه مقایسه می‌کند؛ اما در کلاس کمیاب ROC بیش از حد خوش‌بینانه است، و "به‌عنوان یک قاعده سرانگشتی، هر بار که کلاس مثبت کمیاب است یا وقتی مثبت‌های کاذب برایتان مهم‌تر از منفی‌های کاذب‌اند، باید منحنی PR را ترجیح دهید" (Chapter 3, "The ROC Curve"). خود منحنی را – با فاصله اطمینان برای سطح، آستانه بر اساس شاخص یودن، حساسیت و ویژگی در هر آستانه و مقایسه میان شاخص‌ها – در صفحه تحلیل ROC محاسبه می‌کنند. کسی که جدول طبقه‌بندی در SPSS را می‌شناسد، آستانه 0.5 را به‌عنوان پیش‌فرضی می‌شناسد که هیچ‌کس تغییرش نمی‌دهد؛ اینجا این آستانه تصمیمی است که گزارش می‌شود.

کلاس کمیاب: چه باید کرد – و چه نباید کرد. ترونگ درمان‌ها را به ترتیب اولویت می‌چیند: نخست معیارهای چندگانه به جای صحت کلی، سپس تقسیم و اعتبارسنجی، سپس یادگیری حساس به هزینه (cost-sensitive learning) – و تنها "اگر روش‌های پیشین مشکلات عدم توازن را به‌طور مؤثر حل نکنند و نگرانی وجود داشته باشد که مدل‌های ما معتبر نیستند، بازنمونه‌گیری به گزینه‌ای معقول تبدیل می‌شود" (Truong, 2026, pp. 78-79). یادگیری حساس به هزینه صورت‌بندی رسمی "هزینه خطا" است: یک ماتریس تصمیم که در آن هر خطا هزینه‌ای دارد – C(FN) برای از دست دادن، C(FP) برای هشدار کاذب – و مدل برگزیده آن است که مجموع هزینه‌اش، C(FP) × FP + C(FN) × FN، کمترین باشد، نه آنکه نرخ خطایش کمترین است؛ "بیشتر نرم‌افزارها گزینه‌ای برای وارد کردن ماتریس تصمیم دارند" (ص. 203-204). در مقابل، بیش‌نمونه‌گیری کلاس کمیاب (تکثیر مشاهدات، یا SMOTE – مشاهدات مصنوعی میان همسایگان نزدیک) و کم‌نمونه‌گیری کلاس فراوان – که خود ترونگ درباره اولی یادآوری می‌کند که "تکثیر داده‌ها مدل‌ها را مستعدتر به بیش‌برازش می‌کند" (ص. 79) – در یک شبیه‌سازی روی رگرسیون لجستیک بررسی شدند: هر سه "مدل‌هایی با کالیبراسیون ضعیف به دست دادند: احتمال تعلق به کلاس اقلیت به‌طور چشمگیری بیش‌برآورد شد"، AUC را در مقایسه با مدلی بدون اصلاح بالا نبردند، و توازنی میان حساسیت و ویژگی که به آن رسیدند "را می‌شد به همان اندازه با جابه‌جا کردن آستانه احتمال به دست آورد"؛ نتیجه – "عدم توازن در پیامد به‌خودی‌خود مشکل نیست، و اصلاح عدم توازن حتی ممکن است عملکرد مدل را بدتر کند" (van den Goorbergh et al., 2022, چکیده). این دو خوانش با هم سازگارند: کلاس کمیاب مشکلِ معیار و آستانه است، نه داده‌ها. پژوهشگری که به احتمال‌ها نیاز دارد – برای نمره‌دهی خطر، برای گزارش – توازن‌بخشی نمی‌کند؛ پژوهشگری که با این حال توازن‌بخشی می‌کند، این کار را فقط درون لایه آموزش انجام می‌دهد (نشت L1.2، بخش 5) و گزارش می‌کند که احتمال‌هایی که مدل تولید می‌کند دیگر احتمال نیستند. کتاب درسی Modeler در جانب بازنمونه‌گیری می‌ایستد – نویسندگان "گرایش دارند مجموعه‌داده‌ها را با روش‌های توازن‌بخشی یا بازنمونه‌گیری درمان کنند" وقتی کلاس اقلیت "10% یا کمتر" است (نسبت 10:1 یا 20:1) – اما بر دو نکته‌ای که اینجا مهم است توافق دارند: "هرگز نباید فقط به صحت کلی تکیه کنیم"، و "برای جدا کردن یک زیرنمونه آزمون معرف، باید روش تقسیم را پیش از اجرای رویه بازنمونه‌گیری به کار برد" (Wendler & Gröttrup, 2021, pp. 1148, 1150).

و میان "بله" و "نه" – تصمیم نگرفتن. نظریه تصمیم بیشاپ گزینه رد (reject option) را می‌افزاید: خودداری از تصمیم در مواردی که بالاترین احتمال پسین کمتر از یک آستانه است، و واگذاشتن آن‌ها "به یک متخصص انسانی" (Bishop, 2006, p. 42). برای پژوهشگری که پاسخ‌های باز را با یک مدل کدگذاری می‌کند (صفحه NLP، گام 6)، این رویه درست است: مدل موارد روشن را طبقه‌بندی می‌کند، انسان موارد مبهم را، و توافق میان آن‌ها با پایایی بین کدگذاران سنجیده می‌شود.

جدول 1. معیارهای عملکرد – هر کدام چه چیزی را می‌سنجد و چه زمانی به کار می‌رود

معیاروظیفهچه چیزی را می‌سنجدچه زمانی – و دام آن چیست
RMSEرگرسیونریشه میانگین مجذور خطاها؛ بر حسب واحد هدف. وزن بالا برای خطاهای بزرگ (نرم ℓ2).پیش‌فرض برای رگرسیون. حساس به داده‌های پرت – وقتی زیادند به MAE روی می‌آورند.
MAEرگرسیونمیانگین قدر مطلق خطاها (نرم ℓ1، "فاصله منهتن").وقتی داده‌های پرت زیادند. حساسیت کمتر – و "تنبیه" کمتر.
R² روی داده‌های آزمونرگرسیوننسبت واریانس تبیین‌شده – در مشاهدات تازه، نه در آموزش.برای مقایسه با یک خط مبنا. همان R² رگرسیون تبیینی نیست: می‌تواند منفی باشد.
صحت کلی (accuracy)طبقه‌بندینسبت طبقه‌بندی‌های درست از کل مشاهدات.فقط در کلاس‌های متوازن. در کلاس کمیاب – بی‌معنا (طبقه‌بند ساختگی).
ماتریس درهم‌ریختگیطبقه‌بندیشمارش واقعی × پیش‌بینی‌شده برای هر جفت کلاس: TP، FP، FN، TN.همیشه. پایه همه موارد دیگر؛ روی پیش‌بینی‌های خارج از نمونه محاسبه می‌شود.
Precisionطبقه‌بندیTP / (TP + FP): از میان موارد پیش‌بینی‌شده به‌عنوان مثبت – چند مورد واقعاً مثبت‌اند.وقتی خطای مثبت پرهزینه است (هشدار کاذب).
حساسیت (recall)طبقه‌بندیTP / (TP + FN): از میان مثبت‌های واقعی – چند مورد شناسایی شده‌اند.وقتی از دست دادن پرهزینه است (خطری که شناسایی نشده). از راه آستانه با precision مبادله می‌شود.
F1طبقه‌بندیمیانگین هارمونیک precision و حساسیت.برای مقایسه طبقه‌بندها با یک عدد – وقتی هر دو به اندازه مشابهی مهم‌اند.
ROC AUCطبقه‌بندیسطح زیر منحنی حساسیت در برابر نرخ مثبت‌های کاذب، روی همه آستانه‌ها: 1 کامل، 0.5 تصادفی.برای مقایسه بدون انتخاب آستانه. در کلاس کمیاب بیش از حد خوش‌بینانه است – آنجا منحنی precision-recall ارجح است.

یادداشت. بر اساس Géron (2022)، فصل‌های 2-3. TP، FP، FN، TN – مثبت واقعی، مثبت کاذب، منفی کاذب، منفی واقعی. منحنی ROC حساسیت را در برابر 1 منهای ویژگی نشان می‌دهد – همان اصطلاحات آزمون‌های تشخیصی در همه‌گیرشناسی.

2. روی کدام داده‌ها: آموزش، اعتبارسنجی، آزمون

تفاوت با اعتبارسنجی رگرسیون تبیینی. شمولی تمایز می‌گذارد: در مدل‌سازی تبیینی، اعتبارسنجی بررسی می‌کند که مدل نماینده نظریه است و با داده‌ها برازش دارد – آزمون‌های تصریح، پایایی و روایی گویه‌ها، تحلیل باقیمانده‌ها؛ در مدل‌سازی پیش‌بین اعتبارسنجی "بر تعمیم تمرکز دارد، یعنی بر توانایی مدل در پیش‌بینی داده‌های تازه"، و "بزرگ‌ترین خطر برای تعمیم، بیش‌برازش به داده‌های آموزش است" (Shmueli, 2010, Section 2.6.1). و بنابراین "تنها راه برای دانستن اینکه یک مدل تا چه حد به موارد تازه تعمیم می‌یابد، این است که آن را واقعاً روی موارد تازه امتحان کنیم" – یک مجموعه آزمون کنار گذاشته می‌شود، معمولاً 20% داده‌ها (Géron, 2022, Chapter 1, "Testing and Validating"). "خطای آموزش برآورد خوبی از خطای آزمون نیست" – با پیچیدگی مدل پیوسته پایین می‌آید، تا صفر، "اما مدلی با خطای آموزش صفر به داده‌های آموزش بیش‌برازش دارد و معمولاً تعمیم ضعیفی خواهد داشت" (Hastie et al., 2009, pp. 220-221)؛ و در بیان بازشناسی الگو، خطای "جایگذاری مجدد" (resubstitution، آزمودن طبقه‌بند روی همان مشاهداتی که از آن‌ها یاد گرفته است) کران پایین خطای واقعی است و خطای آزمون کران بالا – حقیقت میان آن دو است (Ishii et al., 2026, pp. 113-114).

پیش از کاوش، نه پس از آن. ژرون می‌نویسد: "شاید عجیب به نظر برسد که در این مرحله بخشی از داده‌ها را کنار بگذاریم"، اما "مغز شما سامانه‌ای شگفت‌انگیز برای تشخیص الگوهاست، و این یعنی بسیار مستعد بیش‌برازش است": کسی که به مجموعه آزمون نگاه کند مدل را بر اساس آنچه آنجا دیده انتخاب می‌کند، و برآورد تعمیمش بیش از حد خوش‌بینانه خواهد بود – سوگیری سرک‌کشیدن در داده‌ها (data snooping bias; Chapter 2, "Create a Test Set"). پیوست الف کتاب این را به صورت فرمان بیان می‌کند: "یک مجموعه آزمون نمونه‌گیری کنید، آن را کنار بگذارید، و هرگز به آن نگاه نکنید". دو جزئیات فنی که برای بازتولید مهم‌اند: تقسیم باید میان اجراها پایدار باشد (بذر ثابت، یا درهم‌سازی شناسه آزمودنی – تا آزمودنی‌ای که در آموزش بوده با افزوده شدن داده‌ها به آزمون منتقل نشود)؛ و باید لایه‌بندی‌شده باشد – ژرون این را از راه پیمایش‌ها توضیح می‌دهد: جمعیت ایالات متحده 51.1% زن است، و بنابراین نمونه‌ای 1,000 نفری باید 511 زن را حفظ کند؛ در نمونه‌گیری تصادفی محض 10.7% احتمال یک نمونه سوگیرانه وجود دارد (کمتر از 48.5% یا بیشتر از 53.5% زن). به همین شیوه مجموعه آزمون بر اساس یک متغیر کلیدی لایه‌بندی می‌شود – و در کلاس کمیاب، بر اساس خود پیامد.

سه مجموعه، نه دو. اگر مدلی بر اساس مجموعه آزمون تنظیم شود – میان مدل‌ها انتخاب شود، یا ابرپارامتری مانند شدت منظم‌سازی تعیین شود – خطای تعمیم را "بارها روی مجموعه آزمون اندازه گرفته‌ایم، و مدل و ابرپارامترها را طوری تنظیم کرده‌ایم که بهترین مدل را برای همین مجموعه خاص تولید کنند"؛ مدلی که با 5% خطا به نظر می‌رسید، در عمل 15% خطا تولید می‌کند. راه‌حل یک مجموعه اعتبارسنجی (validation set، همچنین dev set) است: بخشی از مجموعه آموزش کنار گذاشته می‌شود، انتخاب میان نامزدها روی آن انجام می‌شود، مدل برگزیده روی کل مجموعه آموزش آموزش می‌بیند، و تنها آنگاه – یک بار – روی مجموعه آزمون اندازه‌گیری می‌شود (Chapter 1, "Hyperparameter Tuning and Model Selection"). و پس از اندازه‌گیری چه می‌شود: "باید در برابر وسوسه تنظیم ابرپارامترها برای خوب جلوه دادن اعداد روی مجموعه آزمون مقاومت کنید؛ بعید است این بهبودها به داده‌های تازه تعمیم یابند" (Chapter 2, "Evaluate Your System on the Test Set")؛ پیوست الف: "پس از اندازه‌گیری خطای تعمیم، مدل را تغییر ندهید: فقط شروع به بیش‌برازش به مجموعه آزمون می‌کنید". عدد روی مجموعه آزمون نیز با فاصله اطمینان همراه است: در مثال ژرون RMSE برابر 41,424 و فاصله 95% – با توزیع t روی مجذور خطاها – میان 39,275 و 43,467.

نام‌ها میان نرم‌افزارها جابه‌جا می‌شوند. "در حالی که بیشتر نرم‌افزارها نمونه نخست تقسیم را به‌طور یکسان 'آموزش' می‌نامند، نام‌های نمونه دوم و سوم متفاوت است، و این ممکن است گیج‌کننده باشد" (Truong, 2026, p. 85): در SPSS Modeler تقسیم Train / Test / Validation است – "آزمون" برای مقایسه مدل‌ها و اصلاح آن‌ها به کار می‌رود، و "اعتبارسنجی" اندازه‌گیری نهایی است – به زبان مستندات: "آموزش مدل در یک نمونه، آزمودن و پالایش مدل در نمونه دوم، و اعتبارسنجی نتایج در نمونه سوم" (IBM Corporation, 2016, p. 157)؛ در SAS Enterprise Miner – Train / Validation / Test، برعکس (جدول 3.8 همان‌جا)؛ و ژرون و هستی و همکاران، که این صفحه از آن‌ها پیروی می‌کند، مانند SAS عمل می‌کنند: اعتبارسنجی برای انتخاب، آزمون برای اندازه‌گیری پایانی. ترتیب اصل است، نه نام – و پژوهشگری که "صحت روی مجموعه آزمون" را از خروجی Modeler گزارش می‌کند، با نام‌های این صفحه، مجموعه اعتبارسنجی را گزارش می‌کند. نسبت‌ها نیز متفاوت‌اند: ترونگ 60-20-20 را برای نمونه‌ای از هزار تا یک میلیون مشاهده توصیه می‌کند، و "کمتر از 1,000 مشاهده – 60-40 بدون مجموعه سوم" (ص. 87)، در حالی که توصیه او درباره حجم نمونه برای داده‌کاوی "دست‌کم 100,000 مورد" است (ص. 73). این جهانی دیگر است نسبت به پیمایشی با 300 آزمودنی – و در آن، مجموعه اعتبارسنجی ثابتی با 60 آزمودنی عددی است که به تصادف بستگی دارد، و از این رو بخش 3. و آنچه ترونگ به پژوهشگری که در مقیاس کوچک کار می‌کند می‌دهد: تمایز او میان پایایی یک مدل – "همسانی درونی"، نتایج یکسان روی نمونه‌های مختلف – و روایی – "دقت"، پیش‌بینی درست هدف؛ "در واقع، روایی مدل همان توان پیش‌بینی است"، و پایایی بدون روایی ترازویی است که به‌طور پیوسته حدود 22 پوند را برای کیسه‌ای 25 پوندی نشان می‌دهد (ص. 186). شاهد پایایی، نزد او، شکاف کوچک میان معیار روی آموزش و معیار روی آزمون است – "اگر ناهمخوانی کمتر از 5% باشد، می‌توان آن را پایا دانست" (ص. 187) – و این دقیقاً همان شکافی است که بخش 7 گزارش آن را الزامی می‌داند.

در مقیاس بزرگ چگونه به نظر می‌رسد. در چالش خانواده‌های شکننده، برگزارکنندگان مسابقه نیمی از داده‌ها را که برای آموزش به کار نرفته بود به دو مجموعه تقسیم کردند: "جدول امتیازات" (leaderboard)، که 160 تیم می‌توانستند در طول مسابقه خود را روی آن بیازمایند، و "نگه‌داشته" (holdout)، که صحت آن "تا پایان چالش برای شرکت‌کنندگان – و برای برگزارکنندگان – معلوم نبود" (Salganik et al., 2020, Section Methods). و حتی چنین، نویسندگان قید می‌گذارند: استفاده از همان مجموعه نگه‌داشته هم برای انتخاب بهترین ارسال از میان 160 و هم برای ارزیابی آن "برآوردهایی اندکی خوش‌بینانه تولید کرد" – سوگیری‌ای کوچک در مورد آن‌ها، اما موجود (Section Results). برای پژوهشگری که یک بار روی نمونه‌ای 300 نفری آزمون می‌کند، این سوگیری کوچک نیست.

3. اعتبارسنجی متقابل: نه فقط یک عدد، بلکه دقت آن نیز

یک مجموعه اعتبارسنجی یک عدد می‌دهد، که به تصادفِ تقسیمی که پیش آمده بستگی دارد. اعتبارسنجی متقابل (k-fold cross-validation) مجموعه آموزش را به k لایه تقسیم می‌کند، k بار روی k − 1 لایه آموزش می‌دهد و روی لایه باقی‌مانده می‌آزماید، و "نه فقط برآوردی از عملکرد مدل بلکه معیاری از دقت این برآورد – انحراف معیار آن" به دست می‌دهد (Géron, 2022, Chapter 2, "Better Evaluation Using Cross-Validation"). در مثال قیمت‌های ژرون: یک درخت تصمیم با خطای آموزش 0.0 در اعتبارسنجی متقابل 10 لایه‌ای RMSE برابر 66,868 (±2,061) می‌گیرد – تقریباً مانند رگرسیون خطی (69,858 ±4,182)؛ جنگل تصادفی 47,019 (±1,034)، اما روی خود مجموعه آموزش حدود 17,474 – هنوز بیش‌برازشی چشمگیر. دو عدد برای هر مدل، و همان لایه‌ها برای همه مدل‌ها.

چند لایه. "در مجموع، اعتبارسنجی متقابل با پنج یا ده لایه به‌عنوان مصالحه‌ای خوب توصیه می‌شود": لایه‌های کمتر روی نمونه‌ای بیش از حد کوچک آموزش می‌دهند و برآورد خطا را به سمت بالا سوگیر می‌کنند؛ حذف تک‌به‌تک (leave-one-out، k = N) نااریب اما پرنوسان است (Hastie et al., 2009, p. 243). و قاعده یک خطای استاندارد: از میان مدل‌های آزموده‌شده، صرفه‌جوترین مدلی انتخاب می‌شود که خطایش بیش از یک خطای استاندارد بالاتر از بهترین مدل نباشد – زیرا خود منحنی اعتبارسنجی متقابل با خطا برآورد می‌شود (ص. 244). هزینه، نزد بیشاپ: "یکی از کاستی‌های اصلی اعتبارسنجی متقابل این است که تعداد اجراهای آموزش S برابر می‌شود" (Bishop, 2006, p. 33) – در ماشین‌حساب‌های سایت این هیچ است، در یک شبکه عصبی روزها. و اصلاً چرا اعتبارسنجی متقابل و نه یک مجموعه اعتبارسنجی واحد: در روش نگه‌داشتن (hold-out) آنچه به آزمون داده می‌شود از یادگیری کم می‌شود، و برعکس – "وقتی تعداد مشاهدات کم است، روش H روش دقیقی نیست" برای برآورد خطا، در حالی که اعتبارسنجی متقابل "تضمین می‌کند که همه اعضا برای یادگیری و آزمون به کار روند" (Ishii et al., 2026, p. 89). جنگل‌های تصادفی اعتبارسنجی رایگان دارند: هر درخت روی نمونه‌ای با جایگذاری آموزش می‌بیند که حدود 37% مشاهدات را بیرون می‌گذارد، و برآورد خطا روی مشاهدات "بیرون از کیسه" (out-of-bag) "تقریباً یکسان" با اعتبارسنجی متقابل N لایه‌ای است (Hastie et al., 2009, p. 593).

تنظیم نیز – درون اعتبارسنجی متقابل. جست‌وجوی شبکه‌ای (همه ترکیب‌های ابرپارامترها) یا جست‌وجوی تصادفی (تعداد ثابتی از ترکیب‌ها؛ وقتی فضای ترکیب‌ها بزرگ است ارجح است – پیوست الف: تصادفی را ترجیح دهید مگر اینکه مقادیر اندکی وجود داشته باشد) برای هر ترکیب اعتبارسنجی متقابل اجرا می‌کنند، و انتخاب بر اساس میانگین انجام می‌شود. قاعده: هر تصمیمی که بر عملکرد مبتنی است – مدل، ابرپارامتر، آستانه، غربال ویژگی‌ها – درون لایه‌ها گرفته می‌شود، نه روی آن‌ها (بخش 5).

4. سوگیری، واریانس – و حد خطا

خطای تعمیم یک مدل مجموع سه جزء است: سوگیری – فرض‌های نادرست (خط راست برای داده‌های درجه دوم) – که به کم‌برازش می‌انجامد؛ واریانس – حساسیت بیش از حد به تغییرات کوچک در داده‌های آموزش، که نصیب مدل‌هایی با درجه آزادی زیاد است – که به بیش‌برازش می‌انجامد؛ و خطای کاهش‌ناپذیر – نوفه در خود داده‌ها، که تنها پاک‌سازی داده‌ها آن را کم می‌کند. افزایش پیچیدگی مدل واریانس را بالا و سوگیری را پایین می‌برد، و برعکس – "و از همین رو آن را مصالحه می‌نامند" (Géron, 2022, Chapter 4, "The Bias/Variance Trade-Off"). تجزیه رسمی – خطای پیش‌بینی مورد انتظار در یک نقطه = واریانس نوفه + مجذور سوگیری + واریانس برآوردگر – معادله 7.9 نزد هستی و همکاران است (ص. 223)، و در بازشناسی الگو "دوراهی سوگیری و واریانس": MSE = Bias² + Var، و بنابراین وقتی درجه تابع تمایز را بالا می‌بریم و روی مشاهدات تازه می‌آزماییم، خطا "تا درجه‌ای معین پایین می‌آید، و سپس" بالا می‌رود (Ishii et al., 2026, pp. 111-112). تشخیص: خوب روی آموزش و بد در اعتبارسنجی متقابل – بیش‌برازش؛ بد در هر دو – کم‌برازش. منحنی‌های یادگیری – خطای آموزش و خطای اعتبارسنجی به‌عنوان تابعی از حجم نمونه – این را به چشم نشان می‌دهند، و بیشاپ می‌افزاید چه چیزی کمک می‌کند: "برای پیچیدگی معینی از مدل، مشکل بیش‌برازش هرچه مجموعه‌داده بزرگ‌تر شود کم‌اهمیت‌تر می‌شود" (Bishop, 2006, p. 9). درباره نسبت میان تعداد مشاهدات و تعداد پارامترها و ویژگی‌ها – قاعده سرانگشتی بیشاپ و پدیده هیوز – به صفحه یادگیری ماشین، بخش 2 مراجعه کنید.

و آن عدد اصلاً چه می‌تواند باشد. حدی هست که هیچ مدلی از آن پایین‌تر نمی‌رود: خطای بیز – "حدی که احتمال خطا نمی‌تواند از آن کوچک‌تر باشد، به بیان دیگر 'هم‌پوشانی توزیع‌ها'، که همان 'خطای اجتناب‌ناپذیر'ی است که این سامانه استخراج ویژگی وارد می‌کند" (Ishii et al., 2026, p. 101). وقتی ویژگی‌ها کلاس‌ها را از هم جدا نمی‌کنند، هیچ الگوریتمی جدا نخواهد کرد. این خوانش درست چالش خانواده‌های شکننده است: 160 تیم، 4,242 خانواده و 12,942 متغیر برای هر کدام – و R² روی داده‌های نگه‌داشته حدود 0.2 برای تنگنای مادی و معدل نمرات و حدود 0.05 برای چهار پیامد دیگر، "تنها اندکی بهتر" از یک مدل مبنا که رگرسیونی روی چهار متغیر برگزیده یک متخصص بود؛ خطای پیش‌بینی پیوندی قوی با خانواده‌ای داشت که پیش‌بینی می‌شد و پیوندی ضعیف با روش (Salganik et al., 2020، چکیده و بخش Results). "از آنجا که صدها پژوهشگر این کار را امتحان کردند و هیچ‌کس نتوانست به‌دقت پیش‌بینی کند"، صحت پایین "را نمی‌توان به‌آسانی به محدودیت‌های یک پژوهشگر یا رویکرد خاص نسبت داد" (Section Discussion) – این حد است، نه شکست. کاپور و نارایانان "درک نکردن حدود پیش‌بینی" را نخستین تشخیص خود برای شکست‌های تکرارپذیری برمی‌شمارند: موفقیت‌ها در بازشناسی تصویر "این تصور را ایجاد می‌کنند" که مدل‌ها در هر کاری از انسان پیشی می‌گیرند، و پژوهشگران را درباره آنچه می‌توان در پیش‌بینی پیامدهای اجتماعی انتظار داشت گمراه می‌کنند؛ توصیه – شناسایی کران‌های بالای صحت، و پس از رسیدن به آن‌ها، دست کشیدن از تلاش برای فراتر رفتن از آن‌ها و تردید در نتایجی که ادعا می‌کنند فراتر رفته‌اند (Kapoor & Narayanan, 2023, Section Discussion, D1-R1). برای پژوهشگر: مدلی که AUC = .95 را برای ترک تحصیل از روی متغیرهای زمینه‌ای گزارش می‌کند، دستاوردی بزرگ نیست – نشانه‌ای برای بخش 5 است.

5. نشت داده‌ها: عدد چشمگیری که دروغ است

کاپور و نارایانان ادبیات علم مبتنی بر یادگیری ماشین را مرور کردند و در 294 مقاله در 17 رشته نشت (leakage) یافتند، "در برخی موارد با نتیجه‌گیری‌هایی به‌شدت خوش‌بینانه" (Kapoor & Narayanan, 2023, Section Summary). رده‌بندی آن‌ها چک‌لیست این صفحه است: [L1] جداسازی تمیزی میان آموزش و آزمون وجود ندارد – اصلاً مجموعه آزمونی نیست (L1.1)؛ پیش‌پردازش روی کل داده‌ها – جانهی گمشده‌ها، استانداردسازی یا بیش‌نمونه‌گیری پیش از تقسیم (L1.2؛ این هشدار ژرون است: "هرگز از fit() یا fit_transform() برای چیزی جز مجموعه آموزش استفاده نکنید"، فصل 2، "Feature Scaling and Transformation")؛ انتخاب ویژگی روی کل داده‌ها (L1.3)؛ موارد تکراری (L1.4). [L2] ویژگی‌های نامشروع – که در واقع خود هدف‌اند: مثال آن‌ها پژوهشی است که فشار خون بالا را از مصرف داروهای فشار خون بالا پیش‌بینی کرد. [L3] مجموعه آزمونی که از توزیعی نیست که ادعا درباره آن است – نشت زمانی (آزمون روی داده‌هایی قدیمی‌تر از داده‌های آموزش، L3.1)، و استقلالی که شکسته شده است (L3.2, Section 6). نمونه نمایشی آن‌ها علوم سیاسی است: در پیش‌بینی جنگ‌های داخلی، که در آن مدل‌های پیچیده "با فاصله برنده به شمار می‌رفتند" در برابر رگرسیون لجستیک، "وقتی خطاها اصلاح شدند، مدل‌های پیچیده یادگیری ماشین به‌طور اساسی بهتر از مدل‌های LR چندده‌ساله عمل نمی‌کنند" (Section Summary). پیشنهاد آن‌ها – "برگه اطلاعات مدل" که پژوهشگر در آن به هر نوع نشت پاسخ می‌دهد – و برای خوانندگان: "با نتایج علم مبتنی بر یادگیری ماشین به‌عنوان نتایجی موقت برخورد کنید" (R2).

آزمایشی که این را چهارده سال پیش‌تر نشان داد. هستی و همکاران 50 آزمودنی در دو کلاس برابر و 5,000 پیش‌بین تصادفی شبیه‌سازی می‌کنند که اصلاً با کلاس ارتباطی ندارند – خطای طبقه‌بندی واقعی 50% است. "راه نادرست": غربال کردن 100 پیش‌بینی که بیشترین همبستگی را با کلاس دارند روی کل نمونه، و سپس برآورد خطا با اعتبارسنجی متقابل – میانگین 3% در 50 شبیه‌سازی، "بسیار کمتر از نرخ خطای واقعی"، زیرا پیش‌بین‌ها آزمودنی‌هایی را که بیرون گذاشته شده بودند "از قبل دیده بودند"؛ "راه درست": نخست تقسیم به لایه‌ها، و انجام غربال، ساخت طبقه‌بند و پیش‌بینی درون هر لایه (Hastie et al., 2009, pp. 245-246). این دقیقاً L1.3 است – و دلیل آن است که غربال گویه‌ها بر اساس همبستگی با پیامد، عادتی رایج در ساخت مقیاس‌ها، پیش از تقسیم ممنوع است. راه‌حل فنی یک خط لوله (Pipeline در scikit-learn) است: همه مراحل آماده‌سازی و مدل به‌عنوان یک واحد، که روی لایه آموزش برازش داده می‌شود و روی لایه آزمون اعمال می‌شود – و بنابراین نمی‌تواند نشت کند.

6. داده‌هایی که مستقل نیستند: خانواده‌ها، کلاس‌های درس، شبکه‌ها

همه آنچه در بالا آمد فرض می‌کند که مشاهدات مستقل و هم‌توزیع‌اند (i.i.d.) – و در پژوهش اجتماعی تقریباً هیچ‌گاه چنین نیستند: دانش‌آموزان یک کلاس، اعضای یک خانواده، دوستان در یک شبکه، اندازه‌گیری‌های مکرر یک فرد. این مسئله در بخش L3.2 کاپور و نارایانان به‌عنوان مانعی برای اعتبارسنجی توصیف شده است: "عدم استقلال میان نمونه‌های آموزش و آزمون نشت به شمار می‌رود، مگر اینکه ادعای علمی درباره توزیعی با همان ساختار وابستگی باشد. در مورد افراطی (اما متأسفانه رایج)، نمونه‌های آموزش و آزمون از همان افراد یا واحدها می‌آیند" (Kapoor & Narayanan, 2023, L3.2). ادبیات یادگیری رابطه‌ای همین را به‌عنوان ویژگی داده‌ها توصیف می‌کند، نه خطای پژوهشگر: "اکثریت قاطع کار در روش‌های طبقه‌بندی آماری بر داده‌های 'تخت' متمرکز بوده است – داده‌هایی متشکل از موجودیت‌هایی با ساختار یکسان، که معمولاً i.i.d. فرض می‌شوند. اما بسیاری از مجموعه‌داده‌های دنیای واقعی ذاتاً رابطه‌ای‌اند: صفحات وب پیوندخورده، ارجاع‌های متقابل در پتنت‌ها و مقالات علمی، شبکه‌های اجتماعی، پرونده‌های پزشکی" (Taskar, Abbeel, Wong & Koller, 2007, p. 175)؛ "برخلاف سناریوهای سنتی یادگیری ماشین، که در آن‌ها سامانه یادگیری دنباله‌ای از مشاهدات i.i.d. را به‌عنوان ورودی می‌گیرد، ورودی یک الگوریتم یادگیری رابطه‌ای معمولاً یک نمونه واحد با پیوندهای غنی است" (Getoor & Taskar, 2007, p. 4). سازوکار، خودهمبستگی (autocorrelation) است: "وابستگی آماری میان مقادیر یک متغیر روی موجودیت‌های مرتبط"، که "ویژگی تقریباً همگانی مجموعه‌داده‌های رابطه‌ای است" – نویل و جنسن از جمله برمی‌شمارند: طبقه‌بندی صنعت شرکت‌هایی که اعضای هیئت‌مدیره مشترک دارند، وضعیت تقلب مشترکان تلفن همراه که با شماره‌های مشترک تماس می‌گیرند، و سرایت سل میان افرادی که در تماس نزدیک‌اند (Neville & Jensen, 2007, p. 240). این "فرصتی یگانه برای بهبود عملکرد مدل است، زیرا استنباط درباره یک شیء می‌تواند به استنباط درباره اشیای مرتبط کمک کند" (همان‌جا) – و دقیقاً به همین دلیل، مدلی معمولی که دانش‌آموز را در آموزش و هم‌کلاسی‌اش را در آزمون می‌گیرد، از روی خودهمبستگی "حدس می‌زند"، نه از روی ویژگی‌ها.

چه باید کرد. تقسیم – به آموزش و آزمون، و به لایه‌های اعتبارسنجی متقابل – بر اساس واحدی انجام می‌شود که ادعا درباره آن است: بر اساس آزمودنی در اندازه‌گیری‌های مکرر، بر اساس کلاس یا مدرسه در داده‌های آشیانه‌ای، بر اساس خانواده، بر اساس جامعه محلی (در ابزارها: GroupKFold و مشابه‌های آن در scikit-learn). معیارها بر اساس واحد: خطا برای دانش‌آموز، خطا برای کلاس نیست. پیش‌بینی رو به جلو در زمان – آزمون دیرتر از آموزش (L3.1)، نه آمیخته با آن. و کسی که می‌خواهد از وابستگی بهره بگیرد – دانش‌آموزی را از روی دوستانش پیش‌بینی کند – به مدل‌های رابطه‌ای روی می‌آورد (استنباط جمعی، مدل‌های سلسله‌مراتبی؛ نقشه ابزارها، بخش 4)، و گزارش می‌کند که ادعا درباره شبکه‌ای با همان ساختار است، نه درباره یک آزمودنی منفرد. آزمون سایت: بپرسید "اگر این آزمودنی را از مجموعه آزمون بردارم، چه کسی از مجموعه آموزش بیش از حد به او شبیه است؟" – و اگر پاسخی هست، تقسیم نادرست است.

7. چه چیزی گزارش می‌شود

بند کامل، به ترتیب: معیار و چرایی آن (هزینه خطا؛ آستانه برگزیده)؛ تقسیم – نسبت آزمون، لایه‌بندی، بر اساس کدام واحد، بذر؛ اعتبارسنجی متقابل – چند لایه، میانگین و انحراف معیار برای هر مدل آزموده‌شده، از جمله مدل‌هایی که شکست خوردند؛ خط مبنا – طبقه‌بند ساختگی و رگرسیون روی متغیرهای شناخته‌شده؛ عدد مهم تفاوت با آن است، نه خود معیار؛ مجموعه آزمون – یک بار، معیار و فاصله اطمینان، ماتریس درهم‌ریختگی، و شکاف با اعتبارسنجی متقابل؛ زیرگروه‌ها – ژرون می‌خواهد اطمینان حاصل شود که مدل نه فقط به‌طور میانگین بلکه "روی همه دسته‌های مناطق، روستایی یا شهری، ثروتمند یا فقیر، شمالی یا جنوبی، اقلیت یا غیر آن" کار می‌کند، و اگر روی یک دسته کامل شکست بخورد، برای آن به کار گرفته نشود "زیرا ممکن است بیش از آنکه سودمند باشد زیان برساند" (Géron, 2022, Chapter 2, "Analyzing the Best Models and Their Errors")؛ نشت – پاسخی صریح به هر نوع در رده‌بندی، به سبک "برگه اطلاعات مدل"؛ و آنچه مدل نمی‌گوید – پیش‌بینی، علت نیست. همه چیز از دفترچه پیوست قابل بازتولید است – همان قاعده همه ماشین‌حساب‌های سایت: نتیجه محاسباتیِ مستندنشده یافته نیست.

و در گزارش چگونه به نظر می‌رسد. فصل 11 ترونگ تنها فصلی در این پنج کتاب است که به نگارش می‌پردازد. ساختار او برای مقاله دانشگاهی همان ساختار آشناست – عنوان، چکیده، مقدمه، مرور ادبیات، روش، نتایج، بحث و نتیجه‌گیری – اما در روش چهار زیربخش هست که در رگرسیون نیست: منبع داده‌ها و توصیف متغیرها (از جمله نقش هر متغیر – هدف یا ورودی – و مقیاس آن)؛ فرایند داده‌کاوی؛ "الگوریتم‌ها و پیکربندی‌ها" – جدولی که در آن برای هر مدل ابرپارامترهایش آمده است، همان‌گونه که وارد شده‌اند (حداکثر عمق درخت، قاعده تقسیم، قاعده توقف، نسبت "مجموعه جلوگیری از بیش‌برازش")، "آسان‌ترین راه برای این کار خلاصه کردن پیکربندی‌ها در یک جدول است"؛ و معیارهای ارزیابی – کدام‌ها، و چرا (Truong, 2026, pp. 396, 414-415). در نتایج: مقایسه همه مدل‌ها روی یک مجموعه، شناسایی مدل قهرمان (champion model) – "که فقط قهرمان در میان مدل‌هایی است که روی داده‌های موجود آموزش دادیم و آزمودیم"، و می‌تواند نسبتاً بهترین باشد و نه بهترین (ص. 189) – و سپس، فقط برای قهرمان، معیارها روی همه مجموعه‌ها در کنار هم، و مقایسه اهمیت متغیرها. یک تفاوت با این صفحه را خوب است بدانید: ترونگ می‌نویسد که "نیازی نیست نتایج نمونه آموزش جداگانه گزارش شود" (ص. 188)، در حالی که اینجا شکاف میان آموزش و اعتبارسنجی متقابل گزارش می‌شود – زیرا شاهد بیش‌برازش است، و زیرا خود ترونگ پایایی را با آن می‌سنجد (بخش 2). و آنچه نباید عیناً از او گرفت: قواعد سرانگشتی – "نرخ طبقه‌بندی نادرست 5% یا کمتر عالی به شمار می‌رود، و میان 5% و 10% – خوب"، و برای صحت، حساسیت، ویژگی و F1 "95% و بالاتر عالی، 90-95% خوب" – نزد او صریحاً به‌عنوان نظر شخصی آمده‌اند، پس از این جمله که "هیچ مقدار آستانه استانداردی برای این معیارها وجود ندارد؛ تصمیم به صنعت و تحمل خطا بستگی دارد" (ص. 199-200). در پیش‌بینی پیامدهای انسانی از روی متغیرهای زمینه‌ای (بخش 4) چنین مقادیری وجود ندارند، و پژوهشگری که به آن‌ها می‌رسد – به بخش 5 بازمی‌گردد.

8. و این کار در R چگونه انجام می‌شود

دو بخش. الف. معیارهای بخش 1 روی پیش‌بینی‌های خارج از نمونه: رگرسیون لجستیک با اعتبارسنجی متقابل ده‌لایه‌ای روی فایل داده‌های نمونه صفحه یادگیری ماشین (320 دانش‌آموز، ترک تحصیل 11.6%)، و سپس ماتریس درهم‌ریختگی با همه معیارها (confusionMatrix از caret، mode = "everything" – حساسیت، ویژگی، precision، F1، و "نرخ بی‌اطلاعی"، که همان صحت طبقه‌بند ساختگی است)، منحنی ROC با فاصله اطمینان برای AUC، آستانه "بهینه" بر اساس یودن، و منحنی precision-recall از همان پیش‌بینی‌ها (pROC). فهرست معیارها – صحت، حساسیت، ویژگی، precision، نرخ‌های مثبت کاذب و منفی کاذب – همان فهرست گوتیرز است (2015, Chapter 7, "Measuring Classification Performance")، که هشدار هم می‌دهد: "اگر عملکرد الگوریتم بهتر از آن است که واقعی باشد، نشت داده‌ها ممکن است علت باشد" (Chapter 7, "Data Leakage"). ب. بازتولید آزمایش بخش 5 – "راه نادرست و درست اعتبارسنجی متقابل" هستی و همکاران (2009، ص. 245-246) – در صد سطر: 50 آزمودنی، 5,000 پیش‌بین تصادفی، غربال 100 پیش‌بینی با بیشترین همبستگی، یک نزدیک‌ترین همسایه، پنج لایه. مسیر C:\Rdata\ – قرارداد سایت.

# model_evaluation.R - performance measures and validation in R: confusion matrix, ROC, cross-validation - and leakage in numbers
library(readxl); library(caret); library(pROC); library(class)

# --- A. The measures - on out-of-sample predictions, not on the training set ---
d <- read_excel("C:/Rdata/DATA_ml_example_eng.xlsx")
d$dropout <- factor(d$dropout, levels = c(0, 1), labels = c("no", "yes"))
d$gender  <- factor(d$gender, levels = c(1, 2), labels = c("male", "female"))
d$id <- NULL
ctrl <- trainControl(method = "cv", number = 10, classProbs = TRUE,
                     summaryFunction = twoClassSummary, savePredictions = "final")
set.seed(1)
m <- train(dropout ~ . - school_id, data = d, method = "glm", family = binomial,
           metric = "ROC", trControl = ctrl, preProcess = c("medianImpute", "center", "scale"),
           na.action = na.pass)
cv <- m$pred                                   # one prediction per observation - from the fold where it was held out
confusionMatrix(cv$pred, cv$obs, positive = "yes", mode = "everything")   # at threshold 0.5
r <- roc(cv$obs, cv$yes, levels = c("no", "yes"), direction = "<")
auc(r); ci.auc(r)                              # AUC and confidence interval
coords(r, "best", best.method = "youden", ret = c("threshold", "sensitivity", "specificity", "precision"))
# precision-recall curve - for a rare class - from the same predictions:
pr <- coords(r, x = seq(0.05, 0.6, by = 0.05), ret = c("threshold", "recall", "precision"))
pr

# --- B. The wrong and right way to do cross-validation (Hastie et al., 2009, pp. 245-246) ---
# 50 subjects in two equal classes, 5,000 random predictors - true error 50%.
set.seed(20260920)
N <- 50; P <- 5000; K <- 5; n_keep <- 100
y <- factor(rep(c("A", "B"), each = N / 2))
X <- matrix(rnorm(N * P), N, P)
folds <- createFolds(y, k = K)
screen <- function(X, y, n) {                   # the 100 predictors most correlated with the class
  r <- abs(cor(X, as.numeric(y)))
  order(-r)[1:n]
}
# wrong way: screen on the whole sample, then cross-validate
keep_all <- screen(X, y, n_keep)
err_wrong <- sapply(folds, function(te) {
  tr <- setdiff(seq_len(N), te)
  mean(knn(X[tr, keep_all], X[te, keep_all], y[tr], k = 1) != y[te])
})
# right way: screening inside each fold, on that fold's training data only
err_right <- sapply(folds, function(te) {
  tr <- setdiff(seq_len(N), te)
  keep <- screen(X[tr, ], y[tr], n_keep)
  mean(knn(X[tr, keep], X[te, keep], y[tr], k = 1) != y[te])
})
c(wrong = mean(err_wrong), right = mean(err_right))   # ~0.03 vs ~0.50

چه به دست آمد (R 4.3.3، caret 6.0-94، pROC 1.18.5، class 7.3-22؛ خروجی کامل – qa/ml/ev_out.txt). الف. در آستانه 0.5: صحت کلی .884 – دقیقاً برابر نرخ بی‌اطلاعی (.884)، یعنی مدل در این آستانه بهتر از طبقه‌بند ساختگی نیست؛ حساسیت .03، precision .50، F1 .05. همان مدل، همان پیش‌بینی‌ها: AUC = .66، فاصله اطمینان [.57, .76]؛ آستانه بر اساس یودن .13 – حساسیت .57، ویژگی .72، precision .21؛ و در طول آستانه‌ها، از .05 تا .50، حساسیت از .89 به .03 پایین می‌آید و precision از .14 به .50 بالا می‌رود – این همان مصالحه بخش 1 با عدد است، و آنچه یک معیار واحد پنهان می‌کند. ب. راه نادرست: خطای 2%؛ راه درست: 60% – روی پیش‌بین‌هایی کاملاً تصادفی، که خطای واقعی روی آن‌ها 50% است (و 60% در 50 آزمودنی همان 50% در نوفه پنج لایه است). هستی و همکاران 3% را در 50 شبیه‌سازی گزارش کردند؛ اینجا یک شبیه‌سازی، بذر 20260920. کسی که گویه‌ها را بر اساس همبستگی با پیامد پیش از تقسیم غربال می‌کند، عدد نخست را به دست می‌آورد.

اشتباهات رایج

گزارش صحت کلی برای کلاس کمیاب. صحت 94% در پیش‌بینی ترک تحصیل 6% از دانش‌آموزان همان طبقه‌بند ساختگی است. ماتریس درهم‌ریختگی، precision و حساسیت گزارش می‌شوند – در برابر طبقه‌بند ساختگی (بخش 1).

استانداردسازی، جانهی یا انتخاب ویژگی‌ها روی کل داده‌ها – و سپس تقسیم. رایج‌ترین نشت (L1.2-L1.3). عادت برآمده از SPSS – "نخست فایل را پاک‌سازی می‌کنیم" – خود مشکل است. خط لوله فقط روی آموزش برازش داده می‌شود (بخش 5).

تقسیم سطرها وقتی واحد، آزمودنی، کلاس یا خانواده است. سه اندازه‌گیری از یک فرد در آموزش و در آزمون – و مدل به جای پیش‌بینی، او را "بازمی‌شناسد" (بخش 6). تقسیم بر اساس واحدی که ادعا درباره آن است.

تنظیم روی مجموعه آزمون. اجرا کردن، دیدن اینکه نتیجه خوب نیست، تغییر دادن، دوباره اجرا کردن. پس از بار دوم، مجموعه آزمون یک مجموعه اعتبارسنجی است، و عددی که گزارش می‌شود خوش‌بینانه است (بخش 2).

یک عدد بدون پراکندگی. AUC = .78 از یک لایه می‌تواند در لایه‌ای دیگر .71 باشد. میانگین و انحراف معیار روی لایه‌ها، فاصله اطمینان روی آزمون (بخش 3).

تحت تأثیر مدل قرار گرفتن بدون خط مبنا. AUC = .78 عالی به نظر می‌رسد تا وقتی که ببینیم رگرسیون لجستیک روی چهار متغیر .76 می‌دهد. عدد، همان تفاوت است – و سالگانیک و همکاران (2020) نشان دادند که چقدر می‌تواند کوچک باشد.

برخورد با R² آزمون مانند R² رگرسیون. روی داده‌های تازه می‌تواند صفر و حتی منفی باشد؛ 0.2 در چالش خانواده‌های شکننده رکورد 160 تیم بود.

متوازن کردن کلاس‌ها با بیش‌نمونه‌گیری – و گزارش احتمال‌ها. پس از SMOTE یا تکثیر، احتمال پیش‌بینی‌شده برای کلاس کمیاب بیش‌برآورد می‌شود، و AUC بالا نمی‌رود (van den Goorbergh et al., 2022). آستانه جابه‌جا می‌شود، یا ماتریس تصمیم وارد می‌شود (بخش 1)؛ و اگر توازن‌بخشی می‌شود – فقط درون لایه آموزش.

خواندن معیاری بیش از حد بالا به‌عنوان موفقیت. وقتی نتیجه بسیار فراتر از ادبیات و خط مبنا می‌رود، نخستین ظن نشت است (بخش 5) – ویژگی‌ای که همان هدف در لباس مبدل است، یا آزمودنی‌ای که در هر دو سو حضور دارد. "با نتایج… به‌عنوان نتایجی موقت برخورد کنید" (Kapoor & Narayanan, 2023, R2).

چک‌لیست – پیش از گزارش نتیجه یک پیش‌بینی

سؤالچرا این مهم است
آیا معیار بر اساس هزینه خطا انتخاب شده – و آستانه گزارش شده است؟صحت کلی در کلاس کمیاب گمراه‌کننده است؛ precision و حساسیت به آستانه وابسته‌اند (بخش 1).
اگر کلاس کمیاب است – آیا با آستانه یا ماتریس تصمیم درمان شده است، نه با بیش‌نمونه‌گیری پیش از تقسیم؟توازن مصنوعی احتمال‌ها را خراب می‌کند و تمایز را بهبود نمی‌دهد؛ پیش از تقسیم، نشت هم هست (بخش‌های 1، 5).
آیا مجموعه آزمون پیش از کاوش، به‌صورت لایه‌بندی‌شده، با بذر ثابت جدا شده – و فقط یک بار به آن دست زده شده است؟سوگیری سرک‌کشیدن در داده‌ها و بیش‌برازش به مجموعه آزمون هر عددی را خوش‌بینانه می‌کنند (بخش 2).
آیا برای هر تصمیم – مدل، ابرپارامتر، آستانه، ویژگی‌ها – مجموعه اعتبارسنجی یا اعتبارسنجی متقابل وجود دارد؟تصمیمی که روی آزمون گرفته شد، آن را به اعتبارسنجی تبدیل کرد (بخش‌های 2-3).
آیا برای معیار انحراف معیار یا فاصله اطمینان وجود دارد؟یک عدد بدون پراکندگی یافته نیست (بخش 3).
خط مرجعی هست – طبقه‌بند ساختگی و رگرسیون روی متغیرهای شناخته‌شده؟عددی که گزارش می‌شود، تفاوت با خط مبناست (بخش 4).
آیا نتیجه در مقایسه با ادبیات و حدود پیش‌بینی معقول است؟معیاری بیش از حد بالا پیش از آنکه نشانه دستاورد باشد، نشانه نشت است (بخش‌های 4-5).
آیا همه آماده‌سازی – جانهی، استانداردسازی، انتخاب ویژگی‌ها – در خط لوله‌ای است که فقط روی آموزش برازش داده می‌شود؟نشت L1. رایج‌ترین اشتباه، و در خروجی دیده نمی‌شود (بخش 5).
آیا ویژگی‌ای وجود ندارد که همان هدف در لباس مبدل باشد؟نشت L2. به دانش محتوایی نیاز دارد، نه به ابزار (بخش 5).
آیا تقسیم بر اساس واحد درست است – آزمودنی، کلاس، خانواده؛ و زمان، وقتی رو به جلو پیش‌بینی می‌شود؟نشت L3. وگرنه مدل به جای پیش‌بینی، بازشناسی می‌کند (بخش 6).
آیا مدل روی زیرگروه‌ها آزموده شده است؟مدلی که روی یک گروه کامل شکست می‌خورد، برای آن گروه قابل به‌کارگیری نیست (بخش 7).
بذر، نسخه‌ها، ابرپارامترها و زنجیره مستند شده‌اند – و دفترچه پیوست شده است؟بازتولیدپذیری. نتیجه محاسباتی مستندنشده یافته نیست.

منابع

Bishop, C. M. (2006). Pattern recognition and machine learning. Springer.

Géron, A. (2022). Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow: Concepts, tools, and techniques to build intelligent systems (3rd ed.). O'Reilly Media.

Getoor, L., & Taskar, B. (2007). Introduction. In L. Getoor & B. Taskar (Eds.), Introduction to statistical relational learning (pp. 1-12). MIT Press. https://doi.org/10.7551/mitpress/7432.003.0003

Gutierrez, D. D. (2015). Machine learning and data science: An introduction to statistical learning methods with R. Technics Publications.

Hastie, T., Tibshirani, R., & Friedman, J. (2009). The elements of statistical learning: Data mining, inference, and prediction (2nd ed.). Springer. https://doi.org/10.1007/978-0-387-84858-7

IBM Corporation. (2016). IBM SPSS Modeler 18.0 source, process, and output nodes. IBM. https://public.dhe.ibm.com/software/analytics/spss/documentation/modeler/18.0/en/ModelerSPOnodes.pdf

Ishii, K., Ueda, N., Maeda, E., & Murase, H. (2026). Pattern recognition and machine learning for self-study I: Supervised learning. Springer. https://doi.org/10.1007/978-981-95-1478-6

Kapoor, S., & Narayanan, A. (2023). Leakage and the reproducibility crisis in machine-learning-based science. Patterns, 4(9), Article 100804. https://doi.org/10.1016/j.patter.2023.100804

Kuhn, M. (2008). Building predictive models in R using the caret package. Journal of Statistical Software, 28(5), 1-26. https://doi.org/10.18637/jss.v028.i05

Neville, J., & Jensen, D. (2007). Relational dependency networks. In L. Getoor & B. Taskar (Eds.), Introduction to statistical relational learning (pp. 239-268). MIT Press. https://doi.org/10.7551/mitpress/7432.003.0010

Salganik, M. J., Lundberg, I., Kindel, A. T., Ahearn, C. E., Al-Ghoneim, K., Almaatouq, A., Altschul, D. M., Brand, J. E., Carnegie, N. B., Compton, R. J., Datta, D., Davidson, T., Filippova, A., Gilroy, C., Goode, B. J., Jahani, E., Kashyap, R., Kirchner, A., McKay, S., . . . McLanahan, S. (2020). Measuring the predictability of life outcomes with a scientific mass collaboration. Proceedings of the National Academy of Sciences, 117(15), 8398-8403. https://doi.org/10.1073/pnas.1915006117

Shmueli, G. (2010). To explain or to predict? Statistical Science, 25(3), 289-310. https://doi.org/10.1214/10-STS330

Taskar, B., Abbeel, P., Wong, M.-F., & Koller, D. (2007). Relational Markov networks. In L. Getoor & B. Taskar (Eds.), Introduction to statistical relational learning (pp. 175-200). MIT Press. https://doi.org/10.7551/mitpress/7432.003.0008

Truong, D. (2026). Demystifying AI: Data science and machine learning using IBM SPSS Modeler. Chapman and Hall/CRC. https://doi.org/10.1201/9781003468196

van den Goorbergh, R., van Smeden, M., Timmerman, D., & Van Calster, B. (2022). The harm of class imbalance corrections for risk prediction models: Illustration and simulation using logistic regression. Journal of the American Medical Informatics Association, 29(9), 1525-1534. https://doi.org/10.1093/jamia/ocac093

Wendler, T., & Gröttrup, S. (2021). Data mining with SPSS Modeler: Theory, exercises and solutions (2nd ed.). Springer. https://doi.org/10.1007/978-3-030-54338-9