”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 简化:ML应用程序创建的魔术棒

简化:ML应用程序创建的魔术棒

发布于2025-03-25
浏览:285

是一个强大的开放式框架框架,可以为创建学习,只需几行Python代码。 它很简单,直觉,,这是对初学者和经验丰富的开发人员的绝佳工具,他们希望快速部署机器学习模型。 在此博客中,我将使用RandomForeStClassifier。,使用

构建基本的简化应用程序和

开始

在进入项目之前,让我们浏览一些基本的简化功能,以适应框架。您可以使用以下命令安装简化:

PIP安装简化 一旦安装,您就可以通过创建一个python文件,例如app.py来启动第一个应用程序,然后使用以下方式运行它:

简化运行app.py

现在,让我们探索简化的核心功能:

1。编写标题并显示文本

导入简报为ST #写标题 圣提特(“ Hello World”) #显示简单文字 St.Write(“显示一个简单的文本”)

pip install streamlit


2。显示dataframes

导入大熊猫作为pd #创建数据框 df = pd.dataframe({ “第一列”:[1,2,3,4], “第二列”:[5,6,7,8] })) #显示数据框 St.Write(“显示数据框”) 圣沃特(DF)

pip install streamlit


3。用图表

可视化数据

导入numpy作为NP #生成随机数据 Chart_data = pd.dataframe( np.random.randn(20,4),列= ['a','b','c','d'] ) #显示行图 st.line_chart(Chart_data) [2

4。用户互动:文本输入,滑块和选择框

import streamlit as st

# Writing a title
st.title("Hello World")

# Display simple text
st.write("Displaying a simple text")


slemlit

启用交互式小部件,例如文本输入,滑块和选择基于用户输入动态更新的框。 Streamlit: The Magic Wand for ML App Creation #文本输入 name = st.text_input(“您的名字是:”) 如果名称: St.Write(f'hello,{name}') # 滑块 age = st.Slider(“选择您的年龄:”,0,100,25) 如果年龄: St.Write(您的年龄是:{age}') #选择框 选择= [“ Python”,“ Java”,“ JavaScript”] lang = St.Selectbox(“最喜欢的编程语言”,选择) 如果Lang: St.Write(f'favorite编程语言为{lang}')

[2

5。文件上传

您可以允许用户上传文件,并在

import pandas as pd

# Creating a DataFrame
df = pd.DataFrame({
    "first column": [1, 2, 3, 4],
    "second column": [5, 6, 7, 8]
})

# Display the DataFrame
st.write("Displaying a DataFrame")
st.write(df)


#CSV文件的文件上传器 file = st.file_uploader('选择CSV文件','CSV') 如果文件: data = pd.read_csv(文件) St.Write(数据) Streamlit: The Magic Wand for ML App Creation [2

使用简化构建机器学习项目

既然您熟悉基础知识,那么让我们开始创建一个

import numpy as np

# Generating random data
chart_data = pd.DataFrame(
    np.random.randn(20, 4), columns=['a', 'b', 'c', 'd']
)

# Display the line chart
st.line_chart(chart_data)


Scikit-Learn

Streamlit: The Magic Wand for ML App Creation

加载数据集。

训练RandomForestClassifier。 允许用户使用滑块输入功能。
基于输入功能进行预测物种。


# Text input
name = st.text_input("Your Name Is:")
if name:
    st.write(f'Hello, {name}')

# Slider
age = st.slider("Select Your Age:", 0, 100, 25)
if age:
    st.write(f'Your Age Is: {age}')

# Select Box
choices = ["Python", "Java", "Javascript"]
lang = st.selectbox('Favorite Programming Language', choices)
if lang:
    st.write(f'Favorite Programming Language is {lang}')


首先,让我们安装必要的库:Streamlit: The Magic Wand for ML App Creation

PIP安装简化Scikit-Learn Numpy Pandas

2。导入库和加载数据
让我们导入必要的库并加载虹膜数据集: 导入简报为ST 导入大熊猫作为pd 来自sklearn.datasets import load_iris 从sklearn.semblection incort intim #用于有效加载的缓存数据 @st.cache_data def load_data(): iris = load_iris() df = pd.dataframe(iris.data,列= iris.feature_names) df [“物种”] = iris.target 返回df,iris.target_names df,target_name = load_data()


# File uploader for CSV files
file = st.file_uploader('Choose a CSV file', 'csv')

if file:
    data = pd.read_csv(file)
    st.write(data)


3。训练机器学习模型

一旦获得数据,我们将根据其特征来训练随机foreStclassifier,以预测花的物种:Streamlit: The Magic Wand for ML App Creation

#火车RandomForestClassifier 模型= RandomForestClassifier() model.fit(df.iloc [:,:-1],df [“物种”])

4。创建输入界面

现在,我们将在侧边栏中创建滑块,以允许用户输入以进行预测: #用户输入的侧栏 St.Sidebar.title(“输入功能”) sepal_length = st.sidebar.slider(“ sepal length”,float(df ['sepal length(cm)']。min()),float(df ['sepal length(cm)']。max())) sepal_width = st.sidebar.slider(“ sepal width”,float(df ['sepal width(cm)']。min()),float(df ['sepal width(cm)']。max()))))))))))))))) petal_length = st.sidebar.slider(“花瓣长度”,float(df ['花瓣长度(cm)']。min()),float(df ['花瓣长度(cm)']。max()))。 petal_width = st.sidebar.slider(“花瓣宽度”,float(df ['花瓣宽度(cm)']。min()),float(df ['花瓣宽度(cm)']。max())) 5。预测物种 获得用户输入后,我们将使用训练有素的模型进行预测:

#准备输入数据 input_data = [[[sepal_length,sepal_width,petal_length,petal_width]]] # 预言 预测= model.predict(input_data) prediction_species = target_name [预测[0]] #显示预测 St.Write(“预测:”) St.Write(f'predixed物种是{prediction_species}') 这将看起来像:

[2 [2 最后,
    slemlit
  • 使创建和部署机器学习Web界面非常容易。 ?在仅几行代码中,我们构建了一个交互式应用程序?这使用户能够输入特征并预测花的种类?使用机器学习模型。 ??
  • 快乐编码! ?
版本声明 本文转载于:https://dev.to/jagroop2001/streamlit-the-magic-wand-for-ml-app-creation-43i8?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 为什么使用Firefox后退按钮时JavaScript执行停止?
    为什么使用Firefox后退按钮时JavaScript执行停止?
    导航历史记录问题:JavaScript使用Firefox Back Back 此行为是由浏览器缓存JavaScript资源引起的。要解决此问题并确保在后续页面访问中执行脚本,Firefox用户应设置一个空功能。 警报'); }; alert('inline Alert')...
    编程 发布于2025-04-22
  • 为什么尽管有效代码,为什么在PHP中捕获输入?
    为什么尽管有效代码,为什么在PHP中捕获输入?
    在php ;?>" method="post">The intention is to capture the input from the text box and display it when the submit button is clicked.但是,输出...
    编程 发布于2025-04-22
  • Java的Map.Entry和SimpleEntry如何简化键值对管理?
    Java的Map.Entry和SimpleEntry如何简化键值对管理?
    A Comprehensive Collection for Value Pairs: Introducing Java's Map.Entry and SimpleEntryIn Java, when defining a collection where each element com...
    编程 发布于2025-04-22
  • 反射动态实现Go接口用于RPC方法探索
    反射动态实现Go接口用于RPC方法探索
    在GO 使用反射来实现定义RPC式方法的界面。例如,考虑一个接口,例如:键入myService接口{ 登录(用户名,密码字符串)(sessionId int,错误错误) helloworld(sessionid int)(hi String,错误错误) } 替代方案而不是依靠反射...
    编程 发布于2025-04-22
  • 左连接为何在右表WHERE子句过滤时像内连接?
    左连接为何在右表WHERE子句过滤时像内连接?
    左JOIN CONUNDRUM:WITCHING小时在数据库Wizard的领域中变成内在的加入很有趣,当将c.foobar条件放置在上面的Where子句中时,据说左联接似乎会转换为内部连接。仅当满足A.Foo和C.Foobar标准时,才会返回结果。为什么要变形?关键在于其中的子句。当左联接的右侧值...
    编程 发布于2025-04-22
  • 如何干净地删除匿名JavaScript事件处理程序?
    如何干净地删除匿名JavaScript事件处理程序?
    删除匿名事件侦听器将匿名事件侦听器添加到元素中会提供灵活性和简单性,但是当要删除它们时,可以构成挑战,而无需替换元素本身就可以替换一个问题。 element? element.addeventlistener(event,function(){/在这里工作/},false); 要解决此问题,请考虑...
    编程 发布于2025-04-22
  • 在Ubuntu/linux上安装mysql-python时,如何修复\“ mysql_config \”错误?
    在Ubuntu/linux上安装mysql-python时,如何修复\“ mysql_config \”错误?
    mysql-python安装错误:“ mysql_config找不到”“ 由于缺少MySQL开发库而出现此错误。解决此问题,建议在Ubuntu上使用该分发的存储库。使用以下命令安装Python-MysqldB: sudo apt-get安装python-mysqldb sudo pip in...
    编程 发布于2025-04-22
  • 我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    将我的加密库从mcrypt升级到openssl 问题:是否可以将我的加密库从McRypt升级到OpenSSL?如果是这样,如何?答案:是的,可以将您的Encryption库从McRypt升级到OpenSSL。可以使用openssl。附加说明: [openssl_decrypt()函数要求iv参...
    编程 发布于2025-04-22
  • Java中如何使用观察者模式实现自定义事件?
    Java中如何使用观察者模式实现自定义事件?
    在Java 中创建自定义事件的自定义事件在许多编程场景中都是无关紧要的,使组件能够基于特定的触发器相互通信。本文旨在解决以下内容:问题语句我们如何在Java中实现自定义事件以促进基于特定事件的对象之间的交互,定义了管理订阅者的类界面。以下代码片段演示了如何使用观察者模式创建自定义事件: args)...
    编程 发布于2025-04-22
  • 如何检查对象是否具有Python中的特定属性?
    如何检查对象是否具有Python中的特定属性?
    方法来确定对象属性存在寻求一种方法来验证对象中特定属性的存在。考虑以下示例,其中尝试访问不确定属性会引起错误: >>> a = someClass() >>> A.property Trackback(最近的最新电话): 文件“ ”,第1行, AttributeError: SomeClass...
    编程 发布于2025-04-22
  • 如何实时捕获和流媒体以进行聊天机器人命令执行?
    如何实时捕获和流媒体以进行聊天机器人命令执行?
    在开发能够执行命令的chatbots的领域中,实时从命令执行实时捕获Stdout,一个常见的需求是能够检索和显示标准输出(stdout)在cath cath cant cant cant cant cant cant cant cant interfaces in Chate cant inter...
    编程 发布于2025-04-22
  • 对象拟合:IE和Edge中的封面失败,如何修复?
    对象拟合:IE和Edge中的封面失败,如何修复?
    To resolve this issue, we employ a clever CSS solution that solves the problem:position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%)...
    编程 发布于2025-04-22
  • 图片在Chrome中为何仍有边框?`border: none;`无效解决方案
    图片在Chrome中为何仍有边框?`border: none;`无效解决方案
    在chrome 中删除一个频繁的问题时,在与Chrome and IE9中的图像一起工作时,遇到了一个频繁的问题。和“边境:无;”在CSS中。要解决此问题,请考虑以下方法: Chrome具有忽略“ border:none; none;”的已知错误,风格。要解决此问题,请使用以下CSS ID块创建带...
    编程 发布于2025-04-22
  • 如何使用node-mysql在单个查询中执行多个SQL语句?
    如何使用node-mysql在单个查询中执行多个SQL语句?
    Multi-Statement Query Support in Node-MySQLIn Node.js, the question arises when executing multiple SQL statements in a single query using the node-mys...
    编程 发布于2025-04-22
  • 如何将来自三个MySQL表的数据组合到新表中?
    如何将来自三个MySQL表的数据组合到新表中?
    mysql:从三个表和列的新表创建新表 答案:为了实现这一目标,您可以利用一个3-way Join。 选择p。*,d.content作为年龄 来自人为p的人 加入d.person_id = p.id上的d的详细信息 加入T.Id = d.detail_id的分类法 其中t.taxonomy =...
    编程 发布于2025-04-22

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3