|
|
|
|
|
Speech RecognitionSpeech recognition technologies allow computers equipped with a source of sound input, such as a microphone, to interpret human speech, e.g. for transcription or as an alternative method of interacting with a computer. Classification Such systems can be classified as to - whether they require the user to "train" the system to recognise their own particular speech patterns or not,
- whether the system is trained for one user only or is speaker independent,
- whether the system can recognise continuous speech or requires users to break up their speech into discrete words,
- whether the system is intended for clear speech material, or is designed to operate on distorted transfer channels (e.g. cellular phones) and possibly background noise or other speaker talking simultaneously, and
- whether the vocabulary the system recognises is small (in the order of tens or at most hundreds of words), or large (thousands of words).
Speaker dependent systems requiring a short amount of training can (as of 2001) capture continuous speech with a large vocabulary at normal pace with an accuracy of about 98% (getting two words in one hundred wrong) if operated under optimal conditions, and different systems that require no training can recognize a small number of words (for instance, the ten digits of the decimal system) as spoken by most English speakers. Such systems are popular for routing incoming phone calls to their destinations in large organisations. Use Commercial systems for speech recognition have been available off-the-shelf since the 1990s. However, it is interesting to note that despite the apparent success of the technology, few people use such speech recognition systems on their desktop computers. However, the use of speech recognition in telephone applications, for applications like travel booking and information, financial account information, and directory assistance has been increasing as the cost for implementing such voice-activated systems has dropped. It appears that most computer users can create and edit documents more quickly with a conventional keyboard, despite the fact that most people are able to speak considerably faster than they can type. Using both keyboard and speech recognition simultaneously, however, can in some cases be more efficient than using any one of these inputs alone. Additionally, heavy use of the speech organs results in vocal loading. Also, the typical office environment with a high amplitude of background speechs are among the most adverse environment for current speech recognition technologies. Large-vocabulary systems with speaker-independence and/or are designed to operate within an adverse environment, however, have significantly lower recognition rates. The typical achievable recognition rate (2003) for large-vocabulary speaker-independent are about 80%-90% for clear environment, and can be as low as 50% for scenarios like cellular phone with background noise. Approaches The two most common approaches used to recognize a speakers response are often called grammar constrained recognition and natural language recognition. When ASR (Automatic Speech Recognition) is used to transcribe speech, it is commonly called dictation. Grammar Constrained Recognition Works well when the speaker is providing very short responses to specific questions. To create a grammar, you specify the most likely words and phrases a person will say in response to a prompt and you map those words and phrases to a token, or a semantic concept. For example, you might create a yes-no grammar that maps yes, yeah, uh-huh, sure, and okay to the token yes and no, nope, nuh-uh, and no way dude! to the token no. If the speaker says something that doesnt match an entry in your grammar, recognition will fail. Natural Language Recognition Allows the speaker to provide more natural, sentence-length responses to specific questions. Natural language recognition uses statistical models. The general procedure is to create as large of a corpus as possible of typical responses, with each response matched up to a token or concept. In most approaches, a technique called Wizard of Oz is used. A person (the wizard) listens in real time or via recordings to a very large number of speakers responding naturally to a prompt. The wizard then selects the concept that represents what the user meant. A software program then analyzes the corpus of spoken utterances and their corresponding semantics and it creates a statistical model which can be used to map similar sentences to the appropriate concepts for future speakers. For example, lets say you want to route phone calls for a customer helpdesk by asking the caller to briefly describe their problem. For the concept forward my call to the billing department", you would want to recognize sentences like I have a problem with my bill", I was charged incorrectly", How much do I owe this month", etc. While you could construct a grammar with all the likely keywords (bill, charge, charged, owed, etc.), if the caller speaks in sentences, you may pick up multiple matches. You might also miss sentences that fit the right pattern, but just miss the pre-ordained keywords. It is difficult to create large, rich grammars that consider the context in which the words are said. In addition, as a grammar gets very large, the chances of having similar sounding words in the grammar greatly increases. The obvious advantage of natural language recognition over the grammar constrained approach is that you dont have to identify the exact words and phrases. A big disadvantage, though, is that for it to work well, the corpus must typically be very large. Creating a large corpus is time consuming and expensive. Dictation Used to transcribe someones speech, word for word. Unlike grammar constrained and natural language recognition, dictation does not require semantic understanding. The goal isnt to understand what the speaker meant by their speech, just to identify the exact words. However, contextual understanding of what is being said can greatly improve the transcription. Many words, at least in English, sound alike. If the dictation system doesnt understand the context for one of these words, it will not be able to confidently identify the correct spelling. Technical Issues Modern speech recognition systems are generally based on Hidden Markov Models (HMMs). This is a statistical model which outputs a sequence of symbols or quantities. Having a model which gives us the probability of an observed sequence of acoustic data given one or another word (or word sequence) will enable us to work out the most likely word sequence by the application of Bayes' rule. To breeze through this stage, P(word | acoustics) = p(acoustics | word) P(word) / p(acoustics). For a given sequence of acoustic data (think Wave file), p(acoustics) is a constant and can be ignored. P(word) is the prior likelihood of the word, obtained through language modeling (a science in itself; suffice it to say that P(mushroom soup) > P(much rooms hope)); p(acoustics | word) is the most involved term on the right hand side of the equation and is obtained from the aforementioned HMM. HMMs are popular because they can be trained automatically and are simple and computationally feasible to use. For the purposes of this explanation, HMM will have to remain not much more than a TLA (three letter acronym). In speech recogntition, to give the very simplest setup possible, the HMM would output a sequence of n-dimensional real-valued vectors with N around, say, 13, outputting one of these every 100 milliseconds. The vectors, again in the very simplest case, would consist of cepstral coefficients, which are obtained by taking a Fourier transform of a short-time window of speech and decorrelating the spectrum using a cosine transform, then taking the first (most significant) coefficients. The HMM will tend to have, in each state, a statistical distribution called a mixture of diagonal Gaussians which will give a likelihood for each observed vector. Each word, or (for more general speech recognition systems), each phoneme, will have a different output distribution; an HMM for a sequence of words or phonemes is made by concatenating the individual trained HMMs for the separate words and phonemes. The above is a very brief introduction to some of the more central aspects of speech recognition. Modern speech recognition systems use a host of standard techniques which it would be too time consuming to properly explain, but just to give a flavor, a typical large-vocabulary continuous system would probably have the following parts. It would need context dependency for the phones (so phones with different left and right context have different realizations); to handle unseen contexts it would need tree clustering of the contexts; it would of course use cepstral normalization to normalize for different recording conditions and depending on the length of time that the system had to adapt on different speakers it might use VTLN for male-female normalization and MLLR for more general speaker adaptation. The features would have delta and delta-delta coefficients to capture speech dynamics or might use more modern projection techniques like LDA or HLDA. A serious company with a large amount of training data would probably want to consider discriminative training techniques like MMI, MCE or MPE, and if a large amount of speaker-specific enrollment data was available a more wholesale speaker adaptation could be done using MAP or, at least, tree-based MLLR. The more popular speech recognition conferences held each year or two include ICASSP, Eurospeech/Interspeech and the smaller ASRU. Examining the proceedings of these conferences, or journals such as the IEEE transactions on Speech and Audio Processing, or Computer Speech and Language, may give the interested person a flavor of the current work, but be warned that much of the research is either not very good or is unnecessarily obfuscated. Books like "Fundamentals of Speech Recognition" by Lawrence Rabiner can be useful to acquire basic knowledge but may not be fully up to date. Keep an eye on government sponsored competitions such as those organised by DARPA (the telephone speech evaluation was most recently known as Rich Transcription). Market Players The challenge for developers of ASR engines is that the end customer judges them on one criteria - did it understand what I said? That leaves little room for differentiation. Of course, there are areas like multi-language support, tuning tools, integration API (the proposed standard MRCP or proprietary) , etc., but recognition quality is most visible. Because of the complex algorithms and language models required to implement a high quality speech recognition engine, it is both difficult for new companies to enter this market as well as difficult for existing vendors to maintain the necessary investment level to keep up and move ahead. Currently, Nuance and ScanSoft dominate the speech recognition market. There are a lot of other small vendors, like Aculab, Fonix Speech, Loquendo, Lumenvox, Verbio, etc., but they are essentially niche players. The speech recognition side of ScanSoft is actually composed of SpeechWorks and the products of several former niche players. IBM has also participated in the speech recognition engine market, but their ViaVoice product has gained traction primarily in the desktop command and control (grammar-constrained) and dictation markets. ScanSoft also makes Dragon NaturallySpeaking, a desktop dictation system with recognition rates of up to 99 percent. This is all changing. The big software heavyweights, Microsoft (Speech Server) and IBM (references - main site, voice toolkit preview, eWeek article, older InternetNews article, new InternetNews article on VXML toolkits) are now making substantial investments in speech recognition. IBM claims to have put one hundred speech researchers on the problem of taking ASR beyond the level of human speech recognition by 2010. Bill Gates is also making very large investments in speech recognition research at Microsoft. At SpeechTEK, Gates predicted that by 2011 the quality of ASR will catch up to human speech recognition. IBM and Microsoft are still well behind Nuance and ScanSoft in technology and market share, but they are gaining on them fast. See also External links
|
 |
|
| Copyright 2005-2009 OnPedia.com. All Rights Reserved |
|
|