در بازی های ویدئویی از کاربردهای مختلف هوش مصنوعی به روش های مختلف استفاده شده است. شروع استفاده از هوش مصنوعی در بازی های ویدئویی با آتاری آغاز شد؛ که یک نمونه کاملا ابتدایی در زمینه بازی های کامپیوتری محسوب می شود. اما امروزه شبکه های عصبی به سیستم های هوش مصنوعی اجازه می دهند تا هوشمندانه تر عمل کنند. بازی های ویدیویی فقط جنبه سرگرمی ندارند. آنها بستری را برای شبکه های عصبی فراهم می کنند تا یاد بگیرند که چگونه با محیط های پویا ارتباط برقرار کرده و مشکلات پیچیده را درست مثل زندگی واقعی حل کنند. بازی های ویدئویی طی چندین دهه برای ارزیابی عملکرد هوش مصنوعی مورد استفاده قرار گرفته اند.
استودیوهای ساخت بازی، میلیون ها دلار و هزاران ساعت را صرف توسعه طراحی گرافیک بازی ها می کنند که تا حد ممکن آن ها را به واقعیت نزدیک کنند. در حالی در چند سال گذشته، که این گرافیک ها به طرز شگفت آوری واقعی به نظر می رسند، اما همچنان تفکیک آنها از دنیای واقعی بسیار آسان است. با این حال، با پیشرفت های گسترده ای که در زمینه پردازش تصویر با استفاده از شبکه های عصبی عمیق صورت گرفته است، آیا زمان آن نرسیده که بتوانیم از این فناوری برای بهبود گرافیک استفاده کرده و همزمان نیاز انسانی برای ایجاد آنها را کاهش دهیم؟
آنچه در این نوشته خواهیم داشت
مقایسه چهره رونالدو
مقایسه چهره کریستیانو رونالدو، تصویر سمت چپ از 18 FIFA و تصویر سمت راست تولید شده توسط یک شبکه عصبی عمیق.
پاسخ به این سوال با استفاده از بازی FIFA 18
برای اینکه دریابیم که آیا تحولات اخیر در یادگیری عمیق می تواند به سوال ما پاسخ دهد، با استفاده از الگوریتم معروف deepfakes ، روی بهبود چهره بازیکن ها در FIFA تمرکز می کنیم. Deepfakes یک شبکه عصبی عمیق است که می تواند برای تشخیص و تولید چهره های انسانی بسیار واقع بینانه آموزش ببیند. تمرکز ما در این پروژه بازآفرینی چهره بازیکن از درون بازی و بهبود آن هاست تا آنها را دقیقا مثل بازیکنان واقعی جلوه دهد. در اینجا توضیحی عالی در مورد چگونگی عملکرد الگوریتم deepfakes ارائه شده است. با استفاده از رمزگشای خودکار و شبکه های عصبی پیچشی، می توان چهره هر کسی را در یک فیلم با چهره افراد دیگر جابجا کرد.
جمع آوری داده
اجازه دهید با نگاهی به یکی از بهترین چهره های طراحی شده در FIFA 18 ، یعنی کریستیانو رونالدو، شروع کنیم و ببینیم آیا می توانیم آن را بهبود بخشیم؟ برای جمع آوری داده های مورد نیاز برای الگوریتم deepfakes، به سادگی چهره بازیکن را از گزینه پخش مجدد در بازی ضبط کردیم. حال می خواهیم این چهره را با چهره واقعی رونالدو جایگزین کنیم. به همین منظور، تعدادی از تصاویر رونالدو را از زوایای مختلف از گوگل دانلود کردیم. بر خلاف روش های استفاده شده توسط توسعه دهندگان بازی، در این روش می توان تمام داده های مورد نیاز را از جستجوی گوگل جمع آوری کرد؛ بدون اینکه لازم باشد رونالدو لباس مخصوص ضبط کردن تصاویر را به تن کند.
مطالعه مقالات زیر در حوزه ماشین لرنینگ و دیپ لرنینگ نیز به شما عزیزان توصیه می شود:
۹ کاربرد جالب یادگیری ماشین در زندگی روزمره
۸ کاربرد جالب یادگیری عمیق در بینایی رایانه ای
معماری و آموزش مدل
این الگوریتم شامل آموزش شبکه های عصبی عمیق به نام اتوکودرها است. این شبکه ها برای یادگیری بدون نظارت مورد استفاده قرار می گیرند و دارای یک رمزگذار هستند که می توانند با استفاده از یک رمزگذار، یک ورودی را رمزگذاری کنند. پس از آن، از یک رمزگشا برای بازسازی ورودی اصلی استفاده می کنند. برای تصویری مانند نمونه ما، از یک شبکه کانولوشن (پیچشی) به عنوان رمزگذار و یک شبکه دکانولوشن به عنوان رمزگشا استفاده می کنیم. این معماری به منظور به حداقل رساندن خطای بازسازی آموزش داده شده است.
برای مورد ما، دو شبکه را به طور همزمان آموزش می دهیم. یک شبکه می آموزد چهره رونالدو را از گرافیک بازی FIFA 18 بازآفرینی کند؛ و شبکه دیگر یاد می گیرد که چهره را از تصاویر واقعی رونالدو بازآفرینی کند. در deepfakes، هر دو شبکه، یک رمزگذار مشترک و دو رمزگشای مختلف استفاده می کنند. بنابراین، ما اکنون دو شبکه داریم که یاد گرفته اند که رونالدو در بازی و در زندگی واقعی چگونه به نظر می رسد.
استفاده از مدل های آموزش دیده برای تعویض چهره
حالا نوبت بخش جذاب است. این الگوریتم با استفاده از یک ترفند هوشمندانه قادر به تغییر چهره هاست. در این مرحله، دومین شبکه رمزگشای خودکار با ورودی اولین شبکه تغذیه می شود. در واقع، رمزگذار اشتراکی، رمزگذاری را از تصویر FIFA گرفته، اما رمزگشا تصویر واقعی را بازسازی می کند.
گیف زیر پیش نمایشی از نتایج حاصل از اجرای این الگوریتم را در چهره بازیکنان نشان می دهد.
چهره های 18 FIFA در مقایسه با تصاویر شبکه عصبی عمیق از رونالدو ، موراتا و اوزیل
آیا می توانیم از این الگوریتم برای قرار دادن تصویر خود در بازی استفاده کنیم؟
چه احساسی داشتید اگر می توانستید به جای الکس هانتر بازی کنید؟ تمام کاری که شما باید انجام دهید اینست که یک ویدیوی طولانی از خودتان بارگذاری کنید و مدل آموزش دیده را طی چند ساعت بارگیری کنید.
جمع بندی
بزرگترین مزیت این روش، ایجاد چهره های شگفت انگیزی است که تفکیک آن ها از واقعیت دشوار است. همه این ها تنها با چند ساعت آموزش قابل دستیابی است. در حالی که طراحان بازی سال ها برای رسیدن به آن وقت صرف کرده اند. این بدان معناست که ناشران بازی می توانند بازی های جدید را بسیار سریعتر انتشار دهند. همچنین استودیوها می توانند میلیون ها دلار پس انداز کرده و موجودی خود را برای استخدام داستان نویس ماهر به کار گیرند.
اما محدودیت بارز این است که این چهره ها در این روش مانند تصاویر تولید شده توسط رایانه برای فیلم ها (CGI) تولید می شوند، در حالی که بازی ها نیاز به تولید تصویر بی وقفه و در لحظه دارند. همچنین زمان مورد نیاز جهت تولید تصویر خروجی نیز در این روش زمان بر است.
با این وجود، یکی از مزایای بزرگ استفاده از دیپ لرنینگ در بازی های کامپیوتری در این است که پس از آموزش یک مدل، دیگر نیازی به مداخله انسانی برای ایجاد نتایج وجود ندارد.
در نتیجه اگر شخصی بدون داشتن تخصص گرافیکی بتواند تنها طی چند ساعت آموزش چنین فرایندی را عملی کند؛ قطعا توسعه دهندگان بازی ها می توانند با سرمایه گذاری در این راستا و به کارگیری افراد متخصص صنعت بازی ها کامپیوتری را متحول سازند.