Explained

How Speech Recognition Works

You speak, words appear. In between there is a fairly understandable process, and knowing it explains most of the moments where dictation gets things wrong.

Guides

Sound becomes numbers

A microphone measures air pressure, thousands of times a second, and writes down each measurement as a number. A recording is nothing more than that: a very long list of numbers describing how a membrane moved.

Reducing that list is the first thing any recogniser does. Raw audio contains far more detail than speech needs, so the system chops it into short slices, typically a few hundredths of a second each, and describes each slice by which frequencies are present and how strongly.

What comes out is a compact summary of the sound over time. Loudness, pitch and the shape of the noise, slice by slice. The hum of a fridge, a passing car and the fact that you were speaking away from the phone are all still in there, mixed in with the words, which turns out to matter later.

The model looks for patterns it has seen before

The summary then goes to the model, which is the part people mean when they say speech recognition.

A model is a large file of numbers produced by training: showing a system many hours of recorded speech alongside the correct text, and adjusting those numbers until it reliably maps one to the other. Nobody writes rules like "this shape means an s". The pattern is learned from examples.

What it produces is not certainty, it is likelihood. For each stretch of sound the model has an opinion about which sounds, and then which words, were most probably said. Everything you see on screen is the top of a list of candidates that never gets shown to you.

Context does more work than you would guess

Sound alone is not enough, because a great many words sound alike. "Their" and "there". "Recognise speech" and "wreck a nice beach".

Recognisers resolve that using context: the words already produced make some next words far more likely than others. Effectively the system answers two questions at once, what did that sound like and what would make sense here, and then combines them.

That explains a common frustration. Dictate a full sentence and it comes out right. Dictate one unusual word on its own and it comes out wrong. With no context there was nothing to lean on, so the sound had to carry the whole decision.

Your own names and jargon are difficult for the same reason. A model trained on general speech has never encountered your colleague's surname or your company's internal acronym, so it substitutes something ordinary that sounds similar. This is why adding words yourself helps so much: you are supplying the context that was missing.

Why accents and noise are hard

Both problems come from the same place.

A model recognises what it has heard a lot of. If a particular accent was thinly represented in the training material, the system has less experience to draw on and performs worse. None of that is a judgement about the accent; it is a consequence of what the model was shown.

Background noise is harder still, because the microphone captures the room along with you. Speech and noise arrive mixed into the same numbers, and the model has to work out which parts were words. A café, a car, a fan, someone else talking: all of it competes for the same measurements, and none of it can be pulled back out once the recording exists.

Larger models generally cope better with both. That is most of what extra size buys: more room to represent the cases the model saw rarely, rather than more speed or more languages.

Where punctuation comes from

Almost nobody dictates punctuation any more, so the system has to invent it.

It does that from the same two sources as everything else: the sound, where pauses and falling intonation suggest a boundary, and the language, where the shape of a sentence implies where a comma belongs. Neither is conclusive. Punctuation is therefore the part that most often looks slightly off even when every word is correct.

A habit follows from that too. Speaking in complete sentences with natural pauses gives the system the acoustic evidence it needs. Trailing off, restarting mid-thought or stringing five clauses together removes exactly the signals it was relying on, and the punctuation degrades first.

Why dictation feels slow sometimes

Recognition mostly cannot begin until there is something to recognise. Many systems wait for a natural pause, then process what they just heard. So a long sentence produces a pause at the end, roughly proportional to how long you spoke and how big the model is.

On a phone that shows up plainly. A smaller model returns text sooner and occasionally mishears; a larger one waits longer and gets more right. No configuration gives you both, and that is precisely why apps offer a choice of sizes at all.

Speaking so the machine has something to work with

Recognition works on what reached the microphone, not on what you meant. If you mumble the end of a word, restart a sentence halfway, or let your voice drop as you turn away from the phone, the evidence for those parts is genuinely weaker, and no amount of processing puts back what was never recorded.

The habits that follow from that cost nothing.

Speak in complete sentences rather than isolated words, because context is doing as much work as the sound is. Hold the phone where it can hear you and keep the microphone away from wind and fan noise, because noise mixes into the signal at the point of recording and cannot be separated afterwards. And add your own vocabulary if the app allows it, because your names and your jargon are the one part of the problem you can directly fix.

Server or handset, and what LocalType did with the choice

The model file can live on a server. Your device records, uploads, waits, and receives text. Servers have memory, cooling and specialised hardware, so the model can be very large and very capable, and can be improved without you lifting a finger.

Or the file can live on your own device. Nothing is uploaded, nothing is waited for, and the recognition works whether or not you have a signal. The limit is your hardware: a phone has a few gigabytes of memory shared with everything else, no fan, and a battery to look after, so the model has to be small enough to load quickly and finish before you get impatient.

Privacy, offline behaviour and speed are all downstream of that single decision, which is why two dictation apps can behave so differently while doing the same job.

LocalType runs the model on the phone, and the rest of the product follows from it: dictation that works with the connection off, audio that is never transmitted, and three model sizes at 60, 190 and 539 MB so the speed and accuracy trade is yours to set. On a 4 GB test handset the middle size wrote out 6.9 seconds of speech in 4.1 seconds, and the largest takes roughly twice as long as you spent speaking.

Those limits apply to it in full. A phone runs a smaller model than a server can, accuracy is not identical across all eighteen languages it handles, and a noisy room is still a noisy room.

Get LocalType for Android

Private voice typing that runs on your phone, with speech recognition on the device itself.

Get it on Google Play