DialoGPT icon indicating copy to clipboard operation
DialoGPT copied to clipboard

MMI criterion

Open martinritchie opened this issue 6 years ago • 4 comments

I am reading through the code base and paper and am trying to understand where in the code the MMI criterion is implemented and used. My guess is that during evaluation the source and target sentence are fed into the model in reverse order so that the model has to predict the source given the target. But I can't seem to see where this is implemented or where the MMI is used. Have I missed something obvious?

Thank you.

martinritchie avatar Nov 19 '19 08:11 martinritchie

Hi, thanks for the comments. The training procedure of MMI maintains the same as the MLE training. The difference lies in the decoding part, which we unfortunately cannot directly release at this moment due to company policy. However, we value your suggestion and we would release a reverse model which is trained by using target to predict the source. You can follow our paper to incorporate the reverse model to rerank the randomly generated responses. If you meet with any problem with implementing an MMI decoder, please feel free to rise an issue and we would love to provide further help.

dreasysnail avatar Nov 20 '19 07:11 dreasysnail

Please see https://github.com/microsoft/DialoGPT#models for the reverse model. Thanks!

dreasysnail avatar Nov 21 '19 02:11 dreasysnail

Wow, that was quick. Thankyou.

martinritchie avatar Nov 21 '19 17:11 martinritchie

This is my implementation of the MMI decoder https://github.com/microsoft/DialoGPT/issues/3#issuecomment-558318401

It seems to work, but all suggestions are welcome

LHolten avatar Nov 25 '19 20:11 LHolten