Patent Document ID: 9953185
Application ID: 14950052
Patent Flag: 1

Claim One:
1. A computer-implemented method, comprising: identifying, within a search log of private search queries and corresponding post-search activity, a plurality of non-private n-grams that satisfy a privacy criterion and one or more private n-grams that do not satisfy the privacy criterion, wherein the plurality of non-private n-grams are contained in the private search queries; generating, from the search log, based on the plurality of non-private n-grams, a plurality of query patterns, wherein at least some of the plurality of query patterns replace the one or more private n-grams that do not satisfy the privacy criterion with one or more wildcards; determining, from the search log, aggregate search activity statistics associated with each respective query pattern of the plurality of query patterns, wherein the aggregate search activity statistics associated with each respective query pattern of the plurality of query patterns are indicative of search activity associated with a plurality of distinct private search queries that match the respective query pattern of the plurality of query patterns, wherein the plurality of distinct private search queries are part of the private search queries in the search log; determining that the aggregate search activity statistics associated with a given query pattern of the plurality of query patterns satisfy a performance criterion; receiving, from a remote computing device, over one or more computer networks, a search query; based on a determination that the received search query matches the given query pattern of the plurality of query patterns and the determination that the aggregate search activity statistics associated with the given query pattern of the plurality of query patterns satisfied the performance criterion, ranking query suggestions or search results that are responsive to the received search query based at least in part on the aggregate search activity statistics associated with the given query pattern of the plurality of query patterns; and providing the ranked query suggestions or the ranked search results to the remote computing device over the one or more computer networks; wherein the remote computing device presents one or more of the ranked query suggestions or one or more of the ranked search results in accordance with the respective rankings of the ranked query suggestions or the respective rankings of the ranked search results.