Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Duplicate and incomplete definitions of `_graph_nodes` and `grad_check`

Abierto Apto para principiantes
#8 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
65/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Tranquilo
Stack tecnológico
numpy, python

Línea de trabajo

Empieza leyendo leanpass/tensor.py y comparando las dos definiciones de _graph_nodes y grad_check; verifica el tipo de retorno documentado y las pruebas existentes. Ejecuta las pruebas relevantes después de eliminar los duplicados y completar la comprobación de gradientes. Hecho significa que queda una definición correcta de cada función y grad_check devuelve las tuplas de error documentadas.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

good first issue

File: leanpass/tensor.py

The file defines _graph_nodes and grad_check twice. The second definitions overwrite the first ones, but the second grad_check is truncated (numeric[node] = ) and contains several bugs (calls node.zero_grad_all(), uses undefined self.zero_grad_all(), mismatched return types). This makes the gradient‑checking utility unusable and may silently break other code that expects the original implementation.

Fix: Remove the duplicated definitions. Keep a single, correct implementation of _graph_nodes (the first one is fine) and a complete, tested grad_check that:

  • Uses self.zero_grad_all() to clear grads.
  • Computes numerical gradients correctly (e.g., using np.sum(plus) - np.sum(minus) for scalar outputs).
  • Returns a list of error tuples as documented.

File: leanpass/tensor.py

Filed automatically by ai-issue-scan.

Lenguaje dominante
Python
Estrellas
16
Forks
1
Merge medio
2 d 8 h
PR fusionados (30 d)
5

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de Terminay/leanpass

Todos los issues de Terminay/leanpass

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.