beam search related infrastructure survey
Created by: Superjomn
The beam search is a core algorithm for machine translation and other generation models, the old version of PaddlePaddle implement this as a c++ module in RecurrentLayerGroup
and lacks flexibility.
In our further design of refactoring, a more flexible beam search is needed, the new one should be a composition of some different ops, and a user is free to change the details of a beam search.
That means, to implement beam search, more operators should be implemented, and we might need to change the framework.
Let's survey TensorFlow and other mature op-based frameworks first.
The current plan is
-
survey TF and MXNet
- determine the design of a beam search, a PR should be provided. (Let's finish this before next Monday)
- collect all the related operators, create a project and let others join in implementing. (before next Wednesday)
-
implementing operators
- all others are free to join and develop parallelly.