Compartir:
GraphStorm, un innovador marco empresarial de aprendizaje automático en grafos (GML) de bajo código, se está consolidando como una herramienta fundamental en la construcción, entrenamiento y despliegue de soluciones grafo-relacionadas a una escala empresarial, logrando reducir significativamente el tiempo de implementación de meses a días. Esta herramienta permite que las soluciones consideren la compleja estructura de relaciones e interacciones entre miles de millones de entidades, lo cual es crucial para tareas como la detección de fraude, recomendaciones personalizadas, identificación de comunidades y otros desafíos en búsqueda y recuperación de datos del mundo real.
Hoy se ha lanzado la versión 0.3 de GraphStorm, que introduce el soporte nativo para el aprendizaje multitarea en grafos. Con esta nueva capacidad, es posible definir múltiples objetivos de entrenamiento en distintos nodos y aristas dentro de un solo ciclo de entrenamiento, permitiendo una mayor versatilidad en el procesamiento de datos. Esta versión también presenta nuevas APIs que facilitan la personalización de los procesos en GraphStorm. Por ejemplo, ahora es posible implementar un bucle de entrenamiento de clasificación de nodos personalizado con solo 12 líneas de código. Para ayudar a los usuarios a iniciarse con estas nuevas APIs, se han publicado ejemplos prácticos en Jupyter notebooks, incluyendo una guía para la clasificación de nodos y otra para la predicción de enlaces. Además, se ha realizado un estudio detallado sobre el co-entrenamiento de modelos de lenguaje (LM) y redes neuronales de grafos (GNN) usando el conjunto de datos Microsoft Academic Graph (MAG).
El soporte nativo para el aprendizaje multitarea en grafos pretende satisfacer las necesidades de diversas aplicaciones empresariales que operan con datos de grafos para múltiples tareas. Por ejemplo, empresas minoristas interesadas en identificar fraudes tanto en vendedores como en compradores, o editoriales científicas que buscan relacionar trabajos de manera adecuada para mejorar su visibilidad y citación.
GraphStorm 0.3 soporta seis tareas comunes en el aprendizaje multitarea en grafos: clasificación de nodos, regresión de nodos, clasificación de aristas, regresión de aristas, predicción de enlaces y reconstrucción de características de nodos. Estas tareas se pueden especificar mediante un archivo de configuración YAML, permitiendo una configuración simultánea, como la clasificación de temas en nodos del tipo «paper» y la predicción de enlaces en aristas del tipo «paper-citing-paper».
Desde su lanzamiento a principios de 2023, muchos usuarios han preferido utilizar la interfaz de línea de comandos (CLI) de GraphStorm, que simplifica la creación, entrenamiento y despliegue de modelos mediante recetas predefinidas. Sin embargo, en respuesta a la demanda de una interfaz más flexible, GraphStorm 0.3 presenta APIs refactorizadas que permiten definir pipelines personalizados de entrenamiento de clasificación de nodos, nuevamente con solo 12 líneas de código.
En la versión anterior, GraphStorm introdujo técnicas para el co-entrenamiento eficiente de modelos de lenguaje y GNN a gran escala en grafos con textos ricos. Los usuarios manifestaron interés en optimizar estas técnicas, lo cual llevó al lanzamiento de un benchmark LM+GNN usando el conjunto de datos MAG en tareas estándar de GML como clasificación de nodos y predicción de enlaces.
Las evaluaciones de rendimiento involucraron dos metodologías principales: BERT preentrenado combinado con GNN y BERT afinado combinado con GNN. La metodología BERT afinado + GNN, introducida por los desarrolladores de GraphStorm en 2022, mostró una mejora de hasta un 40% en comparación con el método BERT preentrenado + GNN en la tarea de predicción de enlaces en MAG.
GraphStorm también ha demostrado su escalabilidad al ser evaluado con grafos sintéticos de gran tamaño, manejando eficazmente grafos con hasta 100 mil millones de aristas en cuestión de horas.
Publicada bajo la licencia Apache-2.0, GraphStorm 0.3 está diseñada para enfrentar los desafíos del GML a gran escala, ahora con soporte nativo para el aprendizaje multitarea y nuevas APIs para la personalización de pipelines y otros componentes. Para más información y comenzar a utilizarlo, se puede visitar el repositorio de GitHub y la documentación de GraphStorm.