research: tune the classifier inside `score_leadership_prospects` on a fiscal-year grouped fold
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- python, scikit-learn
- Área
- machine-learning
Línea de trabajo
Start in philanthropy/models/_upgrade.py at score_leadership_prospects to see which inner classifier settings are exposed, then read philanthropy/model_selection/_temporal_donor_splitter.py for FiscalYearGroupedSplitter. Run a small grid with that splitter, not a random split, and compare hit rates on the KDD98, DonorsChoose and PSID Results files via scripts/make_results_pages.py. Done means a changed default only if it wins on validation and loses on no test fold, or a recorded rejection with numbers. Comment on the issue before starting.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Goal
Check whether the leadership-upgrade model's inner classifier settings can be improved without leaking future years.
Acceptance criteria
- Tune a small grid of
MajorGiftClassifiersettings withFiscalYearGroupedSplitter, never a random split. Start from tree shape (max_leaf_nodes,min_samples_leaf) andclass_weight: theMajorGiftClassifierdocstring already records thatlearning_rate=0.05, max_iter=300scored the same as the defaults on a KDD Cup 1998 validation fold (response target, five seeds), because early stopping kicks in above 10,000 rows. Re-test those two only on the leadership target, where files are smaller. - Tune on the same rows the function trains on: build them with
philanthropy.ingest.build_leadership_snapshotsand fitMajorGiftClassifierdirectly.score_leadership_prospectstakes no classifier settings (it buildsMajorGiftClassifier(random_state=...)atphilanthropy/models/_upgrade.pyaround lines 461 and 530). - Compare against the current defaults on the existing Results files (KDD98, DonorsChoose, PSID) on top-10% hit rate with intervals.
- Change the default only if it wins on the validation fold and doesn't lose on the test fold of any file; otherwise record the rejection with numbers. A winning setting changes the two
MajorGiftClassifier(...)calls in_upgrade.py, notMajorGiftClassifier's own defaults, which the response Results also depend on.
Scope
Tuning only. The report keys and the CLI output stay the same.
Where to start
philanthropy/models/_upgrade.py(score_leadership_prospects)philanthropy/model_selection/_temporal_donor_splitter.pyscripts/make_results_pages.py
Dependencies
- None
Phase order is a release plan, not a rule against picking up independent work early. Comment on this issue before you start so two people don't build the same thing.
- Lenguaje dominante
- Python
- Estrellas
- 11
- Forks
- 23
- Merge medio
- 2 d 19 h
- PR fusionados (30 d)
- 31
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de PhilanthroPy-Project/PhilanthroPy
-
bug roadmap
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
PhilanthroPy-Project/PhilanthroPy#366 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue roadmap
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
PhilanthroPy-Project/PhilanthroPy#361 ·
Los mantenedores suelen responder en 1 día
-
beginner documentation good first issue roadmap
Dificultad 1/5 1-3 horas Aptitud para principiantes 82/100
PhilanthroPy-Project/PhilanthroPy#360 ·
Los mantenedores suelen responder en 1 día
-
enhancement help wanted roadmap
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
PhilanthroPy-Project/PhilanthroPy#345 ·
Los mantenedores suelen responder en 1 día
-
beginner documentation good first issue roadmap
Dificultad 2/5 Medio día Aptitud para principiantes 68/100
PhilanthroPy-Project/PhilanthroPy#342 ·
Los mantenedores suelen responder en 1 día
Todos los issues de PhilanthroPy-Project/PhilanthroPy
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
huggingface/deep-rl-class#723 ·
-
[tool] bug: Qwen3 XML tool parser raises on `...` argument values (Ellipsis is not JSON serializable)Posiblemente ocupada @super-yuki la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 87/100
verl-project/verl#8559 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
TencentCloud/octop-harness#228 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
google/osv-scalibr#2585 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
NousResearch/hermes-agent#149323 ·
Los mantenedores suelen responder en 1 día