O documento discute Big Data e técnicas de análise de dados. Aborda porque Big Data é importante, fatores-chave como infraestrutura e gestão de dados, e aplicações em empresas. Também explica conceitos como árvores de decisão, redes neurais e algoritmos genéticos.
2. Big Data
“Big data is quite simply data that
cannot be managed or analyzed by
traditional technologies.”
IBM
3. Agenda
Porquê e Fatores Chave
Análise de Dados e Modelos Preditivos
Aplicações Empresariais
Desenvolvimento com RapidMiner
4. Porquê
●
●
●
“Em 2009, o storage dos dados de empresas com mais de
1000 colaboradores tinham um tamanho médio de 200 Terabytes”
“Ganhos de 100 mil milhões de dólares em custos
operacionais e fraude fiscal”
“Ganhos de 600 mil milhões de dólares para empresas
que segmentem os seus produtos”
McKinsey Global Institute
5. Porquê
●
●
●
●
●
“Em 2009, o storage dos dados de empresas com mais de
1000 colaboradores tinham um tamanho médio de 200 Terabytes”
“Ganhos de 100 mil milhões de dólares em custos
operacionais e fraude fiscal”
“Ganhos de 600 mil milhões de dólares para empresas
que segmentem os seus produtos”
McKinsey Global Institute
“Big Data Technology and Services Forecast Shows Market Expected to Grow to
$32.4 Billion in 2017 (27%)”
IDC
15. Vantagens/Desvantagens e Ética
●
Vantagens
→ Predição de tendências e opções futuras
→ Aumento de lucros através do estudo de hábitos e padrões
→ Redução de custos operacionais
16. Vantagens/Desvantagens e Ética
●
●
Vantagens
→ Predição de tendências e opções futuras
→ Aumento de lucros através do estudo de hábitos e padrões
→ Redução de custos operacionais
Desvantagens
→ Custos elevados de implementação
→ Privacidade dos dados
→ Possíveis erros no tratamento de dados
17. Vantagens/Desvantagens e Ética
●
●
●
Vantagens
→ Predição de tendências e opções futuras
→ Aumento de lucros através do estudo de hábitos e padrões
→ Redução de custos operacionais
Desvantagens
→ Custos elevados de implementação
→ Privacidade dos dados
→ Possíveis erros no tratamento de dados
Ética
→ exemplo: Banco A decide crédito com base num código postal pode
estar a excluir por raça
19. Conceitos, Exemplos e Atributos
●
Descrição do conceito como output do esquema de aprendizagem
→ exemplo: Jogar Futebol: SIM ou NÃO?
20. Conceitos, Exemplos e Atributos
●
●
Descrição do conceito como output do esquema de aprendizagem
→ exemplo: Jogar Futebol: SIM ou NÃO?
Exemplos ou Instâncias
→ exemplo: Temperatura - 15º; Humidade – Alta; Ventoso – Sim
21. Conceitos, Exemplos e Atributos
●
●
●
Descrição do conceito como output do esquema de aprendizagem
→ exemplo: Jogar Futebol: SIM ou NÃO?
Exemplos ou Instâncias
→ exemplo: Temperatura - 15º; Humidade – Alta; Ventoso – Sim
Atributos
→ Temperatura; …;
→ Podem ter várias medidas
24. Tratamento de Dados
●
●
●
Normalização: descrever todos os atributos num mesmo formato
Valores em falta: devem ser normalizados da mesma forma
Valores errados/duplicados podem conduzir a resultados adulterados
28. Árvores de Decisão
●
Formam uma árvore em que cada nó é um atributo e os ramos são os valores
Temperatura
<= 10
> 10
SIM
Ventoso
Não
SIM
Sim
NÃO
29. Árvores de Decisão
●
Formam uma árvore em que cada nó é um atributo e os ramos são os valores
Temperatura
<= 10
> 10
SIM
Ventoso
Não
SIM
●
Sim
NÃO
Qual o melhor atributo para escolher como raiz?
30. Árvores de Decisão
●
Deve ser escolhido como raíz o atributo mais “útil” - o que ajude mais a descrever
(classificar) o conjunto de exemplos
31. Árvores de Decisão
●
●
Deve ser escolhido como raíz o atributo mais “útil” - o que ajude mais a descrever
(classificar) o conjunto de exemplos
A entropia mede o grau de impureza dos atributos:
entropia (S )=− p y∗log (2)∗ p y− pn∗log (2)∗ p n
32. Árvores de Decisão
●
●
Deve ser escolhido como raíz o atributo mais “útil” - o que ajude mais a descrever
(classificar) o conjunto de exemplos
A entropia mede o grau de impureza dos atributos:
entropia (S )=− p y∗log (2)∗ p y− pn∗log (2)∗ p n
●
O ganho de informação mede a redução esperada de entropia
Sv
ganho(S , A)=entropia(S )− ∑ ( )∗entropia( S)
v∈Valores ( A) S
34. Árvores de Decisão
●
ID3 (Quinlan, 1986)
→ Problema 1: Nem todas as hipóteses são cobertas
→ Problema 2: Após a escolha de um nó não existe reconsideração
35. Árvores de Decisão
●
ID3 (Quinlan, 1986)
→ Problema 1: Nem todas as hipóteses são cobertas
→ Problema 2: Após a escolha de um nó não existe reconsideração
→ Problema 3: A complexidade da árvore pode retirar informação quando
existem poucos dados ou dados com muito ruído (overfitting)
36. Árvores de Decisão
●
●
ID3 (Quinlan, 1986)
→ Problema 1: Nem todas as hipóteses são cobertas
→ Problema 2: Após a escolha de um nó não existe reconsideração
→ Problema 3: A complexidade da árvore pode retirar informação quando
existem poucos dados ou dados com muito ruído (overfitting)
C4.5 (Quinlan, 1993)
→ Pode ser necessário podar a árvore... para a generalizar!
37. Árvores de Decisão
●
●
ID3 (Quinlan, 1986)
→ Problema 1: Nem todas as hipóteses são cobertas
→ Problema 2: Após a escolha de um nó não existe reconsideração
→ Problema 3: A complexidade da árvore pode retirar informação quando
existem poucos dados ou dados com muito ruído (overfitting)
C4.5 (Quinlan, 1993)
→ Pode ser necessário podar a árvore... para a generalizar!
38. Árvores de Decisão
●
Deve-se usar com problemas em que:
→ os exemplos são descritos por valores discretos
→ o output é um valor discreto
→ há valores em falta
42. Redes Neuronais Artificiais
●
●
Simulam uma rede de sinapses com retro-propagação entre os neurónios
Os tempos de aprendizagem podem ser muito mais lentos e pode ser
difícil compreender o output, ao contrário das árvores
44. Redes Neuronais Artificiais
●
●
A rede é formada por um perceptrão multi-camada
A primeira camada (input) corresponde ao número de atributos
45. Redes Neuronais Artificiais
●
●
●
A rede é formada por um perceptrão multi-camada
A primeira camada (input) corresponde ao número de atributos
A última camada (output) corresponde à classificação (ex: SIM / NÃO)
46. Redes Neuronais Artificiais
●
●
●
●
A rede é formada por um perceptrão multi-camada
A primeira camada (input) corresponde ao número de atributos
A última camada (output) corresponde à classificação (ex: SIM / NÃO)
A camada intermédia (escondida) deve ser testada para:
→ Não ter demasiados neurónios e levar a overfitting
→ Não ter excessivamente poucos e não ser possível uma decisão adequada
47. Redes Neuronais Artificiais
●
Cada neurónio tem uma função de activação dos pesos de cada sinapse para o
próximo neurónio à frente (feedforward)
48. Redes Neuronais Artificiais
●
●
Cada neurónio tem uma função de activação dos pesos de cada sinapse para o
próximo neurónio à frente (feedforward)
A retropropagação permite que sejam computados os erros de cada output
para se poder calibrar os melhores pesos para cada ligação
49. Redes Neuronais Artificiais
●
●
●
Cada neurónio tem uma função de activação dos pesos de cada sinapse para o
próximo neurónio à frente (feedforward)
A retropropagação permite que sejam computados os erros de cada output
para se poder calibrar os melhores pesos para cada ligação
Deve-se usar métodos de validação cruzada com um dataset de treino e outro
de validação para saber o número de iterações da retropropagação
50. Redes Neuronais Artificiais
●
Deve-se usar com problemas em que:
→ podem existir muitos pares atributo-valor com valores reais
→ o output pode conter vários pares atributo-valor ou valores discretos
→ é necessário uma avaliação rápida do output
→ os tempos de aprendizagem não são relevantes
→ não é importante a compreensão da rede gerada
53. Redes Bayesianas
●
Baseiam-se no Teorema de Bayes
P(
●
P(
A
B
)=
B
)∗P ( A)
A
P ( B)
Estimam a classificação mais provável
argmax v ∈V ∑h ∈H P (
j
i
vj
hi
)∗P (
hi
D
)
54. Redes Bayesianas
●
Baseiam-se no Teorema de Bayes
P(
●
P(
A
B
)=
B
)∗P ( A)
A
P ( B)
Estimam a classificação mais provável
argmax v ∈V ∑h ∈H P (
j
●
i
vj
hi
)∗P (
hi
D
)
Pode-se deduzir se Jogar Futebol = SIM, quando Temperatura <= 10, p.ex.
55. Redes Bayesianas
●
Baseiam-se no Teorema de Bayes
P(
●
P(
A
B
)=
B
)∗P ( A)
A
P ( B)
Estimam a classificação mais provável
argmax v ∈V ∑h ∈H P (
j
●
●
i
vj
hi
)∗P (
hi
D
)
Pode-se deduzir se se Jogar Futebol = SIM, quando Temperatura <= 10, p.ex.
São muitas vezes usados para validação de outros métodos
57. Algoritmos Genéticos
●
Simulam a teoria da evolução biológica, segundo a qual o elemento mais
“inteligente” é o que se adapta melhor
58. Algoritmos Genéticos
●
●
Simulam a teoria da evolução biológica, segundo a qual o elemento mais
“inteligente” é o que se adapta melhor
Utiliza conceitos das ciências naturais como cruzamento e mutação
59. Algoritmos Genéticos
●
●
●
Simulam a teoria da evolução biológica, segundo a qual o elemento mais
“inteligente” é o que se adapta melhor
Utiliza conceitos das ciências naturais como cruzamento e mutação
Os datasets representam populações com atributos genéticos
60. Algoritmos Genéticos
●
●
●
●
●
Simulam a teoria da evolução biológica, segundo a qual o elemento mais
“inteligente” é o que se adapta melhor
Utiliza conceitos das ciências naturais como cruzamento e mutação
Os datasets representam populações com atributos genéticos
Mutação
→ O novo elemento contém modificações aleatória de um atributo
Cruzamento
→ O novo elemento recebe atributos cruzados dos ascendentes
61. Algoritmos Genéticos
●
●
●
●
●
●
Simulam a teoria da evolução biológica, segundo a qual o elemento mais
“inteligente” é o que se adapta melhor
Utiliza conceitos das ciências naturais como cruzamento e mutação
Os datasets representam populações com atributos genéticos
Mutação
→ O novo elemento contém modificações aleatória de um atributo
Cruzamento
→ O novo elemento recebe atributos cruzados dos ascendentes
Problema: Como saber qual o melhor elemento para continuar a reprodução?
63. Algoritmos Genéticos
●
●
A escolha dos melhores elementos para predição deve ser feita com base
num dataset de treino
Os elementos que melhor representem a classificação de treino devem ser
escolhidos para nova iteração/reprodução
64. Algoritmos Genéticos
●
Deve-se usar com problemas em que:
→ computação pode ser paralelizada
→ a interação entre os diversos atributos, e a consequente
contribuição para o modelo, é complexa
65. Algoritmos Genéticos
●
●
●
A escolha dos melhores elementos para predição deve ser feita com base
num dataset de treino
Os elementos que melhor representem a classificação de treino devem ser
escolhidos para nova iteração/reprodução
66. Algoritmos baseados em Instâncias
●
Usam medidas para a similaridade, como a distância euclidiana
67. Algoritmos baseados em Instâncias
●
Usam medidas para a similaridade, como a distância euclidiana
d ( x i , x j )=
√
n
∑ (a r ( x i )−a r ( x j ))2
i=1
68. Algoritmos baseados em Instâncias
●
Usam medidas para a similaridade, como a distância euclidiana
d ( x i , x j )=
●
√
n
∑ (a r ( x i )−a r ( x j ))2
i=1
Podem usar pesos para indicar o valor dos atributos
69. Algoritmos baseados em Instâncias
●
●
●
Úteis quando o output é complexo demais para ser modelado, uma vez
que procuram apenas a resolução “mais próxima”
Podem ser lentos porque não só avaliam em relação a todos os exemplos de treino
como avaliam todos os atributos
Podem ter maus resultados quando apenas alguns atributos são relevantes
70. Text Mining
●
●
O texto deve ser uniformizado para que a mesma palavra não seja repetida
→ exemplo: construção vs construindo
Deve ser feito um dicionário de termos relevantes a considerar como atributos
→ retirar todos os termos irrelevantes
71. Text Mining
●
●
●
●
O texto deve ser uniformizado para que a mesma palavra não seja repetida
→ exemplo: construção vs construindo
Deve ser feito um dicionário de termos relevantes a considerar como atributos
→ retirar todos os termos irrelevantes
Transformar o texto em frequências (0 ou 1 ou mais) das palavras do dicionário
Aplicar os mecanismos de Data Mining :)
73. Bibliografia Relevante
●
●
●
●
●
Artificial Intelligence: A Modern Approach (Stuart Russell and Peter Norvig, 1995)
Machine Learning (Tom Mitchell, 1997)
Data Mining: Practical Machine Learning Tools and Techniques (Ian Witten
and Eibe Frank, 2011)
The Data Warehouse Lifecycle Toolkit (Ralph Kimball, 2008)
Text Mining: Predictive Methods for Analyzing Unstructured Information
(Sholom M. Weiss, 2004)