home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / speech / 266 < prev    next >
Encoding:
Text File  |  1992-11-17  |  33.8 KB  |  931 lines

  1. Newsgroups: comp.speech
  2. Path: sparky!uunet!charon.amdahl.com!pacbell.com!ames!saimiri.primate.wisc.edu!zaphod.mps.ohio-state.edu!darwin.sura.net!sgiblab!munnari.oz.au!metro!waves!andrewh
  3. From: andrewh@ee.su.OZ.AU (Andrew Hunt)
  4. Subject: FAQ - First Draft
  5. Message-ID: <1992Nov18.012628.15394@ucc.su.OZ.AU>
  6. Sender: news@ucc.su.OZ.AU
  7. Nntp-Posting-Host: waves.ee.su.oz.au
  8. Reply-To: andrewh@ee.su.OZ.AU (Andrew Hunt)
  9. Organization: University of Sydney, Australia
  10. Date: Wed, 18 Nov 1992 01:26:28 GMT
  11. Lines: 918
  12.  
  13.  
  14.                        comp.speech
  15.  
  16.                 Frequently Asked Questions
  17.                 ==========================
  18.  
  19. (FAQ = "Frequently Asked Questions")
  20.  
  21. Compiled: 18-Nov-92
  22.  
  23. This document is an attempt to answer commonly asked questions and to
  24. reduce the bandwidth taken up by these posts and their associated replies.
  25. If you have a question, please check this file before you post.
  26.  
  27. The FAQ is not meant to discuss any topic exhaustively.  It will hopefully
  28. provide readers with pointers on where to find useful information.  It also
  29. tries to list as much of the useful information and material available
  30. elsewhere on the Internet.
  31.  
  32. If you have not already read the Usenet introductory material posted to 
  33. "news.announce.newusers", please do.  For help with FTP (file transfer
  34. protocol) look for a regular posting of "Anonymous FTP List - FAQ" in
  35. comp.misc, comp.archives.admin and news.answers amongst others.
  36.  
  37.  
  38. The document is an EARLY DRAFT.  There are many unanswered questions and 
  39. some answers are not comprehensive.  I hope that it will improve over the next 
  40. few months.  If you have any comments, suggestions for inclusions, or answers 
  41. then please post or email.
  42.  
  43. In particular, the sections listing software/hardware to perform both
  44. synthesis, recognition and NLP have lots of gaps.
  45.  
  46.  
  47. My appologies to those who have been awaiting the first posting.  I have 
  48. been on holidays for most of the last month.
  49.  
  50.  
  51. Andrew Hunt
  52. Speech Technology Research Group    email: andrewh@ee.su.oz.au
  53. Department of Electrical Engineering    Ph:  61-2-692 4509
  54. University of Sydney, Australia.    Fax: 61-2-692 3847
  55.  
  56.  
  57. ========================== Acknowledgements ===========================
  58.  
  59. Thanks to the following for their comments and contributions.
  60.  
  61. Oliver Jakobs        <jakobs@ldv01.Uni-Trier.de>
  62. Tony Robinson        <ajr@eng.cam.ac.uk>
  63.  
  64.  
  65. ============================ Contents =================================
  66.  
  67. PART 1 - General
  68.  
  69. Q1.1: What is comp.speech?
  70. Q1.2: Where are the comp.speech archives?
  71. Q1.3: Common abbreviations and jargon.
  72. Q1.4: What are related newsgroups and mailing lists?
  73. Q1.5: What are related journals and conferences?
  74. Q1.6: What speech databases are available?
  75. Q1.7: Speech File Formats, Conversion and Playing.
  76.  
  77. PART 2 - Signal Processing for Speech
  78.  
  79. Q2.1: What speech sampling and signal processing hardware can I use?
  80. Q2.2: Signal processing techniques for speech technology.
  81. Q2.3: How do I convert to/from mu-law format?
  82.  
  83. PART 3 - Speech Coding and Compression
  84.  
  85. Q3.1: Speech compression techniques.
  86. Q3.2: What are some good references/books on coding/compression?
  87. Q3.3: What software is available?
  88.  
  89. PART 4 - Speech Synthesis
  90.  
  91. Q4.1: What is speech synthesis?
  92. Q4.2: How can speech synthesis be performed?
  93. Q4.3: What are some good references/books on synthesis?
  94. Q4.4: What software/hardware is available?
  95.  
  96. PART 5 - Speech Recognition
  97.  
  98. Q5.1: What is speech recognition?
  99. Q5.2: How can I build a very simple speech recogniser?
  100. Q5.2: What does speaker dependent/adaptive/independent mean?
  101. Q5.3: What does small/medium/large/very-large vocabulary mean?
  102. Q5.4: What does continuous speech or isolated-word mean?
  103. Q5.5: How is speech recognition done?
  104. Q5.6: What are some good references/books on recognition?
  105. Q5.7: What packages are available?
  106.  
  107. PART 6 - Speaker Recognition/Verification
  108.  
  109. Q6.1: What is speaker recognition/verification?
  110. Q6.2: Where is speaker recognition used?
  111. Q6.3: What are techniques for speaker recognition?
  112. Q6.4: How good is speaker recognition?
  113. Q6.5: What are some good references/books on speaker recognition?
  114. Q6.6: What packages are available?
  115.  
  116. PART 7 - Natural Language Processing
  117.  
  118. Q7.1: What is NLP?
  119. Q7.2: What are some good references/books on NLP?
  120. Q7.3: What software is available?
  121.  
  122. =======================================================================
  123.  
  124. PART 1 - General
  125.  
  126. Q1.1: What is comp.speech?
  127.  
  128. comp.speech is a newsgroup for discussion of speech technology and 
  129. speech science.  It covers a wide range of issues from application of 
  130. speech technology, to research, to products and lots more.
  131.  
  132. By nature speech technology is an inter-disciplinary field and the 
  133. newsgroup reflects this.  However, computer application should be the 
  134. basic theme of the group.
  135.  
  136. The following is a list of topics but does not cover all matters related 
  137. to the field - no order of importance is implied.
  138.  
  139. [1] Speech Recognition - discussion of methodologies, training, techniques, 
  140. results and applications.  This should cover the application of techniques 
  141. including HMMs, neural-nets and so on to the field.
  142.  
  143. [2] Speech Synthesis - discussion concerning theoretical and practical
  144. issues associated with the design of speech synthesis systems.
  145.  
  146. [3] Speech Coding and Compression - both research and application matters.
  147.  
  148. [4] Phonetic/Linguistic Issues - coverage of linguistic and phonetic issues 
  149. which are relevant to speech technology applications.  Could cover parsing, 
  150. natural language processing, phonology and prosodic work.
  151.  
  152. [5] Speech System Design - issues relating to the application of speech
  153. technology to real-world problems.  Includes the design of user interfaces, 
  154. the building of real-time systems and so on.
  155.  
  156. [6] Other matters - relevant conferences, books, public domain software, 
  157. hardware and related products.
  158.  
  159. ------------------------------------------------------------------------
  160.  
  161. Q1.2: Where are the comp.speech archives?
  162.  
  163. comp.speech is being archived for anonymous ftp.
  164.  
  165.     ftp site:    svr-ftp.eng.cam.ac.uk (or 129.169.24.20).  
  166.     directory:    comp.speech/archive
  167.  
  168. comp.speech/archive contains the articles as they arrive.  Batches of 100
  169. articles are grouped into a shar file, along with an associated file of
  170. Subject lines.
  171.  
  172. Other useful information is also available in comp.speech/info.
  173.  
  174. ------------------------------------------------------------------------
  175.  
  176. Q1.3: Common abbreviations and jargon.
  177.  
  178. ANN  - Artificial Neural Network.
  179. ASR  - Automatic Speech Recognition.
  180. CELP - Code excited linear prediction.
  181. DTW  - Dynamic time warping.
  182. FAQ  - Frequently asked questions.
  183. HMM  - Hidden markov model.
  184. LPC  - Linear predictive coding.
  185. LVQ  - Linear vector quantisation.
  186. NLP  - Natural Language Processing.
  187. NN   - Neural Network.
  188. TTS  - Text-To-Speech (i.e. synthesis).
  189.  
  190. ------------------------------------------------------------------------
  191.  
  192. Q1.4: What are related newsgroups and mailing lists?
  193.  
  194.  
  195. NEWGROUPS
  196.  
  197. comp.ai - Artificial Intelligence newsgroup.  
  198.      Postings on general AI issues, language processing and AI techniques.
  199.      Has a good FAQ including NLP, NN and other AI information.
  200.  
  201. comp.ai.nlang-know-rep - Natural Language Knowledge Representation
  202.      Moderated group covering Natural Language.
  203.  
  204. comp.ai.neural-nets - discussion of Neural Networks and related issues.  
  205.      There are often posting on speech related matters - phonetic recognition,
  206.      connectionist grammars and so on.
  207.  
  208. comp.compression - occasional articles on compression of speech.
  209.      FAQ for comp.compression has some info on audio compression standards.
  210.  
  211. comp.dcom.telecom - Telecommunications newsgroup.
  212.      Has occasional articles on voice products.
  213.  
  214. comp.dsp - discussion of signal processing - hardware and algorithms and more.
  215.      Has a good FAQ posting.
  216.      Has a regular posting of a comprehensive list of Audio File Formats.
  217.  
  218. comp.multimedia - Multi-Media discussion group.
  219.      Has occasional articles on voice I/O.
  220.  
  221. sci.lang - Language.  
  222.      Discussion about phonetics, phonology, grammar, etymology and lots more.
  223.  
  224.  
  225. MAILING LISTS
  226.  
  227. ECTL - Electronic Communal Temporal Lobe
  228.      Founder & Moderator: David Leip
  229.      Moderated mailing list for researchers with interests in computer speech 
  230.      interfaces. This list serves a broad community including persons from 
  231.      signal processing, AI, linguistics and human factors.
  232.      
  233.      To subscribe, send the following information to: 
  234.         ectl-request@snowhite.cis.uoguelph.ca
  235.         name, institute, department, daytime phone & e-mail address
  236.  
  237.      To access the archive, ftp snowhite.cis.uoguelph.ca, login as anonymous,
  238.      and supply your local userid as a password.  All the ECTL things can be
  239.      found in pub/ectl.
  240.  
  241. Prosody Mailing List
  242.     Unmoderated mailing list for discussion of prosody.  The aim is
  243.     to facilitate the spread of information relating to the research
  244.     of prosody by creating a network of researchers in the field.
  245.     If you want to participate, send the following one-line
  246.     message to "listserv@purccvm.bitnet" :-
  247.  
  248.         subscribe prosody Your Name
  249.  
  250. Digital Mobile Radio
  251.      Covers lots of areas include some speech topics including speech 
  252.      coding and speech compression.
  253.      Mail Peter Decker (dec@dfv.rwth-aachen.de) to subscribe.
  254.  
  255. ------------------------------------------------------------------------
  256.  
  257. Q1.5: What are related journals and conferences?
  258.  
  259. Try the following commercially oriented magazines...
  260.  
  261.     Speech Technology
  262.  
  263. Try the following technical journals...
  264.  
  265.     Computational Linguistics
  266.     Computer Speech and Language
  267.     Journal of the Acoustical Society of America
  268.     Transactions of IEEE ASSP
  269.  
  270. Try the following conferences...
  271.  
  272.     IEEE Intl. Conf. Acoustics, Speech and Signal Processing
  273.     Intl Conf on Spoken Language Processing
  274.  
  275. ------------------------------------------------------------------------
  276.  
  277. Q1.6: What speech databases are available?
  278.  
  279. A wide range of speech databases have been collected.  These databases 
  280. are primarily for the development of speech synthesis/recognition and for 
  281. linguistic research.  Unfortunately, almost all the information listed
  282. here refers to the English language.  
  283.  
  284. Some databases are free but most appear to be available for a small cost.
  285. The databases normally require lots of storage space - do not expect to be 
  286. able to ftp all the data you want.
  287.  
  288. [There are too many to list here in detail - perhaps someone would like to 
  289.  set up a special posting on speech databases?]
  290.  
  291.  
  292. LINGUISTIC DATA CONSORTIUM (LDC)
  293.  
  294. Information about the Linguistic Data Consortium is available via
  295. anonymous ftp from:    ftp.cis.upenn.edu    (130.91.6.8)
  296. in the directory:    /pub/ldc
  297.  
  298. Here are some excerpts from the files in that directory:
  299.  
  300. Briefly stated, the LDC has been established to broaden the collection
  301. and distribution of speech and natural language data bases for the
  302. purposes of research and technology development in automatic speech
  303. recognition, natural language processing and other areas where large
  304. amounts of linguistic data are needed.
  305.  
  306. Here is the brief list of corpora:
  307.  
  308.    * The TIMIT and NTIMIT speech corpora
  309.    * The Resource Management speech corpus (RM1, RM2)
  310.    * The Air Travel Information System (ATIS0) speech corpus
  311.    * The Association for Computational Linguistics - Data Collection 
  312.      Initiative text corpus (ACL-DCI)
  313.    * The TI Connected Digits speech corpus (TIDIGITS)
  314.    * The TI 46-word Isolated Word speech corpus (TI-46)
  315.    * The Road Rally conversational speech corpora (including "Stonehenge" 
  316.      and "Waterloo" corpora)
  317.    * The Tipster Information Retrieval Test Collection
  318.    * The Switchboard speech corpus ("Credit Card" excerpts and portions
  319.      of the complete Switchboard collection)
  320.  
  321. Further resources to be made available within the first year (or two):
  322.  
  323.    * The Machine-Readable Spoken English speech corpus (MARSEC)
  324.    * The Edinburgh Map Task speech corpus
  325.    * The Message Understanding Conference (MUC) text corpus of FBI 
  326.      terrorist reports
  327.    * The Continuous Speech Recognition - Wall Street Journal speech 
  328.      corpus (WSJ-CSR)
  329.    * The Penn Treebank parsed/tagged text corpus
  330.    * The Multi-site ATIS speech corpus (ATIS2)
  331.    * The Air Traffic Control (ATC) speech corpus
  332.    * The Hansard English/French parallel text corpus
  333.    * The European Corpus Initiative multi-language text corpus (ECI) 
  334.    * The Int'l Labor Organization/Int'l Trade Union multi-language 
  335.      text corpus (ILO/ITU)
  336.    * Machine-readable dictionaries/lexical data bases (COMLEX, CELEX)
  337.  
  338. The files in the directory include more detailed information on the 
  339. individual databases.  For further information contact
  340.  
  341.     Elizabeth Hodas
  342.     441 Williams Hall
  343.     University of Pennsylvania
  344.     Philadelphia, PA 19104-6305
  345.     Phone:   (215) 898-0464
  346.     Fax:     (215) 573-2175
  347.     e-mail:  ehodas@walnut.ling.upenn.edu
  348.  
  349.  
  350. Center for Spoken Language Understanding (CSLU)
  351.  
  352. 1. The ISOLET speech database of spoken letters of the English alphabet. 
  353. The speech is high quality (16 kHz with a noise cancelling microphone).  
  354. 150 speakers x 26 letters of the English alphabet twice in random order.  
  355. The "ISOLET" data base can be purchased for $100 by sending an email request 
  356. to vincew@cse.ogi.edu.  (This covers handling, shipping and medium costs).  
  357. The data base comes with a technical report describing the data.
  358.  
  359. 2. CSLU has a telephone speech corpus of 1000 English alphabets.  Callers 
  360. recite the alphabet with brief pauses between letters.  This database is 
  361. available to not-for-profit institutions for $100. The data base is described 
  362. in the proceedings of the International Conference on Spoken Language 
  363. Processing.  Contact vincew@cse.ogi.edu if interested.
  364.  
  365. ------------------------------------------------------------------------
  366.  
  367. Q1.7: Speech File Formats, Conversion and Playing.
  368.  
  369. Section 2 of this FAQ has information on mu-law coding.
  370.  
  371. A very good and very comprehensive list of audio file formats is prepared
  372. by Guido van Rossum.  The list is posted regularly to comp.dsp and
  373. alt.binaries.sounds.misc, amongst others.  It includes information on 
  374. sampling rates, hardware, compression techniques, file format definitions, 
  375. format conversion, standards, programming hints and lots more.
  376.  
  377. It is also available by ftp 
  378.     from:         ftp.cwi.nl
  379.     directory:    /pub 
  380.     file:         AudioFormats<version>
  381.  
  382.  
  383.  
  384. =======================================================================
  385.  
  386. PART 2 - Signal Processing for Speech
  387.  
  388. Q2.1: What speech sampling and signal processing hardware can I use?
  389.  
  390. In addition to the following information, have a look at the Audio File
  391. format document prepared by Guido van Rossum (referred to above).
  392.  
  393.  
  394. Product: Sun standard audio port (SPARC 1 & 2)
  395. Input:  1 channel, 8 bit mu-law encoded (telephone quality)
  396. Output: 1 channel, 8 bit mu-law encoded (telephone quality)
  397.  
  398. Product:  Ariel
  399. Platform: Sun + others?
  400. Input:  2 channels, 16bit linear, sample rate 8-96kHz (inc 32, 44.1, 48kHz).
  401. Output: 2 channels, 16bit linear, sample rate 8-50kHz (inc 32, 44.1, 48kHz).
  402. Contact:
  403.  
  404. Can anyone provide information on Soundblaster, Mac, NeXT and other hardware?
  405.  
  406. [Help is needed to source more info.  How about the following format?]
  407.  
  408. Product:  xxx
  409. Platform: PC, Mac, Sun, ...
  410. Rough Cost (pref $US):
  411. Input: e.g. 16bit linear, 8,10,16,32kHz.
  412. Output: e.g. 16bit linear, 8,10,16,32kHz.
  413. DSP: signal processing support
  414. Other:
  415. Contact:
  416.  
  417. ------------------------------------------------------------------------
  418.  
  419. Q2.2: Signal processing techniques for speech technology.
  420.  
  421. Would anyone like to write a short intro, list some useful refs, and list 
  422. public domain signal processing software?
  423.  
  424. ------------------------------------------------------------------------
  425.  
  426. Q2.3: How do I convert to/from mu-law format?
  427.  
  428. Mu-law coding is a form of compression for audio signals including speech.
  429. It is widely used in the telecommunications field because it improves the
  430. signal-to-noise ratio without increasing the amount of data.  Typically,
  431. mu-law compressed speech is carried in 8-bit samples.  It is a companding
  432. technqiue.  That means that carries more information about the smaller signals
  433. than about larger signals.  Mu-law coding is provided as standard for the
  434. audio input and output of the SUN Sparc stations 1&2 (Sparc 10's are linear).
  435.  
  436. Here is some sample conversion code in C.
  437.  
  438. # include <stdio.h>
  439.  
  440. unsigned char linear2ulaw(/* int */);
  441. int ulaw2linear(/* unsigned char */);
  442.  
  443. /*
  444. ** This routine converts from linear to ulaw.
  445. **
  446. ** Craig Reese: IDA/Supercomputing Research Center
  447. ** Joe Campbell: Department of Defense
  448. ** 29 September 1989
  449. **
  450. ** References:
  451. ** 1) CCITT Recommendation G.711  (very difficult to follow)
  452. ** 2) "A New Digital Technique for Implementation of Any
  453. **     Continuous PCM Companding Law," Villeret, Michel,
  454. **     et al. 1973 IEEE Int. Conf. on Communications, Vol 1,
  455. **     1973, pg. 11.12-11.17
  456. ** 3) MIL-STD-188-113,"Interoperability and Performance Standards
  457. **     for Analog-to_Digital Conversion Techniques,"
  458. **     17 February 1987
  459. **
  460. ** Input: Signed 16 bit linear sample
  461. ** Output: 8 bit ulaw sample
  462. */
  463.  
  464. #define ZEROTRAP    /* turn on the trap as per the MIL-STD */
  465. #undef ZEROTRAP
  466. #define BIAS 0x84   /* define the add-in bias for 16 bit samples */
  467. #define CLIP 32635
  468.  
  469. unsigned char linear2ulaw(sample) int sample; {
  470.   static int exp_lut[256] = {0,0,1,1,2,2,2,2,3,3,3,3,3,3,3,3,
  471.                              4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
  472.                              5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
  473.                              5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
  474.                              6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
  475.                              6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
  476.                              6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
  477.                              6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
  478.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
  479.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
  480.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
  481.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
  482.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
  483.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
  484.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,
  485.                              7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7};
  486.   int sign, exponent, mantissa;
  487.   unsigned char ulawbyte;
  488.  
  489.   /* Get the sample into sign-magnitude. */
  490.   sign = (sample >> 8) & 0x80;        /* set aside the sign */
  491.   if(sign != 0) sample = -sample;        /* get magnitude */
  492.   if(sample > CLIP) sample = CLIP;        /* clip the magnitude */
  493.  
  494.   /* Convert from 16 bit linear to ulaw. */
  495.   sample = sample + BIAS;
  496.   exponent = exp_lut[( sample >> 7 ) & 0xFF];
  497.   mantissa = (sample >> (exponent + 3)) & 0x0F;
  498.   ulawbyte = ~(sign | (exponent << 4) | mantissa);
  499. #ifdef ZEROTRAP
  500.   if (ulawbyte == 0) ulawbyte = 0x02;    /* optional CCITT trap */
  501. #endif
  502.  
  503.   return(ulawbyte);
  504. }
  505.  
  506. /*
  507. ** This routine converts from ulaw to 16 bit linear.
  508. **
  509. ** Craig Reese: IDA/Supercomputing Research Center
  510. ** 29 September 1989
  511. **
  512. ** References:
  513. ** 1) CCITT Recommendation G.711  (very difficult to follow)
  514. ** 2) MIL-STD-188-113,"Interoperability and Performance Standards
  515. **     for Analog-to_Digital Conversion Techniques,"
  516. **     17 February 1987
  517. **
  518. ** Input: 8 bit ulaw sample
  519. ** Output: signed 16 bit linear sample
  520. */
  521.  
  522. int ulaw2linear(ulawbyte) unsigned char ulawbyte; {
  523.   static int exp_lut[8] = { 0, 132, 396, 924, 1980, 4092, 8316, 16764 };
  524.   int sign, exponent, mantissa, sample;
  525.  
  526.   ulawbyte = ~ulawbyte;
  527.   sign = (ulawbyte & 0x80);
  528.   exponent = (ulawbyte >> 4) & 0x07;
  529.   mantissa = ulawbyte & 0x0F;
  530.   sample = exp_lut[exponent] + (mantissa << (exponent + 3));
  531.   if(sign != 0) sample = -sample;
  532.  
  533.   return(sample);
  534. }
  535.  
  536.  
  537.  
  538. =======================================================================
  539.  
  540. PART 3 - Speech Coding and Compression
  541.  
  542. Q3.1: Speech compression techniques.
  543.  
  544.   [The FAQ for comp.compression includes a few questions and answers
  545.    on the compression of speech.]
  546.  
  547. ------------------------------------------------------------------------
  548.  
  549. Q3.2: What are some good references/books on coding/compression?
  550.  
  551. ------------------------------------------------------------------------
  552.  
  553. Q3.3: What software is available?
  554.  
  555. A lossless compressor for speech signals is available by anonymous ftp from
  556. svr-ftp.eng.cam.ac.uk in directory misc and file shorten-0.4.shar.  It will
  557. compile and run on UNIX workstations and will cope with a wide variety of
  558. formats.  Compression is typically 50% for 16bit clean speech sampled at
  559. 16kHz.
  560.  
  561.   [ADPCM, CELP and GSM source appear to be available by ftp - can someone
  562.    provide details?]
  563.  
  564.  
  565.  
  566. =======================================================================
  567.  
  568. PART 4 - Speech Synthesis
  569.  
  570. Q4.1: What is speech synthesis?
  571.  
  572. Speech synthesis is the task of transforming written input to spoken output.
  573. The input can either be provided in a graphemic/orthographic or a phonemic
  574. script, depending on its source.
  575.  
  576. ------------------------------------------------------------------------
  577.  
  578. Q4.2: How can speech synthesis be performed?
  579.  
  580. There are several algorithms.  The choice depends on the task they're used
  581. for.  The easiest way is to just record the voice of a person speaking the
  582. desired phrases.  This is useful if only a restricted volume of phrases and
  583. sentences is used, e.g. messages in a train station, or schedule information
  584. via phone.  The quality depends on the way recording is done.
  585.  
  586. More sophisticated but worse in quality are algorithms which split the 
  587. speech into smaller pieces.  The smaller those units are, the less are they
  588. in number, but the quality also decreases.  An often used unit is the phoneme,
  589. the smallest linguistic unit.  Depending on the language used there are about
  590. 35-50 phonemes in western European languages, i.e. there are 35-50 single
  591. recordings. The problem is combining them as fluent speech requires fluent
  592. transitions between the elements. The intellegibility is therefore lower, but
  593. the memory required is small.
  594.  
  595. A solution to this dilemma is using diphones. Instead of splitting at the 
  596. transitions, the cut is done at the center of the phonemes, leaving the 
  597. transitions themselves intact. This gives about 400 elements (20*20) and
  598. the quality increases.
  599.  
  600. The longer the units become, the more elements are there, but the quality 
  601. increases along with the memory required. Other units which are widely used
  602. are half-syllables, syllables, words, or combinations of them, e.g. word stems
  603. and inflectional endings.
  604.  
  605. ------------------------------------------------------------------------
  606.  
  607. Q4.3: What are some good references/books on synthesis?
  608.  
  609. MITalk (also known as DECtalk) is one of the most sucessful speech synthesis
  610. systems around.  It is described in:
  611.  
  612.     John Allen, Sharon Hunnicut and Dennis H. Klatt, "From Text to Speech: 
  613.     The MITalk System", Cambridge University Press, 1987.
  614.  
  615. ------------------------------------------------------------------------
  616.  
  617. Q4.4: What software/hardware is available?
  618.  
  619. There appears to be very little Public Domain or Shareware speech synthesis 
  620. related software available for FTP.  However, the following are available.
  621. Strictly speaking, not all the following sources are speech synthesis - all
  622. are speech output systems.
  623.  
  624.  
  625. SIMTEL-20
  626. The following is a list of speech related software available from SIMTEL-20 
  627. and its mirror sites for PCs.
  628.  
  629. Directory PD1:<MSDOS.VOICE>
  630.  Filename   Type Length   Date   Description
  631.  ==============================================
  632.  AUTOTALK.ARC  B   23618  881216  Digitized speech for the PC
  633.  CVOICE.ARC    B   21335  891113  Tells time via voice response on PC
  634.  HEARTYPE.ARC  B   10112  880422  Hear what you are typing, crude voice synth.
  635.  HELPME2.ARC   B    8031  871130  Voice cries out 'Help Me!' from PC speaker
  636.  SAY.ARC       B   20224  860330  Computer Speech - using phonemes
  637.  SPEECH98.ZIP  B   41003  910628  Build speech (voice) on PC using 98 phonemes
  638.  TALK.ARC      B    8576  861109  BASIC program to demo talking on a PC speaker
  639.  TRAN.ARC      B   39766  890715  Repeats typed text in digital voice
  640.  VDIGIT.ZIP    B  196284  901223  Toolkit: Add digitized voice to your programs
  641.  VGREET.ARC    B   45281  900117  Voice says good morning/afternoon/evening
  642.  
  643.  
  644. Other Sources
  645.  
  646. Package:     Text to phoneme program
  647. Platform:    unknown
  648. Description: Text to phoneme program.  Possibly based on Naval Research Lab's 
  649.          set of text to phoneme rules.
  650. Availablity: By FTP from "shark.cse.fau.edu" (131.91.80.13) in the directory
  651.         /pub/src/phon.tar.Z
  652.  
  653. Package:     Text to speech program
  654. Platform:    Sun SPARC
  655. Description: Text to speech program based on concatenation of pre-recorded
  656.          speech segments.
  657. Hardware:    SPARC audio I/O
  658. Availablity: by FTP from "wilma.cs.brown.edu" as /pub/speak.tar.Z
  659.  
  660.  
  661. Package:     xxx
  662. Platform:    (PC, Mac, Sun, NeXt etc)
  663. Rough Cost:  (if appropriate)
  664. Description: (keep it brief)
  665. Hardware:    (requirement list)
  666. Availablity: (ftp info, email contact or company contact)
  667.  
  668.  
  669. Can anyone provide information on the following packages?
  670.  
  671.     MacIntalk (Mac) - formant based speech synthesis
  672.     Narrator (Amiga) - formant based synthesis
  673.     Bliss software
  674.     CSRE software
  675.     JSRU software
  676.     Klatt Software
  677.     Sensimetrics products
  678.  
  679. Can anyone provide information on speech synthesis chip sets?
  680.  
  681. Please email or post suitable information for this list.  Commercial and 
  682. research packages are both appropriate.  
  683.  
  684. [This list may be large enough to justify a separate posting]
  685.  
  686.  
  687. =======================================================================
  688.  
  689. PART 5 - Speech Recognition
  690.  
  691. Q5.1: What is speech recognition?
  692.  
  693. Anyone got a good definition?
  694.  
  695. ------------------------------------------------------------------------
  696.  
  697. Q5.2: How can I build a very simple speech recogniser?
  698.  
  699. Doug Danforth provides a detailed account in article 253 in the comp.speech
  700. archives - also available as file info/DIY_Speech_Recognition.
  701.  
  702. The first part is reproduced here.
  703.  
  704.   QUICKY RECOGNIZER sketch:
  705.   
  706.   Here is a simple recognizer that should give you 85%+ recognition
  707.   accuracy.  The accuracy is a function of WHAT words you have in
  708.   your vocabulary.  Long distinct words are easy.  Short similar
  709.   words are hard.  You can get 98+% on the digits with this recognizer.
  710.   
  711.   Overview:
  712.   (1) Find the begining and end of the utterance.
  713.   (2) Filter the raw signal into frequency bands.
  714.   (3) Cut the utterance into a fixed number of segments.
  715.   (4) Average data for each band in each segment.
  716.   (5) Store this pattern with its name.
  717.   (6) Collect training set of about 3 repetitions of each pattern (word).
  718.   (7) Recognize unknown by comparing its pattern against all patterns
  719.       in the training set and returning the name of the pattern closest
  720.       to the unknown.
  721.  
  722. Many variations upon the theme can be made to improve the performance.
  723. Try different filtering of the raw signal and different processing methods.
  724.  
  725. ------------------------------------------------------------------------
  726.  
  727. Q5.2: What does speaker dependent/adaptive/independent mean?
  728.  
  729. A speaker dependent system is developed (trained) to operate for a single
  730. speaker.  These systems are usually easier to develop, cheaper to buy and
  731. more accurate, but are not as flexible as speaker adaptive or speaker
  732. independent systems.
  733.  
  734. A speaker independent system is developed (trained) to operate for any
  735. speaker or speakers of a particular type (e.g. male/female, American/English).
  736. These systems are the most difficult to develop, most expensive and currently
  737. accuracy is not as good.  They are the most flexible.
  738.  
  739. A speaker adaptive system is developed to adapt its operation for new 
  740. speakers that it encounters usually based on a general model of speaker
  741. characteristics.  It lies somewhere between speaker independent and speaker 
  742. adaptive systems.
  743.  
  744. Each type of system is suited to different applications and domains.
  745.  
  746. ------------------------------------------------------------------------
  747.  
  748. Q5.3: What does small/medium/large/very-large vocabulary mean?
  749.  
  750. The size of vocabulary of a speech recognition system affects the complexity,
  751. processing requirements and the accuracy of the system.  Some applications
  752. only require a few words (e.g. numbers only), others require very large 
  753. dictionaries (e.g. dictation machines).
  754.  
  755. There are no established definitions but the following may be a helpful guide.
  756.  
  757.     small vocabulary - tens of words
  758.     medium vocabulary - hundreds of words
  759.     large vocabulary - thousands of words
  760.     very-large vocabulary - tens of thousands of words.
  761.  
  762. [Does anyone have a more precise definition?]
  763.  
  764. ------------------------------------------------------------------------
  765.  
  766. Q5.4: What does continuous speech or isolated-word mean?
  767.  
  768. An isolated-word system operates on single words at a time - requiring a 
  769. pause between saying each word.  This is the simplest form of recognition 
  770. to perform, because the pronunciation of the words tends not affect each 
  771. other.  Because the occurrences of each particular word are similar they are 
  772. easier to recognise.
  773.  
  774. A continuous speech system operates on speech in which words are connected
  775. together, i.e. not separated by pauses.  Continuous speech is more difficult
  776. to handle because of a variety of effects.  One effect is "coarticulation" -
  777. the production of each phoneme is affects by the production of surrounding
  778. phonemes and the so the start and end of words are affected by the preceding
  779. and following words.  The recognition of continuous speech is affected by
  780. the rate of speech (fast speech tends to be harder).
  781.  
  782. ------------------------------------------------------------------------
  783.  
  784. Q5.5: How is speech recognition done?
  785.  
  786. A wide variety of techniques are used to perform speech recognition. 
  787. There are many types of speech recognition.  There are many levels of
  788. speech recognition/processing/understanding.
  789.  
  790. Typically speech recognition starts with the digital sampling of speech.
  791. The next stage would be acoustic signal processing.  Common techniques 
  792. include a variety of spectral analyses, LPC analysis, the cepstral transform,
  793. cochlea modelling and many, many more.
  794.  
  795. The next stage will typically try to recognise phonemes, groups of phonemes 
  796. or words.  This stage can be achieved by many processes such as DTW (Dynamic
  797. Time Warping),  HMM (hidden Markov modelling), NNs (Neural Networks), and
  798. sometimes expert systems.  In crude terms, all these processes to recognise
  799. the patterns of speech.  The most advanced systems are statistically 
  800. motivated.
  801.  
  802. Some systems utilise knowledge of grammar to help with the recognition 
  803. process.
  804.  
  805. Some systems attempt to utilise prosody (pitch, stress, rhythm etc) to
  806. process the speech input.
  807.  
  808. Some systems try to "understand" speech.  That is, they try to convert the
  809. words into a representation of what the speaker intended to mean or achieve
  810. by what they said.
  811.  
  812. ------------------------------------------------------------------------
  813.  
  814. Q5.6: What are some good references/books on recognition?
  815.  
  816. Suggestions?
  817.  
  818. ------------------------------------------------------------------------
  819.  
  820. Q5.7: What packages are available?
  821.  
  822. Package Name: xxx
  823. Platform:     PC, Mac, UNIX, ....
  824. Description:  (e.g. isolated word, speaker independent...)
  825. Rough Cost:   (if applicable)
  826. Requirements: (hardware/software needs - if applicable)
  827. Misc:
  828. Contact:      (email, ftp or address)
  829.  
  830.  
  831. Can anyone provide info on
  832.  
  833.     DragonDictate
  834.     SayIt (from Qualix)
  835.     HTK (HMM Toolkit)
  836.     Voice Navigator (from Articulate Systems)
  837.     IN3 Voice Command
  838.     Votan
  839.  
  840.  
  841. I would like information on any software/hardware/packages that you know about.
  842. Commercial, public domain and research packages are all appropriate.  
  843.  
  844. [If there is enough information a separate posting could be started.]
  845.  
  846.  
  847. =======================================================================
  848.  
  849. PART 6 - Speaker Recognition/Verification
  850.  
  851. Q6.1: What is speaker recognition/verification?
  852.  
  853. ------------------------------------------------------------------------
  854.  
  855. Q6.2: Where is speaker recognition used?
  856.  
  857. ------------------------------------------------------------------------
  858.  
  859. Q6.3: What are techniques for speaker recognition?
  860.  
  861. ------------------------------------------------------------------------
  862.  
  863. Q6.4: How good is speaker recognition?
  864.  
  865. ------------------------------------------------------------------------
  866.  
  867. Q6.5: What are some good references/books on speaker recognition?
  868.  
  869. ------------------------------------------------------------------------
  870.  
  871. Q6.6: What packages are available?
  872.  
  873.  
  874. =======================================================================
  875.  
  876. PART 7 - Natural Language Processing
  877.  
  878. There is a lot of useful information on the following questions in the 
  879. FAQ for comp.ai.  The FAQ lists available software and useful references.
  880. Included is a substantial list of software, documentation and other info
  881. which is available by ftp.
  882.  
  883. ------------------------------------------------------------------------
  884.  
  885. Q7.1: What is NLP?
  886.  
  887. Natural Language Processing is a field of great breadth.  It covers everything
  888. from syntax and semantic analysis or text, to methods of "understanding"
  889. texts, to methods of generating text from abstract representations, to 
  890. language translations and more.
  891.  
  892. ------------------------------------------------------------------------
  893.  
  894. Q7.2: What are some good references/books on NLP?
  895.  
  896. Any recommendations?  A few references/books for each area such as parsing,
  897. translation, knowledge representation etc, would be suitable.
  898.  
  899. The FAQ for the "comp.ai" newsgroup includes some useful refs also.
  900.  
  901. ------------------------------------------------------------------------
  902.  
  903. Q7.3: What software is available?
  904.  
  905. The FAQ for the "comp.ai" newsgroup lists a variety of language processing 
  906. software that is available.  That FAQ is posted monthly.
  907.  
  908. Natural Language Software Registry
  909. The Natural Language Software Registry is available from the German Research 
  910. Institute for Artificial Intelligence (DFKI) in Saarbrucken.
  911.  
  912. The current version details 
  913. + speech signal processors, e.g. Computerized Speech Lab (Kay Electronics)
  914. + morphological analyzers, e.g. PC-KIMMO (Summer Institute for Linguistics)
  915. + parsers, e.g. Alveytools (University of Edinburgh)
  916. + knowledge representation systems, e.g. Rhet (University of Rochester)
  917. + multicomponent systems, such as ELU (ISSCO), PENMAN (ISI), Pundit (UNISYS),
  918.         SNePS (SUNY Buffalo),
  919. + applications programs (misc.)
  920.  
  921. This document is available on-line via anonymous ftp to ftp.dfki.uni-sb.de 
  922. (directory: registry; or: tira.uchicago.edu, IP 128.135.96.31), by email to
  923. registry@dfki.uni-sb.de.
  924.  
  925. If you have developed a piece of software for natural language
  926. processing that other researchers might find useful, you can include
  927. it by returning a description form, available from the same source.
  928.  
  929.  
  930.  
  931.