Not really a question that calls for neural nets, as verbalization is a very rule-based problem. I suggest you take a look at https://github.com/google/sparrowhawk 67, which tackles the inverse problem ($2 --> two dollars). Not too hard to flip stuff around after spending time learning about FSTs. There is some work on doing this with neural nets but they tend to be trained on corpuses generated by rule-based grammar methods.