Deep Learning for Neural Data

Connectionist temporal classification (CTC)

Connectionist temporal classification (CTC) is a loss and decoding scheme that lets a recurrent or convolutional network map an input sequence to a shorter output sequence (for example, neural activity to a string of phonemes or characters) without a frame-by-frame alignment between the two. It introduces a blank symbol and sums the probability over all alignments that collapse to the target label, so the network learns where symbols occur rather than being told. This resolved a central obstacle in speech and handwriting BCI, where the mapping from continuous cortical activity to discrete units is not pre-segmented.

CTC assumes the outputs are conditionally independent given the input, so it is typically combined with an external language model during beam-search decoding to enforce lexical and grammatical structure — the language-model-in-the-loop that raised handwriting and speech BCI accuracy to communication-usable rates.

In a handwriting BCI, a recurrent network reads motor-cortex activity as the user attempts to write letters and, trained with CTC, emits a character stream without anyone labeling which neural samples correspond to which stroke; a language-model beam search then corrects the raw output into fluent text.

CTC lets the network learn the alignment between continuous cortical activity and discrete characters on its own.

Also called
CTCCTC loss