You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ctakes.apache.org by "Abramowitsch, Peter" <pa...@hearst.com> on 2015/08/25 23:37:44 UTC

multiple issues with Ctakes 3.2.2

Hello Ctakes Dev

This is a general set of question which may reflect a bad install on my part or something going on in the 3.2 version that is more than just a set of boundary case bugs.   I am a newcomer to CTakes, but have spent a lot of time with StanfordCoreNLP, writing annotators, and with SemRep etc.... so not completely naive.

I have a UMLS license which is recognized by Ctakes as well as the resource dictionary set and I get no errors there, but I am not getting a number of annotations for even simple cases, and exceptions when enabling others.  If any of these point to ignorance or a bad installation, on my part, can you please point me to any other documentation besides what's exposed on your site that could help?  Each of these issues is something that was demonstrated as working in one or other of the videos on your site, but does not work on mine.  Here are some examples

  1.  When encountering a Medication.  It finds the ontology codes, but does not tease out the start, end, dose, route etc except in a very few cases
  2.  When encountering a Sign or Symptom it finds no relevant details besides the codes
  3.  Negation never works ( I have tried enabling it in my copy of the pipeline but that doesn't help )
  4.  I cannot figure out how to wire in the TemporalAnnotation engine.    When I try to do that I get an initialization exception for the "temporal.ae.BackwardsTimeAnnotator"   (there's no exception information written to the logfile"

Here's an example of points 2 and 3.

Pipeline - a copy of FastUMLSPlainText with Negation enabled in the workflow and declarations
...

<delegateAnalysisEngine key="NegationAnnotator">
      <import location="../../../ctakes-ne-contexts/desc/NegationAnnotator.xml"/>
</delegateAnalysisEngine>

...

        <node>DependencyParser</node>
        <node>SemanticRoleLabeler</node>
        <node>ConstituencyParser</node>
        <!-- <node>AssertionAnnotator</node> -->
        <node>StatusAnnotator</node>
        <node>NegationAnnotator</node>
        <node>GenericCleartkAnalysisEngine</node>
        <node>HistoryCleartkAnalysisEngine</node>

....

Input text
the patient denies having any left-side numbness or chest pain in the last 48 hours

The SignSymptomMention for numbness

[cid:03CAA036-F27E-44B3-B05A-2245794F177E]



Re: multiple issues with Ctakes 3.2.2

Posted by britt fitch <br...@wiredinformatics.com>.
I’ll take a stab at a few of those questions.

2. Which details are you hoping to obtain, “left-side”? This is not currently extracted as part of core.

3. The old negation module, the one you have uncommented, uses a left/right scope around a negative keyword. Defined in either the xml descriptor or in the class if its been ported to uima-fit style params. My guess if that the scope is shorter than the distance of terms between “denies” and the annotation you desire to be negated. Its also possible “denies” wasnt accounted for, but you could swap it for something else like “does not have” or “no evidence of” or the like to confirm.

Was an image pasted after "The SignSymptomMention for numbness” it renders as a ?-box for me

Hope that helps.

Cheers,

Britt


Britt Fitch
Wired Informatics
265 Franklin St Ste 1702
Boston, MA 02110
http://wiredinformatics.com
Britt.Fitch@wiredinformatics.com

> On Aug 25, 2015, at 5:37 PM, Abramowitsch, Peter <pa...@hearst.com> wrote:
> 
> Hello Ctakes Dev
> 
> This is a general set of question which may reflect a bad install on my part or something going on in the 3.2 version that is more than just a set of boundary case bugs.   I am a newcomer to CTakes, but have spent a lot of time with StanfordCoreNLP, writing annotators, and with SemRep etc.... so not completely naive.
> 
> I have a UMLS license which is recognized by Ctakes as well as the resource dictionary set and I get no errors there, but I am not getting a number of annotations for even simple cases, and exceptions when enabling others.  If any of these point to ignorance or a bad installation, on my part, can you please point me to any other documentation besides what's exposed on your site that could help?  Each of these issues is something that was demonstrated as working in one or other of the videos on your site, but does not work on mine.  Here are some examples
> When encountering a Medication.  It finds the ontology codes, but does not tease out the start, end, dose, route etc except in a very few cases
> When encountering a Sign or Symptom it finds no relevant details besides the codes
> Negation never works ( I have tried enabling it in my copy of the pipeline but that doesn't help )
> I cannot figure out how to wire in the TemporalAnnotation engine.    When I try to do that I get an initialization exception for the "temporal.ae.BackwardsTimeAnnotator"   (there's no exception information written to the logfile"
> 
> Here's an example of points 2 and 3.
> 
> Pipeline - a copy of FastUMLSPlainText with Negation enabled in the workflow and declarations
>> ...
>> <delegateAnalysisEngine key="NegationAnnotator">
>>       <import location="../../../ctakes-ne-contexts/desc/NegationAnnotator.xml"/>
>> </delegateAnalysisEngine>
>> ...
>>         <node>DependencyParser</node>
>>         <node>SemanticRoleLabeler</node>
>>         <node>ConstituencyParser</node>
>>         <!-- <node>AssertionAnnotator</node> -->
>>         <node>StatusAnnotator</node>
>>         <node>NegationAnnotator</node>
>>         <node>GenericCleartkAnalysisEngine</node>
>>         <node>HistoryCleartkAnalysisEngine</node>
>> ....
> 
> 
> Input text
>> the patient denies having any left-side numbness or chest pain in the last 48 hours
> 
> The SignSymptomMention for numbness
> 
> 
>