Monday Dec 13: Visualize machine learning models with Streamlit and Mapbox!

Date: Dec. 13, 2021

Meeting agenda & updates

tl/dr:
- Visualize machine learning with Streamlit and Mapbox!
- first installment of our new series, Future of Coding: Automate refactorings with LibCST
- ! sign up at https://www.princetonpy.org/signup/ !

details:

We'll start at 7pm sharp with our new "Future of Coding" series: Automate refactorings with LibCST [and why this is a glimpse of our future].
Then after introductions:
Easy Machine Learning Visualization with Streamlit and MapBox
Presented by Tomi Tyrrell, member of Princeton Python Users.
Tomi will show how to:
    - create GUIs for your machine learning models in minutes
    - create stunning, interactive maps from pandas Dataframes and lat/long values
Tomi will give an overview of Streamlit, live code a GUI for a machine learning model, and then demo her latest interactive Streamlit+MapBox project.
And you're cordially invited to update us on your project/idea/question when you introduce yourself, or to just sit back and enjoy the python!

Future meetings will include:
- data visualization in Pandas
- crash course in deep learning
- learn python from scratch
- Embrace error: how error foo can advance your coding, and beyond!

Plus installments of our ongoing series:
"Future of Coding" explores automated transformation of source code.
"Demysti-py" looks at how familiar constructs are implemented.
"Pythonic pitfalls" improves both your code and your fundamentals.
"Deep reading" explores and applies academic articles on deep learning.
"New tool roundup" by our resident code hound keeps you updated.

Post-meeting notes

Notes on Future of coding series, part 1: absolutify relative imports
    - jupyterlab notebook at https://github.com/pugip/future_of_coding/blob/main/absolutify.ipynb

Notes on talk Easy Machine Learning Visualization with Streamlit and MapBox by Tomi Tyrrell 
    - Use Streamlit to create a nice front-end with minimal code and zero javascript!  Ideal for back-end developer wanting a quick ui.
    - PyTesseract gives pandas dataframe with text, position data, confidence
        - filtering out low confidence rows gives pretty accurate boxing of text
        - the only false positives are two very big boxes; false negative is word ending in punctuation [an apostrophe].
        - another example with cleaner background had no false positives; again the sole false negative ended in punctuation [a colon].
    - MapBox provided pan/tilt/zoom maps of California weather station and Tanzania water pump datasets.
        - easy to add interactivity to select which dataframe column to map.
        - can remove MapBox as map provider to use the default provider "carto"
    - Questions
        - Can map multiple data types at once.
        - Likely can stream video too.
    - Afterthoughts 
        - might the image_to_boxes method of PyTesseract show that the characters are recognized and that the word-forming algorithm just doesnt allow words to end with certain punctuation characters?

MikeH: website update
    - using cron for mail n bkps doesnt wk; no init running in docker.
    - now running two containers to do mail n bkps every 5min.
    - looking for a way to just use a single [alw up] container.
    - using a dedicated vm, not currently resource-limited.