A reverse dictionary takes a user input phrase describing the desired concept, and returns a set of candidate words that satisfy the input phrase. The user entered phrase need not necessarily be the same as in the definition, therefore it is implemented in such a way that the concept of the user input will be considered and corresponding words will be obtained as the outcome.  The experimental results show that the proposed approach provides significantly higher quality than existing reverse dictionaries.