sscardapane/reprodl2021

Add miniconda installation instructions for industrial practitioners

AndreaPi opened this issue ยท 5 comments

Hi,

thanks for the really cool course! As of October 2020, Anaconda cannot be used anymore by businesses with more than 200 employees unless they buy the commercial edition. For this reason, the course as it is cannot be followed by industrial practitioners unless they business buys Anaconda Commercial licenses. Thus, I suggest you to add local set-up instructions based on miniforge, which:

  1. defaults to the conda-forge channel, which can be used freely by commercial and non-commercial organizations alike
  2. optionally supports Mamba as an installer which is faster and more memory-efficient than conda

Good point! The local set-up is the only place I have used Anaconda. I made a test with this configuration on Ubuntu 20.04 with Python virtual environments and everything works:

python3 -m venv reprodl
source reprodl/bin/activate

pip install notebook matplotlib pandas ipywidgets pathlib
pip install torch torchvision torchaudio
pip install pytorch-lightning

Would there be any issue to this solution in your case?

Ok, so you would update the README file to show that conda isn't strictly needed for the local set-up. One can simply create a Python 3 venv, activate it and then pip install stuff to it. Sounds perfect! I liked my solution because it also showed ML users in industry who needed conda, how to access its goodies without having to rely on Anaconda. However, this is a tangential issue with respect to your course goals. Since you don't use conda later on, your solution is more straightforward.
Just two minor notes:

  1. given the course emphasis on reproducibility, wouldn't it be better to freeze the package version requirements in a requirements.txt file? I'm sure you did it on purpose, in order to cover requirements.txt files later in the course. I was wondering however if there might be a future scenario in which the initial installation (notebook, matplotlib....pytorch-lightning) breaks because of incompatible updates. Probably very unlikely though.
  2. you didn't include cudatoolkit=10.2 in the pip install chain here, but it's included in the original one. Is this just a typo, or isn't it actually needed?
  1. Creating a requirements.txt is actually part of one of the exercises. If some of the updates create unexpected changes, I will update the setup instructions to mention a particular version.
  2. Good point, I followed the PyTorch instructions, so I am guessing cudatoolkit is automatically installed in that case.

Ok! Shall I close the issue or do you want to update the README first and then close the issue yourself?

EDIT: concerning the PyTorch instructions for pip install, they suggest using pip3... Not sure if that would make a difference?

I am closing it now, I'll update the README and possibly re-open it if I have additional issues with virtual environments. Thanks for the feedback! ๐Ÿ™‚