Hello, This email is with regard to using CTCAE guidelines<https://evs.nci.nih.gov/ftp1/CTCAE/CTCAE_4.03_2010-06-14_QuickReference_5x7.pdf> to assign grades based on severity of Adverse event.
For annotating Severity related parts of text I use this sub-pipeline (shared by Jonas Spenger) ''' // Commands and parameters to create a default relation extraction sub-pipeline. This is not a full pipeline. // Modifiers. Use addLogged to log start and finish of processing. There aren't default models, so set specifically addLogged ModifierExtractorAnnotator classifierJarPath=/org/apache/ctakes/relationextractor/models/modifier_extractor/model.jar // Degree of severity, etc. addLogged DegreeOfRelationExtractorAnnotator classifierJarPath=/org/apache/ctakes/relationextractor/models/degree_of/model.jar // Location. addLogged LocationOfRelationExtractorAnnotator classifierJarPath=/org/apache/ctakes/relationextractor/models/location_of/model.jar ''' Now as output there is a 'Degree of Text Relation', that has two arguments With one argument being the modifier (the adjective) and other the actual event. This is what we use to identify severity of events. Example 1: Given this text "The patient reported mild abdominal pain." Relation pipeline annotates as given below as part of DegreeofTextRelation Cas Modifier : "mild" Event : "abdominal pain" Now from the CTCAE document : Adverse Event Grade 1 Grade 2 Grade 3 Grade 4 Grade 5 Abdominal pain Mild Pain Moderate pain; limiting instrumental ADL* Severe pain; limiting self-care ADL* -- Death *ADL - Activities of Daily Living Hence I can write a simple dictionary look up that will assign 'Grade 1' to the event mentioned above. Example 2: Given this text "Patient was admitted with high fever and severe abdominal . Her medical history showed that she had been prescribed ABC antibiotics for typhlitis for last one week." Modifier : "high" & Event : "fever" Modifier : "severe" & Event : "abdominal pain" >From CTCAE : Adverse Event Grade 1 Grade 2 Grade 3 Grade 4 Grade 5 Typhlitis -- -- Symptomatic (e.g., abdominal pain, fever, change in bowel habits with ileus); peritoneal signs Life-threatening consequences; urgent operative intervention indicated Death Now a simple dictionary look up will not be enough for multiple reasons: * Fever can both be a symptom and an Event. See above table(Typhlitis) for Fever as symptom and below for Fever as event. Adverse Event Grade 1 Grade 2 Grade 3 Grade 4 Grade 5 Fever 38.0 - 39.0 degrees C (100.4 - 102.2 degrees F) >39.0 - 40.0 degrees C (102.3 - 104.0 degrees F) >40.0 degrees C (>104.0 degrees F) for <=24 hrs >40.0 degrees C (>104.0 degrees F) for >24 hrs Death * The criteria for assigning Grades are for human interpretation and not for text matching using algorithms. I would request the community to recommend a strategy for binning these events. I understand I would need to write code to do this, can someone point out a generic algorithm for doing this. (Python 3 using NLTK module) Comments, pointers, links to documents is much appreciated. Regards,
<<attachment: winmail.dat>>
