Le co-apprentissage est un algorithme d'apprentissage semi-supervisé introduit par Avrim Blum et Tom Mitchell en 1998. Il répond au défi des données étiquetées limitées en exploitant des exemples non étiquetés lorsque les caractéristiques peuvent être naturellement divisées en deux vues conditionnellement indépendantes. La méthode entraîne deux classifieurs séparés sur ces vues, et les prédictions à haute confiance de chaque classifieur sur les données non étiquetées sont utilisées pour enrichir l'ensemble d'entraînement de l'autre, améliorant itérativement les deux modèles.
L'approche repose sur l'hypothèse que chaque vue est suffisante pour apprendre par elle-même et que les vues sont conditionnellement indépendantes étant donné l'étiquette de classe. En pratique, cela vaut pour des domaines comme la classification de pages web, où le texte d'une page et le texte d'ancrage des hyperliens qui y pointent fournissent des signaux distincts mais complémentaires. Le co-apprentissage a influencé les techniques semi-supervisées ultérieures et reste un concept fondamental dans la recherche en Machine learning.
Algorithme et mécanisme
Le co-apprentissage commence avec deux ensembles de données étiquetés, chacun contenant des caractéristiques d'une seule vue (par exemple, la vue A et la vue B). Deux classifieurs de base, souvent des modèles Naive Bayes ou Decision Trees, sont entraînés indépendamment sur ces ensembles étiquetés. À chaque itération, chaque classifieur sélectionne un petit nombre d'exemples non étiquetés pour lesquels il a la plus haute confiance (généralement mesurée par la probabilité prédite) et leur attribue des pseudo-étiquettes. Ces exemples nouvellement étiquetés sont ensuite ajoutés à l'ensemble d'entraînement de l'autre classifieur, et les deux classifieurs sont réentraînés.
Le processus se répète pour un nombre fixe d'itérations ou jusqu'à ce qu'il ne reste plus de prédictions à haute confiance. La clé est que chaque classifieur fournit à l'autre des données étiquetées « nouvelles » qu'il n'aurait pas rencontrées seul, élargissant efficacement le pool d'entraînement sans annotation humaine. L'analyse théorique de Blum et Mitchell a montré que si les vues sont conditionnellement indépendantes et que chacune est suffisante, le co-apprentissage peut améliorer la précision même avec très peu d'étiquettes initiales.
Applications et domaines
Le co-apprentissage a été appliqué dans divers domaines où des données multi-vues existent naturellement. En traitement du langage naturel, il a été utilisé pour des tâches comme la Named-entity recognition et l'Sentiment Analysis, où une vue peut être des caractéristiques au niveau des mots et une autre des caractéristiques syntaxiques ou positionnelles. En vision par ordinateur, le co-apprentissage peut combiner des histogrammes de couleurs avec des descripteurs de texture pour la classification d'objets. En bioinformatique, il a été utilisé pour classer des données d'expression génique en utilisant différentes plateformes de mesure comme vues.
Un exemple classique est la classification de pages web : le contenu textuel d'une page et le texte d'ancrage des liens entrants forment deux vues. Les travaux précoces de Blum et Mitchell ont démontré que le co-apprentissage pouvait classer des pages d'accueil de cours académiques avec une haute précision en utilisant seulement quelques pages étiquetées et de nombreuses pages non étiquetées. Cette application a mis en évidence la valeur pratique de la méthode dans des contextes où l'étiquetage est coûteux mais où les données non étiquetées sont abondantes.
Extensions et variantes
Plusieurs extensions ont été proposées pour assouplir les hypothèses strictes du co-apprentissage. Le tri-apprentissage utilise trois classifieurs et un vote majoritaire pour attribuer des pseudo-étiquettes, réduisant le besoin de diviser les vues. La co-régularisation ajoute un terme de pénalité pour encourager l'accord entre les classifieurs sur les données non étiquetées. L'apprentissage co-démocratique généralise l'idée à plusieurs apprenants avec différents algorithmes plutôt que différentes vues de caractéristiques.
Une autre variante, l'auto-apprentissage, est une approche plus simple à vue unique où un classifieur étiquette ses propres prédictions confiantes, mais elle est plus sujette à la propagation d'erreurs. La conception multi-vues du co-apprentissage atténue ce problème en permettant à chaque classifieur de corriger les erreurs de l'autre, à condition que l'hypothèse d'indépendance soit respectée. Les chercheurs ont également exploré des adaptations en apprentissage profond, où des réseaux de neurones avec différentes architectures ou transformations d'entrée servent de deux vues.
Fondements théoriques et limites
La garantie théorique du co-apprentissage repose sur l'indépendance conditionnelle des vues étant donné l'étiquette. En pratique, cette hypothèse est souvent violée, ce qui entraîne une dégradation des performances. Lorsque les vues sont corrélées, les classifieurs peuvent renforcer mutuellement leurs erreurs, provoquant un biais de confirmation. Des études empiriques ont montré que le co-apprentissage peut encore bien fonctionner lorsque l'hypothèse d'indépendance est approximativement satisfaite, mais il peut sous-performer par rapport à un simple auto-apprentissage sur des ensembles de données avec des caractéristiques fortement corrélées.
Une autre limite est la nécessité d'une division naturelle des caractéristiques, qui n'est pas toujours disponible. Dans de tels cas, les praticiens peuvent utiliser des divisions aléatoires des caractéristiques, mais cela affaiblit souvent la justification théorique. La méthode nécessite également un réglage minutieux des seuils de confiance et du nombre d'exemples ajoutés par itération, car un étiquetage trop agressif peut introduire du bruit. Malgré ces défis, le co-apprentissage reste une référence dans la littérature sur l'apprentissage semi-supervisé et un élément de base pour des algorithmes plus robustes.
Relation avec l'apprentissage semi-supervisé moderne
Avec l'essor du Deep learning, le co-apprentissage a inspiré des approches modernes comme la régularisation de cohérence et le pseudo-étiquetage utilisés dans les modèles de pointe. Des techniques telles que mixmatch et fixmatch combinent plusieurs vues via l'augmentation de données et imposent une cohérence des prédictions, faisant écho à l'idée centrale du co-apprentissage d'exploiter l'accord entre différentes perspectives. Le concept s'aligne également sur l'apprentissage multi-vues dans le Representation learning, où les modèles apprennent à partir de multiples modalités ou ensembles de caractéristiques.
À l'ère des Large language models, les principes du co-apprentissage apparaissent dans les pipelines de renforcement par retour humain (Reinforcement Learning from AI Feedback (RLAIF)), où des modèles séparés pour la prédiction de récompense et la génération de politique se raffinent itérativement l'un l'autre. Bien que les méthodes modernes passent souvent à l'échelle avec des corpus non étiquetés massifs, l'idée fondamentale du co-apprentissage - que des vues diverses peuvent fournir des signaux de supervision - continue d'informer la conception d'algorithmes dans les contextes académiques et industriels.