تحقق هوش پایهمحور در شبکههای عصبی هوش مصنوعی
فعلاً ادعای من این است که هوش پایهمحور میآید. عدهای میگویند نمیآید. چند جلسه قبل عرض کردم الآن در همین شبکههای عصبی، زبانهای برنامهنویسی که تغییر نکرده. مثلاً این زبان پایتون (Python) کتابخانههای مفصلی دارد؛ برای نوشتن شبکههای عصبی؛ کتابخانههای آماده را به کار میگیرید و با آن برنامهنویسی میکنید برای روال پیوندگرائی و شبکههای عصبی.
زبان پایتون که تفسیری (interpretative) است و زبانهایی هم که کمپایل میشوند؛ «Compiled Languages»؛ همه آنها به این صورت هستند. چون زبان، کتابخانههای نوشتن شبکههای عصبی را دارد، معنایش این نیست که دیگر تمام شد و هوش آمد! نه، نرمافزارهای امروز ما، روی سختافزار اجراء میشود. و لذا همین پایتونی که این همه کتابخانههای شبکههای عصبی را دارد، شما مجبور هستید کد زبان سطح بالا را، اول به زبان سطح پایینتر تبدیل کنید –مثلاً اسمبلی- بعد از اسمبلی، آن را به زبان سطح ماشین ببرید، که در زبان ماشین به همین اتاق چینی و ماشین تورینگ بر میگردید. یعنی با این چیزهایی که الآن داریم، باز در سطح زبان ماشین، باحثین شکی ندارند که در کاری که در سطح زبان ماشین انجام میشود، هیچ آگاهیای نیست. خُب پس وقتی شما شبکه عصبی را برنامهنویسی میکنید و با رویکرد پیوندگرائی میگویید هوش هم میآید، کجا میآید؟
جلسه قبل بیت را گفتم و بعد هم گفتم ترتیت؛ اینها انواعی از کار بود. یکی هم کیوبیت بود. الآن نرمافزارهایی که داریم هیچکدام خودش نمیتواند در اثر خواندن بیت، تغییرش بدهد. یعنی نرمافزار از حیثی که نرمافزار است، تنها اطلاعات و بیت را میخواند و تنها «Reader» آنها است. خُب میگویید ما که ذخیره (Save) میکنیم و هاردمان را تغییر میدهیم، پس چطور شد؟! ما که داریم در دیسک مغناطیسی، بیتها را تغییر میدهیم؛ حذف میکنیم و اضافه میکنیم؟! وقتی شما در دیسکهای مغناطیسی چیزی را حذف میکنید و تغییر میدهید، نرمافزار آن را تغییر نمیدهد، بلکه سختافزار و آن هد (head) است که در دیسک میآید و آن را تغییر میدهد. مثلاً CD هایی که رام (ROM) است؛ «Compact Disc Read-Only Memory»؛ تنها یک بار لیزر میزند و تمام. اما CD یا DVDهایی که میتوانند دوباره پاک شوند و دوباره نوشته شوند، سختافزار، آن را پاک میکند و سختافزار آن را دوباره مینویسد؛ ولو به فرمان نرمافزار است. اینکه خود نرمافزار به دل سختافزار برود و سختافزار را تغییر بدهد، نداریم. الآن همه دستگاههای دیجیتال به این صورت است که سختافزار مینویسد. اما در کیوبیت - که البته باید ببینیم بعداً به کجا میٰسد - از خصوصیاتش همین است؛ همین که اطلاعات یک بیت را میخوانید، تغییر کرده است. اصلاً قوام کیوبیت به این است که همین که خواندید، تغییر میکند. چون قواعد کوانتوم این را میگوید که وقتی شما آن را بخوانید، دیگر بیت قبلی نیست، تغییر کرده است و خود نفس خواندن، کیوبیت را تغییر میدهد. حالا بعداً با این کارها که شما با نفس نرمافزار، سختافزارها را تغییر بدهید و بتوانید آنها را کنترل کنید و اینکه از خود نرمافزار متن سختافزار تغییر کند و اینکه چه آثاری دارد، ممکن است بعداً بحثش بیاید. این را برای چه گفتم؟ برای اینکه فعلاً ما چارهای از زبان ماشین نداریم. یعنی زبانی که باید توسط سختافزار -مثل ماشین تورینگ و اتاق چینی- بیتها را تغییر بدهید و دستکاری کنید. در چنین فضایی ما از آنچه که در واقعیت فیزیکی ماشین دارد رخ میدهد، آگاهی نداریم و هیچ کسی هم در اذعان به اینکه چنین وضعیتی داریم، مشکلی ندارد. پس الآن چرا میگویند وقتی شبکههای عصبی را جلو رفتیم، با اینکه کامپیوترهای کوانتومی و DNA نیامده، ما به هوش میرسیم؟ حرف آنها معنایی ندارد جز اینکه هوش پایهمحور را تصور کنیم.
یک هوشی داریم که نرمافزار تنها معدّ این است که برنامهنویس در سطح بالا معانی را درک کند؛ در این مشکلی نداریم و نمیخواهیم بگوییم کامپیوتر معدّ باشد تا برنامهنویس یک معنایای را درک کند. منظور من آن نیست، بلکه خود ماشین منظور است که مثلاً وقتی با پایتون، شبکه عصبی درست کردید، خودش الآن دارد میفهمد و آگاه است که من چه کسی هستم، کجا هستم و دارم چه کار میکنم. آیا چنین چیزی میشود یا نمیشود؟ عدهای از اهل فن شمارهاش را هم تعیین کردهاند و گفتهاند شلیکهای دو طرف نورون –دندریت (Dendrite) و آکسون (Axon)- و این رابطههایی که بین نورونها هست کم است، اگر ما بتوانیم کاری کنیم تا در ماشین به سطح و اندازهای برسیم که خدای متعال در دماغ بشر قرار داده و لحظه به لحظه این پردازشها را انجام میدهد، امکانش هست. خُب درست است که الآن زبان ماشین آگاهی ندارد، اما در سطحی از نرمافزارِ خود ماشین -که دیگر سطح فیزیکی نیست، اما سطحی برای خود ماشین است، نه بیرون از ماشین و برنامهنویس معدّ نشده تا آن، معنایی را درک کند، بلکه خود ماشین در مجموع اعمالی که دربطونش صورت میگیرد، پردازشاش به قدری بالا و سریع و وسیع است که مجموع این پردازشها برای ماشین یک آگاهی است - آگاهیای تصویر میشود؛ این را گفتهاند.
خُب حالا این درست است یا نه؟ من دارم این را فقط نقل میکنم، ولی اول تصور کنیم که چه میگویند و قبل از تصور آن را رد نکنیم. آنها در مبنای فیزیکالیسمی که برای مغز قائل هستند و در جلسات قبل به آن اشاره شد، میگویند مغز ما این است که درحال میلیاردها پردازش است و به مجموع این کارهایی که در مغز انجام میشود، «من» میگوییم. میگوید من میفهمم، آگاهم. شما بخواهید هر کجایش را دستکاری کنید و بخشی را از او بگیرید، به هم میریزد. ادعای آنها به این صورت است. بنابراین مانعی ندارد حتی بر مبنای کامپیوترهای بیتمحور که امروزه داریم، ولو در سطح ماشین، آگاهی نداریم، اما طوری برنامهنویسی و سرعت پردازش را بالا ببریم و شبکه عصبی را شبیهسازی کنیم که خود ماشین در لایه نرمافزاری خودش صاحب یک بستر وسیعی از پردازشها باشد که دیگر صرفاً نمادین عمل نمیکند، بلکه برخوردار از یک فهم است و زیرنمادی دارد که مبنای آموزش ماشین هم همین است.
شاگرد: مقصودتان از پایهمحور این بود؟ چون فرمودید چیزی است که اختلافی نیست.
استاد: نه. پایهمحوری که من عرض میکنم را ندیدهام که آنها بگویند. من میخواهم بگویم اگر این پیشرفتها را تصور کنیم، اصلاً آن هوش پایهمحور را انکار نمیکنیم. یعنی عدهای میگویند نمیشود و محال است، اما اگر این چیزی که من درباره هوش پایهمحور عرض میکنم تصور شود، اصلاً در پیشرفت اینها مشکلی ندارید و مدام گیر نمیکنید. یک فضای روشنی است که حتی با زبانهای ماشینی که امروزه به آنها نیاز است، شما میتوانید زبان سطح بالایی را بنویسید که در این زبان سطح بالا، در یک لایهای از فهم،در آن و لحظهای که همه این پردازشها در این ربات صورت میگیرد، یک چیزی دارد که آن را میبینید و حس میکنید که آگاهی پایهمحور است، نه صرفاً رفتار هوشمندانه.
فعلاً این تقسیمبندی و حرفهایی که زده شده، تا ان شاء الله بعداً تفصیلش را ببینیم.