Sistemas de Aprendizado de Máquina
Sistemas de Aprendizado de Máquina
Sistemas de Aprendizado de Máquina
PROPÓSITO
Compreender o conceito de aprendizado de máquina, identificando os seus métodos – tais como
supervisionado, não supervisionado, semissupervisionado e aprendizado por reforço – e
discutindo as categorias de problemas de aprendizado de máquina em função da saída.
OBJETIVOS
MÓDULO 1
MÓDULO 2
MÓDULO 3
Para entender melhor o que é aprendizado de máquina, vamos identificar seus métodos e suas
categorias de problemas.
MÓDULO 1
A inteligência artificial (IA) é uma área recente da ciência da computação criada com o propósito
de desenvolver sistemas que simulem a capacidade humana na percepção de um problema,
identificando seus componentes, resolvendo problemas, propondo soluções e, até mesmo,
tomando decisões.
SAIBA MAIS
As ideias relacionadas com inteligência artificial são bem anteriores ao surgimento da tecnologia
que tornou isso possível. Na antiguidade, a ideia de uma inteligência não humana que pudesse
executar atividades por si própria já era idealizada. Sendo assim, podemos afirmar que a origem
da inteligência artificial pode ter vindo dos filósofos gregos, como Aristóteles.
1943
Warren McCulloch e Walter Pitts apresentaram o artigo A Logical Calculus of Ideas Immanent in
Nervous Activity, que tratava pela primeira vez de redes neurais, isto é, estruturas de raciocínio
artificiais em forma de modelo matemático que imitam o nosso sistema nervoso.
1950
Outro artigo importante da época é o de Claude Shannon sobre como programar uma máquina
para jogar xadrez com cálculos de posição simples, porém eficientes.
1956
Na chamada Conferência de Dartmouth, foi realizado o encontro que reuniu Nathan Rochester,
da IBM; Claude Shannon, autor do artigo sobre o jogo de xadrez; Marvin, do SNARC e John
McCarthy, professor da Universidade Stanford, que, nessa conferência, começou a usar o termo
inteligência artificial.
McCarthy resolveu dar o nome de inteligência artificial para esses sistemas de imaginação
humana que usam a ciência da computação.
Nos dois quadrantes superiores, encontramos os sistemas que pensam como seres humanos e
os que pensam racionalmente, relacionados com os processos de pensamento e raciocínio. Já
na parte inferior, estão os sistemas que agem como seres humanos e aqueles que agem
racionalmente, referentes ao comportamento humano.
Um exemplo são as redes neurais artificiais. Esses sistemas automatizam atividades como
tomada de decisões, resolução de problemas e aprendizagem. Para isso, é necessário saber
como os humanos pensam. Nesse caso, a modelagem cognitiva é trabalhada com modelos
computacionais de inteligência artificial e técnicas experimentais da Psicologia para construir
teorias precisas e verificáveis a respeito dos processos de funcionamento da mente humana.
Trabalham com o aprendizado por observação, realizando investigações experimentais de seres
humanos ou animais.
São os sistemas inteligentes. Eles tentam simular o pensamento lógico racional dos humanos,
isto é, são capazes de fazer as máquinas entender e raciocinar.
Um exemplo são os robôs, máquinas que executam tarefas de um jeito semelhante ao das
pessoas. O Teste de Turing, criado em 1950 por Alan Turing, fez com que 30% dos humanos
consultados acreditassem que a máquina que participava do teste, ao se fazer passar por
humano, era, de fato, um ser humano.
São os agentes inteligentes. Idealmente, aqueles que tentam imitar de forma racional o
comportamento humano. Agir racionalmente significa agir de modo a alcançar seus objetivos,
dadas as suas crenças. Nesse caso, a IA é vista como o estudo e a construção de agentes
racionais.
A inteligência artificial abrange uma enorme variedade de áreas, desde as de uso geral, como
aprendizado e percepção, até aquelas que envolvem tarefas específicas, como jogos e
diagnóstico de doenças.
MACHINE LEARNING
Arthur Lee Samuel, cientista da computação estadunidense e um dos pioneiros no campo dos
jogos de computador com aprendizado de máquina e inteligência artificial, publicou em 1959 o
artigo Some Studies in Machine Learning Using the Game of Checkers, conceituando o
aprendizado de máquina como campo de estudo que dá aos computadores a habilidade de
aprender sem serem explicitamente programados (SAMUEL, 1959).
Em 1991, Sholom M. Weiss e Casimir A. Kulikowski, autores do livro Computer Systems that
Learn, definiram um sistema de aprendizado como um programa de computador que toma
decisões baseadas na experiência contida em exemplos solucionados com sucesso.
EXEMPLO
Se você quisesse criar um programa que joga o jogo da velha, seria necessário mapear todas as
possíveis jogadas e codificá-las como instruções dentro do programa.
Instrução Ação
Se não, e havendo algum movimento que cria duas linhas com duas
Instrução 2
casas ocupadas, faça-o.
Instrução e Ação.
Segundo Pedro Domingos, no seu livro O algoritmo mestre, esse algoritmo não perde o jogo da
velha, isso porque suas regras são simples.
Agora imagine um jogo de xadrez, em que cada jogada tem, em média, 35 movimentos
possíveis. Mapear todas essas instruções em um algoritmo, cobrindo o passo a passo para
todas as possibilidades de jogada é inviável.
Em situações ainda mais complexas, como processamento da linguagem natural, ou
reconhecimento facial, é mais difícil ainda mapear todas as possíveis regras.
Apesar da semelhança com a estatística computacional, que também faz previsões com o uso
de computadores, os algoritmos de aprendizado de máquina são empregados em tarefas
computacionais nas quais a criação e a programação de algoritmos explícitos são impraticáveis.
A inteligência artificial cria máquinas inteligentes com o poder de reconhecer objetos, vozes,
faces, além de racionalmente solucionar problemas, com a capacidade de planejamento e de
manipular e mover objetos.
Essa funcionalidade, possível por meio do aprendizado de máquina, utiliza uma programação
prévia, uma apresentação de certas características para as máquinas e a inserção de um
grande volume de informações relacionadas ao mundo.
Cada vez mais o aprendizado de máquina tem sido usado para automatizar o processo de
criação de um bom mecanismo de pesquisa, como o Google. Outro exemplo é a filtragem
colaborativa – técnica utilizada pelos sistemas de recomendação.
SISTEMAS DE RECOMENDAÇÃO
PESQUISAS NA INTERNET
COLETA E ANÁLISE DE DADOS
Atualmente, utilizamos essa nova tecnologia para a tomada de decisão mais assertiva, no caso
de recursos escassos e para suprir a falta de especialistas, dentre outras situações.
O aprendizado de máquina utiliza grandes bases de dados, como o big data, com potencial para
leitura de dados não estruturados. Porém, isso significa a capacidade de armazenar e processar
dados diversos, como imagens, textos, voz e vídeos.
DESAFIO 2: GENERALIZAÇÃO
Esse é outro grande desafio. Os algoritmos de machine learning devem ser generalizáveis para
que tenham resultados em aplicações futuras. Dificilmente uma empresa detém todas as
informações necessárias para realizar previsões tão acuradas. Nesse caso, o algoritmo de ML
será capaz de generalizar a predição de interesse. Porém, é comum acontecer o overfitting.
OVERFITTING
Ocorre quando o modelo de aprendizado criado é tão específico que apenas prevê, com bons
resultados, ao usar a base em que foi treinado. Essa circunstância gera resultados ruins quando
ele é colocado em produção.
DESAFIO 4: ÉTICA
Os parâmetros dos algoritmos de ML nem sempre incluem ética. Um algoritmo pode criar um
orçamento nacional com o objetivo de “maximizar o PIB/produtividade no trabalho/expectativa de
vida”, mas sem limitações éticas programadas no modelo; pode eliminar orçamentos para
escolas, hospitais psiquiátricos e o meio ambiente, porque não aumentam diretamente o PIB.
Se as questões morais variam entre grupos do mesmo país, imagine entre países. Por exemplo,
na China, usar o reconhecimento facial para vigilância em massa se tornou a norma. Mas será
que outros países veem esse assunto da mesma forma?
MÓDULO 2
APRENDIZADO DE MÁQUINA
MITCHELL,1997
Ou seja, para realizar uma tarefa T, um computador aprenderá a partir de uma experiência E,
procurando melhorar uma métrica de desempenho P (performance).
EXPERIÊNCIA E
Informações sobre partidas de futebol, como formação tática, composição do time, técnico,
resultados etc.
MÉTRICA DE DESEMPENHO P
Resumindo:
TAREFA T
EXPERIÊNCIA E
Imagens de tumores obtidas por exames médicos (raio X, ultrassom, tomografia, ressonância
magnética etc.)
MÉTRICA DE DESEMPENHO P
Conclui-se que, quanto mais dados são apresentados, quanto mais experiências são fornecidas,
melhores serão os resultados, ou seja, melhor será a performance do algoritmo.
APRENDIZADO SUPERVISIONADO
O aprendizado de máquina supervisionado é um método cuja forma de aprender é a partir de
experiências predefinidas, de dados rotulados.
PRIMEIRA FASE
É a formulação do modelo, chamada de treinamento.
SEGUNDA FASE
É o teste, quando o modelo é usado para identificar corretamente os dados de fora do conjunto
de treinamento e não rotulados.
Para entendermos melhor, imaginemos uma base de dados composta por um conjunto de
imagens de veículos identificadas por carros, motos, caminhões e ônibus. Esses dados foram
mapeados cada um de acordo com o tipo de veículo que representa:
Ônibus
Carro
Caminhão
Nesse caso, as imagens de veículos são as entradas e os tipos de veículos são as saídas. Cada
imagem foi rotulada pelo seu tipo e essa base de dados rotulada será o modelo de
conhecimento gerado pela fase de treinamento do algoritmo de AM.
Na fase de teste, o modelo é aplicado pelo AM para identificar cada nova entrada de acordo com
o seu tipo correspondente:
Nesse tipo de aprendizado, pode-se estimar números reais ou valores dentro de um conjunto
finito. A estimativa dos rótulos se dá de duas formas:
Classificação
Quando se estima com base em um conjunto finito de rótulos, que pode ser utilizado para
classificar produtos defeituosos, clientes inadimplentes etc.
Regressão
Quando se estimam valores reais, por exemplo, o número de vendas, quantidade de matéria-
prima necessária para um determinado período, número de produtos com defeito etc.
Dessa maneira, se o rótulo é um número real, a tarefa chama-se regressão. Se o rótulo vem de
um conjunto finito e não ordenado, então a tarefa chama-se classificação.
Para entender melhor, imagine uma base de dados de clientes inadimplentes, na qual diversas
características – como limite de compra, quantidade de pedidos, valor médio de cada pedido etc.
– podem levar à inadimplência. Os algoritmos de classificação são capazes de analisar as
características de cada cliente e predizer as chances de um determinado cliente, ainda não
rotulado, ser inadimplente.
Já os algoritmos de regressão podem estimar o número de vendas, a quantidade de matéria-
prima necessária para um determinado período, o número de produtos com defeito. Como
exemplo, pense em uma base de dados de imóveis para locação, em que diversas
características – como a quantidade de quartos e de banheiros, se tem garagem, tamanho do
imóvel, valor do aluguel etc. – levam ao valor de locação do imóvel. Os algoritmos de regressão
são capazes de analisar as características de cada imóvel e predizer o valor do aluguel
correspondente.
Como exemplo, pense em uma base de dados de imóveis para locação, em que diversas
características – como a quantidade de quartos e de banheiros, se tem garagem, tamanho do
imóvel, valor do aluguel etc. – levam ao valor de locação do imóvel. Os algoritmos de regressão
são capazes de analisar as características de cada imóvel e predizer o valor do aluguel
correspondente.
Sendo assim, esse tipo de aprendizado é capaz de tomar decisões precisas quando recebe
novos dados não rotulados a partir de um treinamento com dados que têm rótulos conhecidos.
Vamos retornar para a base de dados composta por um conjunto de imagens de veículos, porém
agora ela não conta com o rótulo que identifica o tipo de veículo. Sendo assim, o algoritmo de
AM não supervisionado atuará agrupando as imagens dos veículos de acordo com as suas
semelhanças, gerando clusters:
Aprendizado não supervisionado.
Para entender melhor, imagine a base de dados de clientes, porém sem ter explicitamente a
informação de que um cliente é inadimplente. Nesse caso, um algoritmo de aprendizado não
supervisionado vai criar agrupamentos a partir das características dos clientes e, muito
provavelmente, os inadimplentes estarão no mesmo grupo.
Além disso, como cada agrupamento vai conter clientes com características semelhantes,
especialistas podem definir um nível de risco para cada grupo criado. Em vez de definidos
apenas como inadimplentes ou não, os clientes podem ser agrupados de acordo com o nível de
risco de se tornarem inadimplentes.
Outro exemplo seria o caso de um comércio que desejasse conhecer o perfil dos seus
consumidores. Pode haver um perfil de consumidor que sempre compra vinho e queijo ou que
compra carne e carvão ou ainda leite em pó e fralda. Se colocarmos esses produtos em
prateleiras distantes, é possível que ocorra aumento de vendas, pois aumentará o tempo e o
percurso do cliente no comércio.
No entanto, não estamos registrando para cada compra o perfil ao qual o consumidor pertence.
Sequer sabemos quantos perfis de consumidores existem. Nesse caso, o computador terá que
descobrir esses perfis por meio de semelhanças entre os dados.
ATENÇÃO
Uma opção seria observar, nos registros de compras, se existem padrões repetidos, os quais
permitiriam a inferência de um grupo ou perfil de consumidor. Outra opção seria ver diretamente
quais produtos são frequentemente comprados juntos e, então, aprender uma regra associativa
entre eles.
Dessa maneira, é possível aplicar técnicas que utilizam regras de associação e clusterização.
Essas técnicas podem ser aplicadas na fase de pré-processamento ou mineração de dados,
para se encontrar anomalias (os outliers), realizar redução de dimensionalidade em features etc.
APRENDIZADO SEMISSUPERVISIONADO
O aprendizado de máquina semissupervisionado é um método que abrange ambos os métodos:
supervisionado e não supervisionado.
Esse aprendizado utiliza tanto o conjunto de dados rotulados como também o conjunto de dados
não rotulados.
ATENÇÃO
Além disso, a rotulação de dados pode ser custosa, como nos casos de indexação de vídeo,
categorização de textos e diagnósticos médicos, entre outros.
ALGORITMOS DE CLASSIFICAÇÃO
SEMISSUPERVISIONADOS
Rotulam, com uma certa margem de segurança, alguns dos dados no conjunto de dados não
rotulados, os quais são posteriormente utilizados durante a fase de treinamento do classificador,
gerando, assim, uma classificação mais precisa.
ALGORITMOS DE CLUSTERIZAÇÃO
SEMISSUPERVISIONADOS
Os dados rotulados são utilizados no processo de criação dos clusters, servindo como
conhecimento expresso na forma de restrições e, dessa forma, resultando em melhores clusters.
Voltando à base de dados de imagens de veículos, suponha que, dentre as imagens, algumas
sejam rotuladas com o tipo de veículo e outras estejam sem rótulo. O algoritmo de aprendizado
semissupervisionado usaria as imagens rotuladas para fazer inferências sobre qual o tipo de
veículo das imagens não rotuladas:
Aprendizado semissupervisionado.
APRENDIZADO POR REFORÇO
O entendimento do conceito de aprendizado por reforço fica mais fácil com a ajuda da
Psicologia, cuja corrente denominada behaviorismo define o comportamento humano como
resultado das influências do ambiente. Sendo assim, podemos entender que o
comportamento pode ser moldado de acordo com estímulos e respostas.
IVAN PAVLOV
Ivan Pavlov, por sua vez, desenvolveu a teoria do comportamento em resposta aos estímulos do
ambiente.
Skinner, dentre outros experimentos, usou a ideia de aprendizado por reforço com recompensas
e punições no treinamento de pombos, com o objetivo de conduzir mísseis na Segunda Guerra
Mundial.
Uma situação que ilustra bem esse tipo de comportamento é o adestramento de um cão; por
exemplo, ensiná-lo a sentar a partir de um comando. Primeiramente, o animal não executará o
comando requerido, e o tutor responde a isso com um “reforço negativo” (punição). Quando o
cão se aproxima do que deveria fazer, é a vez de oferecer-lhe “reforços positivos” como sinal de
aprovação ou incentivo. Se o cão de fato se sentar após o comando, a ele será dada uma
recompensa – um biscoitinho, por exemplo. Com várias repetições desse mesmo experimento,
com o tempo, o cão passa a associar a relação de “causa-efeito” entre o comando e a
recompensa a ser recebida e assim “aprende” a obedecer a esse comando.
Aprendizado por reforço é uma área do AM que avalia como a máquina deve agir em
determinados ambientes de acordo com as recompensas ou punições recebidas e acumuladas
com o tempo.
ATENÇÃO
Esse processo funciona com o tempo e, com a repetição dos experimentos, a máquina vai
associando as ações que geram maior recompensa para cada situação que o ambiente
apresenta, passando a evitar as ações que geram punição ou recompensa menor.
Nesse tipo de aprendizado, muda-se um pouco o método com relação aos demais. Geralmente
é aplicado quando se conhecem as regras, mas não se sabe a melhor sequência de ações a
executar. As regras são iterativamente aprendidas, como num jogo de xadrez ou num
videogame, onde o fundamental são as ações tomadas pelo jogador ou pela máquina.
EXEMPLO
Outro exemplo do uso desse método são os carros autônomos, que tomam decisões
dependendo do cenário ao redor, recebendo recompensas negativas quando colidem com o
ambiente ou com outros veículos; com repetidas etapas, aos poucos, eles aprendem a contornar
os obstáculos.
E se o objetivo for testar novas combinações de ações ótimas em uma sequência de estados
não realizados anteriormente em busca de uma recompensa maior?
Vamos voltar ao adestramento de cães; suponha que, depois de tê-lo ensinado a sentar com
sucesso, o tutor queira fazer um teste de obediência – manter o cão sentado enquanto anda
para trás, até chegar a uma distância de cinco metros dele. Caso o cão se sente, ele ganha o
biscoitinho (assim como antes); caso ele não se levante até o tutor ficar a cinco metros dele, o
cão recebe uma recompensa maior (um pedaço de carne, por exemplo).
Essa situação ilustra um trade-off: o animal pode escolher por “testar” novas combinações de
ações ótimas em uma sequência de “estados” não realizada anteriormente, em busca de uma
recompensa maior, mas não imediata (o chamado exploration); ou simplesmente se ater à
recompensa que ele pode obter por meio de uma ação já conhecida (o chamado exploitation).
Fazer a máquina ser capaz de encontrar o meio termo ótimo entre exploration e exploitation é
um dos principais desafios do aprendizado por reforço, e é bastante pertinente para aplicações
mais complicadas, como ensinar uma máquina a jogar xadrez, por exemplo.
Uma estratégia vencedora frequentemente envolve abrir mão de uma vantagem imediata, ou até
mesmo o sacrifício de peças, visando o sucesso a longo prazo – um bom jogador deve ser
capaz de levar em consideração as consequências de sua jogada várias rodadas adiante,
sabendo que a resposta do oponente também estará visando um benefício futuro, e assim por
diante.
COMPARAÇÃO DOS MÉTODOS DE
APRENDIZADO DE MÁQUINA
Assista ao vídeo a seguir e acompanhe um comparativo dos principais métodos de ML.
VERIFICANDO O APRENDIZADO
MÓDULO 3
Distinguir as categorias de problemas de aprendizado de máquina em função da saída
O AM pode ser realizado de duas maneiras, na predição ou no auxílio da descrição dos dados:
A predição dos dados ou análise preditiva é aplicada para situações em que se deseja prever
algum comportamento ou resultado. A utilidade da análise preditiva está em verificar tendências
de consumo, flutuações econômicas, por exemplo. Dessa maneira, é realizada uma análise de
dados ao longo do tempo em busca de padrões comportamentais, variações, para prever o
comportamento futuro, dadas as condições atuais.
MODELO PREDITIVO
É usado pelo aprendizado supervisionado com foco em predizer os rótulos desconhecidos. Na
prática, o aprendizado supervisionado utiliza os dados para aprender como resolver determinado
problema, que pode ser de classificação ou de regressão.
CLASSIFICAÇÃO
Os problemas de classificação são aqueles que buscam encontrar uma classe, dentro das
possibilidades existentes. A ideia é prever os resultados em uma saída discreta, a partir do
mapeamento de variáveis de entrada em categorias distintas.
EXEMPLO
Por exemplo, uma classe pode identificar se determinado aluno foi aprovado ou reprovado, um
paciente pode saber se um exame oferece diagnóstico para determinada doença ou não, dentre
outras situações.
Por exemplo, imagine uma base de dados composta de seis registros para prever se uma
pessoa irá ou não jogar tênis com base nas condições climáticas.
Jogar Tênis
Tempo Temperatura Humidade Vento (sim ou
não)
Ensolarado Quente Alta Fraco Não
Para prever se uma pessoa deve sair de casa ou não, para jogar tênis, temos que considerar
algumas variáveis, como: aspecto do céu (tempo), temperatura do dia, umidade e força do
vento.
Sendo assim, um dia chuvoso (tempo chuvoso), mas com temperatura quente, pode inviabilizar
a saída de casa, pois há chance de começar a chover durante o jogo. Por outro lado, se o tempo
está chuvoso, mas com temperatura moderada, resulta em “sim” para ir jogar tênis, pois o clima
está agradável.
Nesse caso, o problema de classificação, ou seja, a identificação da classe – jogar tênis (sim ou
não) – será resolvido pelo modelo preditivo gerado de acordo com o conjunto de dados
rotulados.
O vídeo a seguir ilustra outro exemplo simples como o apresentado acima, com emprego de um
algoritmo clássico de classificação, o "Naive Bayes". Para isso, é usado um conhecido software
de Machine Learning com licença livre, denominado WEKA (do inglês Waikato Environment for
Knowledge Analysis), disponível no site da Universidade de Waikato, Nova Zelândia, e descrito
em (Witten et. al., 2011).
REGRESSÃO
Os problemas de regressão são aqueles que precisam prever um valor numérico específico.
Nesse caso, a ideia é prever os resultados em uma saída contínua, o que significa mapear
variáveis de entrada para uma função contínua.
EXEMPLO
Por exemplo, o valor numérico do preço de um produto, o peso ou a altura de uma pessoa, a
metragem de uma casa, dentre outras situações.
R$
353 919 6 0 0
205.000,00
R$
325 1.006 5 1 1
224.900,00
R$
403 1.015 5 0 1
197.900,00
R$
240 1.415 4 1 0
189.900,00
R$
220 960 4 0 1
195.000,00
R$
353 1.999 6 1 1
325.000,00
R$
298 936 5 0 1
230.000,00
320 967 5 1 1 ?
O modelo preditivo gerado vai sugerir o preço da casa de acordo com o conjunto de dados. Mas
talvez a presença de granito nos quartos não seja relevante para o preço; ou o tamanho da casa
influencie negativamente no preço do imóvel; ou ainda o número de quartos e a reforma do
banheiro sejam mais importantes que o tamanho do lote, por terem pesos maiores do que o
relativo a este.
ATENÇÃO
O que define o tipo de problema não é a distinção entre a previsão de um número e a de uma
letra ou de uma palavra. É possível prever valores numéricos nos casos de problemas de
classificação, mas a previsão será uma categoria. Isso quer dizer que é possível encontrar
valores como 0 e 1 representando classes.
Por exemplo, o valor 0 pode indicar a reprovação de um aluno e o valor 1, a aprovação. Isso
significa que o número 0 é algo diferente do seu valor, que pode ser substituído por qualquer
letra, palavra ou até mesmo outro número, sem prejudicar o entendimento das previsões.
MODELO DESCRITIVO
O modelo descritivo é usado pelo aprendizado não supervisionado para dados não rotulados,
com foco na identificação e na indicação de similaridades no conjunto de dados.
O AM não supervisionado descobre padrões previamente desconhecidos em dados. Como não
se sabe quais devem ser os resultados, ainda não há como determinar a precisão deles,
tornando o aprendizado de máquina não supervisionado mais aplicável aos problemas do
mundo real do que os outros tipos de aprendizado de máquina.
COMENTÁRIO
Na prática, o aprendizado não supervisionado nos permite abordar problemas com praticamente
nenhum conhecimento sobre os resultados; isso significa que não fazem uso de atributos de
saída para aprender como resolver determinado problema.
CLUSTERING
Uma das principais categorias utilizadas pelo aprendizado de máquina não supervisionado é a
clusterização (clustering), que divide automaticamente o conjunto de dados em grupos, de
acordo com a similaridade.
No caso de alguns dados serem largamente distintos dos demais grupos, podemos assumir que
eles são anomalias. A detecção de anomalias é útil para reconhecer transações fraudulentas,
descobrir peças defeituosas ou identificar um caso discrepante ocasionado por erro humano na
entrada de dados.
Por exemplo, imagine uma base de dados históricos de uma concessionária da BMW, na qual
estão armazenadas todas as informações de vendas passadas, bem como informações a
respeito de cada pessoa que comprou uma BMW, olhou uma BMW ou apenas procurou algo no
salão de exposição da BMW. A concessionária acompanhou quantas pessoas passaram pela
concessionária e pelo salão de exibição, quais carros elas olharam e com que frequência
compraram.
Um problema de aprendizado não supervisionado para esse caso é encontrar padrões nos
dados, gerando agrupamento baseado em comportamentos semelhantes entre os clientes. A
partir da base de dados, podemos identificar cinco clusters:
CLUSTER 0 - SONHADORES
Andam pela concessionária olhando os carros estacionados.
EXEMPLO
Outra análise pode vir do cluster 4 – Começando com a BMW. A concessionária poderia concluir
que os clientes que esperam comprar seu primeiro BMW sabem exatamente o tipo de carro
desejado, e esperam qualificar-se para o financiamento de modo a ter condições financeiras de
comprá-lo; sendo assim, a concessionária poderia aumentar suas vendas, relaxando seus
padrões de financiamento ou reduzindo os preços do 3-series.
ESTIMATIVAS DE DENSIDADE
Esse método tem por base a função densidade de probabilidade – conceito fundamental em
estatística. Nele se identificam as regiões densas, permitindo a formação de grupos com
diferentes formatos.
Podemos então definir esse método como uma técnica não paramétrica para estimação de
curvas de densidades, em que cada observação é ponderada pela distância em relação a um
valor central, o núcleo.
O método usa o valor de densidade para agrupar aqueles pontos que têm valores similares.
Dessa maneira, é possível identificar vizinhanças densas nas quais a maioria dos pontos está
contida.
Por exemplo, imagine um conjunto de dados com os resultados de uma análise química de
vinhos cultivados na região da Itália. Cada instância do conjunto de dados corresponde a pontos
em um espaço n-dimensional, conforme a figura abaixo:
Nesse exemplo, temos 100 vinhos cultivados na região da Itália (pontos azuis) e distribuídos em
um espaço bidimensional, de acordo com os resultados da análise química. O novo vinho está
localizado no espaço pelo ponto vermelho, e será o ponto p (p = (20,20)).
A densidade é calculada pela divisão da massa pelo volume (Densidade = Massa / Volume).
Sendo assim, para o caso de ɛ ser igual a 5, temos o volume como a área do círculo (A=πr²),
π(5)². Dessa forma, Massa/Volume será igual a 19 pontos/π(5)².
REDUÇÃO DIMENSIONAL
O método de redução dimensional se aplica quando temos um conjunto de dados com uma
quantidade de variáveis bem grande em um problema.
Às vezes, há muitas variáveis altamente correlacionadas, ou seja, elas são redundantes ou são
variáveis que não apresentam informações úteis ao problema. Essa situação faz o modelo
selecionado apresentar muitos parâmetros, e pode acabar causando overfitting, significando que
o modelo tem um desempenho excelente no treino, porém quando o utilizamos em dados de
teste, o resultado é ruim.
VOCÊ SABIA
Podemos entender que, nesse caso, o modelo aprendeu tão bem as relações existentes no
treino, que acabou apenas decorando o que deveria ser feito. Ao receber as informações novas
de teste, o modelo tenta aplicar as mesmas regras decoradas. Acontece que, com dados
diferentes, essa regra não tem validade e o desempenho é afetado.
A PCA consiste em um procedimento algébrico que converte as variáveis originais (que são
tipicamente correlacionadas) em um conjunto de variáveis não correlacionadas (linearmente),
que se designam por componentes principais (PC) ou variáveis latentes.
ATENÇÃO
A PCA fornece o mapeamento de um espaço com N dimensões (em que N é o número de
variáveis originais) para um espaço com M dimensões (onde M é tipicamente muito menor do
que N).
Essa técnica não é paramétrica; é, sim, linear, simples e rápida, e tem por base a variância dos
dados. Sendo assim, ela tenta criar uma representação dos dados, com uma dimensão menor,
porém mantendo a variância entre eles.
Outra técnica é a curvilinear distance analysis (CDA), poderosa para reduzir dimensionalidade,
por ser não linear.
Essa técnica é bem complicada de implementar e seu custo computacional é bem elevado, se
comparado à PCA, pois se baseia em distância de grafos.
RESUMINDO
Por exemplo, imagine uma base de dados de jogadores de basquete. Nosso objetivo é
determinar a qualidade de um jogador. Dentre todas as variáveis da base, existem a média da
quantidade de dias que o jogador treina por semana e a média de treinos por mês. Quando
analisamos os resultados, percebemos que as variáveis são correlacionadas, ou seja, na
maioria dos casos, quando um jogador treina muitas vezes por semana, acaba realizando
muitos treinos por mês.
Isso mostra que não é necessário utilizar as duas variáveis para treinar o modelo. A premissa é
que as variáveis redundantes podem ser removidas sem perda de informação/valor para o
modelo.
VERIFICANDO O APRENDIZADO
CONCLUSÃO
CONSIDERAÇÕES FINAIS
Nas últimas décadas, o aprendizado de máquina tornou-se um dos pilares da Tecnologia da
Informação. Com a crescente quantidade de dados disponíveis, a análise inteligente se tornará
cada vez mais difundida como um ingrediente necessário para o progresso tecnológico.
Iniciamos conceituando aprendizado de máquina. Após passar pelos conceitos básicos, seus
desafios e quem o está utilizando, identificamos os métodos de aprendizado, suas diferenças e
apresentamos exemplos para cada método.
De acordo com a base de dados, a forma como estão organizados, se rotulados ou não, torna-
se possível utilizar classificação ou regressão, ou até clusterização, para resolver determinados
problemas de aprendizado.
PODCAST
Agora, o especialista encerra o tema respondendo a alguns questionamentos sobre Machine
Learning.
AVALIAÇÃO DO TEMA:
REFERÊNCIAS
FITCH, F. B. Warren S. McCulloch and Walter Pitts. A Logical Calculus of the Ideas
Immanent in Nervous Activity. Bulletin of Mathematical Biophysics, v. 5 (1943), pp. 115-133. In:
Journal of Symbolic Logic, 1944, v. 9 (2), pp. 49-50. Cambridge University Press [online].
Publicado em: 12 mar. 2014.
RUSSEL, S.; NORVIG, P. Inteligência artificial: uma abordagem moderna. 3. ed. São Paulo:
LTC, 2009.
SAMUEL, A. L. (1959). Some studies in machine learning using the game of checkers. In:
IBM Journal of Research and Development, v. 3 (3), jul. 1959.
WEISS, S. M.; KULIKOWSKI, C. A. Computer systems that learn: classification and prediction
methods from statistics, neural nets, machine learning and expert systems. San Mateo:
Kaufmann, 1991.
Witten, Ian H.; Frank, Eibe; Hall, Mark A.; Pal, Christopher J. (2011). "Data Mining: Practical
machine learning tools and techniques, 3rd Edition". Morgan Kaufmann, San Francisco
(CA).
EXPLORE+
Veja como o canal GCFAprendeLivre e o Canal Marcelo Tas abordam o tema Aprendizado
de Máquina de uma forma clara e descontraída.
CONTEUDISTA
Daisy Albuquerque
CURRÍCULO LATTES