TGViewer
پایتون | Data Science | Machine Learning پایتون | Data Science | Machine Learning @python4all_pro · 24.2K subscribers
Post #791 3.32K
📚 آموزش ساخت و تلفیق سیستم AI در برنامه پایتون 📚

سلام دوستان! امروز می‌خوایم یک سیستم هوش مصنوعی (AI) رو با استفاده از PyTorch بسازیم و سپس اون رو در یک برنامه پایتون تلفیق کنیم. این آموزش برای کسانی که می‌خوان اصول پیاده‌سازی و استفاده از هوش مصنوعی در برنامه‌های کاربردی رو بفهمند بسیار مناسب هست.

1. تنظیمات اولیه 🛠️

نصب PyTorch
برای نصب PyTorch از دستور زیر استفاده کنید:
pip install torch torchvision

2. آماده‌سازی داده‌ها 📋

در این آموزش از مجموعه داده‌های MNIST استفاده می‌کنیم که شامل تصاویر دست‌نویس اعداد 0 تا 9 است.

import torch
import torchvision
import torchvision.transforms as transforms

# تعریف تبدیل‌ها
transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))])

# دانلود و بارگذاری مجموعه داده‌های آموزشی و تست
trainset = torchvision.datasets.MNIST(root='./data', train=True, download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=32, shuffle=True)

testset = torchvision.datasets.MNIST(root='./data', train=False, download=True, transform=transform)
testloader = torch.utils.data.DataLoader(testset, batch_size=32, shuffle=False)

3. تعریف مدل AI 📈

یک شبکه عصبی پیچیده برای تشخیص اعداد دست‌نویس تعریف می‌کنیم.

import torch.nn as nn
import torch.nn.functional as F

class ComplexNN(nn.Module):
def __init__(self):
super(ComplexNN, self).__init__()
self.conv1 = nn.Conv2d(1, 32, kernel_size=3, stride=1, padding=1)
self.conv2 = nn.Conv2d(32, 64, kernel_size=3, stride=1, padding=1)
self.pool = nn.MaxPool2d(kernel_size=2, stride=2, padding=0)
self.fc1 = nn.Linear(64 * 7 * 7, 128)
self.fc2 = nn.Linear(128, 10)

def forward(self, x):
x = self.pool(F.relu(self.conv1(x)))
x = self.pool(F.relu(self.conv2(x)))
x = x.view(-1, 64 * 7 * 7)
x = F.relu(self.fc1(x))
x = self.fc2(x)
return x

net = ComplexNN()

4. تعریف تابع هزینه و بهینه‌ساز 📉

ما از تابع هزینه CrossEntropy و بهینه‌ساز Adam استفاده می‌کنیم.

import torch.optim as optim

criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(net.parameters(), lr=0.001)

5. آموزش مدل AI 📊

شبکه عصبی رو برای چندین ایپاک (epoch) آموزش می‌دهیم.

for epoch in range(5):  # تعداد ایپاک‌ها

running_loss = 0.0
for i, data in enumerate(trainloader, 0):
inputs, labels = data

optimizer.zero_grad()

outputs = net(inputs)
loss = criterion(outputs, labels)
loss.backward()
optimizer.step()

running_loss += loss.item()
if i % 100 == 99:
print(f'[Epoch {epoch + 1}, Batch {i + 1}] loss: {running_loss / 100:.3f}')
running_loss = 0.0

print('آموزش تمام شد')

6. ذخیره مدل آموزش‌دیده شده 💾

مدل آموزش‌دیده شده رو ذخیره می‌کنیم تا در برنامه کاربردی از آن استفاده کنیم.

torch.save(net.state_dict(), 'model.pth')

7. بارگذاری مدل و استفاده از آن در برنامه کاربردی 📱

حالا یک برنامه پایتون جدید ایجاد می‌کنیم که شامل یک رابط کاربری ساده برای استفاده از مدل AI است. این برنامه با استفاده از کتابخانه tkinter یک رابط کاربری گرافیکی (GUI) ایجاد می‌کند.

ساخت رابط کاربری با tkinter👇



🆔 @Python4all_pro
  • 👍 7
More from @python4all_pro
  1. Oct 3, 2026🟣کتاب Oxford word skills یک بار جایزه بهترین کتاب آموزش زبان انگلیسی سال را دریافت کرده.…
  2. Oct 2, 2026با هوش مصنوعی فقط کد تولید نکن؛ محصول بساز. بوت‌کمپ ۷ روزه و عملی ساخت محصول واقعی با هوش…
  3. Oct 2, 2026💥 ۲۰۰ هزار تومان تخفیفِ بیشتر علاوه بر تخفیفِ ۷۵ درصدی موجود در سایت | اشتراک یک ساله فرا…
  4. Oct 2, 2026اگه کسب و کارت هوشمند نیست،وقتشه هوشمندش کنی! 🎓 دوره جامع ABA | دستیار کسب وکار هوشمند در…
  5. Oct 1, 2026ثبت نام دوره‌های تخصصی آموزش هوش مصنوعی شروع شد! اگه مدت‌هاست می‌خوای هوش مصنوعی رو جدی‌تر…
  6. Sep 29, 2026What better way to understand a powerful tool like Claude Code than to build your own vers…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →