I need to generate lists of words related to specific topics for a project. I am familiar with clustering methods of topic modeling such as LDA, but I have something else in mind. Are there any methods to generate lists of related words from a root word? For instance, where I could type "medicine" and it would return a list of words or terms related to medicine, such as "doctor", "malpractice", "office", etc.?
You could try using word2vec: It orders words in vector space according to context, it allows you to retrieve words with similar context.
You can find pretrained models on the web.
I think instead of building something from scratch, you should utilize the domain knowledge of experts.
One example: Turn Wikipedia's topic portals (e.g., the medicine portal) into a family tree.