You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

The sentence classifier stage uses OpenNLP's DocumentCategorizer to load classification models and tag sentences that match the binary classification model (is or isn't of a certain category) given a certain threshold of accuracy.

Operates On:  Lexical Items within TEXT_BLOCK_SPLIT or SENTENCE_SPLIT flags.

Library: saga-classification-trainer-stage

Models can be trained directly with OpenNLP tools or from the Saga UI. See Classifier Recognizer in the User Manual for more information on how to create a model using Saga.

The stage will use the boundaryFlags specified to split the input text in sentences. All text between boundaries will be considered a sentence and will be evaluated separately by the classifier.


Generic Configuration Parameters

  • boundaryFlags ( type=string array | optional ) - List of vertex flags that indicate the beginning and end of a text block.
    Tokens to process must be inside two vertices marked with this flag (e.g ["TEXT_BLOCK_SPLIT"])
  • skipFlags ( type=string array | optional ) - Flags to be skipped by this stage.
    Tokens marked with this flag will be ignored by this stage, and no processing will be performed.
  • requiredFlags ( type=string array | optional ) - Lex items flags required by every token to be processed.
    Tokens need to have all of the specified flags in order to be processed.
  • atLeastOneFlag ( type=string array | optional ) - Lex items flags needed by every token to be processed.
    Tokens will need at least one of the flags specified in this array.
  • confidenceAdjustment ( type=double | default=1 | required ) - Adjustment factor to apply to the confidence value of 0.0 to 2.0 from (Applies for every pattern match).
    • 0.0 to < 1.0  decreases confidence value
    • 1.0 confidence value remains the same
    • > 1.0 to  2.0 increases confidence value
  • debug ( type=boolean | default=false | optional ) - Enable all debug log functionality for the stage, if any.
  • enable ( type=boolean | default=true | optional ) - Indicates if the current stage should be consider for the Pipeline Manager
    • Only applies for automatic pipeline building


Configuration Parameters

  • tagWith ( type=string | default=match | optional ) - if used with automatic pipeline creation, it assigns the tag to which the recognizer belongs to.
  • prob ( type=double | default=0.95 | optional ) - Probability threshold. Will only tag sentences that match better or equal to prob.
  • model ( type=string | optional ) - File location of the model.


Example Configuration
{
 "type":"ClassificationStage",
 "tagWith": "NAME-OF-OUTPUT-TAG", 
 "prob": "0.95", 
 "model": ".\model-file.bin"
}



Example Output

For this case a sentence breaker stage was configured before the classifier stage. tagWith value is animal-incident for this example

 V-------------------------------------[BIRD STRIKE DURING DESCENT. DAMAGE LIMITED TO 18 INCH DENT BOTTOM OUTBOARD SIDE OF ENGINE COWLING.]--------------------------------------V 
 ^-----------[BIRD STRIKE DURING DESCENT]-----------V------------------------[DAMAGE LIMITED TO 18 INCH DENT BOTTOM OUTBOARD SIDE OF ENGINE COWLING]------------------------V-[]-^ 
 ^---[BIRD]---V---[STRIKE]---V-[DURING]-V-[DESCENT]-^--[DAMAGE]--V-[LIMITED]-V-[TO]-V-[18]-V-[INCH]-V-[DENT]-V-[BOTTOM]-V-[OUTBOARD]-V-[SIDE]-V-[OF]-V-[ENGINE]-V-[COWLING]-^      
 ^---[bird]---^---[strike]---^-[during]-^-[descent]-^--[damage]--^-[limited]-^-[to]-^      ^-[inch]-^-[dent]-^-[bottom]-^-[outboard]-^-[side]-^-[of]-^-[engine]-^-[cowling]-^      
 ^--[{bird}]--^-[{physical}]-^--[dure]--^           ^-[{damage}]-^--[limit]--^                                                                                                     
 ^-[{animal}]-^--[{damage}]--^                                                                                                                                                     
 ^---------------[{animal-incident}]----------------^                                                                                                                                                                                                                                                                                                                                                                                                          


Output Flags

Lex-Item Flags:

  • CLASSIFICATION - Flags the sentence that matched the model's criteria.
  • SEMANTIC_TAG - Flags the sentence that matched as a semantic tag.

Vertex Flags:

No vertices are created in this stage.

  • No labels