بازگشت به دنیای هوش مصنوعی: مسیر یادگیری Data Science، Machine Learning و Deep Learning

سلام دوستان گلم حسین هستم و برگشتم!

پس از یک سالی که دور بودم از نوشتن به دلایل مهاجرت و این داستان ها، دوباره دوست دارم برگردم و این بار میخوام بیشتر رو مبحث هوش مصنوعی زوم کنم یعنی با تمرکز رو این فیلد بنویسم؛ هر چیزی که یک نفر برای یادگیری در این حوزه نیاز داره رو میخوام توضیح بدم البته بنظرم این نوشته‌ها بیشتر به درد کسانی میخوره که میخوان تو حوزه مهندسی این بخش ورود کنن یعنی بخش Data Science ، Machine Learning ، Deep Learning همچنین اضافه کنم که این حوزه خیلی بزرگه و منم دوست دارم با نوشتن در مورد هوش مصنوعی و هرچی پیرامونش هستش به دانش خودمم افزوده کنم!

هدفم اینه که بتونم در اینجا هر از چند روزی یکبار یک مقاله آموزشی به اشتراک بزارم و بتونم کمک خوبی به دوستان علاقه مند به هوش مصنوعی کنم.

برنامه چیه؟ چیکار میخوای کنی؟

وقتی راجب آموزش هوش مصنوعی تو گوگل سرچ میکنی خیلی به محتواهای زرد برخورد میکنی، که این داستان کمک که نمیکنه هیچ... آدم رو از کاری که میخواد انجام بده هم دلسرد میکنه. برای همین میخوام با یک مسیر یادگیری اصولی این کارو انجام بدم و از یک رود مپ (نقشه راه) خیلی خوب استفاده کنم و در کنارش هر منبعی که فکر میکنم خوبه رو پیدا کنم و ازش کمک بگیرم و خوشحال میشم دوستانی که این مطالب رو میخونن هم با نظرای خوبشون باعث دلگرمی بنده بشن. همین! دوستتون دارم :)

نقشه راه هوش مصنوعی

برای شروع باید از مباحث پایه شروع کنیم که مباحث رو به ترتیب می‌نویسم:

Fundamentals (اصول اولیه)

در این بخش، مفاهیم پایه‌ای که باید برای ورود به حوزه داده‌ها و هوش مصنوعی یاد بگیرید، ذکر شده‌.

1.1 Basics (مبانی)

  • Matrices & Linear Algebra Fundamentals: آشنایی با ماتریس‌ها و جبر خطی برای کار با داده‌های ساختار‌یافته و مدل‌های ریاضی.
  • Database Basics: یادگیری اصول اولیه پایگاه‌های داده.
  • Tabular Data: کار با داده‌های جدولی (مثل اکسل و پایگاه داده‌های SQL).
  • Data Frames & Series: کار با ساختارهای داده‌ای مثل DataFrame و Series در ابزارهایی مثل Pandas.
  • ETL (Extract, Transform, Load): یادگیری فرایندهای استخراج، تبدیل و بارگذاری داده‌ها.
  • Reporting & Vis Analysis: تحلیل و گزارش‌گیری از داده‌ها با استفاده از ابزارهای بصری‌سازی.
  • Data Formats: آشنایی با فرمت‌های مختلف داده (مثل JSON، XML، CSV).
  • Regular Expressions (RegEx): یادگیری الگوهای متنی برای جستجو و ویرایش داده‌های متنی.

1.2 SQL Basics

  • آشنایی با پایگاه داده‌های رابطه‌ای و کار با دستورات SQL برای ذخیره و بازیابی داده‌ها از منابع مختلف (PostgreSQL، SQLite، MySQL).

2. Python Programming (برنامه‌نویسی پایتون)

  • Python Basics: یادگیری اصول اولیه پایتون شامل متغیرها، توابع و ساختارهای کنترلی.
  • Important Libraries: آشنایی با کتابخانه‌های مهم پایتون مثل Numpy و Pandas.
  • Virtual Environments: استفاده از محیط‌های مجازی برای مدیریت پروژه‌های پایتون.
  • Jupyter Notebooks: استفاده از Jupyter Notebook برای تست و اجرای کدها.

3. Data Sources (منابع داده)

  • Data Mining: یادگیری روش‌های استخراج داده از منابع مختلف.
  • Web Scraping: تکنیک‌های استخراج داده از وب‌سایت‌ها.
  • Awesome Public Datasets: آشنایی با دیتاست‌های عمومی برای تمرین (مثل دیتاست‌های Kaggle).

4. Exploratory Data Analysis / Data Munging - Wrangling (تحلیل اکتشافی داده و پاکسازی)

  • Principal Component Analysis (PCA): کاهش ابعاد داده‌ها برای ساده‌تر کردن تحلیل.
  • Dimensionality & Numericity Reduction: کاهش پیچیدگی داده‌های عددی و ابعادی.
  • Normalization: نرمال‌سازی داده‌ها برای ایجاد تعادل بین مقادیر.
  • Data Sampling & Handling Missing Values: مدیریت مقادیر از دست رفته و نمونه‌برداری از داده‌ها.
  • Unbiased Estimators: تخمین‌گرهای بی‌طرف برای مدل‌سازی بهتر.
  • Blending System Values: ترکیب داده‌ها برای افزایش دقت مدل‌ها.
  • Feature Extraction: استخراج ویژگی‌های مهم از داده‌ها.
  • Denoising: کاهش نویز در داده‌ها.
  • Sampling: نمونه‌برداری از داده‌ها برای کارایی بیشتر در تحلیل‌ها.

5. Data Scientist & Data Engineer (دانشمند داده و مهندس داده)

این مسیر در نهایت به دو شاخه کلی منجر می‌شه:

  • Data Scientist: فردی که بیشتر روی تحلیل داده‌ها و مدل‌سازی آماری تمرکز می‌کنه.
  • Data Engineer: کسی که زیرساخت‌ها و ابزارهای لازم برای کار با داده‌های بزرگ را طراحی و مدیریت می‌کنه.

این نقشه راه، گام به گام شما را از مبانی اولیه تا مهارت‌های پیشرفته‌تر هدایت می‌کند.

در روز های آینده به ترتیب این مباحث رو به صورت کلی مورد بررسی قرار میدم.