Systems and methods for document searching
Systems and methods are provided for document searching. In one implementation, a computer-implemented method provides keyword searching. The method may receive a plurality of noisy keywords for a document collection. A server may generate tokens for a plurality of keywords in the document collection and merge the tokens to create an index. A search query may be received. The search query may include at least one search phrase. For the at least one search phrase, an indication may be received from a user specifying to perform one of a noisy phrase search or a noiseless phrase search. The method may search the index for the at least one search phrase based on the indication received from the user.
1. A computer-implemented method for keyword searching, the method comprising:
generating, by a server, tokens for a plurality of keywords in a document collection, wherein the generating further comprises determining a keyword position of a keyword in a document of the document collection, and determining a number of noisy keywords preceding the keyword in the document;
merging the tokens to create an index;
receiving a search query, wherein the search query includes at least one search phrase;
receiving, for the at least one search phrase, an indication from a user specifying to perform one of a noisy phrase search or a noiseless phrase search;
searching the index for the at least one search phrase based on the indication received from the user; and
when the indication from the user specifies a noiseless phrase search, performing the noiseless phrase search at least in part by subtracting a value of the keyword position by the number of noisy keywords preceding the keyword.
2. The computer-implemented method of claim 1 , wherein creating a token for one of the keywords further comprises:
determining whether the keyword is a noisy keyword by comparing the keyword to the plurality of noisy keywords;
tagging the keyword with a noisy keyword tag when the keyword is determined to be a noisy keyword; and
outputting the token, wherein the token comprises a document identifier, the noisy keyword tag, the keyword position, and the number of noisy keywords preceding the keyword.
3. The computer-implemented method of claim 1 , wherein the noisy phrase search includes the noisy keywords in the search query and the noiseless phrase search ignores the noisy keywords in the search query.
4. The computer-implemented method of claim 1 , wherein the plurality of noisy keywords are specific to a particular document.
5. The computer-implemented method of claim 1 , wherein searching the index further comprises:
determining whether the at least one search phrase is surrounded by quotations; and
when the at least one search phrase is surrounded by quotations, performing a noisy phrase search, and when the at least one search phrase is not surrounded by quotations, performing a noiseless phrase search.
6. The computer-implemented method of claim 1 , wherein searching the index further comprises tokenizing the search query prior to performing the search.
7. The computer-implemented method of claim 1 , wherein the search query includes both noisy search phrases and noiseless search phrases.
8. The computer-implemented method of claim 1 , wherein the noisy keywords offer limited value in search processing while introducing additional processing costs.
9. The computer-implemented method of claim 1 , wherein the number of noisy keywords is the number of consecutive noisy keywords directly preceding the at least one of the keywords in the document of the document collection.