Tuesday, April 12, 2016

Dragon Professional Individual 14 and Studio: What will you say?

While not every project is dictation-friendly, speech recognition can undoubtedly be a valuable tool for a translator. For several years now, I have used Dragon products in combination with SDL Trados Studio with varying degrees of success. While Dragon NaturallySpeaking never worked flawlessly with Studio, it wasn't until DNS version 13 that I lost practically all of the already limited text control capabilities in Studio.

What do I mean by text control? In fully compatible applications, such as Microsoft Word, it is possible to select, format, edit, correct and move text by voice using Dragon's built-in "select-and-say" commands. The video below briefly illustrates the use of full text control in MS Word.


In non-supported applications, such as Studio, however, select-and-say commands are not available. Compare what happens in Word, above, to what happens in Studio, below.



Dragon and Studio: A match not made in heaven
In addition to the lack of full text control, the interaction between Dragon and Studio (particularly Studio 2014) has been plagued with little problems, such as the need to dictate the initial cap command for every segment, which is no longer an issue thanks to Studio 2015's autocorrect capability. For a while, Dragon would insert extra blank spaces at the beginning of segments or just before any newly inserted text. It also dropped spaces, clumping words together here and there, and had a major conflict with Studio's AutoSuggest when Studio 2015 first came out. Some of these issues were annoying enough that I many times abandoned any attempts to dictate translations and went back to typing, which is disappointing, particularly because Dragon's accuracy, even without prior training, is quite high, and has been for the past few releases. I usually dictate in Spanish, my main target language, but I own the bilingual version of Dragon, where I can dictate either in English or in Spanish (a separate profile is created for each language), and even in my second language, English, Dragon does a superb job recognizing my non-native speech. (This post has been dictated with Dragon, with very minimal correction needed).

DPI 14: The new and improved Dragon
The product that I use used to be called Dragon NaturallySpeaking Premium, but in its latest iteration it underwent a name change and it is now called Dragon Professional Individual, a name that provides a hint to one major, very useful enhancement: In addition to improved accuracy and better recognition with laptop microphones, as well as improved stability, Dragon Professional Individual 14 includes the full custom command creation capability that used to be available only in the more expensive professional versions of Dragon NaturallySpeaking.



There are four methods that can be used to create commands:

1. Auto-Text, which provides basic insertion of text and graphics

2. Macro Recorder, which records mouse and keyboard actions in real time, and, unfortunately, deploys them in real time as well, although things can be sped up a bit by deleting parts of the recorded macro, such as mouse movements.

3. Step-by-step, a very easy way of creating commands for keyboard shortcuts, for example.

4. Advanced Scripting, which uses Visual Basic to create more complex, but also more robust, commands.

Commands can be global, application-specific, and even window-specific.

DPI 14's Command Creation window

10 custom DPI 14 commands for Studio

How well does it work? Amazingly well. I upgraded to DPI 14 a few days ago and after starting with a few basic Step-by-Step commands, I have been learning about and creating Advanced Scripting commands. So far, I have managed to create over 50 custom commands for Studio, some of which simply activate existing Studio shortcuts, and some others which manage more complex action sequences.

Here are a few examples:

What I say
What happens
Notes
Confirm
The active segment is confirmed

Select <dictation>
Selects the dictated text within the active segment

Apply tags
Tags are added to the selected text
Works best when acronym recognition is disabled in the TM
Enable track changes (or Disable track changes)
Toggles track changes
Since this is a toggle shortcut, I’ve simply saved the same command with two different names
Show repetitions
Applies the display filter to show Repetitions – All

Show numbers only
Applies the display filter to show Numbers Only

Show untranslated
Applies the display filter to show Not Translated

Reset filters
Clears all the settings in the display filter

Select to end of segment
Selects all the text from the cursor to the end of the active segment

Insert after <dictation>
Selects the dictated text and places the cursor right after for new text insertion


To see the commands in action in Studio, have a look at the video below. Note how towards the end of the clip I try to say "Delete" to delete some unwanted text, but instead Dragon inserts the word "delete" into the segment, as there is no "Delete" command (actually, there is, but it only works in supported applications). A new custom command, which should take less than a minute to create, will take care of this.

Custom Dragon commands for Studio in action

KnowBrainer: A Dragon add-in for quick command creation
I'd like to finish this post by saying that while all these commands can be created in Dragon, I'm using a powerful add-in called KnowBrainer, which essentially allows you to create Dragon commands quickly, and comes pre-loaded with hundreds of ready-made global commands that can be used right out of the box or can serve as inspiration for more custom commands. An additional advantage I find in using KnowBrainer is that I can keep all my English and Spanish commands in one place. To make a command available in both languages, all I need to do is make a copy and give it a name in the appropriate language. While you can also have commands in both languages stored within Dragon, since you have to switch profiles to switch languages, only the commands that match the language in the active profile are loaded. Lastly, the creators of KnowBrainer host a very active, wonderful speech recognition forum where help and tips can be found both for Dragon and KnowBrainer.

The KnowBrainer sidebar, showing my English and Spanish custom Studio commands.

The KnowBrainer Command Editor window for Advanced Scripting (Visual Basic) commands



So, no more frustration and no more setting Dragon aside for days at a time. With this new version, Dragon has opened the door to new possibilities to make speech recognition a regular part of my workday.


38 comments:

  1. Great article, Nora! Very useful for people - like me - who have an older version. The custom command feature in this new version definitely looks worth investigating. Thanks for your detailed explanation on how to use it in Studio.

    However, the incompatibility with Studio to implement select-and-say makes Dragon a non-starter for me. I need to be able to train it with the "correct that" command and it simply doesn't work.
    The choice for me is either to not use Dragon or to switch to memoQ where it's fully supported. For the moment, I've opted for the former...

    ReplyDelete
    Replies
    1. I temporarily lost interest in it, because I am now using memoQ 2015 combined with Dragon Professional Individual and KnowBrainer 2016, but … some people are working on getting select-and-say (aka full text control) working in unsupported programs via Vocola (basically, the free/open source version of KnowBrainer). The details are in this mailing list, somewhere: https://groups.yahoo.com/neo/groups/VoiceCoder/conversations/messages

      In fact, it already works, although it isn't 100% reliable (yet).

      As I said though, I am currently a very happy user of memoQ 2015 (which I much prefer to Studio, which I also bought recently because I am now doing a bit of work for one of SDL's translation tentacles), and everything already works perfectly memoQ.

      KnowBrainer is definitely the bees knees though, and I highly recommend it to anyone using Dragon!

      See also my YouTube videos on voice recognition etc. (all very lo-fi and unprofessional, but maybe useful to someone):

      https://www.youtube.com/playlist?list=PLKzCjqTaOj21XxWuZf9vcD-vE_NFyCjwO
      https://www.youtube.com/watch?v=dgjWuHhD7zA
      https://www.youtube.com/watch?v=d7BDTNNLQnk

      Delete
    2. Thank you, Michael. I've had a quick look at Vocola before but I've found it a bit over my limited scripting capabilities, maybe I'll take a second look at a later date, but for now I've found that Dragon + KnowBrainer is a great starting point, as you've mentioned.

      I use MemoQ only occasionally, and with Studio being my main CAT tool, I'm definitely interested in finding ways to achieve text control as closely as possible to what you would see in fully supported applications. Luckily, I think I'm getting close!

      Thanks for the links to your videos, very helpful!

      Delete
  2. I know what you mean, Emma, but DPI 14 and KnowBrainer have got me thinking that by creating the right commands, I can get very close to select-and-say functionality. I have yet to attempt creating something that will emulate "correct that", but KnowBrainer has a global command, meaning it would work in Studio, called "Correct" that includes two lines:

    HeardWord "spell","that" (This causes Dragon to act as if it had heard the Spell That command)
    HeardWord "select","one" (This causes Dragon to act as if it had heard the Select 1 command, as when selecting corrections from a list)

    This, combined with a feature present in Dragon since version 13, called open-ended commands, where you can create (or say) a command with a "wildcard" where is anything you say, could lead to something like a "Correct " command, where instead of saying "that", you would say the word or phrase you wanted to correct, for example "Correct their" (to change it to "there").

    KnowBrainer also offers a unique command instruction called EmulateRecognition, maybe that can also help somehow.

    And lastly, there are two other commands in KnowBrainer that might be worth a try:

    Change That to

    and

    Change to

    You have an advantage over me when it comes to these commands: you would dictate in English, so the commands are good to go as they are. To be used in Spanish, however, they require a little tweaking, which involves not only changing the command name but also the variable names and "heardword" text within the command.

    One thing that "Correct that" offers is that Dragon learns from the corrections made through this select-and-say command, but with the high accuracy of DPI 14, I don't think that's an issue, plus there are two quick commands to add new words and new spellings to Dragon: Add to Vocabulary and Train Word.

    If you have DNS 13 Premium, installing the 30-day trial of KnowBrainer Professional 2016 would allow you to give these commands a try and create a few of your own, without having to take the plunge and upgrade to DPI 14 yet.

    ReplyDelete
    Replies
    1. Wow, Nora, this is really interesting! Thanks for the detailed explanation; I'll definitely investigate.

      Delete
    2. Let me know what you think if you do, maybe we can exchange some commands!

      On another note, I just realized that an important part of my comment above is not showing properly due to the word "dictation" being between angle brackets. I've pasted the relevant section below with (angle bracket)dictation(angle bracket) replaced with (dictation).

      This, combined with a feature present in Dragon since version 13, called open-ended commands, where you can create (or say) a command with a (dictation) "wildcard" where (dictation) is anything you say, could lead to something like a "Correct (dictation)" command, where instead of saying "that", you would say the word or phrase you wanted to correct, for example "Correct their" (to change it to "there").

      And lastly, there are two other commands in KnowBrainer that might be worth a try:

      Change That to (dictation)

      and

      Change to (dictation)

      Delete
    3. Thank you, Nora. Have you thought of giving a webinar on this? I think it would be relevant for a lot of Studio users.

      Delete
    4. I hadn't thought about it, but it sounds like a good idea!

      Delete
    5. Hi Nora,

      How exactly are you getting "full text control" aka "select-and-say" to work in Studio 2015? That is, how do you manage to select words in your target box by voice? I'm curious, as I have recently started playing around with SDL Studio 2015 myself.

      Michael

      Delete
    6. Hi Michael,

      As you know, there's no full text control in Studio, but I've created a collection of commands that allow me to select text taking advantage of Dragon's "open-ended commands" feature.

      For example, to select any dictated text:

      Command name: Select (angled bracket)dictation(angled bracket)
      Sub Main
      SendKeys "^{PgUp}"
      SendKeys "^f"
      SendKeys ListVar1
      Wait .1
      SendKeys "~"
      Wait .1
      SendKeys "{Esc}"
      End Sub

      Or this one, which selects all the text from the current cursor position to the dictated word(s):

      Command name: Select through (angled bracket)dictation(angled bracket)

      Sub Main
      SendKeys "^f"
      Wait .2
      SendKeys ".{+}"+ListVar1+""
      Wait .2
      SendKeys "{Tab 7}" 'To get to the Regular Expression checkbox
      Wait .2
      SendKeys "{Space}" 'To enable Regular Expression searches
      Wait .2
      SendKeys "{Enter}"
      Wait .2
      SendKeys "{Space}" 'To disable Regular Expression searches
      Wait .2
      SendKeys "{Esc}"
      End Sub

      You'll probably have it figured out by then, but SDL has invited me to give a webinar on this topic, scheduled for August 31st.

      Here's the link, in case you'd like to join us:

      http://www.sdl.com/event/language/webinars/08-2016/2016-08-31-Studio-by-voice-with-Dragon.html

      Best,

      Nora

      Delete
    7. Hi Nora,

      I've been trying to get your command above "Select " to work, but am not sure how to proceed.

      I created a command with as content:

      ***************************** Sub Main
      SendKeys "^{PgUp}"
      SendKeys "^f"
      SendKeys ListVar1
      Wait .1
      SendKeys "~"
      Wait .1
      SendKeys "{Esc}"
      End Sub the
      *****************************

      I gave it the command name: Select (angled bracket)dictation(angled bracket)

      However, the "KnowBrainer List Form" then pops up. What am I supposed to do in this dialogue?

      Michael

      Delete
    8. Sorry, false alarm. I soon realised that it just works. I just clicked away that dialogue.

      My next question though is: now that I can select terms I just dictated (thanks!!!), can I also correct them?

      Delete
    9. Wow, I really must thank you again: the ability to select words that I just dictated is extremely useful (!!!), and I find myself doing it in almost every segment now!

      Delete
    10. Glad to hear you got it to work, Michael. Regarding your question about whether you can correct the words: you can't really use Dragon's Correct menu where you select the correction from a drop-down list because of the lack of full text control, but you can do anything you would normally do with a word/phrase that is already selected, such as replace it with a new dictation, cut it, capitalize it, etc.

      Delete
  3. Nora, I believed that DPI 14 was not in Spanish, have you got it somehow or you are using the English version?

    On a less serious note, I really wonder how you have enough time to work and then write these wonderful and detailed posts... :) But carry on, I love your style, your feedback and your advice!

    ReplyDelete
    Replies
    1. Thank you for your kind comments! I use the Spanish version of Dragon, which comes with English bundled in, so you can actually switch back and forth by creating a separate profile for each language. I buy it directly from Nuance, which can be found here: http://www.nuance.es/empresas/producto/dragon/dragon-para-pc/dragon-professional-individual/index.htm

      I plan on preparing a Spanish version of this post as soon as I can find the time. : )

      Delete
    2. And in your opinion, is it worth upgrading from DNS 13 at the steep cost of 399 €?

      Delete
  4. I think that may be the full price. I paid less than half that for the upgrade. Still not cheap, for sure, but I've found it to be worth the investment.

    ReplyDelete
  5. Hi Nora,

    Thanks a lot for your post. I'm looking into improving the way I use Dragon within Studio and the info you provided is very helpful. I have two additional questions about DPI14 and Knowbrainer:

    - Apart from the custom create capability, have you noticed any significant improvement in accuracy in DPI14 compared to DNS13? I mean, would you say that it'd be advisable to upgrade for this reason alone? (I dictate in Spanish).

    - If Knowbrainer allows you to create so many commands, why would you want to own DPI14? Does DPI14 allow you to create commands that you cannot create with Knowbrainer? I'm considering getting both, hence my question.

    Thanks in advance for any advice you can give me!

    Kind Regards,

    Claudia

    ReplyDelete
    Replies
    1. Hi Claudia,

      I'll answer your questions in reverse order:

      - If Knowbrainer allows you to create so many commands, why would you want to own DPI14? Does DPI14 allow you to create commands that you cannot create with Knowbrainer? I'm considering getting both, hence my question.

      While you would be fine with DNS13 + KnowBrainer for creating custom commands, for Spanish, you'll definitely want to get DPI14 as well for one reason: KnowBrainer cannot handle Spanish characters, or rather, it lacks a scripting option to handle Spanish characters. This means that the very powerful open-ended commands that you create in KnowBrainer won't work properly if they include a word with an accent. For example, I have a command called "Select (dictation)", where "(dictation)" is any word or phrase I want to select. If I say "Select supervisor", then the word "supervisor" is selected. This is all fine for words that have no accents or an ñ, but if I use the Spanish version of the command and say "Seleccionar construcción", since the command line used in KnowBrainer to send the keystrokes cannot output "ó", then it tries to select "construccin", which of course will never be found. This is solved by creating the command in DPI, where instead of using SendKeys to send the keystrokes, you can use SendDragonKeys, which has no problems with Spanish characters. For this reason, I keep my English open-ended commands in KnowBrainer, but the Spanish ones in Dragon.

      I should clarify that this only affects commands where Spanish text is expected to be part of the command output. I keep all of my other non open-ended commands in KnowBrainer, even if the name of the command includes a Spanish character. I simply mistype the name of the command to exclude the accented character. For example, I have a command in KnowBrainer called "Segmento en mayusculas" that selects an entire segment, changes it to uppercase and confirms it. I can't call it "Segmento en mayúsculas" with the properly accented "ú", as KnowBrainer won't accept that in the name, but the name of the command is properly recognized even if it's misspelled, so it works for me.

      - Apart from the custom create capability, have you noticed any significant improvement in accuracy in DPI14 compared to DNS13? I mean, would you say that it'd be advisable to upgrade for this reason alone? (I dictate in Spanish).

      I couldn't tell you if accuracy alone will make a big difference for you because, at least for me, DNS 13 was very accurate already, but if I think about it now, I think DPI 14 may actually be even more accurate. I really don't have to make that many corrections when dictating, but I think three things make a big difference:

      1. A good microphone. I have a 2-in-1 tablemike on my desktop computer that I credit with having improved accuracy since I got it. Accuracy on my laptop with its built-in microphone is never as good as on my desktop computer with this mike, so it does make a difference.

      2. Training Dragon. This can be done by going through the training exercises that come with Dragon that require you to read some text, but I find that what has helped a lot has been the "Learn from specific documents" feature, where I've loaded some of my translated files for Dragon to learn from.

      3. Importing my glossaries into Dragon via the "Import vocabulary" feature. I'm in the process of cleaning up my main termbase so I can import it into Dragon (close to 90,000 terms). Whenever I'm going to dictate something with client-specific terminology, if I have a termbase I import the target terms into Dragon, and it goes a long way to prevent the need for excessive correction.

      Let me finish by saying that your comment comes at the perfect time. I'm finalizing a post about a set of text control commands to be used in Dragon that I hope to publish today or tomorrow. Maybe you'll find it useful!


      Delete
  6. Hi Nora,

    Thanks so much for taking the time to provide such a detailed answer! All the information you've mentioned is very clear and useful. I'll definitely implement your suggestions for improving accuracy, as although I'm pretty happy with the way Dragon has increased my productivity, I definitely believe that I could do better.

    I'll keep an eye on the post you're planning to publish today or tomorrow, and I'll make up my mind as to whether to get DPI14 or not. Thanks again!

    Kind Regards,

    Claudia

    ReplyDelete
  7. Buenas tardes, Nora.

    Me ha parecido entenderte que con una misma versión de Dragon P.I. 14 tienes dos perfiles en dos idiomas distintos, inglés y español, ¿es así? Entonces ¿si descargo la versión inglesa del programa podré dictarle en español? Gracias por tu respuesta.

    ReplyDelete
    Replies
    1. Hola, es correcto, pero necesitarías la versión en Español del programa, no la inglesa. Yo la compro en el sitio de España de Nuance: nuance.es

      Delete
    2. Ok, gracias Nora. Saludos.

      Delete
  8. Hi Nora, excellent post! It's extremely useful!

    At the beginning of your article you mentioned the old and new name of the version. I can see on the website that you can buy the Premium version and the Professional Individual version. Do you know if you can personalise commands with the Premium version, or is it just with the Professional Individual one? Thank you! :)

    ReplyDelete
    Replies
    1. Hi Dan,

      Thank you for your kind comments. To answer your question, the Premium version doesn't allow you to create commands by itself. You can, however, create commands for DNS Premium 13 with the Knowbrainer add-on, which is a separate purchase.

      Delete
    2. Thanks so much for your reply Nora! Definitely thinking of purchasing the Professional version soon! :)

      Delete
  9. Hola Nora, me encantan tus videos, muchas gracias por compartir tus conocimientos! Estoy por comprar DNS pero la verdad es que estoy muy confundida en cuanto a qué versión adquirir. ¿Podrías asesorarme? Trabajo principalmente con español, pero sería muy conveniente para mí poder dictar en inglés también, aunque español es primordial. ¿Cuál versión usas tú, por ejemplo? Gracias! -- Ana

    ReplyDelete
    Replies
    1. Me olvidé agregar que utilizo Trados Studio 2015 y MemoQ. Gracias!

      Delete
    2. Hola Ana, yo compré en la tienda de Nuance España en línea (http://www.nuance.es/empresas/producto/dragon/dragon-para-pc/dragon-professional-individual/index.htm) la versión en español, la cual también incluye la posibilidad de dictar en inglés, solo tienes que cambiar de perfil, es decir, haces un perfil para inglés y otro para español. Me parece que durante la instalación de pregunta si quieres instalar ambos idiomas, simplemente le pones que sí ¡y listo!

      Delete
    3. Gracias por tu pronta respuesta! Qué te hizo elegir esa versión en lugar de la Home o la Premium? Hay una gran diferencia de precio pero no me quedan claras las diferencias entre cada una. Gracias una vez mas!

      Delete
    4. La versión Profesional es la única que te permite añadir tus propios comandos. Hasta la versión 13 tuve la Premium, ya que la Home siempre me pareció demasiado básica. A partir de la versión 14, desapareció la Premium y cambió a Profesional, lo cual fue una gran mejora para mí gracias a la posibilidad de agregar comandos.

      Delete
  10. Hola Nora, tengo una pregunta acerca de los comandos que creaste con Dragon (no los que creaste con KnowBrainer): ¿Cuál de los cuatro métodos usaste para crearlos o cuál te resultó más fácil? ¿Usaste el mismo método para todos los comandos o tuviste que usar métodos distintos dependiendo del comando? Muchas gracias desde ya.

    ReplyDelete
    Replies
    1. Hola, al principio usé el método paso a paso, ya que no requiere aprender nada más, simplemente se agregan las secuencias de teclas, pero a medida que fui aprendiendo a usar Advanced Scripting, cambié a utilizarlo exclusivamente, ya que es mucho más flexible y versátil.

      Delete
  11. Hi Nora,

    Thank you for the helpful blog post and SDL webinar. I was just wondering if there is any way for you to share the scripts for the Knowbrainer Studio commands you have created so that I wouldn't need to create all of my own from stratch?

    ReplyDelete
    Replies
    1. Hi Dan,

      I can do that. Where should I email the file?

      Delete
    2. Oops, I answered in the wrong place :) My email is danradice@gmail.com. Thanks!

      Delete
  12. Thanks so much! My email is danradice@gmail.com

    ReplyDelete