Spaces:
Runtime error
Runtime error
EnzoBustos
commited on
Commit
•
68d461f
1
Parent(s):
ada7c88
Changes in app and Images file
Browse files- Images/teste.txt +0 -0
- README.md +24 -3
- app.py +24 -10
Images/teste.txt
ADDED
File without changes
|
README.md
CHANGED
@@ -16,8 +16,29 @@ tags:
|
|
16 |
|
17 |
---
|
18 |
|
19 |
-
#
|
20 |
|
21 |
-
|
22 |
|
23 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
|
17 |
---
|
18 |
|
19 |
+
# IC 2022 Classificação de Dados Financeiros
|
20 |
|
21 |
+
Este trabalho de Iniciação Científica visa criar uma *interface web* que integre diversas funcionalidades de *machine learning*, essas funcionalidades cooperam entre si para realizar um processamento automático de textos financeiros com o fim de aplicar técnicar de Tradução Automática, Análise de Sentimentos e Classificação ZeroShot de textos em português sobre artigos do ramo financeiro.
|
22 |
|
23 |
+
Este projeto também visa incluir novas técnicas ao leque de opções desta ferramenta, voltados principalmente para o Processamento de Linguagem Natural (PLN) tanto para fins de estudo e conhecimento dos modelos pautados como estado-da-arte, como também aperfeiçoamento dos módulos e saídas já implementados.
|
24 |
+
|
25 |
+
Dentre os modelos utilizados estão:
|
26 |
+
|
27 |
+
1. Tradução Automática:
|
28 |
+
1. TextBlob
|
29 |
+
2. M2M100
|
30 |
+
3. OPUS
|
31 |
+
4. T5
|
32 |
+
5. mBART
|
33 |
+
|
34 |
+
2. Análise de Sentimentos:
|
35 |
+
1. VADER
|
36 |
+
2. FinBERT
|
37 |
+
3. DistilBERT
|
38 |
+
4. BERT
|
39 |
+
|
40 |
+
3. Classificação:
|
41 |
+
1. Inferição pelo nome da empresa presente no texto
|
42 |
+
2. RoBERTa
|
43 |
+
3. mDeBERTa
|
44 |
+
4. DistilroBERTa
|
app.py
CHANGED
@@ -111,7 +111,7 @@ def run_models(parameters_list):
|
|
111 |
|
112 |
return out_translation, out_sentiment, out_classification
|
113 |
|
114 |
-
sheet_id = "
|
115 |
sheet_name = "Sheet1"
|
116 |
url = f"https://docs.google.com/spreadsheets/d/{sheet_id}/gviz/tq?tqx=out:csv&sheet={sheet_name}"
|
117 |
|
@@ -152,19 +152,33 @@ with model:
|
|
152 |
st.write("Classification...............................................................: \n {} \n \n".format(outputs[2]))
|
153 |
|
154 |
with dataset:
|
155 |
-
st.header("Dados utilizados no projeto
|
156 |
-
st.write("Os dados
|
157 |
st.dataframe(df)
|
158 |
st.subheader("Descrição das colunas:")
|
159 |
-
st.write("\t
|
160 |
-
st.write("\t
|
161 |
-
st.write("\t
|
162 |
-
st.write("\t
|
163 |
-
st.write("\t
|
|
|
|
|
164 |
|
165 |
with analysis:
|
166 |
st.header("Visualização dos dados utilizados através de WordClouds")
|
167 |
|
168 |
with analysis_1:
|
169 |
-
|
170 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
|
112 |
return out_translation, out_sentiment, out_classification
|
113 |
|
114 |
+
sheet_id = "1TjDuF6dmirgdpuG_o5Y4CBPQdfmkksS1"
|
115 |
sheet_name = "Sheet1"
|
116 |
url = f"https://docs.google.com/spreadsheets/d/{sheet_id}/gviz/tq?tqx=out:csv&sheet={sheet_name}"
|
117 |
|
|
|
152 |
st.write("Classification...............................................................: \n {} \n \n".format(outputs[2]))
|
153 |
|
154 |
with dataset:
|
155 |
+
st.header("Dados utilizados no projeto")
|
156 |
+
st.write("Os dados abaixo foram obtidos através de *web scrapping* dos sites Valor Globo, Infomoney e Exame para o fim de aplicação dos modelos selecionados, para a confecção dos dados abaixo foram utilizados o TextBlob para Tradução Automática, VADER para a Análise de Sentimentos, Inferição por empresas presentes no texto e Roberta para a Classificação.")
|
157 |
st.dataframe(df)
|
158 |
st.subheader("Descrição das colunas:")
|
159 |
+
st.write("\t**- date:.........** Coluna de entrada contendo as datas em que os textos foram publicados")
|
160 |
+
st.write("\t**- url:..........** Coluna de entrada contendo os links para as páginas *web* das quais os textos foram retirados")
|
161 |
+
st.write("\t**- texts:........** Coluna de entrada contendo os textos financeiros propriamente ditos")
|
162 |
+
st.write("\t**- is_title:.....** Coluna de entrada contendo os se os textos são, ou não, pertencentes ao título da notícia")
|
163 |
+
st.write("\t**- translated:...** Coluna de saída contendo os textos financeiros que foram traduzidos utilizando o TextBlob")
|
164 |
+
st.write("\t**- theme:........** Coluna de saída contendo as classificações em áreas financeiras, das quais metade foram obtidas pelo nome de empresas presentes no texto e a outra metade obtidos por classificação zeroshot do modelo RoBERTa")
|
165 |
+
st.write("\t**- sentiment:....** Coluna de saída contendo as análises de sentimentos dos textos utilizando VADER")
|
166 |
|
167 |
with analysis:
|
168 |
st.header("Visualização dos dados utilizados através de WordClouds")
|
169 |
|
170 |
with analysis_1:
|
171 |
+
wordcloud = st.selectbox('Qual wordcloud você deseja ver?', (
|
172 |
+
"Health",
|
173 |
+
"Financial",
|
174 |
+
"Industrial Goods",
|
175 |
+
"Public utility",
|
176 |
+
"Others",
|
177 |
+
"Communications",
|
178 |
+
"Cyclic Consumption",
|
179 |
+
"Information Technology",
|
180 |
+
"Oil, Gas and Biofuels",
|
181 |
+
"Non-cyclical Consumption",
|
182 |
+
"Basic Materials",
|
183 |
+
))
|
184 |
+
|