RANSAC از نمونهٔ کوچک، مدلِ نامزد میسازد و تعدادِ نقاطِ سازگار با آن را میسنجد؛ سپس میتواند روی مجموعهٔ منتخب دوباره برازش کند. این تمرین برای شفافیت، تمام جفتهای شش نقطه را قطعی میشمارد. بنابراین اجرای تصادفیِ یک کتابخانه یا احتمالِ موفقیتِ تعداد معینی تلاش را گزارش نمیکند.
شش نقطه و یک قراردادِ خط
نقطههای ساختگی(۰،۰)،(۱،۱)،(۲،۲)،(۳،۳)،(۴،۴) و(۲،۲۰) هستند. مدل y=a×x+b است و فاصلهٔ پذیرش، قدرمطلقِ باقیماندهٔ عمودیِ y−(a×x+b) است. این کمیت فاصلهٔ عمود بر خط نیست؛ عوضکردنِ معیار، مسئلهٔ دیگری میسازد.
آستانه۱/۴است و برابریِ دقیقِ فاصله با آستانه پذیرفته میشود. دو نقطه با x متفاوت یک خط میسازند؛ جفتِ(۲،۲) و(۲،۲۰) عمودی است و برای مدلِ حاضر نامعتبر. از۱۵جفت،۱۴نامزدِ معتبر و یک ردِ صریح داریم؛ تقسیم بر صفر را پنهان نکردهایم.
اول مدلِ نامزد، سپس اجماع
برای هر خط، همهٔ شش باقیمانده را حساب میکنیم و شناسههای داخلِ آستانه را مینویسیم. بیشترینِ تعدادِ اعضا برنده است؛ در تساویِ تعداد، ابتدا مجموعِ مربعِ باقیماندهٔ اعضای اجماع کوچکتر و سپس جفتِ سازندهٔ کوچکتر انتخاب میشود. این قاعده را رفتارِ یکسانِ همهٔ پیادهسازیهای RANSAC معرفی نمیکنیم.
خطِ y=x پنج عضو میگیرد و نقطهٔ(۲،۲۰) بیرونِ مجموعه میماند. oracleِ جدا برای هر نامزد از ضربِ متقاطعِ دو نقطه، باقیماندهٔ متناظر را کنترل میکند؛ تمام نامزدها سنجیده میشوند، نه فقط مدلی که میدانیم برنده است.
بازبرازش با اعضای منتخب
پس از انتخابِ اجماع، کمترین مربعات را روی همان پنج نقطه اجرا میکنیم. فرمولِ مبتنی بر میانگین و مجموعِ مرکزی با فرمولِ مستقلِ مجموعهای خام برابر میشود؛ جوابِ هر دو y=x است. انتخابِ اجماع و برازشِ دوباره، دو مرحلهٔ جدا با ورودیهای مشخصاند.
اگر از ابتدا روی تمام شش نقطه کمترین مربعات بزنیم، خطِ y=x+۳و مجموع مربعِ باقیمانده۲۷۰میشود. این اختلاف، اثرِ واقعیِ نقطهٔ دور در همین داده است؛ نشان نمیدهد هر نقطهٔ خارج از اجماع اشتباه، جعلی یا قابل حذف از منبع است.
آستانه میتواند نتیجه را عوض کند
در آزمونِ جدا، نقطهای با باقیماندهٔ دقیق۱/۴روی مرز پذیرفته میشود. با آستانه۲۰، هر شش نقطه به اجماعِ خطِ اولیه میآیند و بازبرازش، عرض از مبدأ۳میدهد؛ صرفِ استفاده از نامِ روش، اثرِ انتخابِ آستانه را حذف نمیکند.
یک نمونهٔ دوخطیِ مساوی نیز واقعاً اجرا شده تا تساویِ تعداد و قاعدهٔ انتخاب دیده شود. برندهشدن یک خط در این قرارداد، شناساییِ حقیقتِ پنهان نیست. تعریفِ خطا، تعداد نمونه و نسبتِ ساختارهای رقابتکننده به کاربرد وابستهاند؛ عددِ عمومی برای دادهٔ شما از این شش نقطه درنمیآید.
چه چیزی را نگه داریم؟
دفترِ جفتِ نامزد، علتِ رد، باقیماندهها، اعضای اجماع و ضرایبِ بازبرازش را کنارِ نسخهٔ داده نگه دارید. بررسی منشأ دادهٔ پرت پیش از تصمیمِ حذف لازم است. رگرسیون خطی خودِ برازش و معیارهای خطا تفسیرِ هزینه را جدا توضیح میدهند.
شش حالتِ نامعتبر، از کمبود نقطه و همهعمودی تا آستانهٔ منفی یا نامتناهی، رد شدهاند. دامنهٔ محلی۲تا۸نقطهٔ کراندار و آستانه۰تا۲۰است. همهٔ حسابهای خطی کسر دقیقاند؛ مدل واقعی، دادهٔ حسگر یا کتابخانه آموزش ندیده است. ادامه در آموزش هوش مصنوعی؛ این روش الگوریتمِ تأییدشدهٔ داخلیِ اپرا معرفی نمیشود.
فایل تمرین و منبع
کد مستقل تمرین و تمام کنترلها؛ Python · ورودی و تمام نتایج اجرای واقعی؛ JSON
- مقاله اصلی Fischler وBolles،ژوئن۱۹۸۱؛ مقدمه و بخشII نمونهٔ حداقل،اجماع و برازش خوانده شد؛ نه تمام مقاله یا شکلها
- مستندات رسمی scikit-learn۱٫۹٫۱؛ تعریف آستانه،برابری روی مرز و نمونه نامعتبر خوانده شد؛ کتابخانه اجرا نشده است
منابع در 2026-11-04 خوانده شدند؛ این تاریخ، تاریخ انتشار منبع نیست. مثالها و فایلهای این راهنما آموزشی و ساختهٔ تحریریهاند.