La decisión construir o comprar
Antes, una breve digresión. Como veremos en seguida, dos de los enfoques de adopción implican o bien que la empresa asuma completamente la generación y entrenamiento del modelo, o bien que lo externalice completamente.
Y, en el fondo, esa no es más que otra manifestación de un dilema presente en el mundo del software y de los sistemas informáticos, prácticamente desde que estos existen: ¿Me hago yo el sistema o se lo compro a un tercero? Es decir, ¿construir o comprar?
Tampoco es que sea un dilema propio del mundo del software en absoluto, pero sí es cierto que en otro tipo de productos o soluciones, más del mundo físico, la opción de construir (que significaría fabricar) por parte de una empresa no especializada suele ser poco realista, mientras que en el mundo digital tiende a ser una opción perfectamente planteable.
Modelos a medida
La primera opción para el caso de un modelo de machine learning es el modelo a medida ('custom model'), que vendría a ser la traslación de la opción 'construir' al caso de los modelos de machine learning.
En este caso la empresa decide construirse su propio modelo usando sus propios datos y entrenando al modelo con ellos.
Aunque hablamos de 'construir', como se hiciera desde cero, normalmente lo que queremos decir es que se entrena un modelo con datos propios, pero eso no implica, al menos no en general, que la empresa se invente y desarrolle un algoritmo nuevo. Normalmente se apoyará en algoritmos existentes usando herramientas también existentes (librerías python con algoritmos ya disponibles y fácilmente utilizables, o herramientas de más alto nivel como servicios en la nube especializados o soluciones de AutoML). Lo que la empresa hace por sí mismas es la creación de datasets y el entrenamiento, prueba y despliegue del modelo.
En casos extremos, podríamos hablar de una verdadera construcción de un algoritmo desde cero, el diseño de una nuevas lógica o una nueva arquitectura, y no sólo el entrenamiento, pero eso está al alcance de pocas empresas o universidades. Normalmente repito, al hablar de modelos a medidas nos referimos realmente sólo a entrenar con datos propios un algoritmo ya existente.
Modelos pre-entrenados
En el caso de los modelos pre-entrenados ('pretrained model'), vendríamos a situarnos en la opción de 'comprar'. Es decir, la empresa, para una tarea suficientemente transversal, por ejemplo, aspectos básicos de visión artificial o análisis de sentimiento, adquiere un modelo ya entrenado y plenamente funcional.
Transfer-learning
Las anteriores serían las dos opciones extremas pero, como sucede con tantas presuntas dicotomías, suelen existir soluciones intermedias entre los extremos. Y los modelos de machine learning no son una excepción.
En la fuente citada, como opción intermedia nos habla del 'transfer learning'. En el 'transfer learning' se concentra en un modelo un conocimiento más o menos genérico y transversal, en una fase de pre-entrenamiento, pero luego ese modelo puede ser adaptado ('fine tuning') con un entrenamiento, normalmente mucho más ligero en datos y recursos. De esta forma una empresa puede adquirir uno de esos modelos genéricos y adaptarlo a sus datos y casuísticas.
Hoy en día, los modelos fundacionales de IA generativa permiten incluso, un cierto nivel de adaptación al usuario mediante la simple interacción conversacional con el modelo, mediante feedback del usuario o con base a las instrucciones o ejemplos que el propio usuario pueda proporcionar.
Aunque en el libro en que me baso, habla de 'transfer learning' como la vía intermedia, yo tiendo a ver el transfer learning como una técnica general de entrenamiento y compartición de los aprendizajes y, a cambio, creo que las vías intermedias de adopción pueden traducirse en formatos ligeramente diferentes.
Conclusiones
La adopción de modelos de machine learning es relativamente sencilla hoy en día y, a la hora de realizarla, las empresas pueden optar entre construirse desde cero un modelo propio ('construir') o elegir uno ya disponible y pre-entrenado ('comprar'), pero existen también situaciones intermedias que se apoyan en la idea del 'transfer learning'