Mapping ICD10 Codes with Their Corresponding ICD11 Codes

Description

This model performs conversion of clinical entities and concepts from ICD-10 coding to their corresponding ICD-11 codes. Trained on the WHO ICD-11 2026-01 release.

Live Demo Open in Colab Copy S3 URI

How to use


document_assembler = DocumentAssembler()\
    .setInputCol("text")\
    .setOutputCol("document")

doc2chunk = Doc2Chunk()\
    .setInputCols(["document"])\
    .setOutputCol("ner_chunk")

icd10_icd11_mapper = ChunkMapperModel.pretrained("icd10_icd11_mapper_202601", "en", "clinical/models")\
    .setInputCols(["ner_chunk"])\
    .setOutputCol("mappings")\
    .setRels(["icd11_code"])  # or relation_type

pipeline = Pipeline(stages=[document_assembler, doc2chunk, icd10_icd11_mapper])
data = spark.createDataFrame([[c] for c in ['A00', 'A04', 'I10']], ["text"])
result = pipeline.fit(data).transform(data)


document_assembler = nlp.DocumentAssembler()\
    .setInputCol("text")\
    .setOutputCol("document")

doc2chunk = nlp.Doc2Chunk()\
    .setInputCols(["document"])\
    .setOutputCol("ner_chunk")

icd10_icd11_mapper = medical.ChunkMapperModel.pretrained("icd10_icd11_mapper_202601", "en", "clinical/models")\
    .setInputCols(["ner_chunk"])\
    .setOutputCol("mappings")\
    .setRels(["icd11_code"])  # or relation_type

pipeline = nlp.Pipeline(stages=[document_assembler, doc2chunk, icd10_icd11_mapper])
data = spark.createDataFrame([[c] for c in ['A00', 'A04', 'I10']], ["text"])
result = pipeline.fit(data).transform(data)


val documentAssembler = new DocumentAssembler()
    .setInputCol("text")
    .setOutputCol("document")

val doc2chunk = new Doc2Chunk()
    .setInputCols("document")
    .setOutputCol("ner_chunk")

val icd10Icd11Mapper = ChunkMapperModel
    .pretrained("icd10_icd11_mapper_202601", "en", "clinical/models")
    .setInputCols(Array("ner_chunk"))
    .setOutputCol("mappings")
    .setRels(Array("icd11_code"))  // or relation_type

val pipeline = new Pipeline().setStages(Array(documentAssembler, doc2chunk, icd10Icd11Mapper))
val data = Seq(['A00', 'A04', 'I10']).toDF("text")
val result = pipeline.fit(data).transform(data)

Results

| icd10_code   | icd11_code   | all_k_resolutions    |
|:-------------|:-------------|:---------------------|
| A00          | 1A00         | 1A00                 |
| A04          | 1A0Z         | 1A0Z:::1A03.Z:::1A01 |
| I10          | BA00.Z       | BA00.Z               |

Model Information

Model Name: icd10_icd11_mapper_202601
Compatibility: Healthcare NLP 6.4.1+
License: Licensed
Edition: Official
Input Labels: [ner_chunk]
Output Labels: [mappings]
Language: en
Size: 171.7 KB