Tools

3 minute read

My most frequently-used tools to set up working space, monitor machine learning projects and deploy models.

1. Set Up Virtual Machines

2. Set Up Work Spaces

3. VSCode

My favorite VSCode setup for machine learning projects 🤗. First, I use RemoteSSH extension to SSH to a virtual machine. It makes interacting with files on cloud as smooth as working locally. Then I use Byobu to open multiple terminal windows: htop (monitor CPUs), watch -n1 nvidia-smi (monitor GPUs), jupyter lab, tensorboard dev upload --logdir . (upload logs to TensorBoard.dev) etc. I can press F2 to create a new window and press F4 to switch between windows. Extremely convenient ⚡!

  • My favorite theme: Dracula 🧛‍♂️
  • Extensions:
    • 🌟RemoteSSH: Open any folder on a remote machine using SSH and take advantage of VS Code’s full feature set.
    • GitLens: Make Git more powerful on Visual Studio Code.
    • Peacock: Subtly change the workspace color of our workspace. Ideal when we have multiple VSCode instances.
    • vscode-icons: Icons for Visual Studio Code.
    • Bracket Pair Colorizer: A customizable extension for colorizing matching brackets.
    • Code Spell Checker: Spelling checker for source code.
    • Setting Sync: Synchronize settings, snippets, themes, file icons, launch, keybindings, workspaces and extensions across multiple machines.
    • Prettier: Code formatter using prettier.
  • Config code formatter
  • Add vertical rulers

4. Git

Some basic guides to interact with Git.

5. Production

After finishing important machine learning projects, I always want to deploy a simple prototype of my model with Streamlit to illustrate its usage or to present my works with the audience.

6. Cheatsheet

7. Misc