Pandora's box
Pandora's box
خواندن ۱۰ دقیقه·۳ سال پیش

شتاب استنتاج هوش مصنوعی در CPU


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


استنتاج هوش مصنوعی به فرآیند استفاده از یک مدل شبکه عصبی آموزش دیده برای پیش بینی اشاره دارد. آموزش هوش مصنوعی از سوی دیگر به ایجاد مدل مذکور یا الگوریتم یادگیری ماشین با استفاده از مجموعه داده آموزشی اشاره دارد. استنتاج و آموزش همراه با مهندسی داده، مراحل کلیدی یک گردش کار معمولی هوش مصنوعی است. حجم کاری مرتبط با مراحل مختلف این گردش کار متنوع است و هیچ پردازنده واحدی، اعم از واحد پردازش مرکزی (CPU)، واحد پردازش گرافیک (GPU)، آرایه‌های دروازه قابل برنامه‌ریزی میدانی (FPGA) یا شتاب‌دهنده هوش مصنوعی (AI) بهترین عملکرد را ندارد. برای کل خط لوله شما


اجازه دهید در استنباط هوش مصنوعی و کاربردهای آن، نقش بهینه‌سازی نرم‌افزار، و اینکه چگونه CPUها و به‌ویژه پردازنده‌های Intel® با شتاب هوش مصنوعی داخلی، عملکرد بهینه AI Inference را ارائه می‌کنند، و در عین حال به چند مثال کاربردی جالب توجه کنیم.


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

استنتاج هوش مصنوعی به عنوان بخشی از گردش کار انتها به انتها هوش مصنوعی

هوش مصنوعی، در اصل، داده‌های خام را از طریق سه مرحله به اطلاعات و بینش‌های عملی تبدیل می‌کند - مهندسی داده، آموزش هوش مصنوعی، و استنتاج/استقرار هوش مصنوعی. اینتل مجموعه‌ای ناهمگن از سخت‌افزار بهینه‌شده با هوش مصنوعی را همراه با مجموعه‌ای جامع از ابزارهای هوش مصنوعی و بهینه‌سازی‌های چارچوب ارائه می‌کند تا هر مرحله از گردش کار AI را تسریع کند.


شکل 1: استنتاج به عنوان بخشی از گردش کار هوش مصنوعی End-to-End
شکل 1: استنتاج به عنوان بخشی از گردش کار هوش مصنوعی End-to-End


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


استنباط لبه در نظارت هوشمند، ماشین‌های مستقل، و برنامه‌های مختلف IOT بی‌درنگ به رشد خود ادامه می‌دهد، در حالی که استنباط ابری از قبل در تشخیص تقلب، توصیه‌های شخصی‌سازی شده، پیش‌بینی تقاضا و سایر برنامه‌هایی که زمان حیاتی نیستند و ممکن است به موارد بیشتری نیاز داشته باشند، استفاده زیادی دارد. پردازش داده ها.


چالش‌های استقرار استنتاج هوش مصنوعی


استقرار یک مدل آموزش دیده برای استنتاج می تواند بی اهمیت به نظر برسد. با این حال، این درست نیست زیرا مدل آموزش‌دیده مستقیماً برای استنتاج استفاده نمی‌شود، بلکه بر اساس جایی که در حال استقرار است، اصلاح، بهینه‌سازی و ساده‌سازی شده است. بهینه سازی ها به الزامات عملکرد و کارایی همراه با ملاحظات محاسباتی، حافظه و تأخیر بستگی دارد.


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


چند روش محبوب برای بهینه سازی یک مدل آموزش دیده، بدون تلفات قابل توجه دقت، هرس و کوانتیزه کردن است. هرس به حذف کمترین وزن های مدل اشاره دارد که کمترین سهم را در نتایج نهایی در طیف وسیعی از ورودی ها دارند. از طرف دیگر کوانتیزه کردن شامل کاهش دقت عددی وزن‌ها به عنوان مثال از شناور 32 بیتی به عدد صحیح 8 بیتی است.


معماری‌های سخت‌افزار هوش مصنوعی اینتل و ابزارهای نرم‌افزار هوش مصنوعی هر آنچه را که برای بهینه‌سازی گردش کار استنتاج هوش مصنوعی خود نیاز دارید در اختیار شما قرار می‌دهند.


تسریع استنتاج هوش مصنوعی: سخت افزار

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


آموزش معمولاً از نظر محاسباتی شدیدترین مرحله گردش کار است و معمولاً به چندین ساعت یا بیشتر برای تکمیل بر اساس اندازه مجموعه داده نیاز دارد.


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


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


نقش CPUS در هوش مصنوعی


پردازنده Intel® Xeon® Scalable، با قابلیت برنامه‌ریزی عمومی بی‌نظیر خود، پرکاربردترین پلتفرم سرور از ابر تا لبه برای هوش مصنوعی است. پردازنده‌ها به‌طور گسترده در مراحل مهندسی داده و استنتاج استفاده می‌شوند، در حالی که آموزش علاوه بر CPU، از ترکیب متنوع‌تری از GPU و شتاب‌دهنده‌های هوش مصنوعی استفاده می‌کند. پردازنده‌های گرافیکی جای خود را در جعبه ابزار هوش مصنوعی دارند و اینتل در حال توسعه یک خانواده GPU بر اساس معماری Xe ما است.


با این حال، CPU ها برای اکثر نیازهای استنتاج ML بهینه باقی می مانند، و ما همچنین صنعت را در پیشبرد نوآوری های فناوری برای تسریع عملکرد استنتاج در پرکاربردترین CPU های صنعت پیشرو هستیم. ما به گسترش قابلیت‌های شتاب داخلی Intel® DL Boost در پردازنده‌های مقیاس‌پذیر Intel® Xeon® ادامه می‌دهیم. بر اساس Intel® Advanced Vector Extensions 512 (Intel® AVX-512)، Intel® DL Boost Vector Neural Instructions (VNNI) با ترکیب سه دستورالعمل در یک دستورالعمل، بهبود عملکرد قابل توجهی را ارائه می دهد - در نتیجه استفاده از منابع محاسباتی و استفاده از حافظه پنهان را به حداکثر می رساند. بهتر است و از تنگناهای پهنای باند بالقوه جلوگیری می کند.


اخیراً، Intel® AMX (Intel® Advanced Matrix Extensions) را معرفی کردیم، یک معماری شتاب‌دهنده توسعه‌یافته در پردازنده‌های Sapphire Rapids آینده، که با ارائه یک پوشش ریاضی ماتریسی برای AVX-512، عملکرد محاسباتی یادگیری ماشین بالاتری را برای آموزش و استنتاج امکان‌پذیر می‌سازد. بردار واحدهای ریاضی


تسریع استنتاج هوش مصنوعی: نرم افزار

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


تمام چارچوب‌های اصلی هوش مصنوعی برای یادگیری عمیق (مانند TensorFlow، PyTorch، MXNet، و Paddle Paddle) و یادگیری ماشین کلاسیک (مانند Scikit-learn و XGBoost) با استفاده از کتابخانه‌های oneAPI بهینه‌سازی شده‌اند (oneAPI یک برنامه‌نویسی یکپارچه و مبتنی بر استاندارد است. مدلی که یک تجربه توسعه‌دهنده مشترک را در معماری‌های سخت‌افزاری متنوع ارائه می‌کند) که عملکرد بهینه را در بین CPUها و XPUهای Intel® ارائه می‌کند.


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


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


کمپرسور عصبی اینتل


هدف ابزار Intel® Neural Compressor این است که به پزشکان کمک کند تا به راحتی و به سرعت راه حل های استنتاج با دقت پایین را در بسیاری از چارچوب های یادگیری عمیق محبوب از جمله TensorFlow، PyTorch، MXNet و ONNX اجرا کنند. API های یکپارچه برای فناوری های فشرده سازی شبکه های عصبی مانند کمی سازی با دقت کم، پراکندگی، هرس و تقطیر دانش ارائه شده اند. این APIهای استنتاج با دقت پایین یکپارچه را با دقت ترکیبی، توسعه‌پذیری آسان و تنظیم خودکار مبتنی بر دقت پیاده‌سازی می‌کند در حالی که برای عملکرد، اندازه مدل و ردپای حافظه بهینه شده است.



شکل 2: زیرساخت کمپرسور عصبی Intel®


ترانسفورماتورها مدل های یادگیری عمیق هستند که به طور فزاینده ای برای پردازش زبان طبیعی (NLP) استفاده می شوند. پلتفرم یادگیری ماشینی سرتاسر علی‌بابا برای هوش مصنوعی (PAI) از ترانسفورماتورهای PyTorch بهینه‌سازی شده اینتل برای پردازش وظایف پردازشی در دنیای واقعی برای میلیون‌ها کاربر خود استفاده می‌کند.


تأخیر کم و توان عملیاتی بالا کلید موفقیت یک مدل ترانسفورماتور است و دقت کم 8 بیت تکنیکی امیدوارکننده برای برآورده کردن چنین الزاماتی است. Intel® DL Boost قابلیت های قدرتمندی را برای استنتاج 8 بیتی با دقت کم در بارهای کاری هوش مصنوعی ارائه می دهد. با پشتیبانی از Intel® Neural Compressor (که قبلاً Intel® Low Precision Optimization Tool نامیده می شد)، می توانیم عملکرد استنتاج 8 بیتی را بهینه کنیم و در عین حال از دست رفتن دقت را به میزان قابل توجهی کاهش دهیم. در اینجا می‌توانید درباره مشارکت با علی‌بابا و اینکه چگونه آخرین CPUهای اینتل و ابزار کمپرسور عصبی اینتل به افزایش عملکرد 3 برابری در جعبه ابزار استنتاج تیغه PAI علی‌بابا کمک کرده‌اند، بیشتر بخوانید.


کمپرسور عصبی اینتل همچنین بخشی جدایی ناپذیر از جعبه ابزار Optimum ML Optimization از HuggingFace است که هدف آن فعال کردن حداکثر کارایی و عملکرد تولید برای اجرای مدل‌های ترانسفورماتور است. کمپرسور عصبی اینتل مدل‌ها را سریع‌تر می‌کند و کمترین تأثیر را بر دقت دارد، و از کمی‌سازی پس از آموزش، آموزش‌های آگاه از کوانتیزاسیون و کوانتیزه‌سازی پویا استفاده می‌کند. همچنین با استفاده از تنظیمات آسان برای حذف وزن مدل، به کوچکتر کردن آنها با حداقل تأثیر بر دقت کمک می کند. در اینجا بیشتر در مورد اینکه چگونه می توان مدل BERT را برای پردازنده های Intel® Xeon® کوانتیزه کرد، بخوانید.


کمپرسور عصبی Intel® به عنوان بخشی از Intel® oneAPI AI Analytics Toolkit در دسترس است که APIهای با کارایی بالا و بسته‌های پایتون را برای تسریع خطوط لوله یادگیری ماشینی و علوم داده سرتاسر یا به عنوان یک مؤلفه مستقل ارائه می‌کند.


نسخه ی نمایشی برنامه استنتاج هوش مصنوعی - انتقال سبک عصبی

امیدواریم بحث امروز ما به شما کمک کرده باشد که درک بهتری از مرحله استنتاج گردش کار هوش مصنوعی، اهمیت و کاربردهای آن، و چگونگی تسریع آن از طریق معماری سخت افزاری و ابزار نرم افزاری بهینه شده با هوش مصنوعی داشته باشید. چیزی که همیشه به من کمک کرده تا مفاهیم را متبلور کنم، استفاده از آنها در برنامه های کاربردی عملی است. همانطور که قبلا ذکر شد، من عاشق هوش مصنوعی هستم و عاشق نقاشی هستم. می‌خواهم شما را با یک نسخه نمایشی سریع در Neural Style Transfer بگذارم که در آن از پردازنده‌های Intel® و TensorFlow بهینه‌سازی شده اینتل استفاده می‌کنم تا نقاشی‌هایم را به سبک‌های مختلف تبدیل کنم، از شب پرستاره ون گوگ گرفته تا طراحی یک تراشه اینتل و بسیاری موارد دیگر!

شکل 2: انتقال سبک عصبی
شکل 2: انتقال سبک عصبی

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

هوش مصنوعییادگیری عمیقیادگیری ماشین
شاید از این پست‌ها خوشتان بیاید