یادگیری ماشین بدون ریاضی و کدنویسی
آیا یاد گرفتن یادگیری ماشین بدون دانش ریاضی و مهارت کدنویسی امکانپذیر است؟ پاسخ کوتاهش این است که بله امکانپذیر است! در این مقاله میخواهم درباره موضوع یادگیری ماشین بدون ریاضی و کدنویسی صحبت کنم؛ راهکارهایی برای افراد علاقهمند به یادگیری ماشین با هر سطحی از ریاضی و کدنویسی ارائه میدهم. میخواهم ورود به این حوزه را تسهیل کنم تا طعم یادگیری ماشین را بچشید. با من همراه باشید…

یادگیری ماشین بدون ریاضی و کدنویسی
ورود به یادگیری ماشین بدون دانش ریاضی و مهارت کدنویسی شدنی است؟! این سوالی است که در طول سالیان طولانی تدریسم، بسیار بسیار از من پرسیده شده است. راستش را بخواهید، من از بدنه دانشگاه و به صورت آکادمیک وارد این رشته شدم. در گذشته، ذهنیتی دانشگاهی داشتم؛ همیشه تمایلم این بود که افراد ابتدا ریاضیات و کدنویسی را عمیق یاد بگیرند و بعد قدم به دنیای یادگیری ماشین بگذارند. حتی گاهی با خودم میگفتم: «مگر میشود کسی ریاضی یا کدنویسی بلد نباشد؟ اینها که کاری ندارند!»
اما با گذر زمان به واسطه تدریس آدمهای مختلفی را دیدم؛ افرادی خارج از دانشگاه و بدون تحصیلات مرتبط که تمایل داشتند وارد دنیای هوش مصنوعی شوند. دیدم بعضی از آنها با سبک و روش خودشان وارد شدند و اتفاقا بسیار هم موفق شدند! کمکم ذهنیت من تغییر کرد؛ به این نتیجه رسیدم که در یادگیری ماشین، مسیرهای متفاوتی برای ورود وجود دارد. شاید در نهایت همه ما به یک مقصد برسیم و به ریاضی و کدنویسی نیاز پیدا کنیم، اما مسیر شروعمان میتواند متفاوت باشد. هرکسی متناسب با توانایی و شرایطش میتواند یک مسیر خوب برای شروع یادگیری ماشین انتخاب کند.
در واقع، امروز میگویم:
آب دریا را اگر نتوان کشید،
هم به قدر جرعه میباید چشید!
درادامه با یک مثال ساده از گیمینگ، بیشتر درباره ذهنیت امروزم از ورود به یادگیری ماشین توضیح میدهم.
سیستم مورد نیاز برای اجرای یادگیری ماشین!
برای اینکه دیدگاه جدیدم را بهتر توضیح دهم، بگذارید یک مثال از دنیای گیمینگ بزنم! بازی معروف فورزا (Forza) را در نظر بگیرید که یک بازی ماشینسواری فوقالعاده خفن است. سازندگان بازیها هوشمندانه رفتار میکنند؛ آنها مخاطب را محدود نمیکنند و چند سطح سیستم را معرفی میکنند:
- حداقل سیستم مورد نیاز (Minimum Requirement): به شما میگوید اگر یک لپتاپ معمولی با یک کارت گرافیک ساده داری، باز هم میتوانی بازی را نصب کنی! بله، شاید مجبور شوی رزولوشن را پایین بیاوری، گرافیک را کم کنی، بازی کمی لگ بزند یا حتی وسط کار کرش کند؛ اما مهم این است که داری بازی را تجربه میکنی و از آن لذت میبری!
- سیستم پیشنهادی (Recommended): اگر این سختافزار را داشته باشی، گرافیک و فریمرِیت (FPS) بهتری میگیری و لذت بازی برایت چندبرابر میشود.
- سیستم اولترا (Ultra): این دیگر مخصوص خورههای بازی است! سیستم از صندلی، فرمان و دنده دستی مخصوص و مانیتورهای عریض پشتیبانی میکند تا یک شبیهساز واقعی رانندگی داشته باشی.

فکر میکنم، ورود به یادگیری ماشین، شاید حتی ورود به هر حوزهای، میتواند مشابه با مثال گیمینگ مسیرهای مختلفی داشته باشد. درهرکدام سطحی از بهرهمندی را تجربه میکنید. درنهایت، این تصمیم شماست که آیا دوست دارید به سطحی بالاتر بروید یا نه.
توجه دقت کنید، من ابدا نمیگویم که بدون ریاضی و کدنویسی در یادگیری ماشین و هوش مصنوعی میتوانید به درآمد برسید. اصلا در این مقاله تمرکز من روی این بخش نیست. تمرکز و هدف من این است که با کمترین هزینه زمانی و روانی، وارد یادگیری ماشین شوید و طعم این حوزه را بچشید.شاید اصلا خوشتان نیامد و تصمیم بگیرید، زود کنار بکشید و وارد حوزه دیگری شوید.
دستهبندی افراد در یادگیری ماشین
ما پیش از این در مقاله پیشنیازهای یادگیری ماشین گفتیم که چهار نیازمندی برای ورود به یادگیری ماشین وجود دارد: ۱) سختافزار، ۲) مهارت عمومی کامپیوتر، ۳) ریاضیات و ۴) کدنویسی. بیشتر افراد دو مورد اول را دارند، اما مورد ۳ و ۴ چالش بزرگ آنهاست. برهمین اساس، من افراد علاقهمند به یادگیری ماشین را به 4 دسته تقسیم میکنم:
- افرادی که ریاضی و کدنویسی بلد نیستند.
- افرادی که کدنویسی بلدند، اما ریاضی نه.
- افرادی که ریاضی بلدند، اما کدنویسی نه.
- افرادی که کدنویسی و ریاضی بلدند.
در ادامه، بهصورت مفصل راهکار پیشنهادیام را برای هر دسته توضیح میدهم.
ورود به یادگیری ماشین بدون کدنویسی و ریاضی
اگر در این دسته هستید (مثلا تحصیلات دانشگاهی ندارید یا رشتهتان کاملا بیارتباط است)، پیشنهاد اول من همچنان این است که از راهکارهای کوتاهی که در مقاله پیشنیازهای یادگیری ماشین گفتم، برای یادگیری حداقلی پایتون و ریاضی استفاده کنید. اما اگر میخواهید همین امروز و بدون معطلی وارد یادگیری ماشین شوید، من نقشه راه سه مرحلهای پوسته، گوشته و هسته را به شما پیشنهاد میکنم. در ادامه، درباره هریک از این مراحل با جزئیات توضیح میدهم.
ابزارهای بدون کد در یادگیری ماشین (No-Code / Low-Code)
نرمافزارهای فوقالعادهای مثل Orange یا IBM SPSS Modeler ساخته شده که بدون درگیری عمیق با ریاضی و کدنویسی شما را با یادگیری ماشین آشنا میکند. البته، پیشنهاد من شروع با نرمافزار اورنج است. این نرمافزار به معنای واقعی کلمه «گوگولی» است! اصلا با هدف آموزشی ساخته شده و محیطی بسیار ساده، رنگارنگ و جذاب دارد که آدم را ترغیب به کار میکند.
در اورنج، شما ماژولها و کامپوننتهای مختلف را با درگودراپ (کشیدن و رها کردن) کنار هم میگذارید؛ مثلا کامپوننت دیتا را میآورید، به بخش ترنسفورم وصل میکنید و تمام! بدون نوشتن یک خط کد، مفاهیم دادهکاوی و یادگیری ماشین را لمس میکنید. من یک ویدیوی آموزشی درباره اورنج در کانال یوتیوب هوسم دارم که محبوب هم شد. حتی در اولین جلسه دورههای آموزشیام هم معمولا به دانشجویان معرفی میکنم تا ببینند غول یادگیری ماشین چقدر میتواند ساده باشد. با یک آموزش ۱۰ تا ۱۵ ساعته فارسی یا انگلیسی میتوانید به این ابزار مسلط شوید.

آموزشهای کدمحور با ریاضیات کمعمق برای یادگیری ماشین
وقتی با نرمافزار اورنج کار کردید و از یادگیری ماشین خوشتان آمد، کنجکاویتان تحریک میشود. حالا وقت آن است که کمی پایتون یاد بگیرید و وارد آموزشهای کدمحور شوید. در این مرحله نیازی به ریاضیات عمیق نیست. کتابخانههای جالبی مثل PyCaret وجود دارد که شعارشان Low-Code Machine Learning است. شما با ۷ الی ۸ خط کد ساده پایتون میتوانید یک پروژه کلاسبندی (Classification) کامل بنویسید، مدل را آموزش دهید و ذخیره کنید! کتابخانه PyCaret کار کدنویسی در یادگیری ماشین را بسیار ساده کرده است.
from pycaret.classification import ClassificationExperiment
from pycaret.datasets import get_data
# Sample dataset.
data = get_data("juice")
# Set up an experiment + compare 12 models.
exp = ClassificationExperiment(target="Purchase").fit(data)
top = exp.compare_models(n_select=3)
# Tune the winner. Pipeline-in / Pipeline-out.
tuned = exp.tune_model(top.best, n_iter=20)
# Deploy.
pipeline = exp.finalize_model(tuned.pipeline).pipeline
exp.save_model(pipeline, "production-juice-model")
توجه وقتی وارد فاز کدمحور شدید، حتما پروژه یادگیری ماشین انجام دهید. به سایت کگل (Kaggle) بروید؛ بهشت فعالان حوزه هوش مصنوعی و دیتا ساینس! کگل مسابقات بزرگ، نمونه کدهای فراوان و بیش از نیم میلیون دیتاست در تمام حوزهها (پزشکی، ورزشی، کشاورزی و…) دارد. دیتاستهای مناسب انتخاب کنید، کد بزنید و نتیجه را در اکانت کگل خودتان منتشر کنید. این یعنی برداشتن اولین قدمها برای ساختن یک رزومه.
آموزشهای جامع یادگیری ماشین با رویکرد ریاضی
حالا دو مرحله یادگیری ماشین با نرمافزار و یادگیری ماشین کدمحور را پشت سر گذاشتید؛ فضای یادگیری ماشین را درک کردهاید، پروژه انجام دادهاید، اعتماد به نفستان بالا رفته و نقاط ضعف خود را شناختهاید.به نظرم، به جایی میرسید که برای رفع ضعفهایتان و شرکت در مصاحبههای شغلی بزرگ، خودجوش و با اعتمادبهنفس بالا به سراغ آموزشهای جامع و ریاضیمحور یادگیری ماشین خواهید رفت.
یادگیری ماشین بدون ریاضی
در این دسته، افرادی قرار دارند که کدنویسی بلدند، اما با ریاضی قهر هستند! افراد این دسته ممکن است برنامهنویس باشند یا اینکه تحصیلات دانشگاهی مرتبط نداشته باشند. شما به مرحله پوسته، یادگیری ماشین با نرمافزار Orange نیازی ندارید. مستقیما با آموزشهای کدمحور شروع کنید. از آنجا که پایه کدنویسیتان قوی است، انتظار میرود پروژههای بسیار جاندارتر و قویتری انجام دهید. پروژههایتان را در گیتهاب یا کگل بگذارید تا دیده شوند. با این ترکیب (کدنویسی عالی + یادگیری ماشین کدمحور)، شانس نسبتا خوبی برای پیدا کردن موقعیتهای شغلی خواهید داشت.
ممکن است، در طول یادگیری و انجام پروژه یادگیری ماشین، علاقهمند شوید که عمق ریاضیات پشت مدلها را هم یاد بگیرید.بنابراین، پس از پشت سر گذاشتن دوره یادگیری کدمحور، درصورت تمایل و نیاز، میتوانید به سراغ آموزشهای جامع و ریاضیمحور یادگیری ماشین بروید.
یادگیری ماشین بدون کدنویسی
این دسته معمولا دانشجویان یا فارغالتحصیلان رشتههای مهندسی مثل برق و مکانیک هستند که مفاهیم ریاضی را عالی میفهمند، اما نسبت به یادگیری زبان پایتون مقاومت عجیبی دارند! دسته بزرگی از این افراد کسانی هستند که سالها با نرمافزار MATLAB کار کردهاند و اصرار دارند یادگیری ماشین را هم با متلب جلو ببرند.
متلب نرمافزار فوقالعادهای است و من سالها با آن را تدریس کردهام؛ اما واقعیت بازار این است که جامعه یادگیری ماشینِ متلب بسیار کوچک است. اگر به مشکلی بخورید، کسی نیست کمکتان کند و در بازار کار هم کمتر کسی به دنبال متخصص یادگیری ماشین با متلب میگردد.
پیشنهاد من به شما این است که مقاومتتان را بشکنید! کدنویسی پایتون بسیار به متلب نزدیک و شبیه است. اگر همچنان ترستان شدید است، چند ساعتی با نرمافزارهای بدون کدنویسی مثل اورنج کار کنید تا فضا دستتان بیاید. اما پاشنه آشیل شما کدنویسی پایتون است؛ اگر کمی به خودتان سختی بدهید و پایتون را یاد بگیرید، به واسطه پایه ریاضی قوی که دارید، بعد از گذراندن دورههای عمیق تئوری-کد، به یک متخصص باسواد در این حوزه تبدیل خواهید شد.
مسیرهای متفاوت، اما مقصد یکسان!
همانطور که دیدید، تمام این گروهها در نهایت برای حرفهای شدن به نقطهای میرسند که بهتر است ریاضی و کدنویسی را یاد بگیرند؛ اما نقطه و مسیر شروع چطور؟ کاملا متفاوت است! یکی با ابزار ساده و بصری مثل اورنج شروع میکند، یکی با پایتون و پایکرت و دیگری مستقیم به قلب تئوری میزند. همه اینها برای این است که ورود شما تسهیل شود. طعم یادگیری ماشین را بچشید؛ اگر خوشتان آمد، مطمئن باشید خودجوش برای یادگیری بیشتر سرمایهگذاری میکنید. اگر هم خوشتان نیامد، با صرف کمترین زمان و هزینه، مسیرتان را عوض میکنید و به سراغ حوزه دیگری میروید.

یادگیری ماشین هوسم
راستش را بخواهید، ما در سایت هوسم یک دوره یادگیری ماشین جامع (۱۲۸ ساعته) داریم که دقیقا با همین رویکرد ریاضیمحور و کدمحور طراحی شده است. تئوریها را عمیق گفتهایم، اسلایدها و نمودارها اختصاصی هستند و پیادهسازیها صفر تا صد است. افرادی که با پایه خوب وارد این دوره میشوند، به شدت لذت میبرند و اغلب میگویند، ای کاش زودتر هوسم را پیدا کرده بودیم! من هم همیشه ترجیح میدهم کسانی این دوره را تهیه کنند که سطح ریاضی و کدنویسیشان در حد مطلوبی باشد تا بتوانند نهایت استفاده را از آن ببرند و به یک نمونه موفق در بازار کار تبدیل شوند.
برای همه شما در هر مسیری که هستید آرزوی موفقیت دارم. خیلی دوست دارم در بخش نظرات برایم بنویسید که جزو کدام دسته هستید؟ چطور وارد این حوزه شدید و چه تجربیاتی کسب کردید؟ تجربههای شما قطعا چراغ راه دیگران خواهد بود. خیلی ممنون، فعلا!
دیدگاهتان را بنویسید