streamlit -мощная рамка с открытым исходным кодом, которая позволяет создавать веб-приложения для data science и Machine Learning с несколькими строками кода Python.
]это просто, интуитивно понятно, и не требует опыта фронта , что делает его отличным инструментом как для начинающих, так и для опытных разработчиков, которые хотят быстро развернуть модели машинного обучения.
В этом блоге я проведу вас через пошаговый процесс для создания базового приложения Streamlit и A проекта машинного обучения с использованием набора данных iris с randomForestClassifier.
], прежде чем мы перейдем к проекту, давайте пройдемся по базовой функциональности потока, чтобы чувствовать себя комфортно с фреймворком. Вы можете установить Streamlit, используя следующую команду:
]pip install streamlit]
после установки вы можете запустить свое первое приложение wreatlit , создав файл python, скажем, app.py и запустив его с помощью:
]streamlit run app.py]
теперь, давайте рассмотрим основные функции Streamlit:
]1. Написание заголовков и отображение текста
]import streamlit as st # Writing a title st.title("Hello World") # Display simple text st.write("Displaying a simple text")]
2. Отображение DataFrames
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)]
3. Визуализация данных с диаграммами
]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)]
4. Пользовательское взаимодействие: текст ввода, ползунки и выберите поля
]
streamlit включает интерактивные виджеты, такие как текстовые входы, слайдеры и выберите поля, которые обновляются динамически на основе пользовательского ввода.
# 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}')]
5. Загрузка файла
Вы можете позволить пользователям загружать файлы и динамически отображать их содержимое в вашем wreatlit app:
# File uploader for CSV files file = st.file_uploader('Choose a CSV file', 'csv') if file: data = pd.read_csv(file) st.write(data)
, используя randomForestClassifier из scikit-learn . ] структура проекта:
] загрузить набор данных. ]
обучить randomforestclassifier.]
]
PIP установить Streamlit Scikit-Learn Numpy Pandas
]
pip install streamlit scikit-learn numpy pandas] Давайте импортируем необходимые библиотеки и загрузите набор данных Iris:
]
]
импорт стримки как ул.
импортировать панды как PD
от sklearn.datasets import load_iris
от Sklearn.ensemble import randomforestclassifier
# Данные кэша для эффективной загрузки
@st.cache_data
def load_data ():
Iris = load_iris ()
df = pd.dataframe (iris.data, columns = iris.feature_names)
DF ["виды"] = Iris.Target
вернуть df, iris.target_names
df, target_name = load_data ()
]
pip install streamlit scikit-learn numpy pandasПосле того, как у нас будут данные, мы обучаем случайного класса -класса для прогнозирования видов цветка на основе его особенностей:
]
]
# Обучить randomforestclassifier
model = randomforestclassifier ()
model.fit (df.iloc [:,: -1], df ["виды"])
]
pip install streamlit scikit-learn numpy pandasТеперь мы создадим слайдеры на боковой панели, чтобы пользователи могли вводить функции для прогнозирования:
]
# Боковая панель для пользовательского ввода
St.sidebar.title («Входные функции»)
sepal_length = st.shidebar.slider ("длина чашера", float (df ['upal длина (cm)']. min ()), float (df ['km jense (cm)']. max ())))
sepal_width = st.shidebar.slider ("ширина чашелистика", float (df ['width with (cm)']. min ()), float (df ['ширина чашеля (см)']. max ()))))
petal_length = st.shidebar.slider ("длина лепала", float (df ['длина лепестки (cm)']. min ()), float (df ['длина лепестка (cm)']. max ())))
petal_width = st.shidebar.slider ("ширина лепестки", float (df ['ширина лепестки (см)']. min ()), float (df ['ширина лепестки (см)']. max ())))
]
pip install streamlit scikit-learn numpy pandasПосле получения пользовательских входов мы сделаем прогноз, используя обученную модель:
]
]
# Подготовьте входные данные
input_data = [[sepal_length, sepal_width, petal_length, petal_width]]]
# Прогноз
Прогнозирование = model.predict (input_data)
Prediction_species = target_name [прогноз [0]]
# Показать прогноз
St.write («Предсказание:»)
St.write (F'prediced View is {Prediction_species} ')
]
это будет выглядеть как:
pip install streamlit scikit-learn numpy pandas
streamlit делает невероятно простым создавать и развернуть веб -интерфейс машинного обучения с минимальными усилиями. ? Всего в нескольких строках кода мы создали интерактивное приложение? Это позволяет пользователям вводить функции и предсказывать виды цветка? Использование модели машинного обучения. ??
счастливого кодирования! ? ] ]
]Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3