Структура проекту машинного навчання Python / Data Science


10

Я шукаю інформацію про те, як слід організувати проект машинного навчання Python. Для звичайних проектів Python є Cookiecutter та R ProjectTemplate .

Це моя поточна структура папок, але я змішую Jupyter Notebooks з фактичним кодом Python, і це здається не дуже зрозумілим.

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

Я працюю в папці сценаріїв і в даний час додаю всі функції у файли під my_module, але це призводить до помилок завантаження даних (відносний / абсолютний шлях) та інших проблем.

Я не міг знайти належних найкращих практик чи хороших прикладів на цю тему, окрім деяких рішень щодо змагань з змаганнями та деяких ноутбуків, у яких усі функції були згущені на початку такого ноутбука.


Подивіться, чи це допомагає (немає особистого досвіду).
Емре

Відповіді:


4

Я не думаю, що в цій області, що розвивається, ще немає найкращих практик, але, окрім створення файлів cookie, в навчальному посібнику на конференції SciPy 2016 були знайдені цікаві ідеї: http://isaacslavitt.com/2016/07/20/ data-science-is-software-talk /

Особисто я намагаюся мінімізувати кількість підпапок у проекті, якщо я не маю дійсно гарного способу їх розрізнити і не маю вагомих причин тримати їх окремо. Погана організація майже така ж погана, як і жодна організація. Я думаю, що найкраща практика може залежати від випадку використання - не кожен проект потребує однакової кількості шаблону.


3

Університет Вашингтона випустив шаблон проекту для малих наукових пітонних проектів (включаючи проекти з наукових даних) shablona. Це більш-менш те, що ви шукаєте?

https://github.com/uwescience/shablona

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.