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

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

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

是一个强大的开放式框架框架,可以为创建学习,只需几行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]删除
最新教程 更多>
  • 如何使用FormData()处理多个文件上传?
    如何使用FormData()处理多个文件上传?
    )处理多个文件输入时,通常需要处理多个文件上传时,通常是必要的。 The fd.append("fileToUpload[]", files[x]); method can be used for this purpose, allowing you to send multi...
    编程 发布于2025-04-01
  • 版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    版本5.6.5之前,使用current_timestamp与时间戳列的current_timestamp与时间戳列有什么限制?
    在时间戳列上使用current_timestamp或MySQL版本中的current_timestamp或在5.6.5 此限制源于遗留实现的关注,这些限制需要对当前的_timestamp功能进行特定的实现。 创建表`foo`( `Productid` int(10)unsigned not n...
    编程 发布于2025-04-01
  • 如何简化PHP中的JSON解析以获取多维阵列?
    如何简化PHP中的JSON解析以获取多维阵列?
    php 试图在PHP中解析JSON数据的JSON可能具有挑战性,尤其是在处理多维数组时。要简化过程,建议将JSON作为数组而不是对象解析。执行此操作,将JSON_DECODE函数与第二个参数设置为true:[&&&&& && &&&&& json = JSON = JSON_DECODE($ j...
    编程 发布于2025-04-01
  • 哪种方法更有效地用于点 - 填点检测:射线跟踪或matplotlib \的路径contains_points?
    哪种方法更有效地用于点 - 填点检测:射线跟踪或matplotlib \的路径contains_points?
    在Python Matplotlib's path.contains_points FunctionMatplotlib's path.contains_points function employs a path object to represent the polygon.它...
    编程 发布于2025-04-01
  • 为什么使用Firefox后退按钮时JavaScript执行停止?
    为什么使用Firefox后退按钮时JavaScript执行停止?
    导航历史记录问题:JavaScript使用Firefox Back Back 此行为是由浏览器缓存JavaScript资源引起的。要解决此问题并确保在后续页面访问中执行脚本,Firefox用户应设置一个空功能。 警报'); }; alert('inline Alert')...
    编程 发布于2025-04-01
  • 如何正确使用与PDO参数的查询一样?
    如何正确使用与PDO参数的查询一样?
    在pdo 中使用类似QUERIES在PDO中的Queries时,您可能会遇到类似疑问中描述的问题:此查询也可能不会返回结果,即使$ var1和$ var2包含有效的搜索词。错误在于不正确包含%符号。通过将变量包含在$ params数组中的%符号中,您确保将%字符正确替换到查询中。没有此修改,PDO...
    编程 发布于2025-04-01
  • 如何在GO编译器中自定义编译优化?
    如何在GO编译器中自定义编译优化?
    在GO编译器中自定义编译优化 GO中的默认编译过程遵循特定的优化策略。 However, users may need to adjust these optimizations for specific requirements.Optimization Control in Go Compi...
    编程 发布于2025-04-01
  • 如何从Google API中检索最新的jQuery库?
    如何从Google API中检索最新的jQuery库?
    从Google APIS 问题中提供的jQuery URL是版本1.2.6。对于检索最新版本,以前有一种使用特定版本编号的替代方法,它是使用以下语法:获取最新版本:未压缩)While these legacy URLs still remain in use, it is recommended ...
    编程 发布于2025-04-01
  • 如何有效地选择熊猫数据框中的列?
    如何有效地选择熊猫数据框中的列?
    在处理数据操作任务时,在Pandas DataFrames 中选择列时,选择特定列的必要条件是必要的。在Pandas中,选择列的各种选项。选项1:使用列名 如果已知列索引,请使用ILOC函数选择它们。请注意,python索引基于零。 df1 = df.iloc [:,0:2]#使用索引0和1 的 ...
    编程 发布于2025-04-01
  • 为什么尽管有效代码,为什么在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-01
  • 为什么不````''{margin:0; }`始终删除CSS中的最高边距?
    为什么不````''{margin:0; }`始终删除CSS中的最高边距?
    在CSS 问题:不正确的代码: 全球范围将所有余量重置为零,如提供的代码所建议的,可能会导致意外的副作用。解决特定的保证金问题是更建议的。 例如,在提供的示例中,将以下代码添加到CSS中,将解决余量问题: body H1 { 保证金顶:-40px; } 此方法更精确,避免了由全局保证金重置引...
    编程 发布于2025-04-01
  • 哪种在JavaScript中声明多个变量的方法更可维护?
    哪种在JavaScript中声明多个变量的方法更可维护?
    在JavaScript中声明多个变量:探索两个方法在JavaScript中,开发人员经常遇到需要声明多个变量的需要。对此的两种常见方法是:在单独的行上声明每个变量: 当涉及性能时,这两种方法本质上都是等效的。但是,可维护性可能会有所不同。 第一个方法被认为更易于维护。每个声明都是其自己的语句,使其...
    编程 发布于2025-04-01
  • 如何在php中使用卷发发送原始帖子请求?
    如何在php中使用卷发发送原始帖子请求?
    如何使用php 创建请求来发送原始帖子请求,开始使用curl_init()开始初始化curl session。然后,配置以下选项: curlopt_url:请求 [要发送的原始数据指定内容类型,为原始的帖子请求指定身体的内容类型很重要。在这种情况下,它是文本/平原。要执行此操作,请使用包含以下标头...
    编程 发布于2025-04-01
  • 如何有效地转换PHP中的时区?
    如何有效地转换PHP中的时区?
    在PHP 利用dateTime对象和functions DateTime对象及其相应的功能别名为时区转换提供方便的方法。例如: //定义用户的时区 date_default_timezone_set('欧洲/伦敦'); //创建DateTime对象 $ dateTime = ne...
    编程 发布于2025-04-01
  • 如何从PHP中的数组中提取随机元素?
    如何从PHP中的数组中提取随机元素?
    从阵列中的随机选择,可以轻松从数组中获取随机项目。考虑以下数组:; 从此数组中检索一个随机项目,利用array_rand( array_rand()函数从数组返回一个随机键。通过将$项目数组索引使用此键,我们可以从数组中访问一个随机元素。这种方法为选择随机项目提供了一种直接且可靠的方法。
    编程 发布于2025-04-01

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

Copyright© 2022 湘ICP备2022001581号-3