El fine tuning vía proxy es útil cuando tenemos un modelo que: o es demasiado grande para poder entrenarlo o no tenemos acceso a él. Aunque hemos de tener acceso a los logits que calcula para cada token.
La solución a este problema es tomar un modelo más pequeño (el proxy) con el mismo vocabulario y entrenarlo.
Así tendríamos tres modelos: el grande, el pequeño sin entrenar y el pequeño entrenado.
Si pasamos el mismo prompt a los tres modelos obtendremos tres distribuciones diferentes para los tokens del modelo. Una para cada modelo.
Ahora tomamos los resultados de los dos modelos pequeños y calculamos sus diferencias para cada token. Ahora aplicamos esas diferencias a los tokens del modelo grande. Con estos nuevos logits podemos calcular las nuevas probabilidades de cada token usando softmax.
Puedes ver una explicación rápida en el siguiente short:
Link al paper: