Spaces:
Sleeping
Sleeping
File size: 3,946 Bytes
e717656 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
import streamlit as st
import numpy as np
import time
from models.LogReg import predict_1
from models.BertTunning import predict_2
from models.LSTM import predict_3
push_button = None
REVIEW = {0: 'Отрицательный отзыв', 1: 'Положительный отзыв'}
st.write("""
# Модели для предсказания положительных/отрицательных отзывов📝
""")
st.info("##### 🤖На данной странице приведены 3 различные модели, способные выполнять, поставленную задачу:"
"\n- RuBERT + LogisticRegression"
"\n- Fine Tinnig RuBERT with 2 Fully Connected Layers"
"\n- Fast Text Vectorizer + LSTM with Attention")
st.info('###### 📈Процесс обучения моделей, описание Датасета и визуализация метрик вы сможете изучить на странице "Итоги".')
with st.sidebar:
st.warning("📍Выберите любую модель, с помощью которой хотите определить вид отзыва:")
users_choice = st.radio('Выберите модель:', options=['BERT + LogReg', 'BERT with Tunnig', 'LSTM'], index=None)
if users_choice is not None:
review_users = st.text_input('**Пожалуйста, введите свой отзыв:**')
if review_users is not None and review_users != '':
with st.sidebar:
st.warning('📍Нажмите на кнопку, чтобы получить тип отзыва:')
push_button = st.button('Получить тип отзыва >>>')
start_time = time.time()
if users_choice is not None:
if users_choice == 'BERT + LogReg':
if push_button:
predict = predict_1(review_users)
st.write(f'🦾**Модель «LogReg» предсказала Вашему отзыву следующий класс:** «{REVIEW[predict]}»')
st.write(f'🕔**Работа модели «LogReg» и процесс предсказания занял:** {round(time.time() - start_time, 2)} **сек.**')
st.warning("- ###### Данная модель имеет склоность отдавать предпочтение Положительному классу! Будьте внимательны!")
elif users_choice == 'BERT with Tunnig':
if push_button:
predict = predict_2(review_users)
st.write(f'🦾**Модель «BERT with Tunnig» предсказала Вашему отзыву следующий класс:** «{REVIEW[predict]}»')
st.write(
f'🕔**Работа модели «BERT with Tunnig» и процесс предсказания занял:** {round(time.time() - start_time, 2)} **сек.**')
st.warning(
"- ###### Данная модель имеет склоность отдавать предпочтение Положительному классу! Будьте внимательны!")
elif users_choice == 'LSTM':
if push_button:
predict = predict_3(review_users)
st.write(f'🦾**Модель «LSTM» предсказала Вашему отзыву следующий класс:** «{REVIEW[predict]}»')
st.write(
f'🕔**Работа модели «LSTM» и процесс предсказания занял:** {round(time.time() - start_time, 2)} **сек.**')
st.warning(
"- ###### Данная модель имеет склоность отдавать предпочтение Положительному классу! Будьте внимательны!") |