」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 簡化:ML應用程序創建的魔術棒

簡化:ML應用程序創建的魔術棒

發佈於2025-03-25
瀏覽:971

是一个强大的开放式框架框架,可以为创建学习,只需几行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]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3