Pytorch is an open source machine learning (ML) framework boasting a rich ecosystem of tools and libraries that extend PyTorch and support development in computer vision, NLP and or that supports other ML goals.
N/A
Streamlit
Score 8.1 out of 10
N/A
Streamlit is an open-source Python library designed to make it easy to build custom web-apps for machine learning and data science, from the company of the same name in San Francisco. Streamlit also hosts its community's Streamlit Component offered via API to help users get started.
They have created Pytorch Lightening on top of Pytorch to make the life of Data Scientists easy so that they can use complex models they need with just a few lines of code, so it's becoming popular. As compared to TensorFlow(Keras), where we can create custom neural networks by just adding layers, it's slightly complicated in Pytorch.
- Don't want to pay Tableau $1,000 / seat? Use Streamlit - Want fully custom views and navigation? Use Streamlit - Want access to Machine Learning and not just your dev team? Use Streamlit - Want to keep things internal and secure? Use Streamlit - Want your Data Science team to be able to crank out projects quickly? Use Streamlit - Sick of Jupyter Notebooks and Business Leaders not understanding them? Use Streamlit Our D.S. strategy has moved completely to delivering pages in Streamlit. I can hand an executive a Jupyter notebook and it'll get lost in translation. I can give them sign-in access to a page and they can answer all of their own "What-If?" questions! We've used Streamlit to productize our Data Science and Machine Learning capabilities.
Recent Security issues (they quickly released an update to combat this though...)
Requires a bit of HTML knowledge to really customize. If you're going quick, you don't need HTML though. Streamlit commands will pump your page out fast.
The big advantage of PyTorch is how close it is to the algorithm. Oftentimes, it is easier to read Pytorch code than a given paper directly. I particularly like the object-oriented approach in model definition; it makes things very clean and easy to teach to software engineers.
Pytorch is very, very simple compared to TensorFlow. Simple to install, less dependency issues, and very small learning curve. TensorFlow is very much optimised for robust deployment but very complicated to train simple models and play around with the loss functions. It needs a lot of juggling around with the documentation. The research community also prefers PyTorch, so it becomes easy to find solutions to most of the problems. Keras is very simple and good for learning ML / DL. But when going deep into research or building some product that requires a lot of tweaks and experimentation, Keras is not suitable for that. May be good for proving some hypotheses but not good for rigorous experimentation with complex models.
I started using Streamlit when it first came out and thought it was really useful and powerful. A few years later and they've really hit their stride! The features / widgets / materials they provide have been well researched, well designed, and well implemented. I will take Streamlit to any future companies I go to as well as be a strong promoter wherever I'm currently at. It's free. It's easy to use. It is really powerful. Sure? You could go pay for a larger system but your Data Science team should be able to handle Streamlit easily. I'd argue a non-technical person spending a few weeks in python could pick up Streamlit really quickly.