AI Zone Admin Forum Add your forum

NEWS: Chatbots.org survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

Analysing Same word, different pos
 
 

I am considering creating a script to remove exaggerations from input. So:

I am really tired
I am so tired
I am incredibly tired

should output “I am tired”
but:

I am tired so I slept
I am incredible

should stay the same. I notice that CS tags the exaggerations in the first group as ~adverbs except for “really” which is removed as an interjection. How would I implement exaggeration removal in a script?. Would it be by using decodepos or role? I just dont know how they would be used….

 

 
  [ # 1 ]

If your goal is to have your responders elsewhere react without the noise, then you dont need to remove them from input (though you could). You can just find and unmark them completely in a prepass topic.  Eg

u: (_[so incredibly] [~verb_pastparticiple ~verb_present_participle ~adjective]) ^unmark(* _0)

 

 
  [ # 2 ]

I guess that would work if all I wanted was to remove those words for ALL of my responders but not if I wanted the full string for some responders. What if I wanted to save two variables? One representing an original fragment of the input and another representing a non exaggerated fragment of the input. E.g. for input representing emotion and thought I want to do that:
concept: ~customemotion [~emotions ~lowesteem]
u: (I _* _~customemotion [because since] _*)
I feel so sad because my gf recently left me
I think I am worthless since I am a complete failure

From the first I want to save the emotional thought “I feel sad” and the generic thought “my gf left me” both in that unexaggerated form and the original form. The first form for processing and the second for creating responses. Similarly for the 2nd statement, “I think I am worthless” and “I am a failure”

I think your unmarking solution would currently work for a simpler version of my bot but I am curious as to how to handle the other situation.

 

 

 
  [ # 3 ]

bear in mind you can undo the removal marking,  ^mark(* _0)  so you can do this in some narrow region of your rules

 

 
  [ # 4 ]

Are there manual files that discuss this in greater detail? Input to Output? Pattern Redux? PosParser? or others? System functions seems to have a good amount and I havent checked or tested the info fully. I am just wondering if other manuals cover it as well. Specifically I would like to learn more about marking and unmarking. I’m pretty sure I have a weak understanding of it.  My current info is from version 5.4 so if there have been any notable changes I will download them…..

 

 
  [ # 5 ]

System functions is generally the best place.  ^mark and ^unmark havent changed since 5.4

 

 
  login or register to react