Noventix / دانش‌آموزک

میانگین متحرک یک سری زمانی را با NumPy حساب کن

Daily Challenge · Data Science

Daily ChallengeXP +۶۰Data Science

صورت مسئله

معماری را با اندازه داده هماهنگ کن و زیان را در چند گام ثبت کن، نه فقط در پایان.

آزمون‌های پذیرش

  • آموزش چند گام
  • زیان کاهشی
  • داده نامتوازن

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

نمونه راه‌حل

import torch

X = torch.randn(200, 8)
y = (X.sum(dim=1) > 0).float().unsqueeze(1)

model = torch.nn.Sequential(
    torch.nn.Linear(8, 16),
    torch.nn.ReLU(),
    torch.nn.Linear(16, 1),
)
loss_fn = torch.nn.BCEWithLogitsLoss()
optimizer = torch.optim.Adam(model.parameters(), lr=0.01)

for step in range(200):
    optimizer.zero_grad()
    loss = loss_fn(model(X), y)
    loss.backward()
    optimizer.step()

print(round(float(loss), 4))
میزکار چندفایلی Python · مفسر مشترک با ترمینال · سقف اجرا ۱۵ ثانیه
فایل‌های پروژه
main.py
آماده اجرا

خروجی

هنوز کدی اجرا نشده است.

کد شما با مفسر واقعی Python (Pyodide) در مرورگر اجرا می‌شود و فایل‌های پروژه بین اجراها و بین ادیتور و ترمینال مشترک‌اند. بسته‌های سازگار با Pyodide هنگام اجرا بارگیری می‌شوند؛ دسترسی به فایل واقعی دستگاه، شبکه و پوسته سیستم‌عامل وجود ندارد.

راهنمای تمرین

  • فایل‌های داده را با نام نسبی مثل data.csv بخوان.
  • برای بسته‌ها از pip install numpy در ترمینال استفاده کن.
  • حالت‌های مرزی و خطاها را در فایل جداگانه آزمون کن.