هوش مصنوعی (AI) چیست؟
3 چیز که باید بدانید
هوش مصنوعی (artificial intelligence) یا AI، شبیه سازی هوشمند رفتار انسان است. این شبیه سازی یک رایانه و یا سیستمی است که برای درک محیط خود، رفتارهای آن و اقدام به یک عکس العمل طراحی شده است. اتومبیلهای خودران (تمام اتوماتیک) را در نظر بگیرید: سیستمهای مبتنی بر هوش مصنوعی، یک الگوریتمهای هوش مصنوعی مانند یادگیری ماشینی و یادگیری عمیق را با محیطهای پیچیدهای که اتوماسیون را امکانپذیر میکنند، ادغام میکنند.
(۱) چرا هوش مصنوعی مهم است؟
بر اساس پیشبینی مککینزی، هوش مصنوعی تا سال 2030، 13 تریلیون دلار ارزش اقتصادی در سراسر جهان ایجاد خواهد کرد. برای اینکه هوش مصنوعی در هر صنعت و حوزه کاربردی، مهندسی را متحول می کند. علاوه بر اتومبیلهای خودران، هوش مصنوعی در مدلهایی که خرابی ماشین را پیشبینی میکنند، نیز استفاده میشود که نشان میدهد چه زمانی نیاز به تعمیر و نگهداری دارند.
(۲) اجزای گردش کار هوش مصنوعی
موفقیت هوش مصنوعی به چیزی بیش از آموزش یک مدل هوش مصنوعی نیاز دارد، به ویژه در سیستم های مبتنی بر هوش مصنوعی که تصمیم می گیرند و اقدام می کنند. گردش کار (workflows) هوش مصنوعی شامل آماده سازی داده ها، ایجاد یک مدل، طراحی سیستمی که مدل بر روی آن اجرا می شود، و استقرار در سخت افزار یا سیستم های سازمانی است.
مراحل گردش کار هوش مصنوعی
آماده سازی داده ها
گرفتن داده های خام و مفید ساختن آن برای یک مدل دقیق، کارآمد و معنادار، یک گام حیاتی است. در واقع، بیشتر تلاش شما را در زمینه هوش مصنوعی نشان می دهد. آمادهسازی دادهها به تخصص حوزهای (مانند تجربه در سیگنالهای گفتاری و صوتی، جهت یابی و ترکیب سنسور، پردازش تصویر و ویدئو، و رادار و LiDAR) نیاز دارد.
هوش مصنوعی همچنین شامل مقادیر زیادی از داده است. با این حال برچسب زدن داده ها و تصاویر، خسته کننده و وقت گیر می باشد. گاهی اوقات برای سیستم های حیاتی ایمنی، داده کافی ندارید. تولید داده های مصنوعی دقیق، می تواند مجموعه داده های شما را بهبود بخشد. در هر دو مورد، اتوماسیون برای رعایت ضرب الاجل ها (meeting deadlines) حیاتی است.
مدل سازی هوش مصنوعی
عوامل کلیدی موفقیت در مدل سازی سیستم های هوش مصنوعی عبارتند از:
- با مجموعه ای کامل از الگوریتم ها و مدل های از پیش ساخته شده برای یادگیری ماشینی، یادگیری عمیق، یادگیری تقویتی و سایر تکنیک های هوش مصنوعی شروع کنید.
- از برنامه ها برای طراحی و تحلیل سازنده، استفاده کنید.
- در یک اکوسیستم باز کار کنید که در آن ابزارهای هوش مصنوعی مانند MATLAB®، PyTorch، و TensorFlow™ می توانند با هم استفاده شوند.
- محاسبه پیچیدگی با شتاب GPU و مقیاس بندی به سرورهای موازی و ابری و مراکز داده داخلی را مدیریت کنید.
طراحی سیستم
مدلهای هوش مصنوعی در یک سیستم کامل وجود دارند. در سیستمهای رانندگی خودکار، هوش مصنوعی باید با الگوریتمهایی مکانیابی و برنامهریزی مسیر و کنترل ترمز، شتاب و چرخش ادغام شود.
هوش مصنوعی مورد استفاده در سناریوی رانندگی خودکار
هوش مصنوعی را در نگهداری پیشبینیکننده مزارع بادی (wind farm) و کنترل خودکار پرواز (autopilot controls) برای هواپیماهای امروزی نیز استفاده می شود. سیستم های پیچیده و مبتنی بر هوش مصنوعی نیاز به یکپارچه سازی و شبیه سازی دارند.
به کارگیری
مدلهای هوش مصنوعی باید روی CPUها، GPUها، و یا FPGA در محصول نهایی شما مستقر شوند. مدلهای هوش مصنوعی که بر روی دستگاههای جاسازیشده یا لبهای اجرا میشوند، نتایج سریع مورد نیاز را در این زمینه ارائه میدهند، در حالی که مدلهای هوش مصنوعی در حال اجرا در سیستمهای سازمانی و ابر نتایجی را از دادههای جمعآوریشده از دستگاهها را ارائه میکنند. اغلب، مدلهای هوش مصنوعی در ترکیبی از این سیستمها به کار میروند. فرآیند به کارگیری یا استقرار (Deployment) زمانی تسریع می یابد که از مدل های خود کد تولید کرده و دستگاه های خود را هدف قرار دهید.
(۳) توسعه سیستم های مبتنی بر هوش مصنوعی با متلب
کمبودی مستند از مهارت ها در هوش مصنوعی وجود دارد. با این حال، مهندسان و دانشمندانی که از MATLAB یا Simulink® استفاده میکنند، مهارتها و ابزارهای لازم برای ایجاد سیستمهای مبتنی بر هوش مصنوعی را در حوزههای تخصصی خود دارند.
پیش پردازش داده ها با متلب
زمان کمتری را صرف پیش پردازش داده ها خواهید کرد. برنامهها و انواع دادههای متلب به طور قابل توجهی زمان مورد نیاز برای پیش پردازش دادهها را کاهش میدهند. شما می توانید به سرعت داده های خود را برای درک روندها و شناسایی مشکلات کیفیت داده ها با نمودارها و Live Editor تجسم کنید.
برنامههای متلب برچسبگذاری واقعی دادههای تصویری، ویدیویی و صوتی را خودکار میکنند. برای آزمایش الگوریتمها قبل از اینکه دادهها از سنسورها یا سایر تجهیزات در دسترس باشند، میتوانید دادههای مصنوعی را از Simulink تولید کنید. این رویکرد معمولاً در سیستمهای رانندگی خودکار مانند کروز کنترل تطبیقی، کمک حفظ خطوط و ترمز اضطراری خودکار استفاده میشود.
استفاده از برنامههای برچسبگذاری برای گردش کار (workflow) یادگیری عمیق
تعامل با چارچوب (framework) های یادگیری عمیق
مدلسازی هوش مصنوعی با متلب
تکنیک های مدل سازی هوش مصنوعی بسته به کاربرد متفاوت است.
یادگیری ماشینی (Machine Learning)
کاربران متلب هزاران برنامه کاربردی را برای تعمیر و نگهداری ، تجزیه و تحلیل سنسورها، امور مالی و الکترونیک ارتباطی، مستقر کرده اند. Statistics and Machine Learning Toolbox™ بخشهای سخت یادگیری ماشین را با برنامههایی برای آموزش و مقایسه مدلها، پردازش سیگنال پیشرفته و استخراج ویژگی، طبقهبندی، رگرسیون و الگوریتمهای خوشهبندی برای یادگیری تحت نظارت و بدون نظارت آسان میکند. ASML، یک تولید کننده نیمه هادی، از تکنیک های یادگیری ماشین برای ایجاد فناوری اندازه گیری مجازی استفاده کرد. مدلهای متلب همچنین در بیشتر محاسبات آماری و یادگیری ماشینی اجرای سریعتری نسبت به منبع باز (open source) دارند.
برنامه Classification Learner که به شما امکان می دهد طبقه بندی های مختلف را امتحان کنید و بهترین تناسب را برای مجموعه داده های خود بیابید.
یادگیری عمیق (Deep Learning)
مهندسان از قابلیت های یادگیری عمیق MATLAB برای رانندگی خودکار، بینایی کامپیوتری (computer vision)، پردازش گفتار و زبان طبیعی و سایر برنامه ها استفاده می کنند. Deep Learning Toolbox به شما امکان می دهد لایه های یک شبکه عصبی عمیق را ایجاد کنید، به یکدیگر متصل کنید، آموزش دهید و ارزیابی کنید. مثال ها و شبکه های از پیش آموزش دیده استفاده از MATLAB برای یادگیری عمیق، حتی بدون دانش الگوریتم های بینایی کامپیوتری پیشرفته یا شبکه های عصبی را آسان می کند.
MATLAB مهندسان را قادر می سازد تا در چارچوب های یادگیری عمیق مختلف با یکدیگر کار کنند. با پشتیبانی از ONNX، MATLAB اجازه می دهد تا جدیدترین مدل ها را به سایر چارچوب (framework) های پشتیبانی شده از جمله TensorFlow وارد و از آنجا اکسپرت (exporting) کنید.
برنامه Deep Network Designer به شما امکان می دهد شبکه های یادگیری عمیق را بسازید، تجسم کنید و ویرایش کنید.
یادگیری تقویتی (Reinforcement Learning)
در سیستم های کنترلی که از یادگیری مبتنی بر پاداش تجمعی (cumulative reward) سود می برند، یادگیری تقویتی یک تکنیک ایده آل است. Reinforcement Learning Toolbox™ به شما امکان می دهد سیاست ها را با استفاده از DQN، A2C، DDPG و دیگر الگوریتم های یادگیری تقویتی آموزش دهید. میتوانید از این سیاستها برای پیادهسازی کنترلکنندهها و الگوریتمهای تصمیمگیری برای سیستمهای پیچیده مانند روباتها و سیستمهای مستقل استفاده کنید. می توانید سیاست ها را با استفاده از شبکه های عصبی عمیق، چند جمله ای ها یا جداول جستجو، پیاده سازی کنید.
استفاده از جعبه ابزار یادگیری تقویتی برای طراحی و آموزش سیاست ها.
پردازش زبان طبیعی (Natural Language Processing)
مدلهای پردازش زبان طبیعی معمولاً برای تحلیل احساسات، نگهداری پیشبینیکننده و مدلسازی موضوع استفاده میشوند. Text Analytics Toolbox™ الگوریتمها و تجسمهایی را برای پیشپردازش، تحلیل و مدلسازی دادههای متن ارائه میکند. این به شما امکان می دهد متن خام را از منابعی مانند گزارش تجهیزات، فیدهای خبری، نظرسنجی ها، گزارش های اپراتور و رسانه های اجتماعی استخراج و پردازش کنید.
با استفاده از تکنیکهای یادگیری ماشینی مانند LSA، LDA، و جاسازی کلمه، میتوانید خوشهها را پیدا کنید و ویژگیهایی را از مجموعه دادههای متنی با ابعاد بالا ایجاد کنید. ویژگیهای ایجاد شده با Text Analytics Toolbox را میتوان با ویژگیهای سایر منابع داده ترکیب کرد تا مدلهای یادگیری ماشینی را بسازد که از دادههای متنی، عددی و سایر انواع داده استفاده میکند.
شناسایی موضوعات (Topics) در داده های گزارش طوفان.
طراحی سیستم
سیستم های پیچیده و مبتنی بر هوش مصنوعی باید با الگوریتم های دیگر ادغام شوند. طراحی و شبیه سازی سیستم مهم است. زیرا سیستم کلی بر اثربخشی مدل های هوش مصنوعی تأثیر می گذارد. مهندسان از Simulink برای تکرار طراحی سریع و تست حلقه بسته (closed-loop testing) استفاده می کنند.
به عنوان مثال، در یک سیستم رانندگی خودکار، شما از هوش مصنوعی و شبیه سازی برای طراحی کلی سیستم استفاده می کنید. شما از Simulink برای مدلسازی دینامیک خودرو، طراحی کنترلکننده رانندگی و فیوز کردن سیگنال سنسور های مختلف استفاده میکنید. شما از MATLAB برای توسعه و آموزش مدل هوش مصنوعی استفاده می کنید و مدل آموزش دیده را برای شبیه سازی در سطح سیستم در Simulink قرار می دهید. ممکن است از نرم افزاری مانند Unreal Engine برای ترکیب تصاویر دوربین برای تغذیه مدل هوش مصنوعی و تجسم سه بعدی استفاده کنید.
همچنین Simulink به شما این امکان را می دهد که داده های خرابی را که از شرایط خرابی شناخته شده، تولید کنید. در یک مزرعه بادی، ممکن است داده های خرابی مصنوعی را به داده های اندازه گیری شده از توربین های بادی اضافه کنید. شما می توانید مدل سیستم خود را اصلاح کنید تا پیش بینی دقیقی از خرابی تجهیزات آینده بدست آورید.
استفاده از دادههای خرابی مصنوعی از مدل به همراه دادههای اندازهگیری شده برای ایجاد یک پیشبینیکننده قوی از خرابیهای آینده.
به کارگیری یا استقرار (Deployment)
مدلهای هوش مصنوعی در MATLAB میتوانند بر روی دستگاهها یا بردهای تعبیهشده، سیستمهای سازمانی یا فضای ابری به کار برده شوند.
برای مدلهای یادگیری عمیق، میتوانید از GPU Coder™ برای تولید و به کارگیری CPUهای NVIDIA® CUDA® استفاده کنید. یا کد C را با MATLAB Coder™ و Simulink Coder™ برای استقرار بر روی بردهای Intel® و Arm® تولید کنید. کتابخانه های بهینه سازی شده توسط فروشنده، مدل های قابل استقرار را با سرعت استنتاج با کارایی بالا ایجاد می کنند.
با ™ MATLAB Production Server، میتوانید بهطور ایمن در سیستمهای فناوری اطلاعات سازمانی، منابع داده و فناوریهای عملیاتی مستقر شده و با آنها یکپارچه شوید.
ادغام مستقیم با سیستم ها و داده های موجود، از جمله Tableau®، TIBCO® Spotfire®، Power BI، و سایر سیستم های تحلیلی مدرن.
15 پاسخ