How to Analyze Recorded Voice Responses

Many reaction time tasks are best administered by requiring participants to make verbal responses. Consider the classic Stroop task, for example, whereby the respondent is required to identify the color of the ink in which color names are printed. Although it's possible to demonstrate the Stroop effect using key or button presses, the effect is much more evident with verbal responses. Unfortunately, analyzing the accuracy of verbal responses typically requires the tedious and time-consuming process of transcribing hundreds or even thousands of recorded vocalizations. Given the amount of labor involved, many researchers avoid verbal response tasks altogether in favor of procedures that can be completely computer automated.

Inquisit removes the tedium of transcribing verbal responses by leveraging speech recognition software. With Inquisit, spoken responses can be automatically analyzed in real time, or you can record responses and then later analyze them with the speech engine.

To analyze the content of spoken responses in real time, simply set the inputdevice attribute to speech. With this option, Inquisit activates the speech engine on every voice trial, listens for a response, and then attempts to identify the utterance from a list of possible responses that you specify. The identified response is recorded directly into the data file. In cases where the response could not be identified, Inquisit records a "?" instead. The advantages of this option are that a) the utterance is immediately available in the data file for analysis, and b) Inquisit can determine whether a correct or incorrect response was given for purposes of providing tracking performance and providing error feedback. The disadvantages of speech option are that the speech engine may occassionally misidentify or fail to recognize valid utterances. It also may impose a perceptible delay between the time an utterance is made and the time it is recognized (importantly, this delay does not affect the measurement of response latency of spoken responses).

To record responses for subsequent speech recognition analysis, set the inputdevice attribute to voicerecord. With this option, Inquisit listens for a response on every trial, and when it picks up incoming sound, that sound is recorded to a wav file. Separate wave files are recorded for each trial, and files are named in a way that allows you to match the file to the particular trial of the particular session for the particular subject that made the response. When you are ready to analyze the data, Inquisit provides a handy tool that "listens" to each wav file, identifies the spoken content, and saves the results to a tab delimited file.

The "Analyze Recorded Responses" Tool

To analyze the recorded responses, click Inquisit's Tools menu, and select the "Analyze Recorded Responses..." command. This will open the following window:

Analize recorded responses

First, you must specify the folder containing the recorded wav files. You will find these files in a subfolder called "voicerecord" located in the folder containing your script file.

Next, you can optionally specify the complete list of valid utterances so that the engine knows what words to listen for. If your task has a fixed set of valid responses, specifying them here will greatly improve the recognition accuracy of the engine. If you do not specify valid responses, the engine treats the entire lexicon as a potentially valid response, and recognition accuracy suffers accordingly.

To start the analysis, click the Analyze button. Once all the files have been analyzed, each wav file and its recognition result appear in the list below. If the engine could not identify the response, a "?" appears. To listen to any of the wav files, simply double-click the file in the results list and it will play (make sure audio is configured correctly, speakers are turned on, and the volume is turned up). By listening to the files, you can double-check the engine's accuracy or try to identify an utterance that the engine could not.

Finally, you can save the results to a tab-delimited file by clicking the "Save..." button. The file will contain two columns of data for the file name and recognition result respectively. The saved data can then be inserted into the main data file using the command language and macros of your stats software, or using good old fashioned Filter, Sort, Copy, and Paste with a spreadsheet program like Excel.