slp-ntua / slp-lab-support-19-20

1 stars 0 forks source link

Lab 1, Ερώτημα 12 #3

Open DominusTea opened 4 years ago

DominusTea commented 4 years ago

Σε συνέχεια επικοινωνίας μεσω email, ανεβάζω αυτό το ερώτημα και εδώ: Στην κατασκευή του unigram level γλωσσικού μοντέλου (12.β) αντί να τοποθετούμε την -log(πιθανότητα εμφάνισης) της κάθε λέξης στην πρώτη ακμή (με όλες τις άλλες 0), βάζουμε κόστος σε κάθε ακμή την -log(πιθανότητα εμφάνισης) του κάθε χαρακτήρα. Το πρόβλημα που δημιουργεί αυτό είναι πως σε μεγάλες σε μήκος λέξεις θα έχουμε πολύ μεγάλο κόστος και επομένως ο ορθογράφος μας θα δίνει λάθος απαντήσεις, προτιμώντας μικρότερες σε μήκος λέξεις. Μήπως θα έπρεπε να κανονικοποιούμε τα κόστη που βάζουμε στο unigram μοντέλο του αποδοχέα, ως προς το μήκος της εκάστοτε λέξης?

georgepar commented 4 years ago

Thanks Κάνω paste και την απάντηση

Ναι αυτό είναι μια καλή προσθήκη (η οποία εφαρμόζεται γενικά σε decoding για να αναγκάζει το decoder να κάνει generate μεγαλύτερου μήκους απαντήσεις). Δείτε και το beam search with length normalization που χρησιμοποιείται ευρέως σε chat bots, speech recognition κτλ http://opennmt.net/OpenNMT/translation/beam_search/#length-normalization