14 tipos diferentes de aprendizado no aprendizado de máquina | Alex Souza 14 tipos diferentes de aprendizado no aprendizado de máquina – Alex Souza
IA (Inteligência Artificial), Machine Learning
14 tipos diferentes de aprendizado no aprendizado de máquina
Posted on 14/11/2019 15/11/2019 by Alex Souza in IA (Inteligência Artificial), Machine Learning
Todos os direitos reservados ao autor: Jason Brownlee (artigo original em inglês)
O aprendizado de máquina é um grande campo de estudo que se sobrepõe e herda idéias de muitos campos relacionados, como inteligência artificial.
O foco do campo é aprender, ou seja, adquirir habilidades ou conhecimentos a partir da experiência. Geralmente, isso significa sintetizar conceitos úteis a partir de dados históricos.
Como tal, existem muitos tipos diferentes de aprendizado que você pode encontrar como profissional no campo do aprendizado de máquina: de campos de estudo completos a técnicas específicas.
Neste post, você descobrirá uma introdução suave aos diferentes tipos de aprendizado que você pode encontrar no campo de aprendizado de máquina.
Depois de ler este post, escrito originalmente por: Jason Brownlee, você saberá:
Campos de estudo, como aprendizado supervisionado, não supervisionado e de reforço.
Tipos de aprendizado híbridos, como aprendizado semi-supervisionado e auto-supervisionado.
Técnicas amplas, como aprendizado ativo, online e por transferência.
Dado que o foco do campo de aprendizado de máquina é o " aprendizado ", existem muitos tipos que você pode encontrar como praticante.
Alguns tipos de aprendizado descrevem subcampos completos de estudo, compostos por muitos tipos diferentes de algoritmos, como " aprendizado supervisionado ". Outros descrevem técnicas poderosas que você pode usar em seus projetos, como " transferência de aprendizado ".
Talvez haja 14 tipos de aprendizado com os quais você deve estar familiarizado como praticante de aprendizado de máquina; eles são:
1. Aprendizado supervisionado (Supervised Learning)
2. Aprendizagem não supervisionada (Unsupervised Learning)
3. Aprendizado por Reforço (Reinforcement Learning)
Problemas de aprendizagem híbrida
4. Aprendizagem Semi-Supervisionada (Semi-Supervised Learning)
5. Aprendizagem auto-supervisionada (Self-Supervised Learning)
6. Aprendizagem em várias instâncias (Multi-Instance Learning)
7. Aprendizagem Indutiva (Inductive Learning)
8. Inferência dedutiva (Deductive Inference)
9. Aprendizagem Transdutiva (Transductive Learning)
10. Aprendizagem multitarefa (Multi-Task Learning)
11. Aprendizado ativo (Active Learning)
12. Aprendizagem online (Online Learning)
13. Transferência de Aprendizado (Transfer Learning)
14. Aprendizagem em conjunto (Ensemble Learning)
Nas seções a seguir, é examinado mais de perto cada uma delas.
Primeiro, examinaremos mais de perto três tipos principais de problemas de aprendizado no aprendizado de máquina: aprendizado supervisionado, não supervisionado e de reforço.
1. Aprendizado supervisionado
O aprendizado supervisionado descreve uma classe de problemas que envolve o uso de um modelo para aprender um mapeamento entre exemplos de entrada e a variável de destino.
Os aplicativos nos quais os dados de treinamento compreendem exemplos dos vetores de entrada, juntamente com seus vetores-alvo correspondentes, são conhecidos como problemas de aprendizado supervisionado.
– Página 3, Reconhecimento de padrões e aprendizado de máquina , 2006.
Os modelos são adequados aos dados de treinamento compostos por entradas e saídas e usados ​​para fazer previsões em conjuntos de testes, onde apenas as entradas são fornecidas e as saídas do modelo são comparadas às variáveis ​​de destino retidas e usadas para estimar a habilidade do modelo.
O aprendizado é uma busca no espaço de hipóteses possíveis por uma que tenha bom desempenho, mesmo em novos exemplos além do conjunto de treinamento. Para medir a precisão de uma hipótese, oferecemos um conjunto de exemplos de teste que são distintos do conjunto de treinamento.
– Página 695, Inteligência artificial: uma abordagem moderna , 3ª edição, 2015.
Existem dois tipos principais de problemas de aprendizado supervisionado: eles são a classificação que envolve prever um rótulo de classe e a regressão que envolve prever um valor numérico.
Classificação : problema de aprendizado supervisionado que envolve a previsão de um rótulo de classe.
Regressão : problema de aprendizado supervisionado que envolve prever um rótulo numérico.
Os problemas de classificação e regressão podem ter uma ou mais variáveis ​​de entrada e as variáveis ​​de entrada podem ser de qualquer tipo de dados, como numérico ou categórico.
Um exemplo de um problema de classificação seria o conjunto de dados de dígitos manuscritos do MNIST, em que as entradas são imagens de dígitos manuscritos (dados de pixel) e a saída é um rótulo de classe para o dígito que a imagem representa (números de 0 a 9).
Um exemplo de um problema de regressão seria o conjunto de dados de preços da habitação em Boston, onde as entradas são variáveis ​​que descrevem uma vizinhança e a saída é um preço da habitação em dólares.
Alguns algoritmos de aprendizado de máquina são descritos como algoritmos de aprendizado de máquina " supervisionados ", pois são projetados para problemas de aprendizado de máquina supervisionados. Exemplos populares incluem: árvores de decisão , máquinas de vetores de suporte e muito mais.
Nosso objetivo é encontrar uma aproximação útil f (x) à função f (x) subjacente à relação preditiva entre as entradas e saídas
– Página 28, Os elementos de aprendizagem estatística: mineração de dados, inferência e previsão , 2ª edição, 2016.
Os algoritmos são referidos como " supervisionados " porque aprendem fazendo previsões com exemplos de dados de entrada, e os modelos são supervisionados e corrigidos por meio de um algoritmo para prever melhor os resultados esperados no conjunto de dados de treinamento.
O termo aprendizado supervisionado se origina da visão do destino que está sendo fornecido por um instrutor ou professor que mostra ao sistema de aprendizado de máquina o que fazer.
– Página 105, Deep Learning , 2016.
Alguns algoritmos podem ser projetados especificamente para classificação (como regressão logística ) ou regressão (como regressão linear) e alguns podem ser usados ​​para ambos os tipos de problemas com pequenas modificações (como redes neurais artificiais).
O aprendizado não supervisionado descreve uma classe de problemas que envolve o uso de um modelo para descrever ou extrair relacionamentos nos dados.
Comparado ao aprendizado supervisionado, o aprendizado não supervisionado opera apenas com os dados de entrada, sem saídas ou variáveis ​​de destino. Como tal, a aprendizagem não supervisionada não tem um professor corrigindo o modelo, como no caso da aprendizagem supervisionada.
No aprendizado não supervisionado, não há instrutor ou professor, e o algoritmo deve aprender a entender os dados sem este guia.
Existem muitos tipos de aprendizado não supervisionado, embora existam dois problemas principais que são freqüentemente encontrados por um profissional: eles são agrupamentos que envolvem a localização de grupos na estimativa de dados e a densidade que envolve o resumo da distribuição de dados.
Clustering: problema de aprendizado não supervisionado que envolve a localização de grupos de dados.
Estimativa de densidade : problema de aprendizado não supervisionado que envolve resumir a distribuição de dados.
Um exemplo de algoritmo de clustering é k-Means, em que k se refere ao número de clusters a serem descobertos nos dados. Um exemplo de algoritmo de estimativa de densidade é o Kernel Density Estimation, que envolve o uso de pequenos grupos de amostras de dados intimamente relacionadas para estimar a distribuição de novos pontos no espaço do problema.
A tarefa de aprendizado não supervisionada mais comum é o agrupamento: detectando agrupamentos potencialmente úteis de exemplos de entrada. Por exemplo, um agente de táxi pode desenvolver gradualmente um conceito de "bons dias de trânsito" e "maus dias de trânsito" sem nunca receber exemplos rotulados de cada um por um professor.
– Páginas 694-695, Inteligência Artificial: Uma Abordagem Moderna , 3ª edição, 2015.
O agrupamento e a estimativa de densidade podem ser realizados para aprender sobre os padrões nos dados.
Métodos adicionais não supervisionados também podem ser usados, como visualização que envolve gráficos ou plotagem de dados de diferentes maneiras e métodos de projeção que envolvem a redução da dimensionalidade dos dados.
Visualização : problema de aprendizado não supervisionado que envolve a criação de gráficos.
Projeção : problema de aprendizado não supervisionado que envolve a criação de representações de dados em dimensões inferiores.
Um exemplo de uma técnica de visualização seria uma matriz de gráficos de dispersão que cria um gráfico de dispersão de cada par de variáveis ​​no conjunto de dados. Um exemplo de um método de projeção seria a Análise de Componentes Principais, que envolve resumir um conjunto de dados em termos de valores próprios e vetores próprios, com as dependências lineares removidas.
O objetivo desses problemas de aprendizado não supervisionado pode ser descobrir grupos de exemplos semelhantes nos dados, onde é chamado de cluster, ou determinar a distribuição dos dados no espaço de entrada, conhecido como estimativa de densidade, ou projetar os dados de um ponto alto. – espaço dimensional até duas ou três dimensões para fins de visualização.
3. Aprendizado por Reforço
O aprendizado por reforço descreve uma classe de problemas em que um agente opera em um ambiente e deve aprender a operar usando feedback.
Aprender por reforço é aprender o que fazer – como mapear situações para ações – para maximizar um sinal de recompensa numérico. O aluno não é informado sobre quais ações executar, mas, em vez disso, deve descobrir quais ações geram mais recompensa, tentando-as.
– Página 1, Aprendizagem por reforço: uma introdução , 2ª edição, 2018.
O uso de um ambiente significa que não há um conjunto de dados de treinamento fixo, mas uma meta ou conjunto de metas que um agente deve atingir, ações que eles podem executar e feedback sobre o desempenho em relação à meta.
Alguns algoritmos de aprendizado de máquina não experimentam apenas um conjunto de dados fixo. Por exemplo, algoritmos de aprendizado por reforço interagem com um ambiente, para que haja um ciclo de feedback entre o sistema de aprendizado e suas experiências.
É semelhante ao aprendizado supervisionado, pois o modelo tem alguma resposta para aprender, embora o feedback possa ser atrasado e estatisticamente barulhento, tornando difícil para o agente ou modelo conectar causa e efeito.
Um exemplo de um problema de reforço é jogar um jogo em que o agente tem o objetivo de obter uma pontuação alta e pode fazer jogadas no jogo e receber feedback em termos de punições ou recompensas.
Em muitos domínios complexos, o aprendizado por reforço é a única maneira viável de treinar um programa para executar em níveis altos. Por exemplo, no jogo, é muito difícil para um ser humano fornecer avaliações precisas e consistentes de um grande número de posições, o que seria necessário para treinar uma função de avaliação diretamente a partir de exemplos. Em vez disso, o programa pode ser informado quando ganhou ou perdeu e pode usar essas informações para aprender uma função de avaliação que fornece estimativas razoavelmente precisas da probabilidade de vitória de qualquer posição.
– Página 831, Inteligência artificial: uma abordagem moderna , 3ª edição, 2015.
Resultados recentes impressionantes incluem o uso de reforço no AlphaGo, do Google, em desempenho superior ao principal player Go do mundo.
Alguns exemplos populares de algoritmos de aprendizado por reforço incluem aprendizado Q, aprendizado por diferença temporal e aprendizado profundo por reforço.
As linhas entre o aprendizado não supervisionado e o supervisionado são embaçadas, e há muitas abordagens híbridas que derivam de cada campo de estudo.
Nesta seção, examinaremos mais de perto alguns dos campos de estudo híbridos mais comuns: aprendizado semi-supervisionado, auto-supervisionado e com várias instâncias.
4. Aprendizagem Semi-Supervisionada
O aprendizado semi-supervisionado é o aprendizado supervisionado, onde os dados de treinamento contêm muito poucos exemplos rotulados e um grande número de exemplos não rotulados.
O objetivo de um modelo de aprendizado semi-supervisionado é fazer uso efetivo de todos os dados disponíveis, não apenas dos dados rotulados, como no aprendizado supervisionado.
No aprendizado semi-supervisionado, recebemos alguns exemplos rotulados e devemos fazer o que podemos com uma grande coleção de exemplos não rotulados. Até os próprios rótulos podem não ser as verdades oraculares que esperamos.
Fazer uso efetivo de dados não rotulados pode exigir o uso ou inspiração de métodos não supervisionados, como agrupamento e estimativa de densidade. Depois que grupos ou padrões são descobertos, métodos ou idéias supervisionados do aprendizado supervisionado podem ser usados ​​para rotular os exemplos não rotulados ou aplicar rótulos a representações não rotuladas posteriormente usadas para previsão.
O aprendizado não supervisionado pode fornecer dicas úteis sobre como agrupar exemplos no espaço de representação. Exemplos que agrupam firmemente no espaço de entrada devem ser mapeados para representações semelhantes.
– Página 243, Deep Learning , 2016.
É comum que muitos problemas de aprendizado supervisionado do mundo real sejam exemplos de problemas de aprendizado semi-supervisionado, considerando a despesa ou o custo computacional dos exemplos de rotulagem. Por exemplo, a classificação de fotografias requer um conjunto de dados de fotografias que já foram rotuladas por operadores humanos.
Muitos problemas dos campos da visão computacional (dados de imagem), processamento de linguagem natural (dados de texto) e reconhecimento automático de fala (dados de áudio) se enquadram nessa categoria e não podem ser facilmente resolvidos usando métodos padrão de aprendizado supervisionado.
… Em muitas aplicações práticas, os dados rotulados são muito escassos, mas os dados não rotulados são abundantes. O aprendizado "semissupervisionado" tenta melhorar a precisão do aprendizado supervisionado, explorando informações em dados não rotulados. Isso parece mágica, mas pode funcionar!
– Página 467, Mineração de dados: ferramentas e técnicas práticas de aprendizado de máquina , 4ª edição, 2016.
5. Aprendizagem auto-supervisionada
O aprendizado auto-supervisionado refere-se a um problema de aprendizado não supervisionado que é enquadrado como um problema de aprendizado supervisionado, a fim de aplicar algoritmos de aprendizado supervisionado para resolvê-lo.
Os algoritmos de aprendizado supervisionado são usados ​​para resolver uma tarefa alternativa ou pretexto, cujo resultado é um modelo ou representação que pode ser usado na solução do problema de modelagem original (real).
A estrutura de aprendizado auto-supervisionado requer apenas dados não rotulados para formular uma tarefa de aprendizado de pré-texto, como prever a rotação de contexto ou imagem, para a qual um objetivo de destino pode ser calculado sem supervisão.
– Revisitando o aprendizado de representação visual auto-supervisionada , 2019.
Um exemplo comum de aprendizado auto-supervisionado é a visão por computador, onde um corpus de imagens não rotuladas está disponível e pode ser usado para treinar um modelo supervisionado, como fazer imagens em escala de cinza e ter um modelo para prever uma representação de cores (colorização) ou remover blocos do imagem e ter um modelo de prever as peças ausentes (pintura).
Na aprendizagem auto-supervisionada discriminativa, que é o foco principal deste trabalho, um modelo é treinado em uma tarefa auxiliar ou de "pretexto" para a qual a verdade básica está disponível gratuitamente. Na maioria dos casos, a tarefa de pretexto envolve prever uma parte oculta dos dados (por exemplo, prever cores para imagens em escala de cinza
– Aprendizagem de representação visual auto-supervisionada de dimensionamento e benchmarking , 2019.
Um exemplo geral de algoritmo de aprendizado auto-supervisionado são os auto- codificadores . Esse é um tipo de rede neural usada para criar uma representação compacta ou compactada de uma amostra de entrada. Eles conseguem isso por meio de um modelo que possui um codificador e um elemento decodificador separados por um gargalo que representa a representação compacta interna da entrada.
Um autoencoder é uma rede neural treinada para tentar copiar sua entrada para sua saída. Internamente, possui uma camada oculta h que descreve um código usado para representar a entrada.
– Página 502, Deep Learning , 2016.
Esses modelos de auto-codificador são treinados fornecendo a entrada para o modelo como entrada e saída de destino, exigindo que o modelo reproduza a entrada codificando-a primeiro em uma representação compactada e decodificando-a de volta ao original. Uma vez treinado, o decodificador é descartado e o codificador é usado conforme necessário para criar representações compactas de entrada.
Embora os auto-codificadores sejam treinados usando um método de aprendizado supervisionado, eles resolvem um problema de aprendizado não supervisionado, ou seja, são um tipo de método de projeção para reduzir a dimensionalidade dos dados de entrada.
Tradicionalmente, os auto-codificadores eram usados ​​para redução de dimensionalidade ou aprendizado de recursos.
Outro exemplo de aprendizado auto-supervisionado são as redes contraditórias generativas , ou GANs. Esses são modelos generativos que são mais comumente usados ​​para criar fotografias sintéticas usando apenas uma coleção de exemplos não identificados do domínio de destino.
Os modelos GAN são treinados indiretamente por meio de um modelo discriminador separado que classifica exemplos de fotos do domínio como reais ou falsos (gerados), cujo resultado é realimentado para atualizar o modelo GAN e incentivá-lo a gerar fotos mais realistas na próxima iteração .
A rede de geradores produz diretamente amostras […]. Seu adversário, a rede discriminadora, tenta distinguir entre amostras retiradas dos dados de treinamento e amostras retiradas do gerador. O discriminador emite um valor de probabilidade dado por d (x; θ (d)), indicando a probabilidade de que x seja um exemplo real de treinamento, em vez de uma amostra falsa retirada do modelo.
– Página 699, Deep Learning , 2016.
6. Aprendizagem em várias instâncias
O aprendizado em várias instâncias é um problema de aprendizado supervisionado, em que exemplos individuais não são rotulados; em vez disso, sacos ou grupos de amostras são rotulados.
No aprendizado em várias instâncias, uma coleção inteira de exemplos é rotulada como contendo ou não um exemplo de classe, mas os membros individuais da coleção não são rotulados.
– Página 106, Aprendizado profundo , 2016.
As instâncias estão em " bolsas " em vez de em conjuntos, porque uma determinada instância pode estar presente uma ou mais vezes, por exemplo, duplicatas.
A modelagem envolve o uso de conhecimento de que uma ou algumas das instâncias de uma bolsa estão associadas a um rótulo de destino e para prever o rótulo de novas bolsas no futuro, dada a composição de vários exemplos não identificados.
No aprendizado supervisionado em várias instâncias, um rótulo de classe é associado a cada bolsa, e o objetivo da aprendizagem é determinar como a classe pode ser inferida a partir das instâncias que compõem a bolsa.
– Página 156, Mineração de dados: ferramentas e técnicas práticas de aprendizado de máquina , 4ª edição, 2016.
Métodos simples, como atribuir rótulos de classe a instâncias individuais e usar algoritmos de aprendizado supervisionado padrão, geralmente funcionam como um bom primeiro passo.
Inferência refere-se a alcançar um resultado ou decisão.
No aprendizado de máquina, ajustar um modelo e fazer uma previsão são os dois tipos de inferência.
Existem diferentes paradigmas de inferência que podem ser usados ​​como uma estrutura para entender como alguns algoritmos de aprendizado de máquina funcionam ou como alguns problemas de aprendizado podem ser abordados.
Alguns exemplos de abordagens para o aprendizado são aprendizado e inferência indutiva, dedutiva e transdutiva.
7. Aprendizagem Indutiva
A aprendizagem indutiva envolve o uso de evidências para determinar o resultado.
O raciocínio indutivo refere-se ao uso de casos específicos para determinar resultados gerais, por exemplo, específicos para gerais.
A maioria dos modelos de aprendizado de máquina aprende usando um tipo de inferência indutiva ou raciocínio indutivo, onde regras gerais (o modelo) são aprendidas a partir de exemplos históricos específicos (os dados).
… o problema da indução, que é o problema de como tirar conclusões gerais sobre o futuro a partir de observações específicas do passado.
– Página 77, Aprendizado de máquina: uma perspectiva probabilística , 2012.
Ajustar um modelo de aprendizado de máquina é um processo de indução. O modelo é uma generalização dos exemplos específicos no conjunto de dados de treinamento.
Um modelo ou hipótese é feita sobre o problema usando os dados de treinamento, e acredita-se que ele retenha novos dados invisíveis posteriormente quando o modelo for usado.
Na falta de informações adicionais, nossa suposição é de que a melhor hipótese em relação a instâncias invisíveis é a hipótese que melhor se ajusta aos dados de treinamento observados. Esta é a suposição fundamental da aprendizagem indutiva …
– Página 23, Machine Learning , 1997.
8. Inferência dedutiva
Dedução ou inferência dedutiva refere-se ao uso de regras gerais para determinar resultados específicos.
Podemos entender melhor a indução contrastando-a com dedução.
Dedução é o inverso da indução. Se a indução está indo do específico para o geral, a dedução está indo do geral para o específico.
… a simples observação de que a indução é apenas o inverso da dedução!
– Página 291, Machine Learning , 1997.
A dedução é um tipo de raciocínio de cima para baixo que busca que todas as premissas sejam atendidas antes de determinar a conclusão, enquanto a indução é um tipo de raciocínio de baixo para cima que utiliza os dados disponíveis como evidência para um resultado.
No contexto do aprendizado de máquina, uma vez que usamos a indução para ajustar um modelo em um conjunto de dados de treinamento, o modelo pode ser usado para fazer previsões. O uso do modelo é um tipo de dedução ou inferência dedutiva.
9. Aprendizagem Transdutiva
A transdução ou a aprendizagem transdutiva é usada no campo da teoria da aprendizagem estatística para se referir à previsão de exemplos específicos, dados exemplos específicos de um domínio.
É diferente da indução que envolve aprender regras gerais a partir de exemplos específicos, por exemplo, específicos para específicos.
Indução, derivando a função dos dados fornecidos. Dedução, derivando os valores da função fornecida para pontos de interesse. Transdução, derivando os valores da função desconhecida para pontos de interesse dos dados fornecidos.
– Página 169, A natureza da teoria estatística da aprendizagem , 1995.
Diferentemente da indução, nenhuma generalização é necessária; em vez disso, exemplos específicos são usados ​​diretamente. Na verdade, isso pode ser um problema mais simples que a indução a ser resolvida.
O modelo de estimativa do valor de uma função em um determinado ponto de interesse descreve um novo conceito de inferência: movendo-se do particular para o particular. Chamamos esse tipo de inferência de inferência transdutiva. Observe que esse conceito de inferência aparece quando se deseja obter o melhor resultado com uma quantidade restrita de informações.
Um exemplo clássico de um algoritmo transdutivo é o algoritmo k-vizinhos mais próximos que não modela os dados de treinamento, mas os usa diretamente sempre que uma previsão é necessária.
Para mais informações sobre o tópico da transdução, consulte o tutorial:
Introdução suave à transdução no aprendizado de máquina
Indução, dedução e transdução contrastantes:
Podemos contrastar esses três tipos de inferência no contexto do aprendizado de máquina.
Indução : Aprendendo um modelo geral a partir de exemplos específicos.
Dedução : usando um modelo para fazer previsões.
Transdução : usando exemplos específicos para fazer previsões.
A imagem abaixo resume bem essas três abordagens diferentes.
Existem muitas técnicas descritas como tipos de aprendizado.
Nesta seção, examinaremos mais de perto alguns dos métodos mais comuns.
Isso inclui aprendizado com várias tarefas, ativo, online, transferência e conjunto.
10. Aprendizagem multitarefa
O aprendizado de múltiplas tarefas é um tipo de aprendizado supervisionado que envolve o ajuste de um modelo em um conjunto de dados que aborda vários problemas relacionados.
Isso envolve a criação de um modelo que possa ser treinado em várias tarefas relacionadas, de forma que o desempenho do modelo seja aprimorado através do treinamento em todas as tarefas, em comparação com o treinamento em uma única tarefa.
O aprendizado de múltiplas tarefas é uma maneira de melhorar a generalização reunindo os exemplos (que podem ser vistos como restrições suaves impostas aos parâmetros) decorrentes de várias tarefas.
– Página 244, Deep Learning , 2016.
O aprendizado de várias tarefas pode ser uma abordagem útil para a solução de problemas quando há uma abundância de dados de entrada rotulados para uma tarefa que pode ser compartilhada com outra tarefa com muito menos dados rotulados.
… Podemos querer aprender vários modelos relacionados ao mesmo tempo, o que é conhecido como aprendizado de múltiplas tarefas. Isso nos permitirá "emprestar força estatística" de tarefas com muitos dados e compartilhá-lo com tarefas com poucos dados.
Página 231, Aprendizado de Máquina: Uma Perspectiva Probabilística , 2012.
Por exemplo, é comum que um problema de aprendizado de múltiplas tarefas envolva os mesmos padrões de entrada que podem ser usados ​​para várias saídas diferentes ou problemas de aprendizado supervisionado. Nesta configuração, cada saída pode ser prevista por uma parte diferente do modelo, permitindo que o núcleo do modelo seja generalizado em cada tarefa para as mesmas entradas.
Da mesma forma que exemplos de treinamento adicionais pressionam mais os parâmetros do modelo em relação a valores que generalizam bem, quando parte de um modelo é compartilhado entre tarefas, essa parte do modelo é mais restrita a bons valores (supondo que o compartilhamento seja justificado ), geralmente produzindo uma melhor generalização.
Um exemplo popular de aprendizado de múltiplas tarefas é o local em que a mesma incorporação de palavras é usada para aprender uma representação distribuída de palavras no texto que é então compartilhada entre várias tarefas de aprendizado supervisionadas de processamento de linguagem natural diferentes.
11. Aprendizado ativo
O aprendizado ativo é uma técnica em que o modelo pode consultar um operador de usuário humano durante o processo de aprendizado para resolver ambigüidades durante o processo de aprendizado.
Aprendizado ativo: o aprendiz coleta de forma adaptativa ou interativa exemplos de treinamento, geralmente consultando um oráculo para solicitar rótulos para novos pontos.
– Página 7, Fundamentos do aprendizado de máquina , 2ª edição, 2018.
A aprendizagem ativa é um tipo de aprendizagem supervisionada e busca atingir o mesmo ou melhor desempenho da chamada aprendizagem supervisionada " passiva ", embora seja mais eficiente sobre quais dados são coletados ou usados ​​pelo modelo.
A idéia principal por trás do aprendizado ativo é que um algoritmo de aprendizado de máquina pode obter maior precisão com menos rótulos de treinamento se for permitido escolher os dados a partir dos quais ele aprende. Um aluno ativo pode fazer consultas, geralmente na forma de instâncias de dados não identificadas para serem rotuladas por um oráculo (por exemplo, um anotador humano).
– Pesquisa de literatura de aprendizado ativo , 2009.
Não é irracional ver a aprendizagem ativa como uma abordagem para resolver problemas de aprendizagem semi-supervisionados ou como um paradigma alternativo para os mesmos tipos de problemas.
… vemos que o aprendizado ativo e o aprendizado semi-supervisionado atacam o mesmo problema de direções opostas. Enquanto os métodos semi-supervisionados exploram o que o aluno pensa que conhece sobre os dados não rotulados, os métodos ativos tentam explorar os aspectos desconhecidos. Portanto, é natural pensar em combinar os dois
O aprendizado ativo é uma abordagem útil quando não há muitos dados disponíveis e novos dados são caros para coletar ou rotular.
O processo de aprendizado ativo permite que a amostragem do domínio seja direcionada de maneira a minimizar o número de amostras e maximizar a eficácia do modelo.
O aprendizado ativo é frequentemente usado em aplicativos em que os rótulos são caros para obter, por exemplo, aplicativos de biologia computacional.
12. Aprendizagem on-line
O aprendizado on-line envolve o uso dos dados disponíveis e a atualização do modelo diretamente antes que uma previsão seja necessária ou após a última observação.
O aprendizado on-line é apropriado para os problemas em que as observações são fornecidas ao longo do tempo e onde a distribuição de probabilidade das observações também deve mudar ao longo do tempo. Portanto, espera-se que o modelo mude com a mesma frequência para capturar e aproveitar essas alterações.
Tradicionalmente, o aprendizado de máquina é realizado offline, o que significa que temos um lote de dados e otimizamos uma equação […] No entanto, se tivermos dados de streaming, precisamos executar o aprendizado online, para que possamos atualizar nossas estimativas a cada novo ponto de dados. chega em vez de esperar até o "fim" (o que pode nunca ocorrer).
– Página 261, Aprendizado de máquina: uma perspectiva probabilística , 2012.
Essa abordagem também é usada por algoritmos em que pode haver mais observações do que cabem razoavelmente na memória; portanto, o aprendizado é realizado de forma incremental em relação às observações, como um fluxo de dados.
O aprendizado on-line é útil quando os dados podem estar mudando rapidamente ao longo do tempo. Também é útil para aplicativos que envolvem uma grande coleção de dados em constante crescimento, mesmo que as mudanças sejam graduais.
– Página 753, Inteligência artificial: uma abordagem moderna , 3ª edição, 2015.
Geralmente, o aprendizado on-line procura minimizar o " arrependimento " , que é o desempenho do modelo em comparação com o desempenho que teria se todas as informações disponíveis estivessem disponíveis em lote.
Na comunidade teórica de aprendizado de máquina, o objetivo usado no aprendizado on-line é o arrependimento, que é a perda média incorrida em relação ao melhor que poderíamos ter obtido em retrospectiva usando um único valor de parâmetro fixo
– Página 262, Aprendizado de máquina: uma perspectiva probabilística , 2012.
Um exemplo de aprendizado on-line é o chamado declínio estocástico ou on-line, usado para ajustar uma rede neural artificial.
O fato de que a descida do gradiente estocástico minimiza o erro de generalização é mais fácil de ver no caso de aprendizado on-line, em que exemplos ou minibatches são retirados de um fluxo de dados.
– Página 281, Deep Learning , 2016.
13. Transferência de Aprendizado
O aprendizado por transferência é um tipo de aprendizado em que um modelo é treinado pela primeira vez em uma tarefa e, em seguida, parte ou todo o modelo é usado como ponto de partida para uma tarefa relacionada.
Na aprendizagem por transferência, o aluno deve executar duas ou mais tarefas diferentes, mas assumimos que muitos dos fatores que explicam as variações em P1 são relevantes para as variações que precisam ser capturadas para a aprendizagem P2.
– Página 536, Deep Learning , 2016.
É uma abordagem útil para problemas em que existe uma tarefa relacionada à principal tarefa de interesse e a tarefa relacionada possui uma grande quantidade de dados.
É diferente do aprendizado multitarefa, pois as tarefas são aprendidas seqüencialmente no aprendizado transferido, enquanto o aprendizado multitarefa busca um bom desempenho em todas as tarefas consideradas por um único modelo ao mesmo tempo em paralelo.
… Pré-treine uma rede convolucional profunda com 8 camadas de pesos em um conjunto de tarefas (um subconjunto das categorias de objetos 1000 ImageNet) e, em seguida, inicialize uma rede do mesmo tamanho com as primeiras k camadas da primeira rede. Todas as camadas da segunda rede (com as camadas superiores inicializadas aleatoriamente) são treinadas em conjunto para executar um conjunto diferente de tarefas (outro subconjunto das categorias de objetos 1000 ImageNet), com menos exemplos de treinamento do que no primeiro conjunto de tarefas.
– Página 325, Deep Learning , 2016.
Um exemplo é a classificação de imagens, onde um modelo preditivo, como uma rede neural artificial, pode ser treinado em um grande corpus de imagens gerais, e os pesos do modelo podem ser usados ​​como ponto de partida ao treinar em um conjunto de dados menor e mais específico , como cães e gatos . Os recursos já aprendidos pelo modelo na tarefa mais ampla, como extrair linhas e padrões, serão úteis na nova tarefa relacionada.
Se houver significativamente mais dados na primeira configuração (amostrada em P1), isso pode ajudar a aprender representações úteis para generalizar rapidamente com apenas alguns poucos exemplos retirados de P2. Muitas categorias visuais compartilham noções de baixo nível de arestas e formas visuais, os efeitos de mudanças geométricas, mudanças na iluminação etc.
Como observado, o aprendizado por transferência é particularmente útil em modelos treinados de forma incremental e um modelo existente pode ser usado como ponto de partida para o treinamento contínuo, como redes de aprendizado profundo.
Para saber mais sobre o tópico de transferência de aprendizado, consulte o tutorial:
Uma introdução suave à transferência de aprendizado para aprendizado profundo
14. Aprendizagem em conjunto
A aprendizagem por conjunto é uma abordagem em que dois ou mais modos se encaixam nos mesmos dados e as previsões de cada modelo são combinadas.
O campo de aprendizado do conjunto fornece muitas maneiras de combinar as previsões dos membros do conjunto, incluindo pesos e pesos uniformes escolhidos em um conjunto de validação.
– Página 472, Deep Learning , 2016.
O objetivo do aprendizado de conjunto é obter melhor desempenho com o conjunto de modelos em comparação com qualquer modelo individual. Isso envolve decidir como criar modelos usados ​​no conjunto e como melhor combinar as previsões dos membros do conjunto.
A aprendizagem por conjunto pode ser dividida em duas tarefas: desenvolver uma população de alunos de base a partir dos dados de treinamento e combiná-los para formar o preditor composto.
– Página 605, Os elementos da aprendizagem estatística: mineração de dados, inferência e previsão , 2ª edição, 2016.
A aprendizagem por conjunto é uma abordagem útil para melhorar a habilidade preditiva em um domínio do problema e reduzir a variação de algoritmos de aprendizagem estocástica, como redes neurais artificiais.
Alguns exemplos de algoritmos populares de aprendizado de conjuntos incluem: média ponderada , generalização empilhada ( empilhamento ) e agregação de autoinicialização ( empacotamento ).
O ensacamento, o aumento e o empilhamento foram desenvolvidos nas últimas duas décadas e seu desempenho é surpreendentemente bom. Os pesquisadores de aprendizado de máquina têm se esforçado para entender o porquê.
– Página 480, Mineração de dados: ferramentas e técnicas práticas de aprendizado de máquina , 4ª edição, 2016.
Para saber mais sobre o tópico de aprendizagem por conjunto, consulte o tutorial:
Métodos de aprendizagem de conjuntos para redes neurais de aprendizado profundo
Esta seção fornece mais recursos sobre o tópico, se você estiver pensando em ir mais fundo.
Reinforcement Learning: An Introduction, 2nd edition, 2018.
The Elements of Statistical Learning: Data Mining, Inference, and Prediction, 2nd edition, 2016.
The Nature of Statistical Learning Theory, 1995.
Foundations of Machine Learning, 2nd edition, 2018.
Artificial Intelligence: A Modern Approach, 3rd edition, 2015.
Revisiting Self-Supervised Visual Representation Learning, 2019.
Active Learning Literature Survey, 2009.
Why Do Machine Learning Algorithms Work on New Data?
Gentle Introduction to Transduction in Machine Learning
Yann LeCun @EPFL – "Self-supervised learning: could machines learn like humans?" 2018
Supervised learning, Wikipedia.
Unsupervised learning, Wikipedia.
Reinforcement learning, Wikipedia.
Semi-supervised learning, Wikipedia.
Multi-task learning, Wikipedia.
Multiple instance learning, Wikipedia.
Inductive reasoning, Wikipedia.
Deductive reasoning, Wikipedia.
Transduction (machine learning), Wikipedia.
Active learning (machine learning), Wikipedia.
Online machine learning, Wikipedia.
Transfer learning, Wikipedia.
Neste post, você descobriu uma introdução suave aos diferentes tipos de aprendizado que você pode encontrar no campo de aprendizado de máquina.