مهندس مکاترونیکی که به هوش مصنوعی، برنامه نویسی و سخت افزار علاقه منده!
9 پردازنده برتر برای هوش مصنوعی
الگوریتم های هوش مصنوعی روز به روز در حال پیشرفت و گسترش هستند. اما روی دیگر این سکه رشد و توسعه سختافزار برای هوش مصنوعی است که کمتر از مورد قبل مورد توجه عموم قرار میگیرد؛ سختافزارهایی که بتوانند انواع مختلف شبکههای عصبی را پیادهسازی کنند. این روند با سرعت زیادی رو به رشد است و سازندگان زیادی از شرکتهای معروف و بزرگ تا استارتاپهای نوپا وارد این میدان شدهاند. هر کدام از سختافزارهای موجود بر روی هدف خاصی مثل افزایش کارایی، کاهش قیمت یا کممصرف بودن تمرکز کردهاند. در ادامه به بعضی از مهمترین پردازنده ها برای هوش مصنوعی اشاره میکنیم.
پردازنده های هوش مصنوعی با کاربرد عمومی
محصول: Movidius Myriad X
سازنده: اینتل
شرکت Movidius سازنده پردازنده Myriad X در سال 2016 توسط اینتل خریداری شد. Myriad X نسل سوم واحدهای پردازش تصویر این شرکت و اولین نمونهای است که یک موتور پردازشی اختصاصی برای شبکه عصبی دارد. پردازنده Myriad X توان انجام 1 میلیارد عملیات ریاضی اختصاصی از نوع شبکه عصبی عمیق را دارد. این موتور پردازشی از حافظه واسطه هوشمندی استفاده میکند تا محدودیتی از نظر حافظه در حین انجام عملیات پیش نیاید. Myriad X از 16 هسته مستقل از نوع SHAVE بهره میبرد. این پردازنده در Neural Compute Stick 2 اینتل به کار رفته است.
Neural Compute Stick 2 یک کامپیوتر جیبی است که بسیار به یک حافظه USB شباهت دارد اما به تنهایی یک کامپیوتر قدرتمند مخصوص کارهای پردازش تصویر است. این کامپیوتر به سادگی به هر رایانه دیگری وصل شده و برنامههای پردازش تصویر و هوش مصنوعی بر روی پردازنده آن انجام میشود.
محصول: i.MX 8M Plus
سازنده: NXP
این پردازنده از یک شتابدهنده شبکه عصبی (Neural Network Accelerator) به نام VeriSilicon در درون خود بهره میبرد. VeriSilicon یک موتور استنتاج با قدرت 2.3TOPS (2300 میلیارد عملیات در ثانیه) است که از آن میتوان در کاربردهایی مانند اینترنت اشیای صنعتی (IIoT)، تشخیص گفتار یا عکسبرداری های پیشرفته در حوزه پزشکی (با سرعت 500 تصویر در ثانیه) استفاده کرد. همچنین در کنار این پردازنده، یک پردازنده هشت هستهای Arm Cortex A-53 با سرعت 2GHz و یک پردازنده Cortex M7 برای کارهای بلادرنگ ( Realtime) قرار دارد.
برای انجام کاربردهای مرتبط با پردازش تصویر نیز دو پردازشگر تصویر در این مجموعه قرار داده شده است که میتوانند به دو دوربین یا یک دوربین 12 مگاپیکسل متصل شوند. یک پردازنده 800 مگاهرتزی DSP هم برای کارهای پردازش صدا در i.MX 8M Plus تعبیه شده است. مجموعه موارد بالا باعث شده است تا i.MX 8M Plus یک موتور پردازشی قدرتمند مخصوص کاربردهای هوش مصنوعی به شمار بیاید. هدف اصلی از ساخت i.MX 8M Plus استفاده در اینترنت اشیا بوده است.
محصول: xcore.ai
سازنده: XMOS
شرکت انگلیسی XMOS یک تولیدکننده نسبتا جدید در حوزه ریزپردازنده ها و ماژول های صوتی و پردازش صدا است. پردازنده xcore.ai به منظور استفاده در پردازش صدا در هوش مصنوعی اشیا (AIoT) طراحی و ساخته شده است. این قطعه در دسته Crossover processor قرار میگیرد. پردازنده های crossover چیزی بین یک پردازنده مرکزی (CPU) و یک میکروکنترلر هستند. Crossover ها از سرعت پردازشی یک CPU و قابلیتهای بلادرنگ (Realtime) و مصرف کم برق یک میکروکنترلر بهره میبرند. xcore.ai به طور خاص امکان یادگیری ماشین سیگنال های صوتی را فراهم کردهاست.
این پردازنده بر اساس معماری Xcore ساخته شده است که در آن تعدادی logical core وجود دارد. این هستهها میتوانند به منظور ورودی/ خروجی سیگنال، پردازش سیگنال (DSP)، کاربردهای کنترلی و شتابدهنده هوش مصنوعی استفاده شوند. xcore.ai در خود 16 هسته دارد که هر کدام به صورت مجزا قابل تنظیم برای عملیات خاصی هستند. این تنظیم که به صورت نرم افزاری انجام شده و در firmware قرار میگیرد، باعث میشود تا این پردازنده به صورت یک سیستم کامل (SoC) مجازی عمل کند. همچنین xcore.ai از قابلیت Vector Pipeline پشتیبانی میکند که برای یادگیری ماشین استفاده میشود. Xcore.ai از شبکه های 32 بیت، 16 بیت، 8 بیت و 1 بیت (باینری) پشتیبانی میکند و توان پردازشی 3.2 میلیارد عملیات در ثانیه یا 1.6 میلیارد عملیات اعشاری در ثانیه را دارد. 1 مگابایت حافظه SRAM داخلی و رابط DDR برای گسترش حافظه از دیگر مشخصات xcore.ai است.
پردازنده های هوش مصنوعی در صنعت حمل و نقل
محصول: TDA4VM
سازنده: Texas Instrument
شرکت TI تا پیش از این بیشتر به ساخت تراشه های با کاربرد خاص معروف بود و TDA4VM اولین سیستم کامل یا SoC برای TI محسوب میشود. این پردازنده دارای واحدهای پردازشی مخصوص شبکه عصبی عمیق (Deep Neural Network) است و برای کاربری در صنعت حمل و نقل و خودرو طراحی شده است. TDA4VM میتواند یک تصویر پیوسته 12 مگاپیکسل یا 6 تصویر 3 مگاپیکسل را پردازش کند. علاوه بر این از اتصال به سنسورهای رادار، LiDAR و التراسونیک نیز پشتیبانی میکند. یکی از نکات جالب این پردازنده پشتیبانی از Sensor Fusion است.
Sensor fusion روشی است که در آن با استفاده از تلفیق داده های چند سنسور، اطلاعات دقیقی از یک پارامتر، مثلا موقعیت دقیق خودرو، به دست میآید.
این ویژگی به کمک قابلیت MMA یا شتابدهنده ضرب ماتریسی در این پردازنده دست یافتنی شده است.
پردازنده های مناسب برای پردازش تصویر
محصول: Jetson Nano
سازنده: Nvidia
شرکت Nvidia که همیشه سردمدار ساخت کارت گرافیک بوده است چند وقتی است که وارد حوزه هوش مصنوعی شده است. سری Jetson بردهای الکترونیکی آمادهای است که به طور خاص به منظور استفاده در هوش مصنوعی و یادگیری ماشین ساخته شدهاند. Nano عضو کوچکتر این خانواده و یکی از جذابترین آنهاست. این برد بسیاری از مزایا را یکجا دارد. اولا اینکه یک برد کامل است و بر روی خود علاوه بر پردازشگر گرافیکی، یک پردازنده cortex A-57 و تعداد زیادی رابط USB ، HDMI ، LAN و اتصال به دوربین دارد.
از طرف دیگر مصرف برق nano در حین کار تنها 5W است که از سایر تولیدات Nvidia بسیار کمتر است. پردازشگر گرافیکی nano دارای 128 هسته CUDA بوده و توانایی انجام حدود 500 میلیارد عملیات اعشاری در ثانیه را دارد که آن را در رده کارت گرافیک های متوسط تا خوب فعلی قرار میدهد. با این برد الکترونیکی میتوانید چندین شبکه عصبی را به صورت همزمان اجرا کنید. کل این برد ابعادی در حد 7 در 4.5 سانتیمتر دارد.
پردازنده های مخصوص سازندگان
محصول: KL520
سازنده: Kneron
کاربرد اصلی این محصول برای تشخیص چهره و پردازش تصویر در تلفن های هوشمند، تبلت ها، سیستم های ورود و خروج و خانه های هوشمند است. KL520 برای طراحی شبکه عصبی های حلقوی (CNN) طراحی شده است. این نوع شبکه عصبی به طور گسترده در کاربردهای پردازش تصویر استفاده میشود. ساختار شبکه عصبی پیاده شده در این پردازنده میتواند توسط سازنده متناسب با نیاز خود تعیین و استفاده شود.
KL520 تنها 0.5 وات را برای انجام 3 هزار میلیارد عملیات (3 TOPS) در ثانیه مصرف میکند که مقدار خیلی کمی است.
محصول: Lightspeeur 5801
سازنده: Gyrfalcon
این پردازنده چهارمین محصول شرکت Gyrfalcon است که برای تشخیص چهره در تلفن های همراه طراحی شده است. Lightspeeur 5801 قدرت پردازشی حدود 12TOPs را دارد که در نوع خود قابل توجه است. این محصول دارای 10MB حافظه داخلی است که به راحتی میتواند یک مدل شبکه عصبی متوسط را در خود جا دهد. قابلیت خوب دیگر این پردازنده تنظیم فرکانس آن بین 50 تا 200 مگاهرتز در شرایط مختلف است و این مورد در کاهش مصرف انرژی آن کمک زیادی میکند.
پردازنده های هوش مصنوعی بسیار کم مصرف
محصول: ECM3532
سازنده: Eta Compute
پردازنده ECM3532 یک محصول مخصوص کارهای هوش مصنوعی و اینترنت اشیا است که به گونهای طراحی شده است که بتواند با منابعی مانند باتری یا روشهای برداشت انرژی (Energy Harvesting) کار کند. مصرف انرژی این پردازنده باورنکردنی است. ECM3532 میتواند پردازش تصویر و sensor fusion را تنها با 100 میکرووات انجام دهد. البته شاید نباید از آن انتظار پردازشی معادل یک کارت گرافیک مثل Jetson را داشت اما برای کاربردهایی که نیاز به پردازش های هوش مصنوعی به صورت دائمی و بدون وقفه وجود دارد، مسئله مصرف انرژی اهمیت زیادی پیدا میکند. در چنین شرایطی محصولاتی مثل ECM3532 با هیچ کدام از پردازندههای دیگر قابل مقایسه نیستند. این پردازنده دو هسته داخلی یکی از نوع Cortex M3 و دیگری DSP دارد.
محصول: NDP100
سازنده: Syntiant
پردازنده NDP100 مخصوص کاربردهای پردازش صدا در شرایطی که مصرف برق اهمیت زیادی دارد طراحی شده است. در این تراشه، پردازنده و حافظه به گونهای در هم ادغام شدهاند و با این تکنیک مصرف انرژی به کمتر از 140 میکرووات رسیده است. این محصول میتواند در کاربردهایی مانند روشن شدن با صدا (wake word detection)، تعیین کلمات، تشخیص گوینده یا تشخیص رخداد با استفاده از صوت مورد استفاده قرار گیرد. به گفته سازنده، NDP100 بسیار مناسب کاربرد در وسایل بیسیم مثل هندزفری، ساعتهای هوشمند و کنترل از راه دور است. این پردازنده به صورت برد توسعه نیز عرضه شده است.
به نظر میرسد که در کنار پیشرفت سریع الگوریتم های هوش مصنوعی که سر و صدای زیادی هم به پا کردهاند، سختافزارهای متناسب با هوش مصنوعی نیز خیلی آرام و بی سر و صدا در حال رشد هستند. شاید بتوان گفت که یکی از نقاط مهم در به وجود آمدن اشیای تصمیمگیرنده، هوشمند و با قابلیت استنباط، ابزارهای سختافزاری است که امکان پیادهسازی الگوریتمهای یادگیری ماشین و هوش مصنوعی را فراهم خواهند کرد. تاکنون تلاشهای زیادی صورت گرفته است تا از سختافزارهای موجود مانند CPU، GPU یا FPGA برای کاربردهای هوش مصنوعی استفاده شود اما به نظر میرسد ابزارهایی که در آینده برای این کاربردها استفاده خواهند شد تفاوتهای ذاتی با موارد گذشته خواهند داشت که از آن جمله میتوان به معماری پردازندههای In-memory یا حافظههای Phase-change اشاره کرد.
ممنونم که نظراتتان را با ما به اشتراک میگذارید!
مطلبی دیگر از این انتشارات
چرا باید از هوش مصنوعی استفاده کنیم؟
مطلبی دیگر از این انتشارات
مرگ و میر توسط کرونا (COVID-19) به روایت آمار
مطلبی دیگر از این انتشارات
قسمت اول- یادگیری ماشین چیست؟