WO2018133681A1 - 搜索结果排序方法、装置、服务器及存储介质 - Google Patents

搜索结果排序方法、装置、服务器及存储介质 Download PDF

Info

Publication number
WO2018133681A1
WO2018133681A1 PCT/CN2018/071653 CN2018071653W WO2018133681A1 WO 2018133681 A1 WO2018133681 A1 WO 2018133681A1 CN 2018071653 W CN2018071653 W CN 2018071653W WO 2018133681 A1 WO2018133681 A1 WO 2018133681A1
Authority
WO
WIPO (PCT)
Prior art keywords
search result
search
search results
historical
score
Prior art date
Application number
PCT/CN2018/071653
Other languages
English (en)
French (fr)
Inventor
吴云佳
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2018133681A1 publication Critical patent/WO2018133681A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Definitions

  • the embodiments of the present invention relate to the field of information search technologies, and in particular, to a method, an apparatus, a server, and a storage medium for sorting search results.
  • the server After receiving the search term sent by the search client, the server obtains a search result list corresponding to the search term; and then adjusts the search according to the historical search result of the user satisfaction in the DBN (Dynamic Bayesian Network) click model. The order of the search results in the results list; returns the adjusted list of search results to the search client.
  • DBN Dynamic Bayesian Network
  • the DBN click model is a historical search result that assumes that the user's last click in the search result list is a user's satisfaction.
  • the search result list may include multiple user-satisfied results or does not include user-satisfied results. Therefore, the historical search results determined by the above-mentioned DBN click model are not accurate, and the server clicks according to the DBN.
  • the top search result in the search result list is not necessarily the result of the user satisfaction, that is, the search result of the top search result list in the above scheme has a lower click rate.
  • the embodiment of the invention provides a method, a device, a server and a storage medium for sorting search results, which can solve the problem that the search result of the top search results in the search result list displayed by the search client in the related art is low.
  • the technical solutions are as follows:
  • a search result sorting method comprising:
  • M is an integer greater than or equal to 1;
  • a search result sorting apparatus comprising:
  • a first obtaining module configured to obtain a search result list corresponding to the search term
  • a second obtaining module configured to obtain a score of the M target search results in the search result list, where the M target search results are historical search results of the search term, and each historical search result is scored according to the a score determined by the reading duration of the historical search result;
  • M is an integer greater than or equal to 1;
  • an adjustment module configured to adjust, according to the scores of the M target search results, the ranking of the M target search results in the search result list.
  • a server comprising: a processor and a memory, the memory storing one or more programs, the one or more programs being one or more
  • the processor is configured to perform the search result ranking method as described above.
  • a terminal comprising: a processor and a memory, the memory storing one or more programs, the one or more programs being one or more
  • the processor is operative to perform a search result ranking method as described above.
  • a computer readable storage medium the memory storing one or more programs, the one or more programs being used by one or more processors to perform the above The search result sorting method.
  • the search client After obtaining the search result list, obtaining M target search results in the search result list, and then adjusting the ranking of the M target search results in the search result list according to the scores of the M target search results, so that the search client is displaying
  • the target search result with higher score that is, the search result that the user may be satisfied is ranked in the top position; the top search result in the search result list displayed by the search client is solved in the related art.
  • the problem with a low clickthrough rate the effect of increasing the clickthrough rate of the top search results in the search results list.
  • FIG. 1 is a schematic diagram of an implementation environment involved in various embodiments of the present invention.
  • FIG. 2 is a flowchart of a method for sorting search results according to an embodiment of the present invention
  • FIG. 3 is a flowchart of a method for sorting search results according to another embodiment of the present invention.
  • FIG. 4 is a schematic diagram of a sequence of adjusting search results in a search result list provided in another embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a generation result model provided in another embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a search result sorting apparatus according to an embodiment of the present invention.
  • FIG. 7 is a schematic diagram of a server according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of a terminal according to an embodiment of the present invention.
  • FIG. 1 is a schematic diagram of an implementation environment involved in various embodiments of the present invention.
  • the implementation environment includes a search client 110 and a server 120.
  • the search client 110 can be a search client with information search capabilities such as a browser, a shopping client, and a social application client.
  • the search client 110 can run in a terminal, and the terminal is connected to the server 120 through a wired or wireless network.
  • the server 120 is a server for providing a background service for the search client 110.
  • the server 120 may be a server or a server cluster composed of multiple servers, which is not limited by the embodiment of the present invention.
  • the search result sorting method provided by each of the following embodiments may be used in the search client 110 shown in FIG. 1 or in the server 120. Moreover, when the search result sorting method is used in the search client 110, the search client 110 obtains the search result list corresponding to the search term, which means that the search client 110 receives the search result list returned by the server 120; and when the search result is When the sorting method is used in the server 120, the server 120 obtains the search result list corresponding to the search term, and the server 120 searches for each related search result according to the search term, and generates a search result list according to each search result. Not limited.
  • FIG. 2 is a flowchart of a method for sorting search results according to an embodiment of the present invention.
  • the search result sorting method may include:
  • Step 201 Obtain a search result list corresponding to the search term.
  • the search result list may include various search results corresponding to the search term.
  • each search result in the search result list may be sorted according to the relevance of the search term, for example, in descending order of relevance to the search term, and details are not described herein again.
  • Step 202 Obtain M target search results in the search result list.
  • the M target search results are historical search results when the search word is historically searched, and the score of each historical search result is a score determined according to the reading duration of the historical search result; M is an integer greater than or equal to 1.
  • the score of each historical search result is positively correlated with the reading duration of the historical search result.
  • Step 203 Adjust the ranking of the M target search results in the search result list according to the scores of the M target search results.
  • the higher the score the higher the ranking of the target search results in the search result list.
  • the search result sorting method obtains M target search results in the search result list after obtaining the search result list, and then adjusts M target searches according to the scores of the M target search results.
  • the result is sorted in the search result list, so that the search client can display the search result list with higher scores, that is, the search results that the user may be satisfied with in the front position; Search for the low clickthrough rate of the top search results in the search results list displayed by the client; the effect of increasing the clickthrough rate of the top search results in the search results list.
  • the score of the top search result in the adjusted search result list is higher, that is, the previous search result is usually a satisfactory search result of the user, so that the user is displayed on the search client.
  • the search result list it is easy to find the search results that you need, and improve the efficiency of the user's information query.
  • FIG. 3 is a flowchart of a method for sorting search results according to an embodiment of the present invention.
  • the search result sorting method may include:
  • Step 301 Obtain a search result list corresponding to the search term.
  • the server may search for a search result list corresponding to the search term.
  • the search result list may include each search result corresponding to the search term.
  • each search result in the search result list may be sorted according to the relevance of the search term, for example, in descending order of relevance to the search term, and details are not described herein again.
  • Step 302 Acquire various search results whose history is searched in the search result list.
  • the history of each historical search result when the search term is historically searched and the score of each historical search result list can be saved in the server.
  • the server may detect whether the search result is a historical search result searched for when the search word is historically searched, and if so, extract the historical search result; otherwise, the history is not extracted.
  • the search results are not limited by the embodiments of the present application.
  • the search result list includes doc1, doc2, ... docn, wherein doc3, doc7, doc8, ..., docj are historical search results of historical search, and the historical search results obtained by the server are doc3, doc7, doc8 respectively. ,..., docj.
  • n is a positive integer and j is a positive integer less than or equal to n.
  • the result model may be saved in the server, and the result model includes historical search results for historically searching the search term and scores of each historical search result. At this time, for the search result list obtained this time. For each search result, the server can detect whether the search result belongs to the result model. If it belongs to, the historical search result is extracted. Otherwise, the historical search result is not extracted, which is not limited by the embodiment of the present application.
  • the search term of the historical search in the embodiment of the present application refers to a search term whose similarity with the search term in step 301 is higher than the target threshold, that is, the two may be similar or identical, and this embodiment This is not a limitation.
  • the target threshold may be a default value of the system, and is not limited thereto.
  • Step 303 Select a search result that satisfies a preset condition among the obtained search results, and obtain M target search results.
  • the preset conditions include: the score is higher than the preset score, or the top M position is sorted according to the order of the score from high to low.
  • the preset score may be a default score of the system, or a score configured according to a configuration instruction of the user or the operation and maintenance personnel, which is not limited by the embodiment of the present application.
  • the server may obtain the scores of the respective historical search results obtained in step 302 according to the scores of the respective historical search results stored in advance, and then select the scores in which the scores are higher than the preset scores. Historical search results.
  • the server may also directly obtain the obtained historical search results as M target searches. As a result, this embodiment is not limited thereto.
  • Step 304 Sort the M target search results according to the scores of the M target search results in descending order of the scores.
  • Step 305 sequentially traverse each target search result in the sorted order, and exchange the target search result in the search result list with the candidate search result in the search result list, and the candidate search result is a non-target search result and is in the search result list. Sort in the target search results.
  • the server may detect whether there is a candidate search result in the search result list that has not been exchanged before the target search result, and if so, exchange the positions of the two; and if the detection result is not Include, then continue to traverse the next target search result.
  • the candidate search result may not be any one of the M target search results, and the candidate search result is the first search result before the target search result.
  • the server can exchange doc3 with doc1, doc7 and doc2, doc8 and doc4, and so on.
  • the server may count the number of target search results of the exchanged location; when the number of target search results of the exchanged location reaches a preset threshold, the traversal is ended. If the number of the target search results of the exchanged location does not reach the preset threshold, the traversal is continued, and details are not described herein again.
  • the preset threshold is a default value of the system, for example, a value between 3 and 8, which is not limited.
  • the traversal is ended, and the latest search result can still be ranked higher in the search result list, thereby improving the acquisition efficiency of the user to obtain the latest search result.
  • the mark information may be set for the position where the exchanged target search result is located, that is, the position of the candidate search result before the exchange, and the mark information is used to indicate the search result of the position.
  • Target search results after swapping locations the server can determine whether the search result selected by the user passes the search result before the result model adjustment by determining whether the location of the search result clicked by the user is set with the mark information, and then whether the optimization result model needs to be optimized.
  • the server may return the adjusted search result list to the search client, and correspondingly, the search client may receive the adjusted search result list and display the adjusted A list of search results.
  • the experiment proves that after returning the adjusted search result list to the search client in the above manner, the probability that the top 5 search results in the search result list are selected by the user is increased by 6.04%, and the probability that the top 10 search results are selected by the user is improved. 3.92%.
  • the search result sorting method obtains M target search results in the search result list after obtaining the search result list, and then adjusts M target searches according to the scores of the M target search results.
  • the result is sorted in the search result list, so that the search client can display the search result list with higher scores, that is, the search results that the user may be satisfied with in the front position; Search for the low clickthrough rate of the top search results in the search results list displayed by the client; the effect of increasing the clickthrough rate of the top search results in the search results list.
  • the score of the top search result in the adjusted search result list is higher, that is, the previous search result is usually a satisfactory search result of the user, so that the user is displayed on the search client.
  • the search result list it is easy to find the search results that you need, and improve the efficiency of the user's information query.
  • search result sorting method may further include the following steps:
  • the reading duration of the historical search result is read each time; the score of the historical search result is calculated according to the reading duration.
  • Search logs and click logs can be generated and saved each time the server searches.
  • the search log includes identification information for uniquely identifying the current search, such as search_id and identification information of each search result in the search result list of the current search, such as docid.
  • the click log includes an operation record for uniquely identifying the current search and various operations performed by the user in the search client; wherein the operation record may include a session set including a user during a search process, all A collection of search and click behaviors.
  • the session collection includes an input record for the user to input a search term; after receiving the search result list returned by the server, clicking a click record of a search result in the search result list; exiting the exit record of the clicked search result, and the like.
  • the server can obtain the reading duration of the historical search result each time it is read according to the saved search log and the click log.
  • the server may determine the search_id and the corresponding individual docid according to the search log of each search; and then determine the time difference between the time of each docid's exit record and the time of the click record according to the session set in the click log of the same search_id. The determined time difference is used as the reading time of the search result of the docid at the time of the search.
  • the server may calculate the reading duration of the historical search result in each search by the above method.
  • the server may calculate the score of the historical search result according to the reading duration.
  • the score of historical search results is positively correlated with the reading time. It is calculated as follows: the score is log (1 + readtime / 600), and for example, the score is k * readtime. Where readtime is the calculated reading duration and k is a positive number.
  • the server can also calculate the score by other calculation methods, which is not limited.
  • the server may first calculate the reading duration of the historical search result that is read at each search, calculate the average value of each reading duration, and then according to the The average calculates the score for this search result.
  • the server may separately calculate a score according to each reading duration, and then finally calculate a score of the historical search result according to each score.
  • the average value of the calculated scores is used as the score of the historical search result, or the calculated intermediate value of each score is used as the score of the search result, which is not limited in this embodiment.
  • the server may also calculate the score according to the reading duration and the position ranking, that is, the step of the server calculating the score according to the reading duration may include:
  • the server may generate and save a presentation log in each search, and the presentation log includes identification information for uniquely identifying the current search and a search result list sorted according to the relevance of each search result to the search term.
  • the server may query the presentation log of the same search_id, obtain the ranking of the docid in the search result list of the presentation log, and rank the ranking as the location of the search result. For example, if a search result ranks first in the search result list, the position of the search result is ranked as "1"; and if a search result ranks fourth in the search result list, the search result The position is ranked as "4".
  • the server may obtain a plurality of location rankings that obtain the historical search result.
  • the score is positively correlated with the reading duration and negatively correlated with the position ranking, which means that the longer the reading time of the search result, the higher the rating of the search result; the higher the ranking of the search results, the rating of the search result The lower.
  • the score is log(1+log(1+pos))*(1+readtime/600). Where pos is the position ranking and readtime is the reading duration.
  • the server may further calculate an average value of the obtained reading durations and an average position ranking of each position ranking, and then calculate according to the average reading duration and the average position ranking. The rating of this historical search result.
  • the server may further calculate a score according to the reading duration and the position ranking of the historical search result obtained by each search; then calculate an average value of each score, and use the calculated average value as a score of the historical search result; or The intermediate value in each score is selected, and the selected intermediate value is used as the score of the historical search result.
  • the first point that needs to be added is that the server can calculate the score of each historical search result according to each historical search result in the previous predetermined time period every predetermined time period, which is not limited.
  • the second point that needs to be added is that the above is only an example of calculating the score of each search result by the above calculation method.
  • the server may calculate the score by other calculation methods, which is not limited in this embodiment.
  • the third point that needs to be supplemented is that before calculating the score of a certain historical search result, the server can also detect whether the historical search result contains a sensitive word, and if the sensitive word is included, the server can filter out the historical search result.
  • sensitive words can be pornographic words, reactionary words, etc., which is not limited.
  • the session corresponding to the historical search result containing the sensitive word may be filtered by the session filter, and then each historical search result is calculated according to the filtered session. Rating.
  • the scores of the respective historical search results may be combined to obtain the scores of the respective historical search results when searching for a certain search term.
  • the server may also generate a result model that includes the respective historical search results and the scores for each of the historical search results. For example, in conjunction with FIG. 5, the server can obtain a scoring model of each historical search result when the search term is historically searched.
  • the search client may obtain a score of each historical search result from the server.
  • the search client may calculate a historical search result by a similar method. Scoring (The search client can obtain the search log, click log and presentation log required in the calculation process from the server, which is not limited).
  • the score of each historical search result calculated by the search client is calculated by the server according to the historical search result when all users in the entire network search for each search term, so the accuracy of each historical search result calculated by the calculation is obtained. Higher.
  • the search result sorting apparatus may include: a first obtaining module 610 , a second obtaining module 620 , and Adjustment module 630.
  • the first obtaining module 610 is configured to obtain a search result list corresponding to the search term
  • the second obtaining module 620 is configured to obtain a score of the M target search results in the search result list, where the M target search results are historical search results of the search words, and the score of each historical search result is based on a score determined by the reading duration of the historical search result; M is an integer greater than or equal to 1.
  • the score of each historical search result is positively correlated with the reading duration of the historical search result.
  • the adjusting module 630 is configured to adjust, according to the scores of the M target search results, the ranking of the M target search results in the search result list, optionally, the target search result with a higher score is in the search result.
  • the sorting in the list is earlier.
  • the search result sorting apparatus obtains M target search results in the search result list after acquiring the search result list, and then adjusts M target searches according to the scores of the M target search results.
  • the result is sorted in the search result list, wherein the higher the score, the higher the target search result is sorted in the search result list, so that the search client can display the search result list, and the target search result with higher score, that is, the user
  • the search results that may be satisfactory are ranked in the top position; the problem of lower click rate of the top search results in the search result list displayed by the search client in the related art is solved; the top search result list can be improved The search result's clickthrough rate effect.
  • the adjusting module 630 includes:
  • a sorting unit configured to sort the M target search results according to a score from high to low according to scores of the M target search results
  • an adjusting unit configured to sequentially traverse each target search result in the sorted order, and exchange the target search result in the search result list with the candidate search result in the search result list, where the candidate search result is Is a non-target search result and is sorted in the search result list before the target search result.
  • the device further includes:
  • a statistics module configured to count the number of target search results of the exchanged locations in the process of traversing the target search result
  • the ending module is configured to end traversal of the adjusting unit when the number of the target search results of the exchanged position obtained by the statistics module reaches a preset threshold.
  • the second obtaining module 620 is further configured to:
  • the preset condition includes: the score is higher than a preset score, or is ranked in the top M position when the ranking is ranked from high to low.
  • the device further includes:
  • a third obtaining module configured to acquire, for each historical search result when the search term is historically searched, a reading duration that the historical search result is read each time; and a calculating module, configured to calculate the history according to the reading duration The rating of the search results;
  • a save module for saving the scores of the calculated historical search results.
  • the calculating module is further configured to: obtain, for each historical search result when the search term is historically searched, a position ranking of the historical search result in the search result list; according to the reading duration and the The position ranking calculates the score of the historical search result.
  • the calculating module is further configured to separately calculate a score according to a reading duration and a position ranking of the historical search result obtained by each search; calculate an average value of each score, and use the calculated average value as the historical search result. Rating.
  • the calculating module is further configured to separately calculate a score according to a reading duration and a position ranking of the historical search result obtained by each search; selecting an intermediate value in each score, and using the selected intermediate value as the historical search The score of the result.
  • search result sorting apparatus provided by the foregoing embodiment is only illustrated by the division of each functional module.
  • function allocation may be completed by different functional modules according to requirements, that is, the internal of the server.
  • the results are divided into different functional modules to perform all or part of the functions described above.
  • search result sorting apparatus and the search result sorting method embodiment provided by the foregoing embodiments are in the same concept, and the specific implementation process is described in detail in the method embodiment, and details are not described herein again.
  • the embodiment of the present invention further provides a computer readable storage medium, which may be a computer readable storage medium included in the memory in the above embodiment; or may exist separately and not assembled into the terminal.
  • Computer readable storage medium may be a computer readable storage medium included in the memory in the above embodiment; or may exist separately and not assembled into the terminal.
  • Computer readable storage medium stores one or more programs that are used by one or more processors to perform the search result ranking method described above.
  • FIG. 7 illustrates a result of a server provided by an embodiment of the present invention.
  • the server is configured to implement the search result sorting method on the server side provided in the above embodiment. Specifically:
  • the server 700 includes a central processing unit (CPU) 701, a system memory 704 including a random access memory (RAM) 702 and a read only memory (ROM) 703, and a system bus 705 that connects the system memory 704 and the central processing unit 701.
  • the server 700 also includes a basic input/output system (I/O system) 706 that facilitates transfer of information between various devices within the computer, and mass storage for storing the operating system 713, applications 714, and other program modules 715.
  • I/O system basic input/output system
  • the basic input/output system 706 includes a display 708 for displaying information and an input device 709 such as a mouse or keyboard for user input of information.
  • the display 708 and input device 709 are both connected to the central processing unit 701 via an input and output controller 710 that is coupled to the system bus 705.
  • the basic input/output system 706 can also include an input and output controller 710 for receiving and processing input from a plurality of other devices, such as a keyboard, mouse, or electronic stylus.
  • input and output controller 710 also provides output to a display screen, printer, or other type of output device.
  • the mass storage device 707 is connected to the central processing unit 701 by a mass storage controller (not shown) connected to the system bus 705.
  • the mass storage device 707 and its associated computer readable medium provide non-volatile storage for the server 700. That is, the mass storage device 707 can include a computer readable medium (not shown) such as a hard disk or a CD-ROM drive.
  • the computer readable medium can include computer storage media and communication media.
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data results, program modules or other data.
  • Computer storage media include RAM, ROM, EPROM, EEPROM, flash memory or other solid state storage technologies, CD-ROM, DVD or other optical storage, tape cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices.
  • RAM random access memory
  • ROM read only memory
  • EPROM Erasable programmable read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • the server 700 may also be operated by a remote computer connected to the network through a network such as the Internet. That is, the server 700 can be connected to the network 712 through a network interface unit 711 connected to the system bus 705, or can also be connected to other types of networks or remote computer systems (not shown) using the network interface unit 711. .
  • the memory also includes one or more programs, the one or more programs being stored in a memory and configured to be executed by one or more processors.
  • the one or more programs described above include instructions for performing the above-described search result ordering method.
  • FIG. 8 is a block diagram showing the structure of a terminal 800 according to an exemplary embodiment of the present invention.
  • the terminal 800 can be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III), and an MP4 (Moving Picture Experts Group Audio Layer IV). Level 4) Player, laptop or desktop computer.
  • Terminal 800 may also be referred to as a user device, a portable terminal, a laptop terminal, a desktop terminal, and the like.
  • the terminal 800 includes a processor 801 and a memory 802.
  • Processor 801 can include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like.
  • the processor 801 can be implemented by at least one of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). achieve.
  • the processor 801 may also include a main processor and a coprocessor, and the main processor is a processor for processing data in an awake state, which is also called a CPU (Central Processing Unit); the coprocessor is A low-power processor for processing data in standby.
  • the processor 801 can be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and rendering of the content that the display needs to display.
  • the processor 801 may also include an AI (Artificial Intelligence) processor for processing computational operations related to machine learning.
  • AI Artificial Intelligence
  • Memory 802 can include one or more computer readable storage media, which can be non-transitory. Memory 802 can also include high speed random access memory, as well as non-volatile memory, such as one or more disk storage devices, flash memory devices. In some embodiments, the non-transitory computer readable storage medium in memory 802 is for storing at least one instruction for execution by processor 801 to implement search results provided by method embodiments of the present application. Sorting method.
  • terminal 800 also optionally includes a peripheral device interface 803 and at least one peripheral device.
  • the processor 801, the memory 802, and the peripheral device interface 803 can be connected by a bus or a signal line.
  • Each peripheral device can be connected to the peripheral device interface 803 via a bus, signal line or circuit board.
  • the peripheral device includes at least one of a radio frequency circuit 804, a touch display screen 805, a camera 806, an audio circuit 807, a positioning component 808, and a power source 809.
  • Peripheral device interface 803 can be used to connect at least one peripheral device associated with I/O (Input/Output) to processor 801 and memory 802.
  • processor 801, memory 802, and peripheral interface 803 are integrated on the same chip or circuit board; in some other embodiments, any of processor 801, memory 802, and peripheral interface 803 or The two can be implemented on a separate chip or circuit board, which is not limited in this embodiment.
  • the radio frequency circuit 804 is configured to receive and transmit an RF (Radio Frequency) signal, also called an electromagnetic signal. Radio frequency circuit 804 communicates with the communication network and other communication devices via electromagnetic signals. The radio frequency circuit 804 converts the electrical signal into an electromagnetic signal for transmission, or converts the received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 804 includes an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and the like. The radio frequency circuit 804 can communicate with other terminals via at least one wireless communication protocol.
  • RF Radio Frequency
  • the wireless communication protocols include, but are not limited to, the World Wide Web, a metropolitan area network, an intranet, generations of mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks, and/or WiFi (Wireless Fidelity) networks.
  • the radio frequency circuit 804 may also include a circuit related to NFC (Near Field Communication), which is not limited in this application.
  • the display screen 805 is used to display a UI (User Interface).
  • the UI can include graphics, text, icons, video, and any combination thereof.
  • display 805 is a touch display
  • display 805 also has the ability to capture touch signals over the surface or surface of display 805.
  • the touch signal can be input to the processor 801 for processing as a control signal.
  • the display screen 805 can also be used to provide virtual buttons and/or virtual keyboards, also referred to as soft buttons and/or soft keyboards.
  • the display screen 805 may be one, and the front panel of the terminal 800 is disposed; in other embodiments, the display screen 805 may be at least two, respectively disposed on different surfaces of the terminal 800 or in a folded design; In still other embodiments, the display screen 805 can be a flexible display screen disposed on a curved surface or a folded surface of the terminal 800. Even the display screen 805 can be set to a non-rectangular irregular pattern, that is, a profiled screen.
  • the display screen 805 can be prepared by using an LCD (Liquid Crystal Display) or an OLED (Organic Light-Emitting Diode).
  • Camera component 806 is used to capture images or video.
  • camera assembly 806 includes a front camera and a rear camera.
  • the front camera is placed on the front panel of the terminal, and the rear camera is placed on the back of the terminal.
  • the rear camera is at least two, which are respectively a main camera, a depth camera, a wide-angle camera, and a telephoto camera, so as to realize the background blur function of the main camera and the depth camera, and the main camera Combine with a wide-angle camera for panoramic shooting and VR (Virtual Reality) shooting or other integrated shooting functions.
  • camera assembly 806 can also include a flash.
  • the flash can be a monochrome temperature flash or a two-color temperature flash.
  • the two-color temperature flash is a combination of a warm flash and a cool flash that can be used for light compensation at different color temperatures.
  • the audio circuit 807 can include a microphone and a speaker.
  • the microphone is used to collect sound waves of the user and the environment, and convert the sound waves into electrical signals for processing to the processor 801 for processing, or input to the radio frequency circuit 804 for voice communication.
  • the microphones may be multiple, and are respectively disposed at different parts of the terminal 800.
  • the microphone can also be an array microphone or an omnidirectional acquisition microphone.
  • the speaker is then used to convert electrical signals from the processor 801 or the RF circuit 804 into sound waves.
  • the speaker can be a conventional film speaker or a piezoelectric ceramic speaker.
  • audio circuit 807 can also include a headphone jack.
  • the location component 808 is used to locate the current geographic location of the terminal 800 to implement navigation or LBS (Location Based Service).
  • the positioning component 808 can be a positioning component based on a US-based GPS (Global Positioning System), a Chinese Beidou system, or a Russian Galileo system.
  • Power source 809 is used to power various components in terminal 800.
  • the power source 809 can be an alternating current, a direct current, a disposable battery, or a rechargeable battery.
  • the rechargeable battery may be a wired rechargeable battery or a wireless rechargeable battery.
  • a wired rechargeable battery is a battery that is charged by a wired line
  • a wireless rechargeable battery is a battery that is charged by a wireless coil.
  • the rechargeable battery can also be used to support fast charging technology.
  • terminal 800 also includes one or more sensors 810.
  • the one or more sensors 810 include, but are not limited to, an acceleration sensor 811, a gyro sensor 812, a pressure sensor 813, a fingerprint sensor 814, an optical sensor 815, and a proximity sensor 816.
  • the acceleration sensor 811 can detect the magnitude of the acceleration on the three coordinate axes of the coordinate system established by the terminal 800.
  • the acceleration sensor 811 can be used to detect components of gravity acceleration on three coordinate axes.
  • the processor 801 can control the touch display screen 805 to display the user interface in a landscape view or a portrait view according to the gravity acceleration signal collected by the acceleration sensor 811.
  • the acceleration sensor 811 can also be used for the acquisition of game or user motion data.
  • the gyro sensor 812 can detect the body direction and the rotation angle of the terminal 800, and the gyro sensor 812 can cooperate with the acceleration sensor 811 to collect the 3D motion of the user to the terminal 800. Based on the data collected by the gyro sensor 812, the processor 801 can implement functions such as motion sensing (such as changing the UI according to the user's tilting operation), image stabilization at the time of shooting, game control, and inertial navigation.
  • functions such as motion sensing (such as changing the UI according to the user's tilting operation), image stabilization at the time of shooting, game control, and inertial navigation.
  • the pressure sensor 813 may be disposed at a side border of the terminal 800 and/or a lower layer of the touch display screen 805.
  • the pressure sensor 813 When the pressure sensor 813 is disposed on the side frame of the terminal 800, the user's holding signal to the terminal 800 can be detected, and the processor 801 performs left and right hand recognition or shortcut operation according to the holding signal collected by the pressure sensor 813.
  • the operability control on the UI interface is controlled by the processor 801 according to the user's pressure on the touch display screen 805.
  • the operability control includes at least one of a button control, a scroll bar control, an icon control, and a menu control.
  • the fingerprint sensor 814 is configured to collect the fingerprint of the user, and the processor 801 identifies the identity of the user according to the fingerprint collected by the fingerprint sensor 814, or the fingerprint sensor 814 identifies the identity of the user according to the collected fingerprint. Upon identifying that the user's identity is a trusted identity, the processor 801 authorizes the user to perform related sensitive operations including unlocking the screen, viewing encrypted information, downloading software, paying and changing settings, and the like.
  • the fingerprint sensor 814 can be provided with the front, back or side of the terminal 800. When the physical button or vendor logo is provided on the terminal 800, the fingerprint sensor 814 can be integrated with the physical button or the manufacturer logo.
  • Optical sensor 815 is used to collect ambient light intensity.
  • the processor 801 can control the display brightness of the touch display screen 805 according to the ambient light intensity collected by the optical sensor 815. Specifically, when the ambient light intensity is high, the display brightness of the touch display screen 805 is raised; when the ambient light intensity is low, the display brightness of the touch display screen 805 is lowered.
  • the processor 801 can also dynamically adjust the shooting parameters of the camera assembly 806 according to the ambient light intensity collected by the optical sensor 815.
  • Proximity sensor 816 also referred to as a distance sensor, is typically disposed on the front panel of terminal 800. Proximity sensor 816 is used to capture the distance between the user and the front of terminal 800. In one embodiment, when the proximity sensor 816 detects that the distance between the user and the front side of the terminal 800 is gradually decreasing, the touch screen 805 is controlled by the processor 801 to switch from the bright screen state to the screen state; when the proximity sensor 816 detects When the distance between the user and the front side of the terminal 800 gradually becomes larger, the processor 801 controls the touch display screen 805 to switch from the state of the screen to the bright state.
  • FIG. 8 does not constitute a limitation to the terminal 800, and may include more or less components than those illustrated, or may combine some components or adopt different component arrangements.
  • a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
  • the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种搜索结果排序方法、装置、服务器及存储介质。所述方法包括:获取搜索词对应的搜索结果列表;获取搜索结果列表中的M个目标搜索结果的评分,M个目标搜索结果为搜索词的历史搜索结果,每个历史搜索结果的评分为根据历史搜索结果的阅读时长确定的评分,其中M为大于等于1的整数;根据M个目标搜索结果的评分调整M个目标搜索结果在搜索结果列表中的排序。上述方法解决了现有技术中搜索结果列表中排名靠前的搜索结果的点击率较低的问题,能够提高搜索结果列表中排名靠前的搜索结果的点击率。

Description

搜索结果排序方法、装置、服务器及存储介质
本申请要求于2017年01月23日提交中国国家知识产权局、申请号为201710050714.7、发明名称为“搜索结果排序方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明实施例涉及信息搜索技术领域,特别涉及一种搜索结果排序方法、装置、服务器及存储介质。
背景技术
在日常生活中,用户经常需要使用搜索客户端进行信息搜索。
服务器在接收到搜索客户端发送的搜索词之后,获取搜索词所对应的搜索结果列表;之后根据DBN(Dynamic Bayesian Network,动态贝叶斯网络)点击模型中的用户满意的历史搜索结果,调整搜索结果列表中的搜索结果的顺序;返回调整后的搜索结果列表至搜索客户端。
然而,由于DBN点击模型是假设用户在搜索结果列表中最后点击的搜索结果是用户满意的历史搜索结果。但是实际实现时,搜索结果列表中可能包括多个用户满意的结果或者并不包括用户满意的结果,因此上述DBN点击模型中确定的用户满意的历史搜索结果并不准确,服务器在根据该DBN点击模型调整搜索结果列表之后,搜索结果列表中靠前的搜索结果并不一定是用户满意的结果,也即上述方案中搜索结果列表中靠前的搜索结果的点击率较低。
发明内容
本发明实施例提供了一种搜索结果排序方法、装置、服务器及存储介质,可以解决相关技术中搜索客户端展示的搜索结果列表中排名靠前的搜索结果的点击率较低的问题。技术方案如下:
根据本发明实施例的一个方面,提供一种搜索结果排序方法,该方法包括:
获取搜索词所对应的搜索结果列表;
获取所述搜索结果列表中的M个目标搜索结果的评分,所述M个目标搜 索结果为所述搜索词的历史搜索结果,每个历史搜索结果的评分为根据所述历史搜索结果的阅读时长确定的;M为大于等于1的整数;
根据所述M个目标搜索结果的评分调整所述M个目标搜索结果在所述搜索结果列表中的排序。
根据本发明实施例的另一方面,提供一种搜索结果排序装置,该装置包括:
第一获取模块,用于获取搜索词所对应的搜索结果列表;
第二获取模块,用于获取所述搜索结果列表中的M个目标搜索结果的评分,所述M个目标搜索结果为所述搜索词的历史搜索结果,每个历史搜索结果的评分为根据所述历史搜索结果的阅读时长确定的评分;M为大于等于1的整数;
调整模块,用于根据所述M个目标搜索结果的评分调整所述M个目标搜索结果在所述搜索结果列表中的排序。
根据本发明实施例的另一方面,提供了一种服务器,所述服务器包括:处理器和存储器,所述存储器存储有一个或者一个以上程序,所述一个或者一个以上程序被一个或者一个以上的处理器用来执行如上所述的搜索结果排序方法。
根据本发明实施例的另一方面,提供了一种终端,所述终端包括:处理器和存储器,所述存储器存储有一个或者一个以上程序,所述一个或者一个以上程序被一个或者一个以上的处理器用来执行如如上所述的搜索结果排序方法。
根据本发明实施例的另一方面,提供了一种计算机可读存储介质,所述存储器存储有一个或者一个以上程序,所述一个或者一个以上程序被一个或者一个以上的处理器用来执行如上所述的搜索结果排序方法。
本发明实施例提供的技术方案带来的有益效果是:
通过在获取到搜索结果列表之后,获取搜索结果列表中的M个目标搜索结果,然后根据M个目标搜索结果的评分调整M个目标搜索结果在搜索结果列表中的排序,这样搜索客户端在展示搜索结果列表时,可以将评分较高的目标搜索结果也即用户可能满意的搜索结果排在靠前的位置;解决了相关技术中搜索客户端展示的搜索结果列表中排名靠前的搜索结果的点击率较低的问题;达到了可以提高搜索结果列表中靠前的搜索结果的点击率的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明各个实施例所涉及的实施环境的示意图;
图2是本发明一个实施例提供的搜索结果排序方法的流程图;
图3是本发明另一个实施例提供的搜索结果排序方法的流程图;
图4是本发明另一实施例中提供的调整搜索结果列表中的搜索结果的顺序的示意图;
图5是本发明另一实施例中提供的生成结果模型的示意图;
图6是本发明一个实施例提供的搜索结果排序装置的示意图;
图7是本发明一个实施例提供的服务器的示意图;
图8是本发明一个实施例提供的终端的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明各个实施例所涉及的实施环境的示意图,如图1所示,该实施环境包括搜索客户端110和服务器120。
搜索客户端110可以为浏览器、购物客户端以及社交应用客户端之类的具有信息搜索功能的搜索客户端。实际实现时,该搜索客户端110可以运行在终端中,终端通过有线或者无线网络与服务器120连接。
服务器120是指用于为搜索客户端110提供后台服务的服务器,该服务器120可以为一台服务器,也可以为由多台服务器组成的服务器集群,本发明实施例对此并不做限定。
下述各个实施例提供的搜索结果排序方法可以用于图1所示的搜索客户端110中,也可以用于服务器120中。并且,当搜索结果排序方法用于搜索客户端110中时,搜索客户端110获取搜索词所对应的搜索结果列表,是指搜索客户端110接收服务器120返回的该搜索结果列表;而当搜索结果排序方法用于 服务器120中时,服务器120获取搜索词所对应的搜索结果列表是指服务器120根据搜索词搜索各个相关的搜索结果,并根据各个搜索结果生成搜索结果列表,本实施例对此并不做限定。
请参考图2,其示出了本发明一个实施例提供的搜索结果排序方法的方法流程图,如图2所示,该搜索结果排序方法可以包括:
步骤201,获取搜索词所对应的搜索结果列表。
搜索结果列表中可以包括该搜索词所对应的各个搜索结果。
实际实现时,搜索结果列表中的各个搜索结果可以按照与搜索词的相关性进行排序,比如,按照与搜索词相关性由高到低的顺序排序,在此不再赘述。
步骤202,获取搜索结果列表中的M个目标搜索结果。
M个目标搜索结果为历史搜索该搜索词时的历史搜索结果,每个历史搜索结果的评分为根据历史搜索结果的阅读时长确定的评分;M为大于等于1的整数。
可选地,每个历史搜索结果的评分与历史搜索结果的阅读时长呈正相关关系。
步骤203,根据M个目标搜索结果的评分调整M个目标搜索结果在搜索结果列表中的排序。
可选地,评分越高的目标搜索结果在搜索结果列表中的排序越前。
综上所述,本实施例提供的搜索结果排序方法,通过在获取到搜索结果列表之后,获取搜索结果列表中的M个目标搜索结果,然后根据M个目标搜索结果的评分调整M个目标搜索结果在搜索结果列表中的排序,这样搜索客户端在展示搜索结果列表时,可以将评分较高的目标搜索结果也即用户可能满意的搜索结果排在靠前的位置;解决了现有技术中搜索客户端展示的搜索结果列表中排名靠前的搜索结果的点击率较低的问题;达到了可以提高搜索结果列表中靠前的搜索结果的点击率的效果。
可选地,由于调整后的搜索结果列表中靠前的搜索结果的评分较高,也即靠前的搜索结果通常是用户比较满意的搜索结果,因此,这就使得用户在搜索客户端展示的搜索结果列表中,可以很容易的查找得到自己需要的搜索结果,提高了用户的信息查询效率。
请参考图3,其示出了本发明一个实施例提供的搜索结果排序方法的方法流程图,如图3所示,该搜索结果排序方法可以包括:
步骤301,获取搜索词所对应的搜索结果列表。
服务器接收到搜索客户端发送的搜索词之后,可以搜索该搜索词所对应的搜索结果列表。其中,搜索结果列表中可以包括该搜索词所对应的各个搜索结果。实际实现时,搜索结果列表中的各个搜索结果可以按照与搜索词的相关性进行排序,比如,按照与搜索词相关性由高到低的顺序排序,在此不再赘述。
步骤302,获取搜索结果列表中历史被搜索到的各个搜索结果。
服务器中可以保存有历史搜索该搜索词时的各个历史搜索结果以及每个历史搜索结果列表的评分。
对于本次搜索结果列表中的每个搜索结果,服务器可以检测该搜索结果是否是历史搜索该搜索词时搜索到的历史搜索结果,若是,则提取该历史搜索结果;反之,则不提取该历史搜索结果,本申请实施例对此并不做限定。
比如,搜索结果列表中包括doc1、doc2、…docn,其中,doc3、doc7、doc8、…、docj是历史搜索到的历史搜索结果,则服务器获取到的各个历史搜索结果分别为doc3、doc7、doc8、…、docj。其中,n为正整数,j为小于等于n的正整数。
实际实现时,服务器中可以保存有结果模型,该结果模型中包括历史搜索该搜索词时的各个历史搜索结果以及每个历史搜索结果的评分,此时,对于本次获取到的搜索结果列表中的每个搜索结果,服务器可以检测该搜索结果是否属于结果模型,若属于,则提取该历史搜索结果,反之,则不提取历史搜索结果,本申请实施例对此并不做限定。
需要说明的是,本申请实施例所说的历史搜索的搜索词是指与步骤301中的搜索词相似度高于目标阈值的搜索词,也即两者可以相似也可以完全相同,本实施例对此并不做限定。其中,目标阈值可以为系统默认的数值,对此也不做限定。
步骤303,选择获取到的搜索结果中满足预设条件的搜索结果,并得到M个目标搜索结果。
其中,预设条件包括:评分高于预设分数,或者,按照评分由高到低的顺序排序时排名在前M位。
预设分数可以为系统默认的分数,或者,根据用户或运维人员的配置指令所配置的分数,本申请实施例对此并不做限定。
以预设条件包括评分高于预设分数为例,服务器可以根据预先存储的各个历史搜索结果的评分获取步骤302中获取到的各个历史搜索结果的评分,然后选择其中评分高于预设分数的历史搜索结果。
需要说明的是,本实施例只是以选择获取到的历史搜索结果中满足预设条件的目标搜索结果为例,实际实现时,服务器还可以将获取到的各个历史搜索结果直接作为M个目标搜索结果,本实施例对此并不做限定。
步骤304,根据M个目标搜索结果的评分将M个目标搜索结果按照评分由高到低的顺序排序。
步骤305,按照排序后的顺序依次遍历每个目标搜索结果,将搜索结果列表中的目标搜索结果与搜索结果列表中的候选搜索结果交换位置,候选搜索结果为非目标搜索结果且在搜索结果列表中排序在目标搜索结果之前。
在遍历每个目标搜索结果时,服务器可以检测搜索结果列表中在该目标搜索结果之前是否存在未被交换过位置的候选搜索结果,若包含,则交换两者的位置;而若检测结果为不包含,则继续遍历下一个目标搜索结果。
可选地,候选搜索结果可以不是M个目标搜索结果中的任意一个,且候选搜索结果是在目标搜索结果之前的第一个搜索结果。比如,请参考图4,服务器可以将doc3与doc1交换位置、doc7与doc2交换位置、doc8与doc4交换位置等等。
实际实现时,在遍历各个目标搜索结果的过程中,服务器可以统计已交换位置的目标搜索结果的条数;当已交换位置的目标搜索结果的条数达到预设阈值时,结束遍历。而若已交换位置的目标搜索结果的条数未达到预设阈值,则继续遍历,在此不再赘述。其中,预设阈值为系统默认的数值,比如,为3-8之间的数值,对此并不做限定。
通过在交换位置的目标搜索结果的条数达到预设阈值时,结束遍历,达到了最新的搜索结果仍然可以排在搜索结果列表中比较靠前的位置,提高了用户获取最新搜索结果的获取效率。
在将目标搜索结果和候选搜索结果交换位置之后,可以为交换后的目标搜索结果所在的位置也即交换前的候选搜索结果所在的位置设置标记信息,该标记信息用于表示该位置的搜索结果为交换位置后的目标搜索结果。这样,服务器即可通过判断用户点击的搜索结果的位置是否设置有标记信息来判断用户选择的搜索结果是否通过结果模型调整前的搜索结果,进而判断是否需要优化 结果模型。
在调整搜索结果列表中的M个目标搜索结果的排序之后,服务器可以返回调整后的搜索结果列表至搜索客户端,相应的,搜索客户端可以接收调整后的搜索结果列表,并显示调整后的搜索结果列表。
实验证明,通过上述方式返回调整后的搜索结果列表至搜索客户端之后,搜索结果列表中前5位搜索结果被用户选择的概率提高了6.04%,而前10位搜索结果被用户选择的概率提高了3.92%。
综上所述,本实施例提供的搜索结果排序方法,通过在获取到搜索结果列表之后,获取搜索结果列表中的M个目标搜索结果,然后根据M个目标搜索结果的评分调整M个目标搜索结果在搜索结果列表中的排序,这样搜索客户端在展示搜索结果列表时,可以将评分较高的目标搜索结果也即用户可能满意的搜索结果排在靠前的位置;解决了现有技术中搜索客户端展示的搜索结果列表中排名靠前的搜索结果的点击率较低的问题;达到了可以提高搜索结果列表中靠前的搜索结果的点击率的效果。
可选地,由于调整后的搜索结果列表中靠前的搜索结果的评分较高,也即靠前的搜索结果通常是用户比较满意的搜索结果,因此,这就使得用户在搜索客户端展示的搜索结果列表中,可以很容易的查找得到自己需要的搜索结果,提高了用户的信息查询效率。
需要说明的是,在步骤302之前,该搜索结果排序方法还可以包括如下步骤:
第一,对于历史搜索各个搜索词时的每个历史搜索结果,获取历史搜索结果每次被阅读的阅读时长;根据阅读时长计算历史搜索结果的评分。
服务器每次搜索时,可以生成并保存搜索日志和点击日志。其中,搜索日志中包括用于唯一标识本次搜索的标识信息如search_id以及本次搜索的搜索结果列表中的各个搜索结果的标识信息如docid。点击日志中包括用于唯一标识本次搜索的标识信息以及用户在搜索客户端中执行的各种操作的操作记录;其中,操作记录可以包括session集合,该session集合包括用户一次搜索过程中,所有的搜索和点击行为的集合。比如,session集合中包括用户输入搜索词的输入记录;接收到服务器返回的搜索结果列表之后,点击搜索结果列表中的某一搜索结果的点击记录;退出已点击的搜索结果的退出记录等等。
服务器可以根据保存的搜索日志以及点击日志获取历史搜索结果每次被阅读的阅读时长。可选地,服务器可以根据每次搜索的搜索日志确定search_id以及对应的各个docid;然后根据相同search_id的点击日志中的session集合,确定每个docid的退出记录的时间与点击记录的时间的时间差,将确定的时间差作为该docid的搜索结果在此次搜索时的阅读时长。
实际实现时,若服务器多次搜索该搜索词时,多次搜索到某一历史搜索结果,则服务器可以通过上述方法计算得到该历史搜索结果在每次搜索时的阅读时长。
在服务器获取到历史搜索结果的阅读时长之后,服务器可以根据该阅读时长计算该历史搜索结果的评分。其中,历史搜索结果的评分与阅读时长呈正相关关系。其计算方式如下:评分为log(1+readtime/600),又比如,评分为k*readtime。其中,readtime为计算得到的阅读时长,k为正数。当然实际实现时,服务器还可以通过其他计算方式来计算评分,对此并不做限定。
在实际计算过程中,若在多次搜索时均包含同一历史搜索结果,则服务器可以先计算该历史搜索结果在每次搜索时被阅读的阅读时长,计算各个阅读时长的平均值,然后根据该平均值计算该搜索结果的评分。当然,对于获取到的每个阅读时长,服务器还可以根据每个阅读时长分别计算评分,然后再根据各个评分最终计算得到该历史搜索结果的评分。比如,将计算得到的各个评分的平均值作为该历史搜索结果的评分,或者,将计算得到的各个评分的中间值作为该搜索结果的评分,本实施例对此并不做限定。
上述只是以服务器根据阅读时长来计算历史搜索结果的评分为例,实际实现时,服务器还可以根据阅读时长和位置排名同时计算评分,也即服务器根据阅读时长计算评分的步骤可以包括:
(1)、对于历史搜索各个搜索词时的每个历史搜索结果,获取历史搜索结果在搜索结果列表中的位置排名。
服务器在每次搜索时,可以生成并保存展现日志,展现日志中包括用于唯一标识本次搜索的标识信息以及按照各个搜索结果与搜索词的相关性排序后的搜索结果列表。
服务器可以查询相同search_id的展现日志,获取docid在该展现日志的搜索结果列表中的排序,将排序作为该搜索结果的位置排名。比如,某一搜索结果在搜索结果列表中排在第一位,则该搜索结果的位置排名为“1”;而若某一 搜索结果在搜索结果列表中排在第四位,则该搜索结果的位置排名为“4”。
可选地,与阅读时长类似,若在多次搜索时均搜索到某一历史搜索结果,则服务器可以获取得到该历史搜索结果的多个位置排名。
(2)、根据阅读时长以及位置排名计算历史搜索结果的评分。
评分与阅读时长呈正相关关系而与位置排名呈负相关关系,这也就是说,搜索结果的阅读时长越长,该搜索结果的评分越高;搜索结果的排名越靠前,该搜索结果的评分越低。比如,评分为log(1+log(1+pos))*(1+readtime/600)。其中,pos为位置排名,readtime为阅读时长。
可选地,若该搜索结果在多次搜索时均搜索得到,则服务器还可以计算获取到的各个阅读时长的平均值以及各个位置排名的平均位置排名,然后根据平均阅读时长和平均位置排名计算该历史搜索结果的评分。可选地,服务器还可以根据每次搜索得到的历史搜索结果的阅读时长和位置排名分别计算评分;然后计算各个评分的平均值,将计算得到的平均值作为该历史搜索结果的评分;或者,选择各个评分中的中间值,将选择得到的中间值作为该历史搜索结果的评分。
需要补充说明的第一点是,服务器可以每隔预定时间段根据之前的预定时间段内的各个历史搜索结果来计算各个历史搜索结果的评分,对此并不做限定。
需要补充说明的第二点是,上述只是以通过上述计算方式计算各个搜索结果的评分为例,可选地,服务器还可以通过其他计算方式计算评分,本实施例对此并不做限定。
需要补充说明的第三点是,在计算某一历史搜索结果的评分之前,服务器还可以检测该历史搜索结果中是否包含敏感词,若包含敏感词,则服务器可以过滤掉该历史搜索结果。其中,敏感词可以为色情词语、反动词语等等,对此并不做限定。比如,请参考图5,在获取到搜索词的点击日志中的session集合之后,可以通过session filter过滤包含敏感词的历史搜索结果所对应的session,然后根据过滤后的session计算每个历史搜索结果的评分。
第二,保存计算得到的各个历史搜索结果的评分。
在计算得到各个历史搜索结果的评分之后,可以将各个历史搜索结果的评分进行合并,进而得到搜索某一搜索词时的各个历史搜索结果的评分。可选地,服务器还可以生成包括各个历史搜索结果以及每个历史搜索结果的评分的结 果模型。比如,结合图5,服务器可以得到历史搜索该搜索词时的各个历史搜索结果的评分模型。
实际实现时,当该搜索结果排序方法用于搜索客户端时,搜索客户端可以从服务器中获取各个历史搜索结果的评分,可选地,搜索客户端可以采用类似的方法计算各个历史搜索结果的评分(搜索客户端可以从服务器中获取计算过程中需要的搜索日志、点击日志和展现日志,对此并不做限定)。并且,相对于搜索客户端计算的各个历史搜索结果的评分,由于服务器可以根据全网中所有用户搜索各个搜索词时的历史搜索结果进行计算,因此,其计算得到的各个历史搜索结果的准确度较高。
请参考图6,其示出了本发明一个实施例提供的搜索结果排序装置的结果示意图,如图6所示,该搜索结果排序装置可以包括:第一获取模块610、第二获取模块620和调整模块630。
第一获取模块610,用于获取搜索词所对应的搜索结果列表;
第二获取模块620,用于获取所述搜索结果列表中的M个目标搜索结果的评分,所述M个目标搜索结果为所述搜索词的历史搜索结果,每个历史搜索结果的评分为根据所述历史搜索结果的阅读时长确定的评分;M为大于等于1的整数。可选地,每个历史搜索结果的评分与所述历史搜索结果的阅读时长呈正相关关系。
调整模块630,用于根据所述M个目标搜索结果的评分调整所述M个目标搜索结果在所述搜索结果列表中的排序,可选地,评分越高的目标搜索结果在所述搜索结果列表中的排序越前。
综上所述,本实施例提供的搜索结果排序装置,通过在获取到搜索结果列表之后,获取搜索结果列表中的M个目标搜索结果,然后根据M个目标搜索结果的评分调整M个目标搜索结果在搜索结果列表中的排序,其中,评分越高的目标搜索结果在搜索结果列表中的排序越前,这样搜索客户端在展示搜索结果列表时,可以将评分较高的目标搜索结果也即用户可能满意的搜索结果排在靠前的位置;解决了相关技术中搜索客户端展示的搜索结果列表中排名靠前的搜索结果的点击率较低的问题;达到了可以提高搜索结果列表中靠前的搜索结果的点击率的效果。
基于上述实施例提供的搜索结果排序装置,可选的,所述调整模块630, 包括:
排序单元,用于根据所述M个目标搜索结果的评分将所述M个目标搜索结果按照评分由高到低的顺序排序;
调整单元,用于按照排序后的顺序依次遍历每个目标搜索结果,将所述搜索结果列表中的所述目标搜索结果与所述搜索结果列表中的候选搜索结果交换位置,所述候选搜索结果为非目标搜索结果且在所述搜索结果列表中排序在所述目标搜索结果之前。
可选的,所述装置还包括:
统计模块,用于在遍历所述目标搜索结果的过程中,统计已交换位置的目标搜索结果的条数;
结束模块,用于在所述统计模块统计得到的所述已交换位置的目标搜索结果的条数达到预设阈值时,结束所述调整单元的遍历。
可选的,所述第二获取模块620,还用于:
获取所述搜索结果列表中历史被搜索到的各个历史搜索结果;
选择获取到的所述搜索结果中满足预设条件的历史搜索结果,并得到所述M个目标搜索结果。其中,所述预设条件包括:所述评分高于预设分数,或者,按照所述评分由高到低的顺序排序时排名在前M位。
可选的,所述装置还包括:
第三获取模块,用于对于历史搜索所述搜索词时的每个历史搜索结果,获取所述历史搜索结果每次被阅读的阅读时长;计算模块,用于根据所述阅读时长计算所述历史搜索结果的评分;
保存模块,用于保存计算得到的各个历史搜索结果的评分。
可选的,所述计算模块,还用于对于历史搜索所述搜索词时的每个历史搜索结果,获取所述历史搜索结果在搜索结果列表中的位置排名;根据所述阅读时长以及所述位置排名计算所述历史搜索结果的评分。
可选的,所述计算模块,还用于根据每次搜索得到的历史搜索结果的阅读时长和位置排名分别计算评分;计算各个评分的平均值,将计算得到的平均值作为所述历史搜索结果的评分。
可选的,所述计算模块,还用于根据每次搜索得到的历史搜索结果的阅读时长和位置排名分别计算评分;选择各个评分中的中间值,将选择得到的中间值作为所述历史搜索结果的评分。
需要说明的是:上述实施例提供的搜索结果排序装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器的内部结果划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的搜索结果排序装置和搜索结果排序方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质存储有一个或者一个以上程序,该一个或者一个以上程序被一个或者一个以上的处理器用来执行上述搜索结果排序方法。
请参考图7,其示出了本发明一个实施例提供的服务器的结果示意图。该服务器用于实施上述实施例中提供的关于服务器侧的搜索结果排序方法。具体来讲:
所述服务器700包括中央处理单元(CPU)701、包括随机存取存储器(RAM)702和只读存储器(ROM)703的系统存储器704,以及连接系统存储器704和中央处理单元701的系统总线705。所述服务器700还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)706,和用于存储操作系统713、应用程序714和其他程序模块715的大容量存储设备707。
所述基本输入/输出系统706包括有用于显示信息的显示器708和用于用户输入信息的诸如鼠标、键盘之类的输入设备709。其中所述显示器708和输入设备709都通过连接到系统总线705的输入输出控制器710连接到中央处理单元701。所述基本输入/输出系统706还可以包括输入输出控制器710以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器710还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备707通过连接到系统总线705的大容量存储控制器(未示出)连接到中央处理单元701。所述大容量存储设备707及其相关联的计算机可读介质为服务器700提供非易失性存储。也就是说,所述大容量存储 设备707可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结果、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器704和大容量存储设备707可以统称为存储器。
根据本发明的各种实施例,所述服务器700还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器700可以通过连接在所述系统总线705上的网络接口单元711连接到网络712,或者说,也可以使用网络接口单元711来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述搜索结果排序方法的指令。
图8示出了本发明一个示例性实施例提供的终端800的结构框图。该终端800可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器); 协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的搜索结果排序方法。
在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、触摸显示屏805、摄像头806、音频电路807、定位组件808和电源809中的至少一种。
外围设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在终端800的不同表面或呈折叠设计;在再一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路807还可以包括耳机插孔。
定位组件808用于定位终端800的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件808可以是基于美国的 GPS(Global Positioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源809用于为终端800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器815以及接近传感器816。
加速度传感器811可以检测以终端800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制触摸显示屏805以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器812可以检测终端800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对终端800的3D动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器813可以设置在终端800的侧边框和/或触摸显示屏805的下层。当压力传感器813设置在终端800的侧边框时,可以检测用户对终端800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在触摸显示屏805的下层时,由处理器801根据用户对触摸显示屏805的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置终端800的正面、背面或侧面。 当终端800上设置有物理按键或厂商Logo时,指纹传感器814可以与物理按键或厂商Logo集成在一起。
光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制触摸显示屏805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏805的显示亮度;当环境光强度较低时,调低触摸显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。
接近传感器816,也称距离传感器,通常设置在终端800的前面板。接近传感器816用于采集用户与终端800的正面之间的距离。在一个实施例中,当接近传感器816检测到用户与终端800的正面之间的距离逐渐变小时,由处理器801控制触摸显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与终端800的正面之间的距离逐渐变大时,由处理器801控制触摸显示屏805从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图8中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”(“a”、“an”、“the”)旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (21)

  1. 一种搜索结果排序方法,其特征在于,用于服务器中,所述方法包括:
    获取搜索词所对应的搜索结果列表;
    获取所述搜索结果列表中的M个目标搜索结果的评分,所述M个目标搜索结果为所述搜索词的历史搜索结果,每个所述历史搜索结果的评分为根据所述历史搜索结果的阅读时长确定的;M为大于等于1的整数;
    根据所述M个目标搜索结果的评分调整所述M个目标搜索结果在所述搜索结果列表中的排序。
  2. 根据权利要求1所述的方法,其特征在于,
    每个所述历史搜索结果的评分与所述历史搜索结果的阅读时长呈正相关关系;
    所述评分越高的目标搜索结果在所述搜索结果中的排序越前。
  3. 根据权利要求1所述的方法,其特征在于,所述根据所述M个目标搜索结果的评分调整所述M个目标搜索结果在所述搜索结果列表中的排序,包括:
    根据所述M个目标搜索结果的评分将所述M个目标搜索结果按照所述评分由高到低的顺序排序;
    按照排序后的顺序依次遍历每个目标搜索结果,将所述搜索结果列表中的所述目标搜索结果与所述搜索结果列表中的候选搜索结果交换位置,所述候选搜索结果为非目标搜索结果且在所述搜索结果列表中排序在所述目标搜索结果之前。
  4. 根据权利要求3所述的方法,其特征在于,所述方法还包括:
    在遍历所述目标搜索结果的过程中,统计已交换位置的目标搜索结果的条数;
    当所述已交换位置的目标搜索结果的条数达到预设阈值时,结束遍历。
  5. 根据权利要求1所述的方法,其特征在于,所述获取所述搜索结果列表中的M个目标搜索结果的评分,包括:
    获取所述搜索结果列表中历史被搜索到的各个历史搜索结果;
    选择获取到的所述历史搜索结果中满足预设条件的历史搜索结果,得到所述M个目标搜索结果;
    其中,所述预设条件包括:所述评分高于预设分数,或者,按照所述评分由高到低的顺序排序时排名在前M位。
  6. 根据权利要求1至5任一所述的方法,其特征在于,所述方法还包括:
    对于历史搜索所述搜索词时的每个历史搜索结果,获取所述历史搜索结果每次被阅读的阅读时长;根据所述阅读时长计算所述历史搜索结果的评分;
    保存计算得到的各个历史搜索结果的评分。
  7. 根据权利要求6所述的方法,其特征在于,所述根据所述阅读时长计算所述历史搜索结果的评分,包括:
    对于历史搜索所述搜索词时的每个历史搜索结果,获取所述历史搜索结果在搜索结果列表中的位置排名;
    根据所述阅读时长以及所述位置排名计算所述历史搜索结果的评分。
  8. 根据权利要求7所述的方法,其特征在于,所述根据所述阅读时长以及所述位置排名计算所述历史搜索结果的评分,包括:
    根据每次搜索得到的历史搜索结果的阅读时长和位置排名分别计算评分;
    计算各个评分的平均值,将计算得到的平均值作为所述历史搜索结果的评分。
  9. 根据权利要求7所述的方法,其特征在于,所述根据所述阅读时长以及所述位置排名计算所述历史搜索结果的评分,包括:
    根据每次搜索得到的历史搜索结果的阅读时长和位置排名分别计算评分;
    选择各个评分中的中间值,将选择得到的中间值作为所述历史搜索结果的评分。
  10. 一种搜索结果排序装置,其特征在于,所述装置包括:
    第一获取模块,用于获取搜索词所对应的搜索结果列表;
    第二获取模块,用于获取所述搜索结果列表中的M个目标搜索结果的评分,所述M个目标搜索结果为所述搜索词的历史搜索结果,每个历史搜索结果的评分为根据所述历史搜索结果的阅读时长确定的;M为大于等于1的整数;
    调整模块,用于根据所述M个目标搜索结果的评分调整所述M个目标搜索结果在所述搜索结果列表中的排序。
  11. 根据权利要求10所述的装置,其特征在于,
    每个所述历史搜索结果的评分与所述历史搜索结果的阅读时长呈正相关关系;
    所述评分越高的目标搜索结果在所述搜索结果中的排序越前。
  12. 根据权利要求10所述的装置,其特征在于,所述调整模块,包括:
    排序单元,用于根据所述M个目标搜索结果的评分将所述M个目标搜索结果按照评分由高到低的顺序排序;
    调整单元,用于按照排序后的顺序依次遍历每个目标搜索结果,将所述搜索结果列表中的所述目标搜索结果与所述搜索结果列表中的候选搜索结果交换位置,所述候选搜索结果为非目标搜索结果且在所述搜索结果列表中排序在所述目标搜索结果之前。
  13. 根据权利要求12所述的装置,其特征在于,所述装置还包括:
    统计模块,用于在遍历所述目标搜索结果的过程中,统计已交换位置的目标搜索结果的条数;
    结束模块,用于在所述统计模块统计得到的所述已交换位置的目标搜索结果的条数达到预设阈值时,结束所述调整单元的遍历。
  14. 根据权利要求10所述的装置,其特征在于,所述第二获取模块,还用于:
    获取所述搜索结果列表中历史被搜索到的各个历史搜索结果;
    选择获取到的所述历史搜索结果中满足预设条件的历史搜索结果,得到所述M个目标搜索结果;
    其中,所述预设条件包括:所述评分高于预设分数,或者,按照所述评分 由高到低的顺序排序时排名在前M位。
  15. 根据权利要求10至14任一所述的装置,其特征在于,所述装置还包括:
    第三获取模块,用于对于历史搜索所述搜索词时的每个历史搜索结果,获取所述历史搜索结果每次被阅读的阅读时长;计算模块,用于根据所述阅读时长计算所述历史搜索结果的评分;
    保存模块,用于保存计算得到的各个历史搜索结果的评分。
  16. 根据权利要求15所述的装置,其特征在于,所述计算模块,还用于:
    对于历史搜索所述搜索词时的每个历史搜索结果,获取所述历史搜索结果在搜索结果列表中的位置排名;
    根据所述阅读时长以及所述位置排名计算所述历史搜索结果的评分。
  17. 根据权利要求16所述的装置,其特征在于,所述计算模块,还用于:
    根据每次搜索得到的历史搜索结果的阅读时长和位置排名分别计算评分;
    计算各个评分的平均值,将计算得到的平均值作为所述历史搜索结果的评分。
  18. 根据权利要求16所述的装置,其特征在于,所述计算模块,还用于:
    根据每次搜索得到的历史搜索结果的阅读时长和位置排名分别计算评分;
    选择各个评分中的中间值,将选择得到的中间值作为所述历史搜索结果的评分。
  19. 一种服务器,其特征在于,所述服务器包括:处理器和存储器,所述存储器存储有一个或者一个以上程序,所述一个或者一个以上程序被一个或者一个以上的处理器用来执行如权1至权8任一所述的搜索结果排序方法。
  20. 一种终端,其特征在于,所述终端包括:处理器和存储器,所述存储器存储有一个或者一个以上程序,所述一个或者一个以上程序被一个或者一个以上的处理器用来执行如权1至权8任一所述的搜索结果排序方法。
  21. 一种计算机可读存储介质,其特征在于,所述存储器存储有一个或者一个以上程序,所述一个或者一个以上程序被一个或者一个以上的处理器用来执行如权1至权8任一所述的搜索结果排序方法。
PCT/CN2018/071653 2017-01-23 2018-01-05 搜索结果排序方法、装置、服务器及存储介质 WO2018133681A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710050714.7 2017-01-23
CN201710050714.7A CN108345601B (zh) 2017-01-23 2017-01-23 搜索结果排序方法及装置

Publications (1)

Publication Number Publication Date
WO2018133681A1 true WO2018133681A1 (zh) 2018-07-26

Family

ID=62909088

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/071653 WO2018133681A1 (zh) 2017-01-23 2018-01-05 搜索结果排序方法、装置、服务器及存储介质

Country Status (2)

Country Link
CN (1) CN108345601B (zh)
WO (1) WO2018133681A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110674400A (zh) * 2019-09-18 2020-01-10 北京字节跳动网络技术有限公司 排序方法、装置、电子设备及计算机可读存储介质

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110874777A (zh) * 2018-08-30 2020-03-10 北京嘀嘀无限科技发展有限公司 一种订单处理方法及装置
CN111061954B (zh) * 2019-12-19 2022-03-15 腾讯音乐娱乐科技(深圳)有限公司 搜索结果排序方法、装置及存储介质
CN111274502A (zh) * 2020-01-19 2020-06-12 珠海格力电器股份有限公司 搜索排序方法、装置、计算机设备和存储介质
CN111475678B (zh) * 2020-03-17 2023-10-27 聚好看科技股份有限公司 推送搜索结果的方法、服务器及终端
CN112000871A (zh) * 2020-08-21 2020-11-27 北京三快在线科技有限公司 确定搜索结果列表的方法、装置、设备及存储介质
CN112100528B (zh) * 2020-09-09 2024-06-28 北京三快在线科技有限公司 对搜索结果评分模型进行训练的方法、装置、设备、介质
CN112231545B (zh) * 2020-09-30 2023-12-22 北京三快在线科技有限公司 聚块集合的排序方法、装置、设备及存储介质
CN113434661A (zh) * 2021-06-29 2021-09-24 平安科技(深圳)有限公司 公文拟稿提示方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183364A (zh) * 2006-11-24 2008-05-21 腾讯科技(深圳)有限公司 一种信息搜索方法、搜索引擎客户端/服务器及系统
CN101320387A (zh) * 2008-07-11 2008-12-10 浙江大学 基于用户关注时间的网页文本与图像排序方法
CN104462573A (zh) * 2014-12-29 2015-03-25 北京奇艺世纪科技有限公司 一种视频搜索结果展示方法及装置
CN105373570A (zh) * 2014-09-02 2016-03-02 中兴通讯股份有限公司 一种浏览器历史记录的管理方法及终端

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2861448B2 (ja) * 1991-04-09 1999-02-24 富士ゼロックス株式会社 電子辞書検索装置
CN103106234A (zh) * 2012-11-07 2013-05-15 无锡成电科大科技发展有限公司 一种网页内容搜索方法和装置
CN105930376B (zh) * 2016-04-12 2019-08-02 Oppo广东移动通信有限公司 一种搜索方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183364A (zh) * 2006-11-24 2008-05-21 腾讯科技(深圳)有限公司 一种信息搜索方法、搜索引擎客户端/服务器及系统
CN101320387A (zh) * 2008-07-11 2008-12-10 浙江大学 基于用户关注时间的网页文本与图像排序方法
CN105373570A (zh) * 2014-09-02 2016-03-02 中兴通讯股份有限公司 一种浏览器历史记录的管理方法及终端
CN104462573A (zh) * 2014-12-29 2015-03-25 北京奇艺世纪科技有限公司 一种视频搜索结果展示方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110674400A (zh) * 2019-09-18 2020-01-10 北京字节跳动网络技术有限公司 排序方法、装置、电子设备及计算机可读存储介质
CN110674400B (zh) * 2019-09-18 2022-05-10 北京字节跳动网络技术有限公司 排序方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN108345601A (zh) 2018-07-31
CN108345601B (zh) 2020-11-20

Similar Documents

Publication Publication Date Title
WO2018133681A1 (zh) 搜索结果排序方法、装置、服务器及存储介质
CN109918669B (zh) 实体确定方法、装置及存储介质
US9262867B2 (en) Mobile terminal and method of operation
WO2020249025A1 (zh) 身份信息的确定方法、装置及存储介质
WO2019128593A1 (zh) 搜索音频的方法和装置
CN107533360A (zh) 一种显示、处理的方法及相关装置
CN110163066B (zh) 多媒体数据推荐方法、装置及存储介质
CN111291200B (zh) 多媒体资源展示方法、装置、计算机设备及存储介质
WO2019109797A1 (zh) 网页资源的获取方法、装置、终端及存储介质
CN111432245B (zh) 多媒体信息的播放控制方法、装置、设备及存储介质
WO2022088765A1 (zh) 交互处理方法及计算机设备
CN110933468A (zh) 播放方法、装置、电子设备及介质
CN111104402A (zh) 查找数据的方法、装置、电子设备及介质
CN109917988B (zh) 选中内容显示方法、装置、终端及计算机可读存储介质
CN114238812A (zh) 信息展示方法、装置、计算机设备及介质
WO2020221121A1 (zh) 视频查询方法、装置、设备及存储介质
CN110929159B (zh) 资源投放方法、装置、设备及介质
CN111796990A (zh) 资源显示方法、装置、终端及存储介质
WO2021218634A1 (zh) 内容推送
CN112989198B (zh) 推送内容的确定方法、装置、设备及计算机可读存储介质
CN111159551B (zh) 用户生成内容的显示方法、装置及计算机设备
CN112100528B (zh) 对搜索结果评分模型进行训练的方法、装置、设备、介质
CN112001442B (zh) 特征检测方法、装置、计算机设备及存储介质
WO2021218926A1 (zh) 图像显示方法、装置和计算机设备
CN111310526B (zh) 目标跟踪模型的参数确定方法、装置及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18741492

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18741492

Country of ref document: EP

Kind code of ref document: A1