TCC Ronaldo Gonçalves Borges
TCC Ronaldo Gonçalves Borges
TCC Ronaldo Gonçalves Borges
1
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
Sumário
1. Introdução: Problema abordado, justificativa e objetivos ................................................................... 3
2. Fundamentação Teórica........................................................................................................................... 7
3. Metodologia ............................................................................................................................................... 9
4. Resultados................................................................................................................................................ 13
5. Conclusão e Trabalhos Futuros............................................................................................................. 15
6. Referências Bibliográficas ..................................................................................................................... 16
7. Anexo I – Código Fonte .......................................................................................................................... 18
2
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
1. Introdução: Problema abordado, justificativa e objetivos
[...]
VI - realizar auditoria sobre a gestão dos recursos públicos federais sob a responsabilidade de
órgãos e entidades públicos e privados;
VII - apurar os atos ou fatos inquinados de ilegais ou irregulares, praticados por agentes públicos
ou privados, na utilização de recursos públicos federais e, quando for o caso, comunicar à
unidade responsável pela contabilidade para as providências cabíveis;
[...]
Adicionalmente, vale salientar que, de acordo com o Art. 169 da Lei 14.1333, as contratações públicas
deverão ser submetidas ao controle preventivo por parte do órgão central de Controle Interno da
Administração Pública.
No que tange à gestão das compras públicas, existe o sistema ComprasNet que, segundo o Manual
“Comprasnet : informações gerais / Secretaria de Logística e Tecnologia da Informação4”, foi:
Nesse contexto, verifica-se que o referido sistema é crítico para o processo de execução das compras
públicas e, portanto, uma das principais fontes de dados e informações dos atos administrativos relativos às
aquisições públicas que serão objetos de avaliação por parte do Controle Interno do Poder Executivo Federal.
Assim, ressalta-se que o monitoramento e avaliação periódica dos editais de licitação publicados nesse
sistema são ações preventivas que buscam melhorar a eficiência, economicidade e a efetividade das aquisições
de bens e serviços por parte da Administração, zelando pela qualidade do gasto e pelo patrimônio público.
3
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
Relativamente à dinâmica das publicações de editais de licitações na Internet, diariamente são
publicados centenas de editais no sítio do ComprasNet5, com média diária de 300 editais, os quais apresentam
características que, se identificadas, poderão ensejar a necessidade de uma verificação mais aprofundada por
parte das equipes de auditoria da SFC com o intuito de se evitar contratações ou compras com incorreções ou
vícios que possam trazer algum tipo de prejuízo à Administração Pública.
Diante desse número expressivo de publicações, o monitoramento e avaliação manuais desses editais
torna-se ineficiente e apresenta fragilidades que potencializam o risco de perda de oportunidades relacionadas
ao empreendimento de ações de controle preventivas e tempestivas que possam ter como resultado a
recomendação de medidas corretivas ou suspensões de editais.
Visando sanar essa necessidade e mitigar o risco da realização de licitações com irregularidades ou
erros, foi desenvolvido o sistema Analisador de Licitações, Contratos e Editais (ALICE) que atua de forma
autônoma na realização de análises de dados, estruturados e não estruturados, publicados no ComprasNet.
A ALICE desempenha papel fundamental no apoio às ações de controle preventivas, em especial às
auditorias preventivas em licitações que buscam, em até oito dias corridos (prazo mínimo para apresentação
das propostas de pregão fixado no Art. 4, inciso V, da Lei 10.520), gerar recomendações acerca dos riscos
identificados nas contratações e sobre eventuais irregularidades, evitando-se a materialização dos impactos
desses riscos que poderão trazer prejuízos para a Administração.
A ferramenta ALICE implementa trilhas de auditoria6 que analisam, os editais publicados e enviam
alertas (via e-mail ou por meio de Application Programming Interface - API) quando determinados padrões
textuais são detectados nos textos extraídos dos documentos que constituem os editais. Na figura 1, apresenta-
se um esquema simplificado do funcionamento desse sistema, considerando a sua principal fonte de editais (o
ComprasNet):
Fonte: CGU.
5http://comprasnet.gov.br/acesso.asp?url=/ConsultaLicitacoes/ConsLicitacaoDia.asp
6 Algoritmos computacionais que realizam análises de artefatos de contratações (ex.: editais, termos de referência, estudo técnico
preliminar) ou cruzamentos de bases de dados, implementados com base na legislação ou em problemas anteriormente identificados
por órgãos de controle.
4
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
Por fim, ressalta-se que a possibilidade de aprimoramento do processo de criação das trilhas de
auditoria e dos seus desempenhos poderá resultar em uma diminuição dos custos de desenvolvimento e
manutenção e em um potencial aumento da efetividade do controle preventivo das compras públicas.
Para algumas trilhas que foram implementadas empregando expressões regulares para a identificação
de padrões de irregularidade nos editais publicados (Trilhas Regex), observou-se, nos últimos três anos, uma
elevação no número de alertas classificados como falsos positivos, o que poderá resultar em diminuição da
confiabilidade no sistema.
Para fins de exemplificação do problema, apresenta-se, no Gráfico 1, a precisão e os quantitativos de
falsos positivos e de verdadeiros positivos para a trilha “18 - Exigência de comprovação de quadro permanente
sem permitir contrato de prestação de serviços” para o período de 2020 a 2022:
Precisão da Trilha 18
350 94,00%
Fonte: Autor.
5
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
Além disso, as Trilhas Regex exigem conhecimentos especializados em expressões regulares para a
configuração de cenários editalícios que tipificam irregularidades relacionadas às contratações públicas de
segmentos específicos da Administração, gerando um maior custo de desenvolvimento e manutenção dessas
configurações.
1.2. Justificativa
Inicialmente cabe salientar a relevância dos benefícios auferidos com o uso da ferramenta ALICE na
prevenção de erros ou fraudes nos processos licitatórios da Administração. Para ilustrar esse fato, foi
evidenciado, no período de dezembro de 2018 a junho de 2021, um total de R$ 6 Bilhões7 em pregões
revogados, suspensos ou corrigidos em consequência das auditorias preventivas realizadas com base nos
alertas gerados por essa ferramenta.
Benefícios dessa magnitude demonstram o potencial desse instrumental de controle preventivo e a
necessidade do seu aprimoramento contínuo em busca de maior economicidade, eficiência e eficácia nas
contratações públicas.
Dessa forma, quaisquer ações de melhoria dessa ferramenta, seja no sentido de alcançar melhor
desempenho, precisão ou simplificação das configurações das trilhas com a participação direta das equipes de
auditoria, trará benefícios para os controles internos das contratações públicas.
Com esses aprimoramentos, vislumbra-se uma redução no número de alertas que sejam classificados
como falsos positivos e o aumento da confiabilidade no sistema.
Ademais, salienta-se que a adoção de medidas que possam trazer uma maior eficiência, eficácia e
efetividade no combate à corrupção está em harmonia com o disposto no Plano Anticorrupção do Governo
Federal, para o período de 2020 a 2025, em especial com o subtema Controle Interno, ação 47 que se refere
ao “Desenvolvimento de funcionalidade do Sistema Alice para auxiliar na gestão”, e que visa:
Assim, o referido Plano constitui-se em um referencial estratégico com o qual o trabalho desenvolvido
mantém alinhamento e coerência.
1.3. Objetivos
O objetivo principal deste trabalho é desenvolver alternativas que possibilitem a melhoria do processo
de identificação de editais de licitações com indícios de irregularidades ou erros por meio do aprimoramento
do mecanismo de análise de editais, atualmente implementado por meio de expressões regulares.
2. Fundamentação Teórica
Portanto, verifica-se que o problema abordado está aderente às definições apresentadas e encaixa-se
no cenário de recuperação de documentos, o qual emprega palavras ou expressões-chave em alto nível (texto
livre) no processo de recuperação.
Dentre os modelos clássicos de IR referenciados em (BAEZA-YATES; RIBEIRO-NETO, 2011) e
(MANNING; RAGHAVAN; SCHÜTZE, 2008), destaca-se o modelo vetorial que é empregado na
representação de documentos como vetores em um espaço vetorial.
Tal representação vetorial constitui-se em entrada para a aplicação de algoritmos de verificação de
similaridade entre esses vetores, tais como: distância euclidiana, similaridade de cossenos e Triangle Area
Similarity – Sector Area Similarity (TS-SS) (HEIDARIAN; DINNEEN, 2016).
7
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
A obtenção da representação vetorial pode ser alcançada por meio de diversas técnicas que são
referenciadas como técnicas utilizadas no processo de representação de textos em vetores, onde palavras com
significados similares possuem representações vetoriais similares (word embedding) (LI; GONG, 2021).
Dentre elas destacam-se:
• Term Frequency Inverse Document Frequency (TF-IDF), utiliza métricas estatísticas (frequência e o
inverso da frequência dos termos ou palavras) para definir o grau de importância (peso) de palavras
dentro de um documento ou coleção de documentos (RAMOS et al., 2003);
• Best Match 25 (BM25), trata-se de uma melhoria do TF-IDF que classifica os documentos pelas
probabilidades logarítmicas de sua relevância (ROBERTSON; ZARAGOZA, 2009) e (LIU et al.,
2009);
• Global Vectors for Word Representation (GloVe), trata-se de um modelo de aprendizagem não-
supervisionada para representação de palavras (PENNINGTON; SOCHER; MANNING, 2014);
• Word2Vec, utiliza um modelo de redes neurais para aprender acerca dos relacionamentos entre as
palavras considerando aspectos semânticos (CHURCH, 2017);
Desse modo, verifica-se o potencial de viabilidade do emprego de tais algoritmos para a definição do
nível de similaridade entre os documentos de configuração das trilhas que conterão as expressões ou palavras
que determinam casos de irregularidades e os editais, com base em operações sobre os vetores que os
representarão.
Por fim, apresentam-se alguns trabalhos que empregaram técnicas acima relacionadas de forma
aplicada, inclusive no contexto de detecção de fraudes:
• Measuring Document Similarity with Word Embeddings que “detalha uma metodologia
para estimar a semelhança textual entre dois documentos, levando em consideração a
possibilidade de que duas palavras diferentes tenham um significado semelhante”
(SEEGMILLER; PAPANIKOLAOU; SCHMIDT, 2022).
• Financial Fraud Detection Using Text Mining que apresenta um projeto que tem por
objetivo “implementar uma aplicação de processamento de linguagem natural, baseada em
BERT, para analisar informações de relação de dados de texto e ajudar a detectar fraudes
financeiras.” (ZHENG, 2022)
• Simple applications of BERT for ad hoc document retrieval apresentam estudo “seguindo
os sucessos recentes na aplicação do BERT para responder a perguntas, exploramos
aplicativos simples para recuperação de documentos ad hoc.” (YANG; ZHANG; LIN,
2019).
8
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
• A state-of-the-art survey on semantic similarity for document clustering using GloVe and
density-based algorithms realiza “um levantamento de última geração (estado da arte) no
qual analisa algoritmos baseados em densidade para criação de clusters de documentos.
Além disso, as medidas de similaridade e avaliação são investigadas com base nos
algoritmos selecionados.” (MOHAMMED; JACKSI; ZEEBAREE, 2021)
• Applying BERT to document retrieval with birch que “apresenta o Birch, um sistema que
aplica o BERT à recuperação de documentos por meio da integração com o kit de
ferramentas de recuperação de informações Anserini de código aberto para demonstrar uma
pesquisa de ponta a ponta em grandes coleções de documentos” (YILMAZ et al., 2019).
3. Metodologia
A fim de atingir os objetivos propostos, foi adotada a estratégia de desenvolver ranques das licitações
baseados no cálculo da similaridade por cossenos e no cálculo da distância euclidiana das representações
vetoriais dos textos dos arquivos das licitações e do texto que representa o conjunto de palavras-chave que
tipificam situações indesejadas.
Nesse cenário, o texto que representa o conjunto de palavras-chave é denominado de query.
Assim, os referidos ranques apresentam as licitações que possuem arquivos com conteúdos mais
similares à query informada.
A seguir são apresentados os detalhes das etapas da metodologia adotada:
▪ Base de dados da ALICE (banco de dados no MS SQL Server) – Utilizada para extração
dos textos dos editais de licitação;
Nesta etapa houve a seleção das ferramentas de desenvolvimento que foram utilizadas no projeto.
As ferramentas utilizadas foram estas:
3. Execução:
10
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
Para a extração dos alertas referentes à trilha selecionada, foram executados os seguintes passos
descritos no diagrama abaixo:
1. No passso “Extração dos alertas na base de dados do e-Aud” foram realizadas consultas
SQL10 na base de dados do e-Aud para obtenção dos alertas enviados pela ALICE,
sendo cada alerta detentor de um atributo que o define como improcedente (falso-
positivo) ou não. Foram extraídos 730 alertas;
2. No passo “Tratamento dos alertas extraídos”, para cada alerta recuperado foi gerada
uma chave composta pelos atributos “número do processo”, “identificador da UASG”
e “identificador da modalidade da licitação” para que fosse possível a obtenção dos
identificadores das licitações no banco de dados da ferramenta ALICE. Neste passo,
houve a necessidade da criação de funções em Transact SQL (T-SQL) para a extração
desses atributos a partir de campos textuais;
10Como as consultas SQL expõem os nomes e estruturas dos bancos de dados de sistemas críticos da CGU, elas não serão
apresentadas neste trabalho.
11
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
Concluída a extração de dados realizada no item III, foram realizadas as cargas desses
dados em dataframes do pandas e efetuada a eliminação de registros que não possuiam
textos associados a uma determinada licitação.
Para a realização dos tratamentos dos textos das licitações e dos cálculos de similaridade e
das distâncias euclidianas foram criadas quatro classes em python com responsabilidades
bem definidas:
▪ Classe Preparador - responsável pelo tratamento do texto da query e dos textos dos
arquivos das licitações. Os seguintes tratamentos foram implementados:
a. tokenização (transformação dos textos em um conjunto de palavras);
b. conversão dos textos em minúsculas;
c. lematização;
d. remoção de espaços e de tudo que não seja letra;
e. remoção de stopwords.
▪ Classe Vetorizador – responsável pela vetorização dos textos utilizando uma
determinada técnica de "word embedding". A operação implementada utiliza o
vetorizador TF-IDF do scikit learn;
▪ Classe Query – responsável pela criação de uma query que será utilizada por um
objeto Analisador;
▪ Classe Analisador - responsável pela realização do cálculo de similaridade por
cossenos e da distância euclidiana entre uma query e os documentos de uma
licitação.
Salienta-se que somente foi implementada a técnica de representação vetorial TF-IDF e que
a query foi simplificada para conter apenas as palavras positivas, ou seja, palavras que
representam prováveis situações de irregularidade em editais, o que difere dos arquivos de
configuração das atuais Trilhas Regex que fazem uso também de palavras negativas que se
presentes em um edital impedem o disparo de um alerta.
A query foi escrita em texto livre e se constitui em uma adaptação realizada a partir das
expressões regulares presentes no arquivo de configuração da Trilha Regex escolhida.
𝑻𝑷
𝑷𝒓𝒆𝒄𝒊𝒔ã𝒐 =
𝑻𝑷 + 𝑭𝑷
Uma vez geradas as representações vetoriais para os textos dos documentos e para a query,
foram obtidas as similaridades por cosseno e as distâncias euclidianas, permitindo a geração
dos ranques por similaridade e por distância.
4. Resultados
O Gráfico 2, abaixo, apresenta as precisões dos ranques constituídos pelos “top n” documentos mais
similares com a query e de menor distância euclidiana da query. As referidas precisões foram calculadas com
base no marcador de improcedência (falso positivo) definido no sistema e-Aud.
Fonte: Autor.
13
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
Nesse gráfico, observa-se que a precisão para os ranques que representam as licitações com os
documentos mais similares ou mais próximos da query aparentemente não foi satisfatória porque,
intuitivamente, os mais similares/próximos deveriam ter indicador de improcedência negativado, o que pode
ser explicado pela presença nos ranques iniciais (“top5” até o “top50”) de uma maior proporção de licitações
com indicador de improcedência ativo em relação ao número de procedentes, o que pode ser uma peculiaridade
dessa amostra (vide Tabela 1 abaixo).
Contudo, também na Tabela 1, verifica-se que à medida que os tamanhos dos ranques aumentaram as
proporções de improcedentes diminuiram, resultando em um aumento da precisão para os ranques finais.
Tal comportamento também pode ser reflexo da ausência de tratamento de palavras negativas12 ou de
alguma falha no conteúdo da query, tais como a perda de frases ou expressões no processo de tradução das
expressões regulares para texto livre, cuja revisão poderia trazer maior precisão.
Por fim, salienta-se que a geração dos ranques permitirá, de imediato, a seleção de editais para a
realização de análises mais pormenorizadas por parte das equipes de auditoria ou por algum mecanismo
classificador para, por exemplo, a geração de alarmes.
12Palavras utilizadas para invalidar uma tipificação de irregularidade. Tais palavras também fazem parte dos arquivos de
configuração de Trilhas Regex.
14
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
▪ Implementar outras técnicas de representação vetorial, tais como Best Match 25 (BM25), Word2Vec
ou modelagem de tópicos usando Latent Dirichlet Allocation(LDA);
▪ Implementar outros algoritmos para o cálculo de similaridade ou distância entre dois vetores, tais
como a City Block (Manhattan) Distance;
15
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
▪ A partir dos ranques de similaridade ou de distância euclidiana e das representações vetoriais dos
documentos, construir um classificador para emissão de alertas;
6. Referências Bibliográficas
BAEZA-YATES, Ricardo; RIBEIRO-NETO, Berthier. Modern Information Retrieval: the concepts
and technology behind search. 2. ed. Essex, England: Pearson, 2011.
LI, Saihan; GONG, Bing. Word embedding and text classification based on deep learning
methods. In: MATEC Web of Conferences. EDP Sciences, 2021. p. 06022. Disponível em:
https://www.matec-
conferences.org/articles/matecconf/abs/2021/05/matecconf_cscns20_06022/matecconf_cscns20_06022.html
. Acesso em: maio de 2022.
LIU, Tie-Yan et al. Learning to rank for information retrieval. Foundations and Trends® in
Information Retrieval, v. 3, n. 3, p. 225-331, 2009. Disponível em:
https://www.nowpublishers.com/article/DownloadSummary/INR-016 . Acesso em: maio de 2022.
PENNINGTON, Jeffrey; SOCHER, Richard; MANNING, Christopher D. Glove: Global vectors for
word representation. In: Proceedings of the 2014 conference on empirical methods in natural language
processing (EMNLP). 2014. p. 1532-1543. Disponível em: https://nlp.stanford.edu/pubs/glove.pdf. Acesso
em: maio de 2022.
16
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
RAMOS, Juan et al. Using tf-idf to determine word relevance in document queries.
In: Proceedings of the first instructional conference on machine learning. 2003. p. 29-48. Disponível em:
https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.121.1424&rep=rep1&type=pdf . Acesso em:
maio de 2022.
SUN, Chi et al. How to fine-tune bert for text classification?. In: China national conference on
Chinese computational linguistics. Springer, Cham, 2019. p. 194-206. Disponível em:
https://arxiv.org/pdf/1905.05583.pdf . Acesso em: maio de 2022.
YANG, Wei; ZHANG, Haotian; LIN, Jimmy. Simple applications of BERT for ad hoc document
retrieval. 2019. Disponível em: https://arxiv.org/pdf/1903.10972.pdf. Acesso em: maio de 2022.
YILMAZ, Zeynep Akkalyoncu et al. Applying BERT to document retrieval with birch.
In: Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th
International Joint Conference on Natural Language Processing (EMNLP-IJCNLP): System Demonstrations.
2019. p. 19-24. Disponível em: https://aclanthology.org/D19-3004.pdf. Acesso em: maio de 2022.
ZHENG, Zhou. Financial Fraud Detection Using Text Mining. 2022. Disponível em:
https://wp.cs.hku.hk/2021/fyp21078/wp-content/uploads/sites/242/2022/01/Intermediate-Report.pdf. Acesso
em: maio de 2022.
17
Diretoria de Educação Executiva
Coordenação-Geral de Especialização e MBA
_____________________________________________________________________________________
7. Anexo I – Código Fonte
▪ O código fonte está disponível no seguinte endereço:
https://drive.google.com/file/d/1daybv49XcFpinTugw5lqULP6kBqZtQCb/view?usp=sharing .
18