Net. Talk Project Speech Generation Using a Neural Network Michael J Euhardy
The Speech Generation Idea n Input: a specific letter whose sound is to be generated n Input: three letters on each side of it for a total of seven letters input n Output: the sound that should be generated based on the input letter and the surrounding letters
The Strategy n 26 possible letters n 7 input position n Map each letter in each position to a unique input 7*26 = 182 total inputs
The Strategy n 57 possible sounds generated n Map to 57 output labels
The Resulting ANN A fully connected single layer perceptron with 182 inputs and 57 outputs
The Findings n The trained neural network performs very well, and the larger the training set and the longer spent training on it, the better it performs n The training can be an extremely long process if a high rate of classification is desired and the training set is large
Problems n Time n Space
Time n You can’t rush training the network. Even using a dual PIII-733 with 512 MB, it still took a really long time to train any data of a significant size. And just converting all of the characters in the data file to the matrices necessary to use as inputs and labels took hours.
Space n 20000 words of data with maybe 7 letters on average. That’s a matrix 140000 x 239 Double precision in Matlab, that’s a lot of memory
Workarounds n Smaller data set, only 1000 words n Lower standards of training, only train to 80% classification
Next Time n C++ n Matlab is way too slow and way too memory intensive n Start Earlier, it’s a long process n Multi-Layer Perceptron
Conclusion n. I give up! n I don’t know how Microsoft’s Narrator does it, but I bet it doesn’t do it this way.