بخشی از مقاله

چکیده

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

در این تحقیق پس از جمعآوری تصاویر از پایگاهداده تصاویر با استفاده از الگوریتم تحلیل مؤلفههای اصلی فرآیند استخراج ویژگی از تصاویر انجام میشود و با استفاده از شبکه عصبی پرسپترون چندلایه با آموزش الگوریتم بهینهسازی مبتنی بر آموزش و یادگیری شناسایی چهره انجام میشود. نتایج نشان میدهد که شبکه عصبی پرسپترون چندلایه آموزشیافته با الگوریتم بهینه-سازی مبتنی بر آموزش و یادگیری با دقت %99 شناسایی چهره را انجام میدهد.

1 -مقدمه

شناسایی چهره یکی از دشوارترین جنبههای بازشناسی تصویر است. یکی از کاربردهای وسیع شناسایی چهره در زمینه شناسایی هویت و مسأله امنیت است.[1] در کنترل اماکن با جمعیت زیاد مانند فرودگاهها، ایستگاههای راهآهن، مترو و... این روش نسبت به سایر روشهای نظارتی دارای کارائی بیشتری است.[2] در سالهای اخیر، ابزارهای مختلفی برای شناسایی هویت براساس چهره و در زوایای مختلف استفاده شده است اما تفاوت عمده آنها در مرحله استخراج ویژگی و نوع ابزار شناسایی چهره است.[3] در این مقاله برای تشخیص هویت در زوایای مختلف از شبکه عصبی استفاده میشود.

شبکههای عصبی به دلایل قابلیت یادگیری، قابلیت تعمیمپذیری، پردازش موازی و مقاومبودن جزء الگوریتمهایی هستند که برای طبقهبندی دادهها و استخراج الگوهای پیچیده و غیرخطی مورد استفاده قرار میگیرند.[4] در جهت افزایش دقت شبکه عصبی از الگوریتم بهینهسازی مبتنی بر آموزش و یادگیری برای آموزش شبکه عصبی استفاده میشود.

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

2 -پیشپردازش تصاویر

در این تحقیق از پایگاهداده ORL استفاده شده است که شامل 100 نمونه تصویر با ابعاد 70*80 از 10 شخص مختلف است. در این پژوهش از هر نفر 8 تصویر در مجموعه آموزشی و دو تصویر در مجموعه آزمایشی قرار گرفته است. بنابراین در مجموعه آموزشی 80 نمونه تصویر و در مجموعه آزمایشی 20 نمونه تصویر موجود است. ابتدا تصاویر خوانده شده و وارد حافظه میشوند بدین ترتیب هر تصویر در ماتریسی به ابعاد 70*80 ذخیره میشود. سپس هر تصویر به یک بردار ستونی تبدیل میشود و مجموعه آموزشی با 5600 سطر با 80 ستون ایجاد میشود که هر ستون تصویر یک فرد است.

سپس میانگین ویژگی در هر سطر محاسبه میشود و از مقدار ویژگی در آن سطر کاسته میشود به این ترتیب میانگین ویژگیها در هر سطر برابر صفر میشود. بههمین ترتیب تصاویر آزمایشی نیز خوانده شده و وارد حافظه میشوند سپس به منظور ایجاد مجموعه آزمایشی هر تصویر به یک بردار ستونی تبدیل میشود و در مجموعه آزمایشی قرار میگیرد در نتیجه مجموعه آزمایشی در نهایت با 5600 سطر و 20 ستون ایجاد میشود که هر ستون مربوط به تصویر هر شخص است عمل محاسبه میانگین در هر سطر و تفاضل آن با میانگین انجام میشود تا میانگین دادهها در هر سطر برابر صفر شود این عمل باعث میشود محاسبه ماتریس کواریانس ساده شود.

برای تعیین خروجی هدف آموزشی نیز از یک ماتریس 4*80 استفاده شده است که شماره شناسایی هر فرد به صورت کد باینری 4 بیتی دیکد شده است و چون تعداد نمونه آموزشی برابر 80 نمونه است بنابراین مجموعه خروجی هدف آموزشی 4*80 است. به همین ترتیب برای ایجاد خروجی هدف آزمایش نیز از یک ماتریس 4*20 استفاده شده و شماره شناسایی هر شخص به صورت کدهای 4 بیتی دیکد شده است و چون تعداد 20 نمونه وجود دارد پس مجموعه خروجی هدف 4*20 است. همچنین %80 دادهها برای آموزش شبکه عصبی و %20 دادهها برای آزمایش مدل استفاده می-شود.

- -1 2 الگوریتم تحلیل مؤلفههای اصلی

تحلیل مؤلفههای اصلی1 نوعی از تجزیه و تحلیل آماری است که تعداد کمتری از عوامل را با نام مؤلفههای اصلی از میان عوامل اولیه گزینش میکند. یک مجموعه nتایی از بردارها که هر یک p عضو دارد، در نظر بگیرید. هر یک از این بردارها را میتوان بهصورت یک نقطه در فضای بُعدیp نمایش داد. PCA محورهای متعامدی را نشان میدهد که بهترین نمایش را برای این n نقطه بهوجود بیاورند. تعداد این محورها کمتر یا مساوی تعداد متغیرهای اصلی هستند. ابتدا PCA نزدیکترین محور به ابر نقاط داده را بهدست میآورد. این ملاک را میتوان بهصورت ملاک دیگری که از نظر ریاضی با آن یکسان است، بیان کرد.

بهعبارت دیگر، واریانس این تصویرها بیشترین حدممکن باشد. دومین محور نیز بههمین صورت بهدست میآید با این شرط که بر محور اول عمود باشد. این دو محور در کنار یکدیگر صفحهای با بهترین تطابق بر دادهها میسازد. این روش برای یافتن کلیه محورهای عمود - مؤلفههای اصلی - ادامه مییابد. در فضای جدید هیچ همبستگی بین متغیرها وجود ندارد.

اولین متغیر جدید شامل بیشترین مقدار واریانس داده و متغیر دوم شامل دومین بیشترین مقدار واریانس در داده است، که توسط متغیر اول بیان نمیشود و بر آن عمود است. استخراج ویژگی از تصاویر پس از آمادهسازی تصاویر انجام میشود.[5] در این مرحله با استفاده از الگوریتم تحلیل مؤلفههای اصلی عمل استخراج ویژگی از تصاویر انجام میشود.

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

سپس مقادیر ویژه براساس واریانس به صورت نزولی مرتب میشوند و سپس بردارهای ویژه براساس ترتیب مرتب شده مقادیر ویژه مرتب میشوند و براساس مقادیر ویژه تعداد 9 ویژگی اول از بردارهای ویژه که دارای بیشترین مقادیر ویژه هستند انتخاب میشوند و با ضربشدن در ماتریس دادههای آموزشی مجموعه آموزشی جدید استخراج میشود.

برای استخراج ویژگی از تصاویر در مجموعه آزمایشی نیز از بردارهای ویژه مجموعه آموزشی استفاده میشود. در ماتریس مربوط به داده-های آزمایشی ابتدا میانگین هر ویژگی محاسبه شده و هر ویژگی از تصویر را از میانگین آن ویژگی کم میکنیم به این ترتیب ویژگیهای تصاویر دارای میانگین صفر میشوند سپس از بردارهای ویژه تعیین شده به ازای دادههای آموزشی استفاده شده و با ضربکردن آن در ماتریس دادههای آزمایشی و انتخاب 9 ویژگی از دادههای ایجاد شده عمل استخراج ویژگی به ازای دادههای آزمایشی انجام میشود.

3 -مروری بر الگوریتمها

در این بخش ابتدا الگوریتم بهینهسازی مبتنی بر آموزش و یادگیری و در ادامه شبکه عصبی پرسپترون چندلایه بررسی خواهد شد.

-1 3 -الگوریتم بهینهسازی مبتنی بر آموزش و یادگیری

الگوریتم بهینهسازی مبتنی بر آموزش و یادگیری براساس فرآیند آموزش و یادگیری در یک کلاس شکل گرفته است. این الگوریتم در سال 2012 میلادی معرفی شده است. مرحله معلم و مرحله دانشآموز دو قسمت مهم و اصولی این الگوریتم را تشکیل میدهند.[6]

مرحله معلم: این مرحله، قسمت اول الگوریتم را تشکیل میدهد که دانشآموزان سعی میکنند سطح دانش و نمرات خود را براساس سطح اطلاعات و دانش معلم بهبود دهند. اگر جواب جدید تولید شده دارای تابع هدف بهتری از نقطهنظر بهینهسازی مسئله باشد، جایگزین جواب قبلی میگردد، در غیر این صورت همان جواب قبلی در جمعیت حفظ میگردد.[6]

مرحله دانشآموز: در این مرحله دانشآموزان سطح دانش و اطلاعاتشان را براساس فعل و انفعالات و مصالحهی بین خودشان افزایش میدهند. هر دانشآموز به صورت تصادفی یکی دیگر از دانشآموزان را انتخاب کرده و سطح دانش خود را تغییر میدهد. لازم به ذکر است که خروجی جمعیت از فاز دوم یعنی فاز دانشآموز به عنوان ورودی جمعیت برای تکرار بعدی در نظر گرفته میشود.[6]

-2 3 -شبکه عصبی پرسپترون چندلایه

شبکههای عصبی بهعنوان یک تکنولوژی کاربردی ظاهر شدهاند که به صورت مؤفقیتآمیزی در زمینههای متفاوت بهکار برده میشوند. مهمترین مزیت شبکه عصبی قابلیت خودتطبیقی، خودسازماندهی و عملیات بلادرنگ و ... است.[7] ساختار این شبکه شامل یک لایه ورودی، یک لایه میانی و یک لایه خروجی است. در هر لایه، یک یا چند عنصر پردازشگر - نرون - ، وجود دارد که با تمامی نرونهای لایه بعدی با اتصالات وزندار، بههم مربوط میشوند. تعداد نرونهای لایههای ورودی و خروجی، بستگی به تعداد متغیرهای ورودی و خروجی مدل دارد؛ ولی انتخاب تعداد نرونهای لایه میانی به صورت سعی و خطا تعیین میشود که در مسأله ما معمولاً بهترین جواب تشخیص هویت با تعداد نرونهای 10 در لایه پنهان بهدست میآید.[8]

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

توابع سیگموئیدی و خطی، رایجترین توابع مورد استفاده برای شبکههای چندلایه پیشرونده هستند. در این تحقیق از تابع تانژانت هایپربولیک در نرونهای لایه پنهان و نرونهای لایه خروجی استفاده شده است. وزنهای ارتباط دهنده نرونهای شبکه، با آموزش تعیین میشوند. الگوریتمهای بهینهسازی هوشمند یکی از تکنیکهای بهینهسازی قدرتمند هستند که میتوانند دستیابی به وزنهای بهینهشده در شبکه عصبی را میسر سازند.[9]

4 -مدل پیشنهادی

مدلهای پیشنهادی برای شناسایی چهره در زوایای مختلف شبکه عصبی پرسپترون چندلایه است که با استفاده از الگوریتم بهینهسازی مبتنی بر آموزش و یادگیری آموزش یافته است. 

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید