vccs
Vue 3용 차트 컴포넌트 모음, Recharts에서 포팅
EtioMap은 흔한 호흡기 질환의 화학적 원인을 매핑해 새로운·기존 화학‑질환 연관성을 탐색하고 생물학적 경로를 추적합니다
EtioMap maps the chemical etiology of common respiratory disease. Explore new and documented chemical–disease associations and trace the biological pathways behind them.
데이터HTML · JavaScriptGitHub @Shreyas23x온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Predicting and explaining which chemicals are associated with respiratory
diseases, using two complementary engines built from the same CTD data.README 전문 보기 ↗Predicting and explaining which chemicals are associated with respiratory diseases, using two complementary engines built from the same CTD data.
01_data_comparison/ Full 0/1 grid vs. actual data + diagnosis of the old model
02_model/ Disease → chemical XGBoost model with REAL chemical features
03_network/ Combined chemical → disease network (pathway middleman removed)
04_backend/ FastAPI backend serving both, with a demo UI
_data/ Source CSVs (CTD exports)
The original XGBoost model scored low because its only inputs were the identities
of the chemical and disease — and 82% of chemicals appear with just one disease, so
there was nothing to generalise from (see 01_data_comparison/FINDINGS.md). The fix
runs on two tracks: (1) give the model real chemistry — PubChem molecular
descriptors per chemical (02_model); and (2) link chemicals to diseases through
shared biological pathways instead of memorised IDs (03_network). The
04_backend API exposes both, returning ranked chemicals per disease and an
explorable chemical→disease graph labelled with common names.
See RESULTS.md for the headline numbers. All four stages were executed
locally against live PubChem + KEGG (not just the seed), artifacts are committed,
and the backend was verified end-to-end.
| Stage | Real output |
|---|---|
| Coverage | PubChem 383/474 CIDs · KEGG 290/474 IDs (after a second-pass resolver; the rest are MeSH category terms like "Air Pollutants" with no structure/pathway) |
| Model | Honest grouped-by-chemical ROC-AUC ≈0.80; full-grid 0/1 comparison acc 0.883, F1 0.721 |
| Network | 290/474 chemicals mapped to KEGG → 366 edges (135 known + 231 novel candidates), all 6 diseases |
| Backend | All endpoints live, model_ready: true, demo UI served |
Coverage was expanded with
_cache/improve_coverage.py(CAS retry + salt/qualifier stripping for PubChem; exact-match + cleaned-name + synonym aliases for KEGG). KEGG drugs are deliberately excluded — they only link to drug-class maps (e.g. "Macrolides"), not metabolic pathways, so including them would create meaningless shared-pathway edges.
Local runnable scripts (used here, cache to _cache/ so PubChem/KEGG hit once):
python 02_model/run_model_local.py → 02_model/model_artifacts/python 03_network/run_network_local.py → 03_network/network_data.jsonpython 01_data_comparison/run_real_comparison.py → real prediction_comparison.xlsxcd 04_backend && pip install -r requirements.txt && uvicorn app.main:app --reloadThe Colab notebooks (*.ipynb) contain the same logic for anyone running in Drive;
the run_*_local.py scripts are the desktop equivalents and produced the committed
artifacts.