Information Visualization

75 - Interactive App Creation

Presenting your NLP task results in a transparent, interactive and fancy App.

Presenting your NLP task results should be transparent, interactive and fancy. Several solutions are available to share your data and code. Notebooks are open-source web applications that allows you to create and share documents that contain live code, equations, visualizations and narrative text. These Notebooks and web apps are flexible and you can arrange the user interface with building-blocks or plugins for your specific use-case.

With Streamlit you can code the UI in the same script as you analysis is. By saving the script, the browser will automatically refresh. It’s a great way of building interactive demo’s. You can also deploy your scripts to the Streamlit cloud platform. The computing power in the free cloud platform is not suited for heavy apps.

Streamlit self-driving car demo with code on the left and browser UI with a sidebar on the right (source)

Streamlit demo: Controllable face GAN generator (source)

Jupyter Notebooks (f.k.a. IPython Notebook) facilitate in-browser interactive computing with direct results. There is also JupyterLab which is a web-based interactive development environment for Jupyter notebooks.

Jupyter Notebook with text-, code- and output blocks (source)

JupyterLab environment (source)

Google’s Colab (from Colaboratory) Notebooks are like Jupyter Notebooks, it’s free, runs in the cloud and there is no setup. In Colab you can choose to run on a (light but free) GPU runtime, instead of CPU.

Colab demo notebook (source)

This article is part of the project Periodic Table of NLP Tasks. Click to read more about the making of the Periodic Table and the project to systemize NLP tasks.