Descripción
Este repositorio de GitHub, chennnM/GCNII, ofrece una implementación en PyTorch del artículo de investigación "Simple and Deep Graph Convolutional Networks" (GCNII). El proyecto tiene como objetivo proporcionar a investigadores y desarrolladores una base de código fácilmente accesible y funcional para experimentar y construir sobre GCNII.
Leer más
La implementación soporta varios conjuntos de datos de grafos, incluyendo conjuntos de referencia como Cora, Citeseer y Pubmed, así como conjuntos de datos adicionales como Chameleon, Cornell, Texas y Wisconsin. Permite la replicación de entornos de aprendizaje tanto semi-supervisados como totalmente supervisados, reflejando las configuraciones experimentales descritas en investigaciones relacionadas como GCN y Geom-GCN. El repositorio también incluye scripts para ejecutar estos experimentos, lo que facilita la reproducción de los resultados reportados.
Los componentes clave de la implementación incluyen la arquitectura central del modelo, utilidades de carga y preprocesamiento de datos, y scripts de entrenamiento. El proyecto detalla sus dependencias, como CUDA, Python, PyTorch, NetworkX y scikit-learn, asegurando que los usuarios puedan configurar su entorno correctamente. Además, se proporciona una implementación de referencia dentro de la carpeta PyG (PyTorch Geometric) para aquellos que prefieren o requieren integración con la biblioteca PyTorch Geometric, con requisitos de versión específicos para torch-geometric y ogb.
El repositorio también presenta un resumen de los resultados de precisión de las pruebas en diferentes conjuntos de datos y configuraciones, ofreciendo un punto de referencia para que los usuarios comparen sus propias implementaciones o hallazgos. Las instrucciones de uso son claras, guiando a los usuarios sobre cómo ejecutar los scripts de shell proporcionados para experimentos semi-supervisados, totalmente supervisados e inductivos de PPI. Esto hace que el modelo GCNII sea accesible para aplicaciones prácticas en tareas de aprendizaje automático basadas en grafos.
El proyecto se mantiene activamente, con actualizaciones recientes en el archivo README. Destaca la naturaleza colaborativa del desarrollo de código abierto, con contribuciones y bifurcaciones que indican la participación de la comunidad. El idioma principal utilizado es Python, con un pequeño porcentaje de scripting Shell para fines utilitarios. Este recurso es valioso para cualquier persona interesada en redes neuronales de grafos avanzadas y sus aplicaciones.
- CategoríaPlataformas de aprendizaje automático
- Modelo de preciosCódigo abierto
- ImplementaciónNube, Autoalojado
- PlataformasLinux, Windows
Características principales de GCNII
Implementación en PyTorch del modelo GCNII
Soporta aprendizaje semi-supervisado
Soporta aprendizaje totalmente supervisado
Incluye conjuntos de datos de referencia (Cora, Citeseer, Pubmed)
Incluye conjuntos de datos adicionales (Chameleon, Cornell, Texas, Wisconsin)
Proporciona scripts para replicar resultados experimentales
Ofrece una implementación de referencia en PyTorch Geometric
Detalla las dependencias para la configuración del entorno
Resume los resultados de precisión de las pruebas
Incluye instrucciones de uso para experimentos
Código escrito principalmente en Python
Primeros pasos con GCNII
Configurar el entorno: Instalar CUDA, Python 3.6.9, PyTorch 1.3.1, NetworkX 2.1, scikit-learn.
Descargar conjuntos de datos: Colocar los datos en las carpetas 'data' y 'newdata'.
Replicar resultados semi-supervisados: Ejecutar `sh semi.sh`.
Replicar resultados totalmente supervisados: Ejecutar `sh full.sh`.
Replicar resultados inductivos de PPI: Ejecutar `sh ppi.sh`.
Integrar la implementación de PyG: Asegurarse de que torch-geometric >= 1.5.0 y ogb >= 1.2.0 estén instalados.
Ejecutar ejemplos de PyG: Ejecutar `python cora.py` o `python arxiv.py`.
Casos de uso de GCNII
- Investigación en Redes Neuronales de Grafos
- Reproducción de Resultados de Investigación
- Aprendizaje Automático Basado en Grafos
- Benchmarking de Modelos
- Herramienta Educativa
- Aprendizaje Inductivo en Grafos








