Enfoque de aprendizaje profundo para el reconocimiento de imágenes
Aunque probablemente sea la palabra de moda del siglo, la IA sigue siendo un concepto vago para muchos. Con el fin de aclarar esta ambigüedad, a continuación ofrecemos una introducción sencilla en la que se presentan dos formas en las que las empresas adoptan y desarrollan la IA, y cómo hemos decidido hacerlo nosotros.
Fuera del universo de Westworld, la inteligencia artificial adopta muchas formas, cuenta con una larga trayectoria y está más presente en tu vida cotidiana de lo que podrías imaginar.
Nos ponemos en contacto con amigos en las redes sociales, pedimos un Uber para ir al trabajo, descubrimos nuevas series en Netflix y obtenemos recomendaciones de restaurantes en Maps: todas ellas son una extensión digital de actividades que siempre hemos realizado. Solo que ahora, en gran parte gracias a la inteligencia artificial, la forma en que interactuamos con esos servicios es más rápida, más fácil y más inteligente.
Aprendizaje automático, visión artificial, procesamiento del lenguaje natural, redes neuronales y motores de recomendación: los ingenieros de investigación llevan ya varias décadas desarrollándolos.
Entonces, ¿por qué parece que ahora todo el mundo se está subiendo al carro de la IA?
En 2012, la investigación en inteligencia artificial logró un gran avance con la aparición de las redes neuronales profundas.
Son mucho más potentes que los métodos de aprendizaje anteriores y ofrecen los mejores resultados en numerosos problemas de la vida real. Su desarrollo se ha visto respaldado por los avances en la potencia de cálculo, lo que ha permitido manejar un gran número de parámetros y llevar a cabo un proceso de aprendizaje complejo y con gran volumen de datos.
Las redes neuronales profundas ofrecen potentes soluciones para la detección de objetos, el reconocimiento de imágenes y la segmentación. Para las empresas, suponen una oportunidad para crear una experiencia de usuario excepcional, aumentar la eficiencia y satisfacer a sus clientes.
¿Cómo se desarrollan los productos de IA?
A la hora de crear productos y servicios basados en la inteligencia artificial, las empresas suelen optar por uno de estos dos enfoques: o bien utilizan API «plug&play» y modelos de aprendizaje automático, o bien desarrollan sus propias soluciones especializadas.
Las API listas para usar son la primera opción para muchas empresas, ya que son muy asequibles y fáciles de usar. Los principales proveedores de servicios informáticos las ponen a disposición de los usuarios con el objetivo de atraer a más desarrolladores para que utilicen sus plataformas. Por eso, las API de Amazon Rekognition, Google Vision o Microsoft Cognitive Services son cada vez más avanzadas y potentes.
Sin embargo, estas herramientas no son infalibles. A menudo ofrecen un rendimiento deficiente a la hora de resolver problemas específicos de IA, y las empresas pierden la oportunidad de ofrecer una calidad y una experiencia de usuario óptimas.
Muchas API permiten el reconocimiento de texto en imágenes, pero es casi seguro que no están adaptadas para extraer tipos y formatos específicos, es decir, para dar sentido al texto reconocido. Por ejemplo, no pueden detectar el nombre y los apellidos que figuran en el documento de identidad de una persona ni reconocer un tipo concreto de problema matemático. En Microblink, nos dimos cuenta de esa carencia y dimos un paso más allá para ofrecer al mercado un software de visión artificial especializado y significativamente mejor.
El otro enfoque de IA que adoptan las empresas consiste en desarrollar soluciones propias para aplicaciones especializadas en un producto o servicio concreto. Este enfoque también resulta cada vez más accesible para empezar. La razón principal es el creciente número de conjuntos de datos disponibles públicamente para entrenar modelos de aprendizaje automático. Algunos pueden funcionar incluso para problemas específicos de aprendizaje automático (por ejemplo, el conjunto de datos MS COCO para la detección de objetos, la segmentación y la generación de leyendas).
Además de los conjuntos de datos de fácil acceso, también existen más herramientas de código abierto que simplifican el proceso de aprendizaje. PyTorch y TensorFlow 2.0, las bibliotecas de código abierto de aprendizaje automático más populares para la investigación y la producción, son ahora mucho más fáciles de usar de lo que eran, digamos, hace dos años.
Siento volver a aguar la fiesta, pero este enfoque también tiene una pega. Una cosa es la teoría, pero en los problemas de la vida real puede resultar difícil obtener los resultados deseados. Hay dos problemas habituales a los que hay que prestar atención a la hora de desarrollar soluciones de IA propias:
- La discrepancia entre el conjunto de datos que se utilizó para entrenar los modelos de redes neuronales y los datos reales a los que se aplican dichos modelos. En concreto, los modelos entrenados con conjuntos de datos de acceso público rara vez son adecuados para productos altamente especializados.
- El problema de la aplicabilidad en términos de consumo de recursos, memoria y tiempo, dado que la solución final debe cumplir unos requisitos de eficiencia que a menudo no existen en la fase de investigación del desarrollo de la IA.
(En términos más sencillos, los usuarios finales tienen pocos conocimientos y aún menos paciencia ante los problemas que pueden surgir en los servicios basados en el aprendizaje automático. El servicio tiene que funcionar siempre y tiene que hacerlo rápido.)
Lo mejor de ambos mundos
En los últimos seis años, hemos tomado plena conciencia de las ventajas y los retos que plantean ambos enfoques. Hace varios años, convertimos la IA en el núcleo de nuestra tecnología y nos centramos en el desarrollo de redes neuronales profundas para abordar los siguientes problemas:
- Reconocimiento y extracción de texto en imágenes de documentos de identidad, tarjetas de crédito, tickets de compra e incluso problemas matemáticos
- Detección y clasificación de distintos tipos de documentos
- Análisis de imágenes y otras tareas diversas.
Nos dedicamos a abordar estos retos relacionados con la visión artificial para ofrecer a las empresas experiencias digitales excepcionales, tales como:
- Pagos de facturas sin complicaciones (escaneando los recibos de pago; ¿a quién le apetece ya ir al banco?)
- Fácil control de gastos (escaneando los tickets de compra en lugar de introducir manualmente cada artículo adquirido)
- Incorporación de usuarios a distancia (mediante el escaneo de documentos de identidad o tarjetas de crédito)
- Dominar las matemáticas con facilidad (utilizando una aplicación para escanear, resolver y aprender conceptos matemáticos)
Utilizamos un enfoque integrado que combina lo mejor de las dos perspectivas mencionadas anteriormente, y nuestro éxito confirma que vamos por buen camino. Nuestra tecnología tiene un alcance global, lo que ahorra tiempo y facilita las tareas cotidianas a más de 100 millones de usuarios finales en todo el mundo. Photomath, que hoy en día es una empresa independiente de Microblink, es la aplicación número uno para aprender matemáticas, cuenta con más de 120 millones de descargas y recientemente se ha integrado en Snapchat. BlinkReceipt, nuestro producto para escanear tickets de compra, se ha utilizado hasta la fecha para escanear más de 180 millones de tickets. BlinkCard, nuestro producto más reciente, es el software de escaneo más rápido y preciso para diversos tipos de tarjetas de crédito y bancarias.
Si esto te ha despertado la curiosidad, ¡genial! Hemos compartido más consejos en otra publicación: Nuestra guía de 5 pasos para el desarrollo de la IA.