1. A computer-implemented method comprising: identifying, by a server device, a plurality of subsequent search queries that were received after a particular search query, as refinements of the particular search query; identifying, by the server device, a first set of documents that is associated with a first subsequent search query, of the plurality of subsequent search queries; identifying, by the server device, a second set of documents that is associated with a second subsequent search query, of the plurality of subsequent search queries; generating, by the server device, a first term vector for the first subsequent search query based on the identified first set of documents, and a second term vector for the second subsequent search query based on the identified second set of documents; clustering, by the server device and based on the generated first term vector and the generated second term vector, the first subsequent search query into a first cluster and the second subsequent search query into a different, second cluster; selecting, by the server device, a particular subsequent search query from one or more of the first cluster or the different, second cluster; receiving, by the server device, an indication that a client device has submitted a search query that includes the particular search query; and providing, by the server device and to the client device, the selected particular subsequent search query from the one or more of the first cluster or the different, second cluster, as a refinement of the search query submitted by the client device.
1. A computer-implemented method comprising: identifying, by a server device, a plurality of subsequent search queries that were received after a particular search query, as refinements of the particular search query; identifying, by the server device, a first set of documents that is associated with a first subsequent search query, of the plurality of subsequent search queries; identifying, by the server device, a second set of documents that is associated with a second subsequent search query, of the plurality of subsequent search queries; generating, by the server device, a first term vector for the first subsequent search query based on the identified first set of documents, and a second term vector for the second subsequent search query based on the identified second set of documents; clustering, by the server device and based on the generated first term vector and the generated second term vector, the first subsequent search query into a first cluster and the second subsequent search query into a different, second cluster; selecting, by the server device, a particular subsequent search query from one or more of the first cluster or the different, second cluster; receiving, by the server device, an indication that a client device has submitted a search query that includes the particular search query; and providing, by the server device and to the client device, the selected particular subsequent search query from the one or more of the first cluster or the different, second cluster, as a refinement of the search query submitted by the client device. 6. The computer-implemented method of claim 1 , further comprising: generating a weight for the first cluster and the different, second cluster, where the generated weight for a particular cluster, of the first cluster and the different, second cluster, is based on a quantity of times that each subsequent search query, in the particular cluster, has been received, after the particular search query, as a refinement of the particular search query; and identifying at least one cluster, of the first cluster or the different, second cluster, that has a generated weight that is below a threshold, where selecting the particular subsequent search query from one or more of the first cluster or the different, second cluster includes: excluding the identified at least one cluster when selecting the particular subsequent search query.