Python Machine Learning / Data Science Struktura projektu


10

Szukam informacji o tym, jak powinien zostać zorganizowany projekt uczenia maszynowego w języku Python. Dla zwykłych projektów w Pythonie jest Cookiecutter, a dla R ProjectTemplate .

To jest moja obecna struktura folderów, ale mieszam Notatniki Jupyter z rzeczywistym kodem Pythona i nie wydaje się to zbyt jasne.

.
├── cache
├── data
├── my_module
├── logs
├── notebooks
├── scripts
├── snippets
└── tools

Pracuję w folderze skryptów i obecnie dodaję wszystkie funkcje w plikach w module mój_moduł, ale to prowadzi do błędów ładowania danych (ścieżek względnych / bezwzględnych) i innych problemów.

Nie mogłem znaleźć dobrych najlepszych praktyk ani dobrych przykładów na ten temat poza niektórymi rozwiązaniami konkurencji i niektórymi notebookami, które mają wszystkie funkcje skondensowane na początku takiego notebooka.


Sprawdź, czy to pomoże (bez osobistego doświadczenia).
Emre

Odpowiedzi:


4

Nie sądzę, aby w tej rozwijającej się dziedzinie istniały najlepsze praktyki, ale oprócz gotowania, kilka ciekawych pomysłów pokazano w samouczku na konferencji SciPy 2016: http://isaacslavitt.com/2016/07/20/ data-science-is-software-talk /

Osobiście staram się minimalizować liczbę podfolderów w projekcie, chyba że mam naprawdę dobry sposób na ich rozróżnienie i mam dobry powód, aby je rozdzielić. Zła organizacja jest prawie tak zła jak żadna organizacja. Myślę, że najlepsza praktyka może zależeć od przypadku użycia - nie każdy projekt wymaga takiej samej ilości płyty grzewczej.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.