راهکار هوش مصنوعی جدید دیپمایند برای ضرب ماتریسی
هوش مصنوعی جدید دیپمایند موفق شده است، تا برای اولین بار طی پنجاه سال گذشته، روش جدیدی برای ضرب اعداد کشف کند. از آنجایی که بیشتر نرمافزارها مبتنی بر عملیات ضرب هستند، روش جدید میتواند سرعت محاسبات را تا 20 درصد افزایش دهد.
ضرب ماتریسی که طی آن دو یا چندین شبکه عدد در هم ضرب میشوند، یکی از بنیادیترین مسائل محاسباتی است که در تقریباً تمامی نرمافزارها، بهویژه در گرافیک، هوش مصنوعی و شبیهسازیهای علمی، به کار میرود. حتی پیشرفتهای کوچک در الگوریتمهای ضرب هم میتواند عملکرد نرمافزارها را بهبود ببخشد و یا مصرف انرژی را به مقدار قابلملاحظهای کاهش دهد.
طی چند صد سال، باور عموم بر این بود که ضرب ماتریسی به تعداد مؤلفههای حاضر در ماتریسها بستگی دارد، یعنی هرچه ماتریسها بزرگتر باشند، ضرب سختتر میشود؛ اما در سال 1969، ریاضیدانی به نام ولکر استرسن اثبات کرد که ضرب دو ماتریس دو ردیفی که در هر ردیف دو عدد دارند، لزوماً شامل هشت ضرب نمیشود؛ بلکه با شگردی هوشمندانه میتوان تعداد ضربها را به هفت تا کاهش داد. این رویکرد که با نام الگوریتم استرسن شناخته میشود، مستلزم اجرای عملیات جمع است؛ اما عملیات جمع در کامپیوترها به زمان بسیار کمتری از ضرب نیاز دارد.
الگوریتم استرسن بیش از 50 سال است که مؤثرترین روش برای ضرب ماتریسی به شمار میرود؛ البته پیشرفتهایی هم در این حوزه به دست آمدهاند که چون با کد کامپیوترها سازگاری نداشتهاند، کاربرد نهایی نداشتهاند. با این حال، هوش مصنوعی جدید دیپمایند موفق به کشف تکنیکی شده است که روی سختافزارهای موجود نیز عملکردی سریع و عالی از خود نشان میدهد. این سیستم که آلفاتنسور AlphaTensor نام گرفته است، بدون هیچ دانش قبلی از راهحلهای احتمالی کارش را شروع میکند و بعد از رویارویی با مسئله، الگوریتمی را میسازد، تا طی حداقل گامهای ممکن، مسئله را حل کند.
به عنوان مثال، آلفاتنسور برای ضرب دو ماتریس 4×4 الگوریتمی را پیدا کرد که تنها به 47 ضرب نیاز داشت، در حالی که الگوریتم استرسن به 49 ضرب نیاز دارد. به علاوه، برای ضرب ماتریسهای بزرگتر نیز به تکنیکهای بهتر و پیشرفتهتری دست یافته است.
آلفاتنسور برای هر ماتریس هزاران الگوریتم پیدا میکند؛ برای مثال، برای ضرب ماتریسهای 4×4 به 14,000 الگوریتم دست یافت. اما تنها شمار کمی از این الگوریتمها بهتر از رویکردهای قبلی هستند.
عملیات ضرب ماتریسی
پژوهش مذکور، در طول دو سال، در ادامه و بر مبنای مدل آلفازیرو AlphaZero شرکت دیپمایند ساخته شده است.
حسین فاضی، از شرکت دیپمایند، معتقد است: «با اینکه نتایج از نظر ریاضی معقول هستند، برای انسانها قابلفهم نیستند. به بیان سادهتر، هنوز نمیدانیم که سیستم چرا به این نتیجه میرسد که این الگوریتم بهترین راه برای عملیات ضرب ماتریسی است. شبکههای عصبی به نحوی به یک درک کلی از خوب و بد میرسند، اما نمیتوانیم بگوییم که دقیقاً چطور این اتفاق میافتد. به نظر من، مطالعات نظری باید به کارکرد درونی یادگیری عمیق بپردازند.»
به گزارش دیپمایند، آلفاتنسور میتواند سرعت محاسبات را روی سختافزارهایی همچون V100 GPU از Nvidia و V2 YOU از گوگل، بین 10 تا 20 درصد افزایش دهد، اما هیچ ضمانتی نیست که این عملکرد را روی دستگاههای متداول مثل گوشیهای هوشمند یا لپتاپها هم تکرار کند.
جیمز نایت، پژوهشگر دانشگاه ساسکس، میگوید: «بسیاری از نرمافزارهایی که روی ابرکامپیوترها و سختافزارهای قدرتمند اجرا میشوند، اساساً وابسته به عملیات ضرب ماتریسی هستند. اگر آلفاتنسور قابلیت کاربرد در این سختافزارها را داشته باشد، سرعت بسیاری از مسائل تا حد چشمگیری افزایش مییابد. برای نمونه، اگر Nvidia این الگوریتم را در کتابخانه CUDA به کار ببرد، بار کاری [مدلهای] یادگیری عمیق چند درصد کاهش مییابد.»
اودد لاچیش، پژوهشگر دانشگاه برکبک، اضافه میکند: «الگوریتمهای جدید میتوانند بازدهی طیف گستردهای از نرمافزارها را ارتقاء دهند، چون عملیات ضرب ماتریسی مسئله بسیار پرکاربردی است. به نظرم در آینده شاهد کاربرد هوش مصنوعی در مسائل دیگر هم خواهیم بود، هرچند بهندرت میتوان چیزی با اهمیت ضرب ماتریسی پیدا کرد. آنچه تلاش برای ساخت این فناوریها را به پیش میراند، این واقعیت است که میتوانند سرعت را بالا ببرند و مصرف انرژی را کاهش دهند. اگر بازدهی افزایش یابد، سختافزارها انرژی کمتری مصرف میکنند و زمان اجرای مسائل هم کوتاهتر میشود.»
البته، پیشرفتهای اخیر دیپمایند به معنی از کار خارج شدن برنامهنویسها نیستند. به گفته لاچیش، برنامهنویسها، حداقل در آینده نزدیک، جای نگرانی ندارند. این کشفیات هم مثل بهینهسازی خودکار که طی چندین دهه اخیر در صنعت طراحی ریزتراشه به کار میرود، ابزاری برای کمک به برنامهنویسها به شمار میرود.
جدیدترین اخبار هوش مصنوعی ایران و جهان را با هوشیو دنبال کنید