در K-medoids، نمایندهٔ هر خوشه باید یکی از رکوردهای ورودی باشد. میانگینِ مختصات الزاماً عضو داده نیست. این راهنما فازِ تعویضِ بهترین تکنماینده را برای هشت مقدار اجرا میکند؛ تمام گزینههای تعویض، تابعِ هدف و علتِ توقف در فایل نتیجه دیده میشوند. انتخابِ آغازین ثابت است و فاز BUILD اجرا نشده است.
شناسه با مقدار فرق دارد
هشت مقدارِ ساختگی۰،۱،۲،۸،۹،۱۰،۱۱ و۳۰ با شناسههای رشتهای۰تا۷ داریم. فاصله، قدرمطلقِ اختلافِ دو مقدار است. دو نمایندهٔ آغازین شناسههای۰و۲، یعنی مقدارهای۰و۲ هستند. شناسه را حفظ میکنیم چون دو رکورد میتوانند مقدار برابر و هویت متفاوت داشته باشند.
هر رکورد به نزدیکترین نماینده تخصیص مییابد و در تساوی، شناسهٔ کوچکترِ واژگانی انتخاب میشود. تابع هدف، جمعِ فاصلهٔ همهٔ رکوردها تا نمایندهٔ انتخابشده است؛ مربع فاصله یا میانگین فاصلهٔ بین همهٔ جفتها نیست. هزینهٔ آغاز۵۹است.
تمام تعویضهای تکنماینده را بسنجیم
در هر دور، یک نماینده را با یک رکوردِ بیرون از مجموعه عوض میکنیم و هزینهٔ تازه را از ابتدا میسنجیم. از میان تمام گزینهها، کمترین هزینه را برمیداریم؛ در تساویِ هزینه، مجموعهٔ مرتبِ شناسهها قاعدهٔ قطعی دارد. فقط کاهشِ اکید پذیرفته میشود.
تعویض اول، شناسهٔ۲را با۵عوض میکند: نمایندهها۰و۵ و هزینه۲۷میشود. تعویض بعد،۰را با۱عوض میکند و هزینه به۲۶میرسد. مسیرِ واقعیِ مجموعهها(۰،۲)→(۰،۵)→(۱،۵) است. فایل تمام گزینههای ردشده را نیز نگه میدارد؛ فقط دو انتخابِ نهایی را نمایش نمیدهد.
توقفِ محلی را بهینهٔ جهانی ننامیم
در مجموعهٔ(۱،۵)، هیچ تعویضِ تکنمایندهای هزینه را کم نمیکند؛ الگوریتم با همین شرط متوقف میشود. در مسئلهٔ عمومی، نبودِ تعویضِ بهترِ تکی دلیلِ بهینهٔ سراسری نیست. شروع و محلهٔ جستوجو بخشی از قراردادند و نباید از گزارش حذف شوند.
برای همین هشت رکورد، oracleِ مستقل تمام۲۸انتخابِ دو نماینده از هشت رکورد را بررسی میکند. کمترین هزینهٔ آن۲۶است؛ پس برابریِ جهانی فقط برای همین جهانِ کاملاً شمردهشده تأیید میشود. این شمارش، روشِ مقیاسپذیرِ عمومی یا اثباتِ همهٔ دادهها نیست.
چرا میانگین جای medoid نیست؟
در مجموعهٔ جداگانهٔ۰،۱،۲و۱۰۰، میانگین۱۰۳/۴است و عضو هیچ رکوردی نیست. این مقدار میتواند برای هدفِ میانگین مفید باشد، اما نمایندهٔ مشاهدهشدهٔ مجازِ K-medoids نیست. تفاوتِ هدف را با حکمِ برتریِ همیشگیِ یکی از روشها اشتباه نگیریم.
K-means مرکزِ میانگین میسازد؛ خوشهبندی سلسلهمراتبی درختِ ادغام دارد. خروجیِ مستقلِ این صفحه، تعویضِ شناسهٔ رکورد و دفترِ هزینه است. صرفِ عوضکردنِ نامِ مرکز، این تفاوت را پیاده نمیکند.
تساوی و ورودی نامعتبر
سه مثالِ جدا، مقدارهای تکراری با شناسههای مستقل، تساویِ فاصله و انتخابِ همهٔ رکوردها بهعنوان نماینده را کنترل میکنند. اگر k برابر تعدادِ رکوردها باشد، نامزدِ بیرونی برای تعویض نداریم. نبود نامزد با شکستِ محاسبه یکی نیست؛ وضعیتِ توقف باید روشن بماند.
شش آزمون، k نامعتبر، شناسهٔ تکراری، NaN و ماتریسِ فاصلهٔ منفی یا نامتقارن را رد میکنند. دو موردِ آخر فقط اعتبارسنجیِ قراردادِ ماتریساند؛ PAM با فاصلهٔ سفارشی اجرا نشده است. کد اصلی تا۸رکورد، فاصلهٔ مطلق و دادهٔ دقیقِ کراندار میگیرد.
بدون کتابخانه و اندازهگیریِ زمان اجرا کردهایم؛ مقاومتِ همگانی در برابرِ پرت یا معنای درستِ خوشه تضمین نمیشود. Silhouette تقسیمِ آماده را میسنجد. ادامه در مبانی هوش مصنوعی؛ این شناسهها مشتریان یا خوشههای محصول اپرا نیستند.
فایل تمرین و منبع
کد مستقل تمرین و تمام کنترلها؛ Python · ورودی و تمام نتایج اجرای واقعی؛ JSON
منابع در 2026-11-04 خوانده شدند؛ این تاریخ، تاریخ انتشار منبع نیست. مثالها و فایلهای این راهنما آموزشی و ساختهٔ تحریریهاند.