اگر به تصاویر بالا دقت کنید، چنان واقعی به نظر میرسند که گویی تصویری از اشخاص حقیقی هستند، اما در حقیقت این تصاویر واقعی نمیباشند و با استفاده از تکنولوژی GAN (Generative Adversarial Networks) تولید شدهاند.
یکی از روش های یادگیری ماشین، نوعی یادگیری همراه با نظارت (Supervised learning) است که مجموعه وسیعی از داده ها (Training set) را برای آموزش دادن به مدل هوش مصنوعی داراست؛ این طبقه بندی را Classification می گویند و برای یادگیری چگونگی تخصیص برچسب کلاس به یک نمونه ورودی استفاده می شود. تکنولوژی GAN به این حوزه مرتبط است؛ همچنین این شبکه برای یادگیری تقویتی (Reinforcement learning) نیز میتواند مفید باشد.
شبكه مولد تخاصمی يا GAN ، يك روش يادگيری ماشين (Machine learning) است، كه در آن دو شبكه عصبی "مولد يا generator " و "متخاصم يا discriminator" حضور دارند. اين دو شبكه عصبی برای افزايش دقت و صحتشان دائماً با يکديگر درحال رقابت هستند و به همين طريق ماشين را قادر به يادگيری سريع میكنند.
بخش مولد سعی دارد تا تصاوير واقع گرايانهای خلق كند، و بخش متخاصم نيز سعی دارد تا تعيين كند كه آيا جعل عميق وجود دارد يا خير. اگر بخش مولد بتواند قسمت متخاصم را فريب دهد، بخش متخاصم با استفاده از داده های جمع آوری شده میتواند بهتر قضاوت كند. همچنين اگر بخش متخاصم تعيين كند كه تصوير ساخته شده به دست مولد جعلی است، شبكه ثانويه در ساختن تصوير جعلی بهتر عمل خواهد كرد. اين چرخه ادامه میيابد و هیچ وقت تمام نخواهد شد.
مثال دزد و پلیس، یک مثال معروف از نحوه کارکرد توابع GAN میباشد. دزد پول جعلی تولید میکند و پلیس بهدرستی تشخیص میدهد. دزد که شکست خورده، تلاش میکند پول جعلی نزدیکتر به واقعیت تولید کند. بازهم پلیس تشخیص میدهد، اما اینبار متوجه میشود که دزدها کمی پیشرفت کردهاند. چون، پولهای جعلی جدید نسبت به قبلیها تفاوتهایی دارند. پس توانایی تشخیص پول جعلی/واقعی پلیس افزایش مییابد. بازهم دزدِ شکست خورده تلاش میکند و پلیس ... . این جنگ بین دزد و پلیس همینطور ادامه مییابد. بهگونهای که دزد درحال تولید پول بسیار باکیفیتی است که ما مردم عادی ممکن است گول بخوریم. اما پلیس آموزشدیده میتواند تشخیص دهد که جعلی است. پس دزد و پلیس در عین رقابت، در حال یادگیری و پیشرفت هم هستند.
به علاوه این مدل علاوه بر چهره انسانها، توانایی تشخیص و طراحی اشیاء، گیاهان و ... هم دارا میباشد:
در اين روش يك تصوير به عنوان ورودی دريافت میشود و به تصوير توليد شده در خروجی نگاشت داده میشود اما اين تصوير توليد شده، ويژگی های متفاوتی از تصوير اوليه دارد. مانند:
در این بخش می توانیم با دادن یک تصویر به شبکه، تصویری مشابه الگوهای زیر از شبکه بگیریم. برای مثال بتوانیم عکسی در فضای آفتابی از یک منظره به شبکه بدهیم و تصویر همان منظره را در فضای ابری بخواهیم، یا اینکه عکس سیاه سفید از یک شی را به شبکه داده و عکس رنگی آن را از شبکه بگیریم.
همانطور که در تصویر زیر مشاهده می کنید می توانیم با داشتن لبه های یک کیف تصویر اصلی کیف، با داشتن منظره ای در هوای آفتابی به آن منظره در هوای ابری و با داشتن عکس سیاه سفید به عکس رنگی تصویرمان برسیم.
همچنین با استفاده از دیکشنری رنگ ها می توانیم اشیاء گوناگون را به مدل خود آموزش دهیم. در تصویر زیر رنگ آبی معادل ماشین، رنگ بنفش معادل آسفالت و خیابان و .. است. لذا اگر عکسی مبتنی بر این رنگ ها را به عنوان ورودی وارد کنیم، می توانیم عکس جعلی موردنظر در سمت چپ را به عنوان خروجی دریافت کنیم.
اين نوع ازGAN ها، متن را به عنوان ورودی دريافت میكنند و تصاويری باورپذير و مطابق با توضيحات داده شده در متن مورد نظر را توليد میكنند. برای مثال اين تصاویر پرندگان نتیجه ی متون زیر است:
مدل یادگیری عمیق توسعه یافته توسط شرکتNVIDIA میتواند نقاشیهای ابتدایی شما را به مناظر شگفت انگیزی تبدیل کند. شما میتوانید با نصب این نرم افزار از سایت انویدیا از این تکنولوژی جذاب و شگفتانگیز استفاده نمایید. فقط کافی است در پایین صفحه تیک مورد نظر را بزنید و در سمت چپ صفحه شروع به نقاشی کنید و سپس منتظر نتیجهای خارقالعاده در سمت راست صفحه بمانید.( همچنین ویدئویی جهت راهنمایی کار با این تکنولوژی در این صفحه موجود می باشد.)
از دیگر کاربردهای GAN میتوان به افزایش رزولوشن تصویر، تبدیل عکس به ایموجی، پیش بینی ادامه ویدئو، ادغام دو تصویر درهم، پر کردن فضاهای مخدوش شده عکس، تغییر سن چهره و .. اشاره کرد.
گردآورندگان: حوریه سبزواری و الناز رضایی