Przejdź do głównej zawartości

reproducibility

dlaczego reproducibility jest ważne?

  • Pozwala innym (i sobie!) odtworzyć wyniki.
  • Ułatwia debugowanie i rozwijanie projektów.
  • Jest standardem w nauce i data science.

kluczowe praktyki (1–2 dni) ⭐

  • Ustalanie losowości: np.random.seed(42), random.seed(42), torch.manual_seed(42)
  • Zapisywanie wersji bibliotek: pip freeze > requirements.txt, conda env export > environment.yml
  • Praca w środowiskach wirtualnych (venv, conda)
  • Dokumentowanie kroków analizy (notatniki Jupyter, README)
  • Zapisywanie konfiguracji eksperymentów (np. pliki YAML/JSON)

narzędzia wspierające reproducibility

  • Jupyter Notebook / JupyterLab
  • Git (kontrola wersji kodu)
  • DVC, MLflow, Weights & Biases (śledzenie eksperymentów)

praktyczne ćwiczenia

  • Ustaw seed w swoim projekcie i sprawdź, czy wyniki są powtarzalne.
  • Zapisz wszystkie zależności do pliku requirements.txt lub environment.yml.
  • Pracuj w środowisku wirtualnym i dokumentuj kroki analizy.

dobre praktyki

  • Zawsze ustawiaj seed na początku projektu.
  • Przechowuj kod i dane wejściowe w repozytorium.
  • Dokumentuj wszystkie zmiany i konfiguracje.

polecane źródła