|
Download README.md from RohanArk/TermMap-DX: direct link, hf CLI and curl.
- Browser
- Download file 2.73 kB
-
https://huggingface.co/RohanArk/TermMap-DX/resolve/main/README.md
- Command line
-
hf download hf://RohanArk/TermMap-DX/README.md
-
curl -L -o README.md https://huggingface.co/RohanArk/TermMap-DX/resolve/main/README.md
2.73 kB
| license: apache-2.0 | |
| language: en | |
| tags: | |
| - medical | |
| - clinical-coding | |
| - icd-10-cm | |
| - snomed-ct | |
| - entity-linking | |
| - learning-to-rank | |
| # TermMap-DX: trained artifacts | |
| Trained models for **TermMap-DX**, an engine that maps clinical terms extracted from charts to | |
| one ICD-10-CM code and one SNOMED CT concept (HiLabs Hackathon 2026). The code lives in the team's | |
| GitHub repository, [Shresth-Negi/TermMap-DX](https://github.com/Shresth-Negi/TermMap-DX) (private; | |
| judges have access). There, `scripts/download_artifacts.py` pulls these files into place, and | |
| `scripts/run_all.sh` does so automatically before mapping an input file: | |
| ```bash | |
| git clone https://github.com/Shresth-Negi/TermMap-DX.git && cd TermMap-DX | |
| # set up the environment as in the README, put the challenge files in data/raw/, then | |
| bash scripts/run_all.sh <input.csv> outputs/predictions.csv # downloads these artifacts first | |
| ``` | |
| ## Contents | |
| | files | what | | |
| |---|---| | |
| | `ce_ICD10CM_d3e4/`, `ce_SNOMEDCT_US_d3e4/` | cross-encoders fine-tuned from `cambridgeltl/SapBERT-from-PubMedBERT-fulltext` (4 epochs, listwise loss over candidate shortlists) | | |
| | `ranker_<system>_s1<set>.txt`, `ranker_<system>_s2<set>.txt` (+ `.json` feature lists) | LightGBM LambdaRank models, stage 1 and stage 2, per coding system | | |
| | `calib_<system><set>.json` | isotonic calibration (ranker margin -> P(correct)) | | |
| | `config<set>.json` | model-set configuration: encoders, cross-encoder, LLM, fallback set | | |
| | `emb_<encoder>_<system>.npy` | float16 embeddings of every unique dictionary description (row = description id rebuilt by the code from the supplied dictionaries) for SapBERT, gte-base and Qwen3-Embedding-0.6B | | |
| | `manifest.json` | sha256 and size of every file | | |
| Model sets: `_d3llm14e4` (default; adds Qwen2.5-14B-Instruct scores at inference), `_d3llm7e4` | |
| (Qwen2.5-7B-Instruct), `_d3ce4` (no LLM), `_sap4` (SapBERT only, lightest). The LLMs and encoders | |
| are not included; they are pulled from their public Hugging Face repositories. | |
| ## Results (5-fold cross-validation on the training file) | |
| | set | ICD-10-CM exact match | SNOMED CT exact match | | |
| |---|---|---| | |
| | `_d3llm14e4` | 0.708 | 0.582 | | |
| | `_d3llm7e4` | 0.702 | 0.567 | | |
| | `_d3ce4` | 0.684 | 0.543 | | |
| | `_sap4` | 0.658 | 0.507 | | |
| ## Training data and licences | |
| Trained on the HiLabs hackathon training file (proprietary; not included here). The supplied | |
| ICD-10-CM and SNOMED CT US dictionaries define the answer space; the embedding matrices are | |
| derived from their descriptions, so use is subject to the SNOMED CT licence terms that apply to | |
| you. Base models: SapBERT (Apache-2.0), gte-base (MIT), Qwen3-Embedding-0.6B (Apache-2.0), | |
| Qwen2.5-7B/14B-Instruct (Apache-2.0, used at inference only). | |