{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/radgraph-extracting-clinical-entities-and","title":"RadGraph: Extracting Clinical Entities and Relations from Radiology Reports","arxiv_id":"2106.14463","date":"2021-06-28","proceeding":null,"authors":["Saahil Jain","Ashwin Agrawal","Adriel Saporta","Steven QH Truong","Du Nguyen Duong","Tan Bui","Pierre Chambon","Yuhao Zhang","Matthew P. Lungren","Andrew Y. Ng","Curtis P. Langlotz","Pranav Rajpurkar"],"abstract":"Extracting structured clinical information from free-text radiology reports can enable the use of radiology report information for a variety of critical healthcare applications. In our work, we present RadGraph, a dataset of entities and relations in full-text chest X-ray radiology reports based on a novel information extraction schema we designed to structure radiology reports. We release a development dataset, which contains board-certified radiologist annotations for 500 radiology reports from the MIMIC-CXR dataset (14,579 entities and 10,889 relations), and a test dataset, which contains two independent sets of board-certified radiologist annotations for 100 radiology reports split equally across the MIMIC-CXR and CheXpert datasets. Using these datasets, we train and test a deep learning model, RadGraph Benchmark, that achieves a micro F1 of 0.82 and 0.73 on relation extraction on the MIMIC-CXR and CheXpert test sets respectively. Additionally, we release an inference dataset, which contains annotations automatically generated by RadGraph Benchmark across 220,763 MIMIC-CXR reports (around 6 million entities and 4 million relations) and 500 CheXpert reports (13,783 entities and 9,908 relations) with mappings to associated chest radiographs. Our freely available dataset can facilitate a wide range of research in medical natural language processing, as well as computer vision and multi-modal learning when linked to chest radiographs.","url_abs":"https://arxiv.org/abs/2106.14463v3","url_pdf":"https://arxiv.org/pdf/2106.14463v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"radgraph-extracting-clinical-entities-and","repo_url":"https://github.com/rajpurkarlab/cxr-report-metric","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"relation-extraction","task_name":"Relation Extraction"}],"methods":[],"datasets_introduced":[{"slug":"radgraph","name":"RadGraph","full_name":"RadGraph: Extracting Clinical Entities and Relations from Radiology Reports"}],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2106.14463","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2106.14463"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/rajpurkarlab/cxr-report-metric","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3,"unverified":6},"by_repo_kind":{"listed":{"samples":9,"ran":3,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"b59ac1362f3babba","entry":"compute_f1","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"CXRMetric/radgraph_evaluate_model.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/CXRMetric/radgraph_evaluate_model.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b59ac1362f3babba"}},{"code_sha256_prefix":"8af312e6bf3486f6","entry":"load_list","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"CXRMetric/CheXbert/src/bert_tokenizer.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/CXRMetric/CheXbert/src/bert_tokenizer.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8af312e6bf3486f6"}},{"code_sha256_prefix":"71d87fbd996af446","entry":"parse_entity_relation","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"CXRMetric/radgraph_evaluate_model.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/CXRMetric/radgraph_evaluate_model.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"71d87fbd996af446"}},{"code_sha256_prefix":"bbc5dc5142133340","entry":"batch_identity","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"dygie/models/shared.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/dygie/models/shared.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bbc5dc5142133340"}},{"code_sha256_prefix":"7e0b52001d4f5323","entry":"cumsum_shifted","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"dygie/models/shared.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/dygie/models/shared.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7e0b52001d4f5323"}},{"code_sha256_prefix":"1b01fb249fb7cd71","entry":"fields_to_batches","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"dygie/models/shared.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/dygie/models/shared.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1b01fb249fb7cd71"}},{"code_sha256_prefix":"eea5e5d8721b8cbb","entry":"get_impressions_from_csv","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"CXRMetric/CheXbert/src/bert_tokenizer.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/CXRMetric/CheXbert/src/bert_tokenizer.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"eea5e5d8721b8cbb"}},{"code_sha256_prefix":"9c02cf5d9fb1729c","entry":"prep_reports","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"CXRMetric/run_eval.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/CXRMetric/run_eval.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9c02cf5d9fb1729c"}},{"code_sha256_prefix":"c98cb8be7d52c5c5","entry":"tokenize","repo":"rajpurkarlab/cxr-report-metric","repo_kind":"listed","path":"CXRMetric/CheXbert/src/bert_tokenizer.py","file_url":"https://github.com/rajpurkarlab/cxr-report-metric/blob/HEAD/CXRMetric/CheXbert/src/bert_tokenizer.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c98cb8be7d52c5c5"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}