Duplicate and incomplete definitions of `_graph_nodes` and `grad_check`
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 65/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Calme
- Stack technique
- numpy, python
- Domaine
- machine-learning
Piste de recherche
Commence par lire leanpass/tensor.py et comparer les deux définitions de _graph_nodes et grad_check ; vérifie le type de retour documenté et les tests existants. Exécute les tests pertinents après avoir supprimé les doublons et terminé la vérification du gradient. Terminé signifie qu'il ne reste qu'une définition correcte de chaque fonction et que grad_check renvoie les tuples d'erreur documentés.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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.
- Langage dominant
- Python
- Étoiles
- 16
- Forks
- 1
- Merge moyen
- 2 j 8 h
- PR mergées (30 j)
- 5
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de Terminay/leanpass
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
performance
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Toutes les issues de Terminay/leanpass
Issues similaires
-
Project submission:Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
slavakurilyak/awesome-ai-agents#845 ·
Les mainteneurs répondent en général sous 1 jour
-
tests: pin that the atomic writers in utils/paths.py stage the temporary file in the target's directoryPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertedifficulty:2 enhancement good first issue
Difficulté 1/5 1-3 heures Accessibilité débutants 92/100
MakazhanAlpamys/Soup#2178 ·
Les mainteneurs répondent en général sous 1 jour
-
[BUG] dcg.waggr permutation p-values are folded twice, so near-zero scores get the smallest p-valuesOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
scverse/rapids-singlecell#854 ·
Les mainteneurs répondent en général sous 1 jour
-
Slang input: int8_t4_packed and uint8_t4_packed are copied into CrossGLPeut-être pris @ninglinLiu l’a pris aujourd’hui. Ouvertearea:frontend backend:slang bug direction:input
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
random_elements(unique=True) on an OrderedDict: ZeroDivisionError once only zero weights remain, AssertionError with use_weighting=FalsePeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
Les mainteneurs répondent en général sous 13 jours