From: glew@pdx007.intel.com (Andy Glew)
Subject: Re: Voice Recog. on Desktop
Organization: Intel Corp., Hillsboro, Oregon
	<GLEW.92Apr9215050@pdx007.intel.com> <1992Apr10.152204.1544@sctc.com>
Date: Sun, 12 Apr 1992 03:42:45 GMT

    I think you'll always need the DSP or the computer will have to run a
    sort of "half duplex" where it either does useful work or it listens
    to what you're saying. Listening will be a fulltime job.

No. You can take a lot of interrupts per second on a fast processor.
The digitized sound can be recorded to a relatively small buffer by
DMA - it's only about 45K bits/second, less if prefiltered (even by an
analog filter) - and a 100 Hz interrupt should be fine for doing the
DSP.  

(NB. speech isn't my field, so you may need a higher interrupt rate.
How much delay is tolerable in response?)


    It will also be memory intensive. As I recall, an isolated word
    pattern was an 8x12 array of 16 bit numbers. That's somewhat less than
    6 MB for a 30K vocabulary. And you'll want them changable so they can
    adapt to individual pronunciation and inflection. So that's 6 meg of
    NVRAM dedicated to speech recognition.

Why NVRAM?  Why not just plain simple RAM?


    In an earlier post I underlined the word pattern matching as the big
    problem. Are _all_ 30,000 word patterns available at all times? 

I believe that all patterns were "matchable" at the same time, but it
is possible that some paging may occur. Still, 6MB seems an entirely
reasonable number. They did have large caches.

The searching is, of course, not exhaustive.



    Does it take special hardware to manage these 30,000 words?  

Apparently not.

    I'd really
    want to do parallel pattern checking to do a really big vocabulary in
    real time.

Actually, parallel pattern checking won't help, if your parallel
processors all share a single ported memory. What you want is either a
multiported memory, or, more likely, a high degree of time
interleaving, plus large local caches.


    >Usable = speaker adaptive (little need for explicit, exhausting,
    >    training; adapts to the speaker as it goes), discrete speech
    >    (slight pause between every word, but not enough to be really
    >    annoying), large vocabulary (30,000 words) voice typewriting.

    Discrete speech means - that - you - talk - like - a - computer - when
    - talking - to - a - computer. That's slower than the way real people
    talk, so it doesn't compete with normal dictation. 

Bullshit. First, I don't have a secretary to take dictation. I would be quite
happy to pause for a fraction of a second, if it meant that I could
enter text without using a keyboard.

Second, it will not be discrete speech much longer. Nuff said.


    There are a whole bunch of other issues, too, concerning errors and how it "adapts to
    the speaker" without doing anything damaging.

Once again, they seemed to have error handling down pretty well - you
say "oops", and the software displays a menu of "sound alike" words.




Finally, just think of the market in those "Press 1 to get sales" type
phone answering systems. Wouldn't you prefer to hear "Welcome to XYZ
corp. Do you wish to call sales or service?" and replay "sales"?

Yes, I know that's speaker independent. By the way, the above system
already exists.  I received a collect call from Canada the other day,
where I was asked to accept the charges by a computer, I said "huh?",
the computer repeated the question, I said "yes", and the computer
connected the call.



My personal opinion: speech technology is much more useable than the
so-called "pen computers". There are applications even for the current
primitive levels. Speech will probably ramp up quicker than pen
computers, maybe even quicker than video on computers.





--

Andy Glew, glew@ichips.intel.com
Intel Corp., M/S JF1-19, 5200 NE Elam Young Pkwy, 
Hillsboro, Oregon 97124-6497

This is a private posting; it does not indicate opinions or positions
of Intel Corp.

Intel Inside (tm)
Newsgroups: comp.arch