Upload
basil-foster
View
216
Download
0
Embed Size (px)
DESCRIPTION
Page 2 of 10 Language Model Grammar Conversion Grammar Specifications Backus-Naur Form (BNF) Augmented BNF (ABNF) JSpeech Grammar Format (JSGF) Speech Recognition Grammar Specification (SRGS) ISIP Hierarchical Digraph (IHD) ::=ab* =a(b)*; a b BNF ::=aB ::=bB ::=ε ABNFJSGF XML-SRGSIHD
Citation preview
Language Model Grammar Conversion
Wesley Holland, Julie Baca, Dhruva Duncan, Joseph PiconeCenter for Advanced Vehicular Systems
Mississippi State University
XML ABNF
BNFIHD
BNF JSGF
Page 2 of 10Language Model Grammar Conversion
Speech Recognition
• Acoustic Model• Maps audio data to words or phonemes
• Language Model• Specifies order in which a sequence of words or phonemes is likely to
occur
• Described using grammar
Page 3 of 10Language Model Grammar Conversion
Grammar Specifications
• Backus-Naur Form (BNF)
• Augmented BNF (ABNF)
• JSpeech Grammar Format (JSGF)
• Speech Recognition Grammar Specification (SRGS)
• ISIP Hierarchical Digraph (IHD)
<A>::=ab* <A>=a(b)*;
a<item repeat=“0-”> b</item>
BNF<A>::=aB<B>::=bB<B>::=ε
ABNF JSGF
XML-SRGS IHD
Page 4 of 10Language Model Grammar Conversion
Conversion Design
• Goals• JSGF ↔ IHD
• XML-SRGS ↔ IHD
• Determination of equivalence
• Grammar minimization
• Final Architecture
XML
JSGF
ABNF BNF IHD
Page 5 of 10Language Model Grammar Conversion
JSGF/XML-SRGS → ABNF
• JSGF → ABNF• Trivial
• Similar in syntax and structure to ABNF
• XML-SRGS → ABNF• Harder than JSGF
• Different in syntax and structure from ABNF
• Requires enumeration of certain repeat attributes
<S>::=(ab)|(abab)
XML-SRGS<item repeat=‘1-2’> a b</item>
ABNF
<S>::=abab(ab)*
<item repeat=‘2-’> a b</item>
Page 6 of 10Language Model Grammar Conversion
JSGF/XML-SRGS → ABNF
• XML-SRGS → ABNF (continued)• Different weighting mechanisms (weight and repeat-prob attributes)
a<item repeat=“0-” repeat-prob=“.45”> b</item><one-of> <item weight=“.4”>c</item> <item weight=“.6”>d</item></one-of>
Page 7 of 10Language Model Grammar Conversion
ABNF → BNF
• Normalized BNF• Consists of rules of the following formats:
•(RULE_NAME)::=(TERMINAL),(NON_TERMINAL)
•(RULE_NAME)::=(NON_TERMINAL)
•(RULE_NAME)::=ε
ABNF
BNF
1. Break rule into multiple rules at each top-level alternation. Recurse on each rule.
2. For each concatenation, Kleene star, or Kleene plus, extract a set of left symbols and a set of right symbols.
3. For n left symbols and m right symbols, create n x m connecting rules.
• ABNF → BNF• Complicated
• Accomplished using a recursive algorithm that extracts sets of normalized BNF rules from a set of ABNF rules
Page 8 of 10Language Model Grammar Conversion
BNF ↔ IHD
• BNF ↔ IHD• Each arc translates to a normalized BNF
• Terminals correspond to nodes; concatenations correspond to arcs
RS→R0 R3→C,R3RS→R1 R3→C,RTR0→A,R3 RT→εR1→B,R3
BNFNodes1: A2: B3: C
Arcs(S,1) (2,3)(S,2) (3,3)(1,3) (3,T)
IHD
Page 9 of 10Language Model Grammar Conversion
BNF → JSGF/XML-SRGS
• BNF → JSGF/XML-SRGS• Rule-by-rule
• Trivial
<A>=aB;<B>=b*;
<rule id=“a”> a <ruleref uri=“#b”/></rule>
<rule id=“b”> <one-of> <item> b <ruleref uri=“#b”/> </item> <item> <ruleref special= “NULL”/> </item> </one-of></rule>
BNF<A>::=aB<B>::=bB<B>::=ε
JSGF
XML-SRGS
Page 10 of 10Language Model Grammar Conversion
Software Tools
• ISIP Network Converter• Console tool to perform conversions to and from arbitrary grammar
formats
• ISIP Network Builder• Java-based graphical tool to design grammars as finite state machines
• Can exports grammars to JSGF, XML-SRGS, ABNF, BNF, and IHD
• ISIP Language Model Tester• Console tool for testing of grammars
• Can generate valid sentences in a given grammar
• Can parse sentences and determine if accepted by a given grammar.
Page 11 of 10Language Model Grammar Conversion
Minimization
• Minimization• Happens in BNF
• Iterate over rule set, merging redundant rules
• Rules can be merged if the non terminal of both rules reference the same terminal
• Example: