اگر در حال شروع یک پروژه جدید یادگیری ماشینی (ML) هستید، ممکن است تعجب کنید که آیا آموزش دستی تنها گزینه شما برای ساخت یک مدل یادگیری ماشینی است؟ با آموزش دستی، با استفاده از چارچوب ML برای ایجاد یک مدل، کد می نویسید. در طول این فرآیند، شما انتخاب می کنید که کدام الگوریتم ها را بررسی کنید و به طور مکرر ابرپارامترها را تنظیم کنید تا مدل مناسب را پیدا کنید.
البته آموزش مدل تنها چیزی نیست که باید به آن فکر کنید. در عمل، ساخت یک مدل یادگیری ماشینی از نمونه اولیه تا تولید شامل وظایف تکراری و مهارتهای تخصصی است. یک گردش کار ML اکتشافی ساده چیزی شبیه به این است:
![شکل 1. یک گردش کار یادگیری ماشینی ساده.](https://developers.google.cn/static/machine-learning/crash-course/automl/images/ml-workflow.png?authuser=4&hl=fa)
وظایف تکراری - گردش کار ML می تواند شامل کار و آزمایش تکراری باشد. به عنوان مثال، در طول توسعه مدل، شما معمولاً نیاز به بررسی ترکیب های مختلف الگوریتم ها و فراپارامترها برای شناسایی مناسب ترین مدل دارید. با آموزش دستی، کدهای تخصصی را برای آموزش مدل می نویسید و سپس کد را برای اجرای آزمایش ها با الگوریتم های مختلف ML و هایپرپارامترها تنظیم می کنید تا بهترین مدل را پیدا کنید. برای پروژههای کوچک یا اکتشافی، این فرآیند دستی ممکن است مشکلی ایجاد نکند، اما برای پروژههای بزرگتر، این کارهای تکراری میتواند زمانبر باشد.
مهارت های تخصصی - توسعه دستی یک مدل ML مستلزم مهارت های تخصصی است. در عمل، هر تیمی که قصد توسعه یک مدل یادگیری ماشین را دارد، ممکن است این مهارت ها را نداشته باشد. اگر یک تیم یک دانشمند داده اختصاصی نداشته باشد، انجام این کار به صورت دستی ممکن است حتی امکان پذیر نباشد.
خوشبختانه، مراحل خاصی در توسعه مدل میتواند خودکار شود تا بار کارهای تکراری و نیاز به مهارتهای تخصصی کاهش یابد. خودکارسازی این وظایف موضوع این ماژول در یادگیری ماشین خودکار (AutoML) است.
AutoML چیست؟
AutoML فرآیندی برای خودکارسازی وظایف خاص در یک گردش کار یادگیری ماشینی است. میتوانید AutoML را مجموعهای از ابزارها و فناوریها در نظر بگیرید که ساخت مدلهای یادگیری ماشین را سریعتر و در دسترستر برای گروه وسیعتری از کاربران میسازد. اگرچه اتوماسیون می تواند در سراسر گردش کار ML کمک کند، وظایفی که اغلب با AutoML مرتبط هستند، مواردی هستند که در چرخه توسعه مدل نشان داده شده در شکل 1 گنجانده شده است. این وظایف تکراری عبارتند از:
- مهندسی داده
- مهندسی ویژگی.
- انتخاب ویژگی
- آموزش
- شناسایی الگوریتم ML مناسب
- انتخاب بهترین هایپرپارامترها
- تجزیه و تحلیل
- ارزیابی معیارهای تولید شده در طول آموزش بر اساس مجموعه دادههای آزمون و اعتبارسنجی.
با AutoML، می توانید به جای انتخاب ویژگی، تنظیم هایپرپارامترها و انتخاب الگوریتم مناسب، روی مشکل و داده های ML خود تمرکز کنید.