مایکروسافت هم مثل سایر شرکتهای بزرگ فعال در زمینهٔ فناوری اطلاعات، با سرعت در حال افزایش فعالیتهای خود در زمینهٔ ماشین لرنینگ (یادگیری ماشینی) است؛ این شرکت اخیراً ابزارهای جدیدی را معرفی کرده است که دولوپرها با استفاده از آنها میتوانند راحتتر از گذشته به ساخت اپلیکیشنها و مدلهای هوش مصنوعی بپردازند. ارائهای از نمونههای آماده و نیمهآماده از سیستمهای ماشین لرنینگ که به راحتی میتوان در پروژهها از آنها استفاده کرد این امکان را به برنامهنویسان حرفهای و علاقهمندان به زمینههای هوش مصنوعی و یادگیری ماشین میدهد که با سرعت هرچه بیشتر ایدههایشان را به واقعیت تبدیل کنند و حتی دستاوردهای خود را برای فروش به بازار عرضه کنند.
سرویسهای جدید معرفی شده توسط مایکروسافت عبارتند از:
- Azure Machine Learning Experimentation
- Azure Machine Learning Workbench
- Azure Machine Learning Model Management
همچنین برای کاربران حرفهای و دولوپرهایی که از CNTK ،TensorFlow ،Theano ،Keras و Caffe2 استفاده میکنند نیز در ادیتور Visual Studio Code ابزارهایی معرفی شده است؛ کاربران نرمافزار اکسل از سری آفیس، و به طورکلی افرادی که دانش کمتری از برنامهنویسی و هوش مصنوعی دارند، هم میتوانند با استفاده از موارد ارائه شده برای مدلهای ماشین لرنینگ مبتنی بر آژور به راحتی از توابع هوش مصنوعی که پیشتر توسط متخصصان علوم دیتا برای آن صفحات ساخته شده است در جهت انجام فعالیتهای خود استفاده نمایند.
معرفی سرویس Azure Machine Learning Experimentation
هدف اصلی مایکروسافت از ارائه این سرویس ارائه راهکارهایی کامل به برنامهنویسان برای افزایش سرعت انجام پروژهها و البته مباحث مربوط به یادگیری و آموزش است؛ Experimentation Service از اکثر فریمورکهای اپنسورس مثل PyTorch ،Caffe2 ،TensorFlow ،Cahiner و CNTK پشتیبانی میکند و با بهرهمندی از کانتینرهای داکر و سرویسهای آموزش هوش مصنوعی Azure Batch AI، میتوان از آن در پروژههای کوچک و محدود به چند دستگاه لوکال گرفته تا پروژههای کلان و صدها GPU در بستر کلود استفاده نمود.
همچنین پشتیبانی از Apache Spark در کلاسترهای Azure HDInsight از جمله ویژگیهای فنی است که نشان از اهمیت بسیار زیاد موضوع ماشین لرنینگ برای مایکروسافت دارد؛ علاوه بر موارد معرفی شده، امکان ذخیرهٔ دیتا در ریپازیتوریهای گیت و نگهداری عملکرد تمامی مدلها نیز در این سرویس ارائه شدهاند تا بهترین تجربه برای دولوپرها فراهم شود.
معرفی سرویس Azure Machine Learning Workbench
یک دسکتاپ کلاینت برای سیستمعاملهای ویندوز و مک است (با توجه به فعالیتهای اخیر مایکروسافت، تولید اپلیکیشنهای سازگار با مکینتاش توسط این شرکت چیز جدیدی نیست!) که با توجه به گفتههای مایکروسافت از آن میتوان به عنوان یک کنترل پنل برای مدیریت چرخهٔ حیات توسعهٔ یک محصول نرمافزاری و همچنین یک گزینهٔ مناسب برای آغاز ماشین لرنینگ استفاده نمود.
این سیستم دارای قابلیت یکپارچه شدن با نوتبوکهای Jupyter و ادیتورهایی مثل Visual Studio Code و PyCharm میباشد و به این ترتیب به دولوپرها این امکان را میدهد تا به راحتی مدلهای مد نظر خود را در Python ،PySpak و Scala بسازند.
Joseph Sirosh یکی از کارشناسان برجستهٔ مایکروسافت، جذابترین ویژگی این سرویس را قابلیت تبدیل خودکار دادهها میداند که در نتیجهٔ آن الگوریتمهای ماشین لرنینگ میتوانند به راحتی با آنها به تعامل بپردازند.
سرویس Azure Machine Learning Model Management
مشابه سرویس Experimentation، سرویس جدید Model Management نیز از کانتینرهای داکر استفاده میکند؛ این ویژگی به برنامهنویسان و محققان کمک میکند تا بتوانند مدلهای خود را به خوبی مدیریت کرده و به هرجایی که کانتینرهای داکر میتوانند اجرا شوند به صورت مجازی منتقل نمایند (به طور مثال، سرویسهای کانتینر آژور مایکروسافت که بر پایهٔ Kubernetes هستند).
اصلیترین نکته در معرفی سرویسهای جدید توسط مایکروسافت این است که این شرکت قصد دارد تا با گسترش تولباکسها، برای دولوپرهایی که میخواهند اپلیکیشنهای مرتبط با موضوعات ماشین لرنینگ بسازند این امکان را فراهم کند که بتوانند به طیف بیشتری از مشتریان بدون توجه به بزرگی یا کوچکی آنها خدمات ارائه دهند.
ویژگی قابلتوجه در این سرویسها پشتیبانی از بسیاری از فریمورکهایی است که توسط مایکروسافت ساخته نشدهاند؛ البته شاید این موارد با عملکرد این شرکت در چند سال گذشته تفاوتهایی داشته باشد اما از آنجایی که هر کدام از این فریمورکها مزایا و معایب خود را دارند، نتیجهٔ رویکرد جدید مایکروسافت در نهایت افزایش کارایی سرویسهای ارائه شده است.
همچنین گفتنی است اگرچه در فریمورکهای اپنسورس ظاهراً موارد مالی مطرح نمیشوند، اما استفاده از سرویسهای کلود برای ارائهٔ پروژهها و مباحث آموزشی آینده، نیازمند پرداخت هزینههایی است!