Ambiguous Utterances

Sometimes the words you say will match more than one of your Vocola commands or a Vocola command and a Dragon built-in command or a command from another voice control system. Other times your words might match a single command in multiple ways. How does Dragon decide which command the words trigger and how the words are divided up among the command's variables/alternative lists?

Dragon's recognition preferences

The exact rules Dragon uses are hidden but we have observed what appear to be preferences over the years:

  • Dragon prioritizes application-specific commands over global ones
    • Whether a command is restricted to a specific context in Vocola does not affect its priority — it's still either a global or an application-specific command as far as Dragon is concerned
  • User-defined commands (e.g., Vocola commands) have priority over Dragon built-in commands of the same priority class (i.e., global versus application-specific)
  • Dragon prefers to use syllables from highest to lowest preference:
    • as punctuation words (think any word whose written form is punctuation, even if added to the vocabulary by you)
    • as words explicitly given in the command being recognized
    • as part of <_anything>
    • as dictation
  • If the utterance doesn't contain potential punctuation words then this can be simplified to: when choosing among commands, Dragon prefers to put as few syllables as possible in an <_anything>

Example of how commands using <_anything> are recognized

To get a feel for how <_anything> is handled, suppose we only have the following Vocola commands defined:

  1. utterance <_anything> = "utterance /$1/";
  2. utterance first <_anything> = "first /$1/";
  3. utterance <_anything> through <_anything> = "/$1/ through /$2/";
  4. utterance <_anything> comma <_anything> = "/$1/ comma /$2/";
  5. <_anything> = "/$1/";

Then:

  • "utterance hello" is recognized by command 1
  • "utterance first hello" is recognized by command 2
  • "utterance one through two" is recognized by command 3
  • "utterance first one through two" is sometimes recognized by command 2 and sometimes by 3
  • "utterance one comma two" is recognized by command 1 — Dragon prefers to recognize "comma" as the punctuation word ",\comma" and use it in <_anything> rather than as the command word "comma", which is a different non-punctuation word
  • Utterances not starting with "utterance" that do not match other commands (including built-ins) will be recognized by command 5 if present; otherwise, they will be treated as dictation.
 
Copyright © 2002-2023 Rick Mohr