واسط مغز-کامپیوتر و الگوریتم های یادگیری عمیق


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

با انفجار عظیم فناوری در چند دهه اخیر، مرز بین انسان و ماشین باریک‌تر شده است. مرزهای این روش‌های جدید، واسط مغز-کامپیوتر (BCI) و هوش مصنوعی (AI) است. پارادایم‌های تجربی برای BCI و AI معمولاً مستقل از یکدیگر توسعه یافته و اعمال می‌شوند. با این حال اکنون دانشمندان ترجیح می‌دهند BCI و AI را ترکیب کنند که استفاده موثر از سیگنال‌های الکتریکی مغز برای مانور دادن دستگاه‌های خارجی ممکن می‌کند.

واسط مغز-کامپیوتر (BCI)

واسط مغز-کامپیوتر (BCI) که گاهی اوقات واسط عصبی مستقیم یا واسط مغز-کامپیوتر (BMI) نامیده می‌شوند. آن تکنولوژی است که به مغز انسان و یک دستگاه خارجی اجازه می‌دهد با یکدیگر صحبت کنند و سیگنال‌ها را مبادله کنند. این روند، توانایی به انسان می‌دهد تا مستقیماً ماشین‌ها را بدون محدودیت‌های فیزیکی کنترل کند. بنابراین آن دستگاهی است که اطلاعات عصبی را به دستوراتی تبدیل می‍کند که قادر به کنترل نرم افزار یا سخت افزار خارجی مانند کامپیوتر یا بازوی رباتیک است. BCIها اغلب به عنوان وسایل کمکی برای زندگی افراد دارای اختلالات حرکتی یا حسی استفاده می‌شوند.

Motor Imagery BCI

ارتباط بین مغز و BCI یک پیوند دو طرفه است (یک واسط دوطرفه). یک جهت شامل BCIای است که فعالیت مغز را به کامپیوتر می‌فرستد و کامپیوتر، فعالیت مغز را به دستورات حرکتی به نام Passive BCI تبدیل می‌کند. ارتباط همچنین ممکن است در جهت دیگری اتفاق بیفتد-جایی که کامپیوتر، اطلاعات را مستقیماً به مغز کاربر می‌فرستد. این Active BCI است.

واسط مغز-کامپیوتر (BCI) چطور کار می‌کند؟

مغز انسان مملو از سلول‌هایی است که نورون نامیده می‌شود. هر بار که فکر می‌کنیم، حرکت می‌کنیم، احساس می‌کنیم یا چیزی را به یاد می‌آوریم، این نورون‌ها در کار هستند و اطلاعات را به شکل سیگنال‌های بیوشیمیایی و الکترویکی از یک قسمت بدن به قسمت دیگر منتقل می‌کنند. این سیگنال‌های الکتریکی گاهی با حداکثر سرعت 150 متر بر ثانیه حرکت می‌کنند. مسیر سیگنال عمدتاً عایق است اما برخی از سیگنال‌ها از این عایق فرار می‌کنند. این سیگنال‌های الکتریکی فراری همان چیزی هستند که دستگاه‌های BCI سعی می‌کنند با استفاده از الکتروانسفالوگرافی (EEG) شناسایی و تفسیر کنند. EEG می‌تواند سیگنال‌های مغز انسان را بخواند و به تقویت کننده‌ها بفرستد. سپس سیگنال‌های تقویت شده توسط یک برنامه‌ی کامپیوتری BCI تفسیر می‌شوند که از سیگنال‌ها برای کنترل یک دستگاه استفاده می‌کند.

چرا BCI مهم است؟

به گفته‌ی Davide Valeriani، محقق فوق دکترا در واسط‌های مغز-کامپیوتر در دانشگاه Essex «ترکیب انسان و فناوری می‌تواند قدرتمندتر از هوش مصنوعی شود. برای مثال، هنگامی که ما بر اساس ترکیبی از ادراک و استدلال تصمیم گیری می‌کنیم، فناوری‌های عصبی می‌توانند برای بهبود درک ما استفاده شوند. این می‌تواند در موقعیت‌هایی مانند دیدن یک تصویر بسیار تار از دوربین امنیتی و تصمیم گیری در مورد مداخله یا عدم مداخله به ما کمک می‌کند.»

انواع واسط مغز-کامپیوتر (BCI)

سه نوع BCI بر اساس الکترودهای مورد استفاده برای سنجش فعالیت مغز وجود دارند. آنها تهاجمی، نیمه تهاجمی و غیرتهاجمی هستند.

1-BCI تهاجمی

 

Invasive BCI

 

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

2-BCI نیمه تهاجمی

دستگاه‌های BCI نیمه تهاجمی در داخل جمجمه کاشته می‌شوند اما در خارج از مغز قرار می‌گیرند نه در ماده‌ی خاکستری. آن سیگنال‌ها، وضوح بهتری نسبت به BCIهای غیرتهاجمی تولید می‌کنند که در آن بافت استخوانی جمجمه، سیگنال‌ها را منحرف می‌کنند و تغییرشکل می‌دهد. به این ترتیب خطر کمتری برای تشکیل بافت اسکار در مغز نسبت به BCIهای کاملاً تهاجمی دارد.

الکتروکورتیکوگرافی (ECoG)، فعالیت الکتریکی مغز از زیرجمجمه به روشی مشابه با الکتروانسفالوگرافی غیرتهاجمی گرفته می‌شود اما الکترودها در یک پد پلاستیکی نازک در بالای قشر قرار می‌گیرند.

3-BCI غیرتهاجمی

 

Non Invasive BCI

 

ساده‌ترین و کم تهاجمی‌ترین روش اکتساب سیگنال، مجموعه‌ای از الکترودهاست و این دستگاه به عنوان الکتروانسفالوگراف شناخته می‌شود (EEG) و روش‌های دیگر MEG (مگنتوانسفالوگرافی) هستند. الکترودها می‌توانند سیگنال‌های مغزی را بخوانند. صرف نظر از محل قرارگیری الکترودها، مکانیسم اصلی یکسان است: الکترودها تفاوت‌های دقیقه‌ای در ولتاژ بین نورون‌ها را محاسبه می‌کنند. سپس سیگنال تقویت شده و فیلتر می‌شود. در سیستم‌های BCI موجود، سپس سیگنال توسط یک برنامه‌ی کامپیوتری تفسیر می‌شود.

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

 

EEG

اجزای یک سیستم واسط مغز-کامپیوتر (BCI)

 

Components of BCI

 

 

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

تولید سیگنال

دو راه برای تولید این سیگنال‌های مغزی وجود دارد:

این سیگنال‌ها را می‌توان با ارائه محرک به سابجکت تولید کرد و یا اینکه سابجکت این حرکات را تصور کند.

حال تنها کاری که باید کرد این است که امواج مغزی که قبلاً توسط سابجکت ایجاد شده‌اند را بخوانیم.

تشخیص سیگنال

روش‌های مختلفی برای تشخیص سیگنال‌های مغزی وجود دارد. شناخته شده‌ترین آنها EEG, FMRI هستند اما موارد دیگری نیز وجود دارند. EEG فعالیت الکتریکی مغز را اندازه گیری می‌کند FMRI فعالیت مغز را با تشخیص تغییرات مربوط به جریان خون در مغز اندازه گیری می‌کند.

هر یک از این روش‌ها مزایا و معایب خود را دارند. برخی از آنها رزولوشن زمانی بهتری دارند و برخی رزولوشن مکانی بهتری دارند.

پردازش سیگنال

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

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

هدایت سیگنال

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

یادگیری عمیق و به طور کلی هوش مصنوعی چطور به رابط مغز-کامپیوتر (BCI) کمک می‌کند؟

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

درک فعالیت مغزی که از نورون‌هایی که با یکدیگر صحبت می‌کنند از طریق جمجمه و از مسیر پوست سر و به سختی در حسگر EEG منتشر می‌شوند دشوار است. به طور کلی، داده‌های EEG بسیار نویزی هستند، به این معنا که دریافت سیگنال واضح بسیار دشوار است. بنابراین تقطیر داده‌ها از سیگنال‌های مغزی نویزی و ساخت یک سیستم BCI قوی که در موقعیت‌های مختلف کارایی داشته باشد بسیار مهم است.

علاوه بر این، BCI به دلیل ماهیت غیرثابت بودن (non-stationary) سیگنال‌های الکتروفیزیولوژیکی مغز، SNR پایینی دارد.

در طبقه‌بندی داده‌های الکتروانسفالوگرافی (EEG) در BCI به تعداد کانال‌های اندازه گیری، میزان داده‌های مورد استفاده برای آموزش کلاسبند و نسبت سیگنال به نویز (SNR) بستگی دارد. از بین اینها، تنظیم SNR در کاربردهای دنیای واقعی بسیار دشوار است. اگرچه چندین روش پیش پردازش و مهندسی ویژگی برای کاهش سطح نویز توسعه داده شده است، چنین روش‌هایی (به عنوان مثال انتخاب ویژگی و استخراج هم در حوزه‌ی زمان و هم در حوزه‌ی فرکانس) زمانبر هستند و ممکن است باعث از دست رفتن اطلاعات در ویژگی‌های استخراج شده، شوند.

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

هوش مصنوعی به ویژگی الگوریتم‌های یادگیری عمیق، گزینه بهتری برای استخراج خودکار ویژگی‌های متمایز ارائه می‌دهند.

علاوه بر این، اکثر تحقیقات فعلی هوش مصنوعی بر روی داده‌های ثابت تمرکز می‌کنند و بنابراین نمی‌توانند سیگنال‌های مغزی که به سرعت در حال تغییر هستند را با دقت طبقه بندی کنند. به طور کلی به روش‌های یادگیری جدید نیاز است تا بتوان با جریان‌ها‌ی داده‌های دینامیکی در سیستم‌های BCI مقابله کرد.

تا به حال، یادگیری عمیق به طور گسترده در برنامه‌های کاربردی BCI به کار گرفته شده است و در رسیدگی به چالش‌ ها موفق عمل کرده است.

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

در نهایت نشان داده شده است که الگوریتم‌های یادگیری عمیق نسبت به کلاسبندهای سنتی مانند ماشین بردار پشتیبان (SVM) و LDA قدرتمندتر هستند. این یافته، منطقی است زیرا تقریباً تمام مسائل BCI را می‌توان یک مسئله کلاسبندی در نظر گرفت.

الگوریتم‌های یادگیری عمیق مورد استفاده در BCI

CNN محبوب‌ترین مدل یادگیری عمیق در تحقیقات BCI است که می‌تواند از وابستگی‌های مکانی نهان در سیگنال‌های مغزی EEG, fMRI استفاده شود. CNN در برخی از زمینه‌های تحقیقاتی به موفقیت زیادی دست یافته است که آن را به شدت «مقیاس پذیر» و «امکان پذیر» کرده است. بنابراین محققان BCI شانس بیشتری برای درک و استفاده از CNN در آثار خود دارند.

 

CNN for BCI

 

تصویر فوق، پیاده سازی مدل آبشاری CNN-GRU/LSTM مطابق با داده‌های EEG است.

مش بندی اولین گام در تبدیل سیگنال‌های EEG چند کاناله به دنباله‌ای از تصاویر دوبعدی است. سری‌های زمانی مش دو بعدی از لایه‌های CNN  و RNN عبور می‎کنند تا بتوان آنها را آموزش، اعتبارسنجی و تست کرد.

مدل‌های یادگیری عمیق مولد (Generative deep learning) برای تولید نمونه‌های آموزش یا افزایش داده (data augmentation) استفاده می‌شوند. به عبارت دیگر، مدل‌های یادگیری عمیق مولد، نقش حمایتی در حوزه‌ی BCI بازی می‎کنند تا کیفیت و کمیت داده‌های آموزشی را افزایش دهند. در حوزه‌ی BCI، الگوریتم‌های مولد به طور گسترده در بازسازی یا تولید دسته‌ای از نمونه‌های سیگنال استفاده می‎‌شوند تا مجموعه‎ ی آموزشی بهبود یابد. مدل‌های مولد که معمولاً در BCI مورد استفاده قرار می‌گیرند شامل رمزگذار خودکار متغیر (VAE) و شبکه‌های مولد تخاصمی (GAN) هستند.

شبکه‌های باور عمیق (DBN) نیز در BCI برای استخراج ویژگی استفاده می‌شوند. حتی اگر تعداد فزاینده‌ای از مجلات بر اتخاذ مدل‌های CNN یا ترکیبی از یادگیری ویژگی و کلاسبندی تمرکز کرده باشند.

RNN و CNN به ترتیب توانایی استخراج ویژگی‌های زمانی و مکانی عالی از سیگنال‌های مغزی را دارند، طبیعی است که برای یادگیری هر دو نوع ویژگی زمانی و مکانی آنها را با هم ترکیب کنیم.

 


دیدگاه ها

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

code