导读
Acknowledgements and copyright notices
1 Introduction
1.1 About this book
1.2 Purpose of this book
1.3 Some reasons to use this book
1.4 What''s in the book and what''s not
1.5 Computational set-up needed for this book
1.6 Computational skills that are necessary in order to use the book
1.7 Free software suggestions
1.8 Book structure
2 Sounds and numbers
2.1 Preparatory assignments
2.2 Solutions
2.3 Sampling
2.4 Quantization
2.5 The sampling theorem
2.6 Generating a signal
2.7 Numeric data types
2.8 The program
2.9 Structure of a loop
2.10 Structure of an array
2.11 Calculating the cosine values
2.12 Structure of the program
2.13 Writing the signal to a file
Chapter summary
Further Exercises
Further reading
3 Digital filters and resonators
3.1 Operations on sequences of numbers
3.2 A program for calculating RMS amplitude
3.3 Filtering
3.4 A program for calculating running means of 4
3.5 Smoothing over a longer time-window
3.6 Avoiding the need for long window
3.7 IIR filters in C
3.8 Structure of the Klatt formant synthesizer
Chapter summary
Exercises
Further reading
4 Frequency analysis and linear predictive coding
4.1 Spectral analysis
4.2 Spectral analysis in C
4.3 Cepstral analysis
4.4 Computation of the cepstrum in C
4.5 Pitch tracking using cepstral analysis
4.6 Voicing detection
4.7 f0estimation by the autocorrelation method
4.8 Linear predictive coding
4.9 C programs for LPC analysis and resynthesis
4.10 Trying it out
4.11 Applications of LPC
Chapter Summary
Further exercises
Further reading
5 Finite-state machines
5. 1 Some simple examples
5.2 A more serious example
5.3 Deterministic and non-deterministic automata
5.4 Implementation in Prolog
5.5 Prolog''s processing strategy and the treatment of variables
5.6 Generating strings
5.7 Three possibly useful applications o{ that idea
5.8 Another approach to describing finite-state machines
5.9 Self-loops
5.10 Finite-state transducersFSTs
5.11 Using finite-state transducers to relate speech to phonemes
5.12 Finite-state phonology
5.13 Finite-state syntactic processing
Chapter summary
Further exercises
Further reading
6 Introduction to speech recognition techniques
6.1 Architectures for speech recognition
6.2 The pattern-recognition approach
6.3 Dynamic time warping
6.4 Applications
6.5 Sources of variability in speech
Chapter summary
Further reading
7 Probabilistic finite-state models
7.1 Introduction
7.2 Indeterminacy: n-gram models for part-of-speech tagging
7.3 Some probability theory for language modelling
7.4 Markov models
7.5 Trigram models
7.6 Incompleteness of the training corpus
7.7 Part-of-speech model calculations
7.8 Using HMMs for speech recognition
7.9 Chomsky''s objections to Markov models and some rejoinders
Chapter summary
Further reading
8 Parsing
8.1 Introduction
8.9 A demo
8.3 Intuitive parsing
8.4 Recursive descent parsing
8.5 The simplest parsing program
8.6 Difference lists
8.7 Generating a parse tree
8.8 Syllabification
8.9 Other parsing algorithms
8.10 Chart parsing
8.11 Depth-first vs. breadth-first search
8.19 Deterministic parsing, Marcus parsing and minimal commitment parsing
8.13 Parallel parsing
Chapter summary
Further reading
9 Using probabilistie grammars
9.1 Motivations
9.2 Probabilistic context-free grammars
9.3 Estimation of rule probabilities
9.4 A practical example
9.5 A limitation of probabilistic context-free grammars
9.6 Tree adjoining grammars
9.7 Data-oriented parsing
Chapter Summary
Conclusion and suggestions for further reading
Appendix:The American Standard Code for
Information Interchange ASCII
Glossary
References
Index