Extracting medications and associated adverse drug events using a natural language processing system combining knowledge base and deep learning