UMLS Code To HPO Code Mapping

Description

This pretrained model maps UMLS codes to corresponding HPO codes. It also returns all the possible HPO codes in the all_k_resolutions in the metadata.

Copy S3 URI

How to use


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

chunk_assembler = Doc2Chunk()\
      .setInputCols(["document"])\
      .setOutputCol("umls_code")

mapperModel = ChunkMapperModel.pretrained("umls_hpo_mapper", "en", "clinical/models")\
    .setInputCols(["umls_code"])\
    .setOutputCol("mappings")\
    .setRels(["hpo_code"])

mapper_pipeline = Pipeline(stages=[
    document_assembler,
    chunk_assembler,
    mapperModel
])

data = spark.createDataFrame([["C2973529"],["C0000731"],["C0008035"]]).toDF("text")
result = mapper_pipeline.fit(data).transform(data)


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

chunk_assembler = nlp.Doc2Chunk()\
      .setInputCols(["document"])\
      .setOutputCol("umls_code")

mapperModel = medical.ChunkMapperModel.pretrained("umls_hpo_mapper", "en", "clinical/models")\
    .setInputCols(["umls_code"])\
    .setOutputCol("mappings")\
    .setRels(["hpo_code"])

mapper_pipeline = nlp.Pipeline(stages=[
    document_assembler,
    chunk_assembler,
    mapperModel
])

data = spark.createDataFrame([["C2973529"],["C0000731"],["C0008035"]]).toDF("text")
result = mapper_pipeline.fit(data).transform(data)


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

val chunk_assembler = new Doc2Chunk()
      .setInputCols("document")
      .setOutputCol("umls_code")

val mapperModel = ChunkMapperModel.pretrained("umls_hpo_mapper", "en", "clinical/models")
    .setInputCols("umls_code")
    .setOutputCol("mappings")
    .setRels(Array("hpo_code"))

val mapper_pipeline = new Pipeline().setStages(Array(
    document_assembler,
    chunk_assembler,
    mapperModel
))

val data = Seq("C2973529", "C0000731", "C0008035").toDF("text")

val result = mapper_pipeline.fit(data).transform(data)

Results


+---------+----------+-----------------+
|umls_code|  hpo_code|all_k_resolutions|
+---------+----------+-----------------+
| C2973529|HP:0011944|    HP:0011944:::|
| C0000731|HP:0003270|    HP:0003270:::|
| C0008035|HP:0006649|    HP:0006649:::|
+---------+----------+-----------------+

Model Information

Model Name: umls_hpo_mapper
Compatibility: Healthcare NLP 6.0.4+
License: Licensed
Edition: Official
Input Labels: [ner_chunk]
Output Labels: [mappings]
Language: en
Size: 35.4 KB