O aprendizado de máquina é um subconjunto da IA que permite que a máquina aprenda automaticamente com os dados, melhore o desempenho de experiências anteriores e faça previsões . O aprendizado de máquina contém um conjunto de algoritmos que funcionam com uma grande quantidade de dados. Os dados são alimentados a esses algoritmos para treiná-los e, com base no treinamento, eles constroem o modelo e executam uma tarefa específica.
Esses algoritmos de ML ajudam a resolver diferentes problemas de negócios, como regressão, classificação, previsão, clustering e associações, etc.
Com base nos métodos e na forma de aprendizagem, o aprendizado de máquina é dividido principalmente em quatro tipos, que são:
- Aprendizado de máquina supervisionado
- Aprendizado de máquina não supervisionado
- Aprendizado de máquina semissupervisionado
- Aprendizagem por Reforço
Neste tópico, forneceremos uma descrição detalhada dos tipos de Machine Learning junto com seus respectivos algoritmos:
rj12 versus rj11
1. Aprendizado de máquina supervisionado
Como o próprio nome sugere, Aprendizado de máquina supervisionado baseia-se na supervisão. Isso significa que na técnica de aprendizagem supervisionada treinamos as máquinas usando o conjunto de dados 'rotulado' e, com base no treinamento, a máquina prevê o resultado. Aqui, os dados rotulados especificam que algumas das entradas já estão mapeadas para a saída. Mais preciosamente, podemos dizer; primeiro, treinamos a máquina com a entrada e a saída correspondente e, em seguida, pedimos à máquina que preveja a saída usando o conjunto de dados de teste.
Vamos entender o aprendizado supervisionado com um exemplo. Suponha que tenhamos um conjunto de dados de entrada de imagens de gatos e cachorros. Então, primeiro, vamos dar o treinamento para a máquina entender as imagens, como o formato e tamanho da cauda do gato e do cachorro, formato dos olhos, cor, altura (os cães são mais altos, os gatos são menores), etc. Após a conclusão do treinamento, inserimos a imagem de um gato e pedimos à máquina que identifique o objeto e preveja o resultado. Agora a máquina está bem treinada, então irá verificar todas as características do objeto, como altura, formato, cor, olhos, orelhas, cauda, etc., e descobrir que é um gato. Então, vai colocá-lo na categoria Gato. Este é o processo de como a máquina identifica os objetos no Aprendizado Supervisionado.
O principal objetivo da técnica de aprendizagem supervisionada é mapear a variável de entrada (x) com a variável de saída (y). Algumas aplicações do mundo real de aprendizagem supervisionada são Avaliação de riscos, detecção de fraude, filtragem de spam, etc.
Categorias de aprendizado de máquina supervisionado
O aprendizado de máquina supervisionado pode ser classificado em dois tipos de problemas, que são apresentados a seguir:
a) Classificação
Algoritmos de classificação são usados para resolver problemas de classificação em que a variável de saída é categórica, como ' Sim ou Não, Masculino ou Feminino, Vermelho ou Azul, etc. . Os algoritmos de classificação prevêem as categorias presentes no conjunto de dados. Alguns exemplos do mundo real de algoritmos de classificação são Detecção de spam, filtragem de e-mail, etc.
Alguns algoritmos de classificação populares são fornecidos abaixo:
b) Regressão
Algoritmos de regressão são usados para resolver problemas de regressão nos quais existe uma relação linear entre variáveis de entrada e saída. Eles são usados para prever variáveis de produção contínuas, como tendências de mercado, previsão do tempo, etc.
Alguns algoritmos de regressão populares são fornecidos abaixo:
Vantagens e desvantagens da aprendizagem supervisionada
Vantagens:
- Como o aprendizado supervisionado trabalha com o conjunto de dados rotulado, podemos ter uma ideia exata sobre as classes de objetos.
- Esses algoritmos são úteis para prever o resultado com base na experiência anterior.
Desvantagens:
- Esses algoritmos não são capazes de resolver tarefas complexas.
- Pode prever a saída errada se os dados de teste forem diferentes dos dados de treinamento.
- Requer muito tempo computacional para treinar o algoritmo.
Aplicações de Aprendizagem Supervisionada
Algumas aplicações comuns de Aprendizagem Supervisionada são fornecidas abaixo:
Algoritmos de aprendizagem supervisionada são usados na segmentação de imagens. Neste processo, a classificação da imagem é realizada em diferentes dados de imagem com rótulos predefinidos.
Algoritmos supervisionados também são usados na área médica para fins de diagnóstico. Isso é feito usando imagens médicas e dados rotulados anteriores com rótulos para condições de doenças. Com esse processo, a máquina consegue identificar uma doença para os novos pacientes.
2. Aprendizado de máquina não supervisionado
Aprendizagem não supervisionada g é diferente da técnica de aprendizagem supervisionada; como o próprio nome sugere, não há necessidade de supervisão. Isso significa que, no aprendizado de máquina não supervisionado, a máquina é treinada usando o conjunto de dados não rotulado e a máquina prevê a saída sem qualquer supervisão.
Na aprendizagem não supervisionada, os modelos são treinados com dados que não são classificados nem rotulados, e o modelo atua sobre esses dados sem qualquer supervisão.
O principal objetivo do algoritmo de aprendizagem não supervisionado é agrupar ou categorizar o conjunto de dados não classificado de acordo com as semelhanças, padrões e diferenças. As máquinas são instruídas a encontrar os padrões ocultos no conjunto de dados de entrada.
Tomemos um exemplo para entendê-lo de forma mais precisa; suponha que haja uma cesta de imagens de frutas e a insiramos no modelo de aprendizado de máquina. As imagens são totalmente desconhecidas do modelo, e a tarefa da máquina é encontrar os padrões e categorias dos objetos.
estruturas de dados java
Portanto, agora a máquina descobrirá seus padrões e diferenças, como diferença de cor, diferença de formato, e preverá a saída quando for testada com o conjunto de dados de teste.
Categorias de aprendizado de máquina não supervisionado
A aprendizagem não supervisionada pode ser classificada em dois tipos, que são apresentados a seguir:
1) Agrupamento
A técnica de clustering é usada quando queremos encontrar os grupos inerentes aos dados. É uma forma de agrupar os objetos em um cluster de forma que os objetos com mais semelhanças permaneçam em um grupo e tenham menos ou nenhuma semelhança com os objetos de outros grupos. Um exemplo de algoritmo de agrupamento é agrupar os clientes por seu comportamento de compra.
Alguns dos algoritmos de cluster populares são fornecidos abaixo:
2) Associação
O aprendizado de regras de associação é uma técnica de aprendizado não supervisionado, que encontra relações interessantes entre variáveis dentro de um grande conjunto de dados. O principal objetivo deste algoritmo de aprendizagem é encontrar a dependência de um item de dados em outro item de dados e mapear essas variáveis de acordo para que possa gerar o lucro máximo. Este algoritmo é aplicado principalmente em Análise de cesta de compras, mineração de uso da Web, produção contínua , etc.
Alguns algoritmos populares de aprendizagem de regras de associação são Algoritmo Apriori, Eclat, algoritmo de crescimento FP.
Vantagens e desvantagens do algoritmo de aprendizagem não supervisionado
Vantagens:
- Esses algoritmos podem ser usados para tarefas complicadas em comparação com os supervisionados porque funcionam em um conjunto de dados não rotulado.
- Algoritmos não supervisionados são preferíveis para várias tarefas, pois obter o conjunto de dados não rotulado é mais fácil em comparação com o conjunto de dados rotulado.
Desvantagens:
- A saída de um algoritmo não supervisionado pode ser menos precisa porque o conjunto de dados não é rotulado e os algoritmos não são treinados com a saída exata anteriormente.
- Trabalhar com aprendizagem não supervisionada é mais difícil, pois funciona com o conjunto de dados não rotulado que não é mapeado com a saída.
Aplicações de aprendizagem não supervisionada
3. Aprendizagem Semissupervisionada
O aprendizado semissupervisionado é um tipo de algoritmo de aprendizado de máquina que fica entre o aprendizado de máquina supervisionado e não supervisionado . Ele representa o ponto intermediário entre algoritmos de aprendizado supervisionado (com dados de treinamento rotulados) e não supervisionado (sem dados de treinamento rotulados) e usa a combinação de conjuntos de dados rotulados e não rotulados durante o período de treinamento.
A Embora a aprendizagem semissupervisionada seja o meio termo entre a aprendizagem supervisionada e não supervisionada e opere com base em dados que consistem em alguns rótulos, ela consiste principalmente em dados não rotulados. Como os rótulos são caros, mas para fins corporativos, podem ter poucos rótulos. É completamente diferente da aprendizagem supervisionada e não supervisionada, pois se baseia na presença e ausência de rótulos.
classe vs objeto java
Para superar as desvantagens da aprendizagem supervisionada e dos algoritmos de aprendizagem não supervisionada, o conceito de aprendizagem semissupervisionada é introduzido . O principal objetivo da aprendizagem semissupervisionada é usar efetivamente todos os dados disponíveis, em vez de apenas dados rotulados, como na aprendizagem supervisionada. Inicialmente, dados semelhantes são agrupados junto com um algoritmo de aprendizagem não supervisionado e, além disso, ajuda a rotular os dados não rotulados em dados rotulados. Isso ocorre porque os dados rotulados são uma aquisição comparativamente mais cara do que os dados não rotulados.
Podemos imaginar esses algoritmos com um exemplo. O aprendizado supervisionado é quando o aluno está sob a supervisão de um instrutor em casa e na faculdade. Além disso, se esse aluno estiver autoanalisando o mesmo conceito sem qualquer ajuda do instrutor, ele estará sob aprendizagem não supervisionada. No aprendizado semissupervisionado, o aluno deve se revisar após analisar o mesmo conceito sob a orientação de um instrutor da faculdade.
Vantagens e desvantagens da aprendizagem semissupervisionada
Vantagens:
- É simples e fácil de entender o algoritmo.
- É altamente eficiente.
- É usado para resolver desvantagens de algoritmos de aprendizagem supervisionada e não supervisionada.
Desvantagens:
- Os resultados das iterações podem não ser estáveis.
- Não podemos aplicar esses algoritmos a dados em nível de rede.
- A precisão é baixa.
4. Aprendizagem por Reforço
A aprendizagem por reforço funciona em um processo baseado em feedback, no qual um agente de IA (um componente de software) explora automaticamente seu entorno, acertando e seguindo, agindo, aprendendo com as experiências e melhorando seu desempenho. O agente é recompensado por cada boa ação e punido por cada má ação; portanto, o objetivo do agente de aprendizagem por reforço é maximizar as recompensas.
Na aprendizagem por reforço, não há dados rotulados como a aprendizagem supervisionada, e os agentes aprendem apenas com suas experiências.
O processo de aprendizagem por reforço é semelhante ao de um ser humano; por exemplo, uma criança aprende várias coisas por meio de experiências em sua vida cotidiana. Um exemplo de aprendizagem por reforço é jogar um jogo, onde o Jogo é o ambiente, os movimentos de um agente em cada etapa definem estados e o objetivo do agente é obter uma pontuação alta. O agente recebe feedback em termos de punições e recompensas.
Devido à sua forma de funcionamento, a aprendizagem por reforço é empregada em diversas áreas, como Teoria dos jogos, Pesquisa Operacional, Teoria da Informação, sistemas multiagentes.
Um problema de aprendizagem por reforço pode ser formalizado usando Processo de Decisão de Markov (MDP). No MDP, o agente interage constantemente com o ambiente e executa ações; a cada ação, o ambiente responde e gera um novo estado.
Categorias de aprendizagem por reforço
A aprendizagem por reforço é categorizada principalmente em dois tipos de métodos/algoritmos:
projeto de banco de dados em dbms
Casos de uso do mundo real de aprendizagem por reforço
Os algoritmos RL são muito populares em aplicativos de jogos. É usado para obter desempenho sobre-humano. Alguns jogos populares que usam algoritmos RL são AlfaGO e AlfaGO Zero .
O artigo 'Gerenciamento de recursos com aprendizado de reforço profundo' mostrou como usar RL no computador para aprender e agendar automaticamente recursos para esperar por trabalhos diferentes, a fim de minimizar a lentidão média do trabalho.
RL está sendo amplamente utilizado em aplicações de robótica. Os robôs são usados na área industrial e de manufatura, e esses robôs se tornam mais poderosos com o aprendizado por reforço. Existem diferentes indústrias que têm a visão de construir robôs inteligentes usando IA e tecnologia de aprendizado de máquina.
A mineração de texto, uma das grandes aplicações da PNL, está agora sendo implementada com a ajuda do Reinforcement Learning da empresa Salesforce.
Vantagens e desvantagens da aprendizagem por reforço
Vantagens
- Ajuda na resolução de problemas complexos do mundo real que são difíceis de serem resolvidos por técnicas gerais.
- O modelo de aprendizagem da VR é semelhante ao aprendizado do ser humano; portanto, resultados mais precisos podem ser encontrados.
- Ajuda a alcançar resultados a longo prazo.
Desvantagem
- Algoritmos RL não são preferidos para problemas simples.
- Os algoritmos RL requerem enormes dados e cálculos.
- Demasiada aprendizagem por reforço pode levar a uma sobrecarga de estados que pode enfraquecer os resultados.
A maldição da dimensionalidade limita o aprendizado por reforço para sistemas físicos reais.