a polynomial time dynamic programming algorithm for
play

A Polynomial-Time Dynamic Programming Algorithm for Phrase-Based - PowerPoint PPT Presentation

A Polynomial-Time Dynamic Programming Algorithm for Phrase-Based Decoding with a Fixed Distortion Limit Yin-Wen Chang 1 (Joint work with Michael Collins 1 , 2 ) 1 Google, New York 2 Columbia University July 31, 2017 Introduction Background:


  1. A Polynomial-Time Dynamic Programming Algorithm for Phrase-Based Decoding with a Fixed Distortion Limit Yin-Wen Chang 1 (Joint work with Michael Collins 1 , 2 ) 1 Google, New York 2 Columbia University July 31, 2017

  2. Introduction Background: ◮ Phrase-based decoding without further constraints is NP-hard ◮ Proof: reduction from the travelling salesman problem (TSP)[Knight(1999)] ◮ Hard distortion limit is commonly imposed in PBMT systems Question: ◮ Is phrase-based decoding with a fixed distortion limit NP-hard or not?

  3. Introduction A related problem: bandwidth-limited TSP | i − j | ≤ d . . . 1 2 i j . . . This work: a new decoding algorithm ◮ Process the source word from left-to-right ◮ Maintain multiple “tapes” in the target side ◮ Run time: O ( nd ! lh d +1 ) n : source sentence length d : distortion limit

  4. Overview of the proposed decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein π 1 ← π 1 = (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) ǫ π 2 = (3 , 4 , our concern) ǫ ◮ Process the source word from left-to-right ◮ Maintain multiple “tapes” in the target side

  5. Overview of the proposed decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein π 1 ← π 1 · (1 , 2 , this must) π 1 = (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) π 2 = (3 , 4 , our concern) ǫ ◮ Process the source word from left-to-right ◮ Maintain multiple “tapes” in the target side

  6. Overview of the proposed decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein π 2 ← π 2 · (3 , 4 , our concern) π 1 = (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) π 2 = (3 , 4 , our concern) ◮ Process the source word from left-to-right ◮ Maintain multiple “tapes” in the target side

  7. Overview of the proposed decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein π 1 ← π 1 · (5 , 5 , also) π 1 = (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) π 2 = (3 , 4 , our concern) ◮ Process the source word from left-to-right ◮ Maintain multiple “tapes” in the target side

  8. Overview of the proposed decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein π 1 ← π 1 · (6 , 6 , be) · π 2 π 1 = (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) π 2 = (3 , 4 , our concern) ǫ ◮ Process the source word from left-to-right ◮ Maintain multiple “tapes” in the target side

  9. Outline Introduction of the phrase-based decoding problem Target-side left-to-right: the usual decoding algorithm Source-side left-to-right: the proposed algorithm Time complexity of the proposed algorithm Conclusion and future work

  10. Phrase-based decoding problem das muss unsere sorge gleichermaßen sein this must our concern also be Derivation: complete translation with phrase mappings Sub-derivation: partial translation

  11. Phrase-based decoding problem das muss unsere sorge gleichermaßen sein this must our concern also be ◮ Segment the German sentence into non-overlapping phrases Derivation: complete translation with phrase mappings Sub-derivation: partial translation

  12. Phrase-based decoding problem das muss unsere sorge gleichermaßen sein this this must must our our concern concern also also be be ◮ Segment the German sentence into non-overlapping phrases ◮ Find an English translation for each German phrase Derivation: complete translation with phrase mappings Sub-derivation: partial translation

  13. Phrase-based decoding problem das muss unsere sorge gleichermaßen sein this this must must our also concern be also our concern be ◮ Segment the German sentence into non-overlapping phrases ◮ Find an English translation for each German phrase ◮ Reorder the English phrases to get a better English sentence Derivation: complete translation with phrase mappings Sub-derivation: partial translation

  14. Phrase-based decoding problem das muss unsere sorge gleichermaßen sein this this must must our also concern be also our concern be ◮ Segment the German sentence into non-overlapping phrases ◮ Find an English translation for each German phrase ◮ Reorder the English phrases to get a better English sentence Derivation: complete translation with phrase mappings Sub-derivation: partial translation

  15. Score a derivation 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must also be our concern

  16. Score a derivation 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must also be our concern ◮ Phrase translation score: score (das muss , this must) + · · ·

  17. Score a derivation 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must also be our concern ◮ Phrase translation score: score (das muss , this must) + · · · ◮ Language model score: score ( <s> this must also be our concern < / s> ) = score (this | <s> ) + score (must | this) + · · ·

  18. Score a derivation 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must also be our concern ◮ Phrase translation score: score (das muss , this must) + · · · ◮ Language model score: score ( <s> this must also be our concern < / s> ) = score (this | <s> ) + score (must | this) + · · · ◮ Reordering score: η · | 2 + 1 − 5 |

  19. Fixed distortion limit: distortion distance ≤ d 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must also be our concern ◮ Distortion distance: | 2 + 1 − 5 | = 2

  20. Target-side left-to-right: the usual decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must

  21. Target-side left-to-right: the usual decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must

  22. Target-side left-to-right: the usual decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also

  23. Target-side left-to-right: the usual decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also be

  24. Target-side left-to-right: the usual decoding algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also be our concern

  25. Target-side left-to-right: dynamic programming algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must Sub-derivation: (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) DP state:

  26. Target-side left-to-right: dynamic programming algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must Sub-derivation: Sub-derivation: (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) DP state: (must , 2 , 110000) DP state:

  27. Target-side left-to-right: dynamic programming algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also Sub-derivation: Sub-derivation: (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) DP state: (also , 5 , 110010) DP state:

  28. Target-side left-to-right: dynamic programming algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also be Sub-derivation: Sub-derivation: (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) DP state: (be , 6 , 110011) DP state:

  29. Target-side left-to-right: dynamic programming algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also be our concern Sub-derivation: Sub-derivation: (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) DP state: (concern , 4 , 111111) DP state:

  30. Source-side left-to-right: the proposed algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must

  31. Source-side left-to-right: the proposed algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must

  32. Source-side left-to-right: the proposed algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must our concern

  33. Source-side left-to-right: the proposed algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also our concern

  34. Source-side left-to-right: the proposed algorithm 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must also be our concern

  35. Source-side left-to-right: dynamic programming state 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this must π 2 =(3 , 4 , our concern) Sub-derivation: (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) DP state: j = 4 , σ 1 = � 1 , this , 2 , must � , σ 2 = � 3 , our , 4 , concern �

  36. Source-side left-to-right: dynamic programming state 1 2 3 4 5 6 das muss unsere sorge gleichermaßen sein this this must must Sub-derivation: Sub-derivation: π 1 = (1 , 2 , this must)(5 , 5 , also)(6 , 6 , be)(3 , 4 , our concern) π 2 =(3 , 4 , our concern) DP state: j = 2 , DP state: j = 4 , σ 1 = � 1 , this , 2 , must � σ 1 = � 1 , this , 2 , must � , σ 2 = � 3 , our , 4 , concern �

Recommend


More recommend