社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

会写 Py 脚本,就能开发机器学习工具

编程派 • 4 年前 • 541 次点击  

后台回复【我要学好python

送你2本Python进阶书



文 | Adrien Treuille

译 | 汇智网

推荐 | 编程派公众号(ID:codingpy)


Streamlit是第一个专门针对机器学习和数据科学团队的应用开发框架,它是开发自定义机器学习工具的最快的方法,你可以认为它的目标是取代Flask在机器学习项目中的地位,可以帮助机器学习工程师快速开发用户交互工具。

1、Hello world

Streamlit应用就是Python脚本,没有隐含的状态,你可以使用函数调用重构。只要你会写Python脚本,你就会开发Streamlit应用。例如,下面的代码在网页中输出 Hello,world!

  1. import streamlit as st

  2. st.write('Hello, world!')

结果如下:

2、使用UI组件

Streamlit将组件视为变量,在Streamlit中没有回调,每一个交互都是 简单地返回,从而确保代码干净:

  1. import streamlit as st


  2. x = st.slider('x')

  3. st.write(x, 'squared is', x * x)

结果如下:

3、数据重用和计算

如果你要下载大量数据或者运行复杂的计算该怎么实现?关键在于安全地重用数据。Streamlit引入了缓存原语可以让Steamlit应用 安全、轻松的重用信息。例如,下面的代码只需要从Udacity的自动 驾驶车项目下载一次数据,从而得到一个简单、快速的应用:

  1. import streamlit as st

  2. import pandas as pd


  3. # Reuse this data across runs!

  4. read_and_cache_csv = st.cache(pd.read_csv)


  5. BUCKET = "https://streamlit-self-driving.s3-us-west-2.amazonaws.com/"

  6. data = read_and_cache_csv(BUCKET + "labels.csv.gz", nrows=1000)

  7. desired_label = st.selectbox('Filter to:', ['car', 'truck'])

  8. st.write(data[data.label == desired_label])

结果如下:

简而言之,Streamlit的工作方式如下:

  • 对于用户的每一次交互,整个脚本从头到尾执行一遍

  • Streamlit基于UI组件的状态给变量赋值

  • 缓存让Streamlit可以避免重复请求数据或重复计算

或者参考下图:

如果上面的内容还没有说清楚,你可以直接上手尝试Streamlit!

  1. $ pip install --upgrade streamlit

  2. $ streamlit hello

  3. You can now view your Streamlit app in your browser.

  4. Local URL: http://localhost:8501

  5. Network URL: http://10.0.1.29:8501

这会自动打开本地的web浏览器并访问Streamlit应用:

4、实例:自动驾驶数据集工具

下面的Streamlit应用让你可以在整个Udacity自动驾驶车辆照片数据集中进行语义化搜索,可视化人工标注,并且可以实时运行一个YOLO 目标检测器:

整个应用只有300行Python代码,绝大多数是机器学习代码。实际上 其中只有23个Streamlit调用。你可以尝试自己运行:

  1. $ pip install --upgrade streamlit opencv-python

  2. $ streamlit run https://raw.githubusercontent.com/streamlit/demo-self-driving/master/app.py


原文链接:Turn Python Scripts into Beautiful ML Tools


回复下方「关键词」,获取优质资源


回复关键词「 pybook03」,立即获取主页君与小伙伴一起翻译的《Think Python 2e》电子版

回复关键词「入门资料」,立即获取主页君整理的 10 本 Python 入门书的电子版

回复关键词「book 数字」,将数字替换成 0 及以上数字,有惊喜好礼哦~


推荐阅读



题图:pexels,CC0 授权。

告诉朋友们,好文我在看
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46414
 
541 次点击