آموزش جامع آمار و احتمال برای هوش مصنوعی


🎯 اهداف یادگیری

  • مفاهیم پایه آمار توصیفی و استنباطی را درک کنید
  • توزیع‌های احتمال مهم در هوش مصنوعی را بشناسید
  • قضیه بیز و کاربردهای آن در یادگیری ماشین را یاد بگیرید
  • مفاهیم همبستگی و رگرسیون را برای مدل‌سازی داده‌ها بیاموزید

📌 آمار توصیفی در هوش مصنوعی

آمار توصیفی به خلاصه‌سازی و توصیف ویژگی‌های اصلی داده‌ها می‌پردازد:

python
import numpy as np
import pandas as pd
# ایجاد یک دیتافریم نمونه
data = pd.DataFrame({
'age': np.random.randint(18, 70, 100),
'income': np.random.normal(5000, 1500, 100).astype(int)
})
# محاسبه معیارهای آماری
mean_age = data['age'].mean()
std_income = data['income'].std()
correlation = data.corr()

معیارهای اصلی آمار توصیفی:

  • شاخص‌های مرکزی: میانگین، میانه، نما (برای درک مرکز داده‌ها)
  • شاخص‌های پراکندگی: واریانس، انحراف معیار، دامنه (برای سنجش گستردگی داده‌ها)
  • همبستگی: ضریب همبستگی پیرسون و اسپیرمن (برای سنجش رابطه متغیرها)

📌 توزیع‌های احتمال در هوش مصنوعی

توزیع‌های احتمال پایه‌ای ترین مفاهیم در یادگیری ماشین هستند:

python
import numpy as np
import matplotlib.pyplot as plt
# توزیع نرمال
normal_data = np.random.normal(0, 1, 1000)
# توزیع یکنواخت
uniform_data = np.random.uniform(0, 1, 1000)
# توزیع دوجمله‌ای
binomial_data = np.random.binomial(10, 0.5, 1000)
# رسم هیستوگرام
plt.figure(figsize=(15, 5))
plt.subplot(1, 3, 1)
plt.hist(normal_data, bins=30, color='blue', alpha=0.7)
plt.title('توزیع نرمال')

توزیع‌های مهم در هوش مصنوعی:

توزیع کاربرد در هوش مصنوعی
نرمال (گاوسی) مدل‌سازی خطاها، شبکه‌های عصبی، الگوریتم‌های بهینه‌سازی
دوجمله‌ای مدل‌سازی موفقیت/شکست، تست‌های A/B
پواسون مدل‌سازی رویدادهای نادر، پردازش زبان طبیعی
نمایی مدل‌سازی زمان بین رویدادها، سیستم‌های صف

📌 قضیه بیز و یادگیری ماشین

قضیه بیز پایه‌ای برای بسیاری از الگوریتم‌های طبقه‌بندی در یادگیری ماشین است:

python
from sklearn.naive_bayes import GaussianNB
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
# بارگیری داده‌های iris
X, y = load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
# ایجاد و آموزش مدل بیز
model = GaussianNB()
model.fit(X_train, y_train)
# ارزیابی مدل
accuracy = model.score(X_test, y_test)
print(f'دقت مدل: {accuracy:.2f}')

فرمول قضیه بیز:

P(A|B) = [P(B|A) × P(A)] / P(B)

کاربردهای قضیه بیز:

  • دسته‌بند بیز ساده (Naive Bayes): برای طبقه‌بندی متن و فیلتر اسپم
  • شبکه‌های بیزی: برای مدل‌سازی روابط علّی بین متغیرها
  • یادگیری ماشین احتمالاتی: برای مدل‌سازی عدم قطعیت در پیش‌بینی‌ها

📌 رگرسیون و همبستگی در هوش مصنوعی

رگرسیون یکی از پایه‌ای‌ترین روش‌های یادگیری نظارت‌شده است:

python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
# تولید داده‌های مصنوعی
X = np.array([1, 2, 3, 4, 5]).reshape((-1, 1))
y = np.array([1, 3, 2, 3, 5])
# ایجاد و آموزش مدل رگرسیون خطی
model = LinearRegression()
model.fit(X, y)
# پیش‌بینی مقادیر
y_pred = model.predict(X)
# محاسبه ضریب همبستگی
correlation = np.corrcoef(X.flatten(), y)[0, 1]
# رسم نمودار
plt.scatter(X, y, color='blue', label='داده‌های واقعی')
plt.plot(X, y_pred, color='red', label='خط رگرسیون')
plt.title(f'رگرسیون خطی - ضریب همبستگی: {correlation:.2f}')
plt.xlabel('متغیر مستقل (X)')
plt.ylabel('متغیر وابسته (y)')
plt.legend()
plt.show()
# نمایش معادله خط
print(f'معادله خط: y = {model.coef_[0]:.2f}x + {model.intercept_:.2f}')
print(f'ضریب تعیین (R²): {model.score(X, y):.2f}')

📌 قدم بعدی

در درس بعدی با آشنا خواهیم شد!