اندازه گیری تشابه دستی

همانطور که نشان داده شد، k-means نقاط را به نزدیکترین مرکز آنها اختصاص می دهد. اما «نزدیک ترین» به چه معناست؟

برای اعمال k-means برای داده‌های ویژگی، باید معیاری برای تشابه تعریف کنید که تمام داده‌های ویژگی را در یک مقدار عددی واحد ترکیب می‌کند که اندازه‌گیری تشابه دستی نامیده می‌شود.

یک مجموعه داده کفش را در نظر بگیرید. اگر آن مجموعه داده تنها ویژگی اندازه کفش را داشته باشد، می توانید شباهت دو کفش را از نظر تفاوت بین اندازه آنها تعریف کنید. هر چه تفاوت عددی بین سایزها کمتر باشد، شباهت بین کفش ها بیشتر است.

اگر مجموعه داده های کفش دارای دو ویژگی عددی، اندازه و قیمت بود، می توانید آنها را در یک عدد واحد ترکیب کنید که نشان دهنده شباهت است. ابتدا داده ها را مقیاس بندی کنید تا هر دو ویژگی قابل مقایسه باشند:

  • اندازه (ها): اندازه کفش احتمالاً یک توزیع گاوسی را تشکیل می دهد. این را تایید کنید. سپس داده ها را نرمال کنید.
  • قیمت (p): داده ها احتمالاً توزیع پواسون هستند. این را تایید کنید. اگر داده کافی دارید، داده ها را به چندک تبدیل کنید و به \([0,1]\)مقیاس کنید.

سپس، دو ویژگی را با محاسبه ریشه میانگین مربعات خطا (RMSE) ترکیب کنید. این معیار تقریبی شباهت توسط\(\sqrt{\frac{(s_i - s_j)^2+(p_i - p_j)^2}{2}}\)ارائه شده است.

برای یک مثال ساده، شباهت دو کفش با سایزهای آمریکایی 8 و 11 و قیمت‌های 120 و 150 را محاسبه کنید. از آنجایی که داده‌های کافی برای درک توزیع نداریم، داده‌ها را بدون نرمال‌سازی یا استفاده از کمیت‌ها مقیاس می‌کنیم.

عمل روش
اندازه را مقیاس کنید. حداکثر اندازه کفش ممکن را 20 فرض کنید. 8 و 11 را بر حداکثر سایز 20 تقسیم کنید تا 0.4 و 0.55 به دست آورید.
قیمت را مقیاس کنید. 120 و 150 را بر حداکثر قیمت 150 تقسیم کنید تا به 0.8 و 1 برسید.
تفاوت اندازه را پیدا کنید.\(0.55 - 0.4 = 0.15\)
تفاوت قیمت را پیدا کنید\(1 - 0.8 = 0.2\)
RMSE را محاسبه کنید.\(\sqrt{\frac{0.2^2+0.15^2}{2}} = 0.17\)

به طور شهودی، اندازه گیری شباهت شما باید زمانی افزایش یابد که داده های ویژگی بیشتر شبیه باشند. در عوض، اندازه گیری شباهت شما (RMSE) در واقع کاهش می یابد. با کم کردن آن از 1، معیار تشابه خود را مطابق با شهود خود انجام دهید.

\[\text{Similarity} = 1 - 0.17 = 0.83\]

به طور کلی، می توانید داده های عددی را همانطور که در Prepare data توضیح داده شده است، آماده کنید، سپس داده ها را با استفاده از فاصله اقلیدسی ترکیب کنید.

اگر آن مجموعه داده شامل اندازه کفش و رنگ کفش باشد چه؟ رنگ داده‌های طبقه‌بندی است که در دوره آموزشی Crash Learning Machine در کار با داده‌های طبقه‌بندی مورد بحث قرار گرفته است. ترکیب داده های دسته بندی با داده های اندازه عددی سخت تر است. میتونه باشه:

  • تک ارزشی (تک ظرفیتی)، مانند رنگ ماشین ("سفید" یا "آبی" اما هرگز هر دو)
  • چند ارزشی (چند ظرفیتی)، مانند ژانر یک فیلم (یک فیلم می تواند هم «اکشن» و هم «کمدی» باشد یا فقط «اکشن»)

اگر داده های یک ظرفیتی مطابقت داشته باشند، برای مثال در مورد دو جفت کفش آبی، شباهت بین مثال ها 1 است. در غیر این صورت، شباهت 0 است.

کار با داده های چند ظرفیتی، مانند ژانرهای فیلم، سخت تر است. اگر مجموعه ای ثابت از ژانرهای فیلم وجود داشته باشد، شباهت را می توان با استفاده از نسبت مقادیر مشترک محاسبه کرد که به آن شباهت ژاکارد می گویند. مثالی از محاسبات شباهت جاکارد:

  • ["کمدی"، "اکشن"] و ["کمدی"، "اکشن"] = 1
  • ["کمدی"، "اکشن"] و ["اکشن"] = ½
  • ["کمدی"، "اکشن"] و ["اکشن"، "درام"] = ⅓
  • ["کمدی"، "اکشن"] و ["غیر داستانی"، "بیوگرافی"] = 0

شباهت جاکارد تنها معیار تشابه دستی ممکن برای داده‌های طبقه‌بندی نیست. دو مثال دیگر:

  • کدهای پستی را می توان قبل از محاسبه فاصله اقلیدسی بین آنها به طول و عرض جغرافیایی تبدیل کرد.
  • رنگ را می توان به مقادیر عددی RGB تبدیل کرد و تفاوت در مقادیر با فاصله اقلیدسی ترکیب می شود.

برای اطلاعات بیشتر به کار با داده های طبقه بندی مراجعه کنید.

به طور کلی، یک معیار تشابه دستی باید مستقیماً با شباهت واقعی مطابقت داشته باشد. اگر معیار انتخابی شما اینطور نیست، پس اطلاعاتی را که می خواهید رمزگذاری کنید، رمزگذاری نمی کند.

قبل از محاسبه معیار تشابه، داده های خود را به دقت پردازش کنید. مثال های این صفحه ساده شده اند. بیشتر مجموعه داده های دنیای واقعی بزرگ و پیچیده هستند. همانطور که قبلا ذکر شد، کوانتیل ها یک انتخاب پیش فرض خوب برای پردازش داده های عددی هستند.

با افزایش پیچیدگی داده ها، ایجاد یک معیار تشابه دستی دشوارتر می شود. در آن شرایط، به معیار شباهت نظارت شده بروید، جایی که یک مدل یادگیری ماشینی نظارت شده شباهت را محاسبه می کند. بعداً در این مورد با جزئیات بیشتر بحث خواهد شد.