Python
5 subscribers
14 photos
10 videos
94 links
ف
Download Telegram
Forwarded from Python3
آموزش کتابخانه Theano برای پایتون 🐍

📌 Theano یک کتابخانه پایتون برای محاسبات عددی است که به ویژه برای یادگیری ماشین و شبکه‌های عصبی استفاده می‌شود. این کتابخانه توسط تیم تحقیقاتی دانشگاه مونترال توسعه یافته است و اولین بار در سال 2008 معرفی شد. نسخه پایدار نهایی آن 1.0.5 در سپتامبر 2017 منتشر شد.

ویژگی‌های کلیدی Theano 📊

- محاسبات کارآمد: محاسبات عددی با کارایی بالا، به ویژه برای GPU.
- دیفرانسیل‌گیری خودکار: محاسبه خودکار گرادیان‌ها برای بهینه‌سازی مدل‌ها.
- سازگاری با NumPy: استفاده آسان از آرایه‌های NumPy.
- پشتیبانی از توزیع و پردازش موازی: استفاده از توان پردازشی GPU و CPU به صورت همزمان.

## نصب کتابخانه Theano 🚀
ابتدا باید کتابخانه را نصب کنید. برای این کار از دستور زیر استفاده کنید:

pip install theano

ایجاد یک مدل ساده 📈
در این بخش، یک مدل ساده با استفاده از Theano ایجاد می‌کنیم. این مدل دو عدد را با هم جمع می‌کند.

توضیحات کد:
import theano
import theano.tensor as T

# تعریف متغیرها
x = T.dscalar('x')
y = T.dscalar('y')

# تعریف تابع
z = x + y

# کامپایل کردن تابع
f = theano.function([x, y], z)

# استفاده از تابع
result = f(2, 3)
print(result) # خروجی: 5

🔹 تعریف متغیرها: در این قسمت، دو متغیر ورودی x و y با نوع dscalar (عدد اعشاری) تعریف شده‌اند.
🔹 تعریف تابع: تابع z به صورت جمع دو متغیر x و y تعریف شده است.
🔹 کامپایل کردن تابع: تابع f با استفاده از theano.function کامپایل شده است که ورودی‌های x و y را گرفته و z را محاسبه می‌کند.
🔹 استفاده از تابع: با فراخوانی f(2, 3)، تابع جمع دو عدد 2 و 3 را محاسبه و نتیجه 5 را برمی‌گرداند.

پیاده‌سازی یک شبکه عصبی ساده 🧠
در این قسمت، یک شبکه عصبی ساده با Theano ایجاد می‌کنیم.

توضیحات کد:
import numpy as np

# تعریف متغیرهای ورودی و وزن‌ها
X = T.dmatrix('X')
W = theano.shared(np.random.randn(2, 1), name='W')
b = theano.shared(0., name='b')

# تعریف تابع شبکه عصبی
output = T.nnet.sigmoid(T.dot(X, W) + b)

# کامپایل کردن تابع
predict = theano.function([X], output)

# ورودی نمونه
X_sample = np.array([[1, 2], [3, 4], [5, 6]])

# پیش‌بینی
predictions = predict(X_sample)
print(predictions)

🔹 تعریف متغیرهای ورودی و وزن‌ها: متغیر X به صورت ماتریس (dmatrix) تعریف شده است. وزن‌ها W و بایاس b نیز به صورت shared تعریف شده‌اند که به شبکه عصبی اجازه می‌دهد که آنها را در طول آموزش تغییر دهد.
🔹 تعریف تابع شبکه عصبی: تابع output با استفاده از sigmoid از theano.tensor.nnet تعریف شده است که خروجی شبکه عصبی را محاسبه می‌کند.
🔹 کامپایل کردن تابع: تابع predict با استفاده از theano.function کامپایل شده است که ورودی X را گرفته و خروجی شبکه را محاسبه می‌کند.
🔹 ورودی نمونه: یک نمونه ورودی X_sample به صورت آرایه‌ای از NumPy تعریف شده است.
🔹 پیش‌بینی: با فراخوانی predict(X_sample)، پیش‌بینی شبکه عصبی برای ورودی‌های نمونه محاسبه و نتیجه نمایش داده می‌شود.

نتیجه‌گیری
کتابخانه Theano ابزار قدرتمندی برای انجام محاسبات ریاضی پیچیده و پیاده‌سازی مدل‌های یادگیری ماشین است. با استفاده از این آموزش، شما می‌توانید شروع به کار با این کتابخانه کنید و پروژه‌های خود را بهبود بخشید.

[اینم کانال منه]

#Theano #Python #MachineLearning #DeepLearning #DataScience #آموزش_پایتون #یادگیری_ماشین #شبکه_عصبی