بهینه سازی هدفمند

2 دقیقه |  2020/10/22

برخی از پارامتر هایی را که در الگوریتم خود استفاده کردیم به یاد بیاورید:

  • $ = c ^ {(i)}$ ایندکس خوشه ای ${1,2,…,k}$ که به نمونه $x^{(i)}$ منتسب شده است.
  • $ = \mu _k $ خوشه مرکزی k $(\mu _k \in \mathbb{R} ^ n)$
  • $ = \mu _ {c ^ {(i)}} $ مرکز خوشه ای که به نمونه $x^{(i)}$ منتسب شد است.

با استفاده از این متغیرها می‌توانیم تابع هزینه خود را تعریف کنیم:

$$ J(c ^{(i)}, …, c ^{(m)}, \mu _1, …, \mu _k) = \frac{1}{m} \sum ^ m _ {i=1} || x ^{(i)} - \mu _ {c^{(i)}} || ^2 $$

هدف بهینه سازی ما این است که تمام پارامترهای خود را با استفاده از تابع هزینه بالا به حداقل برسانیم:

$$ min _ {c,\mu} J(c, \mu) $$

یعنی همه مقادیری که در مجموعه $c$ پیدا می‌کنیم، نمایانگر همه خوشه های ما است، و $\mu$ نیز نمایانگر همه مرکز های ما است، که میانگین فاصله هر نمونه آموزشی تا مرکز خوشه مربوطه را به حداقل می‌رسانیم.

تابع هزینه بالا اغلب distortion نمونه های آموزشی نامیده می‌شود.

در مرحله تخصیص خوشه (مرحله ۲ در قسمت قبل) هدف ما این است:

$$ \text{Minimize } J(…) \text{ with } c^{(1)},…,c^{(m)} $$ (ثابت نگه داشتن $\mu _ 1,…,\mu _ k $ ها)

و در مرحله حرکت مرکز (مرحله ۳ در قسمت قبل) هدف ما این است:

$$ \text{Minimize } J(…) \text{ with } \mu _ 1,…,\mu _ k $$