We have a problem where we have a standardized database of Medicine names. On the other hand, there is a subset of medicine names which could have spelling mistakes, different structure or hypens, missing words etc. There is also some metadata available, like manufacturer name, unit size etc.
Human can easily map those two database with each other. We have used some string comparison and created some probabilistic scoring and in some cases it serves the purpose.
But lot of times we are running into lot of nuanced issues and conditions are keep getting piled up. Is there any idea if any machine learning type of algorithm can help? I have basic understanding of all major algorithms but yet I am drawing blank for this problem. Simple example is mapping Epilex 300mg tab with Epilex 300 Tablet. I can give more examples if needed.