1 / 17

Development of ConText Tools in Python

Development of ConText Tools in Python. Brian E. Chapman, PhD, Glenn Dayton, Wendy W. Chapman , PhD. Division of Biomedical Informatics. Caveats and Apologies.

topaz
Download Presentation

Development of ConText Tools in Python

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Development of ConText Tools in Python Brian E. Chapman, PhD, Glenn Dayton, Wendy W. Chapman, PhD Division of Biomedical Informatics

  2. Caveats and Apologies • I’m not a linguist, computational or otherwise, nor am I a grammarian, or multilingual, or particularly well spoken in my native English • In fact I’m a medical physicist who has drifted into imaging informatics with an emphasis on the image part of imaging informatics • Which is a long way of saying that I got into this field because of a specific problem

  3. Motivation • Received NIH funding for computer-aided detection of pulmonary embolism in CT pulmonary angiography (CTPA) • How to identify appropriate cases from clinical PACS?

  4. Case Identification Approach #1 • Talk to an honest broker • Who was obviously overworked • Who used procedure codes from RIS to identify potential cases • Who then read the dictated report • Who then classified the case • Who nearly fainted when I told her I needed hundreds of positive cases • Who then quickly asked, “Do you have a lot of money?”

  5. Case Identification Approach #2 • Honest broker’s task is perfect for NegEx • Use procedure codes to identify reports in MARS repository at University of Pittsburgh • Use NegEx to classify reports as +/- for PE • Within minutes find hundreds of cases • Very happy honest broker

  6. What if you wanted to answer more questions? • Disease uncertainty • Disease temporality • Image quality • Can we a priori specify all of these?

  7. peFinder • Application to characterize CTPA reports • Presence or absence of PE • Temporal state of positive PE • Uncertainty of disease state • Technical quality of the exam

  8. For Review: NegEx Clinical condition: Cough Negation: Negated scope Patient deniescoughbut complains of headache. No change in the patient’s chest pain. trigger term termination term pseudo-trigger term

  9. Python Implementations • What Drove My Organic Design • What existed in NegEx • GUI program written in Tcl/Tk • Lots of enumerated trigger terms • What I wanted • I wanted a package that could be used to build a variety of accurate applications • I wanted it to be easy for others to use • I am an engineer and so lazy • Generalize relationships • Replace exhaustive enumeration of trigger terms with regular expressions

  10. pyConText: Basic Framework • Item Objects: 4-tuple containing Lexical and Domain Knowledge • Literal (label): “pulmonary embolism” • Category/Concept • Regular expression • r‘’‘(pulmonary )(artery )?(embol[a-z]+)’’‘ • Rule • Directional influence of item in sentence • Category interaction?

  11. pyConText: Basic Framework • Item Objects parse sentence to create Tag Objects within sentences • Tag Objects interact/modify each other • Targets • Modifiers • Conjunctions • Prune to eliminate subset tag objects • Directional Graph represents relationships

  12. Did I Meet My Objectives? • Accurate • Yes: JBI 2011 • Modular • Yes: package in pypi • Easy for others to use • Depends on your definition of others • Wilson, et al. Journal of Pathology Informatics • Gentili and Chapman RSNA

  13. Did I Meet My Objectives? • Easy for others to use (continued) • Can any application relying on user to provide regular expressions be defined as easy?

  14. Current and Future Work • Web and GUI applications • Django • Django with Twisted for desktop port

  15. Current and Future Work • Improved Knowledge Representation • Separating linguistic and domain knowledge • Integration with external knowledge bases • Use graphs to further reduce enumeration of items • No/definite/evidence of/pulmonary embolism

  16. Thanks for the invitation • Looking forward to • Learning and • Working and • Skateboarding • For the next three weeks

More Related