1. A computer-implemented system for generating document groupings, comprising: a database to store a set of document, a lexicon of terms extracted from the set of documents and comprising a frequency of each extracted term within each document, and concepts each comprising two or more of the extracted terms; and a server comprising a central processing unit, memory, an input port to receive the documents, lexicon and concepts from the database, and an output port, wherein the central processing unit is configured to: select a subset of the documents in the set based on the term frequencies; group the subset of documents into clusters based on the concepts; calculate a similarity of each document cluster with at least one document based on a distance by summing the frequency of each term in that document and a weight of the cluster for each of the terms; and update the weights until a rate of change for each cluster becomes constant.