向大家推荐一款机器学习用户交互工具开发框架——Streamlit,可以使机器学习工程师能更轻松地创建自定义应用程序已在他们的模型中与数据进行交互。
废话不多说,先来看看它有多神奇~
pip install --upgrade streamlit
streamlit run https://raw.githubusercontent.com/streamlit/demo-uber-nyc-pickups/master/app.py
然后浏览器打开http://localhost:8501,即可实现上面视频中的效果!
再看看一个更牛的应用,通过Udacity自动驾驶车辆照片数据集,进行语义化搜索,可视化人工标注,并且可以实时运行一个YOLO 目标检测器:
整个应用只有300行Python代码,绝大多数是机器学习代码。实际上其中只有23个Streamlit调用。具体代码不贴, 大家可以尝试通过github直接运行:
$ pip install --upgrade streamlit opencv-python
$ streamlit run https://raw.githubusercontent.com/streamlit/demo-self-driving/master/app.py
是不是很酷炫,其实实现起来一点都不复杂,需要什么功能,直接调用API即可,看个Slider、Checkbox、SelectBox实例。
#Slider
streamlit.slider(label, min_value=None, max_value=None, value=None, step=None, format=None)
#Text Input
url = st.text_input('Enter URL')
st.write('The Entered URL is', url)
#Checkbox
df = pd.read_csv("football_data.csv")
if st.checkbox('Show dataframe'):
st.write(df)
#SelectBox
option = st.selectbox(
'Which Club do you like best?',
df['Club'].unique())'You selected: ', option
#MultiSelect
options = st.multiselect(
'What are your favorite clubs?', df['Club'].unique())st.write('You selected:', options)
最终效果
手痒吗?赶紧试试吧
更多用法请移步:
https://github.com/streamlit/streamlit
API reference:
https://streamlit.io/docs/api.html