File size: 4,970 Bytes
0ce43c1
 
 
 
 
11b93cf
272a447
11b93cf
 
 
0ce43c1
 
 
 
 
 
 
 
 
 
456bbb9
0ce43c1
 
1c2ef8c
0ce43c1
 
11b93cf
0ce43c1
11b93cf
0ce43c1
 
 
 
 
 
456bbb9
11b93cf
456bbb9
11b93cf
0ce43c1
11b93cf
 
0ce43c1
11b93cf
456bbb9
0ce43c1
 
11b93cf
 
 
 
 
 
 
 
 
 
 
 
0ce43c1
 
 
 
 
11b93cf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
import numpy as np
import pandas as pd
# import io
import streamlit as st
import streamlit.components.v1 as components
# For download buttons
#from functionforDownloadButtons import download_button

#             content
# =====================================================

components.html(
    """
        <a href="https://git.io/typing-svg"><img src="https://readme-typing-svg.herokuapp.com?font=Fira+Code&pause=1000&width=435&lines=Маруся+не+отвечает+на+реплики"     alt="Typing SVG" /></a>
        <a href="https://git.io/typing-svg"><img src="https://readme-typing-svg.herokuapp.com?font=Fira+Code&pause=1000&width=435&lines=из+телевизора" alt="Typing SVG" /></a>
    """
)

st.markdown("<h1 style='text-align: center;'>VK кейс Маруся <i>GrowAi</i></h1>", unsafe_allow_html=True)

with open("./image.jpg", "rb") as f:
    st.image(f.read(), use_column_width=True)

with st.expander("ℹ️ - Об этом приложении", expanded=True):

    st.write(
        """
-   Это приложение — это простой в использовании интерфейс, встроенный в специальную библиотеку Streamlit.
-   Оно использует метод минимального извлечения ключевых слов, который использует несколько вложений NLP и полагается на transformers.
	    """
    )

st.write(
    """
        # Краткое описание решения
        
        Мы представляем алгоритм машинного обучения для решения задачи бинарной классификации, отличающий команды пользователя голосового помощника VK "Маруся" от внешнего шума для повышения коммуникации.
        
        Проанализировав входные данные нами было проведена комплексная оценка параметров признаков, в процессе подготовки было очищено порядка 1,5 тысяч диалогов, содержащих смайлики и пустые значения для лучшего распознавания команд алгоритмом, проставлена пунктуация в ключевых фразах и диалогах пользователей, дана оценка токсичности пользовательских ответов, качества данного ответа, а также лингвистическая приемлемость.

        Стек решения:
        python, torch, transformers, sklearn, scipy, pandas, numpy, streamlit

        Уникальность:
        Решение оформлено в виде web приложения с пользовательским интерфейсом, позволяющим загружать релевантные данные для их обработки разработанным алгоритмом.             Интерпретируемость модели определяется извлечением отдельных признаков, имеющих наибольшую взаимосвязь и значимость для классификации. Повышение точности основано на подходе разделения дата сета на 5 частей для обучения отдельных моделей вместо 1.
    """
)


#              load_model
# ==================================================

#@st.cache(allow_output_mutation=True)
#def load_model():
    #model = ________________(weights='imagenet')
    #return model

#model = load_model()


st.title("Проверить работу алгоритма, можно через эту форму")
placeholder = st.empty()
text = placeholder.text_area("Вставьте или напишите текст", height=300)

submit_button = st.button(label="✨ ТЫК")
#button = st.button("ТЫК")


#              upload_file
# ==================================================

c29, c30, c31 = st.columns([1, 6, 1])

with c30:

    uploaded_file = st.file_uploader(
        "",
        key="1",
        help="Чтобы активировать «широкоэкранный режим»: > «Настройки» > Широкоэкранный режим».'",
    )

    if uploaded_file is not None:
        file_container = st.expander("Формат загружаемого файла - .csv")
        shows = pd.read_csv(uploaded_file)
        uploaded_file.seek(0)
        file_container.write(shows)

    else:
        st.info(
            f"""
                👆 Или Вы можете загрузить сюда файл
                """
        )

        st.stop()