El transfer learning, también conocido como apre­n­di­za­je por tra­n­s­fe­re­n­cia, es un enfoque en el que se utiliza un modelo entrenado pre­via­me­n­te para una tarea nueva, pero similar. Este método ahorra tiempo y recursos, además de mejorar el re­n­di­mie­n­to de los modelos de apre­n­di­za­je au­to­má­ti­co. Existen di­fe­re­n­tes es­tra­te­gias para ajustar los modelos pre­via­me­n­te en­tre­na­dos a una nueva tarea.

¿Qué es el transfer learning?

El transfer learning o apre­n­di­za­je por tra­n­s­fe­re­n­cia es un método del machine learning o apre­n­di­za­je au­to­má­ti­co en el que se optimiza un modelo entrenado para una nueva tarea similar. En lugar de entrenar un nuevo modelo desde cero para una tarea es­pe­cí­fi­ca, se aprovecha el co­no­ci­mie­n­to ya adquirido. A través de pequeños ajustes, el modelo pre­via­me­n­te entrenado se va adaptando a las nuevas ca­ra­c­te­rí­s­ti­cas para que pueda aplicarse a una nueva tarea. El uso de un modelo ya existente ahorra tiempo y recursos, ya que se requieren menores volúmenes de datos para el en­tre­na­mie­n­to. Este método es por tanto más eficiente y eficaz.

He­rra­mie­n­tas de IA
Saca el máximo partido a la in­te­li­ge­n­cia ar­ti­fi­cial
  • Crea tu página web en tiempo récord
  • Impulsa tu negocio gracias al marketing de IA
  • Ahorra tiempo y obtén mejores re­su­l­ta­dos

¿Cómo funciona el transfer learning?

En el transfer learning o apre­n­di­za­je por tra­n­s­fe­re­n­cia, se toma un modelo ya entrenado para una tarea es­pe­cí­fi­ca y se aplica a una nueva tarea que es similar a la anterior. Esto funciona pa­r­ti­cu­la­r­me­n­te bien cuando se utiliza con datos no es­tru­c­tu­ra­dos, como imágenes o vídeos. Por ejemplo, un modelo que ya ha sido entrenado para reconocer coches puede usarse po­s­te­rio­r­me­n­te para ide­n­ti­fi­car camiones. Muchas ca­ra­c­te­rí­s­ti­cas de ambos grupos, como las ruedas, las puertas o la forma básica, pueden re­uti­li­zar­se.

Selección de un modelo entrenado

Como punto de partida, es necesario disponer de un modelo entrenado. Este modelo se entrena con un conjunto de datos muy extenso y ejemplos eti­que­ta­dos. El modelo aprende gra­dua­l­me­n­te a reconocer patrones y re­la­cio­nes en los datos para cumplir con la tarea prevista. En el ámbito del apre­n­di­za­je au­to­má­ti­co, se habla de capas co­ne­c­ta­das entre sí a través de las cuales se pueden realizar cálculos. Cuantas más capas tenga un modelo, más complejos serán los patrones que puede apro­ve­char.

En el transfer learning, debes se­le­c­cio­nar un modelo que ya haya superado con éxito estos pasos. Es im­po­r­ta­n­te echar un buen vistazo a la tarea de origen del modelo existente. Cuanto más se parezca esta tarea a la nueva, más fácil será el posterior ajuste.

Co­n­fi­gu­ra­ción y en­tre­na­mie­n­to del modelo

En el segundo paso, debes co­n­fi­gu­rar el modelo pre­via­me­n­te entrenado para la nueva tarea. Para ello, existen dos métodos pri­n­ci­pa­les entre los que puedes elegir, de­pe­n­die­n­do de tus ne­ce­si­da­des:

En el primer método, se reemplaza la última capa del modelo de origen entrenado, conocida también como output layer o capa de salida. Esta capa actúa como la unidad de cla­si­fi­ca­ción final que evalúa si un archivo cumple con los pa­rá­me­tros es­ta­ble­ci­dos o no. En el ejemplo anterior, esto si­g­ni­fi­ca­ría que esta capa de salida toma la decisión de si la imagen pre­se­n­ta­da muestra un coche. En muchos casos de uso, puedes eliminar esta capa y colocar una nueva adaptada a tu objetivo. De este modo, en nuestro último ejemplo, esta nueva capa ide­n­ti­fi­ca­ría, en su lugar, camiones.

De forma al­te­r­na­ti­va, en el transfer learning, es posible congelar los pa­rá­me­tros exi­s­te­n­tes y agregar nuevas capas. Estas se ajustan es­pe­cí­fi­ca­me­n­te a la nueva orie­n­ta­ción deseada y se integran en el modelo. A co­n­ti­nua­ción, debes entrenar el modelo ajustado con un conjunto de datos mucho más pequeño que contenga los ejemplos co­rre­s­po­n­die­n­tes. El modelo reconoce patrones y re­la­cio­nes, apro­ve­cha­n­do los co­no­ci­mie­n­tos ad­qui­ri­dos durante el largo proceso de en­tre­na­mie­n­to original.

Su­pe­r­vi­sar los avances

El último paso debe rea­li­zar­se en cualquier caso y consiste en realizar un monitoreo riguroso y, según sea necesario, ajustes en el material de en­tre­na­mie­n­to y, po­si­ble­me­n­te, en las nuevas capas para poder entrenar a la IA para la nueva tarea. Si se ajustan los pa­rá­me­tros durante la fase de en­tre­na­mie­n­to, mejorará la precisión y se asegurará que el modelo cumpla con los re­qui­si­tos de la nueva tarea.

¿Cuáles son las di­fe­re­n­tes es­tra­te­gias?

Hay varias es­tra­te­gias para aplicar el transfer learning o apre­n­di­za­je por tra­n­s­fe­re­n­cia, de­pe­n­die­n­do pri­n­ci­pa­l­me­n­te del propósito deseado. Estos son algunos enfoques:

  • Ex­tra­c­ción de ca­ra­c­te­rí­s­ti­cas: en la ex­tra­c­ción de ca­ra­c­te­rí­s­ti­cas, utilizas el modelo pre­via­me­n­te entrenado como un factor fijo para ca­ra­c­te­rí­s­ti­cas básicas como, por ejemplo, texturas. Las nuevas capas se utilizan para reconocer ca­ra­c­te­rí­s­ti­cas es­pe­cí­fi­cas. Esta apli­ca­ción resulta útil cuando hay una gran similitud entre el origen y el objetivo.
  • Apre­n­di­za­je por tra­n­s­fe­re­n­cia inductivo: aquí, el dominio de origen y de destino son idénticos, pero, por el contrario, las tareas de origen y destino difieren. Esto permite que las nuevas funciones se entrenen de forma más rápida.
  • Apre­n­di­za­je por tra­n­s­fe­re­n­cia tra­n­s­du­c­ti­vo: en esta es­tra­te­gia, el co­no­ci­mie­n­to adquirido en la tarea de origen se tra­n­s­fie­re di­re­c­ta­me­n­te a ciertas in­s­ta­n­cias de la nueva tarea para, por ejemplo, mejorar su cla­si­fi­ca­ción. Este enfoque es favorable cuando las tareas de origen y destino no comparten muchas si­mi­li­tu­des.
  • Apre­n­di­za­je por tra­n­s­fe­re­n­cia no su­pe­r­vi­sa­do: en este caso, el dominio de origen y el dominio de destino también son similares, pero las tareas re­s­pe­c­ti­vas son di­fe­re­n­tes. Además, los datos no están eti­que­ta­dos. El modelo aprende las di­fe­re­n­cias y si­mi­li­tu­des entre los datos no eti­que­ta­dos y puede ge­ne­ra­li­zar­los.
  • Mu­l­ti­ta­rea: con este enfoque, un modelo lleva a cabo varias tareas si­mu­l­tá­nea­me­n­te que, aunque no son idénticas, están re­la­cio­na­das entre sí. Esto permite compartir el co­no­ci­mie­n­to entre las di­fe­re­n­tes tareas.
  • Pre­di­c­ción: en esta forma de apre­n­di­za­je por tra­n­s­fe­re­n­cia, el modelo debe completar ciertos aspectos in­co­m­ple­tos de los datos por sí mismo. Por ejemplo, predecir palabras dentro de una oración. Los re­su­l­ta­dos pueden mejorar mediante pequeños ajustes.
  • Zero-Shot y Few-Shot: esta es también una forma de apre­n­di­za­je por tra­n­s­fe­re­n­cia en el campo de la IA ge­ne­ra­ti­va, en la que el co­no­ci­mie­n­to de una fuente se tra­n­s­fie­re a un objetivo cuando hay o bien pocas coin­ci­de­n­cias (Few-Shot) o ninguna (Zero-Shot). Este método se utiliza cuando se dispone de muy pocos datos de en­tre­na­mie­n­to.
  • Des­aco­pla­mie­n­to: en este enfoque, los datos se dividen en di­fe­re­n­tes factores. El modelo puede, por ejemplo, analizar y manipular el estilo y el contenido por separado.

Áreas de apli­ca­ción de transfer learning

Existen numeras áreas de apli­ca­ción posibles para el transfer learning. Este método ahorra co­n­si­de­ra­ble­me­n­te en costes, tiempo y recursos, lo que conlleva numerosos be­ne­fi­cios. Las áreas más im­po­r­ta­n­tes hasta ahora incluyen:

  • Re­co­no­ci­mie­n­to de imágenes
  • Re­co­no­ci­mie­n­to de voz
  • Lo­ca­li­za­ción de objetos
  • Dia­g­nó­s­ti­co en el sector sanitario

En el futuro, es muy probable que el transfer learning se utilice en muchos otros campos.

Ir al menú principal