چرا مایکروسافت پیشتاز حوزه یادگیری ماشین است؟
در این مقاله در مورد یادگیری ماشین صحبت کردیم. حال در این مقاله خلاصهای از آخرین پیشنهادات مایکروسافت در حوزه یادگیری ماشین (machine learning) برای دانشمندان داده و توسعهدهندگان ارائه شده است. برخی از این پیشنهادات مایکروسافت کار دانشمندان داده را راحتتر میکند. از طرفی بدون توجه به میزان تخصص افراد، پیشنهاداتی برای آنها در حوزه پیاده سازی یادگیری ماشین وجود دارد.
۱. Auto ML – Automated Machine Learning
این ابزار اخیرا توجه زیادی را به خود جلب کرده است. Auto ML نرم افزاری است که مدلهای یادگیری ماشین را به صورت خودکار انتخاب میکند و یاد میگیرد. درحالیکه این ابزار محدودیت هایی دارد، عدهای فکر میکنند که این نرم افزار جایگزین شغل دانشمند داده است.
در حال حاضر Auto ML میتواند به صورت خودکار مجموعهای از مدلهای یادگیری ماشین را بسازد و به صورت هوشمندانه مدلها را برای آموزش (Train) انتخاب کند. سپس بهترین مدل را بر اساس مسئله و نوع داده پیشنهاد میکند. به طور کلی یک دانشمند داده با تخصص خاص خود میتواند مدلهای بسیاری را با یکدیگر مقایسه کند. به صورت خلاصه میتوان گفت که این ابزار درستترین الگوریتم را انتخاب و فراپارامترها (hyperparameters) را تنظیم میکند. Auto ML در حال حاضر فقط از مسائل طبقهبندی (clasiification)، پیش بینی (forecasting) و رگرسیون پشتیبانی میکند.
از این ابزار استفاده کنید اگر: با مسائل طبقه بندی، پیش بینی یا رگرسیون سر وکار دارید
از این ابزار استفاده نکنید اگر : از یادگیری بدون نظارت (unsupervised learning) یا داده های پیچیده استفاده میکنید.
سهولت : متوسط
نیازمند به دانش علم داده : بله
۲. Azure Machine Learning Service – سرویس ابری
سرویس های ابری به شما این اجازه را میدهند که برای ذخیره داده ها و پردازش آنها از فضای ابری استفاده کنید. بنابراین شما محدودیت فضای ذخیره سازی را نخواهید داشت. سرویسهای ابری بسیار مقیاس پذیر هستند و کاملا مدیریت میشوند.
Azure Machine Learning Service و SDK ها و خدماتی را ارئه میدهد که با استفاده از آنها داده ها با سرعت پیش پردازش و آموزش داده میشوند و مدلهای ساخته شده ML روی آن ها به کار گرفته میشود. این ابزار به طور پیش فرض از فریم ورک های منبع باز (open source) پایتون مانند PyTorch، TensorFlow و scikit-learn پشتیبانی میکند. این ابزار با انواع مدلهای یادگیری ماشین مانند یادگیری ماشین کلاسیک، یادگیری عمیق، یادگیری با نظارت و بدون نظارت سازگار است. این سرویس همه چیز را برای شما برای ایجاد یک پایپ لاین یادگیری ماشین فراهم میکند.
برای کار کردن با این سرویس به یک workspace نیاز است که میتوان آن را با Azure portal interface, Python SDK, Resource Manager template یا CLI ایجاد کرد. با استفاده از یک نوت بوک در فضای local (jupyter) میتوانید کارهای خود را در فضای ابری اجرا کنید.
از این ابزار استفاده کنید اگر: میخواهید مدلهای سفارشی بسازید یا با مدلهای یادگیری عمیق کار کنید.
از این ابزار استفاده نکنید اگر: ترجیح میدهید در پایتون کار نکنید یا سرویس ساده تری میخواهید.
سهولت استفاده : پیشرفته
نیاز به دانش علم داده : بله
۳. Azure Machine Learning Studio – رابط بصری
رابط بصری پلتفرمی است بدون نیاز به کدنویسی، یا نیاز به کدنویسی خیلی کم که برای افرادی که نمیخواهند برای ML برنامه نویسی کنند، کاربرد دارد. برخی از قابلیتهای این ابزار به صورت لیست بازشو است. در Azure Machine Learning Studio قابلیت ها به صورت drag & drop هستند.
Azure Machine Learning Studio ابزاری است که در آن با استفاده از drag&drop میتوانید مدل مورد نظر خود را بسازید و مدل را آموزش دهید. هنگامیکه شما یک مدل آموزش داده شده دارید، میتوانید مدل را به عنوان یک وب سرویس استقرار دهید. در نهایت یک endpoint و کلیدهای API به شما داده میشود تا از آن در اپلیکیشنهای مختلف استفاده کنید. درحال حاضر این سرویس برای مسائل طبقهبندی، رگرسیون و خوشهبندی استفاده میشود.
برای شروع یک اکانت Azure Machine Learning ایجاد کنید. میتوانید از دیتاستهای موجود استفاده کنید و یا دیتاست خودتان را آپلود کنید. دادهها را پاکسازی کنید، یک الگوریتم را انتخاب کنید و داده ها را Train کنید. درنهایت مدل را ارزیابی نمایید. زمانیکه مدل مطابق نیازهای شما بود، آن را به عنوان یک سرویس تحت وب استقرار دهید تا در یک اپلیکیشن استفاده شود. اگرچه برای استفاده از این سرویس نیازی به کدنویسی نیست، اما به دانش کمی در حوزه علم داده نیاز است.
از ابزار استفاده کنید اگر: به دنبال پلتفرمی هستید که نیاز به کدنویسی نداشته باشد و برای مسائل طبقه بندی (classification)، رگرسیون (Regression) و خوشهبندی (Clustering) از آن استفاده کنید.
از این ابزار استفاده نکنید اگر : کدنویسی را ترجیح میدهید. شاید شما راحتتر باشید که به جای کدنویسی از Drag&Drop استفاده کنید.
سهولت استفاده : مقدماتی
نیاز به دانش علم داده : بله
۴. Cognitive Services – machine learning web API
سرویس یا وب API معمولا با HTTP عمل میکند و افراد با استفاده از آن میتوانند کدنویسی کنند و اشخاص ثالث میتوانند کدهای سایرین را تغییر دهند. این راهی است که با استفاده از آن به داده ها و قابلیت هایی که شخص سوم جمع آوری کرده است، دسترسی داده میشود.
به سرویسهای API مایکروسافت، Cognitive Services گفته میشود. که به صورت مستقیم در Azure اسقرار داده میشوند. پنج دسته بندی در دسترس میباشد: بصری، زبان، صحبت، جست و جو و تصمیم گیری. مدلهای از پیش آموزش داده شده نیز وجود دارند. اگر نیاز به سفارشیسازی مدل دارید، این مدلها برای شما مناسب نخواهند بود. این ابزار برای توسعه دهندگانی مناسب است که میخواهند از ML استفاده کنند، اما اطلاعات زیادی از علم داده ندارند.
برای استفاده از آن به پرتال Azure مراجعه کرده و سرویسی را که مدنظرتان است، پیدا کنید. پس از این که کار شما با این سرویس تمام شد، یک endpoint و کلید API به شما داده میشود که میتوانید آن را در هر اپلیکیشنی استفاده کنید.
از این ابزار استفاده کنید اگر: نمیخواهید با علم داده درگیر شوید اما میخواهید ML را در اپلیکیشن خود embed کنید.
از این ابزار استفاده نکنید اگر: میخواهید مدلها را سفارشی سازی کنید.
سهولت استفاده : مقدماتی
نیاز به دانش علم داده : خیر
۵. Bot Framework – فریم ورک برای چت بات
Bot frameworks کدهای اسکلتی با هدف ساخت باتها هستند و معمولا برای ساخت چت بات ها از آن ها استفاده میشود. این ابزار قابلیت های گسترده ای دارد. مانند انتخاب های چندگزینه ای برای مشتریان و صحبت کردن به زبان طبیعی که بسیار نزدیک به قابلیت های انسانی است.
Bot frameworks سرویسی از مایکروسافت برای ایجاد چت بات ها است که معمولا با LUIS و QnA Maker استفاده میشود. برای استفاده از Bot Framework چندین راه وجود دارد مانند SDK، پیش نویس Visual Studio و یا ایجاد و استقرار Web App Bot در Azure.
از این ابزار استفاده کنید اگر: همواره میخواهید چت بات خود را سفارشی سازی کنید.
از این ابزار استفاده نکنید اگر: نمی خواهید کدنویسی کنید.
سهولت استفاده : متوسط
نیاز به دانش علم داده : خیر
۶. ML.NET – فریم ورک یادگیری ماشین
فریم ورک ها کدهای اسکلتی ژنریک هستند که به شما اجازه میدهند اپلیکیشن خود را بسازید. ML.NET جدیدترین کتابخانه یادگیری ماشین برای توسعه دهندگان .NET است که از C# و F# در ویندوز، لینوکس یا macOS پشتیبانی میکند.
از این ابزار استفاده کنید اگر: یک توسعه دهنده .NET هستید و میخواهید کدهای ML خود را ایجاد نمایید.
از این ابزار استفاده نکنید اگر: ترجیح میدهید از پایتون استفاده کنید.
سهولت استفاده : پیشرفته
نیاز به دانش علم داده : بله
اگر نیاز دارید به در حوزه یادیگیری ماشین بیشتر مطالعه کنید، پیشنهاد میکنیم این مقاله و این مقاله را مطالعه کنید. همچنین میتوانید سوالات خود در این زمینه را در قسمت دیدگاه این مقاله بیان کنید.
پیاده سازی یادگیری ماشین
برای پیاده سازی یادگیری ماشین در کسب وکار خود، با مشاوران نمودار در ارتباط باشید.
نظرات کاربران