تکامل عصبی

Neuroevolution یا تکامل عصبی، یک شکل از هوش مصنوعی است که با استفاده از الگوریتم‌های تکاملی برای تولید شبکه‌های عصبی مصنوعی (ANN)، پارامترهای، توپولوژی و قوانین استفاده می‌شود. این ماده معمولاً در زندگی مصنوعی، بازی عمومی و evolutionary robotics استفاده می‌شود. مزیت اصلی این است که تکامل عصبی می‌تواند به‌طور گسترده‌تری از الگوریتم‌های یادگیری تحت نظارت، که به برنامه از جفت‌های ورودی و خروجی صحیح نیاز دارند، استفاده شود. در مقابل ، تکامل عصبی فقط به اندازه‌گیری عملکرد شبکه در یک کار نیاز دارد. به عنوان مثال، نتیجه یک بازی (یعنی اینکه یک بازیکن برنده است یا باخته‌است) به راحتی قابل اندازه‌گیری است بدون ارائه نمونه‌هایی با برچسب از استراتژی‌های مورد نظر. تکامل عصبی معمولاً به عنوان بخشی از الگوی یادگیری تقویتی مورد استفاده قرار می‌گیرد و می‌توان آن را با تکنیک‌های متداول یادگیری عمیق که از نزول شیب دار در یک شبکه عصبی با توپولوژی ثابت استفاده می‌کنند ربط داد.

 امکانات 
تعداد زیادی از الگوریتم‌های تکامل عصبی تعریف شده‌اند. یک تفاوت عمده بین الگوریتم‌هایی است که فقط قدرت وزن اتصال را برای یک توپولوژی شبکه ثابت تکامل می‌دهند (که گاهی اوقات عصب کشی متعارف نامیده می‌شود)، در مقابل آنهایی که هم توپولوژی شبکه و هم وزن‌های آن را تکامل می‌دهند (TWEANNs نامیده می‌شوند، برای توپولوژی و وزن الگوریتم‌های شبکه عصبی مصنوعی در حال تکامل).

می‌توان بین روشهایی که ساختار ANNها را به موازات پارامترهای آن (که از الگوریتم‌های تکاملی استاندارد استفاده می‌کنند) و روشهایی که آنها را جداگانه توسعه می‌دهند (از طریق memetic algorithms)، تفاوت قائل شد.

 مقایسه با نزول شیب دار 
اکثر شبکه‌های عصبی به جای تکامل عصبی از نزولی شیب دار استفاده می‌کنند. با این حال، حدود سال ۲۰۱۷ محققان در Uber اظهار کردند که آنها الگوریتم‌های ساده تکامل عصبی ساختاری با الگوریتم‌های پیچیده یادگیری عمیق شیب نزول استاندارد صنعتی مدرن قابل رقابت هستند را پیدا کردند، به این دلیل که تکامل عصبی احتمال کمتری برای گیر افتادن در حداقل‌های محلی را دارد. در علوم پایه، روزنامه‌نگار متیو هاتسون حدس زد که بخشی از دلیل موفقیت تکامل عصبی در جایی که قبلاً شکست خورده بود، به دلیل افزایش قدرت محاسباتی موجود در سالهای ۲۰۱۰ است.

 رمزگذاری مستقیم و غیرمستقیم 
الگوریتم‌های تکاملی بر روی جمعیتی از ژنوتیپ‌ها (که به آنها ژنوم نیز گفته می‌شود) عمل می‌کنند. در تکامل عصبی، یک ژنوتیپ به یک فنوتیپ شبکه عصبی ترسیم می‌شود که برای بدست آوردن fitness آن در برخی از کارها ارزیابی می‌شود.

در طرح‌های رمزگذاری مستقیم، ژنوتیپ مستقیماً به فنوتیپ نگاشت می‌شود. یعنی هر نورون و ارتباط در شبکه عصبی به‌طور مستقیم و صریح در ژنوتیپ مشخص شده‌است. در مقابل، در طرح‌های رمزگذاری غیر مستقیم، ژنوتیپ به‌طور غیر مستقیم نحوه تولید آن شبکه را مشخص می‌کند.

رمزگذاری‌های غیر مستقیم غالباً برای دستیابی به چندین هدف استفاده می‌شوند:
 modularity and other regularities
 فشرده سازی فنوتیپ به ژنوتیپ کوچکتر، فضای جستجوی کمتری را فراهم می‌کند.
 نگاشت فضای جستجو (ژنوم) به دامنه مشکل.

 طبقه‌بندی embryogenic systems برای رمزگذاری غیر مستقیم 
رمزگذاری‌های غیرمستقیم سنتی که از embryogeny مصنوعی استفاده می‌کنند (که به عنوان embryogeny نیز شناخته می‌شود) در امتداد یک رویکرد دستوری در مقابل یک روش شیمی سلولی دسته‌بندی شده‌اند. مورد اول مجموعه قوانینی را در قالب سیستم‌های بازنویسی دستوری تکامل می‌بخشد. مورد دوم تلاش می‌کند تا از طریق بیان ژن، چگونگی ظهور ساختارهای فیزیکی در زیست‌شناسی را تقلید کند. سیستم‌های رمزگذاری غیر مستقیم غالباً از جنبه‌های هر دو روش استفاده می‌کنند.

استنلی و Miikkulainen طبقه‌بندی برای سیستم‌های embryogeny پیشنهاد می‌کنند که هدف آن بازتاب خواص زیربنایی آنها است. طبقه‌بندی پایین پنج بعد مداوم را مشخص می‌کند که می‌توان هر سیستم embryogeny را در آن قرار داد:
 سرنوشت سلول (نورون) : خصوصیات و نقش نهایی سلول در فنوتیپ بالغ. این بعد تعداد روشهایی را که برای تعیین سرنوشت سلول استفاده می‌شود، محاسبه می‌کند.
 هدف گذاری : روشی است که به وسیله آن اتصالات از سلولهای منبع به سلولهای هدف هدایت می‌شوند. این از هدف گذاری خاص (منبع و هدف مشخصاً مشخص شده) تا هدف‌گیری نسبی (مثلاً براساس مکان سلولها نسبت به یکدیگر) متغیر است.
 هتروکروونی : زمان‌بندی و ترتیب وقایع در طی جنین سازی. تعداد مکانیسم‌های تغییر زمان وقایع را می‌شمارد.
 کانال سازی : تحمل ژنوم نسبت به جهش‌ها (شکنندگی). از نیاز به دستورالعمل‌های دقیق ژنوتیپی گرفته تا تحمل بالای جهش نا دقیق.
 پیچیدگی : توانایی سیستم (شامل الگوریتم تکاملی و ژنوتیپ برای نقشه‌برداری فنوتیپ) برای اجازه دادن به پیچیده شدن ژنوم (و از این رو فنوتیپ) با گذشت زمان. از اجازه فقط به ژنومهایی با اندازه ثابت تا اجازه دادن به ژنومهایی با طول بسیار متغیر را در بر می‌گیرد.

 مثال‌ها 
روش رمزگذاری الگوریتم تکاملی جنبه‌ها تکامل یافتند تکامل ژنتیکی عصبی توسط E. رونالد، 1994 مستقیم الگوریتم ژنتیک وزن شبکه Cellular Encoding (CE) توسط F. Gruau، ۱۹۹۴ غیرمستقیم، جنین زا (درخت دستور زبان با استفاده از عبارات S) برنامه‌نویسی ژنتیکی ساختار و پارامترها (همزمان، پیچیدگی) GNARL توسط آنجلین و دیگران، 1994 مستقیم برنامه‌نویسی تکاملی ساختار و پارامترها (همزمان، پیچیدگی) EPNet توسط یائو و لیو، 1997 مستقیم برنامه‌نویسی تکاملی (همراه با تکثیر پس‌انداز و بازپخت شبیه‌سازی شده) ساختار و پارامترها (مختلط، پیچیدگی و ساده‌سازی) NeuroEvolution of Augmenting Topologies (NEAT) توسط استنلی و Miikkulainen، 2002 مستقیم الگوریتم ژنتیک. ژن‌هایی را با مارک‌های تاریخی ردیابی می‌کند که امکان عبور از بین توپولوژی‌های مختلف را فراهم می‌کند، از نوآوری از طریق گونه محافظت می‌کند. ساختار و پارامترها Hypercube-based NeuroEvolution of Augmenting Topologies (HyperNEAT) توسط استنلی، D'Ambrosio , Gauci، 2008 غیرمستقیم، غیر جنینی (الگوهای فضایی تولید شده توسط یک شبکه تولیدکننده الگوی ترکیبی (CPPN) در یک ابر مکعب به عنوان الگوهای اتصال در فضای بعدی پایین تعبیر می‌شوند) الگوریتم ژنتیک. از الگوریتم NEAT (بالا) برای تکامل CPPN استفاده می‌شود. پارامترها، ساختار ثابت (عملکرد کاملاً متصل) Evrovable Substrate Hypercube-based NeuroEvolution of Augmenting Topologies (ES-HyperNEAT) توسط Risi, Stanley 2012 غیرمستقیم، غیر جنینی (الگوهای فضایی تولید شده توسط یک شبکه تولیدکننده الگوی ترکیبی (CPPN) در یک ابر مکعب به عنوان الگوهای اتصال در فضای بعدی پایین تعبیر می‌شوند) الگوریتم ژنتیک. از الگوریتم NEAT (بالا) برای تکامل CPPN استفاده می‌شود. پارامترها و ساختار شبکه اکتساب تکاملی توپولوژی‌های عصبی (EANT / EANT2) توسط Kassahun و Sommer، 2005 / Siebel and Sommer، 2007 مستقیم و غیرمستقیم، بالقوه جنین زا (رمزگذاری ژنتیکی مشترک) برنامه‌نویسی تکاملی / استراتژی‌های تکامل ساختار و پارامترها (به‌طور جداگانه، پیچیدگی) Interactively Contrained Neuro-Evolution (ICONE) توسط Rempis، 2012 urn:nbn:de:gbv:700-2012101710370 مستقیم، شامل ماسک‌های محدود کننده برای محدود کردن جستجو به چندمنظوره توپولوژی / پارامتر خاص است. الگوریتم تکاملی. از ماسک‌های محدود کننده برای کاهش شدید فضای جستجو از طریق بهره‌برداری از دانش دامنه استفاده می‌کند. ساختار و پارامترها (جداگانه، پیچیدگی، تعاملی) Deus Ex Neural Network (DXNN) توسط Gene Sher، ۲۰۱۲ مستقیم / غیرمستقیم، شامل محدودیت‌ها، تنظیم محلی است، و امکان تکامل را برای ادغام سنسورها و محرک‌های جدید فراهم می‌کند. الگوریتم ممتیک. ساختار و پارامترهای شبکه را در مقیاس‌های زمانی مختلف تکامل می‌بخشد. ساختار و پارامترها (جداگانه، پیچیدگی، تعاملی) طیف متنوعی معماری تکامل عصبی متحد (SUNA) توسط Danilo Vasconcellos Vargas , Junichi Murata (بارگیری کد) Direct، نمایندگی عصبی یکپارچه را معرفی می‌کند (نمایش تلفیق بسیاری از ویژگی‌های شبکه عصبی از ادبیات). الگوریتم ژنتیک با سازوکاری برای حفظ تنوع به نام تنوع طیف که با اندازه کروموزوم مقیاس خوبی دارد، مسئله ای مستقل است و بیشتر تمرکز خود را بر کسب تنوع رفتارها / رویکردهای سطح بالا قرار می‌دهد. برای دستیابی به این تنوع، مفهوم طیف کروموزوم معرفی شده و همراه با یک نقشه جدید از جمعیت استفاده می‌شود. ساختار و پارامترها (مختلط، پیچیدگی و ساده‌سازی) Evolver مبتنی بر عامل مدولار (MABE) توسط کلیفورد بوم، آرند هینتزه و دیگران. (کد دانلود) رمزگذاری مستقیم یا غیرمستقیم شبکه‌های مارکوف، شبکه‌های عصبی، برنامه‌نویسی ژنتیکی و سایر کنترل‌کننده‌های دلخواه قابل تنظیم. الگوریتم‌های تکاملی، الگوریتم‌های برنامه‌نویسی ژنتیکی را فراهم می‌کند، و الگوریتم‌های سفارشی را همراه با مشخصات محدودیت‌های دلخواه امکان‌پذیر می‌کند. جنبه‌های قابل تکامل شامل مدل عصبی است و امکان تکامل ریخت‌شناسی و انتخاب جنسی را در بین دیگران فراهم می‌کند. سازگاری ماتریس کوواریانس با الگوریتم شبکه تطبیقی مرتب شده با حجم فوق‌العاده (CMA-HAGA) توسط شاهین رستمی و دیگران. مستقیم، شامل یک ویژگی آتاویسم است که صفات را از بین می‌برد و در نسل‌های مختلف دوباره ظاهر می‌شود. استراتژی تکامل چند هدفه با بیان ترجیحی (فرمان محاسباتی) ساختار، وزن و تعصبات

 جستارهای وابسته 
 یادگیری ماشین خودکار (AutoML)
 محاسبه تکاملی
 سازگاری ماتریس کوواریانس با الگوریتم شبکه تطبیقی مرتب شده با حجم فوق‌العاده (CMA-HAGA)
 NeuroEvolution از توپولوژی‌های افزوده (NEAT)
 نوژنز
 HyperNEAT (نسخه تولیدی NEAT)
 ES-HyperNEAT (نسخه عمومی NEAT که پارامترها و ساختار شبکه را تعیین می‌کند)
 اکتساب تکاملی توپولوژی‌های عصبی (EANT / EANT2)
 طیف متنوعی معماری تکامل عصبی متحد (SUNA)

 منابع 

 پیوند به بیرون 

  </ref> (دارای مقالات قابل دانلود دربارهٔ NEAT و برنامه‌ها)
  پروژه تکامل عصبی متن باز بالغ اجرا شده در C # /. Net.
 ANNEvolve یک پروژه تحقیقاتی AI با منبع باز است (کد منبع قابل بارگیری در C و Python همراه با آموزش و نوشتارها و تصاویر مختلف)
  </ref> صفحه وب در مورد یادگیری تکاملی با EANT / EANT2] (اطلاعات و مقالات در مورد EANT / EANT2 با برنامه‌هایی برای یادگیری ربات)
 جعبه ابزار NERD. جعبه ابزار Neurodynamics and Evolutionary Robots. یک مجموعه نرم‌افزار منبع باز رایگان و رایگان برای آزمایش‌های مختلف در زمینه کنترل عصبی و تکامل عصبی. شامل یک شبیه‌ساز قابل نوشتن، چندین الگوریتم تکامل عصبی (به عنوان مثال) ICONE)، پشتیبانی خوشه، طراحی و تجزیه و تحلیل شبکه بصری.
  کد منبع برای سیستم عصبی تکاملی DXNN.

رده:شبکه‌های عصبی مصنوعی
رده:الگوریتم‌های فرگشتی