Search request processing method and device

Through artificial intelligence, non-core words in search requests are identified and deleted, the problem of low relevance of search results in the existing technology is solved, the number and quality of result recalls of search engines is improved, and the user experience is improved.

CN114564634BActive Publication Date: 2025-01-07TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202011362117.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-27
Publication Date
2025-01-07
Estimated Expiration
2040-11-27

AI Technical Summary

Technical Problem

When existing search engines process search requests, the search results may be low due to the existence of unimportant words and cannot return results satisfactory to users. Existing processing methods such as random deletion of words will reduce the accuracy of the results.

Method used

Through artificial intelligence technology, the feature vectors of search terms are calculated, non-core search terms are identified and deleted, and updated search terms sequences are generated to improve the relevance and accuracy of search results.

Benefits of technology

It improves the quantity and quality of search results returned by search engines, reduces the process of repeated search attempts by users, and improves the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114564634B_ABST
    Figure CN114564634B_ABST
Patent Text Reader

Abstract

Disclosed are a search request processing method, a method for displaying search results, an apparatus for processing search requests, a search request processing device, a device for displaying search results, and a computer-readable storage medium. The present disclosure utilizes artificial intelligence technology to identify and delete unnecessary words in search requests to process search requests, thereby enabling the search engine to return more and more accurate search results. Compared with a method of randomly deleting a portion of search words in a search request, the core content in the search request can be retained, thereby improving the quantity and quality of search results that can be recalled by the search request.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of artificial intelligence services, and more particularly to a method for processing a search request, a method for displaying search results, an apparatus for processing a search request, a search request processing device, a search result display device, and a computer-readable storage medium. Background Art

[0002] With the rapid development of mobile terminal technology and network technology, search applications such as web search, news search, and multimedia file search are also developing rapidly and are relied on by more and more users. In various search applications, search entrances are provided for users through a browser, a graphical interface of a client, a voice interface, etc. Users can submit a search request (query) through it, and the search application finds search results that match the search term and then returns the search results to the user.

[0003] A search request is usually further rewritten by a search engine so that the search engine can return more and more accurate search results. The module / software / code in the search engine for further rewriting the search request is also called a Query ReWrite module. The Query ReWrite module can perform operations such as language conversion (including traditional-simplified conversion), synonym rewriting, spelling correction, and so on on the search request.

[0004] However, even after the current Query ReWrite module rewrites the search request, there may still be some unimportant words in the search request, resulting in the search engine being unable to return results or returning irrelevant results. For this reason, the current common processing method is that, in the case where the search engine cannot return search results that meet the user's needs, a part of the words in the search request are randomly deleted or some non-entity words (such as "de", "。") are deleted, so that the search engine can return more search results. However, such a processing method may result in relatively low relevance of the search results returned by the search engine. Therefore, it is necessary to further improve the Query ReWrite module so that the search engine can return more and more accurate search results. Summary of the Invention

[0005] Embodiments of the present disclosure provide a method for processing a search request, a method for displaying search results, an apparatus for processing a search request, a search request processing device, a search result display device, and a computer-readable storage medium.

[0006] An embodiment of the present disclosure provides a search request processing method, comprising: based on the search request, obtaining a search term sequence corresponding to the search request, the search term sequence including multiple search terms; for each search term in the search term sequence, calculating a feature vector corresponding to the search term based on the importance of the search term to the search request, the association between the search term and other search terms in the search term sequence, and at least one item of semantic information of the search term; based on the feature vector corresponding to each search term in the search term sequence, determining whether the search term is a non-core search term of the search request; deleting search terms that are non-core search terms in the search term sequence to generate an updated search term sequence; wherein the click-through rate of the search results corresponding to the search term sequence is lower than the click-through rate of the search results corresponding to the updated search term sequence.

[0007] For example, the calculation of the feature vector corresponding to the search term also includes: determining a historical search request set consisting of historical search requests that include the search term; calculating the historical number of clicks on the historical search results corresponding to each historical search request in the historical search request set, and the total number of historical clicks on the historical search results corresponding to all historical search requests in the historical search request set; calculating the click ratio of each historical search request in the historical search request set, the click ratio being the ratio of the historical number of clicks on the historical search results corresponding to the historical search request to the total number of historical clicks; calculating the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set based on the historical number of clicks on the historical search results corresponding to each historical search request in the historical search request set; and calculating a first feature vector representing the importance of the search term based on the click ratio and the similarity.

[0008] For example, calculating the feature vector corresponding to the search term also includes: determining a first number of historical search requests including the search term; determining a second number of historical search requests including the search term and the other search term; and based on the first number and the second number, calculating a second feature vector characterizing the association relationship between the search term and other search terms in the search term sequence.

[0009] For example, determining whether at least one search word in the search word sequence is a non-core search word of the search request also includes: using a core search word recognition model to determine whether at least one search word in the search word sequence is a non-core search word of the search request; wherein the input of the core search word recognition model is a feature vector corresponding to each search word in the search word sequence, and the output is a judgment result of whether each search word in the search word sequence is a core search word; wherein the core search word model integrates the historical click-through rate of historical search request samples during the training process.

[0010] For example, construction of the training sample set of the core search term identification model includes: obtaining a historical search request sample set and a historical search term sequence corresponding to each historical search sample in the historical search request sample set, wherein the historical search term sequence includes multiple historical search terms and the number of search results corresponding to the historical search term sequence is zero; for each historical search term sequence, determining at least one subset of the historical search term sequence; determining the historical number of clicks on the historical search results corresponding to the candidate search term sequence composed of each subset in the at least one subset; based on the historical number of clicks corresponding to each subset in the at least one subset, determining the labeling result of the historical search request sample, wherein the labeling result indicates whether each historical search term in the historical search term sequence is a non-core historical search term for the historical search request.

[0011] For example, the core search term recognition model includes a bidirectional long short-term memory network, the input of the bidirectional long short-term memory network is a feature vector set composed of feature vectors corresponding to each search term in the search term sequence, and the output of the bidirectional long short-term memory network is a labeling score of the search term sequence, and the labeling score includes a score for each search term in the search term sequence to be a core search term of the search request and a score for the search term to be a non-core search term of the search request; wherein the bidirectional long short-term memory network includes a forward propagation layer, a reverse propagation layer and an output layer, wherein the forward propagation layer takes the feature vector set as input and a forward hidden vector as output, and the input of each neuron except the first neuron in the forward propagation layer includes the output of the previous neuron; the reverse propagation layer takes the feature vector set as input and a reverse hidden vector as output, and the input of each neuron except the last neuron in the reverse propagation layer includes the output of the next neuron; the output layer takes the forward hidden vector and the reverse hidden vector as input, and outputs the labeling score and labeling result of the search term sequence, and the labeling result is obtained based on the labeling score.

[0012] For example, the core search term identification model includes a conditional random field network, which takes the labeling score of the search term sequence as input and the accuracy score of the labeling score as output; wherein, deleting the search term that is a non-core search term in the search term sequence also includes: using the accuracy score of the labeling score and using a dynamic programming method to modify the labeling result.

[0013] For example, calculating the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set further includes:

[0014] For any one of the historical search request sets, Query i , using formula (1)

[0015]

[0016] Calculate historical search request Query i and another historical search request Query in the historical search request set j Similarity between Among them, doc x Query for historical search requests i Return to the historical search results D i and historical search requests Query j Return to the historical search results D j The intersection of ij Any search result in Query for historical search requests i About doc x The total number of historical clicks, Query for historical search requests j About doc x The total number of historical clicks.

[0017] For example, the calculating of the sub-feature vector representing the importance of the search term based on the click ratio and the similarity further includes:

[0018] For the search term Term k , using formula (2)

[0019]

[0020] Calculate the search term Term k Search Query in history i Importance score in in Indicates all the search terms that contain the term k Historical search requests Query j A collection of Representing a collection The number of elements, and the historical search request Query i Return to the historical search results D i and historical search requests Query j Return to the historical search results D j The intersection of ij is not an empty set;

[0021] Using formula (3)

[0022]

[0023] Calculate the representation of the search term Term k The importance of the sub-eigenvector in is the click ratio, G k Indicates all the search terms that contain the term k Historical search requests Query i A collection of .

[0024] The disclosed embodiment discloses a method for displaying search results, including: displaying a search page, the search page including a search request input box, the search request input box is used to obtain a search request input by a user, the search request corresponds to a first search word sequence; displaying a search result display box on the search page, the search result display box displays search results corresponding to a second search word sequence, the second search word sequence is a subset of the first search word sequence and the difference between the first search word sequence and the second search word sequence is a non-core search word. The click-through rate of the search results corresponding to the first search word sequence is lower than the click-through rate of the search results corresponding to the second search word sequence.

[0025] The present embodiment discloses a method for displaying search results, including: displaying a search page, the search page including a search request input box; receiving a search request input in the search request input box, the search request corresponding to a first search term sequence; and displaying a search result display box, the search result display box displays search results corresponding to a second search term sequence, the second search term sequence is a subset of the first search term sequence and the difference between the first search term sequence and the second search term sequence includes non-core search terms.

[0026] The embodiment of the present disclosure discloses a device for processing search requests, comprising: a feature extraction module, a bidirectional long short-term memory network and a conditional random field network, wherein the feature extraction module is configured to: based on the search request, obtain a search term sequence corresponding to the search request, wherein the search term sequence includes multiple search terms; for each search term in the search term sequence, calculate a feature vector corresponding to the search term based on at least one of the importance of the search term to the search request, the association relationship between the search term and other search terms in the search term sequence, and the semantic information of the search term; wherein the input of the bidirectional long short-term memory network is a feature vector set composed of feature vectors corresponding to each search term in the search term sequence, and the output of the bidirectional long short-term memory network is a labeling score of the search term sequence, wherein the labeling score includes a score of each search term in the search term sequence being a core search term of the search request and a score of the search term being a non-core search term of the search request; wherein the conditional random field network takes the labeling score of the search term sequence as input and takes the accuracy score of the labeling score as output.

[0027] For example, the bidirectional long short-term memory network includes a forward propagation layer, a reverse propagation layer and an output layer, wherein the forward propagation layer takes the feature vector set as input and the forward hidden vector as output, and the input of each neuron except the first neuron in the forward propagation layer includes the output of the previous neuron; the reverse propagation layer takes the feature vector set as input and the reverse hidden vector as output, and the input of each neuron except the last neuron in the reverse propagation layer includes the output of the next neuron; the output layer takes the forward hidden vector and the reverse hidden vector as input, and takes the labeling score and labeling result of the search word sequence as output, and the labeling result is obtained based on the labeling score.

[0028] The embodiment of the present disclosure discloses a search request processing device, including: one or more processors; and one or more memories, wherein a computer executable program is stored in the memory, and when the computer executable program is executed by the processor, the above method is performed.

[0029] The disclosed embodiment discloses a device for displaying search results, including a display screen and a processor, wherein the display screen is configured to: display a search page, the search page including a search request input box, the search request input box is used to obtain a search request input by a user, the search request corresponds to a first search term sequence; display a search result display box on the search page, the search result display box displays search results corresponding to a second search term sequence, the second search term sequence is a subset of the first search term sequence and the difference between the first search term sequence and the second search term sequence includes non-core search terms. Optionally, the click-through rate of the search results corresponding to the first search term sequence is lower than the click-through rate of the search results corresponding to the second search term sequence.

[0030] According to another aspect of the present disclosure, a search request processing device is provided. The search request processing device includes: a search term sequence acquisition module, configured to acquire a search term sequence corresponding to the search request based on the search request, wherein the search term sequence includes multiple search terms; a feature vector calculation module, configured to: for each search term in the search term sequence, based on the importance of the search term to the search request, the association relationship between the search term and other search terms in the search term sequence, and at least one of the semantic information of the search term, calculate the feature vector corresponding to the search term; a non-core search term determination module, configured to determine whether the search term is a non-core search term of the search request based on the feature vector corresponding to each search term in the search term sequence; a search term sequence update module, configured to: delete the search term as a non-core search term in the search term sequence to generate an updated search term sequence; wherein the click-through rate of the search results corresponding to the search term sequence is lower than the click-through rate of the search results corresponding to the updated search term sequence.

[0031] An embodiment of the present disclosure provides a computer-readable storage medium on which computer instructions are stored. When the computer instructions are executed by a processor, the above method is implemented.

[0032] According to another aspect of the present disclosure, a computer program product or a computer program is provided, the computer program product or the computer program including computer instructions, the computer instructions being stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable medium, and the processor executes the computer instructions, so that the computer device executes the methods provided in the above-mentioned various aspects or various optional implementations of the above-mentioned various aspects.

[0033] An embodiment of the present disclosure provides a search request processing method, which utilizes artificial intelligence technology to identify and delete unnecessary words in the search request to process the search request, thereby enabling the search engine to return more and more accurate search results.

[0034] Compared with the method of randomly deleting a part of the search terms in the search request, the search request processing method provided by the embodiment of the present disclosure can retain the core content in the search request and improve the quantity and quality of the search results that can be recalled by the search request.

[0035] The embodiment of the present disclosure uses the click-through rate of search results as one of the indicators for measuring the quality of search results, so that the rewritten search request can return search results that can obtain a higher click-through rate. This can reduce the process of users repeatedly trying to search requests, and improve the user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] In order to more clearly illustrate the technical solution of the embodiment of the present disclosure, the following briefly introduces the drawings required for describing the embodiment. The drawings described below are only exemplary embodiments of the present disclosure.

[0037] Figure 1A is an example schematic diagram showing a scenario of returning search results to a user by processing a search request according to an embodiment of the present disclosure.

[0038] Figure 1B is a schematic diagram showing an example of displaying a search request and search results in a search engine according to an embodiment of the present disclosure.

[0039] Figure 2A is a flowchart illustrating a search request processing method according to an embodiment of the present disclosure.

[0040] Figure 2B It is a schematic diagram showing a search request processing method according to an embodiment of the present disclosure.

[0041] Figure 3A is a flowchart illustrating a process of calculating a first feature vector based on the importance of a search term to a search request according to an embodiment of the present disclosure.

[0042] Figure 3B is a schematic diagram illustrating a process of calculating a first eigenvector according to an embodiment of the present disclosure.

[0043] Figure 4 is a flowchart illustrating a process of calculating a second feature vector based on an association relationship between the search word and other search words in the search word sequence according to an embodiment of the present disclosure.

[0044] Figure 5Ais a schematic diagram showing a core search term identification model according to an embodiment of the present disclosure.

[0045] Figure 5B It is a schematic diagram showing the process of obtaining training samples of a core search term recognition model according to an embodiment of the present disclosure.

[0046] Fig. 6A is a flowchart illustrating a method of performing a search according to an embodiment of the present disclosure.

[0047] Figure 6B It is a schematic diagram showing an interface for displaying search results according to an embodiment of the present disclosure.

[0048] Figure 6C is a structural diagram showing a device for displaying search results according to an embodiment of the present disclosure.

[0049] Figure 7 is a structural diagram showing an apparatus for search request processing according to an embodiment of the present disclosure.

[0050] Figure 8 A schematic diagram of an electronic device according to an embodiment of the present disclosure is shown.

[0051] Fig. 9 A schematic diagram showing the architecture of an exemplary computing device according to an embodiment of the present disclosure.

[0052] Fig.10 A schematic diagram of a storage medium according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0053] In order to make the purpose, technical solution and advantages of the present disclosure more obvious, the exemplary embodiments according to the present disclosure will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all the embodiments of the present disclosure, and it should be understood that the present disclosure is not limited to the exemplary embodiments described here.

[0054] In this specification and the accompanying drawings, substantially the same or similar steps and elements are represented by the same or similar reference numerals, and repeated descriptions of these steps and elements will be omitted. At the same time, in the description of the present disclosure, the terms "first", "second", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance or ranking.

[0055] To facilitate description of the present disclosure, concepts related to the present disclosure are introduced below.

[0056] The search request processing method disclosed in the present invention may be based on artificial intelligence (AI). Artificial intelligence is the theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a similar way to human intelligence. For example, for a search request processing method based on artificial intelligence, it can rewrite the search request in a similar way to how humans rewrite the search request to delete search terms that may cause inaccurate search results. By studying the design principles and implementation methods of various intelligent machines, artificial intelligence enables the search request processing method disclosed in the present invention to have the functions of identifying non-core search terms, reasoning and making decisions on search requests.

[0057] The search request disclosed in the present invention can be used in general search fields as well as in specific search fields. For example, the search request disclosed in the present invention can be applied to the retrieval of information such as documents, audio, and video. Specifically, in different search fields, the data sources retrieved and the search results returned may be different. Therefore, the search results returned by the same search request may also change with the change of the search field. For example, in the general search field, if the user enters a person's name, the search engine is likely to return a character profile related to the person's name. In the music search field, the search engine will default the person's name to the singer's name and return songs related to the singer. In the music search field, the search request entered by the user is relatively concentrated on the names of songs, singers, albums, and playlists compared to the general search field, and the search results are also concentrated in songs, singers, albums, and playlists, and the search results are relatively limited. Therefore, if a processing strategy of randomly deleting words in the search request is adopted, it is easy to discard key search terms that are important for returning correct search results, which in turn leads to the inability to return the search results required by the user.

[0058] It should be noted that the search request in this article can be a sentence, such as "Today's weather is good, I want to listen to Xiao Huang singing "Little Blue Loves Little Red". The search request can also be a series of search terms connected by various separators (such as space, "+", etc.), such as "Little Huang Little Blue Little Red" or "Little Huang + Little Blue + Little Red". The present disclosure does not limit the format of the search request.

[0059] Therefore, in a search field similar to the music search field where search results are relatively limited, the processing strategy of randomly deleting words in the search request is likely to be inapplicable. Therefore, it is necessary to further analyze the search request to obtain a search request that can return more and more accurate search results. Optionally, the analysis of the search request in the present disclosure adopts natural language processing (NLP) technology. Natural language processing technology is an important direction in the fields of computer science and artificial intelligence, which can realize various theories and methods for effective communication between people and computers using natural language. Natural language processing is a science that integrates linguistics, computer science, and mathematics. Natural language processing technology generally includes text processing, semantic understanding, machine translation, robot question and answer, knowledge graph and other technologies. Therefore, based on natural language processing technology, the search request processing method disclosed in the present disclosure can analyze the search request and identify the key / core search terms and non-core search terms for a specific search request to obtain better search results.

[0060] Optionally, the natural language processing technology used in the embodiments of the present disclosure can also be based on machine learning (ML) and deep learning. Machine learning is a multi-disciplinary cross-discipline involving probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory and other disciplines. Natural language processing technology uses machine learning to study how computers simulate or implement human language learning behavior, acquire new knowledge or skills by analyzing existing, classified text data, and reorganize existing knowledge structures to continuously improve their performance. Machine learning and deep learning generally include artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning and other technologies.

[0061] The solutions provided by the embodiments of the present disclosure involve technologies such as artificial intelligence, natural language processing and machine learning, which are specifically explained through the following embodiments.

[0062] Figure 1A 1 is an example diagram showing a scenario 100 of returning search results to a user by processing a search request according to an embodiment of the present disclosure. Figure 1B is a schematic diagram showing an example of displaying a search request and search results in a search engine according to an embodiment of the present disclosure.

[0063] Currently, there are many search engines. A user can enter a search request in a search application installed on his user terminal. Then the user terminal transmits the search request to the server of the application through the network.

[0064] Optionally, the user terminal may specifically include a smart phone, a tablet computer, an e - book reader, an MP3 player, an MP4 player, a laptop computer, a vehicle terminal, a wearable device, and so on. The user terminal may also be a client that installs a browser or various applications (including system applications and third - party applications). The network may be the Internet of Things (IoT) based on the Internet and / or the telecommunications network, which may be a wired network or a wireless network. For example, it may be an electronic network such as a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a cellular data communication network, etc. that can implement information exchange functions.

[0065] As Figure 1A shown, the server may retrieve search results associated with the search request according to the search request, and return the search results to the user terminal through the network.

[0066] As Figure 1B shown, on interface A, when the search request is "Jiang X Lin XX abc", the search results returned by the server are empty. While on interface B, when the search request is "Jiang X Lin XX", the server returns multiple search results: Song - Jiang X, MV - Jiang X, and Lyrics - Jiang X. The user further clicks on Song - Jiang X. Thus, it can be known that the search engine has returned the search results that the user wants.

[0067] As shown in interface C, if when the search request "Jiang X Lin XX abc" entered by the user, the search engine intelligently rewrites the search request as "Jiang X Lin XX", the user can also obtain the desired search results. And as shown in interface D, if the search engine rewrites the search request as "Jiang X abc", the search results feedback to the user are likely not what the user expects either.

[0068] Based on this, the present disclosure provides a search request processing method, which can intelligently rewrite the search request. This method uses artificial intelligence technology to identify and delete unnecessary words (or non - core words) in the search request to process the search request, so that the search engine can return more and more accurate search results.

[0069] Compared with the method of randomly deleting some search words in the search request, the search request processing method provided by the embodiments of the present disclosure can retain the core content in the search request, and improve the quantity and quality of the search results that can be recalled by the search request.

[0070] The embodiments of the present disclosure use the click - through rate of the search results as one of the signs to measure the quality of the search results, so that the rewritten search request can return search results that can obtain a higher click - through rate. Thus, the process of the user repeatedly trying the search request can be reduced, and the user experience can be improved.

[0071] Figure 2A is a flowchart showing a search request processing method 200 according to an embodiment of the present disclosure. Figure 2B is a schematic diagram showing a search request processing method 200 according to an embodiment of the present disclosure.

[0072] The search request processing method 200 according to the embodiment of the present disclosure can be applied to any search request processing device. It is understood that the search request processing device can be different types of hardware devices, such as personal digital assistants (PDAs), audio / video devices, mobile phones, MP3 players, personal computers, laptop computers, servers, etc. For example, the search request processing device can be Figure 1A The server, user terminal, or system composed of a server and a user terminal, etc. in the embodiment of the present invention. Those skilled in the art should understand that the present invention is not limited to this. Those skilled in the art should also understand that the following steps may not all be performed by the user terminal or the server alone, for example, step S201 may be performed by the user terminal, and step S202 may be performed by the server. The present invention does not limit this.

[0073] In step S201, based on the search request, the search request processing device may obtain a search word sequence corresponding to the search request, where the search word sequence includes a plurality of search words.

[0074] Optionally, refer to Figure 2B , the search request can be divided into multiple search terms, and the multiple search terms form a search term sequence. For example, assuming that the search request is "the song Jiang X by singer Lin XX", the search term sequence can be {singer, Lin XX, of, song, Jiang X}. For example, assuming that the search request is "the weather is good today, so I want to listen to Xiao Huang singing Xiao Lan", the search term sequence can be {"today", "weather", "good", "so", "I", "want", "listen", "Xiao Huang", "sing", "of", "Xiao Lan"}. Optionally, if the number of words in the search request exceeds a predetermined threshold, the search term sequence may not include all the search terms in the search request. For example, if the number of words in the search request is limited to 4 words, the search term sequence corresponding to the search request "the weather is good today, so I want to listen to Xiao Huang singing Xiao Lan" may be {"today", "weather", "good"} or {"Xiao Huang", "sing", "of", "Xiao Lan"}. The present disclosure does not limit the way in which the search request is converted into a search term sequence.

[0075] In step S202, for each search word in the search word sequence, based on the importance of the search word to the search request, the association between the search word and other search words in the search word sequence, and at least one of the semantic information of the search word, the search request processing device can calculate the feature vector corresponding to the search word.

[0076] For example, the feature vector corresponding to each search word in the search word sequence may include at least one of the following items: a feature vector representing the importance of the search to the search request (e.g. Figure 2B a first feature vector representing the association relationship between the search word and another search word in the search word sequence (e.g., Figure 2B The second feature vector of the closeness in , and the semantic information of the search term (e.g. Figure 2B Based on the importance of the search term to the search request, the search request processing device can calculate the first feature vector. Based on the association between the search term and other search terms in the search term sequence, the search request processing device can calculate the second feature vector. Based on the semantic information of the search term, the search request processing device can calculate the third feature vector. For example, as shown in 2B, when the feature vector corresponding to the search term includes multiple items of the first feature vector, the second feature vector, and the third feature vector, the search request processing device can also concatenate the first feature vector, the second feature vector, and / or the third feature vector to obtain a feature vector that integrates two or three of the importance, the association, and the semantic information (for example Figure 2B feature vector of search term B in .

[0077] For example, refer to Figure 2B , the feature vector corresponding to each search word in the search word sequence can be calculated through various operations.

[0078] For example, in the case where the importance of the search word is calculated based on the importance of the search word to the search request, the first feature vector may be determined by various methods.

[0079] Optionally, the importance of a certain search term may indicate the probability of the search term appearing in historical searches, and the first feature vector representing the importance of the search term may be a one-dimensional vector. For example, the importance of the search term may be determined by querying a table of the importance of the search term. The importance of the search term may also be determined by counting historical searches of the search term. For example, the more times a search term is searched, the higher the importance of the search term may be. The present disclosure does not impose any restrictions on the method for calculating the first feature vector, as long as the calculated first feature vector can represent the importance of the search term. In addition, the present disclosure does not impose any restrictions on the dimension of the first feature vector representing the importance of the search term.

[0080] Optionally, the embodiments of the present disclosure may also use an N-gram model (bag of words model) to determine the importance of a search term. The N-gram model determines the importance of a search term by the order of words. Alternatively, the embodiments of the present disclosure may also determine the importance of a search term by TF-IDF (term frequency–inverse document frequency). For example, for the field of music search, TF-IDF may be configured to assign a higher degree of importance to words that appear more frequently in historical search requests in the field of music search and appear less frequently in historical search requests in the field of general search.

[0081] Optionally, some embodiments of the present disclosure may also be implemented by Figure 3AThe first feature vector representing the importance of the search term is calculated by the steps S301 to S305 shown. Specifically, steps S301 to S305 include: in step S301, determining a historical search request set consisting of historical search requests including the search term; in step S302, calculating the historical number of clicks on the historical search results corresponding to each historical search request in the historical search request set, and the total number of historical clicks on the historical search results corresponding to all historical search requests in the historical search request set; in step S303, calculating the click ratio of each historical search request in the historical search request set, the click ratio being the ratio of the historical number of clicks on the historical search results corresponding to the historical search request to the total number of historical clicks; in step S304, based on the historical number of clicks on the historical search results corresponding to each historical search request in the historical search request set, calculating the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set; in step S305, calculating the first feature vector representing the importance of the search term based on the click ratio and the similarity. This article will describe steps S301 to S305 in detail in the subsequent description, and will not repeat them here.

[0082] For example, in the case where the feature vector corresponding to the search word is calculated based on the association relationship between the search word and other search words in the search word sequence, the second feature vector can be determined by various methods. The other search words in the present disclosure may refer to a specific search word (e.g., the first search word) in the search word sequence, or any search word in the search word sequence that is different from the search word.

[0083] Optionally, the probability that the search term also appears in the search term sequence when a certain search term appears can be used to characterize the association relationship between the search term and other search terms in the search term sequence. Furthermore, the probability that the search term also appears in the search term sequence when its previous search term appears can be used to characterize the association relationship between the search term and other search terms in the search term sequence. For example, suppose the search term sequence is {"think", "listen", "Little Yellow", "sing", "of", "Little Blue"}. For the first search term "think", the association relationship between it and other search terms can be preset to 0, and 0 is determined as the second feature vector for characterizing "think". For the second search term "listen", historical search requests can be queried to count the probability of the search term "listen" appearing when the search term "think" appears, and the probability is determined as the second vector for characterizing "listen".

[0084] Optionally, some embodiments of the present disclosure may also calculate the second feature vector through TextCNN (text convolutional neural network model). The TextCNN model is a text processing model based on the convolutional neural network model (CNN). A typical TextCNN model may include a convolution layer, a pooling layer, and a fully connected layer (FC), which can effectively capture pseudo-randomness features. Therefore, using the TextCNN model, it is possible to effectively extract information representing the association relationship between each word in the text data (this information is also called co-occurrence information) from the feature vector, and then construct a second feature vector representing the association relationship between the search term and other search terms in the search term sequence.

[0085] Optionally, some embodiments of the present disclosure may also be implemented by Figure 4 The steps S401 to S403 shown are used to calculate the sub-feature vector representing the association relationship between the search term and another search term in the search term sequence. Specifically, steps S401 to S403 include: in step S401, determining a first number of historical search requests including the search term; in step S402, determining a second number of historical search requests including the search term and other search terms; in step S403, based on the first number and the second number, calculating the sub-feature vector representing the association relationship between the search term and other search terms in the search term sequence. This article will be discussed in the following Figure 4 Steps S401 to S403 are described in detail in the above description and will not be repeated here.

[0086] For example, in the case of the semantic information of the search word, the third feature vector representing the semantic information of the search word may be determined by various methods.

[0087] For example, each search word in the search word sequence can be encoded into a numerical vector. Optionally, the search request processing device can use a preset dictionary to convert each search word into a numerical value containing semantic information. The preset dictionary can be a set in which each element includes a search word and its corresponding numerical value. The elements in the dictionary are represented in the form of <search word, numerical value>. Assume that the search word sequence is {think, listen, Xiao Huang, sing, of, Xiao Lan}; the dictionary is {<think, 5>, <listen, 7>, <Xiao Huang, 40>, <sing, 1>, <of, 0>, <Xiao Lan, 70>}. Each search word in the search word sequence can be converted into: 5, 7, 40, 1, 0, 70 in turn.

[0088] Optionally, the search request processing device can also dynamically calculate the semantic information of each search word in the search word sequence. For example, the search request processing device can use the Word2Vec neural network model to calculate the third feature vector representing the semantic information of the search word. Word2Vec is a model that learns semantic knowledge from a large amount of text corpus in an unsupervised manner, and it is widely used in natural language processing (NLP). For example, the dimension of the third feature vector calculated using the Word2Vec neural network model can be 30. Optionally, the Word2Vec neural network model can be trained using the Skip-Gram model (skip word model) and / or the CBOW model (continuous vocabulary model).

[0089] Therefore, optionally, the dimension of the first feature vector is 1, the dimension of the second feature vector is 1, and the dimension of the third feature vector is 30. The first feature vector, the second feature vector and the third feature vector are concatenated into a 32-dimensional feature vector, which can be used as a feature vector corresponding to a search term.

[0090] In step S203, based on the feature vector corresponding to each search word in the search word sequence, it is determined whether at least one search word in the search word sequence is a non-core search word of the search request.

[0091] For example, the search request processing device may utilize various methods to determine whether at least one search term in the search term sequence is a non-core search term of the search request. The non-core search terms in the present disclosure refer to words that may reduce the click-through rate of the search results corresponding to a certain search request. For example, the click-through rate corresponding to a search request including a non-core search term may be lower than that corresponding to a search request that does not include the non-core search term. For example, suppose the search request is "I want to listen to Xiao Huang singing Xiao Lan". The search terms "I", "want", "listen", "sing" and "of" may all be determined as non-core search terms. The click-through rate of the search results corresponding to the search request "I want to listen to Xiao Huang singing Xiao Lan loves Xiao Hong" will be lower than that of the search request "Xiao Huang, Xiao Lan, Xiao Hong".

[0092] For example, when the search request processing device calculates the feature vector corresponding to the search term based on the importance of the search term to the search request, the search request processing device may determine the search term whose value of the first feature vector is lower than a certain threshold as the non-core search term of the search request. The search request processing device may also sort the values ​​of the first feature vector from large to small, and then determine the multiple search terms with the lower sorting as the non-core search terms of the search request.

[0093] For example, when the search request processing device calculates the feature vector corresponding to the search term based on the association between the search term and other search terms in the search term sequence, the search request processing device may also perform similar processing on the second feature vector to determine whether a search term is a non-core search term.

[0094] For example, when the feature vector corresponding to the search term includes a sub-feature vector representing semantic information of the search term, the search request processing device can use a neural network model (e.g., a binary classification neural network model) to classify the search term as a core search term or a non-core search term based on the semantic information of the search term.

[0095] For example, see FIG. 5A to FIG. 5B , the search request processing device can also use the core search term recognition model to determine whether at least one search term in the search term sequence is a non-core search term in the search request. The input of the core search term recognition model is the feature vector corresponding to each search term in the search term sequence, and the output is the judgment result of whether each search term in the search term sequence is a core search term. Optionally, the core search term model incorporates the historical click-through rate of historical search request samples during the training process. This article will FIG. 5A to FIG. 5B The core search term recognition model is described in detail in [1], so I will not repeat it here.

[0096] In step S204, search terms that are non-core search terms are deleted from the search term sequence to generate an updated search term sequence, wherein the click-through rate of the search results corresponding to the search term sequence is lower than the click-through rate of the search results corresponding to the updated search term sequence.

[0097] The click-through rate of search results indicates the probability of a user clicking on the search results. For example, if the search results corresponding to the search word sequence include 5 links, and 5 out of 10 users who use the search sequence click on one of the links, then the click-through rate of the search results corresponding to the search word sequence is 5 / 10=0.5.

[0098] For example, suppose that the search result corresponding to the search word sequence {"today", "weather", "good", "so", "I", "want", "listen", "Xiao Huang", "sing", "of", "Xiao Lan"} may be empty, so the click rate of the search result is 0. The search request processing device can delete the non-core search words {"today", "weather", "good", "so", "I", "want", "listen", "Xiao Huang", "sing", "of", "Xiao Lan"} in the search word sequence {"today", "weather", "good", "so", "I", "want", "listen", "sing", "of", "Xiao Lan"} to generate the search word sequence {"Xiao Huang", "Xiao Lan"}. The search result corresponding to the search word sequence {"Xiao Huang", "Xiao Lan"} may be 10 search results. The user may find that the second of the 10 search results displayed is the song Xiao Lan sung by the singer Xiao Huang that the user wants to listen to, and click on the search result. Therefore, the click rate of the search result corresponding to the search word sequence {"Xiao Huang", "Xiao Lan"} is higher than the click rate of the search result corresponding to the search word sequence {"today", "weather", "good", "so", "I", "want", "listen", "Xiao Huang", "sing", "of", "Xiao Lan"}.

[0099] Therefore, an embodiment of the present disclosure provides a search request processing method, which uses artificial intelligence technology to identify and delete unnecessary words in the search request to process the search request, so that the search engine can return more and more accurate search results. Compared with the method of randomly deleting a part of the search words in the search request, the search request processing method can retain the core content in the search request and improve the number and quality of search results that can be recalled by the search request. The embodiment of the present disclosure uses the click-through rate of the search results as one of the indicators to measure the quality of the search results, so that the rewritten search request can return search results that can obtain a higher click-through rate. As a result, the process of users repeatedly trying search requests can be reduced, thereby improving the user experience.

[0100] Figure 3A 3 is a flowchart illustrating a process 300 of calculating a first feature vector based on the importance of a search term to a search request according to an embodiment of the present disclosure. Figure 3B FIG. 3 is a schematic diagram showing a process 300 of calculating a first eigenvector according to an embodiment of the present disclosure.

[0101] like Figure 3A As shown, the process 300 of calculating the first feature vector based on the importance of the search term to the search request includes steps S301 to S305.

[0102] In step S301, the search request processing device determines a historical search request set consisting of historical search requests including the search term.

[0103] like Figure 3B As shown, the following description is made by taking search word A as an example.

[0104] Specifically, assume that historical search requests including search term A include "ABCD", "ABD" and "ABE". The search term sequences corresponding to these historical search requests are {"A", "B", "C", "D"}, {"A", "B", "D"} and {"A", "B", "E"} respectively.

[0105] Optionally, the historical search request may be a search request that has been searched by any user in the past period of time (eg, the past 180 days).

[0106] In step S302, the search request processing device calculates the number of historical clicks on the historical search results corresponding to each historical search request in the historical search request set, and the total number of historical clicks on the historical search results corresponding to all historical search requests in the historical search request set.

[0107] Figure 3B An example of a historical search request including search term A is given.

[0108] The search term sequence corresponding to historical search request 1 is {"A", "B", "C", "D"}, and 2 search results are returned: search result-1 and search result-2. In this case, one user has clicked on search result-1. And three users have clicked on search result-2.

[0109] The search term sequence corresponding to historical search request 2 is {"A", "B", "D"}, and one search result is returned: search result - 1. In this case, two users have clicked on search result - 2.

[0110] The search term sequence corresponding to historical search request 3 is {"A", "B", "E"}, and 2 search results are returned: search result-1 and search result-2. In this case, 4 users have clicked on search result-1, and 5 users have clicked on search result-2.

[0111] Thus, the following Table 1 can be obtained.

[0112] Table 1

[0113]

[0114] In step S303, the search request processing device calculates the click ratio of each historical search request in the historical search request set, where the click ratio is the ratio of the number of historical clicks on the historical search results corresponding to the historical search request to the total number of historical clicks.

[0115] Based on Table 1 above, it can be concluded that for search request 1, a total of 4 users clicked on its search results. For search request 2, a total of 2 users clicked on its search results. For search request 3, a total of 9 users clicked on its search results.

[0116] Therefore, the following Table 2 can be obtained.

[0117] Table 2

[0118]

[0119]

[0120] That is, the click ratio of search request 1 is 4 / 15; the click ratio of search request 1 is 2 / 15; and the click ratio of search request 3 is 9 / 15.

[0121] In step S304, the search request processing device calculates the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set based on the historical click counts of the historical search results corresponding to each historical search request in the historical search request set.

[0122] For example, step S304 may include: for any one of the historical search request sets, Query i , using formula (1)

[0123]

[0124] Calculate historical search request Query i and another historical search request Query in the historical search request set j Similarity between

[0125] Among them, doc x Query for historical search requests i Return to the historical search results D i and historical search requests Query j Return to the historical search results D j The intersection of ij Any search result in Query for historical search requests i About doc x The total number of historical clicks, Query for historical search requests j About doc x The total number of historical clicks.

[0126] Continue based on Figure 3B The example explains how to calculate the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set.

[0127] For example, based on the above formula (1), we can determine:

[0128] Similarity between search request 1 (Query1) and search request 2 (Query2)

[0129] Similarity between search request 1 (Query1) and search request 3 (Query3)

[0130] Similarity between search request 2 (Query2) and search request 1 (Query1)

[0131] Similarity between search request 2 (Query2) and search request 3 (Query3)

[0132] Similarity between search request 3 (Query3) and search request 1 (Query1)

[0133] Similarity between search request 3 (Query3) and search request 2 (Query2)

[0134] Thus, 6 similarity values ​​can be obtained.

[0135] In step S305, the search request processing device calculates a first feature vector representing the importance of the search term based on the click ratio and the similarity.

[0136] For example, step S305 may include: for the search term Term k , using formula (2)

[0137]

[0138] Calculate the search term Term k Search Query in history i Importance score in in Indicates all the search terms that contain the term k Historical search requests Query j A collection of Representing a collection The number of elements, and the historical search request Queryi Return to the historical search results D i and historical search requests Query j Return to the historical search results D j The intersection of ij Not an empty set.

[0139] Next, the search request processing device uses formula (3)

[0140]

[0141] Calculate the representation of the search term Term k The importance of the sub-eigenvector in is the click ratio, G k Indicates all the search terms that contain the term k Historical search requests Query i A collection of .

[0142] For example, formula (2) can determine the importance score of search term A in search request 1 (Query 1, whose corresponding search sequence is {"A", "B", "C", "D"}) for:

[0143]

[0144] Similarly, the importance score of each search term in each search request can be obtained based on the above formula, as shown in Table 3 below.

[0145] Table 3

[0146]

[0147] Next, the search request processing device can calculate the first feature vector Score representing the importance of each search word based on the data in Table 2 and Table 3. "A" To Score "E" .

[0148] For example, the first feature vector Score representing the search term "A" "A" can be calculated as:

[0149]

[0150] The search request processing device can similarly calculate the first feature vectors of other search terms, which will not be repeated here. Thus, the search request processing device can calculate the first feature vector corresponding to the search term based on the importance of the search term to the search request, and the first feature vector incorporates information from historical search requests, which helps to improve the accuracy of determining whether a search term is a core search term or a non-core search term.

[0151] Figure 4 4 is a flowchart showing a process 400 of calculating a second feature vector based on an association relationship between the search word and other search words in the search word sequence according to an embodiment of the present disclosure.

[0152] like Figure 4 As shown, the process 400 of calculating the second feature vector based on the association relationship between the search word and other search words in the search word sequence includes steps S401 to S403.

[0153] Specifically, assume that historical search requests including search term A include "ABCD", "ABD", and "ABE". The search term sequences corresponding to these historical search requests are {"A", "B", "C", "D"}, {"A", "B", "D"}, and {"A", "B", "E"}, which have been searched 100 times, 200 times, and 300 times, respectively.

[0154] In step S401 , the search request processing device determines a first number of historical search requests including the search term.

[0155] According to the above assumption, the search request processing device can determine that the first number of historical search requests including the search term A is 100+200+300=600 (times).

[0156] In step S402, the search request processing device determines a second number of historical search requests including the search term and the other search term.

[0157] Based on the above assumptions, the search request processing device determines the following Table 4.

[0158] Table 4

[0159] Search word combination Second quantity A+B 100+200+300=600 A+C 100 A+D 100+200=300 A+E 300

[0160] In step S403, the search request processing device calculates a second feature vector representing the association relationship between the search term and other search terms in the search term sequence based on the first quantity and the second quantity.

[0161] For example, the search request processing device may determine the ratio of the second number to the first number as a second feature vector characterizing the association relationship between the search term and other search terms in the search term sequence.

[0162] For example, based on the above assumptions, the search request processing device determines the following Table 5.

[0163] Table 5

[0164] Two search terms The relationship between two search terms A+B 600 / 600=1 A+C 100 / 600=0.16 A+D 300 / 600=0.5 A+E 300 / 600=0.5

[0165] The second feature vector can be characterized by the mean of the four values, that is, the second feature vector of search term A can be determined as (1+0.16+0.5+0.5) / 4=0.54. The search request processing device can similarly calculate the second feature vectors of other search terms, which will not be described in detail here.

[0166] Optionally, the association between two search terms is related to the order in which they appear in the search request in many application scenarios. Therefore, for search request 1 (whose corresponding search sequence is {"A", "B", "C", "D"}), only the association between search terms "A" and "B", search terms "B" and "C", and search terms "C" and "D" can be calculated, and used as the second feature vectors of search terms "B", "C" and "D", respectively, and the second feature vector of search term A is set to 0 by default.

[0167] The present disclosure does not limit the specific manner of calculating the second feature vector representing the association relationship between the search term and other search terms in the search term sequence based on the first quantity and the second quantity, as long as it can be calculated using information related to historical search requests.

[0168] Therefore, the search request processing device can calculate the second feature vector corresponding to the search term based on the association between the search term and other search terms in the search term sequence, and the second feature vector integrates the information in the historical search requests and reflects the association between the search terms, which helps to improve the accuracy of determining whether a search term is a core search term or a non-core search term.

[0169] Figure 5A is a schematic diagram showing a core search term identification model 500 according to an embodiment of the present disclosure. Figure 5B is a schematic diagram showing the process of obtaining training samples of the core search term recognition model 500 according to an embodiment of the present disclosure.

[0170] The search request processing device can use the core search term recognition model 500 to determine whether at least one search term in the search term sequence is a non-core search term in the search request. The input of the core search term recognition model is the feature vector corresponding to each search term in the search term sequence, and the output is the judgment result of whether each search term in the search term sequence is a core search term. Optionally, the core search term model incorporates the historical click-through rate of historical search request samples during the training process.

[0171] See also Figure 5A The core search term recognition model includes a bidirectional long short-term memory network, the input of the bidirectional long short-term memory network is a feature vector set composed of feature vectors corresponding to each search term in the search term sequence, and the output of the bidirectional long short-term memory network is a labeling score of the search term sequence, and the labeling score includes a score for each search term in the search term sequence that is a core search term of the search request and a score for the search term that is a non-core search term of the search request.

[0172] Bidirectional long short-term memory network is also called Bi-LSTM layer. It is a time recursive neural network suitable for processing and predicting sequential information in ordered sequences. It can effectively solve the problem of long path dependency of traditional recurrent neural networks. Bi-LSTM model realizes bidirectional memory based on the usual long short-term memory model (LSTM only has forward memory, while Bi-LSTM can realize forward and reverse memory). See Figure 5A ,The Bi-LSTM model fully considers the sequential relationship between the context ,search terms and the search terms, and makes full use of the bidirectional ,information, so that the sequential information of the search term sequence can ,be fully extracted and the labeling result sequence containing the sequential ,information of the search term sequence can be outputted.

[0173] The bidirectional long short-term memory network includes a forward propagation layer, a reverse propagation layer and an output layer.

[0174] The forward propagation layer takes the feature vector set as input and the forward hidden vector as output, and the input of each neuron except the first neuron in the forward propagation layer includes the output of the previous neuron. Figure 5A As shown, the neurons in the forward propagation layer are represented by circles filled with oblique lines. Specifically, the input of each neuron in the forward propagation layer includes the feature vector of each search term and the output of the neuron in the previous forward propagation layer. Of course, the neurons in the forward propagation layer may also include other inputs, which is not limited by the present disclosure.

[0175] The reverse propagation layer takes the feature vector set as input and the reverse hidden vector as output, and the input of each neuron except the last neuron in the reverse propagation layer includes the output of the next neuron. Figure 5A As shown, the neurons in the back propagation layer are represented by gray-filled circles. Specifically, the input of each neuron in the back propagation layer includes the feature vector of each search term and the output of the neuron in the next back propagation layer. Of course, the neurons in the back propagation layer may also include other inputs, which is not limited by the present disclosure.

[0176] The output layer takes the forward hidden vector and the reverse hidden vector as input, and takes the labeling score and labeling result of the search word sequence as output, wherein the labeling result is obtained based on the labeling score.

[0177] For example, suppose the search term sequence is {Term1, Tern2, ..., Term n}, each search word corresponds to a 32-dimensional feature vector. Thus, the feature vector set composed of the feature vectors corresponding to each search word in the search word sequence is x=(x1, x2, ..., x n ). where x i A 32-dimensional vector representing the i-th search word in the search word sequence.

[0178] In this 32-dimensional feature vector, the first dimension is to characterize the importance of the search to the search request (e.g. Figure 2B The second dimension represents the association relationship between the search word and another search word in the search word sequence (e.g. Figure 2B The third dimension is the semantic information of the search term (e.g. Figure 2B The third feature vector of the semantic information of the search term B).

[0179] Figure 5A Only four neurons in the forward propagation layer and the reverse propagation layer are shown as examples, and those skilled in the art will appreciate that more or fewer neurons may be included.

[0180] For example, suppose that the forward propagation layer and the backward propagation layer each include 128 neurons. n ) is used as the input of each time step of the forward propagation layer to obtain the forward hidden vector is the output of the forward propagation layer at time step t (t is any value from 1 to n). n ) is used as the input of each time step of the reverse propagation layer to obtain the reverse hidden vector is the output of the back propagation layer at time step t (t is any value from 1 to n).

[0181] Optionally, the output layer takes the forward hidden vector and the reverse hidden vector as input and concatenates the hidden states output at each position by position. Get a complete 256-dimensional hidden vector. Figure 5A As shown, the neurons in the output layer are marked with white circles.

[0182] Optionally, the output layer may also include a linear layer, which performs linear processing on the 256-dimensional hidden vector to obtain a 2-dimensional vector (which respectively represents the probability that a certain search term is a core search term and the probability that a certain search term is a non-core search term) as the labeling score. For example, for the search term "A", an example of its corresponding two-dimensional vector may be {1.75, 0.5}, where 1.75 represents the score for classifying the search term "A" as a core search term, and 0.5 represents the score for classifying the search term "A" as a non-core search term. The output layer may then also include a dropout layer (random dropout layer), which may randomly make certain neurons in the output layer (such as certain neurons in the linear layer) not work, so as to prevent the labeling results from overfitting.

[0183] Optionally, the core search term recognition model 500 further includes a conditional random field network (hereinafter referred to as a CRF layer). The conditional random field network takes the annotation scores of the search term sequence as input and takes the accuracy scores of the annotation scores as output.

[0184] For example, the parameters of the CRF layer can be a 2-by-2 matrix A ij , which represents the transfer score from the i-1th label to the i-th label. Since the embodiment of the present application has only two labels, there are a total of 4 transfer scores, that is, the label of the current search term (i-th search term) is a core search term and the label of the previous search term (i-1th search term) of the current search term is a non-core search term transfer score, the label of the current search term (i-th search term) is a core search term and the label of the previous search term (i-1th search term) of the current search term is also a core search term transfer score, the label of the current search term (i-th search term) is a non-core search term and the label of the previous search term (i-1th search term) of the current search term is a core search term transfer score, the label of the current search term (i-th search term) is a non-core search term and the label of the previous search term (i-1th search term) of the current search term is also a non-core search term transfer score. Then, when marking a position, the previously marked label can be used.

[0185] For example, suppose that the bidirectional LSTM network is a pair x=(x1,x2,...,x n ) is labeled as y=(y1,y2,...,y n ). Then the accuracy score score(x,y) of the CRF layer for the label x equal to y can be obtained by formula (4).

[0186]

[0187] In formula (4), It means from the i-1th label y i-1 To the i-th label y i The transfer score, Represents x i The labeling result is equal to y i The score of (that is, the labeling result of the bidirectional long short-term memory network).

[0188] Furthermore, formula (4) can be normalized by Softmax (a normalization function, an example formula of which in the embodiment of the present disclosure is shown in the following formula (5)) to obtain a normalized score:

[0189]

[0190] where y′ refers to the pair x=(x1,x2,...,x n ) any kind of annotation result.

[0191] Optionally, during the training of the core search term recognition model, the core search term recognition model may use a maximized log-likelihood function (for example, the form of the log-likelihood function is shown in formula (6)) to determine whether the core search term recognition model is trained. z ), where z represents a feature vector set consisting of feature vectors corresponding to each sample search word in the sample search word sequence, and y z Indicates the correct labeling result of z.

[0192] log P(y z |z)=score(z,y z )-log(∑ y" exp(score(z,y"))) (6)

[0193] Where y" refers to any labeling result of z by the core search term recognition model. The value logP(y" obtained in formula (6) is z After |z) is maximized, it can be determined that the core search term recognition model training is completed.

[0194] Optionally, deleting the search terms as non-core search terms in the search term sequence further comprises: using the accuracy score of the annotation score and modifying the annotation result using a dynamic programming method. Optionally, the dynamic programming method may be a Viterbi dynamic programming algorithm. For example, for x=(x1, x2, ..., x n ) and solve formula (7) to obtain the labeling result y* that can maximize the accuracy score of the labeling score of x.

[0195] y * = argmax y′ score(x,y′) (7)

[0196] The argmax function is used to find the y' that maximizes score(x,y') (i.e., the solution y of formula (7)). * ).

[0197] For example, suppose that for x example =(x ex-1 ,x ex-2 ), the output of the bidirectional long short-term memory network is y bi-LSTM =({10,6},{4,5}), the label of this search term is a core search term and the label of the previous search term is a non-core search term, the transfer score is 3, the label of this search term is a core search term and the label of the previous search term is also a core search term, the transfer score is 8, the label of this search term is a non-core search term and the label of the previous search term is a core search term, the transfer score is 1, the label of this search term is a non-core search term and the label of the previous search term is also a non-core search term, the transfer score is 0.

[0198] Then we can obtain the following Table 6.

[0199] Table 6

[0200]

[0201] Therefore, for the case where there is only a bidirectional LSTM network in the core search term recognition model, label 1 has the highest score, so for x example , only the labeling result of the bidirectional long short-term memory network is {core search terms, non-core search terms}.

[0202] For the case where the core search term recognition model includes a bidirectional LSTM network and CRF, after the CRF layer modifies the annotation score of the bidirectional LSTM network, label 2 has the highest score. Therefore, for x example,The modified annotation result of the CRF layer is {core search term, core search term}.

[0203] When the number of search terms in the search term sequence is large, a dynamic programming algorithm can be used to find the optimal labeling result more quickly. For example, suppose for x example-2 =(x ex-1 ,x ex-2 , x ex-3 ), the output of the bidirectional long short-term memory network is y bi-LSTM =({0.10, 0.06}, {0.04, 0.05}, {0.10, 0.05}), the dynamic programming algorithm will only calculate the scores of {core search term, core search term, core search term} and {core search term, core search term, non-core search term}, but not the scores of other combinations (because the scores of other combinations will not be higher than the scores of {core search term, core search term, core search term} and {core search term, core search term, non-core search term}) to reduce the amount of calculation.

[0204] refer to, Figure 5B is a schematic diagram showing the process of obtaining training samples of the core search term recognition model 500 according to an embodiment of the present disclosure.

[0205] Specifically, the construction of the training sample set of the core search term recognition model includes: obtaining a historical search request sample set and a historical search term sequence corresponding to each historical search sample in the historical search request sample set, wherein the historical search term sequence includes multiple historical search terms and the number of search results corresponding to the historical search term sequence is zero.

[0206] For each historical search term sequence, determine at least one subset of the historical search term sequence; determine the historical number of clicks on the historical search results corresponding to the candidate search term sequence composed of each subset in the at least one subset; based on the historical number of clicks corresponding to each subset in the at least one subset, determine the labeling result of the historical search request sample, the labeling result indicating whether each historical search term in the historical search term sequence is a non-core historical search term for the historical search request.

[0207] For example, Figure 5B As shown, assuming that a historical search request sample is "ABCD", its corresponding historical search sequence is {"Term1", "Term2", "Term3", "Term4"}, and the search result corresponding to the historical search sequence is an empty set.

[0208] It is further assumed that the candidate search term sequences {"Term1", "Term2"}, {"Term2", "Term3"}, {"Term2", "Term3", "Term4"}, and {"Term1", "Term4"} of the historical search sequence {"Term1", "Term2", "Term3"}, {"Term2", "Term3", "Term4"} have all been searched. Among them, the search results corresponding to the candidate search term sequences {"Term1", "Term2"}, {"Term2", "Term3"}, {"Term2", "Term3", "Term4"} are not an empty set. The search results corresponding to the candidate search term sequence {"Term1", "Term4"} are an empty set.

[0209] Among them, the search result of the candidate search term sequence {"Term1", "Term2"} was clicked once. The search result of the candidate search term sequence {"Term2", "Term3"} was clicked 4 times. The search result of the candidate search term sequence {"Term2", "Term3", "Term4"} was clicked 9 times. The above historical click counts can be data collected 180 days before training the core search term recognition model.

[0210] The search request processing device can select the candidate search term sequence with the highest historical click count on the search results as a pairing sample, that is, the search request processing device can label the historical search sequence {"Term1", "Term2", "Term3", "Term4"} as {non-core search term, core search term, core search term, core search term} accordingly.

[0211] Therefore, the core search term recognition model of the embodiment of the present disclosure can efficiently and accurately identify and delete unnecessary terms in the search request to process the search request, so that the search engine can return more and more accurate search results. Compared with the method of randomly deleting a part of the search terms in the search request, the search request processing method of the embodiment of the present disclosure can retain the core content in the search request and improve the number and quality of search results that can be recalled by the search request.

[0212] Fig. 6A is a flowchart illustrating a method of performing a search according to an embodiment of the present disclosure. Figure 6B It is a schematic diagram showing an interface for displaying search results according to an embodiment of the present disclosure. Figure 6C FIG. 6 is a structural diagram showing a device 60 for displaying search results according to an embodiment of the present disclosure.

[0213] See also FIG. 6A to FIG. 6CAccording to the method 600 for displaying search results of the embodiment of the present disclosure, the method 600 can be performed by a device 60 for displaying search results. The device 60 for displaying search results includes a display screen and a processor.

[0214] For example, refer to Fig. 6A After the user enters a search request in the online music player application and clicks search, the search request will enter the search request rewrite (Query ReWrite) module to perform a series of rewrite operations: Traditional and Simplified Chinese conversion, synonym conversion, error correction and core word recognition model processing. After the search terms in the search request have been processed through Traditional and Simplified Chinese conversion, synonym conversion and error correction, the search terms have become relatively standardized. The disclosed embodiment adds core word recognition model processing to the last stage of the search request rewrite module, obtains the updated search term sequence, and performs normal recall, sorting and reordering processes on the search results of the search term sequence, and finally presents the music search results in the music player application.

[0215] For example, the method 600 for displaying search results includes steps S601 to S603.

[0216] In step S601, a search page is displayed, wherein the search page includes a search request input box, wherein the search request input box is used to obtain a search request input by a user.

[0217] In step S602, a search request input in the search request input box is received to obtain a search request input by a user, wherein the search request corresponds to a first search word sequence.

[0218] In step S603, a search result display box is displayed, wherein the search result display box displays search results corresponding to a second search term sequence, wherein the second search term sequence is a subset of the first search term sequence and a difference between the first search term sequence and the second search term sequence includes non-core search terms, wherein a click-through rate of the search results corresponding to the first search term sequence is lower than a click-through rate of the search results corresponding to the second search term sequence.

[0219] The click-through rate of search results indicates the probability of users clicking on search results. For example, if the search results corresponding to the search word sequence include 5 links, and 5 out of 10 users who use the search sequence click on one of the links, then the click-through rate of the search results corresponding to the search word sequence is 5 / 10=0.5.

[0220] Optionally, the search result display box may be displayed on the search page or on other search pages.

[0221] like Figure 6BAs shown, the first search term sequence {"Term1", "Term2", "Term3", "Term4"} has only one search result, which is "MV: Term1; Singer: Term3; Lyrics include: Term4, Term2". However, this search result is not what the user wants.

[0222] There are two search results corresponding to the second search term sequence {"Term2", "Term3", "Term4"}, and the user clicks on one of the results, which proves that the search result required by the user is returned.

[0223] Assume that only one user enters the search term request "Term1 Term2 Term3 Term4". In this example, the click-through rate of the search results corresponding to the first search term sequence is 0, while the click-through rate of the search results corresponding to the second search term sequence is 1. The click-through rate of the search results corresponding to the first search term sequence is lower than the click-through rate of the search results corresponding to the second search term sequence.

[0224] Optionally, the device 60 for displaying search results may include a display screen and a processor, wherein the display screen is configured to: display a search page, the search page includes a search request input box, the search request input box is used to obtain a search request input by a user, the search request corresponds to a first search term sequence; display a search result display box on the search page, the search result display box displays search results corresponding to a second search term sequence, the second search term sequence is a subset of the first search term sequence and the difference between the first search term sequence and the second search term sequence includes non-core search terms. The click-through rate of the search results corresponding to the first search term sequence is lower than the click-through rate of the search results corresponding to the second search term sequence.

[0225] Therefore, the embodiments of the present disclosure provide a method and device for displaying search results, which utilizes artificial intelligence technology to identify and delete unnecessary words in search requests to process search requests, thereby enabling the search engine to return more and more accurate search results. Compared with the method of randomly deleting a portion of the search words in the search request, the search request processing method can retain the core content in the search request and improve the quantity and quality of search results that can be recalled by the search request. The embodiments of the present disclosure use the click-through rate of the search results as one of the indicators for measuring the quality of the search results, thereby enabling the rewritten search request to return search results that can obtain a higher click-through rate. As a result, the process of users repeatedly trying to search requests can be reduced, thereby improving the user experience.

[0226] Figure 7 is a structural diagram showing an apparatus 70 for search request processing according to an embodiment of the present disclosure.

[0227] The device 70 for processing search requests includes: a feature extraction module 71, a bidirectional long short-term memory network 72 and a conditional random field network 73.

[0228] The feature extraction module 71 is configured to: based on the search request, obtain a search term sequence corresponding to the search request, the search term sequence including multiple search terms; for each search term in the search term sequence, calculate a feature vector corresponding to the search term based on the importance of the search term to the search request, the association relationship between the search term and other search terms in the search term sequence, and at least one item of the semantic information of the search term.

[0229] Among them, the calculation of the feature vector corresponding to the search term also includes: determining a historical search request set consisting of historical search requests including the search term; calculating the historical number of clicks on the historical search results corresponding to each historical search request in the historical search request set, and the total number of historical clicks on the historical search results corresponding to all historical search requests in the historical search request set; calculating the click ratio of each historical search request in the historical search request set, the click ratio being the ratio of the historical number of clicks on the historical search results corresponding to the historical search request to the total number of historical clicks; calculating the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set based on the historical number of clicks on the historical search results corresponding to each historical search request in the historical search request set; and calculating a first feature vector representing the importance of the search term based on the click ratio and the similarity.

[0230] Among them, the calculation of the feature vector corresponding to the search term also includes: determining a first number of historical search requests including the search term; determining a second number of historical search requests including the search term and the other search term; based on the first number and the second number, calculating a second feature vector representing the association relationship between the search term and other search terms in the search term sequence.

[0231] Among them, the input of the bidirectional long short-term memory network 72 is a feature vector set composed of feature vectors corresponding to each search word in the search word sequence, and the output of the bidirectional long short-term memory network is the labeling result of the search word sequence, and the labeling result indicates whether each search word in the search word sequence is a non-core search word of the search request.

[0232] Among them, the bidirectional long short-term memory network 72 includes a forward propagation layer, a reverse propagation layer and an output layer, wherein the forward propagation layer takes the feature vector set as input and the forward hidden vector as output, and the input of each neuron except the first neuron in the forward propagation layer includes the output of the previous neuron; the reverse propagation layer takes the feature vector set as input and the reverse hidden vector as output, and the input of each neuron except the last neuron in the reverse propagation layer includes the output of the next neuron; the output layer takes the forward hidden vector and the reverse hidden vector as input, and takes the labeling score and labeling result of the search word sequence as output, and the labeling result is obtained based on the labeling score.

[0233] The conditional random field network 73 takes the annotation scores of the search word sequence as input and takes the accuracy scores of the annotation scores as output.

[0234] Therefore, the embodiment of the present disclosure provides a device 70 for processing search requests, which uses artificial intelligence technology to identify and delete unnecessary words in the search request to process the search request, so that the search engine can return more and more accurate search results. The device 70 for processing search requests can retain the core content in the search request and improve the number and quality of search results that can be recalled by the search request. The embodiment of the present disclosure uses the click-through rate of the search results as one of the indicators to measure the quality of the search results, so that the rewritten search request can return search results that can obtain a higher click-through rate. As a result, the process of users repeatedly trying to search requests can be reduced, and the user experience is improved.

[0235] According to yet another aspect of the present disclosure, a search request processing device is provided for processing a search request. Figure 8 A schematic diagram of a search request processing device 2000 according to an embodiment of the present disclosure is shown.

[0236] like Figure 8 As shown, the search request processing device 2000 may include one or more processors 2010 and one or more memories 2020. The memory 2020 stores a computer-readable code, and when the computer-readable code is executed by the one or more processors 2010, the search request processing method described above may be executed.

[0237] The processor in the embodiments of the present disclosure may be an integrated circuit chip having the ability to process signals. The processor may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application may be implemented or executed. The general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc., and may be an X86 architecture or an ARM architecture.

[0238] In general, various example embodiments of the present disclosure may be implemented in hardware or dedicated circuits, software, firmware, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software that may be executed by a controller, microprocessor, or other computing device. When various aspects of the embodiments of the present disclosure are illustrated or described as block diagrams, flow charts, or using some other graphical representation, it will be understood that the blocks, devices, systems, techniques, or methods described herein may be implemented in hardware, software, firmware, dedicated circuits or logic, general purpose hardware or controllers or other computing devices, or some combination thereof as non-limiting examples.

[0239] For example, the method or device according to the embodiment of the present disclosure may also be Fig. 9 The architecture of the computing device 3000 shown in FIG. Fig. 9 As shown, the computing device 3000 may include a bus 3010, one or more CPUs 3020, a read-only memory (ROM) 3030, a random access memory (RAM) 3040, a communication port 3050 connected to a network, an input / output component 3060, a hard disk 3070, etc. The storage device in the computing device 3000, such as the ROM 3030 or the hard disk 3070, may store various data or files used for processing and / or communication of the method for determining the driving risk of a vehicle provided by the present disclosure, as well as program instructions executed by the CPU. The computing device 3000 may also include a user interface 3080. Of course, Figure 8 The architecture shown is only exemplary and can be omitted according to actual needs when implementing different devices. Fig. 9 One or more components of a computing device are shown.

[0240] According to yet another aspect of the present disclosure, a computer-readable storage medium is provided. Fig.10 A schematic diagram 4000 of a storage medium according to the present disclosure is shown.

[0241] like Fig.10As shown, the computer storage medium 4020 stores computer readable instructions 4010. When the computer readable instructions 4010 are executed by the processor, the search request processing method according to the embodiment of the present disclosure described with reference to the above figures can be executed. The computer readable storage medium in the embodiment of the present disclosure can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. The non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM) or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous connection dynamic random access memory (SLDRAM) and direct memory bus random access memory (DR RAM). It should be noted that memory of the methods described herein is intended to include, but is not limited to, these and any other suitable types of memory. It should be noted that memory of the methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0242] The embodiments of the present disclosure also provide a computer program product or a computer program, which includes a computer instruction stored in a computer-readable storage medium. The processor of the computer device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the computer device executes the search request processing method according to the embodiments of the present disclosure.

[0243] According to another aspect of the present disclosure, a search request processing device is provided. The search request processing device includes: a search term sequence acquisition module, configured to acquire a search term sequence corresponding to the search request based on the search request, wherein the search term sequence includes multiple search terms; a feature vector calculation module, configured to: for each search term in the search term sequence, based on the importance of the search term to the search request, the association relationship between the search term and other search terms in the search term sequence, and at least one of the semantic information of the search term, calculate the feature vector corresponding to the search term; a non-core search term determination module, configured to determine whether the search term is a non-core search term of the search request based on the feature vector corresponding to each search term in the search term sequence; a search term sequence update module, configured to: delete the search term as a non-core search term in the search term sequence to generate an updated search term sequence; wherein the click-through rate of the search results corresponding to the search term sequence is lower than the click-through rate of the search results corresponding to the updated search term sequence.

[0244] It should be noted that the flowcharts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, a program segment, or a part of a code, and the module, program segment, or a part of the code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0245] In general, various example embodiments of the present disclosure may be implemented in hardware or dedicated circuits, software, firmware, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software that may be executed by a controller, microprocessor, or other computing device. When various aspects of the embodiments of the present disclosure are illustrated or described as block diagrams, flow charts, or using some other graphical representation, it will be understood that the blocks, devices, systems, techniques, or methods described herein may be implemented in hardware, software, firmware, dedicated circuits or logic, general purpose hardware or controllers or other computing devices, or some combination thereof as non-limiting examples.

[0246] The exemplary embodiments of the present disclosure described in detail above are merely illustrative and not restrictive. It should be understood by those skilled in the art that various modifications and combinations may be made to these embodiments or their features without departing from the principles and spirit of the present disclosure, and such modifications should fall within the scope of the present disclosure.

Claims

1. A search request processing method, comprising: Based on the search request, obtaining a search word sequence corresponding to the search request, wherein the search word sequence includes a plurality of search words; For each search word in the search word sequence, based on at least one of the importance of the search word to the search request, the association relationship between the search word and other search words in the search word sequence, and the semantic information of the search word, calculate a feature vector corresponding to the search word; Determining whether each search word in the search word sequence is a non-core search word of the search request based on a feature vector corresponding to the search word; and Deleting search words that are non-core search words from the search word sequence to generate an updated search word sequence, wherein the calculating the feature vectors corresponding to the search words further includes: Determine a historical search request set consisting of historical search requests including the search term; Calculate the number of historical clicks on the historical search results corresponding to each historical search request in the historical search request set, and the total number of historical clicks on the historical search results corresponding to all historical search requests in the historical search request set; Calculating a click ratio of each historical search request in the historical search request set, where the click ratio is a ratio of the number of historical clicks on the historical search results corresponding to the historical search request to the total number of historical clicks; Calculating the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set based on the historical click count of the historical search results corresponding to each historical search request in the historical search request set; Based on the click ratio and the similarity, a first feature vector representing the importance of the search term is calculated.

2. The search request processing method according to claim 1, wherein: The calculating the feature vector corresponding to the search term further includes: determining a first number of historical search requests including the search term; determining a second number of historical search requests including the search term and other search terms; Based on the first quantity and the second quantity, a second feature vector representing the association relationship between the search word and other search words in the search word sequence is calculated.

3. The search request processing method according to claim 1, wherein: Determining whether at least one search word in the search word sequence is a non-core search word of the search request further includes: Determining whether at least one search word in the search word sequence is a non-core search word of the search request by using a core search word identification model; The input of the core search word recognition model is the feature vector corresponding to each search word in the search word sequence, and the output is the judgment result of whether each search word in the search word sequence is a core search word; The core search term model incorporates historical click-through rates of historical search request samples during the training process.

4. The search request processing method according to claim 3, wherein: The construction of the training sample set of the core search term recognition model includes: Acquire a historical search request sample set and a historical search word sequence corresponding to each historical search sample in the historical search request sample set, wherein the historical search word sequence includes a plurality of historical search words and the number of search results corresponding to the historical search word sequence is zero; For each historical search term sequence, determining at least a subset of the historical search term sequence; Determine the historical number of clicks on the historical search results corresponding to the candidate search term sequence composed of each subset in the at least one subset; Based on the number of historical clicks corresponding to each subset in the at least one subset, a labeling result of the historical search request sample is determined, wherein the labeling result indicates whether each historical search word in the historical search word sequence is a non-core historical search word for the historical search request.

5. The search request processing method according to claim 3, wherein: The core search term recognition model includes a bidirectional long short-term memory network, the input of the bidirectional long short-term memory network is a feature vector set consisting of feature vectors corresponding to each search term in the search term sequence, and the output of the bidirectional long short-term memory network is a labeling score of the search term sequence, the labeling score includes a score of each search term in the search term sequence being a core search term of the search request and a score of the search term being a non-core search term of the search request; The bidirectional long short-term memory network includes a forward propagation layer, a reverse propagation layer and an output layer, wherein: The forward propagation layer takes the feature vector set as input and the forward hidden vector as output, and the input of each neuron except the first neuron in the forward propagation layer includes the output of the previous neuron; The reverse propagation layer takes the feature vector set as input and takes the reverse hidden vector as output, and the input of each neuron except the last neuron in the reverse propagation layer includes the output of the next neuron; The output layer takes the forward hidden vector and the reverse hidden vector as input, and takes the labeling score and labeling result of the search word sequence as output, wherein the labeling result is obtained based on the labeling score.

6. The search request processing method according to claim 5, wherein: The core search word recognition model includes a conditional random field network, which takes the annotation scores of the search word sequence as input and takes the accuracy scores of the annotation scores as output; The deleting of the search terms that are non-core search terms in the search term sequence further comprises: using the accuracy score of the annotation score and a dynamic programming method to modify the annotation result.

7. The search request processing method according to claim 1, wherein: The calculating the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set further comprises: For any one of the historical search request sets, Query i , using formula (1) Calculate historical search request Query i and another historical search request Query in the historical search request set j Similarity between Among them, doc x Query for historical search requests i Return to the historical search results D i and historical search requests Query j Return to the historical search results D j The intersection of ij Any search result in Query for historical search requests i About doc x The total number of historical clicks, Query for historical search requests j About doc x The total number of historical clicks, x is doc x At the intersection D ij The index in .

8. The search request processing method according to claim 7, wherein: The calculating of the sub-feature vector representing the importance of the search term based on the click ratio and the similarity further includes: For the search term Term k , using formula (2) Calculate the search term Term k Search Query in history i Importance score in in Indicates all the search terms that contain the term k Historical search requests Query j A collection of Representing a collection The number of elements, and the historical search request Query i Return to the historical search results D i and historical search requests Query j Return to the historical search results D j The intersection of ij is not an empty set; Using formula (3) Calculate the representation of the search term Term k The importance of the sub-eigenvector in is the click ratio, G k Indicates all the search terms that contain the term k Historical search requests Query i A collection of .

9. A method for displaying search results, comprising: Displaying a search page, the search page including a search request input box; receiving a search request input in the search request input box, the search request corresponding to a first search term sequence; as well as displaying a search result display box, wherein the search result display box displays search results corresponding to a second search word sequence, wherein the second search word sequence is a subset of the first search word sequence and a difference between the first search word sequence and the second search word sequence includes a non-core search word, The second search word sequence is generated according to the method described in any one of claims 1-8.

10. An apparatus for processing a search request, comprising: Feature extraction module, bidirectional long short-term memory network and conditional random field network, among which, The feature extraction module is configured as follows: Based on the search request, obtaining a search word sequence corresponding to the search request, wherein the search word sequence includes a plurality of search words; For each search word in the search word sequence, based on at least one of the importance of the search word to the search request, the association relationship between the search word and other search words in the search word sequence, and the semantic information of the search word, calculate a feature vector corresponding to the search word; The input of the bidirectional long short-term memory network is a feature vector set consisting of feature vectors corresponding to each search word in the search word sequence, and the output of the bidirectional long short-term memory network is a labeling score of the search word sequence, wherein the labeling score includes a score of each search word in the search word sequence being a core search word of the search request and a score of the search word being a non-core search word of the search request; The conditional random field network takes the labeling score of the search word sequence as input and takes the accuracy score of the labeling score as output. The step of calculating the feature vector corresponding to the search term further includes: Determine a historical search request set consisting of historical search requests including the search term; Calculate the number of historical clicks on the historical search results corresponding to each historical search request in the historical search request set, and the total number of historical clicks on the historical search results corresponding to all historical search requests in the historical search request set; Calculating a click ratio of each historical search request in the historical search request set, where the click ratio is a ratio of the number of historical clicks on the historical search results corresponding to the historical search request to the total number of historical clicks; Calculating the similarity between each historical search request in the historical search request set and other historical search requests in the historical search request set based on the historical click count of the historical search results corresponding to each historical search request in the historical search request set; Based on the click ratio and the similarity, a first feature vector representing the importance of the search term is calculated.

11. The apparatus for search request processing according to claim 10, wherein: The bidirectional long short-term memory network includes a forward propagation layer, a reverse propagation layer and an output layer, wherein: The forward propagation layer takes the feature vector set as input and the forward hidden vector as output, and the input of each neuron except the first neuron in the forward propagation layer includes the output of the previous neuron; The reverse propagation layer takes the feature vector set as input and takes the reverse hidden vector as output, and the input of each neuron except the last neuron in the reverse propagation layer includes the output of the next neuron; The output layer takes the forward hidden vector and the reverse hidden vector as input, and takes the labeling score and the labeling result of the search word sequence as output, wherein the labeling result is obtained based on the labeling score.

12. A search request processing device, comprising: one or more processors; and One or more memories, wherein a computer executable program is stored in the memory, and when the computer executable program is executed by the processor, the method of any one of claims 1-8 is executed.

13. A device for displaying search results, comprising a display screen and a processor, wherein: The display screen is configured as follows: displaying a search page, the search page comprising a search request input box, the search request input box being used to obtain a search request input by a user, the search request corresponding to a first search word sequence; displaying a search result display box, wherein the search result display box displays search results corresponding to a second search word sequence, wherein the second search word sequence is a subset of the first search word sequence and a difference between the first search word sequence and the second search word sequence includes a non-core search word, The second search word sequence is generated according to the method described in any one of claims 1-8.

14. A computer-readable storage medium having computer instructions stored thereon, wherein the computer instructions, when executed by a processor, implement the method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Data query method and device and readable medium

    CN109947902A