[ad_1]
چرا رایانه ها نمی توانند با تغییر زبان خود هوشمندتر شوند (2/2)
برچسب ها: #AI ، # کامپیوتر ، # پنجره Ted
(تد چانگ ، نیویورکر)
برای توسعه نرم افزار رایانه ای ، به برنامه ای به نام کامپایلر نیاز دارید. کامپایلرها کد منبع نوشته شده توسط انسان مانند C را به برنامه های اجرایی تبدیل می کنند که کامپیوتر می تواند آنها را درک کند. فرض کنید شما کامپایلر C را که استفاده می کنید دوست ندارید. (بیایید این کامپایلر را CompilerZero بنامیم.) با CompilerZero ، تبدیل کد منبع شما به یک برنامه اجرایی خیلی طولانی می شود و در نتیجه ، مدت زمان طولانی برای شروع برنامه کامپایلر طول می کشد. شما فکر می کنید می توانید کامپایلر بهتری ایجاد کنید و یک کامپایلر کارآمد و بهینه سازی کنید.
شما کامپایلر بهینه شده را در C نوشتید ، بنابراین کد منبع را با Compiler Zero به یک برنامه قابل اجرا تبدیل کردید. بیایید این برنامه را کامپایلر یک بنامیم. اگر کد منبع دیگری را با این کامپایلری که نوشتید کامپایل کنید ، نتیجه برنامه ای است که سریعتر اجرا می شود. مسئله این است که کامپایلر یک خود برنامه ای است که با کامپایلر صفر کامپایل شده است ، بنابراین اجرای آن مدت زمان زیادی طول می کشد. پس چه کاری باید انجام دهم؟
این کد منبع را ایجاد می کند که Compiler One را با Compiler One ایجاد کرده است. بگذارید بگوییم کامپایلر ساخته شده به این روش Compiler2 نام دارد. زمان اجرای خود Compiler2 کوتاه شده است و برنامه کامپایلر اختصاصی آن نیز دارای ویژگی هایی است که سریعتر اجرا می شوند. بیا دیگه! شما یک برنامه کامپیوتری خود بهبود بخشیده اید!
اما این همه برای پیشرفت است. حال ، حتی اگر کد کامپایلر اصلی با Compiler2 کامپایل شود ، فقط یک Compiler2 دیگر ایجاد می شود. از این طریق ساخت یک کامپایلر سریعتر 3 غیرممکن است. برای ایجاد یک کامپایلر که برنامه ها را سریعتر از آنچه اکنون است کامپایل می کند ، باید راه دیگری پیدا کنیم.
این روش خود تلفیقی با کامپایلر روشی به نام bootstrap است که از دهه 1960 وجود دارد. بهینه سازی کامپایلر سابقه طولانی دارد و بوت استرپ نیز در بهبود عملکرد کامپایلر نقش زیادی دارد. با این حال ، بیشترین پیشرفت توسط برنامه نویسان انسانی و نه bootstrap انجام شد. البته ، کامپایلر برنامه ای است که کاملاً متفاوت از برنامه هوش مصنوعی است ، اما در منطق رشد هوش انفجاری یک نمونه است ، زیرا حداقل برنامه ای است که نتیجه آن برنامه دیگری است ، زیرا برای مهمترین هدف بهینه سازی. شما می توانید آن را مانند فکر کنید.
هرچه هدف برنامه را بهتر بدانیم ، می توانیم آن را بهینه کنیم. توسعه دهندگان اغلب خود قسمت هایی از یک برنامه را بهینه می کنند ، این امکان وجود دارد زیرا برنامه بهتر از کامپایلر می داند که چه کاری انجام دهد. کامپایلرهایی که بهترین بهینه سازی را انجام می دهند ، آنهایی هستند که به یک زبان خاص دامنه نوشته شده اند ، که یک زبان بهینه شده برای یک منطقه خاص است. به عنوان مثال ، زبانی به نام Halide وجود دارد که در برنامه های پردازش تصویر تخصص دارد. از آنجا که کامپایلر Halide فقط در یک منطقه خاص در دسترس است ، گاهی نتایج خوبی یا بهتر از انسان می دهد. با این وجود ، از آنجا که کامپایلر Harleed برای پردازش تصویر بهینه شده است ، توانایی ایجاد برنامه کامپایلر را ندارد ، بنابراین نمی تواند خودش کامپایل کند. برای ساخت یک کامپایلر به یک زبان عمومی نیاز است ، اما یک کامپایلر با هدف کلی کمتر از یک توسعه دهنده انسانی توانایی بهینه سازی دارد.
کامپایلرهای جهانی می توانند هر برنامه ای را کامپایل کنند. وقتی کد منبع برنامه ویرایش متن را وارد می کنید ، برنامه ویرایش متن ظاهر می شود. وقتی کد منبع پخش کننده MP3 را وارد می کنید ، پخش کننده MP3 خارج می شود. مانند مرورگرهای وب که در دهه 1990 ظهور کردند ، حتی اگر برخی از توسعه دهندگان کد منبع را بر روی یک برنامه کاملاً جدید قرار دهند که هنوز نمی دانیم ، این کامپایلر با کاربرد عمومی این برنامه جدید را ایجاد می کند. به عبارت دیگر ، کامپایلر را نمی توان هوش مصنوعی نامید ، اما حداقل ارتباطی با انسان دارد. یعنی می تواند به ورودی هایی که برای اولین بار می بینید پاسخ دهد.
بیایید این را با برنامه های هوش مصنوعی امروز مقایسه کنیم. به عنوان مثال ، هوش مصنوعی را در نظر بگیرید که بازی شطرنج را انجام می دهد. شطرنج ورودی و خروجی ثابت دارد و بهینه سازی آن برای یک هدف بسیار آسان است. برنامه های هوش مصنوعی که به آزمونها پاسخ می دهند نیز همین است. چندین برنامه هوش مصنوعی وجود دارد که می توانند انواع مختلفی از بازی ها را انجام دهند ، اما هنوز هم فضای نسبتاً کمی برای بازی دارند. برعکس ، تصور کنید که شما نیاز به ایجاد یک برنامه هوش مصنوعی دارید که نمی داند چه ورودی داده می شود یا به چه پاسخ صحیحی نیاز است. ما نمی دانیم که این برنامه را برای چه چیزی بهینه کنیم ، بنابراین بهینه سازی نحوه کار این برنامه هرگز آسان نخواهد بود.
چقدر می توانید برای یک برنامه با هدف عمومی مانند این بهینه سازی کنید؟ تا حدی ممکن است بتوانید برای هر موقعیت ممکن ، از جمله موقعیت هایی که هرگز مواجه نشده اید ، بهینه سازی کنید. ایده “افزایش انفجاری هوش ماشین” حاکی از آن است که هیچ محدودیتی در این بهینه سازی وجود ندارد. این یک استدلال بسیار محکم است. برای اصرار بر بهینه سازی بی پایان چنین برنامه هایی با اهداف عمومی ، لازم است مبانی دیگری غیر از مثالی که برای یک کار خاص بهینه شده است ، استخراج شود.
البته هیچ یک از گفته های من بیانگر این نیست که انفجار هوش ماشین غیرممکن است. در حقیقت ، من شک دارم که چنین اثباتی امکان پذیر باشد. این دلیل بر غیرممکن بودن چیزی نیست. این س ofال است که توجیه درست هر اعتقادی چیست. منتقدان اثبات هستی شناختی آنشم ثابت نکرده اند که خدایی وجود ندارد. آنها گفتند که اثبات آنشم دلیل موجهی برای اعتقاد به وجود خدا نمی آورد. به عبارت دیگر ، فقط به این دلیل که “ماشین های فوق هوشمند” را اینگونه تعریف می کنیم ، نمی توان گفت که می توانیم چنین ماشین هایی را بسازیم.
——
مواردی وجود دارد که تولید خود بازگشتی در واقع تأثیر دارد. وقت آن است که کل تمدن بشریت را بطور کامل ببینیم. این با هوش همه متفاوت است. هیچ دلیلی ندارد که افراد متولد 10 هزار سال پیش از نظر هوشی با افراد امروزی متفاوت باشند. آنها توانایی های تقریباً مشابه امروز ما را دارند. اما ما 10 هزار سال پیشرفت فن آوری داریم و در این فناوری هم چیزهای فکری و هم فیزیکی وجود دارد.
بیایید اعداد عربی و رومی را با هم مقایسه کنیم. اعداد عربی با علامت گذاری به عنوان موقعیت ها ، خیلی راحت تر ضرب و تقسیم می شوند. اگر در یک مسابقه ضرب شرکت کنید ، استفاده از اعداد عربی سودآورتر خواهد بود. من نمی گویم شخصی که از اعداد عربی استفاده می کند باهوش تر از شخصی است که از اعداد رومی استفاده می کند. به همین معنا ، هنگام محکم بستن پیچ ، فرد دارای آچار بهتر از فرد با پنس محکم می شود ، اما این به معنای قوی تر بودن فرد آچار نیست. برای اینکه بفهمید چه کسی قویتر است ، باید با همان ابزارها رقابت کنید. ابزارهای شناختی مانند اعداد عربی مزایای مشابهی دارند. برای مقایسه هوش افراد ، شما باید ابزار مشابهی داشته باشید.
ابزارهای ساده به شما امکان می دهد ابزار پیچیده ای ایجاد کنید. این مورد همچنین در مورد ابزارهای شناختی اعمال می شود نه ابزارهای فیزیکی. هزاران سال است که انسانها ابزارهایی مانند حسابداری دوبار ورود به سیستم و سیستم مختصات مسطح را تولید می کنند. به عبارت دیگر ، اگرچه خود انسانها از هوش بالاتری برخوردار نیستند ، اما با قدرت این ابزارهای شناختی ابزارهای قدرتمندتری ایجاد می کنیم.
به این ترتیب ، توسعه خود بازگشتی نه در سطح فردی ، بلکه در سطح تمدن بشری به طور کلی صورت می گیرد. سخت است که بگوییم نیوتن حساب را اختراع کرد و سپس هوشمندتر شد. او باید از ابتدا به اندازه کافی هوشمند باشد تا محاسبه را ابداع کند. حساب به او این امکان را می دهد تا مشکلاتی را که قبلاً حل نکرده است حل کند ، اما خودش هم حل نمی کند و بقیه بشریت از حساب زیاد بهره می برند. افراد بعد از نیوتن از دو روش اصلی از محاسبات بهره مند شدند. اول ، دستاوردهای کوتاه مدت به ما امکان حل مشکلاتی را می دهند که قبل از نیوتن حل نمی شدند. دیگر این که مهارتهای ریاضی قوی تری را بر اساس این محاسبه به عنوان سود طولانی مدت توسعه دهیم.
توانایی افراد در ساختن دستاوردهای جدید علاوه بر دستاوردهای دیگران ، دلیل این است که من اعتقاد ندارم که یک برنامه هوش مصنوعی با همان توانایی های انسان فقط با کار 100 ساله به تنهایی به نتایج بزرگی منجر می شود. حتی هر دانش آموز می تواند به تنهایی به کشف بزرگی دست یابد ، اما موفقیت های او در اینجا متوقف می شود. بشر با الهام از دستاوردهای دیگران ، دستاوردهای جدیدی ایجاد کرده است. حتی لازم نیست مستقیماً همکاری کنید. این زمینه هرچه باشد ، نتایج جدیدی حاصل می شود که افراد زیادی در آن غوطه ور شوند.
بیایید نمونه ای از DNA را بررسی کنیم. جیمز واتسون و فرانسیس کریک پس از کشف DNA در سال 1953 برای دهه ها تحقیقات خود را ادامه دادند ، اما پیشرفت تحصیلی بعدی از آنها نبود بلکه از طرف دیگران انجام شد. دیگران تکنیک های تعیین توالی DNA را توسعه داده اند. فناوری PCR که ترکیبی از DNA را ممکن ساخته است توسط دیگران ساخته شده است. این موردی نیست که توسط واتسون و کریک نادیده گرفته شود. فقط اینکه حتی اگر معادل هوش مصنوعی واتسون و کریک را داشته باشیم و 100 برابر سریعتر از انسان آن را اجرا کنیم ، نمی توانیم انتظار نتایج مطلوبی از زیست شناسان مولکولی که DNA را در سراسر جهان مطالعه می کنند ، داشته باشیم. نوآوری به صورت جداگانه اتفاق نمی افتد. دانشمندان از کار دانشمندان دیگر الهام می گیرند.
سرعت نوآوری حتی بدون ظهور ماشین های هوش مصنوعی که خود هوش مصنوعی ایجاد می کنند ، سرعت بیشتری خواهد گرفت و در آینده نیز ادامه خواهد داشت. برخی ممکن است این پدیده را انفجار هوش بنامند ، اما من فکر می کنم درست تر است که آن را انفجار فناوری ، از جمله مهارت های شناختی و جسمی بنامیم. سخت افزار و نرم افزار رایانه آخرین فن آوری های شناختی هستند و به اندازه کافی قدرتمند هستند اما به اندازه کافی قدرت ندارند که به خودی خود باعث انفجار فناوری شوند. شما برای انجام این کار به افراد نیاز دارید و هرچه تعداد افراد بیشتری داشته باشید ، بهتر است. تهیه یک فرد هوشمند با سخت افزار و نرم افزار بهتر کمک خواهد کرد ، اما نوآوری واقعی زمانی حاصل می شود که همه آن را داشته باشند. انفجار فناوری که امروز تجربه می کنیم به دلیل استفاده میلیاردها نفر از این ابزار شناختی است.
——
بنابراین ، آیا یک برنامه هوش مصنوعی می تواند به نمایندگی از افرادی که باعث این انفجار فناوری شده اند ، در دنیای دیجیتال یک انفجار سریعتر ایجاد کند؟ می تواند باشد. اما بیایید بررسی کنیم که چه شرایطی برای این کار لازم است. شاید مطمئن ترین راه برای موفقیت ، تکرار یک تمدن انسانی کامل باشد ، یک برنامه هوش مصنوعی معادل 8 میلیارد نفر که در زمینه های مربوط به خود کار می کنند ، در دنیای نرم افزار. اما این تقریباً غیرممکن است. بنابراین شما باید قسمت خاصی از تمدن بشری را انتخاب کنید که بیشتر نوآوری ها در آن اتفاق می افتد. اینجوری فکر کن برای پروژه منهتن به چند نفر نیاز خواهید داشت؟ این س questionال نمی پرسد که چه تعداد دانشمند در پروژه منهتن استخدام شده اند. به چه تعداد جمعیت نیاز داریم تا دانشمندان کافی از این جمعیت را داشته باشیم تا برای پروژه منهتن بسیج شوند؟
به عنوان مثال ، با توجه به این واقعیت که از هر هزار پزشک یک پزشک وجود دارد ، می توانیم فکر کنیم که دکترای فیزیک به هزاران هوش مصنوعی مشابه انسان نیاز دارد. به عبارت دیگر ، برای موفقیت پروژه منهتن به همان تعداد جمعیت آمریکایی و اروپایی نیاز بود. امروزه آزمایشگاه های عالی افراد با استعداد از سراسر جهان را به خود جلب می کند ، بنابراین اعضا محدود به این دو قاره نیستند. به عبارت دیگر ، تعداد مورد نیاز برای دستیابی به همان نوآوری هایی که بشر امروز انجام می دهد ، به میزان قابل توجهی 8 میلیارد کاهش نخواهد یافت.
ما هنوز ایده ای نداریم که چگونه یک هوش مصنوعی معادل توانایی های انسان ایجاد کنیم. حداقل برای آینده قابل پیش بینی ، مطلقاً امکان “تولد” آخرین اختراعی که مردم به آن نیاز دارند “در زمینه انفجار تکنولوژیکی بشریت که باعث ایجاد فن آوری های جدید مبتنی بر فن آوری های موجود می شود ، وجود ندارد. از برخی جهات ، این خوشحال کننده است. برخلاف استدلال گوث ، چیزی به عنوان “مردم بسیار عقب خواهند ماند” وجود ندارد. به همین دلیل ، با این وجود ، ما نباید نگران احتمال هوش مصنوعی عقل مافوق بشری در تخریب تمدن بشری باشیم و همچنین نباید انتظار داشته باشیم هوش مصنوعی فوق هوشمند برای نجات بشریت باشد. خوب یا بد ، سرنوشت بشریت در دست ماست.
قسمت 1
[ad_2]