Aprendizagem semissupervisionada é um ramo do aprendizado de máquina que combina aprendizado supervisionado e aprendizado não supervisionado usando dados rotulados e não rotulados para treinar modelos de inteligência artificial (IA) para tarefas de classificação e regressão.
Embora o aprendizado semi-supervisionado geralmente seja utilizado para os mesmos casos de uso em que se poderia usar métodos de aprendizado supervisionado, ele se distingue por diversas técnicas que incorporam dados não rotulados ao treinamento do modelo, além dos dados rotulados necessários para o aprendizado supervisionado convencional.
Os métodos de aprendizado semissupervisionado são especialmente relevantes em situações em que obter uma quantidade suficiente de dados rotulados é proibitivamente difícil ou caro, mas grandes quantidades de dados não rotulados são relativamente fáceis de adquirir. Nesses cenários, nem os métodos de aprendizagem totalmente supervisionados nem não supervisionados fornecerão soluções adequadas.
Os modelos de IA de treinamento para tarefas de previsão, como classificação ou regressão, normalmente exigem dados rotulados: pontos de dados anotados que fornecem o contexto necessário e demonstram as previsões corretas (saída) para cada input de amostra. Durante o treinamento, uma função de perda mede a diferença (perda) entre as previsões do modelo para uma determinada entrada e o “dado de referência” fornecido pelo rótulo do input. Os modelos aprendem a partir desses exemplos rotulados usando técnicas como descendente gradiente que atualizam os pesos do modelo para minimizar a perda. Como esse processo de aprendizado de máquina envolve ativamente humanos, ele é chamado de aprendizagem “supervisionada”.
A rotulação adequada de dados se torna cada vez mais trabalhosa para tarefas complexas de IA. Por exemplo, para treinar um modelo de classificação de imagem para diferenciar entre carros e motocicletas, centenas (se não milhares) de imagens de treinamento devem ser rotuladas como “carro” ou “motocicleta”. Em uma tarefa de computer vision mais detalhada, como detecção de objetos, os humanos devem anotar não só os objetos contidos em cada imagem, mas onde cada um está localizado. Em tarefas ainda mais detalhadas, como segmentação de imagem, os rótulos de dados devem anotar limites pixel a pixel específicos de diferentes segmentos de imagem para cada imagem.
Rotular dados pode ser especialmente tedioso para determinados casos de uso. Em casos de uso mais especializados de aprendizado de máquina, como descoberta de medicamentos, sequenciamento genético ou classificação de proteínas, a anotação de dados não apenas é extremamente demorada, mas também requer expertise em domínio muito específico.
O aprendizado semissupervisionado oferece uma maneira de extrair o máximo benefício de uma pequena quantidade de dados rotulados, ao mesmo tempo em que utiliza uma quantidade relativamente grande de dados não rotulados.
A aprendizagem semissupervisionada pode ser considerada um híbrido ou meio termo entre a aprendizagem supervisionada e a aprendizagem não supervisionada.
A principal distinção entre aprendizado de máquina semissupervisionado e totalmente supervisionado é que este último só pode ser treinado usando conjuntos de dados totalmente rotulados, enquanto o primeiro utiliza tanto amostras de dados rotuladas quanto não rotuladas no processo de treinamento. Técnicas de aprendizagem semissupervisionadas modificam ou complementam um algoritmo supervisionado, conhecido como "aprendiz base", nesse contexto, para integrar informações de exemplos não rotulados. Os pontos de dados rotulados são utilizados para fundamentar as previsões do aprendiz base e adicionar estrutura (como quantas classes existem e as características básicas de cada uma) ao problema de aprendizado.
O objetivo de treinar qualquer modelo de classificação é aprender um limite de decisão preciso: uma linha—ou, para dados com mais de duas dimensões, uma "superfície" ou hiperplano, separa pontos de dados de uma categoria de classificação de pontos de dados pertencentes a uma categoria de classificação diferente. Embora um modelo de classificação totalmente supervisionado tecnicamente possa aprender uma fronteira de decisão usando apenas alguns pontos de dados rotulados, ele pode não generalizar bem para exemplos do mundo real, tornando as previsões do modelo pouco confiáveis.
O conjunto de dados clássico “meias-luas” visualiza as limitações dos modelos supervisionados que dependem de poucos pontos de dados rotulados. Embora o limite de decisão “corrigido” separe cada uma das duas meia-luas, é provável que um modelo de aprendizado supervisionado ajuste excessivamente os poucos pontos de dados rotulados disponíveis. Os pontos de dados não rotulados transmitem claramente um contexto útil, mas um algoritmo supervisionado tradicional não pode processar dados não rotulados.
Ao contrário do aprendizado semissupervisionado (e totalmente supervisionado), algoritmos de aprendizado não supervisionados não usam dados rotulados nem funções de perda. O aprendizado não supervisionado evita qualquer contexto de "verdade básica" contra o qual a precisão do modelo pode ser medida e otimizada.
Uma abordagem semissupervisionada cada vez mais comum, sobretudo para grandes modelos de linguagem, é “pré-treinar” os modelos por meio de tarefas não supervisionadas que exigem que o modelo aprenda representações significativas de conjuntos de dados não rotulados. Quando essas tarefas envolvem um “dado de referência” e uma função de perda (sem anotação manual de dados), elas são chamadas de aprendizado autossupervisionado. Após os “ajustes supervisionados” subsequentes em uma pequena quantidade de dados rotulados, os modelos pré-treinados geralmente conseguem alcançar um desempenho comparável aos modelos totalmente supervisionados.
Embora os métodos de aprendizado não supervisionado sejam úteis em muitas situações, a falta de contexto pode torná-los inadequados para classificação por si só. Por exemplo, considere como um algoritmo de clustering típico (que agrupa pontos de dados em um número pré-determinado de clusters com base na proximidade uns com os outros) trata o conjunto de dados de meia-lua.
Tanto o aprendizado semissupervisionado quanto o autossupervisionado visam contornar a necessidade de grandes quantidades de dados rotulados. Porém, enquanto o semissupervisionado envolve alguns dados rotulados, métodos de aprendizagem autossupervisionados, como autocodificadores, são verdadeiramente não supervisionados.
Enquanto o aprendizado supervisionado (e semissupervisionado) exige uma "verdade básica" externa, na forma de dados rotulados, as tarefas de aprendizado autossupervisionado derivam a verdade básica da estrutura subjacente de amostras não rotuladas. Muitas tarefas autossupervisionadas não são úteis em si mesmas: sua utilidade está no ensino de representações de dados de modelos úteis para fins de "tarefas posteriores" subsequentes. Por isso, elas são frequentemente chamadas de "tarefas de pretexto".
Quando combinadas com tarefas supervisionadas a jusante, as tarefas de pretexto auto-supervisionadas constituem, assim, parte de um processo de aprendizagem semissupervisionado: um método de aprendizagem que utiliza dados rotulados e não rotulados para a formação de modelos.
O aprendizado semissupervisionado se baseia em certas suposições sobre os dados não rotulados usados para treinar o modelo e sobre a forma como os pontos de dados de diferentes classes se relacionam entre si.
Uma condição necessária da aprendizagem semissupervisionada (SSL) se baseia em certas suposições sobre os dados não rotulados usados para treinar o modelo e sobre a forma como os pontos de dados de diferentes classes se relacionam entre si. Em termos mais formais, o SSL requer que a distribuição p(x) dos dados de entrada deve conter informações sobre a distribuição posterior p(y|x) —isto é, a probabilidade condicional de um determinado ponto de dados (x) pertencer a uma determinada classe (y). Assim, por exemplo, se estiver utilizando dados não rotulados para ajudar a treinar um classificador de imagens para diferenciar entre fotos de gatos e fotos de cachorros, o conjunto de dados de treinamento deve conter imagens de ambos os gatos e cachorros, e imagens de cavalos e motocicletas não serão úteis.
Consequentemente, enquanto um estudo de 2018 sobre algoritmos de aprendizado semi-supervisionado constatou que "aumentar a quantidade de dados não rotulados tende a melhorar o desempenho das técnicas de SSL", também descobriu que "adicionar dados não rotulados de um conjunto de classes não correspondentes na verdade pode prejudicar o desempenho em comparação com não usar nenhum dado não rotulado." 1
A condição básica de p(x) ter uma relação significativa com p(x|y) dá origem a várias assunções sobre a natureza dessa relação. Essas suposições são a força motriz por trás da maioria, se não todos, os métodos SSL: geralmente falando, qualquer algoritmo de aprendizagem semissupervisionado depende de uma ou mais das seguintes suposições serem explicitamente ou implicitamente satisfeitas.
O parâmetro do cluster afirma que os pontos de dados pertencentes ao mesmo cluster, um conjunto de pontos de dados mais semelhantes entre si do que a outros pontos de dados disponíveis –também pertencerão à mesma classe.
Embora às vezes considerada como seu próprio parâmetro independente, o parâmetro de agrupamento também foi descrita por van Engelen e Hoos como "uma generalização dos outros parâmetros."2o parâmetro Nessa perspectiva, a determinação dos clusters de pontos de dados depende de qual noção de similaridade está sendo usada: o parâmetro de suavidade, o parâmetro de baixa densidade e o parâmetro de manifold simplesmente se baseiam em uma definição diferente do que constitui um ponto de dados "similar".
As parâmetros de suavidade indicam que se dois pontos de dados, x e x', estiverem próximos uns dos outros no espaço de entrada — o conjunto de todos os valores possíveis para x– então seus rótulos, y e y', devem ser os mesmos.
Esse parâmetro, também conhecida como parâmetro de continuidade, é comum à maioria do aprendizado supervisionado: por exemplo, os classificadores aprendem uma aproximação significativa (ou “representação”) de cada classe relevante durante o treinamento; uma vez treinados, eles determinam a classificação de novos pontos de dados por meio da representação com que mais se parecem.
No contexto do SSL, o parâmetro de suavidade tem o benefício adicional de ser aplicada transitivamente aos dados não rotulados. Considere um cenário envolvendo três pontos de dados:
O parâmetro de suavidade nos diz que x2 deve ter o mesmo rótulo que x1. Também nos diz que x3 deve ter a mesma etiqueta que x2. Portanto, podemos assumir que todos os três pontos de dados têm o mesmo rótulo, pois o rótulo de x1é transitivamente propagado para x3 devido à proximidade de x3para x2.
O parâmetro de baixa densidade afirma que o limite de decisão entre as classes não deve passar por regiões de alta densidade. Em outras palavras, o limite da decisão deve estar em uma área que contenha poucos pontos de dados.
O parâmetro de baixa densidade pode, portanto, ser considerada como uma extensão do parâmetro de agrupamento (em que um agrupamento de alta densidade de pontos de dados representa uma classe, ao invés do limite entre classes) e o parâmetro de suavidade (em que se vários pontos de dados estão próximos uns dos outros, eles devem compartilhar um rótulo e, portanto, cair no mesmo lado do limite de decisão).
Este diagrama ilustra como os parâmetros de baixa densidade e suavidade podem informar um limite de decisão muito mais intuitivo do que seria possível com métodos supervisionados que só podem considerar os (muito poucos) pontos de dados rotulados.
O parâmetro múltiplo afirma que o espaço de entrada de dimensão superior compreende várias variedades dimensionais inferiores nas quais todos os pontos de dados se encontram, e que os pontos de dados na mesma variedade compartilham o mesmo rótulo.
Para um exemplo intuitivo, considere um pedaço de papel amassado até assumir a forma de uma bola. A localização de quaisquer pontos na superfície esférica só pode ser mapeada com coordenadas x,y,z tridimensionais. No entanto, se essa bola amassada for agora aberta até virar uma folha de papel, esses mesmos pontos poderão ser mapeados com coordenadas bidimensionais x,y. Isso é chamado de redução de dimensionalidade e pode ser obtido matematicamente usando métodos como autocodificadores ou convoluções.
No aprendizado de máquina, as dimensões não correspondem às dimensões físicas conhecidas, mas a cada atributo ou recurso dos dados. Por exemplo, no aprendizado de máquina, uma pequena imagem RGB medindo 32x32 pixels tem 3.072 dimensões: 1.024 pixels, cada um dos quais com três valores (para vermelho, verde e azul). Comparar pontos de dados com tantas dimensões é desafiador, tanto devido à complexidade e recursos computacionais necessários quanto porque a maior parte desse espaço de alta dimensão não contém informações significativas para a tarefa em questão.
O parâmetro múltiplo sustenta que quando um modelo aprende a função de redução de dimensionalidade adequada para descartar informações irrelevantes, pontos de dados díspares convergem para uma representação mais significativa para a qual os outros parâmetros SSL são mais confiáveis.
Métodos de aprendizado transdutivo usam rótulos disponíveis para discernir previsões de rótulos para um determinado conjunto de pontos de dados não rotulados, para que possam ser usados por um aluno de base supervisionado.
Enquanto os métodos indutivos visam treinar um classificador que possa modelar todo o espaço de entrada (rotulado e não rotulado), os métodos transdutivos visam apenas produzir previsões de rótulos para dados não rotulados. Os algoritmos usados para o aprendizado transdutivo não têm relação alguma com o(s) algoritmo(s) a ser(em) usado(s) pelo modelo de classificador supervisionado a ser treinado usando esses dados recém-rotulados.
Propagação de rótulo é um algoritmo baseado em gráficos que calcula atribuições de rótulo para pontos de dados não rotulados com base em sua proximidade relativa a pontos de dados rotulados, usando o parâmetro de suavidade e parâmetro de cluster.
A intuição por trás do algoritmo é que pode-se mapear um gráfico totalmente conectado no qual os nós são todos os pontos de dados disponíveis, rotulados e não rotulados. Quanto mais próximos dois nós estiverem com base em alguma medida de distância escolhida, como distância euclidiana (link externo ao site ibm.com), mais a borda entre eles será ponderada no algoritmo. A partir dos pontos de dados rotulados, os rótulos se propagam iterativamente pelos pontos de dados vizinhos não rotulados, usando as suposições de suavidade e agrupamento.
Algoritmos de aprendizagem ativa não automatizam a rotulação de pontos de dados: em vez disso, eles são utilizados em SSL para determinar quais amostras não rotuladas forneceriam as informações mais úteis se rotuladas de forma manual.3 O uso do aprendizado ativo em ambientes semissupervisionados obteve resultados promissores: por exemplo, um estudo recente descobriu que ele reduziu em mais da metade a quantidade de dados rotulados necessários para o treinamento eficiente de um modelo para segmentação semântica.4
Métodos indutivos de aprendizado semi-supervisionado visam treinar diretamente um modelo de classificação (ou regressão), utilizando tanto dados rotulados quanto não rotulados.
Métodos SSL indutivos geralmente podem ser diferenciados pela forma como incorporam dados não rotulados: por meio de uma etapa de pseudo-rotulagem, uma etapa de pré-processamento não supervisionada ou pela incorporação direta na função objetivo do modelo.
Uma maneira relativamente simples de estender algoritmos supervisionados existentes para uma configuração semissupervisionada é treinar primeiro o modelo nos dados rotulados disponíveis ou simplesmente usar um classificador pré-existente adequado e gerar previsões de pseudo-rótulo para pontos de dados não rotulados. O modelo pode então ser treinado novamente usando os dados originalmente rotulados e os dados pseudo-rotulados, não diferenciando entre os dois.
O principal benefício dos métodos wrapper, além de sua simplicidade, é que eles são compatíveis com praticamente qualquer tipo de aprendiz de base supervisionado. A maioria dos métodos wrapper introduz técnicas de regularização para reduzir o risco de reforçar previsões de pseudo-rótulos que possam ser imprecisas.
O autotreinamento é um método wrapper básico. Exige previsões probabilísticas, em vez de deterministas, de pseudo-rótulos: por exemplo, um modelo que produza “85% de cachorro, 15% de gato” em vez de simplesmente produzir “cachorro”.
As previsões de pseudo-rótulos probabilísticos permitem que algoritmos de autotreinamento aceitem apenas previsões que excedam um certo limite de confiança, em um processo semelhante à minimização da entropia.5 Esse processo pode ser feito de forma iterativa, para otimizar o processo de pseudo-classificação ou alcançar um certo número de amostras pseudo-rotuladas.
Os métodos de co-treinamento ampliam o conceito de autotreinamento, treinando vários aprendizes básicos supervisionados para atribuir pseudo-rótulos.
A diversificação tem o objetivo de reduzir a tendência de reforçar previsões iniciais ruins. Portanto, é importante que as previsões de cada aprendiz de base não estejam fortemente correlacionadas entre si. Uma abordagem típica é usar algoritmos diferentes para cada classificador. Outra abordagem é fazer com que cada classificador se concentre em um subconjunto diferente dos dados: por exemplo, em dados de vídeo, treinar um aprendiz básico com dados visuais e o outro com dados de áudio.
Diferentemente dos métodos de empacotamento (e algoritmos intrinsecamente semissupervisionados), que utilizam dados rotulados e não rotulados simultaneamente, alguns métodos SSL utilizam dados não rotulados e rotulados em estágios separados: um estágio de pré-processamento não supervisionado, seguido por um estágio supervisionado.
Assim como os métodos de wrapper, essas técnicas podem essencialmente ser usadas para qualquer aprendiz de base supervisionado. Mas, em contraste com os métodos wrapper, o modelo supervisionado "principal" é, em última análise, treinado apenas em pontos de dados rotulados originalmente (anotados por humanos).
Essas técnicas de pré-processamento variam desde a extração de características úteis de dados não rotulados até o pré-clustering de pontos de dados não rotulados e o uso de “pré-treinamento” para determinar os parâmetros iniciais de um modelo supervisionado (em um processo semelhante às tarefas de pré-texto realizadas no aprendizado autossupervisionado).
Uma técnica semissupervisionada simples envolve o agrupamento de todos os pontos de dados (rotulados e não rotulados) usando um algoritmo não supervisionado. Aproveitando a suposição de agrupamento, esses clusters podem ser utilizados para auxiliar no treinamento de um modelo classificador independente, ou, se os pontos de dados rotulados em um determinado cluster forem todos da mesma classe, pseudo-rotulando os pontos de dados não rotulados e procedendo de maneira semelhante aos métodos wrapper.
Conforme demonstrado pelo exemplo das “meias-luas” no início deste artigo, métodos simples (como o k-vizinhos mais próximos) podem produzir previsões inadequadas. Algoritmos de agrupamento mais refinados, como DBSCAN (que implementa o parâmetro de baixa densidade),6 alcançaram maior confiabilidade.
O pré-treinamento não supervisionado (ou autossupervisionado) permite que os modelos aprendam representações úteis do espaço de imput, reduzindo a quantidade de dados rotulados necessários para ajustar um modelo com aprendizagem supervisionada.
Uma abordagem comum é empregar uma rede neural, muitas vezes um autoencoder, para aprender uma incorporação ou representação das características dos dados de input e usar essas características aprendidas para treinar um aprendiz de base supervisionado. Isso geralmente envolve redução de dimensionalidade, ajudando a fazer uso da suposição de variedade.
Alguns métodos SSL diretamente não rotulam dados na função objetiva do aprendiz base, em vez de processar dados não rotulados em uma etapa separada de pseudo-rotulagem ou pré-processamento.
Quando os pontos de dados de diferentes categorias não são linearmente separáveis, quando nenhuma linha reta consegue definir de forma clara e precisa o limite entre categorias, os algoritmos de máquinas de vetores de suporte (SVMs) associam os dados a um espaço de características de dimensões mais altas em qual as categorias podem ser separadas por um hiperplano. Ao determinar este limite de decisão, os algoritmos de SVMs maximizam a margem entre o limite de decisão e os pontos de dados mais próximos a ele. Na prática, isso aplica a suposição de baixa densidade.
Em um ambiente supervisionado, um termo de regularização penaliza o algoritmo quando os pontos de dados rotulados caem no lado errado da fronteira de decisão. Em SVMs semi-supervisionados (S3VMs), isso não é possível para os pontos de dados não rotulados (cuja classificação é desconhecida), assim, as S3VMs também penalizam os pontos de dados que estão dentro da margem prescrita.
Uma variedade de arquiteturas de redes neurais foi adaptada para o aprendizado semissupervisionado. Isso é alcançado por meio da inclusão ou modificação dos termos de perda geralmente utilizados nessas arquiteturas, permitindo a incorporação de pontos de dados não rotulados no treinamento.
As arquiteturas de deep learning semissupervisionado propostas incluem redes em camadas,7 pseudo-combinações,8 combinações temporais,9 e selecionar modificações para redes adversárias generativas (GANS).10
O IBM® Granite é nossa família de modelos de IA abertos, de alto desempenho e confiáveis, personalizados para a empresa e otimizados para escalar suas aplicações de IA. Explore as opções de linguagem, código, séries temporais e proteções.
Entrevistamos duas mil organizações a respeito de suas iniciativas de IA para descobrir o que está funcionando, o que não está e como se preparar.
Explore abordagens de aprendizado supervisionado, como máquinas de vetores de suporte e classificadores probabilísticos.
Aprenda conceitos fundamentais e desenvolva suas habilidades com laboratórios práticos, cursos, projetos guiados, avaliações e muito mais.
Saiba como selecionar o modelo de base de IA mais adequado para seu caso de uso.
Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.
Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.
Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.
1 “Realistic Evaluation of Deep Semi-Supervised Learning Algorithms”( link externo ao site ibm.com), arXiv, 17 de junho de 2019
2 “A survey on semi-supervised learning” (link externo ao site ibm.com), Springer, 15 de novembro de 2019
3 “Transductive active learning – A new semi-supervised learning approach based on iteratively refined generative models to capture structure in data” (link externo ao site ibm.com), Information Sciences (volume 293), 18 de setembro de 2014
4 “Semantic Segmentation with Active Semi-Supervised Learning” (link externo ao site ibm.com), arXiv, 16 de outubro de 2022
5 “Semi-supervised learning by Entropy Minimization” (link externo ao site ibm.com), Advances in Neural Information Processing Systems 17, 2004
6 “Density-based semi-supervised clustering” (link externo ao site ibm.com), Data Mining and Knowledge Discovery, novembro de 2010
7 “Semi-Supervised Learning with Ladder Networks” (link externo ao site ibm.com), arXiv, 24 de novembro de 2015
8 “Learning with Pseudo-Ensembles” ( link externo ao site ibm.com), arXiv, 16 de dezembro de 2014
9 “Temporal Ensembling for Semi-Supervised Learning” (link externo ao site ibm.com), arXiv, 15 de março de 2017
10 “Improved Techniques for Training GANs” (link externo ao site ibm.com), arXiv, 10 de junho de 2016