Searching method and device, electronic equipment and computer storage medium
By combining the initial search results and object attribute information of the first and second data sets in the search method, the click-through rate is recalculated, and the problem of inaccurate click-through rate calculation in the prior art is solved, and more accurate personalized search results are achieved.
Patent Information
- Application Number
- CN202410124762.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-29
- Publication Date
- 2025-07-29
AI Technical Summary
Existing search methods cannot accurately calculate the click-through rates of the object sequence, resulting in inaccurate personalized search results.
By receiving the search request from the client, the search information and object attribute information are determined, the initial search results are extracted from the first and second data sets respectively, and feature extraction and fusion are performed based on these results and object attribute information, the click-through rate is recalculated, and the target search results are finally determined.
By combining context information, the accuracy of click-through rate prediction is improved, so that the target search results can better meet the needs of users.
Smart Images

Figure CN120386915A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of artificial intelligence technology, and more particularly, to a search method, apparatus, device, medium, and program product. Background Art
[0002] With the development of artificial intelligence technology, more and more e-commerce platforms apply artificial intelligence technology to provide personalized search results for users in order to improve competitiveness and enhance user experience.
[0003] In the prior art, the search method usually calculates the click-through rate of each object sequence based on a machine learning model in combination with the user information sequence and the object information sequence, and pushes suitable target objects for the user to obtain personalized search results.
[0004] In the process of implementing the concept of the present disclosure, the inventors found that there are at least the following problems in the prior art: The existing search method cannot accurately calculate the click-through rate of each object sequence. Summary of the Invention
[0005] In view of this, the present disclosure provides a search method, apparatus, device, medium, and program product.
[0006] One aspect of the present disclosure provides a search method, including: in response to receiving a search request sent by a client, determining search information based on the search request; determining a first initial search result corresponding to a first data set and a second initial search result corresponding to a second data set based on the search information and object attribute information, where the data sources of the first data set and the second data set are different; determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information; and determining a target search result based on the third initial search result and the second initial search result.
[0007] According to an embodiment of the present disclosure, determining a first initial search result corresponding to a first data set based on the above search information and object attribute information includes: extracting features from the above search information and the above object attribute information to obtain search features; extracting features from multiple first data in the above first data set to obtain first data features; fusing the above search features and the above first data features to obtain first fusion features; and based on the above first fusion features, obtaining the click-through rate of each of the above multiple first data in the above first data set; determining the above first initial search result based on the click-through rate of each of the above multiple first data, where the above first initial search result includes multiple first initial target data and the click-through rate of each of the above multiple first initial target data, and the above multiple first initial target data are determined from the above multiple first data.
[0008] According to an embodiment of the present disclosure, determining a second initial search result corresponding to a second data set based on the above search information and object attribute information includes: extracting features from the above search information and the above object attribute information to obtain search features; extracting features from multiple second data in the above second data set to obtain second data features; fusing the above search features and the above second data features to obtain second fusion features; and based on the above second fusion features, obtaining the click-through rate of each of the above multiple second data in the above second data set; determining the above second initial search result based on the click-through rate of each of the above multiple second data, where the above second initial search result includes multiple second target data and the click-through rate of each of the above multiple second target data, and the above multiple second target data are determined from the above multiple second data.
[0009] According to an embodiment of the present disclosure, determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information includes: extracting features from the search information and the object attribute information to obtain search features; extracting features from the first initial search result to obtain third data features; extracting features from the second initial search result to obtain fourth data features; extracting features from multiple first data in the first data set to obtain first data features; fusing the search features, the third data features, the fourth data features, and the first data features to obtain target fusion features; and obtaining the target click-through rate of each of the multiple second data in the first data set based on the target fusion features; determining the third initial search result based on the target click-through rate of each of the multiple second data, where the third initial search result includes multiple first target data and the target click-through rate of each of the multiple first target data, and the multiple first target data are determined from the multiple first data.
[0010] According to an embodiment of the present disclosure, determining a target search result based on the third initial search result and the second initial search result includes: sorting the multiple first target data and the multiple second target data based on the target click-through rate of each of the multiple first target data in the third initial search result and the click-through rate of each of the multiple second target data in the second initial search result to obtain the target search result.
[0011] According to an embodiment of the present disclosure, the method is applied to a server, and the server includes a first processing module, a second processing module, and a third processing module; the method further includes: in response to receiving the first initial search result sent by the first processing module, storing the first initial search result in a predetermined storage space; in response to receiving the second initial search result sent by the second processing module, obtaining the first initial search result from the predetermined storage space; and sending the first initial search result, the second initial search result, the search information, and the object attribute information to the third processing module, so that the third processing module performs an operation of determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information.
[0012] According to an embodiment of the present disclosure, the above method further includes: in response to receiving the above third initial search result sent by the above third processing module, obtaining a first page component that matches the above first initial search result through a first call interface; in response to receiving the above second initial search result sent by the above first processing module, obtaining a second page component that matches the above second initial search result through a second call interface; generating a page component set based on the above first page component and the above second page component; and sending the above page component set and the above target search result to the above client.
[0013] According to an embodiment of the present disclosure, the above method further includes: determining object identification information based on the above search request; and determining the above object attribute information based on the above object identification information, where the above object attribute information includes object historical behavior information.
[0014] Another aspect of the present disclosure provides a search device, including: a first determination module, configured to determine search information based on the above search request in response to receiving a search request sent by a client; a second determination module, configured to determine a first initial search result corresponding to a first data set and a second initial search result corresponding to a second data set based on the above search information and object attribute information; a third processing module, configured to determine a third initial search result corresponding to the above first data set based on the above first initial search result, the above second initial search result, the above search information, and the above object attribute information; and a fourth processing module, configured to determine a target search result based on the above third initial search result and the above second initial search result.
[0015] Another aspect of the present disclosure provides an electronic device, including: one or more processors; a memory, configured to store one or more programs, where when the above one or more programs are executed by the above one or more processors, the above one or more processors are caused to implement the above search method.
[0016] Another aspect of the present disclosure provides a computer-readable storage medium, storing computer-executable instructions, where the above instructions are used to implement the above search method when executed.
[0017] Another aspect of the present disclosure provides a computer program product, where the above computer program product includes computer-executable instructions, and the above instructions are used to implement the above search method when executed.
[0018] According to an embodiment of the present disclosure, in response to receiving a search request sent by a client, based on the above search request, search information is determined; based on the above search information and object attribute information, a first initial search result corresponding to a first data set and a second initial search result corresponding to a second data set are determined; based on the above first initial search result, the above second initial search result, the above search information, and the above object attribute information, a third initial search result corresponding to the above first data set is determined; and based on the above third initial search result and the above second initial search result, a target search result is determined. Through the above search method, the first data set is processed twice based on the first initial search result and the second initial search result, and the click-through rate of the first data in the first data set is recalculated to obtain the third initial search result. That is, the third initial search result is a result that combines context such as the second initial search result information, and a relatively accurate click-through rate is obtained. Finally, the target search result is determined according to the second initial search result and the third initial search result, and the obtained target search result can better meet the needs of users. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, the above and other objects, features, and advantages of the present disclosure will become clearer. In the drawings:
[0020] Figure 1 An exemplary system architecture in which the search method and apparatus of the present disclosure can be applied is schematically shown; [[ID=!0]]
[0021] Figure 2 A flowchart of the search method according to an embodiment of the present disclosure is schematically shown;
[0022] Figure 3 A flowchart of determining the first initial search result according to an embodiment of the present disclosure is schematically shown;
[0023] Figure 4 A flowchart of determining the third initial search result according to an embodiment of the present disclosure is schematically shown;
[0024] Figure 5 A schematic diagram of the network structure of the search result determination model according to an embodiment of the present disclosure is schematically shown;
[0025] Figure 6 A schematic diagram of the process of the search result determination method according to an embodiment of the present disclosure is schematically shown;
[0026] Figure 7 A flowchart of the page generation method according to an embodiment of the present disclosure is schematically shown;
[0027] Figure 8 A system architecture diagram of the page generation method is schematically shown;
[0028] Figure 9 Schematically shows a block diagram of a search device according to an embodiment of the present disclosure; and
[0029] Figure 10 Schematically shows a block diagram suitable for implementing the search method 1000 according to an embodiment of the present disclosure. Detailed implementation manners
[0030] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are merely exemplary and are not intended to limit the scope of the present disclosure. In the following detailed description, for the sake of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, obviously, one or more embodiments can also be implemented without these specific details. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessarily confusing the concepts of the present disclosure.
[0031] The terms used herein are merely for describing specific embodiments and are not intended to limit the present disclosure. The terms "including", "comprising", etc. used herein indicate the presence of the described features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0032] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.
[0033] In the case of using expressions such as "at least one of A, B, and C", generally, it should be interpreted according to the meaning commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include, but is not limited to, a system having only A, only B, only C, having A and B, having A and C, having B and C, and / or having A, B, and C, etc.).
[0034] In the embodiments of the present disclosure, with regard to the collection, update, analysis, processing, use, transmission, provision, disclosure, storage, etc. of the data involved (for example, including but not limited to user personal information), all comply with the provisions of relevant laws and regulations, are used for legal purposes, and do not violate public order and good customs. In particular, necessary measures are taken for user personal information to prevent illegal access to user personal information data and to maintain the security of user personal information and network security.
[0035] In the embodiments of the present disclosure, before obtaining or collecting user personal information, the authorization or consent of the user is obtained.
[0036] In the prior art, search methods usually rely on machine learning models. By combining user information sequences and object information sequences, the click-through rates of each object sequence are calculated to obtain personalized search results. However, due to the cold start problem in user information sequences and the relatively weak comparison relationships among object information sequences, the click-through rates of each object sequence cannot be accurately calculated. Therefore, the personalized search results obtained only from user information sequences and object information sequences do not fully meet the needs of users. It is necessary to introduce context information in the search results into the search method to calculate more accurate click-through rates for each object sequence.
[0037] Embodiments of the present disclosure provide a search method, a search device, an electronic device, a readable storage medium, and a computer program product. The method includes: in response to receiving a search request sent by a client, determining search information based on the search request; determining a first initial search result corresponding to a first data set and a second initial search result corresponding to a second data set based on the search information and object attribute information; determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information; and determining a target search result based on the third initial search result and the second initial search result.
[0038] Figure 1 Exemplary system architecture 100 to which the search method according to an embodiment of the present disclosure can be applied is schematically shown. It should be noted that, Figure 1 The illustration is only an example of a system architecture to which embodiments of the present disclosure can be applied, to help those skilled in the art understand the technical content of the present disclosure. However, it does not mean that embodiments of the present disclosure cannot be used in other devices, systems, environments, or scenarios.
[0039] As Figure 1 shown, the system architecture 100 according to this embodiment may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used as a medium to provide a communication link between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired and / or wireless communication links, etc.
[0040] Users may use the terminal devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send messages, etc. Various communication client applications may be installed on the terminal devices 101, 102, 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, and / or social platform software, etc. (only as examples).
[0041] The terminal devices 101, 102, and 103 can be various electronic devices with a display screen and supporting web browsing, including but not limited to smartphones, tablet computers, laptop portable computers, desktop computers, and so on.
[0042] The server 105 can be a server that provides various services. For example, it can be a background management server (only as an example) that supports the websites browsed by users using the terminal devices 101, 102, and 103. The background management server can analyze and process data such as user requests received, and feedback the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.
[0043] It should be noted that the search method provided by the embodiments of the present disclosure can generally be executed by the server 105. Correspondingly, the search system provided by the embodiments of the present disclosure can generally be set in the server 105. The search method provided by the embodiments of the present disclosure can also be executed by a server or a server cluster different from the server 105 and capable of communicating with the terminal devices 101, 102, 103 and / or the server 105. Correspondingly, the search system provided by the embodiments of the present disclosure can also be set in a server or a server cluster different from the server 105 and capable of communicating with the terminal devices 101, 102, 103 and / or the server 105. Or, the search method provided by the embodiments of the present disclosure can also be executed by the terminal devices 101, 102, or 103, or can also be executed by other terminal devices different from the terminal devices 101, 102, or 103. Correspondingly, the search system provided by the embodiments of the present disclosure can also be set in the terminal devices 101, 102, or 103, or set in other terminal devices different from the terminal devices 101, 102, or 103.
[0044] For example, a user can use the terminal devices 101, 102, or 103 to access the client, and perform a search operation in the client. The client generates a search request and sends it to the server 105 through the network 104. After the server 105 finishes processing the search request, it sends the processing result to the client through the network 104, and the user interacts with the client through the terminal devices 101, 102, or 103.
[0045] It should be understood that Figure 1 the numbers of the terminal devices, the network, and the server in
[0046] Figure 2 are merely illustrative. According to the implementation requirements, there can be any number of terminal devices, networks, and servers.
[0047] As Figure 2As shown, the method includes operations S210 to S240.
[0048] In operation S210, in response to receiving a search request sent by a client, based on the search request, search information is determined.
[0049] According to an embodiment of the present disclosure, the search method provided in this embodiment may be a process in which a user inputs keywords through a client, the client generates a search request and sends the keywords to the server to attempt to obtain a return result. The search information may be the user intention determined by the server in the search request and is used for the search method.
[0050] According to an embodiment of the present disclosure, when a user performs a search operation through a client, after the client sends a search request to the server according to the user's search operation, the server receives the search request and extracts search information from the search request for searching for search results that match the search information.
[0051] For example, the search information may include search keywords, search time, and other filtering conditions defined by the user, etc.
[0052] In operation S220, based on the search information and object attribute information, a first initial search result corresponding to the first data set and a second initial search result corresponding to the second data set are determined.
[0053] According to an embodiment of the present disclosure, the data sources of the first data set and the second data set are different. The data source of the first data set may be a target commodity database, such as an advertisement database, etc. The data source of the second data set may be a general commodity database.
[0054] According to an embodiment of the present disclosure, the object attribute information is information related to the user who performs a search through the client, and may include user portraits and user behavior information, etc. Among them, the user portrait may include user identity information and user interest information, and the user behavior information may include behavior data generated by the user during the use of the client. The first data set may include commodity data of multiple target commodities in the target commodity database, and the second data set may include commodity data of multiple general commodities in the general commodity database. According to an embodiment of the present disclosure, the first initial search result may be the target result searched by the server from the first data set according to the search information and object attribute information. The second initial search result may be the natural result searched by the server from the second data set according to the search information and object attribute information.
[0055] According to an embodiment of the present disclosure, after the server extracts search information from a search request, it determines the user who conducts the search according to the search request, queries and analyzes the relevant information of the user from a database, and obtains object attribute information. According to the search information and the object attribute information, the first data set and the second data set are respectively searched to obtain a first initial search result and a second initial search result.
[0056] For example, the search information extracted from the search request contains the keyword "computer", and the corresponding user is user A. Then, the historical relevant information of user A is queried and analyzed in the database. It is analyzed that the price range of the computers purchased or browsed by user A is 5000 - 8000 yuan. Then, computers with a price range of 4000 - 10000 yuan are respectively searched in the first data set and the second data set to obtain a first initial search result and a second initial search result.
[0057] In operation S230, based on the first initial search result, the second initial search result, the search information, and the object attribute information, a third initial search result corresponding to the first data set is determined.
[0058] According to an embodiment of the present disclosure, the third initial search result may be the target result searched by the server from the first data set according to the first initial search result, the second initial search result, the search information, and the object attribute information.
[0059] According to an embodiment of the present disclosure, after obtaining the first initial search result and the second initial search result, the server searches the first data set again according to the first initial search result, the second initial search result, the search information, and the object attribute information to obtain the third initial search result.
[0060] According to an embodiment of the present disclosure, because there is a context relationship between the first initial search result and the second initial search result, by combining the first initial search result and the second initial search result to search the first data set again, the obtained third initial search result combines context information.
[0061] For example, the first initial search result is a computer worth 10000 yuan, and the second initial search result is a computer worth 5000 yuan. And according to the object attribute information, it is determined that this user pursues cost performance. Then, the first data set is searched again to determine a computer around 5000 yuan as the third initial search result.
[0062] In operation S240, based on the third initial search result and the second initial search result, a target search result is determined.
[0063] According to an embodiment of the present disclosure, the target search result may be the union set of the target products in the third initial search result and the natural products in the second initial search result.
[0064] According to an embodiment of the present disclosure, the third initial search result includes the target product, and the second initial search result includes natural products. The third initial search result and the second initial search result are combined to obtain a complete result, that is, the target search result.
[0065] According to an embodiment of the present disclosure, after determining the third initial search result, the server combines the third initial search result and the second initial search result to obtain the target search result.
[0066] For example, the third initial search result is product a, the second initial search results are products b and c, and the target search result is products a, b, and c.
[0067] According to an embodiment of the present disclosure, through the above search method, the first data set is processed twice based on the first initial search result and the second initial search result, and the click-through rate of the first data in the first data set is recalculated to obtain the third initial search result. That is, the third initial search result is a result that combines context information such as the second initial search result, and a more accurate click-through rate is obtained. Finally, the target search result is determined based on the second initial search result and the third initial search result, and the obtained target search result can better meet the needs of users.
[0068] Next, with reference to Figures 3 to 8 and in combination with specific embodiments, Figure 2 the method shown is further described.
[0069] Figure 3 Schematically shows a flowchart for determining the first initial search result according to an embodiment of the present disclosure.
[0070] As Figure 3 shown, determining the first initial search result includes operations S310 to S350, which can be a specific embodiment of the above operation S220.
[0071] In operation S310, feature extraction is performed on the search information and the object attribute information to obtain search features.
[0072] According to an embodiment of the present disclosure, the search feature can be a feature vector output after inputting the search information and the object attribute information into an Embedding layer. Feature extraction can refer to the process of mapping discrete features, such as user accounts, to a continuous low-dimensional vector space. These feature vectors are designed to represent discrete features and capture the correlation and semantic information between features.
[0073] According to an embodiment of the present disclosure, due to the large amount of discrete feature information and the fact that discrete features cannot represent the correlation with other discrete features, it is necessary to input discrete features into the Embedding layer to map the discrete features into low-dimensional feature vectors, and the correlation and semantic information between discrete features can also be identified through the feature vectors.
[0074] According to an embodiment of the present disclosure, the server inputs the search information and object attribute information into the Embedding layer, and the obtained feature vector is the search feature.
[0075] In operation S320, feature extraction is performed on multiple first data in the first data set to obtain first data features.
[0076] According to an embodiment of the present disclosure, the first data set contains multiple first data, and the first data can be a target commodity, such as an advertising commodity. The first data feature can be the feature vector output after inputting multiple first data in the first data set into the Embedding layer.
[0077] For example, if the first data set contains target commodity A, target commodity B, and target commodity C, then target commodity A, target commodity B, and target commodity C are all first data.
[0078] According to an embodiment of the present disclosure, the server inputs multiple first data into the Embedding layer, and the obtained feature vector is the first data feature.
[0079] In operation S330, the search feature and the first data feature are fused to obtain a first fusion feature.
[0080] According to an embodiment of the present disclosure, before fusing the search feature and the first data feature, the search feature and the first data feature can be respectively input into a machine learning model such as an MLP to learn the non-linear feature relationship within each of the search feature and the first data feature.
[0081] According to an embodiment of the present disclosure, the first fusion feature can be the feature obtained by fusing the search feature and the first data feature.
[0082] According to an embodiment of the present disclosure, there may be multi-modal information in the search feature and the first data feature, and the search feature and the first data feature can be subjected to multi-modal feature fusion. For example, there may be text and images in the search feature, and there may be text and videos in the first data feature. Fusing the multi-modal information in the search feature and the first data feature can draw on the advantages of different modalities and better complete information integration.
[0083] In operation S340, based on the first fusion feature, the click-through rate of each of the multiple first data in the first data set is obtained.
[0084] According to an embodiment of the present disclosure, the click-through rate of each of the multiple first data is the prediction result obtained by the server inputting the first fusion feature into a machine learning model such as an MLP to predict the click-through rate of each first data.
[0085] According to an embodiment of the present disclosure, the first fusion feature fuses the search feature and the first data feature, and the server inputs the first fusion feature into the machine learning model to predict the click-through rate of the first data through the first fusion feature.
[0086] In operation S350, based on the click-through rate of each of the multiple first data, a first initial search result is determined.
[0087] According to an embodiment of the present disclosure, the first initial search result includes multiple first initial target data and the click-through rate of each of the multiple first initial target data, and the multiple first initial target data are determined from the multiple first data.
[0088] According to an embodiment of the present disclosure, the first initial target data may be the first data whose click-through rate meets a predetermined condition. For example, the first initial target data may be the first data whose click-through rate is greater than 80%.
[0089] According to an embodiment of the present disclosure, based on the click-through rate of the multiple first data, a search is performed on the multiple first data, the first data that meets the click-through rate search condition is used as the first initial target data, and the first initial target data and the click-through rate of each first initial target data are used as the first initial search result.
[0090] For example, there are three first data, and the click-through rates are 20%, 90%, and 95% respectively. The first data with click-through rates of 90% and 95% are selected as the first initial target data, and the first initial target data and the corresponding click-through rates together form the first initial search result.
[0091] According to an embodiment of the present disclosure, based on the search information and the object attribute information, through feature extraction and feature fusion, the click-through rate of the multiple first data is predicted to obtain a first initial search result. The obtained first initial search result has high accuracy, thereby improving the accuracy of click-through rate prediction.
[0092] According to an embodiment of the present disclosure, feature extraction is performed on the search information and the object attribute information to obtain a search feature.
[0093] According to an embodiment of the present disclosure, the search feature may be the feature vector output after inputting the search information and the object attribute information into an Embedding layer.
[0094] According to an embodiment of the present disclosure, the server inputs search information and object attribute information into the Embedding layer, and the obtained feature vector is the search feature.
[0095] According to an embodiment of the present disclosure, feature extraction is performed on multiple second data in the second data set to obtain second data features.
[0096] According to an embodiment of the present disclosure, the second data set contains multiple second data, and the second data can be a natural commodity, such as an ordinary commodity. The second data feature can be the feature vector output after inputting multiple first data in the second data set into the Embedding layer.
[0097] For example, if the second data set contains ordinary commodity A, ordinary commodity B, and ordinary commodity C, then ordinary commodity A, ordinary commodity B, and ordinary commodity C are all second data.
[0098] According to an embodiment of the present disclosure, the server inputs multiple second data into the Embedding layer, and the obtained feature vector is the second data feature.
[0099] According to an embodiment of the present disclosure, the search feature and the second data feature are fused to obtain a second fusion feature.
[0100] According to an embodiment of the present disclosure, before fusing the search feature and the second data feature, the search feature and the second data feature can be respectively input into a machine learning model such as an MLP to learn the non-linear feature relationships between the search features and between the second data features.
[0101] According to an embodiment of the present disclosure, the second fusion feature can be the feature obtained by fusing the search feature and the second data feature.
[0102] According to an embodiment of the present disclosure, there may be multi-modal information in the search feature and the second data feature, so it is necessary to perform multi-modal feature fusion on the search feature and the second data feature. For example, there may be text and images in the search feature, and there may be text and videos in the second data feature. Fusing the multi-modal information in the search feature and the second data feature can draw on the advantages of different modalities and better complete information integration.
[0103] According to an embodiment of the present disclosure, based on the second fusion feature, the click-through rates of multiple second data in the second data set are obtained.
[0104] According to an embodiment of the present disclosure, the click-through rate of each second data is the prediction result obtained by the server inputting the second fusion feature into a machine learning model such as an MLP to predict the click-through rate of each second data.
[0105] According to an embodiment of the present disclosure, the second fusion feature fuses the search feature and the second data feature, and the server inputs the second fusion feature into the machine model to predict the click-through rate of the second data through the second fusion feature.
[0106] According to an embodiment of the present disclosure, based on the click-through rates of multiple second data, a second initial search result is determined.
[0107] According to an embodiment of the present disclosure, the second initial search result includes multiple second target data and the click-through rates of the multiple second target data respectively, and the multiple second target data are determined from the multiple second data.
[0108] According to an embodiment of the present disclosure, the second target data may be the second data whose click-through rate meets certain conditions. For example, the second target data may be the second data with a click-through rate greater than 80%.
[0109] According to an embodiment of the present disclosure, based on the click-through rates of multiple second data, the multiple second data are screened, the second data that meets the click-through rate screening condition is used as the second target data, and the second target data and the click-through rate of each second target data are used as the second initial search result.
[0110] For example, there are three second data with click-through rates of 20%, 90% and 95% respectively. The second data with click-through rates of 90% and 95% are screened as the second target data, and the second target data and the corresponding click-through rates together form the second initial search result.
[0111] According to an embodiment of the present disclosure, based on the search information and the object attribute information, through feature extraction and feature fusion, the click-through rate of multiple second data is predicted to obtain the second initial search result. The obtained second initial search result has high accuracy, thereby improving the accuracy of click-through rate prediction.
[0112] Figure 4 Schematically shows a flowchart for determining a third initial search result according to an embodiment of the present disclosure.
[0113] As Figure 4 shown, determining the third initial search result includes operations S410 to S470, which can be used as a specific embodiment of the above operation S230.
[0114] In operation S410, feature extraction is performed on the search information and the object attribute information to obtain a search feature.
[0115] According to an embodiment of the present disclosure, the search feature may be a feature vector output after inputting the search information and the object attribute information into an Embedding layer (embedding layer).
[0116] According to an embodiment of the present disclosure, the server inputs the search information and the object attribute information into the Embedding layer, and the obtained feature vector is the search feature.
[0117] In operation S420, feature extraction is performed on the first initial search result to obtain the third data feature.
[0118] According to an embodiment of the present disclosure, the server inputs the first initial result into the Embedding layer, and the obtained feature vector is the third data feature.
[0119] In operation S430, feature extraction is performed on the second initial search result to obtain the fourth data feature.
[0120] According to an embodiment of the present disclosure, the server inputs the second initial result into the Embedding layer, and the obtained feature vector is the fourth data feature.
[0121] In operation S440, feature extraction is performed on multiple first data in the first data set to obtain the first data feature.
[0122] According to an embodiment of the present disclosure, the server inputs multiple first data into the Embedding layer, and the obtained feature vector is the first data feature.
[0123] In operation S450, the search feature, the third data feature, the fourth data feature, and the first data feature are fused to obtain the target fusion feature.
[0124] According to an embodiment of the present disclosure, before fusing the search feature, the third data feature, the fourth data feature, and the first data feature, the search feature and the first data feature can be respectively input into a machine learning model such as an MLP to learn the non-linear feature relationships among the search feature, the third data feature, the fourth data feature, and the first data feature themselves.
[0125] According to an embodiment of the present disclosure, the target fusion feature can be the feature obtained by performing feature fusion on the search feature, the third data feature, the fourth data feature, and the first data feature.
[0126] According to an embodiment of the present disclosure, there may be multi-modal information in the search feature, the third data feature, the fourth data feature, and the first data feature, so it is necessary to perform multi-modal fusion on the search feature, the third data feature, the fourth data feature, and the first data feature.
[0127] In operation S460, based on the target fusion feature, the target click-through rates of multiple first data in the first data set are obtained.
[0128] According to an embodiment of the present disclosure, the click-through rate of each of the first data is the prediction result obtained by the server inputting the target fusion feature into a machine learning model such as an MLP to predict the click-through rate of each of the first data.
[0129] According to an embodiment of the present disclosure, the target fusion feature fuses search features, third data features, fourth data features, and first data features. The server inputs the target fusion feature into a machine model to predict the click-through rate of multiple first data in the first data set again through the target fusion feature.
[0130] According to an embodiment of the present disclosure, the third data feature and the fourth data feature are feature-fused to obtain the context feature in the third data feature and the fourth data feature, and the click-through rate of multiple first data in the first data set is predicted again in combination with the context feature.
[0131] In operation S470, a third initial search result is determined based on the target click-through rate of each of the multiple first data.
[0132] According to an embodiment of the present disclosure, the third initial search result includes multiple first target data and the target click-through rate of each of the multiple first target data, and the multiple first target data are determined from the multiple first data.
[0133] According to an embodiment of the present disclosure, the first target data may be the first data whose click-through rate meets a predetermined threshold. For example, the first target data may be the first data whose click-through rate is greater than 80%.
[0134] According to an embodiment of the present disclosure, based on the click-through rate of the multiple first data, the multiple first data are searched, and the first data that meets the click-through rate search condition is used as the first target data, and the first target data and the click-through rate of each of the first target data are used as the third initial search result.
[0135] For example, there are three first data with click-through rates of 20%, 90%, and 95% respectively. The first data with click-through rates of 90% and 95% are screened as the first target data, and the first target data and the corresponding click-through rates together form the third initial search result.
[0136] According to an embodiment of the present disclosure, by predicting the click-through rate of multiple first data in the first data set again based on the first initial search result, the second initial search result, the first data set, the search information, and the object attribute information, since the process of predicting the click-through rate fuses the context information in the first initial search result and the second initial search result, the obtained click-through rate is more accurate, and thus the third initial search result is more accurate.
[0137] According to an embodiment of the present disclosure, a search result determination model can be used to process discrete features to obtain search results. The search result determination model can use the structure of an Embedding + MLP model, but is not limited thereto. The specific network structure of the search result determination model can also refer to, for example, Figure 5 as shown in the network structure.
[0138] Figure 5 FIG. schematically shows a schematic diagram of the network structure of the search result determination model according to an embodiment of the present disclosure.
[0139] As Figure 5 shown, the search result determination model can include an embedding layer M510, a fusion layer M520, a multi-layer neural network layer M530, and an output layer M540. The embedding layer M510 can include n sub-embedding layers, and each sub-embedding layer corresponds to an input discrete feature.
[0140] As Figure 5 shown, the discrete feature 510 is input into the embedding layer M510, and a feature vector is output. The feature vector is input into the fusion layer M520, and a fusion feature is output. The fusion feature is input into the multi-layer neural network layer M530, and a transformed feature is output. The transformed feature is input into the output layer M540, and a search result is output.
[0141] According to an embodiment of the present disclosure, the discrete features include at least one of the following: search information and object attribute information, first data, second data, first initial search result, and second initial search result.
[0142] According to an embodiment of the present disclosure, the search result can include a first initial search result, a second initial search result, and a third initial search result.
[0143] According to an embodiment of the present disclosure, using search information and object attribute information, first data, second data, first initial search result, second initial search result, etc. as discrete features, including target commodity information, natural commodity information, context information, and user information, etc., thus making the factors involved in the search result determination model have a wide range, and making the obtained search results more in line with the actual situation.
[0144] According to an embodiment of the present disclosure, based on the third initial search result and the second initial search result, a target search result is determined, including: sorting a plurality of first target data in the third initial search result and a plurality of second target data in the second initial search result according to their respective target click-through rates and click-through rates, to obtain a target search result.
[0145] According to an embodiment of the present disclosure, the target search result sorts a plurality of first target data and second target data.
[0146] According to an embodiment of the present disclosure, based on the target click-through rates of the first target data and the click-through rates of the second target data respectively, the corresponding first target data and second target data are sorted. The sorting method is to rearrange the corresponding target data in descending order of click-through rate, and the target data with a larger click-through rate is ranked in the front.
[0147] According to an embodiment of the present disclosure, after sorting the first target data and the second target data, they can be input into a merging module for merging to obtain a target search result.
[0148] For example, the click-through rate of the first target data a is 88%, the click-through rate of the second target data b is 90%, the click-through rate of the second target data c is 97%, and the click-through rate of the second target data d is 80%. Then the sorting of the target search result is the second target data c, the second target data b, the first target data a, and the second target data d.
[0149] According to an embodiment of the present disclosure, the first target data and the second target data are sorted according to the click-through rate to obtain a target search result. Sorting according to the click-through rate makes the obtained target search result more in line with the personalized needs of users.
[0150] According to an embodiment of the present disclosure, the above search result determination method is applied to a server, and the server includes a first processing module, a second processing module, and a third processing module.
[0151] According to an embodiment of the present disclosure, the first processing module, the second processing module, and the third processing module can all use the above search result determination model to process discrete features and output a search result.
[0152] According to an embodiment of the present disclosure, in response to receiving a first initial search result sent by the first processing module, the first initial search result is stored in a predetermined storage space; in response to receiving a second initial search result sent by the second processing module, the first initial search result is obtained from the predetermined storage space; and the first initial search result, the second initial search result, the search information, and the object attribute information are sent to the third processing module, so that the third processing module performs an operation of determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information.
[0153] Figure 6 A flowchart of a search result determination method according to an embodiment of the present disclosure is schematically shown.
[0154] As Figure 6 shown, the search result determination model may include a first processing module M610, a predetermined storage space M620, a second processing module M630, and a third processing module M640.
[0155] As shown Figure 6 in the figure, the first data set 610, search information, and object attribute information 630 are input into the first processing module M610 to output the first initial search result 640, and the first initial search result 640 is stored in the predetermined storage space M620. The second data 620, search information, and object attribute information 630 are input into the second processing module M630 to output the second initial search result 650. The first initial search result 640 is obtained from the predetermined storage space M620, and the first initial search result 640, the second initial search result 650, the first data set 610, search information, and object attribute information 630 are input into the third processing module M640 to output the third initial search result 660.
[0156] According to an embodiment of the present disclosure, the processor is divided into multiple modules, and each module is loaded with a search result determination model for separate processing, improving the processing efficiency.
[0157] Figure 7 A flowchart of a page generation method according to an embodiment of the present disclosure is schematically shown.
[0158] As shown Figure 7 in the figure, the page generation method includes operations S710 to S740.
[0159] In operation S710, in response to receiving the third initial search result sent by the third processing module, a first page component matching the first initial search result is obtained through the first call interface.
[0160] According to an embodiment of the present disclosure, the first page component is a component for creating a page that matches the first target data in the third initial search result, and these components can generally include HTML (Hyper Text Markup Language), CSS (Cascading Style Sheets), and Javascript. The first call interface is used to obtain a page component matching the first target data in the third initial search result from the storage location of the page components.
[0161] For example, if the first target data is an advertised product, the first page component may include a picture with the word "advertisement".
[0162] In operation S720, in response to receiving the second initial search result sent by the first processing module, a second page component matching the second initial search result is obtained through the second call interface.
[0163] According to an embodiment of the present disclosure, the second page component is a component for page creation that matches the second target data in the second initial search result. The second call interface is used to obtain, from the storage location of the page components, the page component that matches the second target data in the second initial search result.
[0164] In operation S730, a page component set is generated based on the first page component and the second page component.
[0165] According to an embodiment of the present disclosure, the page component set may include the first page component and the second page component, including various different functions and styles, which can meet the requirements of page design and improve the user experience.
[0166] According to an embodiment of the present disclosure, the first page component and the second page component may be input into the merging module to generate a page component set.
[0167] It should be noted that, based on the first page component and the second page component, some advanced page components may also be added. For example, an animation effect component is introduced to enable the page elements to produce transition and animation effects when the user operates. Additionally, a map component may be introduced to help the user display geographical location information or implement location service functions.
[0168] In operation S740, the page component set and the target search result are sent to the client.
[0169] According to an embodiment of the present disclosure, the server inputs the page component set and the target search result into the merging module, combines the page component set and the target search result correspondingly, generates page information that can be parsed by the client, and sends the page information to the client. The client receives the page information, renders the page according to the page component set and the target search result, presents the final page, and the user can interact with the page and browse and use the required information.
[0170] Figure 8 A system architecture diagram of the page generation method is schematically shown.
[0171] As Figure 8 shown, the system architecture of the page generation method may include a first processing module M810, a second processing module M820, a third processing module M830, a first call interface M840, a second call interface M850, a merging module M860, and a client M870.
[0172] As Figure 8As shown, after the first processing module M810 and the second processing module M820 finish executing the processing operations, the second calling interface M850 executes a calling operation. While the second calling interface M850 is executing the calling operation, after the third processing module M830 finishes executing the processing operation, the first calling interface M840 executes a calling operation. Finally, the merging module M860 executes a merging operation to generate page information and sends it to the client M870.
[0173] According to an embodiment of the present disclosure, the merging module M870 may perform the following operations: generating a target search result based on the first target search result and the second target search result, generating a page component set based on the first page component and the second page component, and generating page information based on the target search result and the page component set.
[0174] According to an embodiment of the present disclosure, the time for the second calling interface to execute the calling operation is much longer than the time for the first calling interface to execute the calling operation. Therefore, the time difference between the time for the second calling interface to execute the calling operation and the time for the first calling interface to execute the calling operation can be utilized to obtain a third initial search result through the third processing module, reducing the time consumption and improving the processing efficiency.
[0175] According to an embodiment of the present disclosure, the above method further includes: determining object identification information based on a search request; and determining object attribute information based on the object identification information, where the object attribute information includes object historical behavior information.
[0176] According to an embodiment of the present disclosure, the object identification information is the unique identifier of the user, such as a user account. The object historical behavior information is the historical record of the user's operations, such as browsing history, search history, and purchase history, etc.
[0177] According to an embodiment of the present disclosure, the user uses the client to perform a search. The client generates a search request and sends it to the server. The server determines the object identification information according to the search request, and then searches for the object attribute information in the database according to the object identification information.
[0178] According to an embodiment of the present disclosure, determining the object attribute information based on the search request can understand the user's behavior habits and make the search result closer to the user's needs.
[0179] Figure 9 A block diagram of a search device according to an embodiment of the present disclosure is schematically shown.
[0180] As Figure 9 shown, the search device 900 includes a first determination module 910, a second determination module 920, a third determination module 930, and a fourth determination module 940.
[0181] The first determination module 910 is configured to determine search information based on a search request received from a client in response to the search request. In one embodiment, the first determination module 910 may be configured to perform the above-mentioned operation S210, which will not be elaborated here.
[0182] The second determination module 920 is configured to determine a first initial search result corresponding to a first data set and a second initial search result corresponding to a second data set based on the search information and object attribute information, wherein the data sources of the first data set and the second data set are different. In one embodiment, the second determination module 920 may be configured to perform the above-mentioned operation S220, which will not be elaborated here.
[0183] The third determination module 930 is configured to determine a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information. In one embodiment, the third determination module 930 may be configured to perform the above-mentioned operation S230, which will not be elaborated here.
[0184] The fourth determination module 940 is configured to determine a target search result based on the third initial search result and the second initial search result. In one embodiment, the fourth determination module 940 may be configured to perform the above-mentioned operation S240, which will not be elaborated here.
[0185] According to the disclosed embodiment, the second determination module 920 further includes a first information extraction sub-module, a first data extraction sub-module, a first fusion sub-module, a first processing sub-module, and a first determination sub-module.
[0186] The first information extraction sub-module is configured to perform feature extraction on the search information and the object attribute information to obtain search features. In one embodiment, the first information extraction sub-module may be configured to perform the above-mentioned operation S310, which will not be elaborated here.
[0187] The first data extraction sub-module is configured to perform feature extraction on multiple first data in the first data set to obtain first data features. In one embodiment, the first data extraction sub-module may be configured to perform the above-mentioned operation S320, which will not be elaborated here.
[0188] The first fusion sub-module is configured to fuse the search features and the first data features to obtain first fusion features. In one embodiment, the first fusion sub-module may be configured to perform the above-mentioned operation S330, which will not be elaborated here.
[0189] The first processing sub-module is configured to obtain the click-through rate of each of the multiple first data in the first data set based on the first fusion features. In one embodiment, the first processing sub-module may be configured to perform the above-mentioned operation S340, which will not be elaborated here.
[0190] The first determination sub-module is configured to determine a first initial search result based on the click-through rates of multiple first data, where the first initial search result includes multiple first initial target data and the click-through rates of the multiple first initial target data, and the multiple first initial target data are determined from the multiple first data. In one embodiment, the first determination sub-module may be configured to perform the above operation S350, which will not be elaborated herein.
[0191] According to an embodiment of the present disclosure, the second determination module 920 further includes a second information extraction sub-module, a second data extraction sub-module, a second fusion sub-module, a second processing sub-module, and a second determination sub-module.
[0192] The second information extraction sub-module is configured to perform feature extraction on the search information and the object attribute information to obtain search features.
[0193] The second data extraction sub-module is configured to perform feature extraction on multiple second data in the second data set to obtain second data features.
[0194] The second fusion sub-module is configured to fuse the search features and the second data features to obtain second fusion features.
[0195] The second processing sub-module is configured to obtain the click-through rates of multiple second data in the second data set based on the second fusion features.
[0196] The second determination sub-module is configured to determine a second initial search result based on the click-through rates of multiple second data, where the second initial search result includes multiple second target data and the click-through rates of the multiple second target data, and the multiple second target data are determined from the multiple second data.
[0197] According to an embodiment of the present disclosure, the third determination module 930 further includes a third information extraction sub-module, a first feature extraction sub-module, a second feature extraction sub-module, a third data extraction sub-module, a third fusion sub-module, a third processing sub-module, and a third determination sub-module.
[0198] The third information extraction sub-module is configured to perform feature extraction on the search information and the object attribute information to obtain search features. In one embodiment, the third information extraction sub-module may be configured to perform the above operation S410, which will not be elaborated herein.
[0199] The first feature extraction sub-module is configured to perform feature extraction on the first initial search result to obtain third data features. In one embodiment, the first feature extraction sub-module may be configured to perform the above operation S420, which will not be elaborated herein.
[0200] The second feature extraction sub-module is used to extract features from the second initial search result to obtain the fourth data feature. In one embodiment, the second feature extraction sub-module can be used to perform the above-mentioned operation S430, which will not be elaborated here.
[0201] The third data extraction sub-module is used to extract features from multiple first data in the first data set to obtain the first data feature. In one embodiment, the third data extraction sub-module can be used to perform the above-mentioned operation S440, which will not be elaborated here.
[0202] The third fusion sub-module is used to fuse the search feature, the third data feature, the fourth data feature, and the first data feature to obtain the target fusion feature. In one embodiment, the third fusion sub-module can be used to perform the above-mentioned operation S450, which will not be elaborated here.
[0203] The third processing sub-module is used to obtain the target click-through rate of each of the multiple first data in the first data set based on the target fusion feature. In one embodiment, the third processing sub-module can be used to perform the above-mentioned operation S460, which will not be elaborated here.
[0204] The third determination sub-module is used to determine the third initial search result based on the target click-through rate of each of the multiple first target data, where the third initial search result includes multiple first target data and the target click-through rate of each of the multiple first target data, and the multiple first target data are determined from the multiple first data. In one embodiment, the third determination sub-module can be used to perform the above-mentioned operation S470, which will not be elaborated here.
[0205] According to an embodiment of the present disclosure, the fourth determination module 904 includes a target determination sub-module.
[0206] The target determination sub-module is used to sort the multiple first target data and the multiple second target data based on the target click-through rate of each of the multiple first target data in the third initial search result and the click-through rate of each of the multiple second target data in the second initial search result to obtain the target search result.
[0207] According to an embodiment of the present disclosure, the search device 900 further includes a first execution module, a second execution module, and a third execution module.
[0208] The first execution module is used to store the first initial search result in a predetermined storage space in response to receiving the first initial search result sent by the first processing module.
[0209] The second execution module is used to obtain the first initial search result from the predetermined storage space in response to receiving the second initial search result sent by the second processing module.
[0210] The third execution module is used to send the first initial search result, the second initial search result, the search information, and the object attribute information to the third processing module, so that the third processing module performs an operation of determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information.
[0211] According to an embodiment of the present disclosure, the search device 900 further includes a fourth execution module, a fifth execution module, a sixth execution module, and a seventh execution module.
[0212] The fourth execution module is used to obtain a first page component that matches the first initial search result through a first call interface in response to receiving the third initial search result sent by the third processing module. The fourth execution module can be used to perform the above operation S710, which will not be elaborated here.
[0213] The fifth execution module is used to obtain a second page component that matches the second initial search result through a second call interface in response to receiving the second initial search result sent by the first processing module. The fifth execution module can be used to perform the above operation S720, which will not be elaborated here.
[0214] The sixth execution module is used to generate a page component set based on the first page component and the second page component. The sixth execution module can be used to perform the above operation S730, which will not be elaborated here.
[0215] The seventh execution module is used to send the page component set and the target search result to the client. The seventh execution module can be used to perform the above operation S740, which will not be elaborated here.
[0216] According to an embodiment of the present disclosure, the search device 900 further includes a fifth determination module and a sixth determination module.
[0217] The fifth determination module is used to determine object identification information based on the search request.
[0218] The sixth determination module is used to determine object attribute information based on the object identification information, where the object attribute information includes object historical behavior information.
[0219] Any of a plurality of modules, sub-modules, units, and sub-units according to embodiments of the present disclosure, or at least part of the functions of any of them, may be implemented in one module. Any one or more of the modules, sub-modules, units, and sub-units according to embodiments of the present disclosure may be split into multiple modules for implementation. Any one or more of the modules, sub-modules, units, and sub-units according to embodiments of the present disclosure may be at least partially implemented as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or may be implemented by any other reasonable manner of integrating or packaging the circuit, in hardware or firmware, or implemented in any one of software, hardware, and firmware, or in any suitable combination of several of them. Alternatively, one or more of the modules, sub-modules, units, and sub-units according to embodiments of the present disclosure may be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding functions may be executed.
[0220] For example, any of the first determination module 910, the second determination module 920, the third determination module 930, and the fourth determination module 940 may be combined and implemented in one module / unit / sub-unit, or any one of the modules / units / sub-units may be split into multiple modules / units / sub-units. Alternatively, at least part of the functions of one or more of these modules / units / sub-units may be combined with at least part of the functions of other modules / units / sub-units and implemented in one module / unit / sub-unit. According to embodiments of the present disclosure, at least one of the first determination module 910, the second determination module 920, the third determination module 930, and the fourth determination module 940 may be at least partially implemented as a hardware circuit, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or may be implemented by any other reasonable manner of integrating or packaging the circuit, in hardware or firmware, or implemented in any one of software, hardware, and firmware, or in any suitable combination of several of them. Alternatively, at least one of the first determination module 910, the second determination module 920, the third determination module 930, and the fourth determination module 940 may be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding functions may be executed.
[0221] Figure 10 A block diagram of an electronic device suitable for implementing the search method described above according to embodiments of the present disclosure is schematically shown. Figure 10 The electronic device shown is only an example and should not impose any limitations on the functions and usage scope of the embodiments of the present disclosure.
[0222] As shown Figure 10 in FIG. 1, the electronic device 1000 according to an embodiment of the present disclosure includes a processor 1001, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage section 1008 into a random access memory (RAM) 1003. The processor 1001 may include, for example, a general-purpose microprocessor (e.g., CPU), an instruction set processor, and / or a related chipset, and / or a dedicated microprocessor (e.g., an application-specific integrated circuit (ASIC)), and so on. The processor 1001 may also include on-board memory for caching purposes. The processor 1001 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0223] In the RAM 1003, various programs and data required for the operation of the electronic device 1000 are stored. The processor 1001, the ROM 1002, and the RAM 1003 are connected to each other via a bus 1004. The processor 1001 performs various operations of the method flow according to an embodiment of the present disclosure by executing the programs in the ROM 1002 and / or the RAM 1003. It should be noted that the program may also be stored in one or more memories other than the ROM 1002 and the RAM 1003. The processor 1001 may also perform various operations of the method flow according to an embodiment of the present disclosure by executing the programs stored in the one or more memories.
[0224] According to an embodiment of the present disclosure, the electronic device 1000 may further include an input / output (I / O) interface 1005, and the input / output (I / O) interface 1005 is also connected to the bus 1004. The system 1000 may further include one or more of the following components connected to the I / O interface 1005: an input section 1006 including a keyboard, a mouse, etc.; an output section 1007 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc. and a speaker, etc.; a storage section 1008 including a hard disk, etc.; and a communication section 1009 including a network interface card such as a LAN card, a modem, etc. The communication section 1009 performs communication processing via a network such as the Internet. A drive 1010 is also connected to the I / O interface 1005 as needed. A removable medium 1011, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1010 as needed so that a computer program read therefrom can be installed into the storage section 1008 as needed.
[0225] According to an embodiment of the present disclosure, the method flow according to the embodiment of the present disclosure can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable storage medium, and the computer program includes program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication part 1009, and / or installed from the removable medium 1011. When the computer program is executed by the processor 1001, the above functions defined in the system of the embodiment of the present disclosure are executed. According to an embodiment of the present disclosure, the above-described system, device, apparatus, module, unit, etc. can be implemented by computer program modules.
[0226] The present disclosure also provides a computer-readable storage medium, which may be included in the device / device / system described in the above embodiment; or may exist separately without being assembled into the device / device / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.
[0227] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium. For example, it may include but is not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In the present disclosure, the computer-readable storage medium may be any tangible medium that contains or stores a program, and the program can be used by or in combination with an instruction execution system, device, or device.
[0228] For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include the above-described ROM 1002 and / or RAM 1003 and / or one or more memories other than ROM 1002 and RAM 1003.
[0229] An embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program includes program code for executing the method provided by the embodiment of the present disclosure. When the computer program product runs on an electronic device, the program code is used to cause the electronic device to implement the search method provided by the embodiment of the present disclosure.
[0230] When the computer program is executed by the processor 1001, the above functions defined in the system / apparatus of the embodiment of the present disclosure are executed. According to an embodiment of the present disclosure, the above-described system, apparatus, module, unit, etc. can be implemented by computer program modules.
[0231] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 1009, and / or installed from the removable medium 1011. The program code included in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0232] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiments of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level procedures and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include but are not limited to, for example, Java, C++, Python, the "C" language, or similar programming languages. The program code can be executed entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, by using an Internet service provider to connect through the Internet).
[0233] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a portion of code, which contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions noted in the blocks may occur in a different order than noted in the accompanying drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram or flowchart, and combinations of blocks in the block diagram or flowchart, can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions. Those skilled in the art will understand that the features recited in the various embodiments and / or claims of the present disclosure can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly recited in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features recited in the various embodiments and / or claims of the present disclosure can be combined and / or combined in various ways. All such combinations and / or combinations fall within the scope of the present disclosure.
[0234] The embodiments of the present disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although the embodiments have been described separately above, this does not mean that the measures in the respective embodiments cannot be used advantageously in combination. The scope of the present disclosure is defined by the appended claims and their equivalents. Without departing from the scope of the present disclosure, those skilled in the art can make various substitutions and modifications, and all such substitutions and modifications should fall within the scope of the present disclosure.
Claims
1. A search method, comprising: Responding to a search request received from a client, and determining search information based on the search request; Determining a first initial search result corresponding to a first data set and a second initial search result corresponding to a second data set based on the search information and object attribute information, wherein data sources of the first data set and the second data set are different; Determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information; and Determining a target search result based on the third initial search result and the second initial search result.
2. The method according to claim 1, wherein, The determining of the first initial search result corresponding to the first data set based on the search information and object attribute information includes: Performing feature extraction on the search information and the object attribute information to obtain search features; Performing feature extraction on multiple first data in the first data set to obtain first data features; Fusing the search features and the first data features to obtain first fusion features; and Based on the first fusion features, obtaining click-through rates of the multiple first data in the first data set respectively; Determining the first initial search result based on the click-through rates of the multiple first data respectively, wherein the first initial search result includes multiple first initial target data and the click-through rates of the multiple first initial target data respectively, and the multiple first initial target data are determined from the multiple first data.
3. The method according to claim 1, wherein, The determining of the second initial search result corresponding to the second data set based on the search information and object attribute information includes: Performing feature extraction on the search information and the object attribute information to obtain search features; Performing feature extraction on multiple second data in the second data set to obtain second data features; Fusing the search features and the second data features to obtain second fusion features; and Based on the second fusion features, obtaining click-through rates of the multiple second data in the second data set respectively; Determining the second initial search result based on the click-through rates of the multiple second data respectively, wherein the second initial search result includes multiple second target data and the click-through rates of the multiple second target data respectively, and the multiple second target data are determined from the multiple second data.
4. The method according to any one of claims 1 to 3, wherein The determining of the third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information includes: Performing feature extraction on the search information and the object attribute information to obtain search features; Performing feature extraction on the first initial search result to obtain third data features; Performing feature extraction on the second initial search result to obtain fourth data features; Performing feature extraction on multiple first data in the first data set to obtain first data features; Fuse the search feature, the third data feature, the fourth data feature, and the first data feature to obtain a target fusion feature; and Based on the target fusion feature, obtain the target click-through rate of each of the multiple first data in the first data set; Based on the target click-through rate of each of the multiple first data, determine the third initial search result, where the third initial search result includes multiple first target data and the target click-through rate of each of the multiple first target data, and the multiple first target data are determined from the multiple first data.
5. The method according to claim 1, wherein The determining the target search result based on the third initial search result and the second initial search result includes: Based on the target click-through rate of each of the multiple first target data in the third initial search result and the click-through rate of each of the multiple second target data in the second initial search result, sort the multiple first target data and the multiple second target data to obtain the target search result.
6. The method according to claim 1, wherein The method is applied to a server, and the server includes a first processing module, a second processing module, and a third processing module; The method further includes: In response to receiving the first initial search result sent by the first processing module, store the first initial search result in a predetermined storage space; In response to receiving the second initial search result sent by the second processing module, obtain the first initial search result from the predetermined storage space; and Send the first initial search result, the second initial search result, the search information, and the object attribute information to the third processing module, so that the third processing module performs an operation of determining a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information.
7. The method according to claim 6, further includes: In response to receiving the third initial search result sent by the third processing module, obtain a first page component that matches the first initial search result through a first call interface; In response to receiving the second initial search result sent by the first processing module, obtain a second page component that matches the second initial search result through a second call interface; Generate a page component set based on the first page component and the second page component; And Send the page component set and the target search result to the client.
8. The method according to claim 1, further includes: Based on the search request, determine object identification information; And Based on the object identification information, determine the object attribute information, where the object attribute information includes object historical behavior information.
9. A search device, including: A first determination module, configured to, in response to receiving a search request sent by a client, determine search information based on the search request; A second determination module, configured to determine a first initial search result corresponding to a first data set and a second initial search result corresponding to a second data set based on the search information and the object attribute information, where data sources of the first data set and the second data set are different; A third determination module, configured to determine a third initial search result corresponding to the first data set based on the first initial search result, the second initial search result, the search information, and the object attribute information; and A fourth determination module, configured to determine a target search result based on the third initial search result and the second initial search result.
10. An electronic device, comprising: One or more processors; A memory, configured to store one or more programs, wherein, when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the method according to any one of claims 1 to 8.
11. A computer-readable storage medium, having stored thereon executable instructions, which when executed by a processor cause the processor to implement the method according to any one of claims 1 to 8.
12. A computer program product, comprising a computer program, which when executed by a processor implements the method according to any one of claims 1 to 8.