Escolar Documentos
Profissional Documentos
Cultura Documentos
Ciências de Dados
Capítulo 1. Introdução à Análise
e Ciência de Dados
Sobre o professor.
Objetivo do curso.
Projetos práticos.
Sobre o professor
• Formação acadêmica:
– Mestrado em Informática.
Prof.leandrolessa@gmail.com
https://linkedin.com/in/leandroflessa
https://github.com/ProfLeandroLessa
Fundamentos em
Ciências de Dados
Capítulo 1. Introdução à Análise
e Ciência de Dados
Aula 1.2. Poder dos Dados em Movimento
Prof. Leandro Lessa
Nesta aula
Data Never Sleeps.
R$ 26.600,00
O que devo fazer?
• Ter o LinkedIn atualizado:
– Se atualizar.
Áreas de Atuação
• A escolha de uma área vai depender da aptidão de cada profissional.
– Instituições financeiras.
– Indústrias.
Áreas de Atuação
• O trabalho de um cientista de dados está mais presente no nosso dia a
dia do que podemos perceber ou imaginar.
– Propagandas direcionadas:
Áreas de atuação.
Próxima aula
Áreas de conhecimento de um Cientista de Dados.
Fundamentos em
Ciências de Dados
Capítulo 1. Introdução à Análise
e Ciência de Dados
Aula 1.5. Áreas de Conhecimento de um Cientista de Dados
Prof. Leandro Lessa
Nesta aula
Áreas de Conhecimento de um Cientista de Dados.
Áreas de Conhecimento
• A profissão de Cientista de Dados tem ganhado destaque como uma das
carreiras mais promissoras e desafiadoras do século XXI.
• Não precisa ser uma especialista com mestrado nessa área, mas ainda
assim, será necessário ter conhecimento de vários conceitos dentro da
estatística e da matemática.
Matemática e Estatística
• Caso essa não seja sua área específica:
– Aprenda também:
o Modelos estatísticos.
– Coleta de Dados.
• Criação de Rotinas:
– Padrões.
– Tendências.
– Prever cenários.
– Power BI.
– Tableau.
– Qlik View.
Apresentação e Visualização
• É muito importante saber contar a história por trás dos dados.
• Quando os dados não são bem apresentados há o grave risco de serem mal
interpretados e os dados são a maior fonte de decisões atualmente.
Áreas de Conhecimento
• As áreas de conhecimento mencionadas são pilares fundamentais para a
atuação de um Cientista de Dados.
– Numéricos:
– Textuais:
• Dados de Geolocalização:
• É a matéria-prima do conhecimento.
Importância da Informação
• A informação traz compreensão sobre um determinado assunto ou situação.
• Quando os dados agregados fazem sentido para quem os lê, existe valor
naquela informação.
– Dados Estruturados.
– Dados Semiestruturados.
Dados Estruturados
• São dados organizados em um formato predefinido e bem definido,
tipicamente em tabelas com linhas e colunas.
– Inflexíveis.
– São flexíveis.
• Possuem uma estrutura flexível, como arquivos XML ou JSON, que permite
armazenar informações de forma organizada, mas sem a rigidez dos dados
estruturados.
• Estrutura heterogênea:
– Limpeza de dados.
– Enriquecimento de dados.
– Transformação de dados.
Exploração de dados
• Os dados são explorados visualmente e analiticamente para identificar padrões,
tendências e relações relevantes.
• Rapidez e eficiência:
• Precisão e confiabilidade:
• Cada clique, compra, postagem nas redes sociais, registro em sistemas e até
mesmo sensores e dispositivos conectados, geram uma quantidade
impressionante de informações.
– Redes sociais.
– Tecnologias de imagem.
– Dispositivos e sensores.
– E muito mais.
Cenário atual do Big Data
• Acompanhar o fluxo de dados é difícil, ainda mais desafiador é analisar
grandes quantidades, especialmente quando não seguem estruturas
tradicionais.
– Satélites.
– Dispositivos médicos.
• Qualidade e consistência:
• Veracidade e autenticidade:
• Afinal, o verdadeiro valor do Big Data está em como esses dados são utilizados
para a tomada de decisões estratégicas e impulsionar a inovação.
• Com a análise adequada, o Big Data pode revelar padrões ocultos, tendências
emergentes, preferências do cliente e oportunidades de mercado, entre outros
aspectos cruciais para o sucesso de uma organização.
Valor
• Para alcançar o valor do Big Data, é essencial estabelecer objetivos claros e
definir as questões que precisam ser respondidas.
• Personalização:
• Flexibilidade de análise:
– O ELT pode ser mais rápido no carregamento inicial dos dados, uma vez
que eles são armazenados sem transformação prévia.
ELT – Desvantagens
• Desafios de qualidade dos dados:
• Ela possui uma sintaxe simples, legível e fácil de aprender, o que a torna
uma das linguagens mais populares no mundo da programação.
Python
• Uma das áreas em que o Python tem se destacado é na análise de dados e
Machine Learning.
• Interação:
• Colaboração:
• Reprodutibilidade:
• Significa que você pode ter vários ambientes virtuais com diferentes versões
de bibliotecas e dependências, e usá-los para diferentes projetos sem que
eles interfiram uns com os outros, ou com o ambiente global do sistema.
Ambientes Virtuais
• O uso de ambientes virtuais é especialmente útil quando você está
trabalhando em vários projetos Python simultaneamente, cada um com
suas próprias dependências e requisitos específicos.
• Reprodutibilidade:
• Portabilidade:
– Você pode mover facilmente seu projeto de uma máquina para outra,
sem se preocupar com dependências e configurações do sistema.
Conclusão
Introdução aos ambientes virtuais.
– Inspeção.
– Limpeza.
– Transformação.
– Interpretação de dados.
• Marketing e publicidade:
• Finanças:
• Recursos Humanos:
• Identificação de Outliers:
• Validação de Dados:
• Visualização avançada:
• Validar Hipóteses:
• Investigação:
o Concorrência acirrada.
• Ação:
– A empresa toma medidas corretivas com base nos insights obtidos para
melhorar os resultados de vendas.
• Objetivo:
• Busca prever ventos futuros com base em padrões históricos e dados passados.
– Prever comportamentos.
• Esses modelos são, então, aplicados a novos dados para fazer previsões
precisas sobre o que pode acontecer em situações futuras.
Possibilidades de Análise
• Previsão de Tendências de Mercado:
• Manutenção Preditiva:
• Previsão de Riscos:
• Baseado nas predições feitas na etapa anterior, um sistema será capaz de fazer
recomendações inteligentes para o analista de dados.
• Para tal, é preciso, antes de mais nada, conhecer do modelo de negócios ao qual
os dados pertencem.
• Recomendações Personalizadas:
– MySQL.
– PostgreSQL.
– Oracle.
– Chaves primárias.
– Chaves estrangeiras.
• Eles são ideais para cenários em que a consistência e a precisão dos dados são
primordiais, como sistemas financeiros, sistemas de gerenciamento de
recursos humanos e sistemas de controle de estoque.
Banco de Dados NoSQL
• Por outro lado, com o advento da web 2.0 e das aplicações de larga escala,
surgiu a necessidade de lidar com enormes quantidades de dados e com uma
alta demanda por escalabilidade e flexibilidade.
– Documentos (document-oriented).
– Grafos (graph).
Orientados a Documentos
• MongoDB:
• Couchbase:
• Amazon DynamoDB:
• HBase:
• Amazon Neptune:
– Linguagem de consulta.
– A escalabilidade.
– Modelo de consistência.
Estrutura de Dados
• SQL:
– Cada tabela tem um esquema fixo que define os nomes e tipos de colunas,
garantindo a consistência dos dados.
– Cada tipo de banco de dados NoSQL possui sua própria API ou linguagem
de consulta específica.
– Algumas podem usar consultas similares ao SQL, mas outras podem ser
baseadas em métodos ou operações específicas do modelo de dados
utilizado.
Escalabilidade
• É uma característica fundamental que determina a capacidade de um sistema de
gerenciamento de banco de dados (DBMS) em lidar com o aumento da demanda
de dados e tráfego sem comprometer o desempenho ou a disponibilidade.
• Tanto os bancos de dados SQL quanto os NoSQL têm abordagens diferentes para
a escalabilidade.
Escalabilidade
• SQL:
o Memória.
o Armazenamento.
Escalabilidade
• SQL:
– Isso significa que eles podem facilmente distribuir dados em vários nós
em um cluster, permitindo que a carga de trabalho seja dividida entre os
servidores.
o Comércio eletrônico.
o Jogos online.
Consistência
• A consistência dos dados é um conceito crítico em bancos de dados e refere-
se à garantia de que os dados em um sistema estejam sempre em um estado
válido e coerente.
o Maior disponibilidade.
– Isso significa que, mesmo que alguns nós do cluster não estejam
disponíveis, o sistema continuará a responder a solicitações da melhor
forma possível, fornecendo acesso aos dados em um estado consistente
eventual.
BASE
• Suave (Soft state):
• Relações e Joins:
– Bancos de dados SQL são ideais para aplicativos que precisam realizar
operações complexas de junção e consulta em várias tabelas, permitindo
análises avançadas e relatórios detalhados.
Vantagens - SQL
• Maturidade e Suporte:
• Rigidez do Esquema:
– Bancos de dados SQL não são ideais para armazenar dados não
estruturados, exigindo mais esforço para adaptar-se a formatos
flexíveis, como JSON.
• Tempo de Desenvolvimento:
• Flexibilidade no Esquema:
• Velocidade de Desenvolvimento:
– Aprendizagem Supervisionada.
– Exemplos:
o Solteiro -> 0
o Casado -> 1
o Divorciado -> 2
Etapas da Eng. de Features
• Visualização de Features:
– A fruta poderia ser: limão, maça, abacate, kiwi, melancia, goiaba etc.
• Utiliza a técnica probabilística, que pode ser aplicada tanto para problemas
de classificação binária quanto para classificação multiclasse.
Teorema de Bayes
– Risco de crédito.
• Análise de sentimentos:
• Diagnóstico médico.
Aplicações
• Processamento de linguagem natural.
• Detecção de spam.
• Categorização de documentos.
Baixo
2/2 0/2 0/2 1/2 1/2 0/2 2/2 1/2 0/2 1/2
2/10
Moderado
2/5 2/5 1/5 3/5 2/5 2/5 3/5 2/5 1/5 2/5
5/10
Alto
0/3 0/3 3/3 3/3 0/3 2/3 1/3 2/3 1/3 0/3
3/10
Tabela de probabilidades
Tipo da
Renda Fiador Histórico de Crédito
dívida
Menor de Entre 13.500 Acima de Risco de
Baixa Alta Possui Não Possui Ruim Bom Não Possui
13.000 a 40.000 40.000
crédito
4 2 4 7 3 4 6 5 2 3
Baixo
2/2 0/2 0/2 1/2 1/2 0/2 2/2 1/2 0/2 1/2
2/10
Moderado
2/5 2/5 1/5 3/5 2/5 2/5 3/5 2/5 1/5 2/5
5/10
Alto
0/3 0/3 3/3 3/3 0/3 2/3 1/3 2/3 1/3 0/3
3/10
Baixo
2/2 0/2 0/2 1/2 1/2 0/2 2/2 1/2 0/2 1/2
2/10
Moderado
2/5 2/5 1/5 3/5 2/5 2/5 3/5 2/5 1/5 2/5
5/10
Alto
0/3 0/3 3/3 3/3 0/3 2/3 1/3 2/3 1/3 0/3
3/10
Baixo
2/2 0/2 0/2 1/2 1/2 0/2 2/2 1/2 0/2 1/2
2/10
Moderado
2/5 2/5 1/5 3/5 2/5 2/5 3/5 2/5 1/5 2/5
5/10
Alto
0/3 0/3 3/3 3/3 0/3 2/3 1/3 2/3 1/3 0/3
3/10
Tipo da
Renda Fiador Histórico de Crédito
dívida
Menor de Entre 13.500 Acima de Risco de
Baixa Alta Possui Não Possui Ruim Bom Não Possui
13.000 a 40.000 40.000
crédito
Baixo
Moderado
Alto
Análise histórica
Tipo da Histórico de
Renda Fiador Risco de crédito
dívida Crédito
Acima de 40.000 Baixa Possui Ruim Alto
Tipo da
Renda Fiador Histórico de Crédito
dívida
Menor de Entre 13.500 Acima de Risco de
Baixa Alta Possui Não Possui Ruim Bom Não Possui
13.000 a 40.000 40.000
crédito
Baixo
2/10
Moderado
5/10
Alto
3/10
2º Contar total de registros para cada feature
Tipo da
Renda Fiador Histórico de Crédito
dívida
Menor de Entre 13.500 Acima de Risco de
Baixa Alta Possui Não Possui Ruim Bom Não Possui
13.000 a 40.000 40.000
crédito
Baixo
2/10
Moderado
5/10
Alto
3/10
Análise histórica
Tipo da Histórico de
Renda Fiador Risco de crédito
dívida Crédito
Acima de 40.000 Baixa Possui Ruim Alto
Tipo da
Renda Fiador Histórico de Crédito
dívida
Menor de Entre 13.500 Acima de Risco de
Baixa Alta Possui Não Possui Ruim Bom Não Possui
13.000 a 40.000 40.000
crédito
4 2 4 7 3 4 6 5 2 3
Baixo
2/10
Moderado
5/10
Alto
3/10
3º Contar total de registros de feature por classe
Tipo da
Renda Fiador Histórico de Crédito
dívida
Menor de Entre 13.500 Acima de Risco de
Baixa Alta Possui Não Possui Ruim Bom Não Possui
13.000 a 40.000 40.000
crédito
4 2 4 7 3 4 6 5 2 3
Baixo
2/10
Moderado
5/10
Alto
3/10
Análise histórica
Tipo da Histórico de
Renda Fiador Risco de crédito
dívida Crédito
Acima de 40.000 Baixa Possui Ruim Alto
Tipo da
Renda Fiador Histórico de Crédito
dívida
Menor de Entre 13.500 Acima de Risco de
Baixa Alta Possui Não Possui Ruim Bom Não Possui
13.000 a 40.000 40.000
crédito
4 2 4 7 3 4 6 5 2 3
Baixo
2/2 0/2 0/2 1/2 1/2 0/2 2/2 1/2 0/2 1/2
2/10
Moderado
2/5 2/5 1/5 3/5 2/5 2/5 3/5 2/5 1/5 2/5
5/10
Alto
0/3 0/3 3/3 3/3 0/3 2/3 1/3 2/3 1/3 0/3
3/10
Estimativa da probabilidade
• Analisar o cliente com as seguintes características:
– Possui fiador.
Baixo
2/2 0/2 0/2 1/2 1/2 0/2 2/2 1/2 0/2 1/2
2/10
Moderado
2/5 2/5 1/5 3/5 2/5 2/5 3/5 2/5 1/5 2/5
5/10
Alto
0/3 0/3 3/3 3/3 0/3 2/3 1/3 2/3 1/3 0/3
3/10
Baixo
2/2 0/2 0/2 1/2 1/2 0/2 2/2 1/2 0/2 1/2
2/10
Moderado
2/5 2/5 1/5 3/5 2/5 2/5 3/5 2/5 1/5 2/5
5/10
Alto
0/3 0/3 3/3 3/3 0/3 2/3 1/3 2/3 1/3 0/3
3/10
– Possui fiador.
• Tratamento de dados faltantes: podem lidar com dados faltantes, não sendo
necessário o preenchimento de valores ausentes antes do treinamento do
modelo. O algoritmo de árvore de decisão pode simplesmente ignorar os
dados faltantes em cada nó de decisão.
Vantagens
• Capacidade de lidar com variáveis de entrada mistas: podem lidar com
variáveis de entrada de diferentes tipos (numéricas, categóricas, binárias
etc.), sem a necessidade de fazer transformações prévias nos dados.
• Nó de Decisão: representa uma decisão que deve ser tomada com base em
uma variável de entrada. Esse nó tem ramos que levam a outros nós de
decisão ou a folhas.
• Cada ramo leva a outro nó de decisão ou a uma folha, onde uma classe ou
valor de saída é atribuído.
Estrutura
Estrutura
Entendimento
do algoritmo
Como criar uma árvore?
– Entropia.
– Erro de Classificação.
– Isso significa que vamos ter mais dados referente a uma classe de
dados. Por exemplo: fraude, não fraude.
Quantas
transações são
Transações dentro do país. do mesmo país?
3/5 = 0,6
G = 0,44 G = 0,50
Gini da árvore
(0,6 * 0,44) + (0,4 * 0,5)
= 0,46 de impureza
Conclusão
Conhecemos o algoritmo árvore de decisão.
Próxima aula
Técnicas de balanceamento de dados.
Fundamentos em
Ciências de Dados
Capítulo 8. Algoritmos de Aprendizagem
de Máquina
Aula 8.5. Técnicas para Balanceamento dos Dados
Prof. Leandro Lessa
Nesta aula
Técnicas para balanceamento de dados.
Overfitting e underfitting.
Técnicas para
balanceamento de dados
Técnicas de balanceamento
• Em muitos problemas de aprendizado de máquina, é comum ter conjuntos
de dados desbalanceados, ou seja, com uma classe ou categoria muito mais
frequente do que as outras.
• Pode ser mais fácil interpretar os resultados do modelo, pois ele é treinado
em um conjunto de dados equilibrado.
• Uma vez que todas as árvores individuais são construídas, a Random Forest
combina as previsões de cada árvore para chegar a uma previsão final.
Random Forest
• No caso de problemas de classificação, a previsão final é determinada por
voto majoritário, onde cada árvore vota na classe prevista.
𝑇𝑃 + 𝑇𝑁 𝑃𝑟𝑒𝑑𝑖çõ𝑒𝑠 𝑐𝑜𝑟𝑟𝑒𝑡𝑎𝑠
𝑎𝑐𝑢𝑟á𝑐𝑖𝑎 = =
𝑇𝑃 + 𝐹𝑃 + 𝑇𝑁 + 𝐹𝑁 𝑡𝑜𝑑𝑜𝑠 𝑜𝑠 𝑟𝑒𝑔𝑖𝑠𝑡𝑟𝑜𝑠
Métricas de avaliação
• Precisão (Precision):
𝑇𝑃
𝑃𝑟𝑒𝑐𝑖𝑠ã𝑜 =
𝑇𝑃 + 𝐹𝑃
Métricas de avaliação
• Revocação (Recall ou Sensibilidade):
𝑇𝑃
𝑟𝑒𝑣𝑜𝑐𝑎çã𝑜 =
𝑇𝑃 + 𝐹𝑁
Métricas de avaliação
• F1-Score:
𝑝𝑟𝑒𝑐𝑖𝑠ã𝑜 ∗ 𝑟𝑒𝑣𝑜𝑐𝑎çã𝑜
𝑓1 − 𝑠𝑐𝑜𝑟𝑒 = 2 ∗
𝑝𝑟𝑒𝑐𝑖𝑠ã𝑜 + 𝑟𝑒𝑣𝑜𝑐𝑎çã𝑜
Matriz de confusão
Matriz de confusão
𝑇𝑃 + 𝑇𝑁 𝑃𝑟𝑒𝑑𝑖çõ𝑒𝑠 𝑐𝑜𝑟𝑟𝑒𝑡𝑎𝑠 𝑇𝑃
𝑎𝑐𝑢𝑟á𝑐𝑖𝑎 = = 𝑝𝑟𝑒𝑐𝑖𝑠ã𝑜 =
𝑇𝑃 + 𝐹𝑃 + 𝑇𝑁 + 𝐹𝑁 𝑇𝑜𝑑𝑜𝑠 𝑜𝑠 𝑟𝑒𝑔𝑖𝑠𝑡𝑟𝑜𝑠 𝑇𝑃 + 𝐹𝑃
3+4 3
𝑎𝑐𝑢𝑟á𝑐𝑖𝑎 = = 0,7 𝑝𝑟𝑒𝑐𝑖𝑠ã𝑜 = = 0,75
10 3+1
Matriz de confusão
𝑇𝑃 𝑝𝑟𝑒𝑐𝑖𝑠ã𝑜 ∗ 𝑟𝑒𝑣𝑜𝑐𝑎çã𝑜
𝑟𝑒𝑣𝑜𝑐𝑎çã𝑜 = 𝑓1 − 𝑠𝑐𝑜𝑟𝑒 = 2 ∗
𝑇𝑃 + 𝐹𝑁 𝑝𝑟𝑒𝑐𝑖𝑠ã𝑜 + 𝑟𝑒𝑣𝑜𝑐𝑎çã𝑜
3 0,75 ∗ 0,6
𝑟𝑒𝑣𝑜𝑐𝑎çã𝑜 = = 0,6 𝑓1 − 𝑠𝑐𝑜𝑟𝑒 = 2 ∗ = 0,66
3+2 0,75 + 0,6
Conclusão
Métricas de avaliação para modelos de classificação.
Próxima aula
Aula prática com a implementação das Métricas de avaliação.
Fundamentos em
Ciências de Dados
Capítulo 9. Avaliação de desempenho
Aula 9.2. Análise dos Resultados com Uso de
Algoritmo Balanceado
Prof. Leandro Lessa
Fundamentos em
Ciências de Dados
Capítulo 9. Avaliação de desempenho
Aula 9.3. Avaliação dos Resultados Utilizando
Algoritmo sem Balanceamento
Prof. Leandro Lessa