• Paiva&Evans : linguistic features annotated in corpus generated with • PERSONAGE-PE : personality traits connected to linguistic features via . . . .. . . .. .. . .. . . .. . . . . . . .. . . .. . Example NLG Systems Sentence planning Trainable Sentence Planning: Parameter Optimization Examples many parameter settings, correlation analysis machine learning 9/ 40 Ondřej Dušek .. .. . . . . .. . . .. . . .. . . .. . . .. .. . .. . . .. . . .. . Natural Language Generation . .. . . .. . . • Requires a flexible handcrafed planner • No overgeneration • Adjusting its parameters “somehow”
. . .. . . .. . . .. . . .. . . .. . .. . Sentence planning Ondřej Dušek 9/ 40 machine learning many parameter settings, correlation analysis Examples Trainable Sentence Planning: Parameter Optimization Example NLG Systems . . .. . . .. . . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . Natural Language Generation . .. . . .. . . .. • Requires a flexible handcrafed planner • No overgeneration • Adjusting its parameters “somehow” • Paiva&Evans : linguistic features annotated in corpus generated with • PERSONAGE-PE : personality traits connected to linguistic features via
• General purpose • Functional Unification . .. . . .. . . . . . .. .. . .. . .. .. . KPML Ondřej Dušek 10/ 40 Grammar FUF/SURGE Grammar multilingual Grammar-based Realizers (90's): KPML , FUF/SURGE .. Surface Realization Example NLG Systems . .. . . . . . . . . .. . . .. . . .. . . .. . . .. . . . .. . . .. . . .. .. Natural Language Generation . . .. . . .. . (EXAMPLE :NAME EX-SET-1 :TARGETFORM "It is raining cats and dogs." :LOGICALFORM • General purpose, (A / AMBIENT-PROCESS :LEX RAIN :TENSE PRESENT-CONTINUOUS :ACTEE (C / OBJECT :LEX CATS-AND-DOGS :NUMBER MASS)) ) • Systemic Functional
. . . . .. . . .. . . .. .. . .. . . .. . . KPML Ondřej Dušek 10/ 40 Grammar FUF/SURGE Grammar multilingual Grammar-based Realizers (90's): KPML , FUF/SURGE .. Surface Realization Example NLG Systems . .. . . .. . . . . . .. . .. .. . . .. . . .. . . .. . . .. . . .. .. . . Natural Language Generation . . . .. . . . .. (EXAMPLE :NAME EX-SET-1 :TARGETFORM "It is raining cats and dogs." :LOGICALFORM • General purpose, (A / AMBIENT-PROCESS :LEX RAIN :TENSE PRESENT-CONTINUOUS :ACTEE (C / OBJECT :LEX CATS-AND-DOGS :NUMBER MASS)) ) • Systemic Functional • General purpose • Functional Unification
. . .. . . .. . . .. . . .. . . .. . .. . Surface Realization Ondřej Dušek 11/ 40 enhancements Grammar multi-lingual Grammar-based Realizer: OpenCCG Example NLG Systems . . .. . . .. . .. . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . . .. . . .. . . .. Natural Language Generation • General purpose, • Combinatory Categorial • Used in several projects • With statistical
. . .. . . .. .. . .. . . .. . . .. . .. . . . .. . . .. . Example NLG Systems Surface Realization Procedural Realizer: SimpleNLG other languages (procedural) 12/ 40 Ondřej Dušek . . .. .. . . .. . . .. . . . . . .. . . .. . . . .. . . . .. Natural Language Generation . . . . .. . .. .. Lexicon lexicon = new XMLLexicon("my-lexicon.xml"); • General purpose NLGFactory nlgFactory = new NLGFactory(lexicon); Realiser realiser = new Realiser(lexicon); • English, adapted to several SPhraseSpec p = nlgFactory.createClause(); p.setSubject("Mary"); p.setVerb("chase"); • Java implementation p.setObject("the monkey"); p.setFeature(Feature.TENSE, Tense.PAST); String output = realiser.realiseSentence(p); System.out.println(output); >>> Mary chased the monkey.
• Ranking according to: • n -gram models ( NITROGEN, HALOGEN ) • Tree models (XTAG grammar – FERGUS ) • Predicted Text-to-Speech quality ( Nakatsu and White ) • Personality traits (extraversion, agreeableness… – CRAG ) • Provides variance, but at a greater computational cost . .. . . .. . . .. . . . .. . . .. .. . . .. . . .. . Example NLG Systems Surface Realization Trainable Realizers: Overgenerate and Rank + alignment (repeating words uttered by dialogue counterpart) 13/ 40 Ondřej Dušek .. . . . . . .. . . .. . . .. . . .. . . . .. . . .. . . .. . . .. . Natural Language Generation .. .. . . .. . . • Require a handcrafued realizer, e.g. CCG realizer • Input underspecified → more outputs possible • Overgenerate • Then use a statistical reranker
• Provides variance, but at a greater computational cost . . .. .. . .. . . .. . . .. . . .. .. . . . . .. . . .. . Example NLG Systems Surface Realization Trainable Realizers: Overgenerate and Rank + alignment (repeating words uttered by dialogue counterpart) 13/ 40 Ondřej Dušek . . .. .. . . .. . . .. . . .. . . . . . .. . . . .. . . . .. Natural Language Generation . .. . . .. . . .. • Require a handcrafued realizer, e.g. CCG realizer • Input underspecified → more outputs possible • Overgenerate • Then use a statistical reranker • Ranking according to: • n -gram models ( NITROGEN, HALOGEN ) • Tree models (XTAG grammar – FERGUS ) • Predicted Text-to-Speech quality ( Nakatsu and White ) • Personality traits (extraversion, agreeableness… – CRAG )
. . . .. .. . .. . . .. . . .. . . .. . .. .. . . .. . . .. . Example NLG Systems Surface Realization Trainable Realizers: Overgenerate and Rank + alignment (repeating words uttered by dialogue counterpart) 13/ 40 Ondřej Dušek . . . .. . . .. . . .. . . .. . . .. . . . . . .. . . . .. . Natural Language Generation .. . . .. .. . . • Require a handcrafued realizer, e.g. CCG realizer • Input underspecified → more outputs possible • Overgenerate • Then use a statistical reranker • Ranking according to: • n -gram models ( NITROGEN, HALOGEN ) • Tree models (XTAG grammar – FERGUS ) • Predicted Text-to-Speech quality ( Nakatsu and White ) • Personality traits (extraversion, agreeableness… – CRAG ) • Provides variance, but at a greater computational cost
. .. .. .. . . .. . . .. . . .. . . . .. . .. . . .. . . .. . Example NLG Systems Surface Realization Trainable Realizers: Syntax-Based 14/ 40 Ondřej Dušek . . . .. . . .. . . .. . . .. . . .. . . . . . .. . . . . .. .. . . .. . . .. Natural Language Generation • StuMaBa : general realizer based on SVMs • Pipeline: ↓ Deep syntax/semantics ↓ surface syntax ↓ linearization ↓ morphologization
• Most common, also in commercial NLG systems • Simple, straightforward, reliable (custom-tailored for domain) • Lack generality and variation, difficult to maintain • Enhancements for more complex utterances: rules . . . .. . . .. . . .. .. . .. . . .. . . .. . . .. . Example NLG Systems Holistic NLG Approaches Holistic NLG Holistic NLG Template-based systems 15/ 40 Ondřej Dušek . .. . . . . .. . . .. . . .. . . .. . . .. . . .. .. . . .. . . .. Natural Language Generation . . .. . . .. . . • Only one stage – no distinction • “Good enough” for limited domains, also in SDS
. . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Example NLG Systems Holistic NLG Approaches Holistic NLG Holistic NLG Template-based systems 15/ 40 Ondřej Dušek . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . . . .. .. . . .. . . .. Natural Language Generation • Only one stage – no distinction • “Good enough” for limited domains, also in SDS • Most common, also in commercial NLG systems • Simple, straightforward, reliable (custom-tailored for domain) • Lack generality and variation, difficult to maintain • Enhancements for more complex utterances: rules
. . .. . . .. . . .. . . .. . . .. . .. . Holistic NLG Approaches Ondřej Dušek 16/ 40 Facebook templates domain) Alex (English restaurant Example: Templates Example NLG Systems . . .. . . .. . . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . Natural Language Generation . . . .. . . .. .. • Just filling variables into slots • Possibly a few enhancements, e. g. articles inform(pricerange="{pricerange}"): 'It is in the {pricerange} price range.' affirm()&inform(task="find") &inform(pricerange="{pricerange}"): 'Ok, you are looking for something in the' + ' {pricerange} price range.' affirm()&inform(area="{area}"): 'Ok, you want something in the {area} area.' affirm()&inform(food="{food}") &inform(pricerange="{pricerange}"): 'Ok, you want something with the {food} food' + ' in the {pricerange} price range.' inform(food="None"): 'I do not have any information' + ' about the type of food.'
• BAGEL : Bayesian networks • semantic stacks, ordering • Angeli et al. : log-linear model • records • WASP • noisy channel, similar to MT .. . . .. . . . .. . . . .. . . . .. .. . . . . Example NLG Systems Holistic NLG Approaches Statistical Holistic NLG (typically: MR + sentence + alignment) Examples fields templates 1 : Synchronous CFGs 17/ 40 Ondřej Dušek .. .. . .. .. . . .. . . . .. . .. . . .. . . . . .. .. . . .. . . .. . . . . . .. . . .. . Natural Language Generation • Limited domain • Based on supervised learning • Typically: phrase-based
. . .. .. . .. . . .. . . .. . . .. . .. . . . .. . . .. . Example NLG Systems Holistic NLG Approaches Statistical Holistic NLG (typically: MR + sentence + alignment) Examples 17/ 40 Ondřej Dušek . . .. .. . . .. . . .. . . .. . . . . . .. . . . .. . . . .. Natural Language Generation . . . . .. .. . .. • Limited domain • Based on supervised learning • Typically: phrase-based • BAGEL : Bayesian networks • semantic stacks, ordering • Angeli et al. : log-linear model • records ↘ fields ↘ templates • WASP − 1 : Synchronous CFGs • noisy channel, similar to MT
• Our generator learns alignments jointly • (with sentence planning) • training from pairs: MR + sentence . .. . . .. . . .. . . . . . .. .. .. .. . .. . . .. . Our System Overview Our experiments: Two-Step NLG for SDS Learning from unaligned data a) requires detailed alignments of MR elements and words/phrases b) uses a separate alignment step 18/ 40 Ondřej Dušek . . . . . . .. . . .. . . .. . . .. . . .. . . . .. . . .. . .. .. . . .. . . .. . . Natural Language Generation • Typical NLG training: MR inform(name=X, type=placetoeat, eattype=restaurant, area=riverside, food=Italian) alignment X is an italian restaurant in the riverside area . text
. .. . .. .. . . .. . . .. . . .. . . . . Our experiments: Two-Step NLG for SDS Ondřej Dušek 18/ 40 b) uses a separate alignment step of MR elements and words/phrases a) requires detailed alignments Learning from unaligned data Overview . Our System . .. . . .. .. . . . . .. .. . . .. . . .. . . .. . . .. . . . . . .. . .. .. . . .. . . .. . . Natural Language Generation • Typical NLG training: • Our generator learns alignments jointly • (with sentence planning) • training from pairs: MR + sentence MR inform(name=X, type=placetoeat, eattype=restaurant, area=riverside, food=Italian) X is an italian restaurant in the riverside area . text
• Step 1. – sentence planning • statistical, our main focus • Sentence plan : deep-syntax dependency trees • based on TectoMT 's t-layer, but very simplified • two attributes per tree node: t-lemma + formeme • using surface word order • Step 2. – surface realization • reusing Treex / TectoMT English synthesis (rule-based) • Output : plain text sentence . .. . . .. . . .. . . . .. . . .. . . .. . . .. . Our System Workflow / data formats Overall workflow of our generator 19/ 40 Ondřej Dušek .. . .. .. .. . . .. . . . . . .. . . .. . . . . .. . . .. . . .. . . .. . . .. . . .. . Natural Language Generation • Input : a MR • here – dialogue acts: “inform” + slot-value pairs • other formats possible
• Sentence plan : deep-syntax dependency trees • based on TectoMT 's t-layer, but very simplified • two attributes per tree node: t-lemma + formeme • using surface word order • Step 2. – surface realization • reusing Treex / TectoMT English synthesis (rule-based) • Output : plain text sentence . .. . . .. . . .. . . . .. .. . .. .. . . .. . . .. . Our System Workflow / data formats Overall workflow of our generator 19/ 40 Ondřej Dušek . . . . . . .. . . .. . . .. . . .. . . . .. . . .. . . .. . . .. . Natural Language Generation .. .. . . .. . . • Input : a MR • here – dialogue acts: “inform” + slot-value pairs • other formats possible • Step 1. – sentence planning • statistical, our main focus
• Output : plain text sentence . .. . .. . .. .. . . .. . . .. . . . . .. .. . . .. . . .. . Our System Workflow / data formats Overall workflow of our generator 19/ 40 Ondřej Dušek . . . .. . . .. . . .. . . .. . . .. . . . . . .. . . . .. . Natural Language Generation .. . . .. .. . . • Input : a MR • here – dialogue acts: “inform” + slot-value pairs • other formats possible • Step 1. – sentence planning • statistical, our main focus • Sentence plan : deep-syntax dependency trees • based on TectoMT 's t-layer, but very simplified • two attributes per tree node: t-lemma + formeme • using surface word order • Step 2. – surface realization • reusing Treex / TectoMT English synthesis (rule-based)
. .. . .. . .. .. . . .. . . .. . . . .. . .. . . .. . . .. . Our System Workflow / data formats Overall workflow of our generator 19/ 40 Ondřej Dušek . . . .. . . .. . . .. . . .. . . .. . . . . . .. . . . .. . Natural Language Generation .. . . .. . .. . • Input : a MR • here – dialogue acts: “inform” + slot-value pairs • other formats possible • Step 1. – sentence planning • statistical, our main focus • Sentence plan : deep-syntax dependency trees • based on TectoMT 's t-layer, but very simplified • two attributes per tree node: t-lemma + formeme • using surface word order • Step 2. – surface realization • reusing Treex / TectoMT English synthesis (rule-based) • Output : plain text sentence
. .. . .. . . .. .. . .. . . .. . . . .. . .. . . .. . . .. . Our System Workflow / data formats Data structures used 20/ 40 Ondřej Dušek . . . .. . . .. . . .. . . .. . . .. . . . . . .. . . . .. . Natural Language Generation .. . . .. .. . . inform(name=X, type=placetoeat, eattype=restaurant, area=riverside, food=Italian) t-tree be v:fin X-name restaurant n:subj n:obj italian area adj:attr n:in+X riverside n:attr X is an italian restaurant in the riverside area .
• The 2nd step – rule based – can ensure grammatical • or at least it's more straightforward to fix when it doesn't • The realizer is (relatively) easy to implement and • + why not use it if we have it already in Treex / TectoMT . . .. . . .. . . .. .. . . .. . . .. . . .. . . .. . Our System Two-step architecture Why we keep the two-step approach correctness domain-independent 21/ 40 Ondřej Dušek . .. . . . . .. . . .. . . .. . . .. . . .. . . . .. . . .. . . .. Natural Language Generation .. . .. . . .. . . • It makes the 1st – statistical – task simpler • no need to worry about morphology • this will be more important for Czech (and similar)
• The realizer is (relatively) easy to implement and • + why not use it if we have it already in Treex / TectoMT . . .. . . .. . . .. . . .. . . . . .. . . .. . . .. . Our System Two-step architecture Why we keep the two-step approach correctness domain-independent 21/ 40 Ondřej Dušek .. .. . . .. . .. . . .. . . .. . . .. . . .. . . .. . . .. . . .. Natural Language Generation . . .. . . .. . . • It makes the 1st – statistical – task simpler • no need to worry about morphology • this will be more important for Czech (and similar) • The 2nd step – rule based – can ensure grammatical • or at least it's more straightforward to fix when it doesn't
. . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Two-step architecture Why we keep the two-step approach correctness domain-independent 21/ 40 Ondřej Dušek . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . . .. Natural Language Generation . .. . . .. . . .. • It makes the 1st – statistical – task simpler • no need to worry about morphology • this will be more important for Czech (and similar) • The 2nd step – rule based – can ensure grammatical • or at least it's more straightforward to fix when it doesn't • The realizer is (relatively) easy to implement and • + why not use it if we have it already in Treex / TectoMT
• but we can do it easily using Treex • automatic annotation is good enough . .. . . .. . . . . . .. . . .. .. .. . .. . . .. . . .. . Our System Two-step architecture Downside of the two-step approach – t-layer analysis implemented for several languages 22/ 40 Ondřej Dušek . . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . . .. . . .. . . .. Natural Language Generation • We need to analyze training sentences into deep trees
. . . .. . . .. . . .. . . .. . . .. . .. .. . . .. . . .. . Our System Two-step architecture Downside of the two-step approach – t-layer analysis implemented for several languages 22/ 40 Ondřej Dušek .. . . .. . . .. . . .. . . .. . . .. . . . . . .. . . .. . . .. . . .. . . .. Natural Language Generation • We need to analyze training sentences into deep trees • but we can do it easily using Treex • automatic annotation is good enough
• A*-style search • incrementally finding the path • from an empty tree • to a full sentence plan tree which contains all information • using open_set , close_set – heaps sorted by score . . .. . . .. . . .. . . .. . . .. .. . . .. . . .. . Our System Sentence planner Sentence planner – overall – churning out more and more sentence plan trees 23/ 40 Ondřej Dušek . .. . . . . .. . . .. . . .. . . .. . . .. . . . .. . . .. . . .. Natural Language Generation .. . .. . . .. . . • Two main components: • candidate generator : • scorer /ranker for the candidates
• using open_set , close_set – heaps sorted by score . . .. . . .. . . .. . . .. . . .. .. . . . . .. . . .. . Our System Sentence planner Sentence planner – overall – churning out more and more sentence plan trees 23/ 40 Ondřej Dušek . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . . .. Natural Language Generation . .. . . .. . . .. • Two main components: • candidate generator : • scorer /ranker for the candidates • A*-style search • incrementally finding the path • from an empty tree • to a full sentence plan tree which contains all information
. . . .. . . .. . . .. . . .. . . .. . .. .. . . .. . . .. . Our System Sentence planner Sentence planner – overall – churning out more and more sentence plan trees 23/ 40 Ondřej Dušek . .. . .. . . .. . . .. . . .. . . . . . .. . . .. . . . .. . Natural Language Generation .. . . .. . . .. • Two main components: • candidate generator : • scorer /ranker for the candidates • A*-style search • incrementally finding the path • from an empty tree • to a full sentence plan tree which contains all information • using open_set , close_set – heaps sorted by score
• Loop: open_set close_set • viable trees, C + some node(s) • C may be empty open_set 4. check if top score( open_set ) top score( close_set ) • Stop if: a) close_set has better top score than open_set .. . . .. . . . .. Our System . .. . . .. . . Sentence planner Sentence planner – workflow 1. get top-scoring C . put C 2. C candidate generator successors( C ) 3. score C C C put C for d consecutive iterations b) there's nothing lefu on the open list (unlikely) 24/ 40 Ondřej Dušek . .. .. . .. . . .. . . .. . .. . . . .. . . .. . . . .. . . . .. . . .. . . .. . . .. . . .. . . .. . Natural Language Generation • Init: open_set = {empty tree}, close_set = ∅
• viable trees, C + some node(s) • C may be empty open_set 4. check if top score( open_set ) top score( close_set ) • Stop if: a) close_set has better top score than open_set . .. . . .. . . . .. . . .. . . .. . Sentence planner .. . Our System . Sentence planner – workflow 2. C candidate generator successors( C ) 3. score C C C put C for d consecutive iterations b) there's nothing lefu on the open list (unlikely) 24/ 40 Ondřej Dušek .. . .. . . . .. . . .. . .. .. . . .. . . .. . . . Natural Language Generation . . . .. . . .. . . .. . .. . . . .. . . .. • Init: open_set = {empty tree}, close_set = ∅ • Loop: 1. get top-scoring C ← open_set put C → close_set
open_set 4. check if top score( open_set ) top score( close_set ) • Stop if: a) close_set has better top score than open_set . . .. . . .. . . .. . .. . .. .. . . .. . . . . Our System Sentence planner Sentence planner – workflow 3. score C C C put C for d consecutive iterations b) there's nothing lefu on the open list (unlikely) 24/ 40 Ondřej Dušek .. . . .. .. . . .. . . . . . .. . . .. . . . .. .. . . . .. . . .. . . .. . .. . . . .. . Natural Language Generation • Init: open_set = {empty tree}, close_set = ∅ • Loop: 1. get top-scoring C ← open_set put C → close_set 2. C = candidate generator successors( C ) • viable trees, C + some node(s) • C may be empty
4. check if top score( open_set ) top score( close_set ) • Stop if: a) close_set has better top score than open_set . . .. . . .. . . .. .. . . .. . . .. . . .. . . .. . Our System Sentence planner Sentence planner – workflow for d consecutive iterations b) there's nothing lefu on the open list (unlikely) 24/ 40 Ondřej Dušek . .. . . . . .. . . .. . . .. . . .. . . .. . . .. .. . . .. . . .. . Natural Language Generation . .. . . .. . . • Init: open_set = {empty tree}, close_set = ∅ • Loop: 1. get top-scoring C ← open_set put C → close_set 2. C = candidate generator successors( C ) • viable trees, C + some node(s) • C may be empty 3. score C ′ ∀ C ′ ∈ C put C ′ → open_set
. . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Sentence planner Sentence planner – workflow for d consecutive iterations b) there's nothing lefu on the open list (unlikely) 24/ 40 Ondřej Dušek . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . . .. Natural Language Generation . .. . . .. . . .. • Init: open_set = {empty tree}, close_set = ∅ • Loop: 1. get top-scoring C ← open_set put C → close_set 2. C = candidate generator successors( C ) • viable trees, C + some node(s) • C may be empty 3. score C ′ ∀ C ′ ∈ C put C ′ → open_set 4. check if top score( open_set ) > top score( close_set ) • Stop if: a) close_set has better top score than open_set
. . . .. . . .. . . .. . . .. . . .. . .. .. . . .. . . .. . Our System Sentence planner Candidate generator by adding 1 node (at every possible place) 25/ 40 Ondřej Dušek . .. . . . . .. . . .. . . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. Natural Language Generation • Given a candidate plan tree, generate its successors
. . .. . .. .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Sentence planner Candidate generator by adding 1 node (at every possible place) 25/ 40 Ondřej Dušek Natural Language Generation . . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . . .. . .. . . .. . • Given a candidate plan tree, generate its successors t-tree t-tree t-tree t-tree be recommend serve v:fin v:fin v:fin
. . .. . .. .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Sentence planner Candidate generator by adding 1 node (at every possible place) 25/ 40 Ondřej Dušek Natural Language Generation . . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . . .. . .. . . .. . • Given a candidate plan tree, generate its successors t-tree t-tree t-tree t-tree be recommend serve v:fin v:fin v:fin
. . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Sentence planner Candidate generator by adding 1 node (at every possible place) 25/ 40 Ondřej Dušek Natural Language Generation . .. .. .. . . .. . . .. . . .. . . .. . . . . . . . .. . .. . . .. . . .. . . .. • Given a candidate plan tree, generate its successors t-tree t-tree t-tree t-tree be be be v:fin v:fin v:fin be v:fin restaurant X-name restaurant n:obj n:subj n:subj
. . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Sentence planner Candidate generator by adding 1 node (at every possible place) 25/ 40 Ondřej Dušek Natural Language Generation . .. .. .. . . .. . . .. . . .. . . .. . . . . . . . .. . .. . . .. . . .. . . .. • Given a candidate plan tree, generate its successors t-tree t-tree t-tree t-tree be be be v:fin v:fin v:fin be v:fin restaurant X-name restaurant n:obj n:subj n:subj
. . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Sentence planner Candidate generator by adding 1 node (at every possible place) 25/ 40 Ondřej Dušek Natural Language Generation . .. .. .. . . .. . . .. . . .. . . .. . . . . . . . .. . . . .. .. . . .. . . .. • Given a candidate plan tree, generate its successors t-tree t-tree t-tree be be be v:fin v:fin v:fin X-name restaurant X-name bar X-name n:subj n:obj n:subj n:obj n:subj
• Limiting by things seen in training data: • + at depth levels • + given input MR • nodes seen with current slot-values • required slot-values for each node .. . . .. . . . . . . .. . . .. . .. . . .. .. Our System Sentence planner Candidate generator – limiting the space 1. t-lemma + formeme combination 2. parent–child combination 3. number of children 4. tree size 5. “weak” compatibility with input MR: 6. “strong” compatibility with input MR: (minimum seen in training data) 26/ 40 Ondřej Dušek . .. . .. . .. . . .. . . . . . .. . . .. . . . .. . . .. . . .. . . .. . .. . . . .. . . .. Natural Language Generation • Number of candidates very high even for small domains • We need to lower the number of “possible” successors
. .. .. . . .. . . . . . .. . . .. . . .. .. 3. number of children Ondřej Dušek 26/ 40 (minimum seen in training data) 6. “strong” compatibility with input MR: 5. “weak” compatibility with input MR: 4. tree size 2. parent–child combination . 1. t-lemma + formeme combination Candidate generator – limiting the space Sentence planner Our System . .. . . .. . . . . .. . . .. . . .. . . .. . . .. . . . .. . . .. . . .. .. . . .. . .. . . Natural Language Generation • Number of candidates very high even for small domains • We need to lower the number of “possible” successors • Limiting by things seen in training data: • + at depth levels • + given input MR • nodes seen with current slot-values • required slot-values for each node
• score • Training: • given m , generate the best tree t top with current weights • update weights if t top t gold (gold-standard) • Update: w feat t gold m feat t top m .. . . .. . . . .. . . . .. . . . .. . . .. .. Our System Sentence planner Scorer Basic perceptron scorer w feat t m w 27/ 40 Ondřej Dušek . .. . .. . .. . . .. . . . .. . .. . . .. . . . . . . .. . . .. . . .. . .. . . . .. . . .. Natural Language Generation • a function: sentence plan tree t , MR m → real-valued score • describes the fitness of t for m
• Training: • given m , generate the best tree t top with current weights • update weights if t top t gold (gold-standard) • Update: w feat t gold m feat t top m . . .. . . .. . . .. .. . . .. . . . . .. . . .. . Our System Sentence planner Scorer Basic perceptron scorer w 27/ 40 Ondřej Dušek .. . .. .. .. . . .. . . . . . .. . . .. . . . . .. . . .. . . .. . . .. . . .. . . .. . Natural Language Generation • a function: sentence plan tree t , MR m → real-valued score • describes the fitness of t for m • score = w ⊤ · feat ( t , m )
• Update: w feat t gold m feat t top m . . .. . . .. . . .. . . .. .. . . . .. . . .. . . .. . Our System Sentence planner Scorer Basic perceptron scorer w 27/ 40 Ondřej Dušek .. . . . . .. .. . . .. . . .. . . .. . . .. . . .. . . .. . . .. . .. . . . .. . . Natural Language Generation • a function: sentence plan tree t , MR m → real-valued score • describes the fitness of t for m • score = w ⊤ · feat ( t , m ) • Training: • given m , generate the best tree t top with current weights • update weights if t top ̸ = t gold (gold-standard)
. . . .. . . .. . . .. . . .. . . .. . .. .. . . .. . . .. . Our System Sentence planner Scorer Basic perceptron scorer 27/ 40 Ondřej Dušek . .. . .. . . .. . . .. . . .. . . . . . .. . . .. . . . .. . Natural Language Generation .. . . .. . . .. • a function: sentence plan tree t , MR m → real-valued score • describes the fitness of t for m • score = w ⊤ · feat ( t , m ) • Training: • given m , generate the best tree t top with current weights • update weights if t top ̸ = t gold (gold-standard) • Update: w = w + α · ( feat ( t gold , m ) − feat ( t top , m ))
• + demoting subtrees of wrong generation outputs • Update: find common subtree, start from it and update using gold t i . .. . . .. . . .. . . . . . .. . .. .. . .. . . .. . Our System Sentence planner Differing subtree updates • promoting subtrees of gold-standard trees pairs of subtrees t i top 28/ 40 Ondřej Dušek . .. . . . . .. . . .. . . .. . . .. . . .. . . . .. . . .. . . .. . .. .. . . .. . . Natural Language Generation • Features are global → bigger trees score better • need to promote “promising” incomplete trees
• Update: find common subtree, start from it and update using gold t i . . .. . . .. . . .. . . .. . . . . .. . . .. . . .. . Our System Sentence planner Differing subtree updates pairs of subtrees t i top 28/ 40 Ondřej Dušek .. .. . . . . .. . . .. . . .. . . .. . . .. .. . .. . . .. . . .. Natural Language Generation . . .. . . .. . . • Features are global → bigger trees score better • need to promote “promising” incomplete trees • → promoting subtrees of gold-standard trees • + demoting subtrees of wrong generation outputs
. . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Sentence planner Differing subtree updates pairs of subtrees t i top 28/ 40 Ondřej Dušek . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . . . .. .. . . .. . . .. Natural Language Generation • Features are global → bigger trees score better • need to promote “promising” incomplete trees • → promoting subtrees of gold-standard trees • + demoting subtrees of wrong generation outputs • Update: find common subtree, start from it and update using gold , t i
. . .. . . .. . . .. . . .. . . .. .. .. . Sentence planner Natural Language Generation Ondřej Dušek 28/ 40 top pairs of subtrees t i Differing subtree updates Our System . . .. . . .. . . . .. . . . . . .. . . .. . . .. . . . .. . . . .. . . .. .. . .. . . .. . . .. • Features are global → bigger trees score better • need to promote “promising” incomplete trees • → promoting subtrees of gold-standard trees • + demoting subtrees of wrong generation outputs • Update: find common subtree, start from it and update using gold , t i Gold standard ( t gold ): Top generated t top : t-tree t-tree be be v:fin v:fin X restaurant restaurant X n:subj n:obj n:obj n:subj range n:in+X cheap italian adj:attr adj:attr price n:attr moderate adj:attr
. .. .. . . .. . . .. . . .. . . .. . .. . Sentence planner Natural Language Generation Ondřej Dušek 28/ 40 top pairs of subtrees t i Differing subtree updates Our System . . .. . . .. . . . .. . .. . . . .. . . .. . . .. . . .. . . . . .. . . .. .. . .. . . .. . . . • Features are global → bigger trees score better • need to promote “promising” incomplete trees • → promoting subtrees of gold-standard trees • + demoting subtrees of wrong generation outputs • Update: find common subtree, start from it and update using gold , t i Gold standard ( t gold ): Top generated t top : t-tree t-tree Common be subtree be v:fin v:fin ( t c ) X restaurant restaurant X n:subj n:obj n:obj n:subj range n:in+X cheap italian adj:attr adj:attr price n:attr moderate adj:attr
. . .. . . .. . . .. . . .. . . .. . .. . Sentence planner Natural Language Generation Ondřej Dušek 28/ 40 top pairs of subtrees t i Differing subtree updates Our System . . .. . . .. . . .. .. .. . . .. . . .. . . .. . . .. . . . . . .. .. . . . . .. . . .. . . .. . • Features are global → bigger trees score better • need to promote “promising” incomplete trees • → promoting subtrees of gold-standard trees • + demoting subtrees of wrong generation outputs • Update: find common subtree, start from it and update using gold , t i Gold standard ( t gold ): Top generated t top : t-tree t-tree be be v:fin v:fin X restaurant restaurant X n:subj n:obj n:obj n:subj range n:in+X cheap italian adj:attr adj:attr price n:attr t 1 top t 1 gold Differing subtrees for update moderate adj:attr
. . .. . . .. . . .. . . .. . . .. .. .. . Sentence planner Natural Language Generation Ondřej Dušek 28/ 40 top pairs of subtrees t i Differing subtree updates Our System . . .. . . .. . . . .. .. . . .. . . .. . . .. . . .. . . . . . . . . .. . . .. . . .. . . .. .. • Features are global → bigger trees score better • need to promote “promising” incomplete trees • → promoting subtrees of gold-standard trees • + demoting subtrees of wrong generation outputs • Update: find common subtree, start from it and update using gold , t i Gold standard ( t gold ): Top generated t top : t-tree t-tree be be v:fin v:fin X restaurant restaurant X n:subj n:obj n:obj n:subj range n:in+X cheap italian adj:attr adj:attr price n:attr + regular full update moderate adj:attr
• Using expected number of children E c n of a node • Future promise: max 0 E c n • over the whole tree • + multiplied by feature sum • + weighted • used on the open_set , not close_set • not for perceptron updates, not for stopping generation . .. . . .. . . . .. . . .. . . . .. . . .. .. Our System Sentence planner Future promise estimate “how many children are missing to meet the expectation” fc n t c n 29/ 40 Ondřej Dušek . . .. .. . .. . . .. . . . . . .. . . .. . . . .. . . .. . . .. . . .. . . .. . . .. . . .. Natural Language Generation • Further boost for incomplete trees
• Future promise: max 0 E c n • over the whole tree • + multiplied by feature sum • + weighted • used on the open_set , not close_set • not for perceptron updates, not for stopping generation . .. . . .. . . . .. . . .. . . . .. .. . . .. . Our System Sentence planner Future promise estimate “how many children are missing to meet the expectation” fc n t c n 29/ 40 Ondřej Dušek .. . . .. .. . . .. . . . .. . .. . . .. . . . . .. .. . . .. . . .. . . . . . .. . . .. . Natural Language Generation • Further boost for incomplete trees • Using expected number of children E c ( n ) of a node
• over the whole tree • + multiplied by feature sum • + weighted • used on the open_set , not close_set • not for perceptron updates, not for stopping generation . . .. . . .. . . .. . . .. .. . .. .. . . .. . . .. . Our System Sentence planner Future promise estimate “how many children are missing to meet the expectation” 29/ 40 Ondřej Dušek . . . . . . .. . . .. . . .. . . .. . . .. . . .. .. . . .. . . .. . .. . . . .. . . Natural Language Generation • Further boost for incomplete trees • Using expected number of children E c ( n ) of a node • Future promise: ∑ fc = max { 0 , E c ( n ) − c ( n ) } n ∈ t
• used on the open_set , not close_set • not for perceptron updates, not for stopping generation . .. . . .. . . . . . .. .. . .. .. .. . . . . .. . . .. . Our System Sentence planner Future promise estimate “how many children are missing to meet the expectation” 29/ 40 Ondřej Dušek . . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . Natural Language Generation . .. . . .. . . .. • Further boost for incomplete trees • Using expected number of children E c ( n ) of a node • Future promise: ∑ fc = max { 0 , E c ( n ) − c ( n ) } n ∈ t • over the whole tree • + multiplied by feature sum • + weighted
. . . .. . .. .. . . .. . . .. . . .. . .. .. . . .. . . .. . Our System Sentence planner Future promise estimate “how many children are missing to meet the expectation” 29/ 40 Ondřej Dušek . . . .. . . .. . . .. . . .. . . .. . . . . . .. . . . .. . Natural Language Generation .. . . .. . .. . • Further boost for incomplete trees • Using expected number of children E c ( n ) of a node • Future promise: ∑ fc = max { 0 , E c ( n ) − c ( n ) } n ∈ t • over the whole tree • + multiplied by feature sum • + weighted • used on the open_set , not close_set • not for perceptron updates, not for stopping generation
• Mostly simple, single-purpose, rule-based modules (blocks) • Word inflection: statistical ( Flect ) • Gradual transformation of deep trees into surface dependency • Surface trees are then simply linearized • Works OK: analysis . . .. . . .. . . .. .. . . .. . . .. . . .. . . .. . Our System Surface realizer Surface realizer overview trees synthesis on our data = 89.79% BLEU 30/ 40 Ondřej Dušek . .. . . . . .. . . .. . . .. . . .. . . .. . . . .. . . .. . . .. . .. .. . . .. . . Natural Language Generation • English synthesis pipeline from Treex / TectoMT • domain-independent
• Gradual transformation of deep trees into surface dependency • Surface trees are then simply linearized • Works OK: analysis . . .. . . .. . . .. . . .. . . . . .. . . .. . . .. . Our System Surface realizer Surface realizer overview trees synthesis on our data = 89.79% BLEU 30/ 40 Ondřej Dušek .. .. . . . . .. . . .. . . .. . . .. . . .. .. . .. . . .. . . .. . Natural Language Generation . .. . . .. . . • English synthesis pipeline from Treex / TectoMT • domain-independent • Mostly simple, single-purpose, rule-based modules (blocks) • Word inflection: statistical ( Flect )
• Works OK: analysis . . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . Our System Surface realizer Surface realizer overview trees synthesis on our data = 89.79% BLEU 30/ 40 Ondřej Dušek . .. .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . Natural Language Generation . .. . . .. . . .. • English synthesis pipeline from Treex / TectoMT • domain-independent • Mostly simple, single-purpose, rule-based modules (blocks) • Word inflection: statistical ( Flect ) • Gradual transformation of deep trees into surface dependency • Surface trees are then simply linearized
. . . .. . . .. . . .. . . .. . . .. . .. .. . . .. . . .. . Our System Surface realizer Surface realizer overview trees 30/ 40 Ondřej Dušek . .. . .. . . .. . . .. . . .. . . . . . .. . . .. . . . . .. .. . . .. . . .. Natural Language Generation • English synthesis pipeline from Treex / TectoMT • domain-independent • Mostly simple, single-purpose, rule-based modules (blocks) • Word inflection: statistical ( Flect ) • Gradual transformation of deep trees into surface dependency • Surface trees are then simply linearized • Works OK: analysis → synthesis on our data = 89.79% BLEU
• Copy the deep tree (sentence plan) • Determine morphological agreement • Add prepositions and conjunctions • Add articles • Compound verb forms (add auxiliaries) • Punctuation • Word inflection • Capitalization t-tree zone=en_gen jump v:fin cat window n:subj n:through+X . .. . . . . .. . . .. . Surface realization example .. . . .. . Our System Surface realizer . 31/ 40 Ondřej Dušek Natural Language Generation .. . .. . . . .. . . .. . .. .. . . .. . . .. . . .. . . .. . . .. . . .. . . . . .. . . .. . . .. . • Realizer steps (simplified):
• Determine morphological agreement • Add prepositions and conjunctions • Add articles • Compound verb forms (add auxiliaries) • Punctuation • Word inflection • Capitalization . . .. . . .. . . .. .. . .. .. . . . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation . . .. .. .. . . .. . . . . . .. . . .. . . . . .. .. . .. . . .. . . . . . . .. . . .. • Realizer steps (simplified): • Copy the deep tree (sentence plan) t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
• Add prepositions and conjunctions • Add articles • Compound verb forms (add auxiliaries) • Punctuation • Word inflection • Capitalization . .. . . .. . . .. . . .. .. . . .. .. . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation . . . . . . . . . .. . . .. . . .. . . .. .. . . .. . . .. . .. .. . . . .. . . .. . • Realizer steps (simplified): • Copy the deep tree (sentence plan) • Determine morphological agreement t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
• Add articles • Compound verb forms (add auxiliaries) • Punctuation • Word inflection • Capitalization . .. . . .. . . .. . . .. .. . . .. .. . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation . . . . . . . . . .. . . .. . . .. . . .. .. . . .. . . .. . . .. .. . .. . . .. . . • Realizer steps (simplified): • Copy the deep tree (sentence plan) • Determine morphological agreement • Add prepositions and conjunctions t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
• Compound verb forms (add auxiliaries) • Punctuation • Word inflection • Capitalization . . .. . . .. . .. .. . . .. . . . . .. . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation .. . . . . . .. .. . .. . . .. . . .. . . .. . . .. . . .. . . .. . . . . .. . . .. • Realizer steps (simplified): • Copy the deep tree (sentence plan) • Determine morphological agreement • Add prepositions and conjunctions • Add articles t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
• Punctuation • Word inflection • Capitalization . . .. . . .. . . .. . .. .. . . . . .. . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation .. . . . . . .. . .. .. . . .. . . .. . . .. . . . .. . . .. .. . . . .. . . .. . . • Realizer steps (simplified): • Copy the deep tree (sentence plan) • Determine morphological agreement • Add prepositions and conjunctions • Add articles • Compound verb forms (add auxiliaries) t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
• Word inflection • Capitalization . .. . . .. . . .. . . .. . . .. .. .. . . . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation . . .. .. . . .. . . .. . . . . . .. . . .. . . .. .. . . . . .. . . .. . . .. . • Realizer steps (simplified): • Copy the deep tree (sentence plan) • Determine morphological agreement • Add prepositions and conjunctions • Add articles • Compound verb forms (add auxiliaries) • Punctuation t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
• Capitalization . . .. . . .. .. . .. . . .. . . .. .. . . . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation . . .. .. . . .. . . .. . . . . . .. . . .. . . .. . . .. . . .. . . .. . . .. . • Realizer steps (simplified): • Copy the deep tree (sentence plan) • Determine morphological agreement • Add prepositions and conjunctions • Add articles • Compound verb forms (add auxiliaries) • Punctuation • Word inflection t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
. . . .. . . .. .. . .. . . .. . . .. . .. .. . . .. . . .. . Our System Surface realizer Surface realization example 31/ 40 Ondřej Dušek Natural Language Generation . . . .. . . .. . . .. . . .. . . .. . . . . .. .. . .. . . . . . .. . . .. . • Realizer steps (simplified): • Copy the deep tree (sentence plan) • Determine morphological agreement • Add prepositions and conjunctions • Add articles • Compound verb forms (add auxiliaries) • Punctuation • Word inflection • Capitalization t-tree zone=en_gen jump v:fin cat window n:subj n:through+X
• Alignment provided, but we don't use it • “Non-enumerable” information replaced by “X” symbol • restaurant names, postcodes, phone numbers etc. . .. . . .. . . . . . .. . . .. .. .. . . . . .. . . .. . Our System Experiments Experiments – data set 32/ 40 Ondřej Dušek .. . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . .. . . .. . . .. . . .. Natural Language Generation • Restaurant recommendations from the BAGEL generator • restaurant location, food type, etc. • 404 utterances for 202 input dialogue acts (DAs) • two paraphrases for each DA
• “Non-enumerable” information replaced by “X” symbol • restaurant names, postcodes, phone numbers etc. . .. . . .. . . . . . .. . . .. .. .. . . . . .. . . .. . Our System Experiments Experiments – data set 32/ 40 Ondřej Dušek .. . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . . . .. .. . . .. . . .. Natural Language Generation • Restaurant recommendations from the BAGEL generator • restaurant location, food type, etc. • 404 utterances for 202 input dialogue acts (DAs) • two paraphrases for each DA • Alignment provided, but we don't use it
. .. .. .. . . .. . . .. . . .. . . . .. . .. . . .. . . .. . Our System Experiments Experiments – data set 32/ 40 Ondřej Dušek . . . .. . . .. . . .. . . .. . . . . . .. . . .. . . . . .. .. . . .. . . .. Natural Language Generation • Restaurant recommendations from the BAGEL generator • restaurant location, food type, etc. • 404 utterances for 202 input dialogue acts (DAs) • two paraphrases for each DA • Alignment provided, but we don't use it • “Non-enumerable” information replaced by “X” symbol • restaurant names, postcodes, phone numbers etc.
• Basic feature types: • tree properties (size, depth…) • tree + input DA (nodes per slot-value pair…) • node features • input DA feautres (slots, values, pairs of slots) • node + input DA features • repeat features (repeated nodes/slots/values) • dependency features (parent-child) • siblings features (+DA) • bigram features (+DA) • Typical case: counts over whole tree • normalized .. . .. . . . . . .. .. . . . . . .. . . .. .. Our System Experiments Experiments – features 33/ 40 Ondřej Dušek . . .. .. . .. . . .. . . . . . .. . . .. . . . .. . . .. . . .. . . .. . . .. . . .. . . .. Natural Language Generation • Tailored for the input MR format
• Typical case: counts over whole tree • normalized . .. . . .. . . . . . .. .. . .. .. .. . . . . .. . . .. . Our System Experiments Experiments – features 33/ 40 Ondřej Dušek . . .. .. . . .. . . .. . . .. . . .. . . . . . . .. . . . .. Natural Language Generation . .. . . .. . . .. • Tailored for the input MR format • Basic feature types: • tree properties (size, depth…) • tree + input DA (nodes per slot-value pair…) • node features • input DA feautres (slots, values, pairs of slots) • node + input DA features • repeat features (repeated nodes/slots/values) • dependency features (parent-child) • siblings features (+DA) • bigram features (+DA)
. .. . .. . .. .. . . .. . . .. . . . .. . .. . . .. . . .. . Our System Experiments Experiments – features 33/ 40 Ondřej Dušek . . . .. . . .. . . .. . . . . . .. . . .. . . .. . . . .. . Natural Language Generation .. . . .. . .. . • Tailored for the input MR format • Basic feature types: • tree properties (size, depth…) • tree + input DA (nodes per slot-value pair…) • node features • input DA feautres (slots, values, pairs of slots) • node + input DA features • repeat features (repeated nodes/slots/values) • dependency features (parent-child) • siblings features (+DA) • bigram features (+DA) • Typical case: counts over whole tree • normalized
• less than BAGEL 's ~ 67% BLEU • But: • we do not use alignments • our generator has to know when to stop (whether all . .. .. . . .. . . .. . . Our System . . .. . . . Setup Results 4.876 Ondřej Dušek 34/ 40 information is already included) 5.231 59.89 + future promise 58.70 Results + diff-tree updates 4.643 54.24 basic perceptron NIST BLEU . .. .. . . .. . . .. . . .. . .. .. . . .. . . .. . . . Natural Language Generation . . . . .. . . .. . .. . . . .. . . .. . .. • Using 10-fold cross-validation, measuring BLEU/NIST • training DAs never used for testing • using 2 paraphrases for BLEU/NIST measurements
• less than BAGEL 's ~ 67% BLEU • But: • we do not use alignments • our generator has to know when to stop (whether all . .. .. . . .. . . .. . . Our System . . .. . . . Setup Results 4.876 Ondřej Dušek 34/ 40 information is already included) 5.231 59.89 + future promise 58.70 Results + diff-tree updates 4.643 54.24 basic perceptron NIST BLEU . .. .. . . .. . . .. . . .. . .. .. . . .. . . .. . . . Natural Language Generation . . . . .. . . .. . .. . . . .. . . .. . .. • Using 10-fold cross-validation, measuring BLEU/NIST • training DAs never used for testing • using 2 paraphrases for BLEU/NIST measurements
• But: • we do not use alignments • our generator has to know when to stop (whether all . .. .. . . .. . . .. . . Our System . . .. . . . Results Results 4.876 Ondřej Dušek 34/ 40 information is already included) 5.231 59.89 + future promise 58.70 . + diff-tree updates 4.643 54.24 basic perceptron NIST BLEU Setup .. .. . . . . .. . . .. . .. .. . . .. . . .. . . .. Natural Language Generation . . . . .. . . .. . . .. . . .. . . .. . . .. • Using 10-fold cross-validation, measuring BLEU/NIST • training DAs never used for testing • using 2 paraphrases for BLEU/NIST measurements • less than BAGEL 's ~ 67% BLEU
. . . . .. . . .. . .. . . . .. . . .. . .. Our System .. 58.70 Ondřej Dušek 34/ 40 information is already included) 5.231 59.89 + future promise 4.876 + diff-tree updates Results 4.643 54.24 basic perceptron NIST BLEU Setup Results . .. . .. . .. . . .. . . . . . .. . . .. . . . Natural Language Generation .. . .. . . .. . . .. . . .. . . .. . . .. . • Using 10-fold cross-validation, measuring BLEU/NIST • training DAs never used for testing • using 2 paraphrases for BLEU/NIST measurements • less than BAGEL 's ~ 67% BLEU • But: • we do not use alignments • our generator has to know when to stop (whether all
. Our System Generated X is a French and continental restaurant near X. Reference food=Continental, food=French) inform(name=X-name, type=placetoeat, eattype=restaurant, near=X-near, Input DA Example Outputs Results . Input DA .. . . .. . . .. . . X is a French and continental restaurant near X. inform(name=X-name, type=placetoeat, area=riverside, near=X-near, . X is a restaurant in the X area. Ondřej Dušek 35/ 40 X is a French restaurant in the riverside area which serves French food. Generated X is a French restaurant on the riverside. Reference area=riverside, food=French) inform(name=X-name, type=placetoeat, eattype=restaurant, Input DA Generated eattype=restaurant) X is a moderately priced restaurant in X. Reference pricerange=moderate, eattype=restaurant) inform(name=X-name, type=placetoeat, area=X-area, Input DA X is a restaurant in the riverside area near X. Generated X restaurant is near X on the riverside. Reference .. . .. . . . .. . . .. . . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . . .. . .. .. . . .. . . .. . . Natural Language Generation
. Our System Generated X is a French and continental restaurant near X. Reference food=Continental, food=French) inform(name=X-name, type=placetoeat, eattype=restaurant, near=X-near, Input DA Example Outputs Results . Input DA .. . . .. . . .. . . X is a French and continental restaurant near X. inform(name=X-name, type=placetoeat, area=riverside, near=X-near, . X is a restaurant in the X area. Ondřej Dušek 35/ 40 X is a French restaurant in the riverside area which serves French food. Generated X is a French restaurant on the riverside. Reference area=riverside, food=French) inform(name=X-name, type=placetoeat, eattype=restaurant, Input DA Generated eattype=restaurant) X is a moderately priced restaurant in X. Reference pricerange=moderate, eattype=restaurant) inform(name=X-name, type=placetoeat, area=X-area, Input DA X is a restaurant in the riverside area near X. Generated X restaurant is near X on the riverside. Reference .. . .. . . . .. . . .. . . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . . .. . .. .. . . .. . . .. . . Natural Language Generation
. Our System Generated X is a French and continental restaurant near X. Reference food=Continental, food=French) inform(name=X-name, type=placetoeat, eattype=restaurant, near=X-near, Input DA Example Outputs Results . Input DA .. . . .. . . .. . . X is a French and continental restaurant near X. inform(name=X-name, type=placetoeat, area=riverside, near=X-near, . X is a restaurant in the X area. Ondřej Dušek 35/ 40 X is a French restaurant in the riverside area which serves French food. Generated X is a French restaurant on the riverside. Reference area=riverside, food=French) inform(name=X-name, type=placetoeat, eattype=restaurant, Input DA Generated eattype=restaurant) X is a moderately priced restaurant in X. Reference pricerange=moderate, eattype=restaurant) inform(name=X-name, type=placetoeat, area=X-area, Input DA X is a restaurant in the riverside area near X. Generated X restaurant is near X on the riverside. Reference .. . .. . . . .. . . .. . . .. . . .. . . .. . . .. . . .. . .. . . . .. . . .. . . .. . .. .. . . .. . . .. . . Natural Language Generation
Recommend
More recommend