74
UNIVERSIDADE FEDERAL FLUMINENSE UFF ESCOLA DE ENGENHARIA DEPARTAMENTO DE ENGENHARIA DE PRODUÇÃO GRADUAÇÃO EM ENGENHARIA DE PRODUÇÃO NITERÓI Julho / 2020 APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE MANUTENÇÃO DE MÁQUINAS EM EMPRESA DE TRANSPORTE E LOGÍSTICA DE COMBUSTÍVEIS AUTOR: GUSTAVO PEREIRA LUCCHETTI ORIENTADOR: PROF. DR. VALDECY PEREIRA

APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

UNIVERSIDADE FEDERAL FLUMINENSE – UFF

ESCOLA DE ENGENHARIA

DEPARTAMENTO DE ENGENHARIA DE PRODUÇÃO

GRADUAÇÃO EM ENGENHARIA DE PRODUÇÃO

NITERÓI

Julho / 2020

APLICAÇÃO DE MACHINE LEARNING PARA

PREDIÇÃO DE MANUTENÇÃO DE MÁQUINAS

EM EMPRESA DE TRANSPORTE E LOGÍSTICA

DE COMBUSTÍVEIS

AUTOR: GUSTAVO PEREIRA LUCCHETTI

ORIENTADOR: PROF. DR. VALDECY PEREIRA

Page 2: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

2

GUSTAVO PEREIRA LUCCHETTI

APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE

MANUTENÇÃO DE MÁQUINAS EM EMPRESA DE TRANSPORTE E

LOGÍSTICA DE COMBUSTÍVEIS

Projeto final apresentado como pré-requisito

parcial à obtenção do título de bacharel em

Engenharia de Produção pela Universidade

Federal Fluminense.

Orientador: Prof. Dr. Valdecy Pereira

NITERÓI

2020

Page 3: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

3

Page 4: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

4

GUSTAVO PEREIRA LUCCHETTI

APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE

MANUTENÇÃO DE MÁQUINAS EM EMPRESA DE TRANSPORTE E

LOGÍSTICA DE COMBUSTÍVEIS

Projeto final apresentado como pré-requisito

parcial à obtenção do título de bacharel em

Engenharia de Produção pela Universidade

Federal Fluminense.

Aprovado em 03 de julho de 2020

BANCA EXAMINADORA

_______________________________________________________

Prof. Dr. Valdecy Pereira – Orientador

Universidade Federal Fluminense

_______________________________________________________

Prof. Dr. Ricardo Bordeaux Rego

Universidade Federal Fluminense

_______________________________________________________

Prof. Dr. Gilson Brito Alves Lima

Universidade Federal Fluminense

Page 5: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

5

RESUMO

A aplicação da ciência de dados para resolução de problemas de

negócios teve relevante crescimento diante do aumento do volume de dados

disponibilizados por usuários, clientes e empresas. A partir desse contexto e da

necessidade que as companhias possuem de otimizar suas atividades, incluindo

a manutenção de seu maquinário, o presente trabalho teve como objetivo

elaborar um algoritmo que consiga predizer se uma manutenção será realizada

dentro do prazo definido ou não, além de analisar os principais atributos das

máquinas e manutenções registradas dentro de uma empresa de transporte e

logística de combustíveis. Por meio de técnicas de redução de dimensionalidade,

o Truncated SVD, e de classificação de dados, o K - Nearest Neighbours, e da

coleta e seleção de dados de registros das manutenções dessa empresa, o

algoritmo foi construído e testado com variações da base de dados original e

diferentes valores dos parâmetros do KNN. Após os testes, os resultados obtidos

foram comparados pelo cálculo de indicadores de avaliação escolhidos:

acurácia, precisão, recall, F1 Score, curva ROC (Receive Operator

Characteristic) e AUC (Area Under Curve). O resultado do melhor modelo foi

considerado satisfatório para a predição de futuras manutenções, e a análise das

variáveis selecionadas evidenciou características relacionadas às manutenções

que sofrem atraso onde a empresa pode atuar para evitar novos atrasos,

mudando a alocação de recursos quando necessário.

Palavras-chave: ciência de dados, manutenção, aprendizado de máquina,

algoritmo, classificação.

Page 6: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

6

ABSTRACT

The application of data science to solve business problems has grown

significantly due to the increase in the volume of data made available by users,

customers and companies. Based on this context and the need that companies

have to optimize their activities, including the maintenance of their machinery, the

present work aimed to develop an algorithm that can predict whether a

maintenance will be carried out within its defined period or not, in addition to

analyzing the main attributes of the machines and maintenance registered within

a fuel transportation and logistics company. Through dimensionality reduction

techniques, Truncated SVD, and data classification, K - Nearest Neighbors, and

the collection and selection of data from the maintenance records of this

company, the algorithm was built and tested with variations of the original dataset

and different values of the KNN parameters. After the tests, the results obtained

were compared by calculating the chosen evaluation indicators: accuracy,

precision, recall, F1 Score, ROC (Receive Operator Characteristic) curve and

AUC (Area Under Curve). The result of the best model was considered

satisfactory for the prediction of future maintenance, and the analysis of the

selected variables showed characteristics related to maintenance that are

delayed where the company can act to avoid further delays, changing the

allocation of resources when necessary.

Keywords: data science, maintenance, machine learning, algorithm,

classification.

Page 7: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

7

LISTA DE FIGURAS

Figura 1 - SVD ............................................................................................................ 16

Figura 2 - Thin SVD .................................................................................................... 22

Figura 3 - Compact SVD ............................................................................................. 23

Figura 4 - Truncated SVD ........................................................................................... 23

Figura 5 - Gráfico de exemplo de pontos antes da aplicação do KNN ........................ 24

Figura 6 - Gráfico de exemplo após aplicação do KNN para k = 1 .............................. 25

Figura 7 - Gráfico de exemplo após aplicação do KNN para k = 3 .............................. 25

Figura 8 - Matriz de Confusão ..................................................................................... 26

Figura 9 - Curva ROC ................................................................................................. 28

Figura 10 - Histograma da variável Valor de Compra .................................................. 31

Figura 11 - Distribuição de valores da variável Tipo de Manutenção .......................... 32

Figura 12 - Número de manutenções dentro e fora do prazo por tipo de manutenção 32

Figura 13 - Distribuição de valores da variável Tipo de Máquina ................................ 33

Figura 14 - Número de manutenções dentro e fora do prazo por tipo de máquina ...... 34

Figura 15 - Número de manutenções dentro e fora do prazo pela data de emissão ... 35

Figura 16 - Distribuição de valores da variável Centro de Trabalho ............................ 36

Figura 17 - Distribuição de valores da variável Criticidade .......................................... 37

Figura 18 - Número de manutenções fora e dentro do prazo por criticidade da

manutenção ................................................................................................................ 37

Figura 19 - Número de manutenções dentro e fora do prazo pelo prazo de conclusão

................................................................................................................................... 38

Figura 20 - Número de manutenções dentro e fora do prazo pela data de fim da

manutenção ................................................................................................................ 39

Figura 21 - Visualização dos dados após aplicação do Truncated SVD para t = 2 ...... 42

Figura 22 - Visualização dos dados após aplicação do Truncated SVD para t = 3 ...... 42

Figura 23 - Matriz de Confusão da base de teste do modelo ...................................... 47

Figura 24 - Curva ROC da base de teste do modelo................................................... 48

Page 8: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

8

SUMÁRIO

1. INTRODUÇÃO .................................................................................................. 10

1.1. CONTEXTUALIZAÇÃO DO PROBLEMA ................................................................... 10

1.2. A TEMÁTICA CIÊNCIA DE DADOS.......................................................................... 11

1.3. OBJETIVO GERAL ................................................................................................. 12

1.4. OBJETIVOS ESPECÍFICOS ...................................................................................... 12

1.5. LIMITAÇÕES DO TRABALHO ................................................................................. 13

1.6. ESTRUTURA DO TRABALHO ................................................................................. 13

2. REVISÃO DA LITERATURA ................................................................................. 15

2.1. SVD .................................................................................................................... 15

2.1.1 Thin SVD .................................................................................................................................... 22

2.1.2 Compact SVD ............................................................................................................................ 22

2.1.3 Truncated SVD .......................................................................................................................... 23

2.2. ALGORITMO KNN ................................................................................................ 24

2.3. INDICADORES DE AVALIAÇÃO ............................................................................. 26

2.3.1. Acurácia ............................................................................................................................ 26

2.3.2. Precisão ............................................................................................................................ 26

2.3.3. Recall ................................................................................................................................ 27

2.3.4. F1 Score ............................................................................................................................ 27

2.3.5. Curva ROC ........................................................................................................................ 28

2.3.6. AUC ................................................................................................................................... 29

3. METODOLOGIA ................................................................................................ 29

3.1. ENTENDIMENTO DO NEGÓCIO ............................................................................ 29

3.2. COLETA DE DADOS .............................................................................................. 29

3.3. TRATAMENTO E ANÁLISE DOS DADOS ................................................................. 30

3.3.1. Valor da compra para manutenção .................................................................................. 30

3.3.2. Tipo de manutenção ........................................................................................................ 31

3.3.3. Tipo de máquina ............................................................................................................... 33

3.3.4. Data de emissão da nota .................................................................................................. 34

3.3.5. Código do centro de trabalho .......................................................................................... 35

3.3.6. Criticidade ........................................................................................................................ 36

3.3.7. Prazo de conclusão ........................................................................................................... 38

3.3.8. Data de fim da manutenção ............................................................................................. 39

3.4. PRÉ-PROCESSAMENTO DOS DADOS ..................................................................... 39

3.5. REDUÇÃO DE DIMENSIONALIDADE DA BASE ........................................................ 41

3.6. APLICAÇÃO DO MODELO DE CLASSIFICAÇÃO ....................................................... 43

3.6.1. Base de dados completa .................................................................................................. 43

3.6.2. Projeção 3D ...................................................................................................................... 43

3.6.3. Projeção 2D ...................................................................................................................... 44

Page 9: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

9

3.7. ESCOLHA DO MODELO FINAL............................................................................... 44

4. RESULTADOS DO MODELO ............................................................................... 46

4.1. MATRIZ DE CONFUSÃO ....................................................................................... 46

4.1.1. Acurácia, Precisão, Recall e F1 ......................................................................................... 47

4.1.2. Curva ROC e AUC .............................................................................................................. 47

5. CONCLUSÃO .................................................................................................... 48

6. REFERÊNCIAS BIBLIOGRÁFICAS ......................................................................... 52

7. APÊNDICES ...................................................................................................... 54

7.1. TABELA DE DADOS .............................................................................................. 54

7.2. CÓDIGO PYTHON ................................................................................................ 69

Page 10: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

10

1. INTRODUÇÃO

1.1. CONTEXTUALIZAÇÃO DO PROBLEMA

A manutenção de maquinário é uma atividade indispensável na rotina de

uma companhia, que deve estabelecer em que momento e com que frequência

realizar. Segundo Rebai et al (2013), as operações de manutenção preventiva

são essenciais para manter os equipamentos de processamento em boas

condições de trabalho. Em várias situações industriais, cada operação de

manutenção deve ser realizada após um prazo otimista e antes de um prazo

pessimista para garantir um custo mínimo de manutenção.

Considerando que uma empresa deve buscar atingir bom desempenho

em suas operações, o processo de manutenção de máquinas possui alta

relevância, visto que existe relação direta entre o mesmo e os objetivos de

desempenho definidos por Slack et al (1993).

1. Qualidade: para garantir baixos números de defeito, refugo e tempo

entre falhas, um equipamento precisa ser devidamente manutenido

de acordo com suas características.

2. Rapidez: problemas em uma máquina que não passou por sua

manutenção podem gerar maior tempo de ciclo, além de possíveis

atrasos na entrega do produto final.

3. Confiabilidade: a maior possibilidade de falhas no processo

produtivo devido ao mau gerenciamento da manutenção das

máquinas gera incerteza quanto à quantidade de estoque que uma

empresa terá em relação a sua demanda. Ademais, como

consequência da menor rapidez nesse caso, a confiabilidade

também é afetada dado que os clientes podem não receber seu

produto no prazo previamente definido.

4. Flexibilidade: o funcionamento adequado de uma máquina está

diretamente relacionado com sua capacidade máxima de produção

para que possa se adequar à demanda existente, também a um

menor tempo de setup, essencial para que a produção seja mais

flexível.

Page 11: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

11

5. Custo: caso a manutenção de um equipamento não seja feita no

tempo certo, ele pode quebrar e parar a produção por completo,

diminuindo a produtividade e, consequentemente, aumentando o

custo por produto, além do custo caso se torne inviável atender a

demanda.

1.2. A TEMÁTICA CIÊNCIA DE DADOS

Nos últimos quinze anos, foram realizados amplos investimentos em

infraestrutura de negócios, o que melhorou a capacidade de coletar dados dentro

de uma empresa. Atualmente, praticamente todos os aspectos dos negócios

estão abertos à coleta de dados e muitas vezes são instrumentados para isso:

operações, fabricação, gerenciamento da cadeia de suprimentos,

comportamento dos clientes, desempenho de campanhas de marketing,

procedimentos de fluxo de trabalho e assim por diante. Ao mesmo tempo, as

informações agora estão amplamente disponíveis em eventos externos, como

tendências de mercado, notícias da indústria e movimentações de concorrentes.

Essa ampla disponibilidade de dados levou a um crescente interesse em

métodos para extrair informações e conhecimentos úteis dos dados - o domínio

da ciência de dados (PROVOST ET AL, 2013).

Uma importante pergunta deve ser feita quando se trata desse assunto: o

que é, de fato, ciência de dados? Provost e Fawcett (2013) dizem que é difícil

definir exatamente o que é. De acordo com eles, a ciência de dados envolve

princípios, processos e técnicas para entender fenômenos através da análise

(automatizada) de dados. O objetivo final da ciência de dados é melhorar a

tomada de decisão, já que isso geralmente é de grande interesse para as

empresas.

Segundo McAfee e Brynjolfsson (2012), decisões baseadas em dados

tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

substituídos por outros que as fazem. Setor após setor, as empresas que

descobrem como combinar conhecimento de domínio com ciência de dados se

destacarão de suas concorrentes.

Page 12: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

12

1.3. OBJETIVO GERAL

Dados os temas abordados, esse trabalho teve como objetivo elaborar,

por meio de dados de manutenção de máquinas, um modelo para predizer se a

manutenção de uma máquina será realizada dentro do prazo desejado de acordo

com as suas características, de forma a não prejudicar a produtividade de uma

empresa de transporte e logística de combustíveis.

Posteriormente, foram avaliadas as variáveis utilizadas pelo modelo para

determinar o cumprimento ou não do prazo de manutenção de acordo com sua

importância. Com essa análise, é possível compreender o que, de fato, leva uma

máquina a ser manutenida com atraso e, consequentemente, atuar para evitar

que futuros atrasos ocorram.

1.4. OBJETIVOS ESPECÍFICOS

Para atingir o objetivo geral do trabalho, foram definidos alguns objetivos

específicos dentro de suas etapas de acordo com o resultado esperado de cada

uma delas. Esses objetivos são:

1. Selecionar as variáveis a serem utilizadas pelo algoritmo;

2. Analisar as variáveis para compreender as características e o

comportamento delas;

3. Gerar visualizações dos dados para, posteriormente, visualizar o

resultado do modelo;

4. Escolher um modelo que obtenha resultados satisfatórios em relação

aos indicadores escolhidos de avaliação;

5. Realizar a análise de sensibilidade do modelo;

6. Analisar os resultados da classificação, a fim de entender o que, de

fato, leva uma manutenção a ser realizada fora do seu prazo.

Page 13: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

13

1.5. LIMITAÇÕES DO TRABALHO

Considerando que o modelo desenvolvido tem como objetivo predizer um

evento, não é possível afirmar que seu resultado será sempre condizente com a

realidade, visto que ele não leva em consideração todos os fatores internos e

externos, qualitativos e quantitativos que possam influenciar no prazo de

manutenção de uma máquina. Portanto, o modelo deve ser usado como uma

ferramenta de auxílio para tomada de decisões relacionadas ao trabalho de

manutenção na empresa, por meio da interpretação dos resultados produzidos.

Outro fator que possui influência direta no trabalho é o tamanho da

amostra de dados utilizada. Em um modelo preditivo, o volume de dados é de

suma importância para que o resultado esteja próximo do esperado. No entanto,

a empresa que forneceu os dados solicitou que fosse utilizada apenas uma

amostra do que foi fornecido. Após unir os diferentes arquivos e tratar os dados,

a base obtida possui 683 registros, o equivalente a 0,17% do maior arquivo (BW),

que possui 410.209 registros.

No desenvolvimento do algoritmo, houve também uma limitação em

relação ao modelo escolhido. Existem diversos modelos de classificação além

do KNN, como Decision Tree, Random Forest, SVM e Regressão Logística, que

utilizam outros parâmetros e classificam os dados de outras formas, podendo

obter resultados melhores ou piores dependendo dos dados apresentados. O

mesmo ocorre para a redução de dimensionalidade do dataset. Outros métodos,

como PCA e t-SNE, possuem o mesmo objetivo, também podendo ser aplicados

nessa situação. Para trabalhos futuros, deve se considerar testar outros métodos

e comparar os resultados com os do modelo final proposto.

1.6. ESTRUTURA DO TRABALHO

O presente trabalho está estruturado em 5 capítulos, sendo eles:

Page 14: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

14

• Capítulo 1: é o capítulo de introdução, contendo uma contextualização

do tema abordado, o objetivo geral, os objetivos específicos e as

limitações do projeto.

• Capítulo 2: contém a revisão da literatura, onde são descritos os

métodos utilizados de acordo com o trabalho de outros autores.

• Capítulo 3: descrição da metodologia empregada para o

desenvolvimento do modelo.

• Capítulo 4: capítulo para demonstrar os resultados do modelo final.

• Capítulo 5: apresenta a conclusão da aplicação do modelo e dos

resultados obtidos, além da possibilidade de continuações para o

trabalho.

Após o capítulo de conclusão, estão as referências utilizadas ao longo do

projeto, a base de dados e o código em Python que aplica o modelo.

Page 15: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

15

2. REVISÃO DA LITERATURA

Neste capítulo são abordados os métodos utilizados no trabalho para

elaborar, calibrar e avaliar os resultados do algoritmo de acordo com estudos

prévios. São eles: Truncated SVD, para redução de dimensionalidade de

matrizes; KNN, para a classificação dos dados; Acurácia, Precisão, Recall, F1

Score, Curva ROC e AUC para comparar os resultados do modelo com

diferentes parâmetros.

2.1. SVD

Segundo Baker (2005), o SVD (Singular Value Decomposition) pode ser

observado a partir de três pontos de vista mutuamente compatíveis. Por um lado,

pode ser visto como um método para transformar variáveis correlacionadas em

um conjunto de relações não correlacionadas que melhor expõem os vários

relacionamentos entre os dados. Ao mesmo tempo, o SVD é um método para

identificar e ordenar as dimensões ao longo dos quais os pontos exibem a maior

variação. Isso está relacionado à terceira maneira de ver o SVD, que depois de

identificado onde há maior variação, é possível encontrar a melhor aproximação

dos pontos originais usando menos dimensões. Portanto, o SVD pode ser visto

como um método para redução dimensionalidade de dados.

O SVD é baseado em um teorema da álgebra linear que diz que uma

matriz retangular 𝐴 pode ser decomposta no produto de três matrizes - uma

matriz ortogonal 𝑈, uma matriz diagonal 𝑆 e a transposição de uma matriz

ortogonal 𝑉. O teorema apresentado dessa forma:

𝐴𝑚𝑥𝑛 = 𝑈𝑚𝑥𝑚 𝑆𝑚𝑥𝑛 𝑉𝑇𝑛𝑥𝑛 (1)

onde 𝑚 ≫ 𝑛, 𝑈𝑇𝑈 = 𝐼, 𝑉𝑇𝑉 = 𝐼, sendo 𝐼 a matriz identidade; as colunas de 𝑈 são

autovetores ortonormais de 𝐴𝐴𝑇, as colunas de 𝑉 são autovetores ortonormais

de 𝐴𝑇𝐴 e 𝑆 é uma matriz diagonal contendo as raízes quadradas dos autovalores

de U ou V em ordem decrescente, contendo apenas valores maiores ou iguais a

0.

Page 16: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

16

Figura 1 - SVD

Para auxiliar no entendimento da aplicação do SVD, Baker (2005) utiliza

o exemplo a seguir.

Considerando uma matriz

𝐴 = [3 1 1

−1 3 1]

Para encontrar 𝑈, primeiro deve-se encontrar 𝐴𝐴𝑇. A matriz transposta 𝐴𝑇 é

𝐴𝑇 = [3 −11 31 1

]

Então

𝐴𝐴𝑇 = [3 1 1

−1 3 1] [

3 −11 31 1

] = [11 11 11

]

Em seguida, é necessário encontrar os autovalores e os autovetores

correspondentes do 𝐴𝐴𝑇. Os autovetores de uma matriz são definidos pela

equação 𝐴�⃗� = 𝜆�⃗�, e aplicá-la à matriz 𝐴𝐴𝑇 resulta em

[11 11 11

] [𝑥1

𝑥2] = 𝜆 [

𝑥1

𝑥2]

Que pode ser reescrito pelas equações

11𝑥1 + 𝑥2 = 𝜆𝑥1 (2)

𝑥1 + 11𝑥2 = 𝜆𝑥2 (3)

Page 17: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

17

E rearranjado para chegar a

(11 − 𝜆)𝑥1 + 𝑥2 = 0 (4)

𝑥1 + (11 − 𝜆)𝑥2 = 0 (5)

Chega-se ao valor de 𝜆 igualando o determinante da matriz de coeficientes a

zero,

|(11 − 𝜆) 1

1 (11 − 𝜆)| = 0

De forma que

(11 − 𝜆)(11 − 𝜆) − 1𝑥1 = 0 (6)

(𝜆 − 10)(𝜆 − 12) = 0

𝜆 = 10, 𝜆 = 12

Dá os dois autovalores 𝜆 = 10, 𝜆 = 12. Substituindo 𝜆 nas equações 4 e 5,

encontra-se os autovetores. Para 𝜆 = 10, tem-se

(11 − 10)𝑥1 + 𝑥2 = 0

𝑥1 = −𝑥2

o que é verdadeiro para muitos valores, então é escolhido 𝑥1 = 1 e,

consequentemente, 𝑥1 = −1, chegando ao autovetor [1, −1] correspondente ao

autovalor λ = 10. Para λ = 12:

(11 − 12)𝑥1 + 𝑥2 = 0

𝑥1 = 𝑥2

e pela mesma razão de antes, considera-se 𝑥1 = 1 e 𝑥2 = 1. Agora, para λ = 12,

o autovetor é [1, 1]. Esses autovetores se tornam colunas em uma matriz

ordenada pelo tamanho do autovalor correspondente. Em outras palavras, o

autovetor do maior autovalor é a primeira coluna, o autovetor do segundo maior

autovalor é a segunda coluna e assim por diante até o autovetor do menor

autovalor como a última coluna da matriz. Na matriz abaixo, o autovetor para λ

= 12 é a primeira coluna e o autovetor para λ = 10 é a segunda.

Page 18: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

18

[1 11 −1

]

Finalmente, a matriz deve ser convertida em uma matriz ortogonal, que é feito

aplicando o processo de ortonormalização de Gram-Schmidt para as colunas,

começando por �⃗�1.

�⃗�1 =

�⃗�1

|�⃗�1|=

[1,1]

√12 + 12=

[1,1]

√2= [

1

√2,1

√2]

(7)

A partir daí,

�⃗⃗⃗�2 = �⃗�2 − �⃗�1 ∙ �⃗�2 ∗ �⃗�1 =

[1, −1] − [1

√2,1

√2] ∙ [1, −1] ∗ [

1

√2,1

√2] =

[1, −1] − 0 ∗ [1

√2,1

√2] = [1,−1] − [0,0] = [1,−1]

(8)

Normalizando o vetor

�⃗�2 =�⃗⃗⃗�2

|�⃗⃗⃗�2|= [

1

√2,−1

√2] (9)

Tem-se a matriz

𝑈 =

[ 1

√2

1

√21

√2

−1

√2]

O cálculo de 𝑉 é similar. 𝑉 é baseado em 𝐴𝑇𝐴, então

𝐴𝑇𝐴 = [3 −11 31 1

] [3 1 1

−1 3 1] = [

10 0 20 10 42 4 2

]

Os autovalores são encontrados por

[10 0 20 10 42 4 2

] [

𝑥1

𝑥2

𝑥3

] = 𝜆 [

𝑥1

𝑥2

𝑥3

]

Page 19: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

19

Que representa o sistema de equações

10𝑥1 + 2𝑥3 = 𝜆𝑥1 (10)

10𝑥2 + 4𝑥3 = 𝜆𝑥2 (11)

2𝑥1 + 4𝑥2 + 2𝑥3 = 𝜆𝑥3 (12)

Que pode ser reescrito como

(10 − 𝜆)𝑥1 + 2𝑥3 = 0 (13)

(10 − 𝜆)𝑥2 + 4𝑥3 = 0 (14)

2𝑥1 + 4𝑥2 + (2 − 𝜆)𝑥3 = 0 (15)

E é resolvido por

|

(10 − 𝜆) 0 20 (10 − 𝜆) 42 4 (2 − 𝜆)

| = 0

E resulta nos autovalores de 𝐴𝑇𝐴, 𝜆 = 0, 𝜆 = 10, 𝜆 = 12. Substituindo 𝜆 nas

equações 13, 14 e 15, encontram-se os autovetores. Para 𝜆 = 12, tem-se

−2𝑥1 + 2𝑥3 = 0 (16)

−2𝑥2 + 4𝑥3 = 0 (17)

2𝑥1 + 4𝑥2 + −10𝑥3 = 0 (18)

Que não possui apenas uma resposta. Então, utiliza-se 𝑥1 = 1

𝑥1 = 1, 𝑥2 = 2, 𝑥3 = 1

Para 𝜆 = 12, o autovetor é �⃗�1 = [1,2,1]. Para 𝜆 = 10,

Page 20: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

20

𝑥3 = 0

𝑥1 = −2𝑥2

Utilizando 𝑥1 = 2, o autovetor é �⃗�2 = [2,−1,0]. Finalmente, para 𝜆 = 0,

10𝑥1 + 2𝑥3 = 0 (19)

10𝑥2 + 4𝑥3 = 0 (20)

2𝑥1 + 4𝑥2 + 2𝑥3 = 0 (21)

Que não possui apenas uma resposta. Então, é utilizado 𝑥1 = 1, de forma que

𝑥1 = 1, 𝑥2 = 2, 𝑥3 = −5

O autovetor de 𝜆 = 0 é �⃗�3 = [1,2, −5]. Ordenando �⃗�1, �⃗�2 e �⃗�3 como colunas em

uma matriz de acordo com seus respectivos autovalores, encontra-se

[1 2 12 −1 21 0 −5

]

Que, pelo processo de ortonormalização de Gram-Schmidt, é convertida em uma

matriz ortonormal, começando por �⃗�1.

�⃗�1 =

�⃗�1

|�⃗�1|= [

1

√6,2

√6,1

√6] (22)

A partir daí,

�⃗⃗⃗�2 = �⃗�2 − �⃗�1 ∙ �⃗�2 ∗ �⃗�1 = [2,−1,0] (23)

�⃗�2 =

�⃗⃗⃗�2

|�⃗⃗⃗�2|= [

2

√5,−1

√5, 0]

(24)

Por fim,

�⃗⃗⃗�3 = �⃗�3 − �⃗�1 ∙ �⃗�3 ∗ �⃗�1 − �⃗�2 ∙ �⃗�3 ∗ �⃗�2 = [1,2,−5] (25)

Page 21: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

21

�⃗�3 =

�⃗⃗⃗�3

|�⃗⃗⃗�3|= [

1

√30,

2

√30,−5

√30]

(26)

Encontrando a matriz

𝑉 =

[ 1

√6

2

√5

1

√302

√6

−1

√5

2

√301

√60

−5

√30]

E sua transposta

𝑉𝑇 =

[

1

√6

2

√6

1

√62

√5

−1

√50

1

√30

2

√30

−5

√30]

Para 𝑆, as raízes quadradas dos autovalores diferentes de zero (𝜆 = 12, 𝜆 = 10)

são utilizadas para preencher a diagonal da matriz em ordem decrescente, e os

outros valores da matriz são zero. Os autovalores diferentes de zero de U e V

são sempre os mesmos, por isso, não importa de qual matriz retirar. Para que 𝑆

tenha as dimensões adequadas para permitir a multiplicação entre U e 𝑉𝑇, são

adicionadas colunas ou linhas apenas com zero. Dessa forma

𝑆 = [√12 0 0

0 √10 0]

𝐴𝑚𝑥𝑛 = 𝑈𝑚𝑥𝑚 𝑆𝑚𝑥𝑛 𝑉𝑇𝑛𝑥𝑛 =

[ 1

√2

1

√21

√2

−1

√2]

[√12 0 0

0 √10 0]

[

1

√6

2

√6

1

√62

√5

−1

√50

1

√30

2

√30

−5

√30]

= [3 1 1

−1 3 1]

Page 22: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

22

Segundo Demmel et al (2005), existem versões reduzidas do SVD que

podem ser calculadas. Seja 𝑈𝑡 = [𝑢1, … , 𝑢𝑡] uma matriz mxt dos primeiros t

vetores singulares à esquerda, 𝑉𝑡 = [𝑣1, … , 𝑣𝑡] uma matriz txn dos primeiros t

vetores singulares à direita e 𝑆𝑡 = 𝑑𝑖𝑎𝑔(𝜎1, … , 𝜎𝑡) uma matriz txt dos primeiros t

valores singulares. Então podem ser feitas as seguintes definições.

2.1.1 Thin SVD

O Thin SVD de 𝐴 é definido por 𝐴 = 𝑈𝑛 𝑆𝑛 𝑉𝑇𝑛. O Thin SVD é muito menor para

armazenar e mais rápido para calcular que o SVD completo quando 𝑛 ≪ 𝑚.

Figura 2 - Thin SVD

2.1.2 Compact SVD

𝐴 = 𝑈𝑟 𝑆𝑟 𝑉𝑇

𝑟 é o Compact SVD de 𝐴, onde r é o número de valores singulares

diferentes de 0. O Compact SVD é muito menor para armazenar e mais rápido

para calcular que o Thin SVD quando 𝑟 ≪ 𝑛.

Page 23: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

23

Figura 3 - Compact SVD

2.1.3 Truncated SVD

𝐴𝑡 = 𝑈𝑡 𝑆𝑡 𝑉𝑇

𝑡 é o Truncated SVD de rank-t de 𝐴, em que 𝑡 < 𝑟. Hansen

(1987) diz que, para se encontrar o Truncated SVD, aproxima-se a matriz A com

uma 𝐴𝑡 de classificação inferior t e ignora-se os componentes do lado direito

correspondentes aos componentes ignorados de 𝐴. Ou seja, 𝐴𝑡 é uma matriz

próxima de 𝐴 em que os 𝑛 − 𝑡 menores valores singulares de 𝐴 são ignorados.

No presente trabalho, o Truncated SVD foi aplicado à base de dados de

81 colunas, utilizando 𝑡 = 2 e 𝑡 = 3, e gerando matrizes com menor número de

dimensões, de forma a permitir a visualização dos dados e utilizá-las na

aplicação do modelo a fim de comparar os resultados e encontrar a melhor forma

de aplicá-lo.

Figura 4 - Truncated SVD

Page 24: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

24

2.2. ALGORITMO KNN

O algoritmo KNN (k-nearest neighbors) é um algoritmo de aprendizado de

máquina simples. A ideia geral é relativamente simples: calcule a distância entre

um ponto A e todos os outros pontos, encontre os k pontos mais próximos a ele

e depois conte quantos desses k pontos pertencem a cada classificação. O ponto

A receberá a classificação com maior número de pontos. (SUN ET AL, 20 18).

No exemplo a seguir, existem oitos pontos classificados como 0 ou 1 e

um ponto A (4, 4) ainda não classificado. A partir do KNN, dependendo do valor

de k escolhido, a classificação desse ponto poderá variar.

Figura 5 - Gráfico de exemplo de pontos antes da aplicação do KNN

Para 𝑘 = 1, é selecionado apenas o primeiro ponto mais próximo de A –

o ponto (5, 5) – que possui classificação 0. Logo, a classificação de A será a

mesma.

Page 25: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

25

Figura 6 - Gráfico de exemplo após aplicação do KNN para k = 1

No caso de 𝑘 = 3, são selecionados os três pontos mais próximos de A –

(5, 5), (4, 2) e (2, 4). Desses três pontos, dois são classificados como 1 e apenas

um como 0. Portanto, a classificação de A será 0 nesse caso.

Figura 7 - Gráfico de exemplo após aplicação do KNN para k = 3

Page 26: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

26

2.3. INDICADORES DE AVALIAÇÃO

De acordo com Davis e Goadrich (2006), em um problema de decisão

binária, um modelo de classificação rotula dados como positivos ou negativos. A

decisão feita pelo classificador pode ser representada em uma estrutura

conhecida como matriz de confusão ou tabela de contingência. A matriz de

confusão tem quatro categorias: verdadeiros positivos (true positives) são dados

rotulados corretamente como positivos. Os falsos positivos (false positives) se

referem a dados negativos incorretamente rotulados como positivos.

Verdadeiros negativos (true negatives) correspondem a negativos rotulados

corretamente como negativos. Finalmente, os falsos negativos (false negatives)

se referem a exemplos positivos incorretamente rotulados como negativos.

Figura 8 - Matriz de Confusão

Por meio da matriz de confusão, indicadores podem ser calculados para

avaliar o resultado do modelo.

2.3.1. Acurácia

A acurácia é a relação entre o total de dados preditos corretamente, ou

seja, verdadeiros positivos e verdadeiros negativos, com o total de valores

preditos. Portanto, seu resultado representa, percentualmente, quantas vezes o

modelo predisse o valor real na amostra de dados utilizada.

𝐴𝑐𝑢𝑟á𝑐𝑖𝑎 =

𝑇𝑃 + 𝑇𝑁

𝑇𝑃 + 𝐹𝑃 + 𝐹𝑁 + 𝑇𝑁 (27)

2.3.2. Precisão

Positivo Negativo

Positivo True Positive (TP)False Positive

(FP)

NegativoFalse Negative

(FP)

True Negative

(TN)

Predito

Real

Page 27: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

27

Segundo Powers (2007), a precisão denota a proporção de casos

positivos previstos que são realmente positivos. Portanto, é calculado pela razão

entre o total de verdadeiros positivos e a soma de verdadeiros positivos e falsos

positivos.

𝑃𝑟𝑒𝑐𝑖𝑠ã𝑜 =

𝑇𝑃

𝑇𝑃 + 𝐹𝑃 (28)

Powers também cita a Precisão Inversa, que é a proporção de valor

negativos previstos que são realmente negativos. Sua fórmula é

𝑃𝑟𝑒𝑐𝑖𝑠ã𝑜 𝐼𝑛𝑣𝑒𝑟𝑠𝑎 =

𝑇𝑁

𝑇𝑁 + 𝐹𝑁 (29)

2.3.3. Recall

Powers diz que o Recall é a proporção de casos reais positivos que estão

corretamente previstos como positivos. O cálculo do recall é feito pela razão

entre os verdadeiros positivos e a soma dos verdadeiros positivos e falsos

negativos.

𝑅𝑒𝑐𝑎𝑙𝑙 =

𝑇𝑃

𝑇𝑃 + 𝐹𝑁 (30)

Assim como a Precisão, o Recall também possui seu inverso para casos

negativos.

𝑅𝑒𝑐𝑎𝑙𝑙 𝐼𝑛𝑣𝑒𝑟𝑠𝑜 =

𝑇𝑁

𝑇𝑁 + 𝐹𝑃 (30)

2.3.4. F1 Score

Page 28: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

28

O cálculo do F1 Score é feito pela média harmônica entre precisão e

recall. Ele é utilizado para avaliar a relação entre esses dois indicadores, de

forma que a diferença do resultado deles não seja elevada.

𝐹1 =

2 𝑥 𝑃𝑟𝑒𝑐𝑖𝑠ã𝑜 𝑥 𝑅𝑒𝑐𝑎𝑙𝑙

𝑃𝑟𝑒𝑐𝑖𝑠ã𝑜 + 𝑅𝑒𝑐𝑎𝑙𝑙 (31)

2.3.5. Curva ROC

Davis e Goadrich (2006) definem a ROC (Receiver Operator

Characteristic) como a curva que mostra como o número de exemplos positivos

classificados corretamente varia com o número de exemplos negativos

classificados incorretamente. Para encontrá-la, traça-se o False Positive Rate

(FPR) no eixo x e o True Positive Rate (TPR) no eixo y. O FPR mede a fração

de exemplos negativos que são classificados erroneamente como positivos, já o

TPR mede a fração de exemplos positivos classificados corretamente, sendo o

mesmo que o Recall.

Figura 9 - Curva ROC

Page 29: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

29

No exemplo da figura 8, nota-se que o TPR cresce rapidamente em

relação ao FPR, então esse classificador consegue classificar os dados positivos

corretamente sem que, para isso, aumente seu percentual de falsos positivos.

2.3.6. AUC

De acordo com Bradley (1996), a AUC (Area Under Curve) é um indicador

de performance do modelo classificador. Ela é calculada pela área abaixo da

linha traçada pela ROC, então seu valor varia de 0 a 1, e quanto mais próximo

de 1, melhor o modelo consegue classificar verdadeiros positivos sem classificar

falsos positivos.

No exemplo da figura 9, a AUC é calculada pela área do trapézio formado

pela ROC e pelas retas 𝐹𝑃𝑅 = 1 e 𝑇𝑃𝑅 = 0. Seu valor é 𝐴𝑈𝐶 = 0,875.

3. METODOLOGIA

3.1. ENTENDIMENTO DO NEGÓCIO

Antes de começar a trabalhar com os dados, foi necessário entender o

contexto do negócio em questão, para que qualquer tipo de análise proveniente

desses dados tivesse real significado para o problema. Dada essa questão, foi

explorada a forma como a empresa realiza o processo de manutenção de seus

equipamentos. Ele começa quando um dos centros de trabalho onde as

máquinas podem se encontrar envia uma nota demandando pela manutenção

de um equipamento. Essas notas são recolhidas por outro setor, que emite as

ordens de compra dos materiais necessários para a manutenção. Por fim, é feita,

de fato, a compra dos materiais, e nesses registros são encontrados os dados

relacionados aos prazos das manutenções.

Foi possível identificar que, durante esse processo de pedidos, existem

dados relevantes para diferenciar um atraso em manutenção de um prazo

cumprido, além das principais características das máquinas e das manutenções

utilizadas.

3.2. COLETA DE DADOS

Page 30: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

30

Os dados utilizados no estudo foram obtidos por meio de contato direto

com a empresa em questão. Foram disponibilizadas três bases de dados:

▪ IW29: base de notas enviadas pelos centros de trabalho demandando

por manutenção de um equipamento;

▪ IW49N: base de emissão de ordens de compra de material referente

às notas enviadas pelos centros;

▪ BW: base de compras de materiais para manutenção.

3.3. TRATAMENTO E ANÁLISE DOS DADOS

Após a coleta, foi realizado o tratamento dos dados coletados para obter

o dataset no formato correto. Primeiramente, foram selecionadas as variáveis de

cada arquivo para serem utilizadas no modelo. Após isso, os arquivos foram

unidos por meio de colunas chave, resultando na base de dados a ser utilizada.

Os arquivos foram unidos pelas colunas de número da ordem e número

da nota, e as variáveis selecionadas para aplicar o modelo foram:

3.3.1. Valor da compra para manutenção

Variável que indica o quanto a empresa gastou com materiais para realizar

a manutenção. Pela tabela 1, nota-se que esse valor pode ser zero, e apesar de

75% dos registros serem de até R$17.985,43, existem manutenções com custos

muito acima da média, chegando a R$406.989,84.

Tabela 1 – Características da variável Valor de Compra

Características da variável Valor de Compra

Tipo Numérica

Contagem 683

Média R$ 14.987,57

Desvio Padrão R$ 27.276,66

Mínimo R$ 0,00

25% R$ 2.037,17

50% R$ 6.294,00

75% R$ 17.985,43

Máximo R$ 406.989,84

Page 31: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

31

Figura 10 - Histograma da variável Valor de Compra

3.3.2. Tipo de manutenção

Variável que indica o tipo de manutenção a ser executada. Elas são:

• ZMEL – manutenção em que o equipamento não está defeituoso, apenas

passando por uma melhoria;

• ZAPO – manutenção relacionada a serviços de apoio a uma outra

manutenção;

• ZCOR – manutenção de um equipamento defeituoso;

• ZPRV – manutenção preventiva de um equipamento.

Tabela 2 – Características da variável Tipo de Manutenção

Características da variável Tipo de Manutenção

Tipo Categórica

Contagem 683

Rótulos

ZMEL

ZAPO

ZCOR

ZPRV

Page 32: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

32

Figura 11 - Distribuição de valores da variável Tipo de Manutenção

Figura 12 - Número de manutenções dentro e fora do prazo por tipo de manutenção

Analisando os gráficos, nota-se que o tipo de manutenção mais comum é a

ZCOR, correspondendo a 67% das manutenções registradas.

Proporcionalmente, é também o tipo de manutenção com maior número de

atrasos – 64% dos registros foram considerados fora do prazo – enquanto os

outros tipos de manutenção têm percentuais menores (manutenções de tipo

ZAPO, ZMEL e ZPRV possuem 49%, 51% e 54% respectivamente).

Page 33: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

33

3.3.3. Tipo de máquina

Variável que indica o tipo de máquina que sofrerá a manutenção, podendo

ser dos tipos M1, M2, M3 ou M7.

Tabela 3 – Características da variável Tipo de Máquina

Características da variável Tipo de Máquina

Tipo Categórica

Contagem 683

Rótulos

M1

M2

M3

M7

Figura 13 - Distribuição de valores da variável Tipo de Máquina

Page 34: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

34

Figura 14 - Número de manutenções dentro e fora do prazo por tipo de máquina

Dentre as manutenções registradas, a máquina do tipo M1 foi a mais

frequente. No entanto, o principal a se destacar é em relação às máquinas do

tipo M2. Enquanto os outros tipos tiveram um percentual próximo a 50% de

manutenções fora do prazo, o percentual dela é de 81%. Esse fato pode indicar

que o processo de manutenção de máquinas M2 é menos eficiente em relação

aos outros, ou que o prazo de conclusão para esse tipo de máquina deveria ser

maior.

3.3.4. Data de emissão da nota

Variável que indica a data em que a nota foi emitida para manutenção.

Foram utilizadas notas de aproximadamente 2 anos para o modelo, de junho de

2017 até maio de 2019.

Tabela 4 – Características da variável Data de Emissão da Nota

Características da variável Data de Emissão da Nota

Tipo Data

Contagem 683

Menor data 09/06/2017

Maior data 30/05/2019

Page 35: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

35

Figura 15 - Número de manutenções dentro e fora do prazo pela data de emissão

A figura 15 mostra que até julho de 2018, em nenhum mês o número de

notas emitidas em que o prazo de conclusão se cumpriu foi superior ao de notas

atrasada. No entanto, a partir de agosto de 2018, em apenas um mês a maioria

das notas de manutenção foi cumprida com atraso. Isso pode indicar que a

empresa já tomou iniciativas em relação a esse problema.

3.3.5. Código do centro de trabalho

Variável que indica o centro de trabalho onde a máquina referente à

manutenção se encontra. Na base de dados existem 68 diferentes centros de

trabalho, e destacados os que possuem o maior número de registros de

manutenções.

Tabela 5 – Características da variável Código do Centro de Trabalho

Características da variável Código do Centro de Trabalho

Tipo Categórica

Contagem 683

Número de rótulos 68

Mais frequentes T017

Page 36: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

36

T064

T060

T036

Figura 16 - Distribuição de valores da variável Centro de Trabalho

3.3.6. Criticidade

Variável que indica o nível de criticidade da manutenção. Uma

manutenção pode ter criticidade A, B ou C, sendo A o nível mais alto e C o mais

baixo de criticidade. Diferente das outras variáveis, essa possui 118 valores

nulos.

Tabela 6 – Características da variável Criticidade

Características da variável Criticidade

Tipo Categórica

Contagem 565

Rótulos

A

B

C

Page 37: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

37

Figura 17 - Distribuição de valores da variável Criticidade

Figura 18 - Número de manutenções fora e dentro do prazo por criticidade da manutenção

Analisando os gráficos referentes à criticidade da manutenção, é

observado que manutenções da menor criticidade – criticidade C – tiveram a

maior proporção de registros no prazo (46%), enquanto as manutenções de

criticidade A e B tiveram 36% e 37%, respectivamente. Considerando a

criticidade um fator relevante para a manutenção das máquinas, é possível que

haja um erro na priorização das manutenções por parte da equipe responsável

por executá-las.

Page 38: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

38

3.3.7. Prazo de conclusão

Variável que indica o prazo dado para a conclusão de uma manutenção.

Apesar de existirem registros até 2029, no gráfico da figura 19 só foram

apresentados dados até 2019 para que possa ser feita a comparação entre

manutenções concluídas dentro e fora do prazo.

Tabela 7 – Características da variável Prazo de Conclusão

Características da variável Prazo de Conclusão

Tipo Data

Contagem 683

Menor data 15/07/2017

Maior data 29/01/2029

Figura 19 - Número de manutenções dentro e fora do prazo pelo prazo de conclusão

Analisando o número de manutenções concluídas pelo prazo de

conclusão, é possível identificar que houve um aumento de manutenções

finalizadas dentro do prazo e um declínio de manutenções finalizadas com

atraso. Isso reforça que a empresa está conseguindo cumprir com o prazo com

maior frequência em relação aos anos anteriores, e também pode indicar que

notas emitidas com prazos maiores tendem a ser cumpridas.

Page 39: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

39

3.3.8. Data de fim da manutenção

Variável que indica a data em que a manutenção foi finalizada. Foram

registradas notas finalizadas entre agosto de 2017 e dezembro de 2019.

Tabela 8 – Características da variável Data de Fim da Manutenção

Características da variável Data de Fim da Manutenção

Tipo Data

Contagem 683

Menor data 29/08/2017

Maior data 28/11/2019

Figura 20 - Número de manutenções dentro e fora do prazo pela data de fim da manutenção

Diferente do que foi apresentado pelas variáveis ‘Data de Emissão da

Nota’ e ‘Prazo de Conclusão’, a figura 20 indica que, a partir de maio de 2018,

em apenas dois meses o número de manutenções concluídas no prazo foi

superior ao de atrasadas.

3.4. PRÉ-PROCESSAMENTO DOS DADOS

Page 40: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

40

Após concluir a análise das variáveis selecionadas, alguns ajustes à base

de dados foram necessários para que o algoritmo funcionasse corretamente e

não tivesse seu resultado enviesado.

O primeiro passo foi excluir as linhas da base em que a variável

‘Criticidade’ era nula, visto que esses registros podem prejudicar o resultado do

modelo.

O passo seguinte foi transformar as variáveis categóricas em números.

Essa alteração foi feita por meio de variáveis dummy, ou seja, para cada variável

categórica, foram criadas variáveis binárias em que cada uma representava um

possível valor dela, recebendo valor 1 caso o valor fosse o representado por

aquela coluna e 0 caso contrário. Por exemplo, em relação a ‘Criticidade’, no

lugar da coluna original com os dados, foram criadas três colunas, ‘A’, ‘B’ e ‘C’,

e para uma linha em que a criticidade era ‘A’, ela recebeu 1 na coluna ‘A’, 0 em

‘B’ e 0 em ‘C’. Nos casos de valor vazio, todas as colunas receberam 0.

Em relação às variáveis de data, o tratamento foi feito de forma a obter a

variável resposta do modelo, ou seja, o valor que diz se a manutenção foi

realizada no prazo ou não. A coluna de ‘Data de Emissão da Nota’ foi descartada,

visto que não influenciava nessa resposta, e foi criada a coluna ‘target’. Ela é

uma variável binária, que recebeu valor 1 caso a ‘Data de Fim da Manutenção’

fosse menor ou igual a ‘Prazo de Conclusão’, e 0 caso contrário.

Com todos os dados já numéricos, foi realizada a normalização deles, de

forma que todas as colunas tivessem valores apenas entre 0 e 1. Essa

normalização foi calculada por proporção, em que cada valor é subtraído do

menor valor e, então, dividido pela diferença entre o maior e o menor valores da

mesma coluna.

A última análise feita foi da correlação das variáveis com a variável ‘target’,

a fim de compreender se alguma característica da máquina ou da manutenção

possui alta correlação com o resultado da manutenção no prazo ou não. No

entanto, observou-se que nenhuma das variáveis estava altamente

correlacionada com ela.

Tabela 9 – 5 Maiores correlações com a variável target

Page 41: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

41

Variável Correlação

tp_m1 0,2228

cen_t060 0,196318

cen_t044 0,142194

cen_t013 0,113284

cen_t014 0,112933

Tabela 10 – 5 Menores correlações com a variável target

Variável Correlação

tp_m2 -0,290764

tp_zapo -0,128185

cen_t015 -0,101299

cen_t025 -0,094532

cen_t067 -0,094532

3.5. REDUÇÃO DE DIMENSIONALIDADE DA BASE

A etapa seguinte, já com o dataset devidamente preparado para a

aplicação do modelo, foi a utilização do Truncated SVD para reduzir o número

de dimensões dele. O objetivo dessa redução é, principalmente, visualizar os

dados em ℝ2 e ℝ3, visto que a base conta com 81 colunas após o tratamento

dos dados, não sendo possível visualizá-la dessa forma.

Page 42: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

42

Figura 21 - Visualização dos dados após aplicação do Truncated SVD para t = 2

Figura 22 - Visualização dos dados após aplicação do Truncated SVD para t = 3

Page 43: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

43

3.6. APLICAÇÃO DO MODELO DE CLASSIFICAÇÃO

Para realizar a classificação, foi aplicado o modelo KNN. Com o objetivo

de comparar resultados e escolher a melhor forma de utilizá-lo, a aplicação foi

feita para a base de dados completa de 81 colunas e para as projeções de duas

e três dimensões adquiridas por meio do Truncated SVD. Além disso, foram

testados diferentes valores do parâmetro k, a fim de encontrar o valor ideal de

vizinhos no algoritmo para a classificação dos dados.

A partir dos primeiros testes, foi percebido que, para valores de k > 5, a

performance do modelo piorava, portanto os resultados apresentados serão

correspondentes a valores de k de 2 a 5.

3.6.1. Base de dados completa

Utilizando a base de dados completa, sem a aplicação do Truncated SVD

para reduzir o número de colunas, foram encontrados os resultados do modelo

representados na tabela 11. Ela foi colocada em ordem decrescente em relação

ao valor de F1, que será a principal métrica para a escolha do modelo final. Logo,

utilizando essa base para aplicar o modelo, o valor de k que apresenta o melhor

F1 é k = 2. Dentre as opções apresentadas, é também a de maior acurácia,

atingindo 78,8%, e maior Recall, com 73,1%.

Tabela 11 – Resultados das métricas para o modelo com sua base de

dados completa

K F1 Acurácia Precisão Recall AUC

2 61,3% 78,8% 52,8% 73,1% 76,8%

3 58,7% 72,6% 61,1% 56,4% 68,7%

5 53,7% 72,6% 50,0% 58,1% 68,1%

4 52,5% 74,3% 44,4% 64,0% 70,6%

3.6.2. Projeção 3D

Page 44: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

44

A partir da utilização da base de dados com o Truncated SVD aplicado

com t = 3, foram obtidos novos resultados do modelo, como mostra a tabela 12.

Diferente da base original, nota-se que o modelo obteve o maior valor de F1 com

k = 3. Nesse caso, a Acurácia observada não foi a maior entre os diferentes

valores de k.

Tabela 12 – Resultado das métricas para o modelo com a base de

dados reduzida a 3 dimensões pelo Truncated SVD

K F1 Acurácia Precisão Recall AUC

3 63,4% 73,5% 72,2% 56,5% 70,8%

4 58,8% 75,2% 55,6% 62,5% 71,4%

2 57,1% 76,1% 50,0% 66,7% 72,9%

5 56,0% 70,8% 58,3% 53,8% 66,8%

3.6.3. Projeção 2D

Por fim, o modelo foi aplicado à base de dados com 2 dimensões após a

utilização do Truncated SVD. Assim como na base com 3 dimensões, o maior

valor de F1 observado corresponde a k = 3, mas também não obteve a maior

Acurácia.

Tabela 13 – Resultado das métricas para o modelo com a base de

dados reduzida a 2 dimensões pelo Truncated SVD

K F1 Acurácia Precisão Recall AUC

3 56,3% 72,6% 55,6% 57,1% 70,8%

5 52,9% 71,7% 50,0% 56,2% 66,8%

2 49,1% 74,3% 38,9% 66,7% 72,9%

4 48,4% 71,7% 41,7% 57,7% 71,3%

3.7. ESCOLHA DO MODELO FINAL

Na escolha do modelo final, foram considerados os melhores resultados

de cada base de dados utilizada em relação ao seu F1, apresentados na tabela

Page 45: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

45

14. Como mostra a tabela, nenhum dos indicadores obtidos pela Projeção 2D foi

superior em relação aos outros modelos, podendo ser descartado da

comparação.

Analisando as duas outras possibilidades, nota-se que a Projeção 3D

obteve melhor F1 com diferença de 2,1%, mas sua Acurácia foi 5,3% menor. É

possível considerar, então, que exista um trade-off entre esses indicadores, mas

que a diferença na aplicação de cada um não seja significante para novos dados.

No entanto, ao comparar a Precisão e Recall dos dois modelos, observa-se que

os valores foram significativamente diferentes entre ambos, apesar de

resultarem em F1’s próximos. Portanto, para decidir qual aplicação do modelo

deve ser replicada, foi necessário identificar qual desses indicadores deve ser

priorizado.

O indicador de Precisão, no presente trabalho, deve ser interpretado como

a porcentagem de manutenções classificadas pelo modelo como ‘Dentro do

Prazo’ que foram finalizadas, de fato, sem atraso. Já o Recall deve ser

interpretado pela porcentagem das manutenções que foram finalizadas no prazo

e o modelo as classificou corretamente dessa forma.

Para a decisão final, foi priorizado o modelo com maior Precisão, visto que

ela avalia os casos em que uma manutenção que ocorreu fora do prazo foi

classificada como ‘Dentro do Prazo’, que são os falsos positivos, enquanto o

Recall avalia os casos em que a manutenção foi feita no prazo, mas o modelo

classificou como ‘Fora do Prazo’, os falsos negativos. Isso porque, para a

empresa, o prejuízo será maior ao ignorar uma manutenção erroneamente

classificada como ‘Dentro do Prazo’ do que atuando em um registro que o

modelo classificou como ‘Fora do Prazo’ de forma errada.

Logo, foi definido que para o modelo final será utilizada a Projeção 3D dos

dados e k = 3, que obteve F1 de 63,4%, 73,5% de Acurácia e 72,2% de Precisão,

sendo a maior entre todas as possibilidades testadas.

Tabela 14 – Resultados das métricas do modelo

Dados K F1 Acurácia Precisão Recall AUC

Projeção 3D 3 63,4% 73,5% 72,2% 56,5% 70,8%

Page 46: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

46

Dataset completo 2 61,3% 78,8% 52,8% 73,1% 76,8%

Projeção 2D 3 56,3% 72,6% 55,6% 57,1% 70,8%

Por fim, a partir da definição do modelo final, foi realizada uma análise dos

resultados dos indicadores calculados – acurácia, precisão, recall, F1, curva

ROC e AUC – para ele. O objetivo dessa análise é compreender a forma como

o modelo classificou os dados e explorar os possíveis fatores relacionados a

falsos positivos e falsos negativos na matriz de confusão.

4. RESULTADOS DO MODELO

Por fim, a partir da definição do modelo final, foi realizada uma análise dos

resultados dos indicadores calculados – Acurácia, Precisão, Recall, F1, curva

ROC e AUC – para ele. O objetivo dessa análise é compreender a forma como

o modelo classificou os dados e explorar os possíveis fatores relacionados a

falsos positivos e falsos negativos na matriz de confusão.

4.1. MATRIZ DE CONFUSÃO

Por meio da matriz de confusão apresentada na figura 23, é possível

identificar como o modelo classificou as manutenções da base de teste e

comparar com os valores reais dessas manutenções. O eixo vertical representa

o valor predito pelo modelo, enquanto o eixo horizontal representa a real

classificação daquele registro, sendo ‘0’ o valor correspondente a manutenção

‘Fora do Prazo’ e ‘1’ a manutenção finalizada ‘Dentro do Prazo’.

Page 47: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

47

Figura 23 - Matriz de Confusão da base de teste do modelo

4.1.1. Acurácia, Precisão, Recall e F1

O modelo obteve Acurácia de 73,5%, acertando 83 dos 113 registros da

base de testes. Dos 36 dados classificados como ‘Dentro do Prazo’ pelo modelo,

26 foram certos, resultando uma Precisão de 72,2%. Em relação ao Recall,

esses 26 registros corretamente classificados representam 56,5% das 46

manutenções que ocorreram no prazo. Como dito anteriormente, foi priorizado

que o modelo tivesse menor número de falsos positivos em relação aos falsos

negativos, na matriz apresentados como 10 e 20, respectivamente. O F1,

calculado pela média harmônica entre precisão e recall, é de 63,4%, sendo o

maior encontrado ajustando os parâmetros do modelo.

4.1.2. Curva ROC e AUC

A curva ROC indica quão bem o modelo consegue classificar

manutenções como ‘Dentro do Prazo’ corretamente sem gerar falsos positivos.

Page 48: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

48

A figura 24 mostra essa curva, e a área abaixo dela, AUC, é de 0,708. Durante

a escolha do modelo final, foram encontrados valores maiores da curva AUC

utilizando outros parâmetros, mas pela priorização da precisão ao recall, esse

indicador não foi utilizado como fator decisivo.

Figura 24 - Curva ROC da base de teste do modelo

5. CONCLUSÃO

Dado o contexto atual referente à temática de ciência de dados e sua

popularização no âmbito corporativo, é evidente a importância que os projetos

nessa área possuem para que as empresas não percam sua competitividade

frente a seus concorrentes, visto que é uma transformação contínua para a

cultura de tomada de decisão baseada em dados.

Esse trabalho teve como objetivo geral elaborar um modelo preditivo que

identificasse se uma manutenção de máquina seria finalizada dentro do prazo

previsto a partir de algumas características dessa manutenção, além de avaliar

Page 49: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

49

as variáveis utilizadas pelo modelo para que fosse possível compreender o que

leva uma manutenção a atrasar, auxiliando na tomada de decisão de uma

empresa de transporte e logística de combustíveis. Por meio da seleção de

variáveis relevantes para o modelo, uma análise descritiva delas e a visualização

dos dados com uso do Truncated SVD para redução de dimensionalidade, foi

possível aplicar o KNN com diferentes parâmetros e, a partir dos indicadores

escolhidos para a avaliação do algoritmo, definir a melhor forma de aplicar o

modelo. Depois disso, foi realizada a análise de sensibilidade do modelo,

mostrando os resultados finais da classificação e seus falsos positivos e falsos

negativos.

Para selecionar as melhores variáveis para o modelo, foi feita uma

avaliação inicial das três bases de dados concedidas pela empresa. Observando

cada coluna disponível, a decisão de utilizar uma variável ou não foi feita

considerando principalmente o quanto ela representa uma característica da

máquina ou da manutenção em questão. Além disso, foi avaliada a quantidade

de dados preenchidos, dado que algumas colunas possuíam muitos registros

vazios, não podendo ser aproveitadas no modelo.

As variáveis selecionadas na base de dados final foram analisadas por

meio de uma descrição das suas principais características, como tipo de variável,

distribuição e rótulos de dados, a fim de apresentar o comportamento dos dados

utilizados. A comparação de manutenções dentro e fora do prazo a partir de

algumas variáveis permitiu identificar possíveis características que influenciam

no cumprimento do prazo de uma manutenção, e as visualizações temporais das

manutenções mostraram uma melhoria ao longo dos anos em relação aos

prazos, apesar de uma crescente quantidade de registros sendo finalizados com

atraso a partir de 2018. Ademais, a correlação entre as variáveis utilizadas e a

target, que indica o cumprimento do prazo ou não, não revelou nenhum valor

relevante que sugerisse alguma característica principal associada ao prazo da

manutenção.

A aplicação do Truncated SVD permitiu a visualização dos dados da base

e, com auxílio dos gráficos, foi possível identificar que, no geral, os pontos se

agrupam com outros que têm o mesmo valor na variável target. Ou seja,

Page 50: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

50

manutenções ocorridas no prazo aparecem mais próximas entre si, e o mesmo

acontece para as atrasadas. Dado que o KNN utiliza a distância de um ponto aos

seus mais próximos para realizar a classificação, essa característica da base

sugeriu que o modelo traria resultados satisfatórios.

Na aplicação do modelo, foram utilizadas tanto a base de dados original

quanto as bases geradas pela aplicação do Truncated SVD, com 2 e 3

dimensões. Os valores de k do KNN variaram de 2 a 5, visto que números

maiores testados geraram resultados inferiores. Utilizando o F1 Score como

principal indicador de avaliação da classificação, mas analisando também a

acurácia, precisão, recall e AUC de cada possibilidade, foi encontrado o modelo

com melhor resultado. Essa análise foi feita inicialmente com os diferentes

valores de k para cada base de dados, depois entre os melhores resultados

encontrados em cada uma.

Depois da escolha do melhor modelo, uma análise de sensibilidade foi

feita, com o intuito de detalhar os indicadores calculados na base de teste,

observando quantas manutenções foram classificadas erroneamente, tanto para

falsos positivos quanto falsos negativos. A plotagem da matriz de confusão e da

curva ROC auxiliam na compreensão desse resultado, evidenciando, por

exemplo, que o modelo gerou um maior número de falsos negativos, como havia

sido priorizado anteriormente.

Pelo que foi observado ao longo do trabalho, algumas características

relacionadas às manutenções têm maior influência no cumprimento do prazo do

que outras. Alguns indícios disso estão na análise das variáveis, que indicam

maior porcentagem de atrasos os registros de manutenção de equipamentos

defeituosos, principalmente das máquinas do tipo M2 e de criticidade B. A partir

desses resultados, é possível atuar para que próximas manutenções descritas

de tal forma sejam priorizadas, caso necessário.

Considerando os indicadores de avaliação calculados, o resultado final

pode ser considerado satisfatório. Para futuros registros de manutenções,

mantendo-se uma acurácia próxima de 73,5% e precisão de 72,2%, o modelo

poderá servir de balizador na decisão de como a equipe de manutenção da

empresa deve priorizar os trabalhos a serem executados e o esforço e recursos

Page 51: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

51

alocados em cada um deles. Isso não deve descartar uma análise qualitativa de

especialistas, visto que o algoritmo não considera todos os fatores existentes

relacionados a uma manutenção ou a outras prioridades da própria empresa,

além de não acertar em todas as classificações.

Pode-se destacar nesse projeto e nos resultados obtidos, que, para o

problema abordado, o modelo utilizado foi uma escolha correta. Isso porque,

considerando que a base de dados utilizada possui a maioria das suas variáveis

sendo categóricas que descrevem atributos específicos de uma manutenção ou

máquina, a classificação por meio da distância entre os pontos aproveita que

esses valores são binários, pois os registros com mesmos atributos tendem a

ficar próximos e distante dos diferentes.

Em estudos futuros, podem ser exploradas outras técnicas de Machine

Learning para classificar os dados de manutenção apresentados, como Random

Forest e redes neurais. Na utilização do Truncated SVD, como nesse trabalho

foram utilizados apenas 𝑡 = 2 e 𝑡 = 3, existe a possibilidade de os resultados

serem melhores para outros valores de t, podendo ser testados valores entre 4

e 80. Outros valores de k também podem ser testados no KNN, pois, apesar de

alguns testes, não foram testadas tantas possibilidades além dos apresentados

no projeto. O mesmo modelo pode ser aplicado também com novas variáveis

consideradas relevantes para o problema, contanto que a empresa tenha esses

dados registrados em volume suficiente para utilização.

Page 52: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

52

6. REFERÊNCIAS BIBLIOGRÁFICAS

BAKER, Kirk. Singular Value Decomposition Tutorial. 2005

BRADLEY, Andrew. The use of the Area Under the ROC Curve in the Evaluation

of Machine Learning Algorithms. Pattern Recognition 30-7 pp. 1145-1159, 1997

DAVIS, Jesse; GOADRICH, Mark. The Relationship Between Precision-Recall

and ROC Curves. Proceedings of the 23rd International Conference on Machine

Learning, ACM. 06. 10.1145/1143844.1143874, 2006

DEMMEL, James; BAI, Zhaojun; DONGARRA, Jack; RUHE, Axel; VORST, Henk

van der. Templates for the Solution of Algebraic Eigenvalue Problems: A Practical

Guide. SIAM, Philadelphia, 2000

HANSEN, Per Christian. The Truncated SVD as a Method for Regularization.

BIT 27, 534–553 (1987) doi:10.1007/BF01937276

MCAFEE, Andrew; BRYNJOLFSSON, Erik. Big Data: The Management

Revolution. Harvard Business Review, 2012

POWERS, David. Evaluation: From Precision, Recall and F-Factor to ROC,

Informedness, Markedness & Correlation. 2008

PROVOST, Foster; FAWCETT, Tom. Data Science and its relationship to Big

Data and data-driven decision making. Big Data, 1, 51--59 (2013) doi:

10.1089/big.2013.1508

Page 53: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

53

REBAI, Maher; Kacem, Imed; Adjallah, Kondo H. Scheduling jobs and

maintenance activities on parallel machines. Oper Res Int J 13, 363–383 (2013)

doi:10.1007/s12351-012-0130-1

SLACK, Nigel; CHAMBERS, Stuart; JOHNSTON, Robert. Operations

Management.Pearson Education Limited, Sixth edition, 2010

SUN, Jingwen; DU, Weixing; SHI, Niancai. A Survey of kNN Algorithm.

Information Engineering College, Panzhihua University of Technology, Sichuan,

China, 2018

Page 54: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

54

7. APÊNDICES

7.1. TABELA DE DADOS

valor_compra tp_manutencao tp_maquina data_nota cen criticidade conclusao_desejada data_fim

7888,45 ZMEL M3 09/06/2017 T041 C 06/12/2017 26/01/2018

7113,28 ZMEL M3 09/06/2017 T041 C 06/12/2017 22/09/2017

7888,45 ZMEL M3 09/06/2017 T041 C 06/12/2017 06/02/2018

0 ZMEL M3 09/06/2017 T041 C 06/12/2017 25/09/2017

286,9 ZMEL M3 09/06/2017 T041 C 06/12/2017 11/09/2017

406989,84 ZMEL M3 03/07/2017 T033 C 30/12/2017 10/02/2018

6780 ZMEL M3 03/07/2017 T033 C 30/12/2017 18/12/2018

16880 ZMEL M3 03/07/2017 T033 C 30/12/2017 05/12/2018

20880 ZMEL M3 03/07/2017 T033 C 30/12/2017 07/11/2018

480,2 ZMEL M3 03/07/2017 T033 C 30/12/2017 05/11/2018

1235,5 ZMEL M3 03/07/2017 T033 C 30/12/2017 30/11/2018

6876,75 ZMEL M3 03/07/2017 T033 C 30/12/2017 31/10/2018

12000 ZMEL M3 03/07/2017 T033 C 30/12/2017 13/11/2018

1120,5 ZAPO M1 19/07/2017 T017 B 15/01/2018 29/08/2017

25725,66 ZCOR M1 09/08/2017 T055 C 05/02/2018 18/10/2017

3997,35 ZMEL M3 14/08/2017 T060 10/02/2018 27/10/2017

3520 ZMEL M3 14/08/2017 T060 10/02/2018 29/09/2017

3968 ZMEL M3 14/08/2017 T060 10/02/2018 17/10/2017

3980 ZMEL M3 14/08/2017 T060 10/02/2018 20/10/2017

3710 ZMEL M3 14/08/2017 T060 10/02/2018 20/10/2017

26209 ZCOR M1 21/06/2017 T057 B 18/12/2017 18/12/2017

9412,42 ZCOR M1 30/06/2017 T033 C 26/12/2017 01/03/2019

9412,42 ZCOR M1 30/06/2017 T033 C 26/12/2017 29/08/2018

4638,16 ZCOR M2 22/08/2017 T064 B 21/09/2017 15/07/2019

59967 ZMEL M1 12/09/2017 T012 B 11/03/2018 28/08/2018

88032 ZCOR M1 19/09/2017 T059 C 24/02/2018 18/07/2018

2208 ZAPO M1 25/08/2017 T036 21/02/2018 20/02/2018

8040 ZAPO M1 31/08/2017 T036 27/02/2018 20/06/2018

9131,72 ZAPO M1 09/06/2017 T036 C 09/06/2019 27/03/2018

2603,94 ZAPO M1 09/06/2017 T036 C 09/06/2019 19/03/2018

14482,3 ZAPO M1 09/06/2017 T036 C 09/06/2019 16/05/2018

17933,76 ZAPO M1 22/09/2017 T064 21/03/2018 17/05/2018

32265,3 ZMEL M3 11/09/2017 T012 A 10/03/2018 02/03/2018

501,52 ZMEL M3 14/08/2017 T037 B 10/02/2018 21/03/2018

14968,61 ZMEL M3 14/08/2017 T037 B 10/02/2018 24/05/2019

88980,53 ZAPO M1 11/08/2017 T036 07/02/2018 19/11/2018

88980,53 ZAPO M1 11/08/2017 T036 07/02/2018 10/12/2018

2010 ZMEL M1 29/08/2017 T012 25/02/2018 16/05/2018

702,83 ZPRV M1 03/07/2017 T018 B 30/12/2017 25/04/2018

Page 55: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

55

1905,6 ZCOR M2 12/09/2017 T009 A 11/11/2017 09/12/2018

6495 ZCOR M7 19/07/2017 T085 B 20/07/2019 01/06/2018

37329,87 ZCOR M1 19/10/2017 T097 C 17/04/2018 04/02/2019

1454,56 ZAPO M1 11/09/2017 T009 A 10/03/2018 18/04/2018

31886,8 ZAPO M1 16/10/2017 T036 14/04/2018 03/09/2018

11410,56 ZCOR M2 25/10/2017 T097 A 24/12/2017 09/10/2018

25649,31 ZAPO M1 13/10/2017 T017 30/03/2018 13/08/2018

2416,26 ZCOR M1 20/10/2017 T009 18/04/2018 26/01/2018

2557,7 ZCOR M1 20/10/2017 T009 18/04/2018 02/03/2018

13650 ZCOR M1 20/10/2017 T009 18/04/2018 02/02/2018

4536,06 ZAPO M1 01/09/2017 T009 28/02/2018 04/05/2018

57974 ZMEL M3 01/11/2017 T038 C 30/04/2018 08/08/2018

59882,24 ZCOR M1 02/08/2017 T011 B 29/01/2018 12/12/2018

18553,91 ZCOR M1 29/09/2017 T009 28/03/2018 11/04/2018

12866,24 ZAPO M1 09/10/2017 T036 B 07/04/2018 11/10/2018

9184 ZAPO M1 07/07/2017 T036 B 03/01/2018 18/07/2018

19803,52 ZCOR M1 26/09/2017 T008 25/03/2018 11/07/2018

9440,02 ZCOR M1 26/09/2017 T008 25/03/2018 07/06/2018

4374,04 ZAPO M1 23/10/2017 T036 A 21/04/2018 04/04/2019

4770 ZCOR M2 04/10/2017 T001 B 08/12/2017 02/05/2019

12222,84 ZAPO M1 10/11/2017 T036 09/05/2018 27/03/2018

12222,84 ZAPO M1 10/11/2017 T036 09/05/2018 31/07/2018

6298,2 ZCOR M1 26/10/2017 T007 24/04/2018 03/07/2018

17248 ZCOR M1 26/10/2017 T007 24/04/2018 14/12/2018

844 ZMEL M3 30/10/2017 T085 B 28/04/2018 16/08/2018

4000 ZMEL M3 10/11/2017 T013 C 09/05/2019 30/03/2018

4000 ZMEL M3 10/11/2017 T013 C 09/05/2019 28/03/2018

0 ZMEL M3 29/11/2017 T055 C 28/05/2018 26/04/2018

44133,35 ZAPO M1 29/08/2017 T009 B 03/02/2018 01/10/2018

4315,6 ZCOR M1 16/11/2017 T060 A 15/05/2018 20/03/2018

4315,6 ZCOR M2 28/11/2017 T060 A 08/12/2017 20/03/2018

2155,36 ZCOR M2 05/12/2017 T055 03/06/2018 16/02/2018

912,77 ZCOR M2 05/12/2017 T055 03/06/2018 18/09/2018

912,77 ZCOR M2 05/12/2017 T055 03/06/2018 18/09/2018

912,77 ZCOR M2 05/12/2017 T055 03/06/2018 18/09/2018

912,77 ZCOR M2 05/12/2017 T055 03/06/2018 18/09/2018

912,77 ZCOR M2 05/12/2017 T055 03/06/2018 18/09/2018

534,7 ZCOR M1 26/09/2017 T057 23/07/2018 12/01/2018

3000 ZCOR M1 26/09/2017 T057 23/07/2018 19/03/2018

21750 ZCOR M1 26/09/2017 T057 23/07/2018 29/08/2018

1154,08 ZMEL M3 19/10/2017 T001 A 21/04/2018 10/05/2018

684,8 ZMEL M3 19/10/2017 T001 A 21/04/2018 07/08/2018

1154,08 ZMEL M3 19/10/2017 T001 A 21/04/2018 27/06/2018

4300 ZAPO M1 30/11/2017 T012 C 29/05/2018 15/03/2018

6476,62 ZAPO M1 30/11/2017 T012 C 29/05/2018 14/08/2018

26740 ZAPO M1 30/11/2017 T012 C 29/05/2018 19/12/2018

Page 56: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

56

13668,9 ZCOR M2 02/08/2017 T097 B 01/10/2017 23/08/2018

781,23 ZMEL M3 19/10/2017 T001 A 21/04/2018 27/12/2018

683,34 ZMEL M3 19/10/2017 T001 A 21/04/2018 17/09/2018

781,23 ZMEL M3 19/10/2017 T001 A 21/04/2018 12/02/2019

8270 ZMEL M3 19/10/2017 T001 A 21/04/2018 26/09/2018

4783,92 ZMEL M3 22/12/2017 T013 C 20/06/2019 05/10/2018

858 ZMEL M3 27/11/2017 T003 C 26/05/2018 18/04/2018

1680,45 ZCOR M1 25/10/2017 T037 23/04/2018 07/06/2018

145,8 ZCOR M1 25/10/2017 T037 23/04/2018 10/04/2018

1432,45 ZCOR M1 25/10/2017 T037 23/04/2018 07/03/2018

13668,9 ZCOR M2 02/08/2017 T097 B 01/10/2017 23/08/2018

52194,43 ZCOR M2 04/01/2018 T008 A 03/07/2018 23/03/2018

52194,43 ZCOR M2 04/01/2018 T008 A 03/07/2018 18/05/2018

52194,43 ZCOR M2 04/01/2018 T008 A 03/07/2018 01/05/2018

52194,43 ZCOR M2 04/01/2018 T008 A 03/07/2018 17/04/2018

812,6 ZPRV M1 11/09/2017 T040 A 16/12/2017 15/03/2018

2635,25 ZPRV M1 11/09/2017 T040 A 16/12/2017 25/02/2019

2635,25 ZPRV M1 11/09/2017 T040 A 16/12/2017 23/02/2019

35712 ZPRV M1 04/01/2018 T097 C 03/07/2018 06/04/2018

21097,2 ZPRV M1 03/01/2018 T085 B 03/03/2019 06/06/2018

4339,1 ZAPO M1 10/01/2018 T044 09/07/2018 21/02/2018

4339,1 ZAPO M1 10/01/2018 T044 09/07/2018 09/02/2018

4320 ZAPO M1 10/01/2018 T044 09/07/2018 08/06/2018

105223,6 ZCOR M1 18/01/2018 T048 B 17/07/2018 02/07/2018

4137,8 ZCOR M1 06/11/2017 T046 C 02/05/2018 30/04/2018

717 ZCOR M1 06/11/2017 T046 C 02/05/2018 11/05/2018

510,5 ZCOR M1 06/11/2017 T046 C 02/05/2018 31/12/2018

4137,8 ZCOR M1 06/11/2017 T046 C 02/05/2018 30/04/2018

717 ZCOR M1 06/11/2017 T046 C 02/05/2018 11/05/2018

510,5 ZCOR M1 06/11/2017 T046 C 02/05/2018 31/12/2018

7755 ZCOR M1 12/01/2018 T011 11/07/2018 16/04/2019

7755 ZCOR M1 12/01/2018 T011 11/07/2018 16/04/2019

1270,89 ZAPO M1 25/01/2018 T012 A 26/01/2018 21/02/2019

13688,62 ZCOR M1 15/01/2018 T033 14/07/2018 19/07/2018

8714,92 ZCOR M1 15/01/2018 T033 14/07/2018 31/10/2018

14242,93 ZCOR M2 11/12/2017 T064 B 10/01/2018 22/05/2018

15950,39 ZCOR M2 30/01/2018 T017 B 31/03/2018 03/09/2018

5508,08 ZCOR M2 15/01/2018 T022 B 16/03/2018 08/05/2018

1531,28 ZCOR M2 15/01/2018 T022 B 16/03/2018 26/03/2019

1602,83 ZCOR M1 27/12/2017 T009 25/06/2018 03/08/2018

14214,36 ZCOR M2 23/01/2018 T012 B 23/04/2018 09/10/2018

14214,36 ZCOR M1 24/01/2018 T097 B 23/07/2018 09/10/2018

0 ZCOR M1 09/01/2018 T002 A 08/07/2018 24/06/2018

36546,44 ZCOR M1 25/08/2017 T025 C 24/02/2018 12/11/2018

34403,65 ZCOR M1 25/08/2017 T025 C 24/02/2018 05/11/2018

34403,65 ZCOR M1 25/08/2017 T025 C 24/02/2018 05/11/2018

Page 57: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

57

26036,96 ZCOR M1 25/08/2017 T025 C 24/02/2018 18/02/2019

26036,96 ZCOR M1 25/08/2017 T025 C 24/02/2018 12/02/2019

2265,6 ZCOR M1 25/08/2017 T025 C 24/02/2018 17/01/2019

8000 ZCOR M1 25/08/2017 T025 C 24/02/2018 20/09/2019

4037,59 ZCOR M1 25/08/2017 T025 C 24/02/2018 26/05/2019

1920 ZCOR M1 02/10/2017 T042 31/03/2018 24/04/2018

91,02 ZCOR M1 02/10/2017 T042 31/03/2018 31/10/2018

91,02 ZCOR M1 02/10/2017 T042 31/03/2018 08/08/2018

303,78 ZMEL M3 27/11/2017 T012 21/04/2018 18/06/2018

690 ZMEL M3 27/11/2017 T012 21/04/2018 11/06/2019

6325,25 ZPRV M1 13/11/2017 T012 A 03/06/2018 18/07/2019

93345,44 ZCOR M2 22/02/2018 T048 B 23/04/2018 10/05/2018

34488,18 ZCOR M2 22/02/2018 T048 B 23/04/2018 01/03/2019

34488,18 ZCOR M2 22/02/2018 T048 B 23/04/2018 01/03/2019

34488,18 ZCOR M2 22/02/2018 T048 B 23/04/2018 29/04/2019

25376 ZCOR M2 20/02/2018 T017 B 21/05/2018 08/06/2018

69953,03 ZCOR M1 02/03/2018 T051 C 29/08/2018 10/09/2018

2173,34 ZCOR M1 02/03/2018 T051 C 29/08/2018 15/06/2018

5800 ZCOR M2 03/01/2018 T051 A 13/01/2018 02/04/2018

4630 ZCOR M2 03/01/2018 T051 A 13/01/2018 20/06/2018

41554,8 ZCOR M2 08/03/2018 T057 B 07/08/2018 11/01/2019

0 ZCOR M2 08/03/2018 T057 B 07/08/2018 30/04/2018

7481,7 ZCOR M2 08/03/2018 T057 B 07/08/2018 19/11/2018

7657,2 ZCOR M2 08/03/2018 T057 B 07/08/2018 22/05/2018

5688 ZCOR M2 23/02/2018 T057 B 02/05/2018 28/12/2018

1734,89 ZCOR M1 16/03/2018 T039 A 12/09/2018 21/02/2019

20926,64 ZCOR M2 14/06/2017 T034 B 13/08/2017 02/08/2018

20926,64 ZCOR M2 14/06/2017 T034 B 13/08/2017 02/08/2018

15366,04 ZCOR M2 17/03/2018 T060 A 27/08/2018 22/08/2018

15031,04 ZCOR M1 14/03/2018 T009 10/09/2018 31/07/2018

10772,22 ZCOR M1 15/03/2018 T074 A 11/09/2018 22/03/2019

0 ZCOR M1 21/03/2018 T039 A 17/09/2018 22/06/2018

1921,8 ZCOR M2 05/07/2017 T003 A 15/07/2017 08/06/2018

1953 ZCOR M2 27/12/2017 T012 A 13/01/2018 14/07/2018

8200 ZCOR M1 12/07/2017 T009 08/01/2018 06/12/2018

1885,75 ZCOR M1 07/03/2018 T055 C 03/09/2018 09/01/2019

10174,76 ZMEL M3 22/03/2018 T060 C 25/07/2018 13/09/2018

10174,76 ZMEL M3 22/03/2018 T060 C 25/07/2018 13/09/2018

0 ZMEL M3 22/03/2018 T060 C 25/07/2018 17/08/2018

43760 ZCOR M1 29/03/2018 T051 25/09/2018 01/08/2018

43760 ZCOR M1 29/03/2018 T051 B 25/09/2018 01/08/2018

16730 ZCOR M1 29/03/2018 T051 B 25/09/2018 01/08/2018

2338,95 ZCOR M1 29/03/2018 T051 25/09/2018 03/05/2018

639,84 ZCOR M1 29/03/2018 T051 25/09/2018 13/09/2018

1909 ZMEL M3 27/03/2018 T003 A 23/09/2018 19/06/2018

4112,68 ZCOR M2 28/02/2018 T010 B 29/04/2018 27/12/2018

Page 58: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

58

11296,4 ZCOR M2 16/03/2018 T055 A 26/03/2018 17/09/2018

6981,1 ZCOR M2 08/01/2018 T064 B 26/03/2018 13/06/2018

6981,1 ZCOR M2 08/01/2018 T064 B 26/03/2018 13/06/2018

6607,56 ZCOR M1 05/03/2018 T041 27/08/2018 17/08/2018

96868,33 ZCOR M2 20/12/2017 T076 B 19/01/2018 17/08/2018

96868,33 ZCOR M2 11/04/2018 T076 B 28/11/2018 17/08/2018

96868,33 ZCOR M2 11/04/2018 T076 B 29/11/2018 17/08/2018

96868,33 ZCOR M2 11/04/2018 T076 B 29/11/2018 17/08/2018

580 ZCOR M2 29/06/2017 T085 B 08/10/2017 02/01/2019

2280 ZCOR M2 29/06/2017 T085 B 08/10/2017 07/02/2019

9664,25 ZCOR M1 05/04/2018 T073 02/10/2018 30/04/2019

7948,02 ZCOR M1 05/04/2018 T073 02/10/2018 20/09/2018

33643,56 ZCOR M2 20/03/2018 T076 B 18/06/2018 19/10/2018

33643,56 ZCOR M2 01/06/2018 T076 B 30/08/2018 19/10/2018

7000 ZAPO M1 24/01/2018 T036 A 23/07/2018 10/09/2018

11766 ZCOR M2 18/04/2018 T097 B 02/01/2019 23/08/2018

7007,12 ZCOR M2 15/01/2018 T015 A 23/03/2018 31/07/2018

9535,68 ZCOR M2 15/01/2018 T015 A 23/03/2018 29/08/2018

71712,02 ZCOR M2 15/01/2018 T015 A 23/03/2018 25/09/2018

11092 ZPRV M1 05/02/2018 T076 A 28/04/2018 11/09/2018

11092 ZPRV M1 05/02/2018 T076 A 28/04/2018 11/09/2018

13861,99 ZCOR M2 08/03/2018 T064 A 05/05/2018 08/03/2019

139872,16 ZPRV M1 09/08/2017 T060 B 27/05/2019 09/10/2018

32742,9 ZPRV M1 09/08/2017 T060 B 27/05/2019 23/08/2018

139872,16 ZPRV M1 09/08/2017 T060 B 27/05/2019 09/10/2018

32742,9 ZPRV M1 09/08/2017 T060 B 27/05/2019 07/08/2018

32742,9 ZPRV M1 09/08/2017 T060 B 02/07/2019 23/08/2018

1406,67 ZPRV M1 09/08/2017 T060 B 02/07/2019 18/12/2018

9797,35 ZPRV M1 09/08/2017 T060 B 02/07/2019 12/02/2019

32742,9 ZPRV M1 09/08/2017 T060 B 02/07/2019 07/08/2018

745 ZCOR M2 28/02/2018 T001 A 29/04/2018 28/06/2018

2720 ZCOR M2 28/02/2018 T001 A 29/04/2018 17/10/2018

747,5 ZCOR M2 28/02/2018 T001 A 29/04/2018 21/06/2018

272,4 ZCOR M2 28/02/2018 T001 A 29/04/2018 26/02/2019

1674,32 ZPRV M1 18/04/2018 T004 B 28/11/2018 10/01/2019

6372 ZCOR M1 02/05/2018 T036 B 29/10/2018 12/11/2018

1760 ZCOR M1 02/05/2018 T036 B 29/10/2018 10/09/2018

660 ZCOR M1 02/05/2018 T036 B 29/10/2018 19/10/2018

6378,63 ZCOR M1 12/01/2018 T013 A 11/07/2019 17/09/2018

2315 ZCOR M2 08/05/2018 T097 B 02/09/2018 15/05/2019

1546 ZCOR M2 08/05/2018 T097 B 02/09/2018 23/11/2018

3509,6 ZAPO M1 11/05/2018 T017 B 07/11/2018 07/11/2018

3509,6 ZAPO M1 11/05/2018 T017 B 07/11/2018 07/11/2018

3509,6 ZAPO M1 11/05/2018 T017 B 07/11/2018 07/11/2018

3509,6 ZAPO M1 11/05/2018 T017 B 07/11/2018 07/11/2018

3696 ZCOR M7 19/06/2017 T067 B 10/11/2017 13/11/2018

Page 59: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

59

2280,34 ZPRV M1 02/04/2018 T043 A 27/01/2019 26/09/2018

12001,34 ZCOR M2 03/04/2018 T037 B 28/05/2018 02/04/2019

23167,2 ZMEL M1 09/05/2018 T037 B 30/09/2018 13/09/2018

23167,2 ZMEL M1 09/05/2018 T037 B 30/09/2018 09/11/2018

23167,2 ZMEL M1 09/05/2018 T037 B 30/09/2018 01/02/2019

9550 ZMEL M3 13/04/2018 T097 A 10/10/2018 29/08/2018

8296 ZMEL M3 13/04/2018 T097 A 10/10/2018 22/04/2019

2328,58 ZCOR M2 13/04/2018 T055 B 12/06/2018 03/12/2018

639,2 ZCOR M7 16/04/2018 T045 C 17/04/2028 25/10/2018

5467,74 ZPRV M1 02/04/2018 T074 A 10/04/2018 17/01/2019

5467,74 ZPRV M1 20/03/2018 T074 A 05/06/2018 17/01/2019

207,16 ZCOR M7 16/04/2018 T045 A 17/04/2028 06/08/2018

25559,81 ZCOR M2 29/05/2018 T085 B 02/10/2018 20/11/2018

0 ZAPO M1 08/05/2018 T017 B 04/11/2018 01/03/2019

15440 ZAPO M1 08/05/2018 T017 B 04/11/2018 08/05/2018

15440 ZAPO M1 09/05/2018 T017 B 05/11/2018 09/05/2018

5953,5 ZAPO M1 08/05/2018 T017 B 04/11/2018 26/02/2019

10400,02 ZAPO M1 08/05/2018 T017 B 04/11/2018 14/02/2019

7560,36 ZAPO M1 08/05/2018 T017 B 04/11/2018 14/01/2019

33525,66 ZCOR M1 14/05/2018 T015 10/11/2018 13/12/2018

33525,66 ZCOR M1 14/05/2018 T015 10/11/2018 11/12/2018

33525,66 ZCOR M1 14/05/2018 T015 10/11/2018 11/12/2018

33525,66 ZCOR M1 14/05/2018 T015 10/11/2018 13/12/2018

800 ZCOR M1 30/04/2018 T055 27/10/2018 08/11/2018

807,23 ZMEL M3 18/10/2017 T097 A 16/04/2018 28/12/2018

2930,4 ZMEL M3 18/10/2017 T097 A 16/04/2018 13/08/2018

23100 ZCOR M1 06/06/2018 T040 B 19/11/2018 31/12/2018

23100 ZCOR M1 06/06/2018 T040 B 19/11/2018 31/12/2018

23100 ZCOR M1 06/06/2018 T040 B 19/11/2018 31/12/2018

23100 ZCOR M1 06/06/2018 T040 B 19/11/2018 31/12/2018

5892 ZCOR M2 10/05/2018 T064 B 31/07/2018 03/09/2018

995 ZCOR M2 10/05/2018 T064 B 31/07/2018 27/05/2019

4815 ZAPO M1 10/05/2018 T036 C 06/11/2018 13/09/2018

10770,08 ZAPO M1 23/02/2018 T018 B 17/12/2018 25/02/2019

24540 ZAPO M1 24/04/2018 T025 21/10/2018 21/11/2018

4710,97 ZAPO M1 24/04/2018 T025 21/10/2018 26/12/2018

40815 ZCOR M1 06/02/2018 T008 C 30/07/2018 01/11/2018

1480 ZCOR M2 01/09/2017 T003 A 11/09/2017 30/07/2018

503,07 ZMEL M1 27/07/2017 T085 B 23/01/2018 14/09/2018

5904 ZAPO M1 08/06/2018 T044 05/12/2018 01/11/2018

12668,8 ZAPO M1 08/06/2018 T044 05/12/2018 28/08/2018

5336,46 ZAPO M1 08/06/2018 T044 05/12/2018 26/10/2018

8275,77 ZAPO M1 08/06/2018 T044 05/12/2018 28/08/2018

18037,1 ZCOR M7 27/06/2017 T009 A 07/07/2018 03/09/2018

41016 ZCOR M1 23/03/2018 T073 C 19/09/2018 11/12/2018

1980 ZCOR M1 23/03/2018 T073 C 19/09/2018 05/12/2018

Page 60: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

60

41016 ZCOR M1 09/06/2017 T073 C 06/12/2017 11/12/2018

1980 ZCOR M1 09/06/2017 T073 C 06/12/2017 05/12/2018

15017,31 ZCOR M1 17/01/2018 T003 B 16/07/2018 02/04/2019

3940 ZAPO M1 26/04/2018 T025 C 23/10/2018 28/08/2018

1769,38 ZAPO M1 26/04/2018 T025 C 23/10/2018 01/11/2018

5537,7 ZAPO M1 26/04/2018 T025 C 23/10/2018 16/04/2019

995 ZAPO M1 26/04/2018 T025 C 23/10/2018 22/08/2018

572,36 ZAPO M1 26/04/2018 T025 C 23/10/2018 17/01/2019

45000 ZAPO M1 26/04/2018 T025 C 23/10/2018 26/11/2018

5167,13 ZAPO M1 26/04/2018 T025 C 23/10/2018 10/04/2019

5132,4 ZCOR M7 23/11/2017 T036 A 24/11/2018 15/04/2019

1443,63 ZCOR M7 26/12/2017 T041 A 17/01/2020 07/01/2019

674,59 ZCOR M2 22/06/2018 T009 B 21/08/2018 01/02/2019

22924,8 ZCOR M1 08/06/2018 T023 B 04/12/2018 01/04/2019

2392,56 ZCOR M7 18/08/2017 T069 B 18/08/2019 14/12/2018

2121,29 ZPRV M1 26/06/2018 T012 A 23/12/2018 31/01/2019

625,95 ZPRV M1 26/06/2018 T012 A 23/12/2018 11/09/2018

3465,69 ZCOR M2 20/06/2018 T076 B 19/04/2018 27/12/2018

3465,69 ZCOR M2 20/06/2018 T076 B 19/04/2018 08/11/2018

30678,48 ZCOR M7 18/08/2017 T069 B 18/08/2019 04/01/2019

15273 ZCOR M7 18/08/2017 T069 B 18/08/2019 20/12/2018

1844,68 ZCOR M7 18/08/2017 T069 B 18/08/2019 12/12/2018

6288 ZCOR M1 16/05/2018 T018 12/11/2018 20/11/2018

3963 ZCOR M1 16/05/2018 T018 12/11/2018 29/03/2019

38314,5 ZCOR M2 26/06/2018 T019 B 24/09/2018 27/03/2019

1560,36 ZCOR M2 26/06/2018 T019 B 24/09/2018 23/01/2019

4370,92 ZCOR M1 27/06/2018 T018 18/06/2019 20/11/2018

5873,82 ZCOR M2 29/05/2018 T054 A 08/06/2018 25/05/2019

500 ZAPO M2 04/12/2017 T054 C 02/06/2018 24/11/2018

5978 ZAPO M1 29/11/2017 T003 A 28/05/2018 12/09/2018

6175 ZAPO M1 11/07/2018 T054 C 07/01/2019 08/10/2018

6175 ZAPO M1 11/07/2018 T054 C 07/01/2019 08/10/2018

6175 ZAPO M1 11/07/2018 T054 C 07/01/2019 08/10/2018

6175 ZAPO M1 11/07/2018 T054 07/01/2019 08/10/2018

12359,22 ZMEL M3 11/07/2018 T017 B 07/01/2019 14/02/2019

400 ZCOR M1 02/07/2018 T097 C 29/12/2018 09/11/2018

0 ZAPO M1 12/07/2018 T054 C 08/01/2019 25/03/2019

25021,44 ZCOR M1 25/06/2018 T048 18/12/2018 24/04/2019

2918,72 ZAPO M1 05/07/2018 T008 B 29/12/2018 14/02/2019

1100 ZAPO M1 05/07/2018 T008 B 29/12/2018 01/11/2018

2640 ZAPO M1 05/07/2018 T008 B 29/12/2018 11/04/2019

7625,82 ZCOR M7 14/06/2017 T064 B 22/06/2018 18/10/2018

1700,46 ZCOR M7 14/06/2017 T064 B 22/06/2018 01/11/2018

3480 ZCOR M7 14/06/2017 T064 B 22/06/2018 04/10/2018

1214,8 ZCOR M7 14/06/2017 T064 B 22/06/2018 04/10/2018

1425,6 ZCOR M7 26/06/2017 T064 B 28/06/2018 13/11/2018

Page 61: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

61

1214,8 ZCOR M7 26/06/2017 T064 B 28/06/2018 04/10/2018

33545,22 ZCOR M2 27/06/2018 T067 B 26/08/2018 23/10/2018

33545,22 ZCOR M2 27/06/2018 T067 B 26/08/2018 23/10/2018

33545,22 ZCOR M2 27/06/2018 T067 B 26/08/2018 23/10/2018

1587,6 ZCOR M2 27/06/2018 T067 B 26/08/2018 24/06/2019

2783,09 ZCOR M2 27/06/2018 T067 B 26/08/2018 16/05/2019

23338,12 ZCOR M1 12/07/2018 T060 C 08/01/2019 21/05/2019

33545,22 ZCOR M2 15/05/2018 T067 C 11/11/2018 23/10/2018

1587,6 ZCOR M2 15/05/2018 T067 C 11/11/2018 24/06/2019

2783,09 ZCOR M2 15/05/2018 T067 C 11/11/2018 16/05/2019

4793,7 ZCOR M1 18/07/2018 T037 24/12/2018 07/03/2019

773,7 ZCOR M1 18/07/2018 T037 24/12/2018 15/10/2018

283,3 ZCOR M1 18/07/2018 T037 24/12/2018 15/10/2018

65165,76 ZCOR M1 22/06/2018 T018 B 17/08/2019 10/04/2019

65165,76 ZCOR M1 22/06/2018 T018 B 17/08/2019 10/04/2019

0 ZCOR M2 07/05/2018 T033 B 30/01/2019 30/11/2018

13675 ZCOR M2 07/05/2018 T033 B 30/01/2019 22/04/2019

6488 ZCOR M2 19/07/2018 T095 B 19/10/2018 03/05/2019

12166,22 ZMEL M3 06/07/2018 T026 02/01/2019 05/12/2018

194337 ZCOR M2 20/07/2018 T016 C 16/01/2019 15/06/2019

11200,02 ZAPO M1 05/07/2018 T034 A 01/01/2019 21/01/2019

4350 ZAPO M1 05/07/2018 T034 A 01/01/2019 07/12/2018

10640,52 ZAPO M1 05/07/2018 T034 A 01/01/2019 06/04/2019

6000 ZAPO M1 05/07/2018 T034 A 01/01/2019 17/12/2018

6000 ZAPO M1 05/07/2018 T034 A 01/01/2019 17/12/2018

1458,4 ZAPO M1 05/07/2018 T034 A 01/01/2019 30/03/2019

5606 ZAPO M1 05/07/2018 T034 A 01/01/2019 17/04/2019

24320,05 ZMEL M3 13/07/2018 T017 B 09/01/2019 14/12/2018

46910,96 ZMEL M3 13/07/2018 T017 B 09/01/2019 07/11/2018

1600 ZCOR M7 28/06/2017 T064 B 28/06/2018 12/11/2018

116371,72 ZCOR M2 27/07/2018 T015 B 29/12/2018 25/01/2019

116371,72 ZCOR M2 27/07/2018 T015 B 29/12/2018 25/01/2019

1600 ZCOR M7 28/06/2017 T064 B 28/06/2018 12/11/2018

3140 ZAPO M1 01/08/2018 T036 C 28/01/2019 03/10/2018

25920 ZAPO M1 31/07/2018 T036 C 27/01/2019 19/03/2019

40280,22 ZAPO M1 30/07/2018 T036 B 26/01/2019 26/10/2018

55056,75 ZCOR M1 14/12/2017 T051 12/06/2018 15/08/2019

1743,36 ZMEL M3 03/08/2018 T012 B 30/01/2019 19/11/2018

602,64 ZCOR M2 24/04/2018 T051 A 04/05/2018 01/11/2018

8700 ZCOR M2 24/04/2018 T051 A 04/05/2018 08/03/2019

1287,34 ZMEL M3 12/03/2018 T012 A 08/09/2018 19/12/2018

1287,34 ZMEL M3 12/03/2018 T012 A 08/09/2018 13/11/2018

9231,24 ZCOR M1 17/05/2018 T002 A 13/11/2018 24/10/2018

1689 ZCOR M1 17/05/2018 T002 A 13/11/2018 20/12/2018

1792,8 ZCOR M1 17/05/2018 T002 A 13/11/2018 12/04/2019

2015,7 ZMEL M3 14/05/2018 T067 B 10/11/2018 12/11/2018

Page 62: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

62

328,45 ZCOR M1 07/12/2017 T001 A 02/06/2018 29/04/2019

6625 ZCOR M2 10/11/2017 T075 B 08/01/2018 23/01/2019

4214,16 ZMEL M3 14/08/2018 T095 B 19/03/2019 25/02/2019

3369,96 ZCOR M1 08/08/2018 T039 C 28/09/2018 13/02/2019

2568,4 ZCOR M1 08/08/2018 T039 C 28/09/2018 10/04/2019

23506,56 ZAPO M1 22/12/2017 T008 A 20/06/2018 13/05/2019

3687,65 ZCOR M1 18/06/2018 T075 B 09/12/2018 08/02/2019

2280 ZAPO M1 08/06/2018 T055 05/12/2018 26/11/2018

20519,83 ZCOR M2 06/02/2018 T017 A 03/02/2018 22/03/2019

8660,31 ZCOR M2 06/02/2018 T017 A 03/02/2018 15/02/2019

20519,83 ZCOR M2 06/02/2018 T017 A 03/02/2018 05/06/2019

20519,83 ZCOR M2 06/02/2018 T017 A 03/02/2018 22/03/2019

20519,83 ZCOR M2 06/02/2018 T017 A 03/02/2018 19/06/2019

20519,83 ZCOR M2 06/02/2018 T017 A 03/02/2018 01/08/2019

20519,83 ZCOR M2 06/02/2018 T017 A 03/02/2018 19/06/2019

8085,37 ZAPO M1 16/08/2018 T085 A 19/03/2019 05/02/2019

24206,1 ZCOR M2 16/07/2018 L001 A 26/07/2018 08/04/2019

24206,1 ZCOR M1 28/03/2018 L001 A 24/09/2018 08/04/2019

4018,8 ZMEL M3 23/08/2018 T001 A 19/02/2019 16/02/2019

7920 ZMEL M3 23/08/2018 T001 A 19/02/2019 16/11/2018

15078 ZMEL M3 23/08/2018 T001 A 19/02/2019 07/11/2018

1250,4 ZMEL M3 23/08/2018 T001 A 19/02/2019 19/10/2018

5266,8 ZCOR M1 20/08/2018 T024 A 16/02/2019 08/04/2019

4870 ZCOR M1 13/08/2018 T048 B 06/08/2019 29/04/2019

32775,48 ZCOR M1 13/08/2018 T048 06/08/2019 06/12/2018

2021,41 ZCOR M1 13/08/2018 T048 B 06/08/2019 20/02/2019

15295,32 ZCOR M1 15/05/2018 T016 11/11/2018 28/01/2019

3131,95 ZCOR M2 07/06/2018 T001 A 17/06/2018 15/01/2019

225 ZCOR M1 17/04/2018 T023 C 09/10/2018 22/05/2019

21204,74 ZCOR M1 10/08/2018 T041 06/01/2020 26/03/2019

456,07 ZCOR M1 10/08/2018 T041 06/01/2020 07/02/2019

1829 ZCOR M1 10/08/2018 T041 06/01/2020 30/01/2019

1571,7 ZMEL M3 10/08/2018 T074 C 06/02/2019 28/12/2018

30960 ZCOR M2 23/03/2018 T003 B 22/04/2018 03/01/2019

2067,23 ZMEL M3 22/01/2018 T034 C 21/07/2018 14/02/2019

4155 ZCOR M2 20/03/2018 T009 B 18/06/2018 03/12/2018

1518 ZCOR M1 09/07/2018 T041 05/12/2018 18/02/2019

1240 ZCOR M1 09/07/2018 T041 05/12/2018 05/04/2019

7372,8 ZCOR M2 13/06/2018 T064 A 11/08/2018 06/02/2019

2052,93 ZCOR M2 13/06/2018 T064 A 11/08/2018 20/11/2018

6728,1 ZCOR M2 13/06/2018 T064 A 11/08/2018 21/11/2018

6728,1 ZCOR M2 13/06/2018 T064 A 11/08/2018 22/03/2019

6728,1 ZCOR M2 13/06/2018 T064 A 11/08/2018 03/05/2019

518,4 ZCOR M1 28/08/2018 T088 A 11/08/2019 16/01/2019

24840 ZCOR M2 10/08/2018 T054 A 19/08/2018 04/02/2019

5220 ZCOR M2 10/04/2018 T018 B 28/09/2018 08/04/2019

Page 63: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

63

5220 ZCOR M2 10/04/2018 T018 B 28/09/2018 08/04/2019

4969,75 ZCOR M2 16/07/2018 T011 B 14/10/2018 23/01/2019

3184 ZAPO M1 30/08/2018 T007 C 26/02/2019 25/10/2018

3267,09 ZCOR M2 13/07/2018 T064 B 09/10/2018 19/05/2019

2305,08 ZAPO M1 22/08/2018 T008 18/02/2019 23/03/2019

239,36 ZCOR M2 07/06/2018 T013 A 06/08/2020 08/01/2019

3320 ZCOR M2 13/09/2018 T073 B 12/04/2019 08/03/2019

15945,04 ZCOR M2 13/09/2018 T073 B 12/04/2019 16/11/2018

6294 ZCOR M1 03/09/2018 T054 C 02/03/2019 28/05/2019

5310 ZAPO M1 12/07/2018 T064 08/01/2019 16/05/2019

122722,01 ZCOR M2 26/07/2018 T008 A 05/08/2018 06/08/2019

1484,2 ZCOR M2 26/07/2018 T008 A 05/08/2018 01/02/2019

1484,2 ZCOR M2 26/07/2018 T008 A 05/08/2018 22/02/2019

6270 ZCOR M2 17/09/2018 T007 B 16/11/2018 26/03/2019

872,96 ZCOR M1 18/09/2018 T017 A 17/03/2019 25/02/2019

335,4 ZCOR M1 18/09/2018 T017 A 17/03/2019 12/11/2018

36142,29 ZCOR M1 12/09/2018 T033 11/03/2019 19/12/2018

13540,42 ZCOR M1 12/09/2018 T033 11/03/2019 19/12/2018

8426,93 ZCOR M1 12/09/2018 T033 11/03/2019 19/04/2019

8426,93 ZCOR M1 12/09/2018 T033 11/03/2019 27/05/2019

16150 ZMEL M3 20/02/2018 T057 17/12/2018 13/02/2019

31874 ZCOR M1 06/06/2018 T078 B 03/12/2018 22/04/2019

3250 ZCOR M1 06/06/2018 T078 B 03/12/2018 25/05/2019

18898 ZCOR M2 21/08/2018 T011 B 20/09/2018 23/01/2019

8948,8 ZCOR M2 25/09/2018 T060 A 26/07/2019 04/06/2019

24955 ZAPO M1 27/08/2018 T011 A 23/02/2019 25/03/2019

8948,8 ZCOR M2 25/09/2018 T060 A 26/07/2019 04/06/2019

8948,8 ZCOR M2 25/09/2018 T060 A 24/07/2019 04/06/2019

8948,8 ZCOR M2 25/09/2018 T060 A 26/07/2019 04/06/2019

8948,8 ZCOR M2 25/09/2018 T060 A 26/07/2019 04/06/2019

24710,93 ZCOR M1 04/07/2018 T085 B 31/12/2018 15/04/2019

5245 ZCOR M2 27/09/2018 T011 B 27/09/2019 07/02/2019

3488,94 ZCOR M2 24/09/2018 T057 B 23/12/2018 08/05/2019

3488,94 ZCOR M2 24/09/2018 T057 B 23/12/2018 08/05/2019

15360 ZAPO M1 24/09/2018 T017 B 23/03/2019 12/12/2018

15360 ZAPO M1 24/09/2018 T017 B 23/03/2019 12/12/2018

6924,1 ZAPO M1 24/09/2018 T017 B 23/03/2019 15/01/2019

15360 ZAPO M1 24/09/2018 T017 B 23/03/2019 12/12/2018

15360 ZAPO M1 24/09/2018 T017 B 23/03/2019 12/12/2018

15360 ZAPO M1 24/09/2018 T017 B 23/03/2019 12/12/2018

15360 ZAPO M1 24/09/2018 T017 B 23/03/2019 12/12/2018

15360 ZAPO M1 24/09/2018 T017 B 23/03/2019 12/12/2018

4874,94 ZCOR M1 28/05/2018 T042 A 24/11/2018 01/04/2019

2480 ZCOR M2 24/09/2018 T057 B 23/11/2018 22/04/2019

6491,16 ZCOR M2 30/09/2017 T074 B 29/12/2017 18/04/2019

4017,12 ZCOR M1 06/09/2018 T003 B 05/03/2019 27/11/2018

Page 64: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

64

2991,16 ZCOR M2 01/12/2017 T003 A 30/01/2018 03/04/2019

0 ZCOR M2 01/12/2017 T003 A 30/01/2018 31/01/2019

6735,63 ZCOR M2 01/12/2017 T003 A 30/01/2018 02/07/2019

14014,96 ZMEL M3 12/09/2018 T064 A 10/03/2019 12/02/2019

4596,6 ZCOR M2 11/10/2018 T071 A 10/12/2018 11/04/2019

29600 ZCOR M2 03/10/2018 T057 B 01/12/2018 01/07/2019

4589,39 ZCOR M2 03/10/2018 T057 B 01/12/2018 23/04/2019

951,72 ZCOR M1 17/10/2018 T041 15/04/2019 13/03/2019

3533 ZCOR M2 04/10/2018 T019 B 30/08/2019 14/12/2018

9240 ZCOR M2 16/10/2018 T074 A 15/12/2018 18/04/2019

78830,88 ZMEL M3 13/09/2018 T071 B 12/03/2019 17/04/2019

4690 ZMEL M3 18/10/2018 T001 C 16/04/2019 23/01/2019

24650 ZCOR M1 09/10/2018 T033 07/04/2019 13/02/2019

19980 ZCOR M2 19/10/2018 T095 B 01/04/2019 15/05/2019

28001 ZCOR M7 30/05/2018 T076 B 01/10/2018 27/03/2019

7672,5 ZCOR M7 30/05/2018 T076 B 01/10/2018 23/04/2019

4005,83 ZCOR M1 15/08/2018 T053 C 09/02/2019 15/03/2019

28780,12 ZCOR M2 14/11/2017 T003 B 12/02/2018 21/03/2019

28780,12 ZCOR M2 14/11/2017 T003 B 12/02/2018 16/04/2019

3780 ZCOR M2 04/09/2018 T046 B 02/12/2018 08/03/2019

2643,02 ZCOR M7 28/06/2018 T008 A 29/06/2019 23/06/2019

2685 ZCOR M2 17/10/2018 T085 B 15/01/2019 15/03/2019

71539,58 ZCOR M1 12/09/2018 T085 A 11/03/2019 12/03/2019

36732,01 ZMEL M3 10/10/2018 T044 A 08/04/2019 29/04/2019

36732,01 ZMEL M3 10/10/2018 T044 A 08/04/2019 29/04/2019

36732,01 ZMEL M3 06/11/2018 T044 05/05/2019 29/04/2019

36732,01 ZMEL M3 10/10/2018 T044 08/04/2019 29/04/2019

36732,01 ZMEL M3 06/11/2018 T044 C 05/05/2019 13/04/2019

2285,31 ZCOR M1 25/10/2018 T057 B 24/05/2019 24/05/2019

1817,69 ZCOR M2 08/11/2018 T039 B 06/02/2019 26/04/2019

4100 ZCOR M2 08/11/2018 T039 B 06/02/2019 01/03/2019

368,8 ZCOR M2 08/11/2018 T039 B 06/02/2019 11/01/2019

6167,4 ZCOR M2 07/11/2018 T095 A 30/06/2019 18/02/2019

22043,84 ZCOR M2 17/10/2018 T011 B 15/03/2019 29/04/2019

26560,8 ZCOR M7 01/06/2018 T076 B 01/10/2018 16/04/2019

1960 ZCOR M7 01/06/2018 T076 B 01/10/2018 12/03/2019

5040 ZCOR M7 01/06/2018 T076 B 01/10/2018 28/02/2019

9520 ZCOR M7 01/06/2018 T076 B 01/10/2018 06/02/2019

23294 ZCOR M7 01/06/2018 T076 B 01/10/2018 02/06/2019

1197,62 ZCOR M1 28/08/2018 T084 C 23/02/2019 03/05/2019

10449,41 ZAPO M1 06/09/2018 T090 B 05/03/2019 22/01/2019

10449,41 ZAPO M1 06/09/2018 T090 B 05/03/2019 22/01/2019

1950 ZCOR M1 30/08/2018 T011 B 26/02/2019 20/03/2019

14220 ZCOR M2 03/11/2018 T060 A 04/09/2019 31/03/2019

4746,82 ZMEL M3 13/11/2018 T064 12/05/2019 07/02/2019

1300 ZCOR M2 08/10/2018 T009 B 06/01/2019 10/05/2019

Page 65: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

65

1780 ZCOR M1 24/10/2018 T036 B 22/04/2019 18/01/2019

12988 ZCOR M2 27/09/2018 T033 A 22/09/2018 24/04/2019

31963,66 ZMEL M3 16/10/2018 T018 B 14/04/2019 26/05/2019

15055,2 ZAPO M1 27/11/2018 T054 B 26/05/2019 03/04/2019

7930 ZAPO M1 27/11/2018 T054 B 26/05/2019 04/06/2019

29714,58 ZCOR M2 26/09/2018 T064 B 24/11/2018 28/04/2019

29714,58 ZCOR M2 26/09/2018 T064 B 24/11/2018 02/05/2019

15856 ZCOR M1 10/08/2018 T085 C 06/02/2019 10/05/2019

12107,73 ZCOR M1 02/11/2018 T038 B 01/05/2019 27/03/2019

6779,84 ZCOR M1 22/11/2018 T017 C 28/08/2019 10/02/2019

1071,36 ZCOR M1 22/11/2018 T017 C 28/08/2019 13/02/2019

9162,56 ZMEL M1 14/11/2018 T037 A 23/04/2019 03/04/2019

5944 ZCOR M1 04/12/2018 T080 C 02/06/2019 23/05/2019

5944 ZCOR M1 04/12/2018 T080 C 02/06/2019 20/03/2019

29149,88 ZMEL M3 04/12/2018 T062 C 02/06/2019 01/04/2019

22454,89 ZCOR M2 08/11/2018 T014 B 08/11/2019 14/08/2019

22454,89 ZCOR M2 08/11/2018 T014 B 08/11/2019 28/03/2019

7720 ZCOR M1 01/06/2018 T064 C 27/11/2018 03/09/2019

1276,75 ZAPO M1 24/10/2018 T036 A 22/04/2019 25/04/2019

1530 ZCOR M1 28/11/2018 T003 C 27/05/2019 08/06/2019

40772,6 ZCOR M1 07/12/2018 T079 A 05/06/2019 28/06/2019

40772,6 ZCOR M1 07/12/2018 T079 A 05/06/2019 28/06/2019

1138,5 ZCOR M1 20/09/2018 T057 B 19/03/2019 08/04/2019

2526,36 ZCOR M1 03/12/2018 T060 B 01/10/2019 24/05/2019

5068,8 ZCOR M1 03/12/2018 T060 B 01/10/2019 22/04/2019

1000 ZCOR M1 03/12/2018 T060 B 01/10/2019 25/03/2019

465,2 ZCOR M1 30/11/2018 T042 29/12/2019 15/04/2019

465,2 ZCOR M1 30/11/2018 T042 29/12/2019 22/04/2019

13594,4 ZCOR M1 03/12/2018 T060 B 01/10/2019 05/04/2019

12200 ZCOR M1 03/12/2018 T060 B 01/10/2019 06/04/2019

407,12 ZCOR M1 12/07/2017 T055 C 07/01/2018 18/05/2019

747,6 ZCOR M2 22/11/2018 T017 B 20/01/2019 27/03/2019

2322,24 ZCOR M1 12/12/2018 T054 B 10/06/2019 11/03/2019

7990 ZCOR M1 12/12/2018 T054 B 10/06/2019 28/02/2019

49197,35 ZCOR M2 17/10/2018 T014 B 16/11/2018 26/05/2019

7079,11 ZAPO M1 09/08/2018 T036 B 05/02/2019 12/05/2019

5680 ZCOR M2 05/09/2018 T011 B 04/12/2018 03/05/2019

1459,26 ZCOR M1 16/05/2018 T012 B 17/01/2019 08/06/2019

20942,83 ZCOR M2 26/06/2018 T009 B 24/09/2018 11/07/2019

4080 ZCOR M2 13/12/2018 T039 A 11/06/2019 26/03/2019

16797,3 ZCOR M7 05/09/2018 T044 C 19/09/2020 03/05/2019

2122,1 ZCOR M2 18/09/2018 T001 B 24/12/2018 20/06/2019

2184,2 ZCOR M1 02/04/2018 T036 A 29/09/2018 04/02/2019

3790 ZCOR M1 28/11/2018 T013 C 27/05/2019 26/02/2019

9424,84 ZCOR M2 22/11/2018 T062 B 21/01/2019 17/05/2019

72732 ZMEL M1 30/11/2018 T018 B 29/06/2019 29/09/2019

Page 66: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

66

1346 ZCOR M1 20/09/2018 T007 B 19/03/2019 11/08/2019

21216,82 ZAPO M1 19/12/2018 T078 A 03/07/2019 02/04/2019

21216,82 ZAPO M1 19/12/2018 T078 A 03/07/2019 02/04/2019

23630,4 ZMEL M1 19/12/2018 T064 17/06/2019 05/02/2019

23630,4 ZMEL M1 19/12/2018 T064 17/06/2019 05/02/2019

4151,8 ZCOR M1 26/10/2018 T057 C 24/04/2019 26/04/2019

23630,4 ZMEL M1 19/12/2018 T064 10/06/2019 05/02/2019

23630,4 ZMEL M1 19/12/2018 T064 10/06/2019 05/02/2019

47442,4 ZCOR M2 20/12/2018 T009 B 18/02/2019 21/04/2019

23581,32 ZCOR M2 20/12/2018 T009 B 18/02/2019 01/04/2019

4396,2 ZCOR M2 20/12/2018 T009 B 18/02/2019 01/02/2019

17919,48 ZCOR M1 05/12/2018 T012 A 03/06/2019 01/09/2019

1304,83 ZCOR M2 02/04/2018 T009 B 01/07/2018 03/05/2019

12480 ZCOR M2 26/12/2018 T061 C 26/12/2019 24/05/2019

7133,92 ZAPO M1 12/10/2018 T003 B 10/04/2019 25/07/2019

7133,92 ZAPO M1 12/10/2018 T003 B 10/04/2019 25/07/2019

7133,92 ZAPO M1 12/10/2018 T003 B 10/04/2019 25/07/2019

7133,92 ZAPO M1 12/10/2018 T003 B 10/04/2019 25/07/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 27/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 19/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 27/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 19/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 27/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 19/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 27/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 19/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 27/02/2019

1008,48 ZCOR M1 26/12/2018 T048 B 24/06/2019 19/02/2019

7589,67 ZCOR M2 27/11/2018 T009 A 26/01/2019 27/07/2019

749,56 ZPRV M1 05/02/2018 T074 B 16/07/2018 21/03/2019

3080 ZPRV M1 05/02/2018 T074 B 16/07/2018 12/05/2019

69806,34 ZCOR M2 30/10/2018 T012 B 29/12/2018 28/10/2019

69806,34 ZCOR M2 30/10/2018 T012 B 29/12/2018 28/11/2019

960 ZCOR M1 24/05/2018 L001 A 18/11/2018 04/04/2019

749,56 ZPRV M1 05/02/2018 T074 B 16/07/2018 21/03/2019

3080 ZPRV M1 05/02/2018 T074 B 16/07/2018 12/05/2019

1445 ZCOR M2 20/08/2018 T046 B 19/10/2018 21/02/2019

1445 ZCOR M2 20/08/2018 T046 B 19/10/2018 26/03/2019

2666 ZCOR M2 20/08/2018 T046 B 19/10/2018 08/03/2019

2790 ZCOR M1 11/10/2018 T046 31/03/2019 20/05/2019

29218,7 ZCOR M2 09/01/2019 T073 B 08/06/2019 27/02/2019

38630 ZCOR M1 06/11/2018 T051 A 05/05/2019 17/04/2019

10800,8 ZAPO M1 03/08/2018 T010 B 30/01/2019 15/03/2019

5440 ZCOR M1 02/01/2019 T003 A 01/07/2019 07/03/2019

5042,76 ZCOR M1 13/12/2018 T062 C 11/06/2019 09/04/2019

4868,6 ZCOR M1 13/12/2018 T062 C 11/06/2019 27/04/2019

Page 67: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

67

4540 ZCOR M1 09/01/2019 T066 B 08/07/2019 03/05/2019

2991,44 ZCOR M1 04/12/2018 T037 C 02/06/2019 08/03/2019

8308,67 ZPRV M1 11/12/2017 T007 B 09/06/2019 03/04/2019

22266 ZCOR M1 10/01/2019 T046 09/07/2019 12/04/2019

31461,6 ZCOR M1 08/01/2019 T095 C 07/07/2019 08/06/2019

8800 ZMEL M3 14/11/2018 T019 B 13/05/2019 26/03/2019

1560,16 ZMEL M3 14/11/2018 T019 B 13/05/2019 31/05/2019

8800 ZMEL M3 14/11/2018 T019 C 13/05/2019 26/03/2019

1560,16 ZMEL M3 14/11/2018 T019 C 13/05/2019 31/05/2019

1459,04 ZCOR M2 15/01/2019 T039 A 31/03/2019 01/06/2019

5259,62 ZMEL M3 29/11/2018 T003 A 29/12/2019 09/05/2019

24913,44 ZMEL M3 29/11/2018 T003 A 29/12/2019 04/05/2019

968 ZCOR M2 16/01/2019 T095 B 29/06/2019 12/05/2019

3800 ZAPO M1 28/12/2018 T006 A 26/06/2019 15/03/2019

8500 ZAPO M1 17/01/2019 T014 C 16/07/2019 25/05/2019

4233 ZCOR M1 09/11/2018 T015 08/05/2019 31/05/2019

94056,31 ZCOR M2 29/10/2018 T051 A 28/12/2018 24/06/2019

18372,2 ZCOR M2 17/01/2019 T067 B 18/03/2019 05/04/2019

18372,2 ZCOR M2 17/01/2019 T067 B 18/03/2019 05/04/2019

18372,2 ZCOR M2 17/01/2019 T067 B 18/03/2019 05/04/2019

18372,2 ZCOR M2 17/01/2019 T067 B 18/03/2019 05/04/2019

18372,2 ZCOR M2 17/01/2019 T067 B 18/03/2019 05/04/2019

1131,28 ZCOR M1 08/01/2019 T071 C 07/07/2019 20/02/2019

822,34 ZCOR M2 05/12/2018 T009 A 03/02/2019 12/04/2019

1131,28 ZCOR M1 08/01/2019 T071 C 07/07/2019 20/02/2019

167572,08 ZCOR M2 02/10/2017 T051 A 01/12/2017 10/06/2019

18372,2 ZCOR M2 17/01/2019 T067 B 18/03/2019 05/04/2019

31335,42 ZCOR M1 16/01/2019 T095 B 30/07/2019 18/04/2019

10744 ZCOR M1 25/01/2019 T085 C 03/08/2019 28/06/2019

4440 ZCOR M2 21/01/2019 T008 A 18/03/2019 21/05/2019

1200 ZCOR M2 21/01/2019 T008 A 18/03/2019 12/05/2019

4440 ZCOR M2 21/01/2019 T008 A 18/03/2019 21/05/2019

1200 ZCOR M2 21/01/2019 T008 A 18/03/2019 12/05/2019

1246,51 ZCOR M1 29/01/2019 T054 B 28/07/2019 28/04/2019

23294 ZCOR M7 10/01/2019 T076 B 16/05/2019 02/06/2019

16500 ZCOR M1 24/01/2019 T085 B 23/07/2019 11/03/2019

24000 ZCOR M2 02/10/2018 T017 C 31/03/2019 15/06/2019

360 ZCOR M2 02/10/2018 T017 C 31/03/2019 27/05/2019

6467,01 ZCOR M1 29/01/2019 T066 28/07/2019 25/07/2019

12784,2 ZCOR M1 09/01/2019 T039 07/07/2019 18/04/2019

7090,9 ZCOR M1 09/01/2019 T039 07/07/2019 26/04/2019

3411,08 ZCOR M1 25/01/2019 T023 23/07/2019 29/01/2019

5808 ZCOR M7 29/05/2018 T064 C 07/10/2018 18/04/2019

25215,4 ZCOR M2 24/01/2019 T057 B 25/03/2019 05/07/2019

3905,58 ZCOR M1 06/02/2019 T056 C 05/08/2019 26/03/2019

78000 ZCOR M2 30/01/2019 T060 B 30/03/2019 29/03/2019

Page 68: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

68

7840 ZMEL M3 04/02/2019 T014 C 03/08/2019 26/03/2019

3355 ZCOR M1 06/12/2018 T046 C 03/06/2019 27/05/2019

8023 ZCOR M2 11/01/2019 T048 A 21/01/2019 13/05/2019

7695,8 ZMEL M3 29/11/2018 T014 28/05/2019 02/05/2019

895 ZMEL M3 29/11/2018 T014 28/05/2019 15/04/2019

3234 ZMEL M3 29/11/2018 T014 28/05/2019 18/04/2019

17400 ZCOR M1 29/10/2018 T039 27/04/2019 06/06/2019

17861 ZCOR M1 12/02/2019 T084 B 11/08/2019 29/08/2019

21381,26 ZAPO M1 12/02/2019 T061 B 11/08/2019 31/05/2019

8221,9 ZCOR M1 12/02/2019 T071 C 11/08/2019 03/05/2019

1532,68 ZCOR M2 19/09/2018 T097 B 30/11/2018 10/05/2019

8221,9 ZCOR M1 13/02/2019 T071 C 12/08/2019 03/05/2019

6546,56 ZCOR M1 13/02/2019 T075 A 12/08/2019 14/05/2019

14000 ZCOR M2 25/01/2019 T012 A 04/06/2019 13/05/2019

1188 ZCOR M2 04/02/2019 T036 B 05/04/2019 04/06/2019

7686 ZCOR M1 22/01/2019 T084 B 21/07/2019 30/08/2019

8221,9 ZCOR M1 07/02/2019 T071 B 06/08/2019 03/05/2019

23294 ZCOR M7 02/04/2018 T076 B 03/04/2019 02/06/2019

4865 ZCOR M1 15/02/2019 T064 13/08/2019 23/04/2019

17861 ZCOR M1 27/02/2019 T084 B 26/08/2019 14/09/2019

6175 ZCOR M2 25/02/2019 T011 B 24/07/2019 27/04/2019

3980 ZCOR M1 26/02/2019 T014 C 25/08/2019 05/05/2019

389,76 ZCOR M7 28/01/2019 T085 A 29/01/2029 10/04/2019

248,5 ZCOR M7 28/01/2019 T085 A 29/01/2029 09/04/2019

5544 ZCOR M1 08/02/2019 T004 07/08/2019 30/04/2019

3210 ZCOR M1 07/01/2019 T008 C 06/07/2019 03/05/2019

2391 ZCOR M1 11/03/2019 T101 A 07/09/2019 07/05/2019

41046,96 ZCOR M1 07/03/2019 T064 A 03/09/2019 16/05/2019

41046,96 ZCOR M1 07/03/2019 T075 C 03/09/2019 16/05/2019

384 ZCOR M1 11/02/2019 T085 B 28/09/2019 22/04/2019

2388 ZCOR M1 11/02/2019 T085 B 28/09/2019 29/04/2019

5279,68 ZCOR M7 03/07/2018 T044 A 06/07/2019 09/06/2019

5636 ZCOR M7 03/07/2018 T044 A 06/07/2019 26/04/2019

2119,52 ZCOR M7 03/07/2018 T044 A 06/07/2019 30/05/2019

3696 ZCOR M1 04/01/2019 T044 C 03/07/2019 06/05/2019

4600 ZCOR M2 30/05/2019 T067 A 29/07/2019 18/05/2019

16852,08 ZCOR M1 25/03/2019 T100 A 21/09/2019 15/05/2019

3900 ZCOR M2 15/01/2019 T011 B 15/06/2019 18/04/2019

8010 ZCOR M2 04/02/2019 T011 B 05/06/2019 07/06/2019

8010 ZCOR M2 04/02/2019 T011 B 05/06/2019 07/06/2019

8010 ZCOR M2 04/02/2019 T011 B 05/06/2019 07/06/2019

1394,07 ZCOR M1 25/03/2019 T057 B 21/09/2019 30/05/2019

198937,74 ZAPO M1 28/03/2019 T044 24/09/2019 16/05/2019

16852,08 ZCOR M1 29/03/2019 T100 B 25/09/2019 15/05/2019

12500 ZMEL M3 23/01/2019 T051 C 22/07/2019 31/05/2019

328,3 ZCOR M2 04/01/2019 T001 B 04/04/2019 30/05/2019

Page 69: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

69

7.2. CÓDIGO PYTHON

############################################################################

# Created by: Prof. Valdecy Pereira, D.Sc.

# UFF - Universidade Federal Fluminense (Brazil)

# email: [email protected]

# Course: Data Science

# Lesson: Classification Methods

# Citation:

# PEREIRA, V. (2019). Project: Classification Methods, File: Python-DS-Classification.py, GitHub

repository: <https://github.com/Valdecy/Classification>

############################################################################

# Libraries

import pandas as pd

import matplotlib.pyplot as plt

import seaborn as sns

from mpl_toolkits.mplot3d import Axes3D

from sklearn.decomposition import TruncatedSVD

from sklearn.metrics import accuracy_score, classification_report, confusion_matrix,

roc_curve, roc_auc_score, f1_score, precision_score, recall_score

from sklearn.model_selection import train_test_split

from sklearn.neighbors import KNeighborsClassifier

from sklearn.preprocessing import MinMaxScaler

Page 70: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

70

############################################################################

# Util

# Function: ROC Curve

def plot_roc_curve(fpr, tpr):

plt.plot(fpr, tpr, color = 'orange', label = 'ROC')

plt.plot([0, 1], [0, 1], color = 'darkblue', linestyle = '--')

plt.xlabel('False Positive Rate')

plt.ylabel('True Positive Rate')

plt.title('Receiver Operating Characteristic (ROC) Curve')

plt.legend()

plt.show()

############################################################################

# Loading Dataset

dataset = pd.read_csv('Gustavo Pereira Lucchetti-00-Dataset.txt', sep = '\t')

names = dataset.columns

# Feature Scaling

sc0 = MinMaxScaler()

dataset = sc0.fit_transform(dataset)

dataset = pd.DataFrame(data = dataset, columns = names)

Page 71: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

71

############################################################################

# Projection

proj_2D = TruncatedSVD(n_components = 2, n_iter = 10, random_state =

101).fit_transform(dataset.iloc[:,:-1])

proj_2D = pd.DataFrame(proj_2D, columns = ['x', 'y'])

proj_2D['labels'] = dataset.iloc[:, -1]

plt.style.use('default')

print(proj_2D)

plot_2D = sns.scatterplot(data = proj_2D, x = 'x', y = 'y', hue = 'labels', palette = 'Set2')

proj_3D = TruncatedSVD(n_components = 3, n_iter = 10, random_state =

101).fit_transform(dataset.iloc[:,:-1])

proj_3D = pd.DataFrame(proj_3D, columns = ['x', 'y', 'z'])

proj_3D['labels'] = dataset.iloc[:, -1]

plt.style.use('default')

fig = plt.figure()

ax = fig.add_subplot(111, projection = '3d')

ax.scatter(proj_3D['x'], proj_3D['y'], proj_3D['z'], c = proj_3D['labels'], s = 50, alpha = 0.6,

edgecolors = 'w')

############################################################################

# Split - Dependent & Independent Variables

X = dataset.iloc[:,:-1] # Independent Variables

y = dataset.iloc[:, -1] # Dependent Variables (Target)

Page 72: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

72

X = proj_2D.iloc[:,:-1] # Independent Variables

y = proj_2D.iloc[:, -1] # Dependent Variables (Target)

X = proj_3D.iloc[:,:-1] # Independent Variables

y = proj_3D.iloc[:, -1] # Dependent Variables (Target)

# Split - Training & Tests Datasets

train_X, test_X, train_y, test_y = train_test_split(X, y, test_size = 0.20, random_state = 101)

# Feature Scaling

sc1 = MinMaxScaler()

sc2 = MinMaxScaler()

train_X = sc1.fit_transform(train_X)

test_X = sc2.fit_transform(test_X)

# Proj3D / No Scaling.

############################################################################

# KNN

# Algorithm

knn = KNeighborsClassifier(n_neighbors = 3)

knn.fit(train_X, train_y)

# Prediction - Train

knn_pred_y_train = knn.predict(train_X)

Page 73: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

73

# Metrics - Train

cm_knn_train = confusion_matrix(knn_pred_y_train, train_y)

print(cm_knn_train)

acc_knn_train = round(accuracy_score(knn_pred_y_train, train_y), 3)

print(acc_knn_train)

print(classification_report(knn_pred_y_train, train_y))

auc_knn_train = roc_auc_score(knn_pred_y_train, train_y)

auc_knn_train

fpr, tpr, thresholds = roc_curve(knn_pred_y_train, train_y)

plot_roc_curve(fpr, tpr)

# Prediction - Test

knn_pred_y_test = knn.predict(test_X)

# Metrics - Test

cm_knn_test = confusion_matrix(knn_pred_y_test , test_y)

print(cm_knn_test)

acc_knn_test = round(accuracy_score(knn_pred_y_test , test_y), 3)

print('Acurácia:',acc_knn_test)

precision_knn_test = round(precision_score(knn_pred_y_test , test_y), 3)

print('Precisão:',precision_knn_test)

recall_knn_test = round(recall_score(knn_pred_y_test , test_y), 3)

print('Recall:',recall_knn_test)

f1_knn_test = round(f1_score(knn_pred_y_test , test_y), 3)

print('F1 Score:',f1_knn_test)

Page 74: APLICAÇÃO DE MACHINE LEARNING PARA PREDIÇÃO DE …...Projeto final apresentado como pré-requisito ... tendem a ser melhores decisões. Os líderes abraçarão esse fato ou ser

74

print(classification_report(knn_pred_y_test , test_y))

auc_knn_test = roc_auc_score(knn_pred_y_test , test_y)

print('AUC:',auc_knn_test)

fpr, tpr, thresholds = roc_curve(knn_pred_y_test , test_y)

plot_roc_curve(fpr, tpr)