A Deep Learning virtual machine with PyTorch and TensorFlow

17 January 2021
 GitHub

Introduction

This is a VirtualBox VM that is automatically generated using Vagrant.

Machine Learning and Deep Learning packages installed are: Scikit-Learn, NLTK, Keras, TensorFlow and PyTorch. A Vagrant file is used to generate this VM based on Ubuntu 16.04 (xenial64).

Getting Started

  • This VM should work in Windows, macOS and Linux (tested in Debian-10 Buster)

  • VirtualBox (version 6+) is required

  • Download and install Vagrant

  • Clone the virtual machine specs with:

git clone \
	https://github.com/f0nzie/vagrant-deeplearning-XE64G20U2R5120JPY383AE2007P8888.git
  • To generate the virtual machine, change to the folder where this repo has been cloned and type on your local terminal:

    vagrant up
    
  • Browse to Jupyter with: http://127.0.0.1:8888/. Try the different notebooks in there.

  • To access the virtual machine console or terminal, type:

    vagrant ssh
    
  • When finished, power off the virtual machine with:

    vagrant halt
    

What’s Installed

Anaconda3 Python 3.8.3

  • Deep Learning
    • Keras 2.4.3
    • TensorFlow 2.2.0
    • PyTorch 1.7.1
  • Machine Learning
    • sklearn 0.23.1
    • nltk 3.5
  • Numeric and Data Science
    • numpy 1.18.5
    • scipy 1.4.1
    • matplotlib 3.2.2
    • seaborn 0.10.1
    • pandas 1.0.5
    • bokeh 2.1.1
    • h5py 2.10.0
    • xlsxwriter 1.2.9
    • statsmodels 0.11.1
    • regex 2020.6.8

Jupyter notebook server

  • Jupyter notebook server is available at the host’s browser at http://localhost:8888.
  • Jupyter auto starts at boot by means of systemd jupyter.service
  • Service configuration file at /etc/systemd/system/jupyter.service generated by provision-vagrant.sh script.
  • Added PATH /home/vagrant/.pyenv/versions/anaconda3-2020.07/bin to Environment to be able to execute conda commands from Jupyter.

Testing

There are several notebooks to test the deep learning packages:

Other

  • Disk size: 20 GB
  • RAM: 5120 GB
  • CPUs: 2
  • Network: NAT
  • USB: off
  • Shared folders: 0

Codes machine name

  • XE64: Ubuntu Xenial 64-bit

  • G20: disk size 20 GB

  • U2: 02 CPUs

  • R5120: RAM 5120 MB

  • JPY383: Jupyter server with Python 3.8.3

  • AE2007: Anaconda3 version anaconda3-2020.07

  • P8888: Jupyter port 8888

  • Host name: XE64G20U2R5120JPY383AE2007P8888

  • VM name: vagrant-XE64G20U2R5120JPY383AE2007P8888

  • Short name: XE64G20JPY383P8888

Credits

Notes

  • Using Anaconda3-2020.07 installed with pyenv
  • Python version 3.8.3

« A Deep Learning virtual machine (TensorFlow) | A Vagrant virtual machine to run data science on Volve datasets »