Vés al contingut

Destil·lació de coneixement en IA per al desenvolupament de models més eficients

En el camp de la intel·ligència artificial, la destil·lació de coneixement (knowledge distillation) s’ha convertit en una tècnica molt interessant per optimitzar models sense sacrificar de manera significativa el seu rendiment.

Aquest procés, que permet transferir el coneixement de models complexos a models més petits, té com a objectiu que aquests models més petits puguin aprendre patrons i estructures de dades més profundes que les que s’obtindrien amb l’entrenament convencional.

Per conèixer aquesta tècnica en profunditat, en l’article d’avui aprofundirem en la història que hi ha darrere d’aquest concepte, els diferents models que existeixen, així com també el seu mecanisme i implementacions.

Història i evolució de la destil·lació de coneixement

El concepte de destil·lació de coneixement té les seves arrels en el treball de Caruana et al. en 2006, quan van demostrar que un model de classificació massiu podia utilitzar-se per etiquetar un conjunt de dades i, posteriorment, entrenar una xarxa neuronal més compacta amb un rendiment comparable.

Posteriorment, Hinton et al. (2015) van ampliar aquesta idea introduint un esquema de destil·lació formal, en el qual van proposar un enfocament de doble fase: primer entrenar un model gran per extreure l’estructura de les dades i després transferir aquest coneixement a un model més petit i, per tant, més adequat per a la implementació en temps real.

Així és com va néixer la destil·lació del coneixement, considerada avui com una tècnica avançada de machine learning (ML) dissenyada per transferir la capacitat de generalització i aprenentatge d’un model gran, conegut com a “model professor”, a un model més compacte, denominat «model estudiant», esdevenint així un element clau en l’optimització de xarxes neuronals profundes, particularment en el context de la intel·ligència artificial generativa (GenAI) i els models de llenguatge a gran escala (LLM).

D’altra banda, cal afegir que l’objectiu de la destil·lació del coneixement no és només replicar els resultats del model professor, sinó també capturar i emular els seus patrons de raonament per millorar l’eficiència computacional sense sacrificar de manera important el rendiment.

Mecanisme de la destil·lació de coneixement

Com acabem de veure, la destil·lació del coneixement es basa en la idea que un model neuronal gran aprèn patrons i estructures de dades complexes que poden ser transferides a un model més petit mitjançant un procés d’entrenament supervisat. Per aconseguir-ho, el mecanisme utilitza una sèrie de funcions que comentem a continuació:

Objectius durs i objectius tous

Els models de deep learning utilitzen funcions softmax per generar prediccions amb la màxima probabilitat de ser correctes. Tanmateix, els valors intermedis (logits) contenen informació útil sobre les tendències de generalització del model. En la destil·lació, aquests valors intermedis, coneguts com a “objectius tous”, s’utilitzen com a guia per entrenar el model estudiant, permetent una millor transferència del coneixement que si només s’utilitzés l’etiqueta final de la classe correcta, coneguda com a “objectiu dur”.

En una tasca de classificació, com per exemple la identificació d’imatges d’animals, el model genera una distribució de probabilitat sobre les possibles classes i selecciona la categoria amb la probabilitat més alta com a predicció final.

  • Objectius durs: Són les etiquetes de classificació estàndard utilitzades en l’aprenentatge supervisat. Representen una assignació binària de probabilitat, on la categoria correcta rep un 100% i la resta un 0%.
  • Objectius tous: Són les distribucions de probabilitat generades pel model abans de prendre una decisió final. En lloc d’assignar una certesa absoluta, reflecteixen la incertesa i les similituds entre classes. Per exemple, una imatge d’un Golden Retriever podria rebre un 75% de probabilitat per a “Golden Retriever”, un 20% per a “Labrador Retriever” i un 5% per a “Pastor Alemany”, proporcionant informació addicional sobre com el model percep les relacions entre categories.

Així doncs, el model estudiant no només aprèn a predir la resposta final correcta, sinó que també aprèn a captar la relació entre classes i la manera com el model professor generalitza sobre les dades. Això li permet adquirir una comprensió més matisada i flexible, en lloc d’una classificació rígida basada únicament en objectius durs. Per tant, com hem vist a l’exemple, l’estudiant pot aprendre que els Golden Retriever i els Labrador Retriever són més similars entre si que amb un Pastor Alemany, cosa que millora la seva capacitat de classificar noves imatges.

Com a resum, podem dir que els objectius tous contenen informació sobre com «pensa» el model professor, fet que permet a l’estudiant aprendre patrons més subtils de les dades, millorant així la seva capacitat de generalització amb menys exemples d’entrenament.

Funció de pèrdua per destil·lació

L’entrenament d’un model de deep learning es basa en minimitzar una funció de pèrdua, que mesura la diferència entre les prediccions del model i les respostes correctes. En la destil·lació del coneixement, s’utilitzen dues funcions de pèrdua principals per garantir que el model estudiant aprengui correctament del model professor:

  • Pèrdua dura: La pèrdua dura es basa en la diferència entre la predicció final del model estudiant i l’etiqueta real de la mostra. Normalment, s’utilitza l’entropia creuada, que penalitza les prediccions incorrectes i empeny el model a millorar la seva precisió.

    Per exemple, si la imatge és un “gat” i el model estudiant prediu “gos”, la pèrdua dura s’encarregarà de corregir aquest error ajustant els paràmetres del model.
  • Pèrdua de destil·lació: La pèrdua de destil·lació mesura la diferència entre les distribucions de probabilitat del model professor i del model estudiant. En lloc de corregir només errors finals, aquesta pèrdua se centra a fer que el model estudiant imiti el patró de predicció del model professor.

    La mètrica més utilitzada per a aquesta comparació és la divergència de Kullback-Leibler, que mesura com de diferent és la distribució de probabilitat del model estudiant en comparació amb la del professor. D’altra banda, també s’acostuma a utilitzar un paràmetre de temperatura, que suavitza les prediccions i fa que la distribució de probabilitats sigui més informativa, permetent que el model estudiant aprengui amb més precisió.

Variants de la destil·lació de coneixement

Tot i que en aquest article hem explicat la forma clàssica de la destil·lació de coneixement, cal destacar que existeixen diversos enfocaments alternatius. A continuació, els comentem breument:

  • Destil·lació basada en característiques: Se centra en la transferència de les representacions internes del model professor cap al model estudiant, cosa que implica la comparació dels mapes de característiques extrets en diferents capes de la xarxa neuronal.
  • Destil·lació d’atenció: Aprofita els mecanismes d’atenció de xarxes neuronals avançades, com els transformers, per guiar l’aprenentatge del model estudiant de manera més efectiva.
  • Destil·lació basada en relacions: En lloc de transferir només sortides o característiques, aquest mètode intenta capturar les relacions entre instàncies dins de l’espai de representació del model professor.

Tot i que cada mètode té avantatges i aplicacions específiques, en la pràctica es poden combinar diversos enfocaments per aconseguir un model estudiant més eficient i precís.

Implementació de la destil·lació de coneixement

La destil·lació del coneixement pot implementar-se de diverses maneres, segons si el model professor està preentrenat o si s’entrena simultàniament amb el model estudiant. Els principals enfocaments són:

  • Destil·lació fora de línia: Aquest és l’enfocament més tradicional i àmpliament utilitzat. El model professor s’entrena prèviament de manera independent i després es congela per evitar l’actualització dels seus paràmetres. A partir d’aquí, s’entrena el model estudiant utilitzant la sortida del professor com a guia (és a dir, les prediccions generades pel model professor per a una entrada determinada), optimitzant la funció de pèrdua per minimitzar la diferència entre les prediccions d’ambdós models.
  • Destil·lació en línia: A diferència de la destil·lació fora de línia, en aquest esquema el model professor i l’estudiant s’entrenen simultàniament, cosa que permet una transferència de coneixement dinàmica i contínua. Amb aquest entrenament conjunt, el professor genera prediccions a cada pas del procés, i el model estudiant ajusta els seus paràmetres interns no només en funció de les etiquetes originals, sinó també aprofitant la informació proporcionada pel professor. Així, ambdós models evolucionen junts, adaptant-se mútuament i permetent una transferència de coneixement més eficient.
  • Autodestil·lació: Aquest enfocament elimina la necessitat d’un model professor separat. En el seu lloc, el mateix model actua com a propi professor i estudiant, refinant les seves representacions internes al llarg de l’entrenament. D’aquesta manera, el procés de refinament continu pot millorar la seva capacitat de generalització sense necessitat d’un model extern.

Conclusions

La destil·lació del coneixement ha emergit com una tècnica clau per millorar l’eficiència i l’accessibilitat dels models d’IA moderns. En permetre la transferència de coneixement des de models de gran escala cap a versions més compactes i eficients, la destil·lació del coneixement s’ha convertit en una eina fonamental en la democratització de la IA generativa i en l’ampliació de la seva aplicabilitat en entorns amb restriccions computacionals.

A mesura que els models continuen creixent en complexitat, les tècniques de destil·lació seguiran evolucionant per reduir la bretxa entre la potència computacional i l’eficiència en la seva implementació.


Recursos:
[1] R. Caruana et al. (2006) – Model Compression
[2] G. Hinton et al. (2015) – Distilling the Knowledge in a Neural Network
[3] IBM – ¿Qué es la destilación de conocimiento?




A Block&Capital, especialistes en selecció de personal, treballem per crear oportunitats on el creixement i l’èxit siguin a l’abast de tothom. Si estàs preparat per fer un pas endavant en la teva carrera professional, no dubtis a contactar amb nosaltres.