Hace unos días en el webinar “Modernizando los servicios financieros” hablamos con Daniele Angeli, Stuart Tarmy y Lois Townsend sobre aplicaciones de #IA en gestión de pagos y reconocimiento de fraude y mencionamos algunos tipos de soluciones, desde árboles de decisión hasta Machine Learning (ML). Por último, señalamos que la toma de decisiones basada en las técnicas más avanzadas debe ser bien supervisada en tiempo real, también para evitar infringir inadvertidamente la legislación vigente y sufrir fuertes multas.
¿Por qué existe este peligro de “falta de conciencia”?
Escribí con Alessandro Bellini en el libro Python and Machine Learning, McGraw Hill 2022: en el enfoque ML, el programador ya no escribe la función (algoritmo), sino que la calcula mediante otro algoritmo que “aprende” de los datos contenidos en el conjunto de datos. El algoritmo se llama, en la jerga de ML, modelo. Hay diferentes tipos de modelos disponibles.
Para la clasificación, se puede utilizar un clasificador bayesiano para establecer el género de un libro, o una Red Neural Convolucional (CNN) para establecer en qué “fotogramas” de un vídeo hay un arma. Por generación, se utilizará un StyleGAN para transformar una “selfie” en un retrato de Leonardo da Vinci. Para la toma de decisiones se utilizará una técnica de aprendizaje por refuerzo profundo para ganar un videojuego con capacidades sobrehumanas.
Las técnicas de ML se pueden agrupar en: aprendizaje supervisado, aprendizaje no supervisado, aprendizaje semi-supervisado, aprendizaje por transferencia y aprendizaje por refuerzo. Por ejemplo, el aprendizaje supervisado requiere que para cada dato del conjunto de datos se indiquen los valores de entrada y el resultado de salida correspondiente. Se pide al modelo que aprenda de estos “ejemplos” para crear una función capaz de resolver incluso casos nuevos, es decir, no previstos por el conjunto de datos. El valor de salida correspondiente a los valores de entrada de cada dato en el conjunto de datos se llama etiqueta.
Mientras que en el aprendizaje no supervisado (UL), los datos del conjunto de datos solo tienen los datos de entrada y no necesitan etiquetas. UL también se utiliza para la extracción de características, es decir, patrones distintivos y recurrentes en datos no estructurados, o más bien con una estructura bastante flexible, como las imágenes. También se usa en algunos sistemas generativos, por ejemplo, colocas imágenes en la entrada y ves si la red pudo reproducir esas entradas en la salida. Una vez que ha adquirido la capacidad de reproducir las imágenes de entrada, la red aprende y, en teoría, está lista para generar otras imágenes de ese tipo incluso si no forman parte del conjunto de datos utilizado para el entrenamiento.
Los principales avances en las tecnologías de la información, como los vehículos autónomos, los nuevos medicamentos y sistemas de medicina de diagnóstico, el arte generado por computadora, se deben a las técnicas de Deep Learning (DL). DL es un subconjunto de ML que calcula una función con redes neuronales que se configuran mediante el descubrimiento de jerarquías de características en el conjunto de datos donde, como ya se mencionó, una característica significa cualquier patrón reconocible dentro de un conjunto de datos, como una imagen. En general, cualquier tipo de señal, como una señal de radio, un sonido, un vídeo, tiene una parte de información y una parte de ruido que oscurece el contenido de la información. Una característica puede interpretarse como una pieza de información contenida en un conjunto de datos más grande.
La DL explora características que son patrones de números que no siempre tienen una contraparte intuitiva en nuestros sentidos, como los ojos. Cuanto más profundiza la DL, más extrae características cada vez más sofisticadas y, a nuestro entender, contraintuitivas. Esta capacidad de extraer características “en profundidad” sugiere algunas características típicas de DL: la necesidad de grandes conjuntos de datos (¡cuantas más imágenes tengo de gatos, más universo de características felinas tengo!), el gran esfuerzo computacional, la pérdida sustancial de control De hecho, el programador no sabe a priori cuáles o cuántas características hay y, en consecuencia, no puede actuar directamente sobre las características.
De ahí la “falta de conciencia”.
Escrito por Andrea Guidi en su LikedIn Newsletter