Buscar

teorico III

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Ciência de Dados
Material Teórico
Responsável pelo Conteúdo:
Prof.ª Esp. Lucia Contente Mós
Revisão Textual:
Prof.ª Me. Luciene Oliveira da Costa Granadeiro
Principais Algoritmos
• Aprendizado de Máquina – Analytics;
• Tipos de Aprendizado.
• Defi nir e entender o que é o aprendizado de máquina – analytics;
• Entender a relação de mineração de dados com machine learning;
• Conhecer os tipos de conjuntos de dados;
• Compreender os tipos de aprendizado;
• Saber e identifi car o aprendizado supervisionado;
• Conhecer as funções dos algoritmos de aprendizado supervisionado: árvores de decisão, 
Naive Bayes, K-NN;
• Saber e identifi car o aprendizado não supervisionado;
• Conhecer as funções dos algoritmos de aprendizado não supervisionado:
algoritmos de agrupamento;
• Compreender o aprendizado por reforço.
OBJETIVOS DE APRENDIZADO
Principais Algoritmos
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas: 
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos 
e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão sua 
interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e de 
aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contato com seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
UNIDADE Principais Algoritmos
Aprendizado de Máquina – Analytics
É uma subdivisão da inteligência artificial, também conhecida como “machine 
learning”. Significa criar programas que aprendam um determinado comportamento 
ou padrão automaticamente a partir de exemplos ou observações. Possui uma 
relação com o aprendizado humano. Por exemplo, os seres humanos (e outros 
animais) são capazes de generalizar a partir de exemplos.
Exemplo de aprendizado humano através de associação: o cachorro tem quatro 
patas, portanto, é um animal quadrúpede. Então qualquer animal que tenha quatro 
patas também será quadrúpede.
Definição de Aprendizado
Segundo Simon (1996) pg 37, “Aprendizado é qualquer processo no qual um 
sistema melhora seu desempenho através da experiência.”
Segundo Mitchell (1997) pg 104, “A tarefa de aprendizado, significa: “Melhorar 
na tarefa T, com respeito à métrica de desempenho D, baseado na experiência E”.
Exemplos de Aprendizados:
Tabela 1
T: Jogar Damas;
D: Percentagem de jogos ganhos contra um adversário arbitrário;
E: Jogar jogos contra ele próprio.
T: Reconhecer palavras escritas à mão;
D: Percentagem de palavras corretamente reconhecidas;
E: Base de dados de imagens com as palavras correspondentes.
T: Dirigir em estradas usando sensores de visão;
D: Distância média dirigida antes de um erro;
E: Sequência de imagens e comandos de direção gravados de uma pessoa dirigindo.
T: Categoriza mensagens de e-mail como spam ou legítimas;
D: Percentagem de mensagens de e-mail corretamente classificadas;
E: Bases de dados de mensagens, algumas classificadas, por humanos.
Relação de Mineração de Dados com Machine Learning
Como vimos, a mineração de dados é o processo de extração automática de 
conhecimento a partir de grandes bases de dados.
8
9
Os algoritmos de aprendizado automático podem ser vistos como algoritmos que 
extraem um padrão de comportamento, a partir de dados (exemplos).
Portanto, podem ser utilizados como algoritmos de mineração de dados. Po-
rém, algoritmos de aprendizado nem sempre utilizam bases de dados, mas podem 
aprender diretamente a partir da interação com o ambiente ou com um simulador.
Tanto a mineração de dados quanto o aprendizado de máquinas utilizam-se de 
muitos métodos da área de estatística.
Então, quando essas duas áreas juntam-se, conseguimos atingir os objetivos de 
aprender e gerar hipóteses automaticamente a partir de grandes volumes de dados.
Isso significa que é possível ensinar sistemas a executar tarefas com a mesma 
precisão que a nossa, ou até superior. Para tal, são usados dados para treinar o al-
goritmo. O objetivo é que, através desse treinamento, o algoritmo aprenda e enten-
da o modelo, a lógica e o padrão desse conjunto de dados, para que dessa forma, 
o algoritmo possa conseguir prever ou classificar novos valores.
Tipos de Conjuntos de Dados para Aprendizagem
Existem dois tipos de conjuntos de dados para aprendizagem do algoritmo: trei-
no e teste.
É feita uma divisão no conjunto de dados, uma parte dos dados para treino e 
outra parte para teste, por exemplo, 70% para treino e 30% para teste, ou, ainda, 
90% para treinamento e 10% para teste. O importante é que essa divisão atenda 
às suas necessidades e que o algoritmo se torne assertivo.
Figura 1 – Exemplo de Dados de Treino e de Teste
Fonte: Tanaka, 2018
Observe que, na figura 1, temos os dados de treino e os dados do resultado de 
treino e também os dados de teste e do resultado do teste.
No item 8, utilizando 70% dos dados de treino e dados do resultado do treino, foi 
realizado o treinamento do algoritmo; com os outros 30% dos dados que sobraram, 
temos os dados de teste e os dados dos resultados de teste, como vemos no item 9.
9
UNIDADE Principais Algoritmos
Verifique no item 10, que a previsão do resultado é: 1,0,0 e o resultado que se 
esperava era: 1,1,1. Ou seja, nosso algoritmo só teve 1 acerto; isso significa que o 
treinamento com 70% dos dados foi insuficiente; é necessário destacar mais dados 
para realizar o treinamento.
Vamos supor uma nova separação dos conjuntos de dados. Agora, por exemplo, 
vamos colocar 75% dos dados para treino e os outros 25% dos dados para teste. 
Figura 2 – Exemplo de Resultados dos Dados de Treino e de Teste
Fonte: Tanaka, 2018
Perceba que, agora, temos 2 acertos entre o resultado previsto e o resultado dos 
dados de teste, portanto, o algoritmo tem alta assertividade.
Tipos de Aprendizado
Existem 3 tipos de aprendizado, são eles: aprendizado supervisionado, aprendi-
zado não supervisionado e aprendizado por esforço.
k-means
Métodos Hierárquicos
SOM
k-NN
Adaline
Multi-Layer Perceptron
k-NN
Árvores de Decisão
Naive Bayes
Perceptron/ Adaline
Multi-Layer Perceptron
Classi�cação Regressão
Supervisionado Não-Supervisionado
AM
Figura 3 – Tipos de Aprendizado
Fonte: CANUTO, 2017
Aprendizado Supervisionado
Como o próprio nome sugere, existem exemplos da saída esperada para deter-
minados casos da base de treinamento, onde a rede, pela comparação entre os re-
sultados obtidos e esperados, pode adaptar os pesos das conexões para minimizar 
o erro, obtendo um aprendizado por exemplos. 
10
11
O algoritmo de aprendizado (indutor) recebe um conjunto de exemplos de treina-
mento para os quais os rótulos da classe associadasão conhecidos. Cada exemplo 
(instância ou padrão) é descrito por um vetor de valores (atributos) e pelo rótulo da 
classe associada. O objetivo do indutor é construir um classificador que possa deter-
minar corretamente a classe de novos exemplos ainda não rotulados.
Exemplo de Aprendizado Supervisionado
Vamos pensar em um programa que usa aprendizado de máquina para identifi-
car fotos de cavalos. Para isso, teremos dois tipos de dados de entrada para treinar 
o algoritmo:
• Imagem: várias fotos de cavalos e outras não;
• Dado Booleano (true/false): indicando se a figura é ou não de um cavalo.
O treinamento acontece no momento em que o algoritmo analisa a imagem junto 
com a resposta, ou seja, o algoritmo faz a seguinte pergunta: essa figura é a de um 
cavalo? O algoritmo vai repetir essa pergunta para milhões e milhões de imagens 
diferentes. Até que chega a um ponto em que o algoritmo aprende quais são as carac-
terísticas que uma foto precisa apresentar para ser considerada a figura de um cavalo.
Tabela 2
Base de Dados de Entrada para treinamento do Algoritmo Algoritmo Gera Modelo
Figura 4
Fonte: Getty Images
Modelo que aprendeu as características 
de Imagens de Cavalo.
Nova Entrada Algoritmo: O que é essa Imagem?
Figura 5
Fonte: Getty Images
O algoritmo consegue identificar 
que esse novo dado trata-se de uma 
imagem de cavalo.
Figura 6
Fonte: Getty Images
O algoritmo consegue identificar
que esse novo dado não é uma
imagem de cavalo.
11
UNIDADE Principais Algoritmos
Tipos de Algoritmos para Aprendizado Supervisionado
Esses algoritmos podem ser de classificação ou regressão, vai depender do tipo 
de resultado que é gerado pelo algoritmo.
O exemplo anterior é um exemplo de algoritmo de classificação. Estamos classi-
ficando uma entrada entre dois tipos possíveis: cavalo ou não cavalo.
Quando o resultado é numérico, trata-se de um algoritmo de regressão. Por 
exemplo, um programa que calcula o valor que um barco deveria ter com base em 
características como número de pés, tamanho e ano de fabricação. Com base em 
exemplos de barcos similares, o algoritmo aprende a precificar novos barcos.
Algoritmos de Classificação
Esse tipo de algoritmo pode atribuir um objeto/evento a uma categoria, perten-
cente a um conjunto finito de categorias. Classificar um objeto significa atribuir a 
ele um rótulo, chamado classe, de acordo com a categoria à qual ele pertence. Para 
que isso seja possível, um algoritmo de classificação é usado na construção de um 
modelo de classificação, também chamado de classificador, o qual é construído com 
base em um conjunto de treinamento com dados rotulados.
É uma das técnicas mais utilizadas na mineração – por exemplo, são comuns as 
tarefas de classificação de clientes em baixo, médio ou alto risco de empréstimo bancário.
Classificar um objeto (registro, amostra, exemplo) é determinar com que grupo de 
entidades, já classificadas anteriormente, esse objeto apresenta mais semelhanças.
Exemplos de Tarefas de Classificação
• Predizer se um tumor é benigno ou maligno;
• Classificar transações de cartões de crédito, como legítimas ou fraudulentas;
• Classificar estruturas secundárias de proteínas, como alpha-helix, beta-sheet, 
or random coil;
• Categorizar textos, como da área de finanças, previsão de tempo, esportes, 
cultura etc.
Exemplos de Estudos de Caso Reais do Uso de Algoritmo de Classificação
• Upgrade de pacotes de TV por assinatura (Net);
• Cancelamento de assinaturas (RBS);
• Análise para concessão de empréstimos bancários (instituições financeiras);
• Softwares de correio eletrônico como Outlook, Gmail, Firefox, entre outros, 
usam classificadores para filtrar (marcar) e-mails que seriam spam ou não spam.
12
13
Algoritmo: Árvores de Decisão
Esse algoritmo é de classificação e é chamado de árvore, pois o nó raiz e os nós 
intermediários das árvores representam testes sobre um atributo, os ramos repre-
sentam os resultados desses testes e os nós folhas, os rótulos de classe. Ele utiliza 
um gráfico ou modelo de decisões e suas possíveis consequências para a tomada 
de decisão, em que uma árvore de decisão é o número mínimo de perguntas que 
devem ser respondidas para avaliar a probabilidade de tomar uma decisão correta. 
Esse método permite a análise de um problema de uma forma estruturada para 
alcançar uma conclusão lógica.
Classe A Classe B
Atributo
NãoSim
Figura 7 – Representação gráfi ca de um modelo baseado em árvores
Fonte: CASTRO, 2016
S
S
S
S
S
N
N
NN
N
a < b
a < c
b < c
a < c
a < b
b < c
b < a
b < a < cc < a < b
a < b < c a < c < b b < c < a c < b < a
b < a c < aa < b a < c
Figura 8 – Árvore de Decisão
Fonte: Adaptado de LALAMA, 2014
13
UNIDADE Principais Algoritmos
Figura 9 – Transformando dados de treinamento em árvore de decisão
Fonte: LALAMA, 2014
Na Figura 9, o objetivo é que o algoritmo aprenda a identificar se a pessoa é um 
bom ou mau pagador.
Exemplo de Aplicação da Árvore de Decisão para uma nova entrada de dados
Figura 10 – Aplicação da Árvore de Decisão para uma nova entrada de dados
Fonte: LALAMA, 2014
O algoritmo, quando percorre a árvore de decisão, atribui à classe (Mau Pagador) 
o valor NÃO.
Algoritmo: Naïve Bayes
Também é um algoritmo de classificação, usado para predizer a probabilidade 
de pertinência de um objeto à determinada classe. É uma das maneiras de lidar 
com tarefas preditivas em extração do conhecimento de dados, e é útil quando as 
informações disponíveis são incompletas ou imprecisas. Apresentam alta precisão 
e velocidade de processamento quando aplicados a grandes bases de dados.
14
15
Exemplos de Usos do Algoritmo Naïve Bayes
• Para marcar um e-mail como spam ou não spam;
• Classificar um artigo de notícias sobre tecnologia, política ou esportes;
• Verificar um pedaço de texto expressando emoções positivas ou negativas;
• Usado para software de reconhecimento facial.
Teorema de Bayes
Classificadores bayesianos são classificadores estatísticos e baseados no Teore-
ma de Bayes (Métodos Probabilísticos Bayesianos): a probabilidade de um evento 
A dado um evento B não depende apenas da relação entre A e B, mas também da 
probabilidade de observar A independentemente de observar B.
Probabilidade de ocorrer o evento A, dado que foi observado o evento B: P(A|B), 
onde A representa a classe e B o valor observado dos atributos para um exemplo 
de teste.
Exemplo: 
• P(A) = probabilidade de ocorrência de uma determinada doença; 
• P(B) = probabilidade de resultado num exame de raio X; 
• Sendo a variável A não observável e diante da evidência do resultado do exame 
de raio X, podemos inferir o valor mais provável de A estimando.
Aprendizagem Bayesiana
Tabela 3
Doença
Presente 8%
Ausente 92%
Quantitativa (a probabilidade, a princípio, de observar a doença):
• P (Doença = Presente) = 0,08;
• P (Doença = Ausente) = 0,92.
Tabela 4
Doença
Teste Presente Ausente
Positivo 75% 4%
Negativo 25% 96%
Probabilidades condicionais (a partir de experiências passadas na utilização do teste):
• P (Teste = Positivo |Doença = Presente) = 0,75;
• P(Teste = Negativo |Doença = Ausente) = 0,96.
15
UNIDADE Principais Algoritmos
Qual é o poder preditivo do teste com respeito à doença? Se A e B são eventos 
disjuntos, então P A B P A P B( ) ( ) ( )� � �
Lei da probabilidade total: P A P A B X P B
i
i i( ) ( | ) ( )�
�
�
1
�
Lei da probabilidade condicional:
P A B P A B
P B
( | )
( )
( )
�
�
Dedução:
P A B P B A
P A B P B P A B P B A P A
p A B P B A P A
( ) ( )
( | ) ( ) ( ) ( | ) ( )
( | )
( | ) ( )
� � �
� � �
�
PP B( )
Já que P(A) = P(A|B) X P(B), então:
• P (Teste = Positivo) = P(Teste = Positivo |Doença = Presente) X;
• P (Doença = Presente) + P(Teste = Positivo |Doença = Ausente) X;
• P (Doença = Ausente) = 0,75 X 0,08 + 0,04 X 0,92 = 0,0968.
O problema de Inferência e o Teorema de Bayes: a sua aplicabilidade é reduzida 
devido ao grande número de exemplos necessários para calcular, de forma viável.
Exemplo do Processode Classificação de um Novo 
Objeto Utilizando o Algoritmo Naïve Bayes
Para esse exemplo, será utilizada a base de Carros.
Tabela 5
Compra Manutenção Portas Passageiros Bagageiro Segurança Aceitabilidade
1 1 2 6 1 1 1
1 4 3 4 1 1 1
1 3 4 6 3 2 2
1 4 5 6 2 2 2
3 4 3 4 1 3 3
4 3 2 4 1 3 3
3 3 2 4 3 3 4
3 4 4 6 3 3 4
Essa base já passou pelo pré-processamento e possui 1728 registros de carros 
em seis atributos que visam determinar a aceitabilidade de cada veículo. Os atribu-
tos são: 
• Preço de compra: {muito alto = 1, alto = 2, médio = 3, baixo = 4}; 
• Preço de manutenção: {muito alto = 1, alto = 2, médio = 3, baixo = 4};
• Número de portas: {2, 3, 4, 5, mais = 5};
16
17
• Passageiros: {2, 4, mais = 6};
• Tamanho do bagageiro: {pequeno = 1, médio = 2, grande = 3}; 
• Segurança: {baixa = 1, média = 2, alta = 3};
• Aceitabilidade: {inaceitável = 1, aceitável = 2, bom = 3, ótimo = 4}. 
Considere as probabilidades para cada classe, sendo:
• P(inaceitável) = 0,700; 
• P(aceitável) = 0,222;
• P(bom) = 0,040 e 
• P(ótimo) = 0,038. 
O objetivo é classificar o objeto x descrito pelos seguintes atributos: compra = 
médio; manutenção = médio; portas = 4; passageiros = 4; bagageiro = médio; e 
segurança = média.
Partindo dos dados de entrada, o algoritmo calcula a probabilidade de o objeto 
x pertencer a cada classe: 
• P(x|inaceitável) × P(inaceitável) = (0,221 × 0,221 × 0,241 × 0,258 × 0,324 × 
0,295) × 0,700 = 2,04 × 10-4
• P(x|aceitável) × P(aceitável) = (0,299 × 0,229 × 0,266 × 0,516 × 0,352 × 
0,469) × 0,222 = = 4,50 × 10-4
• P(x|bom) × P(bom) = (0,333 × 0,333 × 0,261 × 0,522 × 0,348 × 0,565) × 
0,040 = 1,19 × 10-4
• P(x|ótimo) × P(ótimo) = (0,400 × 0,400 × 0,308 × 0,462 × 0,385 × 0,000) 
× 0,038 = 0,000 
Para determinar a classe do objeto x, basta encontrar a probabilidade máxima 
dada pelo algoritmo, que é 4,50 × para a classe aceitável.
A tabela abaixo mostra as probabilidades calculadas pelo algoritmo, de um obje-
to pertencer a cada classe.
Tabela 6
Atributo Valor
Classe
Inaceitável Aceitável Bom Ótimo
Compra muito alto 0,298 0,188 0,000 0,000
Compra alto 0,268 0,281 0,000 0,000
Compra médio 0,221 0,299 0,333 0,400
Compra baixo 0,213 0,232 0,667 0,600
Manutenção muito alto 0,298 0,188 0,000 0,000
Manutenção alto 0,260 0,273 0,000 0,200
Manutenção médio 0,221 0,299 0,333 0,400
Manutenção baixo 0,221 0,240 0,667 0,400
17
UNIDADE Principais Algoritmos
Atributo Valor
Classe
Inaceitável Aceitável Bom Ótimo
Portas 2 0,269 0,211 0,217 0,154
Portas 3 0,248 0,258 0,261 0,231
Portas 4 0,241 0,266 0,261 0,308
Portas 5 ou mais 0,241 0,266 0,261 0,308
Passageiros 2 0,476 0,000 0,000 0,000
Passageiros 4 0,258 0,516 0,522 0,462
Passageiros mais 0,266 0,484 0,478 0,538
Bagageiro pequeno 0,372 0,273 0,304 0,000
Bagageiro médio 0,324 0,352 0,348 0,385
Bagageiro grande 0,304 0,375 0,348 0,615
Segurança baixa 0,476 0,000 0,000 0,000
Segurança média 0,295 0,469 0,565 0,000
Segurança alta 0,229 0,531 0,435 1,00
Algoritmo k-Vizinhos Mais Próximos – k-Nearest Neighboors (k-NN)
Esse é um algoritmo de classificação e regressão. Todas as instâncias corres-
pondem a pontos em um espaço n-dimensional. A vizinhança definida por uma 
função de distância, ou por uma função de similaridade, ou seja, quanto menor a 
distância, maior é similaridade. A definição da classe de um novo exemplo ocorre 
a partir dos vizinhos mais próximos.
Os dados são extraídos de um banco de dados de m linhas classificadas em 
(a1,...,an,C).
Uma linha X = (x1,...,xn) não classificada.
Os valores dos atributos são normalizados. Sendo que o Valor normalizado = 
(v.real - MinA)/(MaxA – MinA).
Calcula-se a distância de X a cada uma das linhas do banco de dados. Analisa-se 
um as k linhas do banco de dados mais próximas de X. A classe de X é a classe que 
aparece com mais frequência entre as k linhas mais próximas de X.
Figura 11 – Diferentes Valores de k
Fonte: Monteiro, 2013
18
19
Observe na figura 4, que para a seleção de vizinhos varia de acordo com a 
quantidade de k. Além disso, verifique que as linhas selecionadas estão sempre 
próximas/vizinhas de k.
Entretanto, alguns questionamentos podem surgir:
• Como calcular a distância entre duas tuplas?
 » Se os atributos forem contínuos: calcule a distância Euclidiana
 » Fórmula da distância Euclidiana: d(x,y) = √ Σni =1 (xi – yi)2 
 » Se os atributos forem categóricos:
 » Se xi = yi então xi – yi = 0
 » Se xi e yi são distintos: xi – yi = 1
• Como lidar com valores incompletos (ausentes) ao calcular a distância entre 
duas tuplas X e Y ?
 » Se xi e yi são ausentes: xi – yi = 1
 » Se xi é ausente e yi não: xi – yi = max { |1 – yi|, |0 – yi| }
 » Como determinar o melhor valor de K (=número de vizinhos) ?
 » É obtido através da repetição dos experimentos.
Aprendizado Não Supervisionado
Ao contrário do supervisionado, esse tipo de aprendizado não possui exemplos 
para comparar seu erro, sendo baseado na auto-organização. O indutor analisa os 
exemplos fornecidos e tenta determinar se alguns deles podem ser agrupados de 
alguma maneira, formando agrupamentos ou clusters. Após a determinação dos 
agrupamentos, em geral, é necessário uma análise para determinar o que cada 
agrupamento significa no contexto problema sendo analisado.
A aprendizagem não supervisionada consegue trabalhar com dados não rotula-
dos, ou seja, não informamos ao algoritmo o que é aquele dado de entrada.
Exemplo de Aprendizado Não Supervisionado
Um supermercado que deseja classificar seus clientes em categorias. O algorit-
mo vai aprender a separar os dados em grupos semelhantes, sem dizer o que são 
esses grupos. Um possível resultado é um grupo de clientes que compram produtos 
frescos, e outro com clientes que compram produtos industrializados. Mas em ne-
nhum momento foi ensinado ao algoritmo o que é um produto fresco ou o que é 
um produto industrializado.
Se pensarmos em um exemplo de classificação de imagens, por exemplo, temos 
um modelo que aprendeu a classificar imagens entre dois grupos distintos. Ao rece-
ber uma nova imagem, com base em suas características, ele identifica a qual grupo 
essa imagem pertence, sem saber e nem ter aprendido o que é aquele grupo.
19
UNIDADE Principais Algoritmos
Tabela 7
Dados do Grupo de Imagens 1 Dados do Grupo de Imagens 2
Figura 12
Fonte: Getty Images
Figura 13
Fonte: Getty Images
Figura 14 – Nova Entrada de Dado
Fonte: Getty Images
Algoritmo de Aprendizagem Não Su-
pervisionada, não sabe o que é pessoa e 
nem casa, mas por identificar as mesmas 
características consegue colocar o novo 
dado no grupo correto.
Algoritmos de Agrupamento 
Esses algoritmos são necessários porque coletar e rotular bases de dados pode 
ser uma tarefa muito cara. Por exemplo, gravar voz é uma tarefa barata, no entanto, 
rotular todo o material gravado é uma atividade muito cara. Em muitos casos, não 
se tem conhecimento das classes envolvidas.
Clustering
Cada objeto começa como seu próprio grupo (cluster), os exemplos são colo-
cados em grupos, que via de regra mostram alguma característica existente no 
mundo real que gerou os exemplos, fazendo com que alguns exemplos sejam mais 
similares entre si do que aos restantes. A cada processamento do algoritmo, os dois 
grupos (ou objetos) mais próximos (similares) são combinados em um novo grupo 
agregado. O número de grupos é reduzido em uma unidade a cada rodada do algo-
ritmo. Ao final, todos os elementos são reunidos em um grande agregado.
20
21
Exemplo de Aplicação do Algoritmo de Clustering
Tabela 8
Dados de Entrada
Algoritmo de Clustering 
(formar grupos)
Analisa características similares para 
formar os grupos
Na primeira rodada, identifi ca 2 grupos com mesmas características
Com bico
Sem bico
Na segunda rodada, identifi ca outros 2 grupos
Água
Terra
21
UNIDADE Principais Algoritmos
Dados de Entrada Algoritmo de Clustering (formar grupos)
No próximo processamento...
Ovíparo
Mamífero
Para formar os grupos, o algoritmo de agrupamentotem por objetivo formar 
clusters homogêneos de forma que maximize a similaridade de objetos dentro de 
um mesmo cluster e,™ minimize a similaridade de objetos entre clusters distintos.
Algoritmo K-médias (K-means)
Também é um algoritmo de agrupamento, portanto, seu objetivo é identificar compo-
nentes com as mesmas características e classificá-los no seu cluster/grupo correto. Consis-
te em fixar k, de maneira aleatória, um para cada grupo (clusters), associar cada indivíduo 
ao seu K-centro mais próximo e, por fim, recalcular os centros com base nos indivíduos 
classificados. O resultado é apenas a pertinência final de cada padrão aos aglomerados 
(clusters), sabendo que o número de aglomerados permitido (k) deve ser definido.
Etapas do Algoritmo K-Médias
• 1ª Etapa: Os primeiros k centros dos aglomerados são escolhidos aleatoriamente;
• 2ª Etapa: Atribuir a cada objeto do grupo o centroide mais próximo;
• 3ª Etapa: Compute um novo centro para cada grupo (média dos valores de 
todos os objetos – centroide);
• 4ª Etapa: Repetir os passos 2 e 3 até que os centroides não sejam modificados.
Exemplo da aplicação do Algoritmo K-Médias
X2
X1
Inicialização com A, F e E
D
G
C
B
A
E
F
Figura 15
22
23
Para os elementos A, B, C, D, E, F e G, é necessário identificar seus grupos 
(clusters), supondo que a condição inicial seja com os K-centros A, F e E.
X2
X1
Grupo 3
Grupo 2
Grupo 1
A
B
C D E
GF
Figura 16
O Algoritmo apresenta os grupos, representados no gráfico acima:
• O Grupo 1 com os elementos: {A, C, B};
• O Grupo 2 com os elementos: {D, E}; 
• O Grupo 3 com os elementos:{F, G}. 
Já quando mudamos a condição inicial, o resultado é alterado também:
X2
X1
Inicialização com A, B e C
A
B
C D E
GF
Figura 17
Perceba que, agora, os K-centros são A,B e C:
23
UNIDADE Principais Algoritmos
Observe o resultado:
X2
X1
Inicialização com A, B e C
A
B
C D E
GF
Figura 18
Temos novamente 3 grupos, mas agora com o seguintes elementos:
• Grupo 1:{A};
• Grupo 2:{C, B};
• Grupo 3: {D, E, F, G}.
Aprendizagem por Reforço
A aprendizagem por reforço é uma aplicação interessante para sistemas que não 
podem realizar aprendizado supervisionado, por não se ter uma fonte externa de 
conhecimento para informar os objetivos e as ações corretas, ou quando o domínio 
de aplicação não possibilita a realização de aprendizado não supervisionado.
Essa abordagem de aprendizagem de máquinas tenta aprender qual é a melhor 
ação a ser tomada, dependendo das circunstâncias na qual essa ação será execu-
tada, ou seja, é uma aprendizagem com base na interação com o ambiente. Não 
se diz qual ação o classificador deve tomar, o classificador tenta diferentes ações 
e escolhe aquela que oferece um melhor retorno, utilizando a técnica de tentativa 
e erro. Nessa aprendizagem, o algoritmo indica o caminho correto, mas não diz 
exatamente a resposta correta. 
Exemplo desse tipo de aprendizagem é como uma criança costuma realizar 
ações aleatórias e, de acordo com as respostas de seus pais (elogio ou reclamação), 
aprende quais daquelas ações são boas e quais são ruins.
A aprendizagem por reforço é utilizada quando não se consegue obter exemplos 
de comportamento corretos para as situações que o agente enfrenta ou atuação em 
ambiente desconhecido.
24
25
Agente Aprendiz
Estado Interno
Percepções
(s)
Reforço (+/-)
R (s,a)
Ação
(a)
Ambiente
Figura 19 – Componentes do Aprendizado por Reforço
Conforme podemos ver na figura acima, o algoritmo do aprendizado por re-
forço recebe as percepções do ambiente, escolhe uma ação, aplica essa ação no 
ambiente e recebe uma resposta. Se for uma reposta positiva, reforça essa ação 
novamente no ambiente, caso contrário, troca a ação. O reforço deve indicar o 
objetivo a ser alcançado. 
Por exemplo, em um jogo de damas, o reforço pode ser dado ao agente apenas 
ao final do jogo, sendo positivo quando o agente ganhar ou negativo quando perde 
ou empata. Com isso, o reforço está mostrando ao agente que seu objetivo é ga-
nhar o jogo, e não perder ou empatar.
7 0
a1 a2 ana3
S1
S2
S3
...
...
...
Sn
2-3
Estado
Atual
Ação Selecionada
Maior valor de 
Q (S2, a)
Figura 20 – Ação Escolhida
Verifique que, para cada estado, são realizadas várias ações. Note que, quando 
o resultado é negativo, troca-se a ação, ou seja, não é feito o reforço, já, quando o 
retorno é positivo, a ação é reforçada. Dessa forma, a ação selecionada é aquela 
que retorna o maior valor.
25
UNIDADE Principais Algoritmos
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Sites
Machine Learning
http://bit.ly/3222bbH
Tipos de Aprendizagem de Máquina
http://bit.ly/327tf9q
Classificação: conceitos básicos e árvores de decisão
http://bit.ly/323Wt98
 Livros
Banco de Dados: projeto e implementação
MACHADO, F. N. R. Banco de dados: projeto e implementação. São Paulo: Érica, 
2004. 398 p.
As Ciências do Artificial
SIMON, H. A. As Ciências do Artificial. São Paulo: Almedina, 1996. 351 p.
Machine Learning
MITCHELL, T. Machine Learning. Estados Unidos: MCGRAW-HILL Professio-
nal,1997. 352p.
Projeto de Banco de Dados: uma visão prática
MACHADO, F. N. R.; ABREU, M. P. de. Projeto de banco de dados: uma visão 
prática. 15 ed. São Paulo: Érica, 2007. 300 p.
OCA Oracle Database 11G – Administração I
WATSON, J. OCA ORACLE DATABASE 11G – Administração I. São Paulo: Bookman 
Companhia, 2009.
OCP Oracle Database 11G – Administração II
BRYLA, B. OCP ORACLE DATABASE 11G – Administração II. São Paulo: Bookman 
Companhia, 2009.
OCA Oracle Database 11G – Fundamentos I ao SQL
RAMKLASS, R.; WATSON, J. OCA ORACLE DATABASE 11G – Fundamentos I ao 
SQL. Rio de Janeiro: McGraw Hill Professional, 2008. 581 p.
Projetando e Administrando Banco de Dados SQL Server 2000 .net: Como Servidor Enterprise
PATTON, R.; OGLE, J. Projetando e Administrando Banco de Dados SQL Server 
2000.net: Como Servidor Enterprise. Tradução de Andréa Barbosa Bento; Cláudia 
Reali; Lineu Carneiro de Castro. Rio de Janeiro: Alta Books, 2002. 792 p.
26
27
Referências
BECKER, J. L. Estatística básica: transformando dados em informação. Porto 
Alegre: Bookman, 2015.
CASTRO, L. N. de. Introdução à mineração de dados: conceitos básicos, algo-
ritmos e aplicações. São Paulo: Saraiva, 2016.
DATE, C. J. Introdução a sistemas de bancos de dados. Tradução [8th. ed. 
Americana] de Daniel Vieira. Revisão técnica Sérgio Lifschitz. Rio de Janeiro: El-
sevier, 2003. 865 p.
ELMASRI, R.; NAVATHE, S. B. Sistemas de banco de dados. 6.ed. São Paulo: 
Pearson, 2011.
_______. Sistemas de Banco de Dados. Tradução de Marília Guimarães Pinheiro 
et al. Revisão técnica Luis Ricardo de Figueiredo. 4. ed. São Paulo: Pearson Addi-
son Wesley, 2005. 724 p.
GILLENSON, M. L. Fundamentos de sistemas de gerência de banco de dados. 
Tradução de Acauan Fernandes; Elvira Maria Antunes Uchoa. Rio de Janeiro: LTC, 
2006. 304 p.
KWECKO, V. et al. Ciência de dados aplicada na análise de processos cognitivos 
em grupos sociais: um estudo de caso. In: Brazilian Symposium on Computers 
in Education (Simpósio Brasileiro de Informática na Educação-SBIE). 2018. 
p. 1543.
SILBERSCHATZ, A., KORTH, H. F.; SUDARSHAN, S. Sistema de Banco de 
Dados. Tradução de Daniel Vieira. Revisão técnica Luís Ricardo de Figueiredo; 
Caetano Traina Junior. 3. ed. São Paulo: Pearson Makron Books, 2007. 778 p.
27

Continue navegando