باتوجه به محبوبیت و استفاده روزافزون از وسایل دیجیتال در زندگی روزمره بشر و همچنین گسترش به اشتراکگذاری تصاویر در شبکههای اجتماعی همچون فیسبوک، فلیکر، اینستاگرام و غیره و همچنین بارگذاری فیلمهای مختلف در این شبکهها، استفاده از تصاویر دیجیتال مخصوصا در دهه اخیر رشد قابل توجهی داشتهاست که در میان این تصاویر، درصد بالایی مربوط به تصاویر چهره انسان است و در مواردی از قبیل پایش تصویر برخط، تعامل انسان و ماشین، ردیابی شخص در ویدئو، بازیابی تصویر چهره افراد مجرم، کنترل تردد کارکنان سازمان و تفکیک دوست از دشمن در پایگاههای نظامی(از قبیل نیروی دریایی و ...)کاربردهای فراوانی دارد. بنابراین دقت و سرعت بازیابی در این مسئله حائز اهمیت است. در این مقاله دو روش برپایه الگوی دودوئی محلی ارائه شده است که در نهایت با تشخیص لبه ترکیب میشود. برای افزایش سرعت روش ترکیبی پیشنهادی بصورت موازی در محیط C++ CUDA اجرا شده است. در این مقاله میزان دقت و سرعت بر روی مجموعه دادههای مختلف ارزیابی شد و بطور متوسط زمان پردازش در GPU تاحدود ۱۹ برابر در مجموعه دادهی با ۱۰۲۴ عکس در مقایسه با CPU کاهش یافت. نتیجه حاکی از این تحقیق بدین صورت بود که هرچه حجم مجموعه داده بزرگتر شود تاثیر موازیسازی بهتر است. بنابراین متغیرهایی که برای این مسئله ذکر میشود عبارتند از:۱- دقت کار ۲- زمان اجرا ۳-مقیاس پذیر بودن سیستم
ادامه مطلب ...در این مقاله قصد برآن است که فرض گرفته شود شما کار یادگیری عمیق را شروع کرده اید و یا در فکر شروع کردن آن هستید و بر سر دوراهی قرار گرفته اید که از کدام کتابخانه برای انجام پروژه هایتان استفاده کنید، تنسورفلو و پایتورچ هردو کتابخانه های مشهور یادگیری عمیق هستند و شما صراحتا نمی توانید به تفاوت آن دو پی ببرید، بنابراین در اینجا 5 نکته در مورد این دو کتابخانه بیان شده است:
1- هر دوی اینها کتابخانه های open source هستند تنسورفلو توسط گوگل و پایتورچ توسط فیس بوک توسعه داده شده اند.
2- مهمترین اختلاف میان این دو فریم ورک تعیین گراف محاسباتی است، وقتی تنسورفلو یک گراف ایستا را ساخت پایتورچ معتقد به ساخت گراف محاسباتی پویا بودولی این به چه معنا هست؟ در تنسورفلو در ابتدا باید کل گراف محاسباتی ترسیم شود اما در پایتورچ در حین پیمودن مسیر(مخصوصا در زمانی که در شبکه های RNN ورودی های متغیر وجود دارند خیلی مفید است.)
3- پایتورچ نسبت به تنسورفلو خیلی پایتونیک تر است به عبارت دیگر برای استفاده از تنسورفلو شما باید یک کم بیشتر در مورد نحوه کار آن بیاموزید که نسبت به پایتورچ سخت تر است.
4- انجمن بزرگتری در پشت تنسورفلو نسبت به پایتورچ(بعلت نو بودن پایتورچ)قرار دارد، از این رو یافتن منابع آموزشی برای تنسورفلو نسبت به پایتورچ ساده تر است.
5-مقایسه های ذکر شده بدون ذکر TensorBoard ناقص خواهند بود، TensorBoard یک ابزار درخشان برای ایجاد امکان مجسم سازی مدل یادگیری ماشین شما هست که پایتورچ چنین ابزاری را ندارد، اگرچه شما می توانید از ابزاری مانند Matplotlib استفاده کنید و همچنین به شما این اجازه را خواهد داد که از TensorBoardدر پایتورچ استفاده کنید اما ذاتا از آن پشتیبانی نمی کند.
منبع:اینجا را کلیک کنید.
هدف از یادگیری ماشین چیست؟
مثال: برنامه ای بنویسید که نمره درسی دانشجو را گرفته و مشخص کند که آیا دانشجو درس را پاس کرده است یا خیر؟
در این برنامه با تعیین حد آستانه نمره و با استفاده از یک دستور شرطی if ساده می توان برنامه را نوشت و به خروجی دست یافت:
if grade>=10
cout<<pass
else
cout<<failed
مثال:برنامه ای بنویسید که تعداد ساعات مطالعه و میزان تمرکز دانشجو را گرفته و بررسی کند که آیا دانشجو قبول می شود یا خیر؟
در اینجا چون پارامترها مشخص نیستند نمی توان مانند مثال قبل با یک حلقه if ساده خروجی را بدست آورد لذا باید با استفاده از مجموعه داده های برچسب دار قبلی، خود ماشین میزان پارامتر ها را حدس بزند، لذا اصلی ترین هدف یادگیری ماشین را پیدا کردن پارامترهای بهینه مدل شبکه عصبی می دانند. ادامه مطلب ...