Documente Academic
Documente Profesional
Documente Cultură
Máquina”
Aprendizagem de máquina relaciona-se ao ato de dar aos
computadores a habilidade de aprender sem precisar ser
explicitamente programado para tal. Isso é feito fornecendo dados aos
computadores e fazendo com que eles os transformem em modelos
de decisão que são, então, utilizados para como ferramenta de
predição.
1. coleta de dados
2. filtragem de dados
3. análise de dados
4. treinamento do algoritmo
5. testes do algoritmo
6. uso do algoritmo para previsões futuras
aprendizado supervisionado
aprendizado não supervisionado
Aprendizado Supervisionado
Aprendizado supervisionado é a ciência de treinar um computador
para reconhecer elementos, dando-lhe dados amostrais. O
computador, então, aprende a partir dessas resultados e torna-se
capaz de prever futuros conjuntos de dados com base na informação
aprendida.
treinamento
teste
árvores de decisão
máquina de vetores de suporte
algoritmo de classificação Naive Bayes
k-vizinhos mais próximos (k-nearest neighbor)
regressão linear
Aprendizado Não Supervisionado
agrupamento
associação
agrupamento k-means
agrupamento hierárquico
Conclusão
Além disso, não hesite em ver o que temos disponível para venda e
para estudo no . Não deixe, também, de fazer perguntas e fornecer
seu feedback usando a seção abaixo.
Controle de spam feito pelo seu email: machine learning te ajuda a ficar livre
de lixo
Legal, mas ainda nada que seja surpreendente. Especialmente em um dia com
neblina quando a placa não é perfeitamente visível, ou se uma árvore tapa
metade dela. Há uma razão pela qual visão computacional e detecção de
imagens não chegava nem perto de rivalizar com humanos até muito
recentemente, ela era muito rasa e propensa a erros.
Você pode, por exemplo, pegar uma imagem, cortar ela em uma pilha de
pequenos pedaços que são recebidos pela primeira camada da rede neural. Na
primeira camada neurônios individuais, então passam os dados para uma
segunda camada. A segunda camada faz o seu trabalho, e assim por diante, até
que a camada final produza a saída.
Cada neurônio atribui um peso para os dados que entram — o quão correto ou
incorreto ele é relativo a tarefa que está sendo executada. A saída final é então
determinada pelo total desses pesos. Tome como exemplo a nossa placa de
pare. Atributos de uma foto de uma placa de pare são cortados e examinados
pelos neurônios — o seu formato octogonal, a sua cor vermelha, as suas letras
distintas, o tamanho comum para placas de trânsito e o seu movimento (ou falta
dele). O trabalho da rede neural é concluir se a imagem é de uma placa de pare
ou não. Ela traz um “vetor de probabilidade”, que é um valor calculado a partir
dos pesos atribuídos a imagem. Em nosso exemplo o sistema pode estar 87%
confiante que a imagem é de uma placa de pare, 7% confiante que é uma placa
de limite de velocidade e 5% que é um gato preso em uma árvore, e assim por
diante — a arquitetura da rede então diz para a rede neural se está certo ou não.
Mesmo esse exemplo está indo a frente, porque até recentemente redes
neurais eram evitadas pela comunidade pesquisadora de IA. Elas estavam
presentes desde o início de IA, e haviam produzido muito pouco no sentido de
“inteligência”. O problema era que mesmo a rede neural mais básica exigia
muito computacionalmente, então era uma abordagem nem um pouco prática.
Ainda assim, um grupo de pesquisa pequeno liderado por Geoffrey Hinton na
Universidade de Toronto se manteve firme, finalmente conseguindo paralelizar
os algoritmos para supercomputadores executa-los e provar o conceito, mas só
quando GPUs foram incumbidos da tarefa que a promessa foi cumprida.
Foram plotados apenas 100 pontos para cada classe, porém todo o dataset é
composto de 3.164 pontos de amostras divididos entre masculino e feminino. O
que acontece se forem plotados 200 pontos de amostras para cada classe?
Bem, a linha tracejada em preto parece não separar corretamente os dois
conjuntos de dados. O processo é então repetido e aplicada uma linha
pontilhada vermelha que visualmente pode ser uma maneira melhor de separar
as classes. A diferença matemática entre ambas linhas no gráfico está
relacionada aos valores dos "Thetas" da equação. Foi "aprendido" uma melhor
maneira de separar ambas as classes, tendo em conta os dados que foram
apresentados. O resultado, em essência, se resume em encontrar novos
coeficientes para o limite de decisão.
A linha preta sólida poderia ser escolhida como um limite de decisão, porém é
um problema que assombra praticamente todos os Cientistas de Dados, que é
o sobreajuste (overfitting). O que a curva faz é criar um limite de decisão que é
muito específico para o dataset atual e provavelmente não generalizará bem se
mais amostras forem adicionadas, como mostrado no gráfico a seguir:
Todo o conjunto de dados foi plotado e agora o método de separação utilizando
linhas torna-se muito questionável. É preciso ajuda de um algoritmo de
Aprendizado de Máquinas para escolher uma curva que minimize o erro ou a
perda que se está cometendo. Além disso, é preciso ajuda dos algoritmos,
porque até o momento foi demonstrada a dependência do dataset de voz com
base em apenas duas características, mas cada amostra de voz é composta de
21 características.
Processo de aprendizado
Como o ser humano, a máquina precisa passar por alguns processos para que
ela possa aprender. Como discutido anteriormente, os dados são essenciais,
então o primeiro passo é escolher quais dados serão trabalhados e
disponibilizados para o processo do Aprendizado de Máquina.
Porém, nem todo conjunto de dados, seja ele adquirido em bases de dados
abertas, coletados em tempo real ou de um banco de dados, estará de forma
estruturada e pronta para ser passados para a máquina aprender. Como nós,
que precisamos de um material para estudo de qualidade para podermos
aprender, a máquina precisa de um conjunto de dados razoável para também
poder aprender. Como citado, muitas das vezes os dados estão completamente
desestruturados e fora de um padrão e para isso é necessário a realização da
técnica de Data Cleaning.
Feature
Feature é uma característica que descreve um objeto. Qualquer atributo de um
objeto pode ser tratado como feature, seja um número, um texto, uma data, um
booleano etc. Como no objeto pessoa, vemos vários atributos que o descreve,
esses atributos são suas features.
Na tabela abaixo, temos um conjunto maior de dados, onde:
Como vemos na imagem temos dados do tipo bolinha azul e do tipo + lilás, e
queremos saber de qual tipo seriam os novos dados (bolinha amarela).
Exemplo: Classificar um e-mail como spam ou não spam.
Como vemos na imagem temos dados distribuídos ao redor da linha vermelha, que é
valor que desejamos encontrar. Um novo dado poderia ser colocado ali conforme suas
características e dependendo de onde ficaria na linha, encontraríamos o valor
desejado.
No primeiro exemplo tínhamos vários e-mails rotulados como spam e não spam que
foram usados no treinamento.
No segundo exemplo tínhamos várias casas com seus preços que foram usadas nos
treinamento.
Redução de dimensionalidade
Podemos fazer a mesma redução para várias pessoas diferentes e colocar no mesmo
plano, dessa forma conseguimos enxergar melhor a distribuição dos dados. Caso os
dados tenham uma boa representatividade em 2 dimensões, pessoas com mesmas
características podem ficar mais próximas nesse tipo de representação, enquanto
pessoas muito diferentes ficam mais distantes.
Reduzimos para 2 dimensões para melhor visualização, pois só somos capazes de ver
em no máximo 3 dimensões, porém os algoritmos são capazes de lidar com quantas
dimensões forem necessárias.
Esse tipo de técnica pode ser usada para facilitar a análise dos dados, como fizemos
no exemplo acima.
Também é usado no caso de dados com uma quantidade muito grandes de features,
em números muitos elevados podem impedir de alguns tipos de algoritmos
funcionarem corretamente, principalmente se o número de features for próximo ou
maior do que o número de entradas. Nesse caso, reduzimos as features para um
número mais aceitável e então fazemos nosso treinamento normalmente com essas
novas features.
Clusterização
Consiste no agrupamento dos dados baseado em suas características, esses grupos
são chamados de clusters.
Exemplos:
Para identificar clientes similares e com isso ser mais assertivo ao oferecer um
novo produto;
Na área médica para agrupar pacientes com os mesmos sintomas;
Em marketing para segmentação de mercado;
Para classificação de documentos;
Para qualquer agrupamento de uma grande de quantidade de dados baseado
em suas características.
Aplicação