تطبیق و بازشناسی چهره(2)

رویکرد دیگر در سال 2014 به این صورت بود که تشخیص چهره را به صورت کلاس بندی باینری ببینیم اینگونه که دو عکس مورد بررسی را به شبکه بده و در انتها لایه 128 را وصل کن به یک binary classifier که اگه دو نفر یکسان بودند true و در غیر این صورت،  false برمیگرداند.

دیتا ست در این رویکرد به صورت زیر است که یه مجموعه مقایسه ایست که یکسان بودن و نبودن را بیان می کنند و batch هم ظریب 2 می شود.

باز میبینیم که تعدادحالت های ما بسیار زیاد می شود.

Center loss

برای تصویر تنها تفکیک پذیر(separable) بودن مهم نیست بلکه باید یک فاصله ایی هم در فضا از هم داشته باشند.( discriminative باشند)

فیچر های ماقبل لایه آخر (encoding) درهر mini_batch ، این 128 ها را میانگین بگیرد و  loss  را طوری تعریف می کنیم که علاوه بر softmax همه به سنترمشخص شده نزدیک تر بشن.

separable
separable
discriminative
discriminative

 

 

 

کانال عکس ابتدا وارد می شود.

 

یک شبکه را لود کردیم با پارامتر های تعداد کانال و سایز عکس ها که 96 * 96 است.

 

در کامپایل پارامتر loss را تابعی که خودمان برای loss triplet نوشتیه ایم میگذاریم.

وزن های قبلا train شده را در شبکه خودمون لود میکنیم.

عکس را داده و خروجی 128 تایی لایه آخر شبکه را در یک دیکشنری ذخیره میکنیم.

تابعی که عکس را گرفته و فاصله اقلیدسی آن را با عکس های موجود در دیتاست محاسبه کرده (threshold که براساس تست یافته ایم، cross validtion باید بزنیم تا بهترین کارایی برسیم.)و می گوید این عکس داده شده همان لیبل هست یا نه. true و false برگردان.

پارامتر ها:

  • عکس
  • لیبل عکس
  • دیتاست
  • مدل شبکه

تابعی که عکس را گرفته و recognation انجام می دهد، به این صورت که encoding عکس را از مدل گرفته و در تمام دیتاست موجود چک می شود اگر فاصله اقلیدسی آن از min_dist کوچکتر باشد نام آن را بر می گرداند.

 

فوتر سایت

اسلایدر سایدبار

درباره ما

درباره ما

ما گروهی از دانشجویان رشته کامپیوتر دانشگاه شهید رجایی هستیم که به راهنمایی و تدریس استاد علی‌رضا اخوان‌پور به دنیای یادگیری عمیق پا گذاشتیم و دوست داریم چیزهایی که در این مسیر یادمی‌گیریم رو به اشتراک بذاریم.

شبکه های اجتماعی

مطالب اخیر