I'm looking for information on how should a Python Machine Learning project be organized. For Python usual projects there is [Cookiecutter](http://cookiecutter.readthedocs.org/en/latest/) and for R [ProjectTemplate](http://projecttemplate.net/getting_started.html). 

This is my current folder structure, but I'm mixing Jupyter Notebooks with actual Python code and it does not seems very clear.

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

```

I work in the scripts folder and currently adding all the functions in files under my\_module, but that leads to errors loading data(relative/absolute paths) and other problems.

I could not find proper *best practices* or good examples on this topic besides some kaggle competition solutions and some Notebooks that have all the functions condensed at the start of such Notebook.