CoolFace
Datasetpublic

ysn-rfd/text-dataset-tiny-code-script-py-format

USED of tahamajs/medicine_ds_persian for .parquet file USED of Alijafarixcs2/persian-it-llama2-2k for .parquet file USED of Abirate/english_quotes for .jsonl file NEW FILES (05/12/2025) NEW FILES (12/26/2025) NEW FILES (02/15/2026)

sourceHugging Faceapache-2.0updated 4mo agoView on Hugging Face
3likes1.7kdownloads
day4_2.py46 linesDownload Raw Back to pytorch_study
1import torch
2import torch.nn as nn
3import torch.optim as optim
4
5# ⚡ 1. تعریف شبکه عصبی
6class SimpleNN(nn.Module):
7    def __init__(self, input_size, hidden_size, output_size):
8        super(SimpleNN, self).__init__()
9        self.hidden = nn.Linear(input_size, hidden_size)  # لایه پنهان
10        self.activation = nn.ReLU()  # تابع فعال‌سازی
11        self.output = nn.Linear(hidden_size, output_size)  # لایه خروجی
12
13    def forward(self, x):
14        x = self.hidden(x)
15        x = self.activation(x)
16        x = self.output(x)
17        return x
18
19# ⚡ 2. تنظیمات مدل
20input_size = 10   # تعداد ویژگی‌های ورودی (مثلاً 4 ویژگی برای هر داده)
21hidden_size = 4 # تعداد نورون‌های لایه پنهان
22output_size = 4  # تعداد کلاس‌ها (مثلاً 3 کلاس)
23
24model = SimpleNN(input_size, hidden_size, output_size)
25print(model)
26
27# ⚡ 3. تعریف تابع هزینه و بهینه‌ساز
28criterion = nn.CrossEntropyLoss()  # مناسب برای مسائل طبقه‌بندی
29optimizer = optim.Adam(model.parameters(), lr=0.01)  # الگوریتم بهینه‌سازی
30
31# ⚡ 4. داده‌های ورودی ساختگی
32X_train = torch.rand(10, input_size)  # 5 نمونه، هر نمونه دارای 4 ویژگی
33y_train = torch.tensor([0, 1, 2, 1, 0, 1, 2, 1, 0, 1])  # برچسب‌های کلاس (0، 1 یا 2)
34
35# ⚡ 5. آموزش مدل (یک epoch برای مثال)
36for i in range(1):
37    optimizer.zero_grad()  # تنظیم گرادیان‌ها به صفر
38    outputs = model(X_train)  # عبور داده‌ها از شبکه
39    loss = criterion(outputs, y_train)  # محاسبه خطا
40    loss.backward()  # محاسبه گرادیان‌ها
41    optimizer.step()  # بروزرسانی وزن‌ها
42
43# ⚡ 6. نمایش خروجی و خطا
44print(f"Output:\n{outputs}")
45print(f"Loss: {loss.item()}")
46