WO2017035970A1 - 信息推送的方法和装置 - Google Patents

信息推送的方法和装置 Download PDF

Info

Publication number
WO2017035970A1
WO2017035970A1 PCT/CN2015/096233 CN2015096233W WO2017035970A1 WO 2017035970 A1 WO2017035970 A1 WO 2017035970A1 CN 2015096233 W CN2015096233 W CN 2015096233W WO 2017035970 A1 WO2017035970 A1 WO 2017035970A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
user
terminal
displayed
predicted value
Prior art date
Application number
PCT/CN2015/096233
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 WO2017035970A1 publication Critical patent/WO2017035970A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history

Definitions

  • the present application relates to the field of computer technologies, and in particular, to the field of Internet technologies, and in particular, to a method and apparatus for information push.
  • Information Push also known as "webcasting" is a technology that reduces information overload by pushing the information the user needs on the Internet through certain technical standards or protocols. Information push technology can reduce the time it takes for users to search on the network by actively pushing information to users. Information push can be used for display and terminal applications of various web pages, such as web advertisements, shopping terminal applications, and the like.
  • the commonly used information push method usually loads the push information directly on the page and displays the same push information on different terminals. Therefore, there is insufficient use of network resource related data, and information push is lacking. Targeted issues.
  • the purpose of the present application is to propose an improved method and apparatus for information push to solve the technical problems mentioned in the background section above.
  • the present application provides a method for information push, the method comprising: receiving a user identifier of an end user sent by an application server; and retrieving extended information of the terminal user according to the user identifier, where The extended information is acquired from the terminal; and the predicted value is generated for each piece of information to be displayed based on the extended information and the pre-trained prediction model, wherein the predicted value includes a probability that the terminal user operates for each piece of information to be displayed And returning the predicted value to the application server, so that the application server selects at least one piece of information to be displayed and pushes the information to the terminal user based on the ranking result of each predicted value.
  • the method further includes: receiving historical display information sent by the application server, information to be displayed, and historical operation information performed by the plurality of terminal users for the historical display information; acquiring the multiple terminals The extended information of the user; training the prediction model according to the information to be displayed, the historical display information, the historical operation information, and the extended information.
  • the training prediction model according to the information to be displayed, the historical display information, the historical operation information, and the extended information includes: extracting users respectively from extended information of the plurality of terminal users Generating a contribution coefficient of the user feature to the historical operation information according to the user feature and the historical operation information; and generating a prediction model for predicting operation information of the terminal user based on the user feature and the contribution coefficient.
  • the generating the predicted value for each piece of to-be-displayed information based on the extended information and the prediction model comprises: extracting user features from the extended information; calculating an importance coefficient of each user feature; The importance coefficient of the user feature and the contribution coefficient calculate a predicted value of the operation information of the terminal user.
  • the extended information includes at least one of the following: a search feature, an access feature, and a location feature.
  • the present application further provides a method for information push, the method comprising: sending a user identifier of an end user to a predictive server, where the predictive server generates a to-be-displayed information according to the following steps for each user identifier.
  • Predicting value retrieving extended information of the terminal user according to the user identifier; generating a predicted value for each piece of information to be displayed based on the extended information and a pre-trained prediction model, wherein the extended information is used by the predictive service
  • the terminal obtains from the terminal, the predicted value includes a probability value that the terminal user operates for each piece of information to be displayed; receives each predicted value returned by the predicted server; and selects at least one information to be displayed based on the sorting result of each predicted value. To the end user.
  • the method further includes: acquiring historical operation information performed by the plurality of terminal users for the historical display information; and sending the to-be-displayed message to the prediction server The historical display information and the historical operation information, so that the predictive server trains the predictive model by acquiring the extended information of the plurality of terminal users; and according to the information to be displayed, the historical display Information, the historical operation information, and the extended information training prediction model.
  • the extended information includes at least one of the following: a search feature, an access feature, and a location feature.
  • the application provides an apparatus for information push, the apparatus comprising: a receiving module, configured to receive a user identifier of a terminal user sent by an application server; and a retrieval module configured to be used according to the user identifier Retrieving the extension information of the terminal user, where the extension information is acquired from the terminal; and the generating module is configured to generate a prediction value for each piece of to-be-displayed information based on the extension information and the pre-trained prediction model, where The predicted value includes a probability value of the operation performed by the terminal user for each piece of information to be displayed; and a returning module configured to return the predicted value to the application server for the application server to sort based on each predicted value As a result, at least one piece of information to be displayed is selected and pushed to the end user.
  • a receiving module configured to receive a user identifier of a terminal user sent by an application server
  • a retrieval module configured to be used according to the user identifier Retrieving the extension information of the terminal user, where the extension information
  • the apparatus further includes: a model information receiving module, configured to receive historical display information sent by the application server, information to be displayed, and historical operations performed by the plurality of terminal users for the historical display information
  • An information acquisition module configured to acquire extended information of the plurality of terminal users
  • a model training module configured to train according to the information to be displayed, the historical display information, the historical operation information, and the extended information Forecast model.
  • the model training module includes: a feature extraction unit configured to separately extract user features from the extended information of the plurality of terminal users; and a contribution coefficient generating unit configured to use the user feature according to the The historical operation information generates a contribution coefficient of the user feature for the historical operation information; and the prediction model generating unit is configured to generate a prediction model for predicting the operation information of the terminal user based on the user feature and the contribution coefficient.
  • the generating module includes: an extracting unit configured to extract a user feature from the extended information; a coefficient calculating unit configured to calculate an importance coefficient of each user feature; a predicted value calculating unit, configured Used for individual user characteristics The importance coefficient and the contribution coefficient calculate a predicted value of operation information of the terminal user.
  • the extended information includes at least one of the following: a search feature, an access feature, and a location feature.
  • the application further provides an apparatus for information push, the apparatus comprising:
  • a sending module configured to send a user identifier of the terminal user to the predictive server, where the predictive server generates a predicted value of the information to be displayed according to the following steps: the terminal user is retrieved according to the user identifier Extending information; generating a predicted value for each piece of information to be displayed based on the extended information and a pre-trained prediction model, wherein the extended information is acquired by the predictive server from a terminal, the predicted value including an end user for each piece a probability value of the information to be displayed, the receiving module, configured to receive each predicted value returned by the predictive server, and a pushing module configured to select at least one information to be displayed based on the sorting result of each predicted value End user.
  • the apparatus further includes: an obtaining module configured to acquire historical operation information of the plurality of terminal users for historical display information; and a model information sending module configured to send the The information to be displayed, the historical display information, and the historical operation information, for the prediction server to train the prediction model by acquiring the extended information of the plurality of terminal users; according to the information to be displayed, The history display information, the historical operation information, and the extended information training prediction model.
  • the extended information includes at least one of the following: a search feature, an access feature, and a location feature.
  • the application further provides a system for information push
  • the system includes a terminal, a prediction server, and an application server
  • the application server is configured to acquire a user identifier of the terminal user from the terminal.
  • the prediction server is configured to receive a user identifier of the terminal user sent by the application server, and retrieve, according to the user identifier, extension information of the terminal user, where the extension The information is obtained from the terminal; the predicted value is generated for each piece of information to be displayed based on the extended information and the pre-trained prediction model; and the predicted value is returned to the application server, wherein the predicted value includes
  • the application server is configured to receive the prediction values returned by the prediction server, and select at least one to-be-displayed information to be sent to the terminal based on the ranking result of each prediction value. ; said The terminal is configured to push at least one piece of information to be displayed sent by the application server to the terminal user.
  • the method and device for information push provided by the application sends the user identifier of the terminal user to the predictive server through the application server, and the predictive server retrieves the extended information of the terminal user according to the user identifier, and based on the extended information and the prediction model
  • the predicted value of the to-be-displayed information is sent to the application server, where the predicted value includes a probability value that the terminal user operates for each piece of information to be displayed, and then the application server selects at least one to be displayed based on the ranking result of each predicted value.
  • the information is pushed to the end user, so that different information is pushed to different end users according to the difference of the extended information, and the targeted information push is realized.
  • FIG. 1 illustrates an exemplary system architecture to which embodiments of the present application may be applied
  • FIG. 2 is a flow chart of one embodiment of a method of information pushing in accordance with the present application.
  • FIG. 3 is a schematic diagram showing the effect of another embodiment of the method for pushing information according to the present application.
  • FIG. 4 is a schematic diagram of an application scenario of a method for information push according to the present application.
  • FIG. 5 is a block diagram of an embodiment of an apparatus for information push according to the present application.
  • FIG. 6 is a schematic structural diagram of another embodiment of an apparatus for pushing information according to the present application.
  • FIG. 7 is a schematic structural diagram of a computer system suitable for implementing a terminal device or a server of an embodiment of the present application.
  • FIG. 1 illustrates an exemplary system architecture 100 in which embodiments of the present application may be applied.
  • system architecture 100 can include terminal devices 101, 102, network 103 and first server 104 (e.g., predictive server) and second server 105 (e.g., application server).
  • the network 103 is used to provide a medium for a communication link between the terminal devices 101, 102, the first server 104, and the second server 105.
  • Network 103 may include various types of connections, such as wired, wireless communication links, fiber optic cables, and the like.
  • the terminal devices 101, 102 can interact with the first server 104 or the second server 105 via the network 103 to receive or transmit messages and the like.
  • Various communication client applications such as a browser application, a shopping application, a search application, a map application, a social platform application, a mailbox client, an instant communication tool, and the like, may be installed on the terminal devices 101 and 102.
  • the terminal device 101, 102 may be various electronic devices supported by a browser application, a shopping application, and the like, including but not limited to a smart phone, a smart watch, a tablet, a personal digital assistant, an e-book reader, and an MP3 player. (Moving Picture Experts Group Audio Layer III), MP4 (Moving Picture Experts Group Audio Layer IV) player, laptop portable computer and desktop computer and many more.
  • the first server 104 and the second server 105 may be servers that provide various services.
  • the first server 104 may be a background server that supports the browser application of the terminal device 101, 102, a search application, a map application, etc.
  • the second server 105 may be a shopping application for the terminal devices 101, 102, and the like.
  • the server can store, generate, and the like the received data, and feed back the processing result to the terminal device.
  • the method for pushing information provided by the embodiment of the present application may be performed by the first server 104 and the second server 105.
  • the first server 104 may obtain the user identifier and corresponding extended information, such as a search feature, an access feature, a location feature, etc., from the terminal device 101, 102; the second server 105 may be the slave terminal device 101, 102.
  • the second server 105 may upload the acquired user identifier, historical operation information, and historical display information of the terminal user to the first server 104, by The first server 104 trains the prediction model according to the information uploaded by the second server 105 and the acquired extension information of the terminal user to predict the operation (eg, click) information of the information to be pushed provided by the terminal server to the second server 105; then the first server 104 may obtain the extension information of the terminal user according to the user identifier uploaded by the second server 105 to make a prediction and return the prediction result to the second server 105, and the second server 105 pushes the information to the terminal device 101, 102 according to the prediction result.
  • the prediction model according to the information uploaded by the second server 105 and the acquired extension information of the terminal user to predict the operation (eg, click) information of the information to be pushed provided by the terminal server to the second server 105
  • the first server 104 may obtain the extension information of the terminal user according to the user identifier uploaded by the second server 105 to make a prediction and
  • the prediction result returned by the first server 104 to the second server 105 may be a push information set, or may be a predicted value or a sort result of the possibility of the operation of the end user to display the information.
  • the second server 105 is used. Based on the sorting result, the corresponding information to be displayed is selected and pushed to the terminal user, which is not limited in this application.
  • terminal devices, networks, and servers in Figure 1 is merely illustrative. Depending on the implementation needs, there can be any number of terminal devices, networks, and servers.
  • a flow 200 of one embodiment of a method of information push is illustrated.
  • the method of pushing information is specifically applied to an electronic device having a certain computing power (for example, the first server 104 of FIG. 1).
  • a cloud server application that can collect Big Data is used as a prediction server in combination with the method.
  • the process 200 includes the following steps:
  • Step 201 Receive a user identifier of the terminal user sent by the application server.
  • the cloud server may first receive the user identifier of the terminal user sent by the application server.
  • the application server may be an application server that provides support for the terminal application (for example, the second server 105 shown in FIG. 1).
  • the cloud server can obtain the user identifier of the terminal user from the application server through a wired connection or a wireless connection.
  • the above wireless connection methods include, but are not limited to, 3G/4G connection, WiFi connection, Bluetooth connection, WiMAX connection, Zigbee connection, UWB (ultra wideband) connection, and other wireless connection methods now known or developed in the future.
  • the user identifier is a character string for identifying the identity of the user, and may include, but is not limited to, at least one of the following: a username used by the user to connect to the application server through the terminal device, and a mobile device international identity code of the terminal device (International Mobile) Equipment Identity, IMEI), the Internet Protocol Address (IP address) of the terminal device accessing the Internet, the Media Access Control (MAC) address of the terminal device, and the like.
  • IMEI International Mobile) Equipment Identity
  • IP address Internet Protocol Address
  • MAC Media Access Control
  • the application server may send the registration information (such as age), current time, and weather when the user registers with the application server, in addition to sending the user identifier of the terminal user to the cloud server. And other information.
  • Step 202 retrieve the extension information of the terminal user according to the user identifier.
  • the cloud server may then retrieve the corresponding terminal user according to the user identifier, and obtain extended information of the terminal user.
  • the extended information may include, but is not limited to, at least one of: a retrieval feature (eg, a search term), an access feature (eg, a web address of the accessed page), a location feature, and the like.
  • the cloud server can pre-collect various information of all end users that can be collected, such as various user identifiers and extended information.
  • one terminal user may correspond to multiple user identifiers of different representation modes.
  • the application service may be determined.
  • the terminal user represented by the user identifier sent by the terminal is the same terminal user as the terminal user represented by the arbitrary user identifier, and the cloud server can retrieve the extension information of the terminal user.
  • Step 203 Generate a predicted value for each piece of information to be displayed based on the extended information and the pre-trained prediction model.
  • the cloud server may then process the extended information to obtain prediction parameter data required by the prediction model, and generate a prediction value for each piece of information to be pushed by the prediction model according to the prediction parameter data.
  • the information to be displayed may be information that the application server wants to display to the terminal application supported by the application server.
  • the information to be displayed may be the merchant information and/or the dish information of the meal.
  • the information to be displayed may be sent to the cloud server in advance by the application server, or may be sent to the cloud server together with the user identifier, which is not limited in this application.
  • the predicted value may include a probability value that the end user operates for each piece of information to be displayed.
  • the operation of the end user to display the information may be a click operation, a purchase operation, or the like.
  • the terminal application is a subscription application, and the terminal user can apply the same food service provider to browse, click or purchase the food through the terminal of the client.
  • the page of the terminal application displays the information of the food supplier, and the application server can determine that the user browses the information of the food supplier, that is, the number of times of browsing can be represented by the number of impressions.
  • the application server may need to predict at least one of the following actions by the end user for the catering merchant: clickthrough rate (such as the ratio of clicks to impressions), purchase rate (such as the ratio of successful transactions to impressions), or Conversion rate (such as the ratio of successful transactions to clicks), etc., correspondingly, the predicted value may be an estimate of the click rate, purchase rate or conversion rate, or may be a certain end user to the meal merchant
  • the probability that the terminal user performs operations on the display information and performs operations may reflect the degree of preference of the terminal user for the displayed information to a certain extent.
  • the prediction model may be configured to input at least one of the user identifier, the information to be displayed, and the retrieved extension information acquired from the application server, and output the predicted value of the information to be displayed by the terminal user corresponding to the user identifier.
  • the cloud server may obtain historical display information, information to be displayed, and historical operation information performed by the plurality of terminal users for the historical display information from the application server, and then obtain the extended information according to the user representations of the multiple terminal users, and then according to the The information to be displayed, the historical display information, the historical operation information, and the extended information training prediction model, for example, extract user characteristics from the information, and then establish a prediction model by a well-known algorithm such as a classification algorithm, a regression algorithm, or the like.
  • the cloud server can determine the mathematical relationship between each user feature and various operations based on a set of sample data, and then perform various statistical tests on the trustworthiness of these relationships.
  • the cloud server can determine the mathematical relationship between each user feature and various operations based on a set of sample data, and then perform various statistical tests on the trustworthiness of these relationships.
  • the many user characteristics that affect an operation which user features are significantly affected, and which user features are not significantly affected, and then according to the above relationship, according to the value of one or several user features (used to characterize the user feature pairs)
  • the magnitude of the impact of the operational information to predict the value of the probability of an operation and give the accuracy of such prediction.
  • the training model can be performed as follows:
  • the cloud server can extract user features from the extended information of multiple terminal users. For example, if the extended information includes a search feature, the user feature may include at least a search term, may also include a number of searches using each search term to search, etc.; if extended The information includes an access feature, and the user feature may include at least a web address of the accessed page, and may include the number of accesses to each web address, etc.; if the extended information includes a location feature, the user feature may include a location coordinate or a location name when the user logs in to the terminal application. ,and many more.
  • the cloud server may perform user feature extraction according to extended information of a recent time period (eg, within three months).
  • the cloud server can establish a correspondence between the extracted user features and the historical operation of each historical display information by the terminal user, so as to generate a contribution coefficient of each user feature for the operation information by using the terminal learning.
  • the contribution coefficient may be a quantity used to characterize the influence of the user feature on generating certain operational information. It can be understood that, as an example, assuming that the user feature includes a search term and a location, the predicted value that needs to be generated is the purchase rate of the end user to display the information, and if the end user purchases in a shorter time (eg, within one hour) after performing the search.
  • each user feature can also have an importance coefficient, such as a search term. The more times a search word is searched, the greater the importance coefficient, and the time when a search term is used for search. The closer to the current time, the greater the importance factor.
  • the cloud server can establish a dependency relationship between the operation and the user feature according to the user characteristics, the contribution coefficient, and the historical operation information of the terminal user for the historical display information, and adjust the contribution coefficient to generate the terminal based on the user feature and the contribution coefficient.
  • the prediction model of the user's operational information for prediction can be established.
  • the contribution coefficient of a single visit, i 3 can represent the importance coefficient of the page, the importance coefficient of the page can be proportional to the number of times the page is accessed, and so on.
  • Y i and i 1 , i 2 , and i 3 are known, and ⁇ 1 , ⁇ 2 , and ⁇ 3 can be obtained.
  • i 1 and i 2 can be obtained by the calculation rule of importance coefficient.
  • i 3 and the obtained ⁇ 1 , ⁇ 2 , ⁇ 3 , and obtain the predicted value Y i . It is worth noting that there may be multiple search terms. Therefore, the prediction model established by the cloud server usually has an accuracy rate.
  • the terminal application supported by the application server is a shopping application
  • the application server further sends the price information of the historical display information to the cloud server as one of the historical information of the training prediction model.
  • the parameters of the training prediction model may also include price features and/or advertisement bidding features of the presentation information to be pushed.
  • the cloud server can simultaneously analyze the price characteristics and/or the advertisement bid of the to-be-displayed information (for example, the fee paid by the merchant for the application server to display a certain display information of the merchant, for example, 1 yuan/1000 times)
  • the impact of features on the operation of the end user For example, some end users prefer to click on high-priced display information, and the higher the price of the display information, the greater the contribution of the end user to the display information; for example, the higher the advertising bid, the more important the index coefficient Big.
  • the cloud server may generate a predicted value according to the bid information of the display information. The higher the predicted value or the predicted value according to the overall probability of the historical operation of each information to be displayed, or the average value of each end user may be used as the predicted value.
  • the model when the cloud server receives the model update request sent by the application server, the model is updated according to the new data.
  • the model update request may include historical display information for the current time, information to be displayed, and historical operation information performed by the plurality of terminal users for the historical display information.
  • the application server can send a model update request to the cloud server on a periodic basis, such as one day.
  • this step generates a pre-prediction by using a prediction model.
  • the process of measuring may include: extracting user features from extended information of the end user; calculating an importance coefficient of each user feature; and calculating a predicted value of the operation information of the terminal user based on the importance coefficient and the contribution coefficient of each user feature.
  • the cloud server may sum the products of the importance coefficient and the contribution coefficient of each user feature as a predicted value.
  • Step 204 Return the predicted value to the application server.
  • the cloud server can then return the predicted value obtained by the prediction model to the application server.
  • the application server may select at least one piece of information to be displayed and push it to the terminal user based on the sorting result of the predicted value (eg, from large to small).
  • the application server can select the preset number of to-be-displayed information to be forwarded to the terminal user, and can also push all the information to be displayed to the terminal user to display according to the sorting result. This application does not limit this.
  • the ordering of the predicted values may be completed by the cloud server or by the application server.
  • the cloud server retrieves the extended information of the terminal user according to the historical display information sent by the application server, the information to be displayed, and the historical operation information of the plurality of terminal users for the historical display information, according to the extension.
  • the information generates a predictive model and is based on the current extended information at the time of prediction, thereby improving the pertinence of the push information.
  • FIG. 3 a flow 300 of another embodiment of a method of information push is illustrated.
  • the method of pushing information is specifically applied to an electronic device having a certain computing capability (for example, the application server 105 of FIG. 1).
  • this embodiment is described in conjunction with an application server that supports the electronic device for providing shopping applications.
  • the process 300 includes the following steps:
  • Step 301 Send a user identifier of the terminal user to the predictive server.
  • the application server may obtain the user identifier of the terminal user from the at least one terminal device, and send it to the predictive server (such as the first server 104 in FIG. 1 as the cloud server).
  • the terminal device may be a client device running a terminal application supported by the application server, such as the terminal device 101, 102 of the terminal of FIG. 1.
  • the application server can obtain the user identifier of the terminal user from the terminal device through a wired connection or a wireless connection, and can also send the user identifier of the terminal user to the prediction server through a wired connection or a wireless connection.
  • the user identifier is a string used to identify the identity of the user, for example, may include It is not limited to at least one of the following: a user name used when the user connects to the application server through the terminal device, a mobile device international identity code IMEI of the terminal device, an IP address of the terminal device accessing the Internet, a MAC address of the terminal device, and the like.
  • the predictive server may retrieve the extended information of the terminal user according to the user identifier, and then, for each piece of information to be displayed based on the extended information and the preset prediction model. Generate predicted values and return each predicted value.
  • the extension information is obtained by the prediction server from the terminal.
  • Step 302 Receive prediction values returned by the prediction server.
  • the application server may receive, from the prediction server, a prediction that the prediction server obtains the extended information (such as the search feature and the location feature) of the terminal user by using the user identifier, and the terminal user predicts each information to be displayed.
  • the predicted value may include a probability value that the end user operates for each piece of information to be displayed.
  • the operation of the end user to display the information may be a click operation, a purchase operation, or the like.
  • the predictive server may retrieve the corresponding terminal user according to the foregoing user identifier, and obtain extended information of the terminal user, and the extended information may include, but is not limited to, at least one of the following: a search feature, an access feature, a location feature, and the like;
  • the predictive server may take the extended information as an input, and the terminal user corresponding to the user identification by the pre-trained predictive model outputs an operational probability value for each piece of information to be displayed.
  • the targeted item herein may be determined according to a request of the application server for model training. For example, for a shopping application, the application server may need to predict at least one of the following operations of the end user to the serving merchant: each to be displayed Information clickthrough rate, purchase rate, conversion rate, and more.
  • the information to be displayed may be sent by the application server when the prediction model is sent to the prediction server, or may be sent when the user identifier is sent, which is not limited in this application.
  • the request server may also send the request information for generating the predictive model to the predictive server according to the request.
  • Information training prediction model the application server may obtain historical operation information of the plurality of terminal users for the historical display information, and send the historical display information, the historical operation information, and the information to be displayed together to the prediction server for predicting the server training prediction model.
  • the predictive server can establish a predictive model through a well-known algorithm such as a classification algorithm and a regression algorithm, and specifically trains The process is consistent with that described above and will not be repeated here.
  • Step 303 Select at least one piece of information to be displayed to be pushed to the end user based on the ranking result of each predicted value.
  • the application server may select at least one piece of information to be displayed and push it to the terminal user based on the sorting result of the predicted value (eg, from large to small).
  • the application server can select the preset number of to-be-displayed information to be forwarded to the terminal user, and can also push all the information to be displayed to the terminal user to display according to the sorting result. This application does not limit this.
  • the ordering of the predicted values may be completed by the cloud server or by the application server.
  • the application server provides a predictive server training prediction model by transmitting historical display information, information to be displayed, and historical operation information for a plurality of terminal users for historical display information to the predictive server in advance.
  • the application server obtains the predicted value of the information to be displayed by the terminal user by sending the user identifier of the terminal user to the prediction server, thereby saving local resources.
  • the prediction server uses the extended information of the end user when generating the predicted value. Therefore, the application server selects at least one piece of information to be displayed based on the sorting result of the predicted values, and integrates other network data of the end user, and thus is selected.
  • the information to be displayed is pushed to the end user, which improves the pertinence of information push.
  • the predictive server may be the cloud server 430
  • the terminal user may connect the application server 420 and the cloud server 430 through the corresponding terminal application on the terminal 410.
  • a terminal application (such as a shopping application or the like) supported by the application server 420 may be installed on the terminal 410, and various terminal applications (such as a search application, a map application, and the like) supported by the cloud server 430 may be installed.
  • the cloud server 430 can detect the various terminal applications supported by the cloud server 430 installed on the terminal 410 in step 4000 to obtain the operation information of the terminal user through the terminal 410, and then save the extended information as the terminal user. . It can be understood that when the end user performs a new operation, the extended information of the end user can be updated in real time.
  • Steps 4001 to 4003 are prediction model training phases
  • steps 401 to 405 are information push phases.
  • the predictive model training phase can be performed in advance or in cycles (such as one week or one month).
  • the information push phase may be triggered by the terminal user operating the terminal application supported by the application server 420 through the terminal 410 after the end of the predictive model training phase.
  • the cloud server can retrieve the extended application of the terminal user obtained in step 4000.
  • the application server 420 sends the historical display information to the cloud server 430, the historical operation information and the information to be displayed by the plurality of terminal users for the historical display information; and then, as in step 4002
  • the cloud server can obtain the extended information of the plurality of end users, and extract user characteristics from the extended information respectively, and establish a dependency relationship between the user features and operations (such as clicking and purchasing), thereby solving the contribution coefficient (ie,
  • the predictive model is established by the user feature for generating a certain operational information; and then, in step 4003, the cloud server 430 can provide the predictive model predictive interface to the application server 420 (eg, web service interface, web service) API), for the information push stage, the application server 420 sends a prediction request to the cloud server 430 through the interface, and the cloud server 430 returns the predicted value to the application server 420.
  • the application server 420 eg, web service interface, web service
  • the terminal user initiates a connection request or a query request through the terminal 410 (such as a home page request of the terminal application supported by the access application server 420); then, in step 402, The application server 420 obtains the user identifier of the terminal user and sends it to the cloud server 430.
  • a connection request or a query request through the terminal 410 (such as a home page request of the terminal application supported by the access application server 420); then, in step 402, The application server 420 obtains the user identifier of the terminal user and sends it to the cloud server 430.
  • the cloud server 430 retrieves the extension information of the terminal user obtained in step 4000 according to the user identifier of the terminal user, and Using the extended information as an input of the prediction model, the predicted value of the information to be displayed by the terminal user (for example, the predicted value of the click rate) is calculated by the prediction model; then, in step 404, the cloud server 430 sends the application server 420 to the application server 420. The predicted value obtained is fed back; then, in step 405, the application server 420 selects one or more pieces of information to be displayed based on the sorting result of the predicted value, or sorts the information to be displayed according to the sorted result of the predicted value, and then sends the information to the displayed result. Terminal 410 is pushed to the end user.
  • the extension information of the terminal user retrieved by the cloud server 430 according to the user identifier of the terminal user includes a recent (eg, 10 minutes ago) retrieval information: the search term " How to choose a tent, the predicted value calculated by the prediction model, the information to be displayed related to the "tent” may have a larger pre- The measured value, and further, in step 405, the application server 420 can push the information to be displayed related to the "tent” to the end user based on the ranking result of the predicted value, thereby realizing the terminal application. Targeted information push.
  • the apparatus 500 may include a receiving module 501, a retrieval module 502, a generation module 503, and a return module 504.
  • the receiving module 501 can be configured to receive the user identifier of the terminal user sent by the application server; the retrieval module 502 can be configured to retrieve the extension information of the terminal user according to the user identifier, where the extension information is acquired from the terminal;
  • the generating module 503 may be configured to generate a predicted value for each piece of information to be displayed based on the extended information and the prediction model, wherein the predicted value includes a probability value that the terminal user operates for each piece of information to be displayed;
  • the returning module 504 may be configured to use The predicted value is returned to the application server, and the at least one piece of information to be displayed is selected and sent to the terminal user by the server based on the ranking result of each predicted value.
  • the modules described in apparatus 500 correspond to the various steps in the method described with reference to FIG. Thus, the operations and features described above for the method for information push described in connection with FIG. 2 are equally applicable to the device 500 and the modules included therein, and are not described herein again.
  • the device 600 may include a sending module 601, a receiving module 602, and a pushing module 603.
  • the sending module 601 can be configured to send the user identifier of the terminal user to the predictive server, so that the predictive server generates a predicted value of the information to be displayed according to the following steps for each user identifier: retrieving the extension of the terminal user according to the user identifier.
  • the receiving module 602 can be configured to receive the predicted values returned by the predictive server.
  • the pushing module 603 can be configured to select at least one piece of information to be displayed and push the information to the terminal user based on the sorting result of the respective predicted values.
  • the modules described in apparatus 600 correspond to the various steps in the method described with reference to FIG. Thus, the operations and features described above for the method for information push described in connection with FIG. 3 are equally applicable to the device 600 and the modules included therein, and are not described herein again.
  • apparatus 500 and apparatus 600 for information push described above also include other well-known structures, such as processors, memories, etc., in order to unnecessarily obscure the embodiments of the present disclosure, such well-known structures are shown in FIG. Not shown in 6.
  • the application further provides a system for information push, the system comprising a terminal, a prediction server, and an application server.
  • the prediction server may include the apparatus 500 shown in FIG. 5, and the application server may include the apparatus 600 shown in FIG. 6.
  • the application server may obtain the user identifier of the terminal user from the terminal and send it to the prediction server.
  • the prediction server may receive the user identifier of the terminal user sent by the application server, and retrieve the extension information of the terminal user according to the user identifier, where the extension The information is obtained from the terminal, and the predicted value is generated for each piece of information to be displayed based on the extended information and the prediction model, and then the predicted value is returned to the application server; the application server may also receive the predicted values returned by the predictive server, and based on each The sorting result of the predicted value is selected to send at least one piece of information to be displayed to the terminal; the terminal may push at least one piece of information to be displayed sent by the application server to the end user.
  • FIG. 7 a block diagram of a computer system 700 suitable for use in implementing a terminal device or server of an embodiment of the present application is shown.
  • computer system 700 includes a central processing unit (CPU) 701 that can be loaded into a program in random access memory (RAM) 703 according to a program stored in read only memory (ROM) 702 or from storage portion 708. And perform various appropriate actions and processes.
  • RAM random access memory
  • ROM read only memory
  • RAM 703 various programs and data required for the operation of the system 700 are also stored.
  • the CPU 701, the ROM 702, and the RAM 703 are connected to each other through a bus 704.
  • An input/output (I/O) interface 705 is also coupled to bus 704.
  • the following components are connected to the I/O interface 705: an input portion 706 including a keyboard, a mouse, etc.; an output portion 707 including a cathode ray tube (CRT), a liquid crystal display (LCD), and the like, and a speaker; a storage portion 708 including a hard disk or the like And a communication portion 709 including a network interface card such as a LAN card, a modem, or the like.
  • the communication section 709 performs communication processing via a network such as the Internet.
  • Driver 710 is also connected to I/O interface 705 as needed.
  • a removable medium 711 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory or the like, is mounted on the drive 710 as needed so that a computer program read therefrom is installed into the storage portion 708 as needed.
  • an embodiment of the present disclosure includes a computer program product comprising a computer program tangibly embodied on a machine readable medium, the computer program comprising program code for executing the method illustrated in the flowchart.
  • the computer program can be downloaded and installed from the network via communication portion 709, and/or installed from removable media 711.
  • each block of the flowchart or block diagrams can represent a module, a program segment, or a portion of code that includes one or more logic for implementing the specified.
  • Functional executable instructions can also occur in a different order than that illustrated in the drawings. For example, two successively represented blocks may in fact be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block of the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts can be implemented in a dedicated hardware-based system that performs the specified function or operation. Or it can be implemented by a combination of dedicated hardware and computer instructions.
  • the units involved in the embodiments of the present application may be implemented by software or by hardware.
  • the described modules may also be provided in the processor, for example, as a processor including a receiving module, a retrieval module, a generation module, and a return module.
  • the name of these modules does not constitute a limitation on the module itself in some cases.
  • the receiving module may also be described as “a module configured to receive a user identifier of an end user sent by an application server”.
  • the present application further provides a non-volatile computer storage medium, which may be a non-volatile computer storage medium included in the apparatus described in the foregoing embodiments; It may be a non-volatile computer storage medium that exists alone and is not assembled into the terminal.
  • the non-volatile computer storage medium stores one or more programs, when the one or more programs are executed by a device, causing the device to: receive an end user sent by the application server User identification; retrieving extension information of the terminal user according to the user identifier, wherein the extension The information is obtained from the terminal; and the predicted value is generated for each piece of information to be displayed based on the extended information and the prediction model, wherein the predicted value includes a probability value that the terminal user operates for each piece of information to be displayed; and the predicted value is returned
  • the application server is configured to select, by the application server, at least one piece of information to be displayed to be pushed to the terminal user according to the ranking result of each predicted value.
  • the non-volatile computer storage medium stores one or more programs, when the one or more programs are executed by a device, causing the device to: send the user of the terminal user to the predictive server Identifying, for the prediction server, for each user identifier, generating a predicted value of the information to be displayed according to the following steps: retrieving the extended information of the terminal user according to the user identifier; and based on the extended information and a preset prediction model pair Each of the information to be displayed generates a predicted value, wherein the extended information is obtained by the predictive server from the terminal, and the predicted value includes a probability value that the terminal user operates for each piece of information to be displayed; and the predicted server is received. Each predicted value returned; selecting at least one piece of information to be displayed is pushed to the end user based on the sorting result of each predicted value.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种信息推送的方法和装置。所述方法的一具体实施方式包括:通过预测服务端接收应用服务端发送来的终端用户的用户标识;根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展信息从终端获取;基于所述扩展信息和预先训练的预测模型对各条待展示信息生成预测值,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;将所述预测值返回给所述应用服务端,以供所述应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。该实施方式可以提高用户信息推送的针对性。

Description

信息推送的方法和装置
相关申请的交叉引用
本申请要求于2015年08月31日提交的中国专利申请号为“201510549839.5”的优先权,其全部内容作为整体并入本申请中。
技术领域
本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及一种信息推送的方法和装置。
背景技术
信息推送,又称为“网络广播”,是通过一定的技术标准或协议,在互联网上通过推送用户需要的信息来减少信息过载的一项技术。信息推送技术通过主动推送信息给用户,可以减少用户在网络上搜索所花的时间。信息推送可以用于各种网页的显示与终端应用,例如网页广告、购物类终端应用等等。
然而,现有的一些终端应用中,常用的信息推送方式通常是直接在页面上加载推送信息,在不同的终端上显示相同的推送信息,从而,存在着网络资源相关数据利用不足,信息推送缺乏针对性的问题。
发明内容
本申请的目的在于提出一种改进的信息推送的方法和装置,来解决以上背景技术部分提到的技术问题。
一方面,本申请提供了一种信息推送的方法,所述方法包括:接收应用服务端发送来的终端用户的用户标识;根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展信息从终端获取;基于所述扩展信息和预先训练的预测模型对各条待展示信息生成预测值,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率 值;将所述预测值返回给所述应用服务端,以供所述应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
在一些实施例中,所述方法还包括:接收所述应用服务端发送的历史展示信息、待展示信息和多个终端用户针对所述历史展示信息进行的历史操作信息;获取所述多个终端用户的扩展信息;根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
在一些实施例中,所述根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型包括:从所述多个终端用户的扩展信息中分别提取用户特征;根据所述用户特征与所述历史操作信息,生成用户特征对于历史操作信息的贡献系数;生成基于所述用户特征和所述贡献系数对终端用户的操作信息进行预测的预测模型。
在一些实施例中,所述基于所述扩展信息和所述预测模型对各条待展示信息生成预测值包括:从所述扩展信息中提取用户特征;计算各个用户特征的重要度系数;基于各个用户特征的所述重要度系数和所述贡献系数计算终端用户的操作信息的预测值。
在一些实施例中,所述扩展信息包括以下至少一项:搜索特征、访问特征和位置特征。
第二方面,本申请还提供了一种信息推送的方法,所述方法包括:向预测服务端发送终端用户的用户标识,以供预测服务端针对每个用户标识按照以下步骤生成待展示信息的预测值:根据所述用户标识检索出所述终端用户的扩展信息;基于所述扩展信息和预先训练的预测模型对每条待展示信息生成预测值,其中,所述扩展信息由所述预测服务端从终端获取,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;接收所述预测服务端返回的各个预测值;基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
在一些实施例中,所述方法还包括:获取多个终端用户针对历史展示信息进行的历史操作信息;向所述预测服务端发送所述待展示信 息、所述历史展示信息和所述历史操作信息,以供所述预测服务端通过以下步骤训练预测模型:获取所述多个终端用户的扩展信息;根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
在一些实施例中,所述扩展信息包括以下至少一项:搜索特征、访问特征和位置特征。
第三方面,本申请提供了一种信息推送的装置,所述装置包括:接收模块,配置用于接收应用服务端发送来的终端用户的用户标识;检索模块,配置用于根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展信息从终端获取;生成模块,配置用于基于所述扩展信息和预先训练的预测模型对各条待展示信息生成预测值,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;返回模块,配置用于将所述预测值返回给所述应用服务端,以供所述应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
在一些实施例中,所述装置还包括:模型信息接收模块,配置用于接收所述应用服务端发送的历史展示信息、待展示信息和多个终端用户针对所述历史展示信息进行的历史操作信息;获取模块,配置用于获取所述多个终端用户的扩展信息;模型训练模块,配置用于根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
在一些实施例中,所述模型训练模块包括:特征提取单元,配置用于从所述多个终端用户的扩展信息中分别提取用户特征;贡献系数生成单元,配置用于根据所述用户特征与所述历史操作信息,生成用户特征对于历史操作信息的贡献系数;预测模型生成单元,配置用于生成基于所述用户特征和所述贡献系数对终端用户的操作信息进行预测的预测模型。
在一些实施例中,所述生成模块包括:提取单元,配置用于从所述扩展信息中提取用户特征;系数计算单元,配置用于计算各个用户特征的重要度系数;预测值计算单元,配置用于基于各个用户特征的 所述重要度系数和所述贡献系数计算终端用户的操作信息的预测值。
在一些实施例中,所述扩展信息包括以下至少一项:搜索特征、访问特征和位置特征。
第四方面,本申请还提供了一种信息推送的装置,所述装置包括:
发送模块,配置用于向预测服务端发送终端用户的用户标识,以供预测服务端针对每个用户标识按照以下步骤生成待展示信息的预测值:根据所述用户标识检索出所述终端用户的扩展信息;基于所述扩展信息和预先训练的预测模型对每条待展示信息生成预测值,其中,所述扩展信息由所述预测服务端从终端获取,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;接收模块,配置用于接收所述预测服务端返回的各个预测值;推送模块,配置用于基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
在一些实施例中,所述装置还包括:获取模块,配置用于获取多个终端用户针对历史展示信息进行的历史操作信息;模型信息发送模块,配置用于向所述预测服务端发送所述待展示信息、所述历史展示信息和所述历史操作信息,以供所述预测服务端通过以下步骤训练预测模型:获取所述多个终端用户的扩展信息;根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
在一些实施例中,所述扩展信息包括以下至少一项:搜索特征、访问特征和位置特征。
第五方面,本申请还提供了一种信息推送的系统,所述系统包括终端、预测服务端、应用服务端;所述应用服务端,配置用于从所述终端获取终端用户的用户标识并发送给预测服务端;所述预测服务端,配置用于接收所述应用服务端发送来的终端用户的用户标识;根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展信息从终端获取;基于所述扩展信息和预先训练的预测模型对各条待展示信息生成预测值;将所述预测值返回给所述应用服务端,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;所述应用服务端,还配置用于接收所述预测服务端返回的各个预测值;基于各个预测值的排序结果选取至少一条待展示信息发送至所述终端;所述 终端,配置用于将所述应用服务端发送的至少一条待展示信息推送给所述终端用户。
本申请提供的信息推送的方法和装置,通过应用服务端向预测服务端发送终端用户的用户标识,由预测服务端根据用户标识检索出终端用户的扩展信息,并基于扩展信息和预测模型对各条待展示信息生成预测值发送给应用服务端,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值,接着应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户,从而根据扩展信息的差异而向不同终端用户推送不同的信息,实现了富于针对性的信息推送。
附图说明
通过阅读参照以下附图所作的对非限制性实施例的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出了可以应用本申请实施例的示例性系统架构;
图2是根据本申请的信息推送的方法的一个实施例的流程图;
图3是根据本申请的信息推送的方法的另一个实施例的效果示意图;
图4是根据本申请的一种信息推送的方法的一个应用场景的示意图;
图5是根据本申请的信息推送的装置的一个实施例的结构图;
图6是根据本申请的信息推送的装置的另一个实施例的结构示意图;
图7是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与 有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、网络103和第一服务器104(例如预测服务端)和第二服务器105(例如应用服务端)。网络103用以在终端设备101、102、第一服务器104和第二服务器105之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102可以通过网络103与第一服务器104或第二服务器105交互,以接收或发送消息等。终端设备101、102上可以安装有各种通讯客户端应用,例如浏览器应用、购物类应用、搜索类应用、地图类应用、社交平台应用、邮箱客户端、即时通信工具等。
终端设备101、102可以是支持浏览器应用、购物类应用等安装于其上的各种电子设备,包括但不限于智能手机、智能手表、平板电脑、个人数字助理、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
第一服务器104和第二服务器105可以是提供各种服务的服务器。例如第一服务器104可以是对终端设备101、102的浏览器应用、搜索类应用、地图类应用等提供支持的后台服务器等;第二服务器105可以是对终端设备101、102的购物类应用等提供支持的后台服务器等。服务器可以对接收到的数据进行存储、生成等处理,并将处理结果反馈给终端设备。
需要说明的是,本申请实施例所提供的信息推送的方法可以通过第一服务器104和第二服务器105执行。例如:第一服务器104可以从终端设备101、102获取用户标识及相应的扩展信息,如搜索特征、访问特征、位置特征等;第二服务器105可以从终端设备101、102 获取用户标识及对第二服务器105提供的历史展示信息的历史操作信息等;接着第二服务器105可以将获取的终端用户的用户标识、历史操作信息及历史展示信息上传至第一服务器104,由第一服务器104根据第二服务器105上传的信息及获取的终端用户的扩展信息训练预测模型,以预测终端用户对第二服务器105提供的待推送信息的操作(例如点击)信息;然后第一服务器104可以根据第二服务器105上传的用户标识获取终端用户的扩展信息做出预测并将预测结果返回给第二服务器105,由第二服务器105根据预测结果向终端设备101、102推送信息。可以理解,第一服务器104向第二服务器105返回的预测结果可以是推送信息集合,也可以是终端用户对待展示信息的操作的可能性的预测值或排序结果,此时,由第二服务器105基于该排序结果选取相应的待展示信息推送给终端用户,本申请对此不做限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
请参考图2,其示出了信息推送的方法的一个实施例的流程200。该信息推送的方法具体应用于具有一定运算能力的电子设备(例如图1的第一服务器104)中。为了便于理解,本实施例中,结合该方法将可以收集大数据(Big Data)的云服务端应用为预测服务端来说明。该流程200包括以下步骤:
步骤201,接收应用服务端发送来的终端用户的用户标识。
在本实施例中,云服务端可以首先接收应用服务端发送来的终端用户的用户标识。其中,应用服务端可以是为终端应用提供支持的应用服务端(例如图1所示的第二服务器105)。云服务端可以通过有线连接方式或者无线连接方式从应用服务端获取终端用户的用户标识。上述无线连接方式包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
其中,用户标识是用于识别用户身份的字符串,例如可以包括但不限于以下至少一种:用户通过终端设备连接应用服务端时使用的用户名、终端设备的移动设备国际身份码(International Mobile Equipment  Identity,IMEI)、终端设备接入互联网的互联网协议地址(Internet Protocol Address,IP地址)、终端设备的媒体访问控制(Media Access Control,MAC)地址等等。
在本实施例的一些可选实现方式中,应用服务端除了向云服务端发送终端用户的用户标识外,还可以发送用户向应用服务端注册时的注册信息(例如年龄)、当前时间、天气等信息。
步骤202,根据上述用户标识检索出终端用户的扩展信息。
在本实施例中,云服务端接着可以根据上述用户标识检索出对应的终端用户,并获取终端用户的扩展信息。这里,扩展信息可以包括但不限于以下至少一项:检索特征(例如检索词)、访问特征(例如所访问页面的网址)、位置特征等等。云服务端可以预先采集能采集到的所有终端用户的各种信息,例如各种用户标识及扩展信息。
云服务端所采集的终端用户的各种信息中,一个终端用户可能对应多种不同表示方式的用户标识,当其中任意一个用户标识与应用服务端发送来的用户标识相同时,可以确定应用服务端发送来的用户标识所代表的终端用户与该任意一个用户标识所代表的终端用户为同一个终端用户,云服务端可以检索出该终端用户的扩展信息。
步骤203,基于上述扩展信息和预先训练的预测模型对各条待展示信息生成预测值。
在本实施例中,云服务端接着可以对上述扩展信息进行处理得到预测模型所需的预测参数数据,并根据预测参数数据通过预测模型对各条待推送信息生成预测值。
其中,待展示信息可以是应用服务端欲向其所支持的终端应用展示的信息。例如终端应用为订餐应用时,待展示信息可以是供餐的商家信息和/或菜品信息。待展示信息可以由应用服务端预先发送至云服务端,也可以和用户标识一起发送给云服务端,本申请对此不做限定。
这里,预测值可以包括终端用户针对各条待展示信息进行操作的概率值。终端用户对待展示信息的操作可以是点击操作、购买操作等。举例而言,例如该终端应用为订餐应用,终端用户可以通过客户端的终端应用同一供餐商家进行浏览、点击或购买菜品的操作。其中,当 终端用户打开终端应用页面时,终端应用的页面展示了供餐商家的信息,应用服务端可以确定用户对供餐商家的信息进行了浏览,即浏览次数可以用展示次数表示。应用服务端可能需要预测终端用户对该供餐商家的以上操作中的以下至少一项:点击率(如点击次数与展示次数的比值)、购买率(如成功交易次数与展示次数的比值)或转化率(如成功交易次数与点击次数的比值)等,则相应地,预测值可以是对点击率、购买率或转化率的估计值,也可以是某一确定的终端用户对该供餐商家的点击概率、购买概率或点击后会购买的概率,等等。终端用户针对展示信息进行的操作及进行操作的概率值可以从一定程度反映终端用户对展示信息的偏好程度。
预测模型可以是用于将从应用服务端获取的用户标识、待展示信息以及检索出的扩展信息中的至少一项作为输入,而输出用户标识对应的终端用户对于各条待展示信息的预测值的数学模型。云服务端可以从应用服务端获取历史展示信息、待展示信息和多个终端用户针对所述历史展示信息进行的历史操作信息,接着根据多个终端用户的用户表示获取他们的扩展信息,然后根据待展示信息、历史展示信息、历史操作信息及扩展信息训练预测模型,例如从这些信息中提取用户特征,然后通过诸如分类算法、回归算法等公知的算法建立预测模型。以多元回归模型为例,云服务端可以从一组样本数据出发,确定各用户特征和各种操作之间的数学关系式,然后对这些关系式的可信程度进行各种统计检验,并从影响某一操作的诸多用户特征中找出哪些用户特征的影响显著,哪些用户特征的影响不显著,接着依据上述的关系式,根据一个或几个用户特征的取值(用来表征用户特征对操作信息的影响的量值)来预测某一操作的概率的取值,并给出这种预测的精确程度。
在本实施例的一些可选实现方式中,训练模型可以按如下步骤进行:
首先,云服务端可以从多个终端用户的扩展信息中分别提取用户特征。例如,如果扩展信息包括搜索特征,用户特征至少可以包括搜索词,还可以包括使用每个搜索词进行搜索的搜索次数等;如果扩展 信息包括访问特征,用户特征至少可以包括所访问页面的网址,还可以包括对每个网址访问的次数等;如果扩展信息包括位置特征,用户特征可以包括用户登录终端应用时的位置坐标或位置名称,等等。可选地,云服务端可以根据最近一个时间段(如三个月内)的扩展信息进行用户特征的提取。
接着,云服务端可以根据所提取的用户特征和终端用户对每个历史展示信息的历史操作建立对应关系,以通过机端学习生成每个用户特征对于操作信息的贡献系数。其中,贡献系数可以是用来表征用户特征对产生某一操作信息的影响的量值。可以理解,作为示例,假设用户特征包括搜索词和位置,需要生成的预测值为终端用户对待展示信息的购买率,如果终端用户在进行了搜索后在越短时间内(如一小时内)购买了所搜索的商品,搜索词的贡献系数越大,使用同一搜索词进行搜索的次数越多,单次搜索对于产生购买的结果的影响越小,贡献系数越小;如果终端用户在某个位置时选择所在商圈的餐厅的次数越多,位置特征的贡献系数越大,等等。值得说明的是,进行预测时,各项用户特征还可以具有重要度系数,例如搜索词,使用一个搜索词进行搜索的次数越多,重要度系数可以越大,使用一个搜索词进行搜索的时间距离当前时间越近,重要度系数可以越大。
最后,云服务端可以根据用户特征、贡献系数与终端用户针对历史展示信息进行的历史操作信息,建立操作和用户特征的依赖关系,并通过调整贡献系数,从而生成基于用户特征和贡献系数对终端用户的操作信息进行预测的预测模型。当扩展信息包括搜索特征、访问特征和位置特征时,用户特征可以包括搜索词、所访问页面的网址和位置,生成的一种预测模型可以为:Yi=β1×i12×i23×i3;其中,Yi可以表示对某一待展示信息的操作信息的预测值,β1可以表示终端用户的当前位置与该待展示信息所指示的商户(如供餐商户)的距离的贡献系数,i1可以表示终端用户的当前位置与该待展示信息所指示的商户(如供餐商户)的距离的重要度系数(如距离越近,i1越大),β2可以表示搜索词的单次搜索的贡献系数,i2可以表示搜索词的重要度系数,搜索词的重要度系数可以与使用该搜索词进行搜索的次数成 正比,β3可以表示对页面的单次访问的贡献系数,i3可以表示页面的重要度系数,页面的重要度系数可以与访问该页面的次数成正比,等等。进行模型训练的时候,Yi和i1、i2、i3已知,可以求解得到β1、β2、β3;进行预测时,可以通过重要度系数的计算规则得到i1、i2、i3,和已求解得到的β1、β2、β3,获得预测值Yi。值得说明的是,搜索词可以有多个,因此,对于云服务端建立的预测模型,通常还具有准确率。准确率可以通过误差项进行控制,如:Yi=β1×i12×i23×i3+e;其中,e为误差项,误差项可以根据检验样本集中由预测模型预测的预测值与实际产生某一操作信息中的实际值进行比较获得。
在本实施例的一些可选实现方式中,应用服务器所支持的终端应用为购物类应用,应用服务端还向云服务端发送历史展示信息的价格信息作为训练预测模型的历史信息之一。训练预测模型的参数中除了用户特征还可以包括待推送展示信息的价格特征和/或广告出价特征。此时,云服务器可以同时分析待推送展示信息的价格特征和/或广告出价(例如商户为应用服务端提供的展示该商户的某一展示信息的服务所付的费用,例如1元/1000次)特征对终端用户的操作的影响。例如,一些终端用户喜欢点击价格高的展示信息,则价格越高的展示信息对该终端用户点击该展示信息的贡献度越大;再例如,广告出价越高的展示信息,其重要度系数越大。
在本实施例的一些可选实现方式中,对于云服务端无法匹配到相应的用户标识或检索不到扩展信息的终端用户,云服务端可以按照展示信息的出价信息生成预测值(出价越高,预测值越高)或根据各待展示信息的历史操作的总体概率取预测值,也可以对每个终端用户进行预测后取平均值作为预测值。
在本实施例的一些可选实现方式中,当云服务端接收到应用服务端发送的模型更新请求时,根据新的数据更新模型。其中,模型更新请求可以包括对于当前时间的历史展示信息、待展示信息和多个终端用户针对历史展示信息进行的历史操作信息。在一些实现中,应用服务端可以按周期(如一天)向云服务端发送模型更新请求。
在本实施例的一些可选实现方式中,本步骤通过预测模型生成预 测值的过程可以包括:从终端用户的扩展信息中提取用户特征;计算各个用户特征的重要度系数;基于各个用户特征的重要度系数和贡献系数计算终端用户的操作信息的预测值。例如,云服务端可以将各个用户特征的重要度系数和贡献系数相乘的乘积求和,作为预测值。
步骤204,将上述预测值返回给应用服务端。
在本实施例中,云服务端接着可以将通过预测模型得到的预测值返回给应用服务端。应用服务端接收到云服务端返回的预测值后可以基于预测值的排序结果(如从大到小)选取至少一条待展示信息推送给终端用户。应用服务端可以选取排序靠前的预设个数的待展示信息推送给终端用户,也可以将全部待展示信息推送给终端用户按照排序结果进行显示,本申请对此不做限定。其中,预测值的排序可以由云服务端完成,也可以由应用服务端完成。
结合图2描述的实施例,云服务端根据应用服务端发送来的历史展示信息、待展示信息和多个终端用户针对历史展示信息进行的历史操作信息,检索出终端用户的扩展信息,根据扩展信息生成预测模型,并在预测时根据当前扩展信息进行,提高了推送信息的针对性。
请参考图3,其示出了信息推送的方法的另一个实施例的流程300。该信息推送的方法具体应用于具有一定运算能力的电子设备(例如图1的应用服务器105)中。为了便于理解,本实施例中,结合该电子设备为购物类应用提供支持的应用服务端中来说明。该流程300包括以下步骤:
步骤301,向预测服务端发送终端用户的用户标识。
在本实施例中,应用服务端可以从至少一个终端设备获取终端用户的用户标识,并发送给预测服务端(如图1中的第一服务器104,可以作为云服务端)。这里,终端设备可以是运行应用服务端所支持的终端应用的客户端设备,例如图1终端的终端设备101、102。应用服务端可以通过有线连接方式或者无线连接方式从终端设备获取终端用户的用户标识,也可以通过有线连接方式或者无线连接方式向预测服务端发送终端用户的用户标识。
其中,用户标识是用于识别用户身份的字符串,例如可以包括但 不限于以下至少一种:用户通过终端设备连接应用服务端时使用的用户名、终端设备的移动设备国际身份码IMEI、终端设备接入互联网的IP地址、终端设备的MAC地址等等。
在本实施例中,预测服务端接收到应用服务端发送的用户标识后,可以根据所述用户标识检索出终端用户的扩展信息,接着基于扩展信息和预设的预测模型对每条待展示信息生成预测值,然后将各个预测值返回。其中,所述扩展信息由预测服务端从终端获取。
步骤302,接收预测服务端返回的各个预测值。
在本实施例中,应用服务端可以从预测服务端接收预测服务端通过上述用户标识获取终端用户的扩展信息(例如搜索特征、位置特征)而生成的、终端用户对每条待展示信息的预测值。这里,预测值可以包括终端用户针对各条待展示信息进行操作的概率值。终端用户对待展示信息的操作可以是点击操作、购买操作等。
预测服务端可以根据上述用户标识检索出对应的终端用户,并获取终端用户的扩展信息,该扩展信息例如可以包括但不限于以下至少一项:检索特征、访问特征、位置特征等等;接着,预测服务端可以将扩展信息作为输入,而通过预先训练的预测模型输出用户标识对应的终端用户针对每条待展示信息执行某项操作概率值。这里的针对的项可以根据应用服务端对模型训练的请求确定,例如对于购物类应用,应用服务端可能需要预测终端用户对该供餐商家的以上操作中的以下至少一项:每条待展示信息的点击率、购买率、转化率等等。其中,待展示信息可以由应用服务端向预测服务端发送预测模型时发送,也可以在发送用户标识时发送,本申请对此不做限定。
在本实施例的一些可选实现方式中,应用服务端向预测服务端发送用户标识以生成预测值之前,还可以向预测服务端发送生成预测模型的请求信息,以供预测服务端根据该请求信息训练预测模型。具体地,应用服务端可以获取多个终端用户针对历史展示信息进行的历史操作信息,将历史展示信息、历史操作信息和待展示信息一起发送给预测服务端,以供预测服务端训练预测模型。其中,预测服务端可以通过诸如分类算法、回归算法等公知的算法建立预测模型,具体训练 过程与前文所描述的一致,在此不再赘述。
步骤303,基于各个预测值的排序结果选取至少一条待展示信息推送信息给终端用户。
在本实施例中,应用服务端接收到预测服务端返回的预测值后可以基于预测值的排序结果(如从大到小)选取至少一条待展示信息推送给终端用户。应用服务端可以选取排序靠前的预设个数的待展示信息推送给终端用户,也可以将全部待展示信息推送给终端用户按照排序结果进行显示,本申请对此不做限定。其中,预测值的排序可以由云服务端完成,也可以由应用服务端完成。
结合图3描述的实施例,应用服务端通过向预先向预测服务端发送历史展示信息、待展示信息和多个终端用户针对历史展示信息进行的历史操作信息,供预测服务端训练预测模型。模型训练完成后,应用服务端通过向预测服务端发送终端用户的用户标识获取终端用户对每条待展示信息的预测值,节约了本地资源。同时,预测服务端生成预测值时利用了终端用户的扩展信息,因此,应用服务端基于这些预测值的排序结果选取的至少一条待展示信息,融合了终端用户的其他网络数据,将这样选取出来的待展示信息推送给终端用户,提高了信息推送的针对性。
请参阅图4,其示出了本申请的信息推送方法的一个应用场景。如图4所示,本申请的信息推送方法中,预测服务端可以为云服务端430,终端用户可以通过终端410上的相应终端应用连接应用服务端420和云服务端430。在终端410上可以安装应用服务端420所支持的终端应用(如购物类应用等),还可以安装云服务端430所支持的各种终端应用(如搜索类应用、地图应用等)。其中,云服务端430可以一直通过步骤4000检测终端410上安装的云服务端430所支持的各种终端应用,以获取终端用户通过终端410进行的操作信息,进而作为终端用户的扩展信息进行保存。可以理解,当终端用户进行了新的操作,终端用户的扩展信息可以实时更新。
在图4的应用场景中,主要包括两个阶段,其中,步骤4001-步骤4003为预测模型训练阶段,步骤401-步骤405为信息推送阶段。其中, 预测模型训练阶段可以预先进行,还可以按周期(如一周或一个月)进行。信息推送阶段可以在预测模型训练阶段结束后由终端用户通过终端410操作应用服务端420所支持的终端应用而触发。在预测模型训练阶段和信息推送阶段,云服务端都可以调取步骤4000中获取的终端用户的扩展应用。
在预测模型训练阶段,首先如步骤4001所示,应用服务端420向云服务端430发送历史展示信息、多个终端用户针对历史展示信息进行的历史操作信息和待展示信息;然后,如步骤4002所示,云服务端可以获取这多个终端用户的扩展信息,并从这些扩展信息中分别提取用户特征,建立用户特征与操作(如点击、购买)的依赖关系,从而求解出贡献系数(即用户特征对产生某一操作信息的影响的量值),建立预测模型;接着,在步骤4003中,云服务端430可以向应用服务端420提供预测模型的预测接口(如网页服务接口,Web Service API),以供在信息推送阶段,应用服务端420通过该接口向云服务端430发送预测请求,以及云服务端430向应用服务端420返回预测值。
在信息推送阶段,首先,如步骤401所示,终端用户通过终端410发起了连接请求或查询请求(如接入应用服务端420所支持的终端应用的主页请求);接着,在步骤402中,应用服务端420获取终端用户的用户标识,并发送给云服务端430;然后,在步骤403中,云服务端430根据终端用户的用户标识检索出步骤4000中获取的终端用户的扩展信息,并将该扩展信息作为预测模型的输入,通过预测模型计算该终端用户对各个待展示信息的预测值(例如点击率的预测值);接着,在步骤404中,云服务端430向应用服务端420反馈所得到的预测值;然后,在步骤405中,应用服务端420基于预测值的排序结果,选取一条或多条待展示信息,或将待展示信息按照预测值的排序结果排序后,发送至终端410以推送给终端用户。
在图4示出的应用场景中,如果在步骤403中,云服务端430根据终端用户的用户标识检索出的终端用户的扩展信息包括一条最近(如10分钟前)的检索信息:检索词“如何选择帐篷”,则预测模型计算出的预测值中,与“帐篷”相关的待展示信息可以具有较大的预 测值,进而,在步骤405中,应用服务端420基于预测值的排序结果可以将与“帐篷”相关的待展示信息排列在最靠前的位置推送给终端用户,从而实现了终端应用的有针对性的信息推送。
进一步参考图5,其示出了根据本申请的信息推送装置的一个实施例的结构示意图。如图5所示,装置500可以包括接收模块501、检索模块502、生成模块503、返回模块504。其中,接收模块501可以配置用于接收应用服务端发送来的终端用户的用户标识;检索模块502可以配置用于根据用户标识检索出终端用户的扩展信息,其中,所述扩展信息从终端获取;生成模块503可以配置用于基于扩展信息和预测模型对各条待展示信息生成预测值,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;返回模块504可以配置用于将预测值返回给应用服务端,以供应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给终端用户。
装置500中记载的诸模块与参考图2描述的方法中的各个步骤相对应。由此,上文结合图2所描述的针对用于信息推送的方法描述的操作和特征同样适用于装置500及其中包含的模块,在此不再赘述。
进一步参考图6,其示出了根据本申请的信息推送装置的一个实施例的结构示意图。如图6所示,装置600可以包括发送模块601、接收模块602、推送模块603。其中,发送模块601可以配置用于向预测服务端发送终端用户的用户标识,以供预测服务端针对每个用户标识按照以下步骤生成待展示信息的预测值:根据用户标识检索出终端用户的扩展信息;基于扩展信息和预设的预测模型对每条待展示信息生成预测值,其中,扩展信息由预测服务端从终端获取,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;接收模块602可以配置用于接收预测服务端返回的各个预测值;推送模块603可以配置用于基于各个预测值的排序结果选取至少一条待展示信息推送给终端用户。
装置600中记载的诸模块与参考图3描述的方法中的各个步骤相对应。由此,上文结合图3所描述的针对用于信息推送的方法描述的操作和特征同样适用于装置600及其中包含的模块,在此不再赘述。
本领域技术人员可以理解,上述信息推送的装置500和装置600还包括一些其他公知结构,例如处理器、存储器等,为了不必要地模糊本公开的实施例,这些公知的结构在图5、图6中未示出。
另外,本申请还提供了一种信息推送的系统,所述系统包括终端、预测服务端、应用服务端。其中,预测服务端可以包括图5所示的装置500,应用服务端可以包括图6所示的装置600。应用服务端可以从终端获取终端用户的用户标识并发送给预测服务端;预测服务端可以接收应用服务端发送来的终端用户的用户标识,根据用户标识检索出终端用户的扩展信息,其中,扩展信息从终端获取,并基于扩展信息和预测模型对各条待展示信息生成预测值,然后将预测值返回给应用服务端;应用服务端还可以接收预测服务端返回的各个预测值,并基于各个预测值的排序结果选取至少一条待展示信息发送至终端;终端可以将所述应用服务端发送的至少一条待展示信息推送给所述终端用户。
下面参考图7,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统700的结构示意图。
如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括接收模块,检索模块,生成模块和返回模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,接收模块还可以被描述为“配置用于接收应用服务端发送来的终端用户的用户标识的模块”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。在一些实现中,上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:接收应用服务端发送来的终端用户的用户标识;根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展 信息从终端获取;基于所述扩展信息和预测模型对各条待展示信息生成预测值,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;将所述预测值返回给所述应用服务端,以供所述应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。在灵一些实现中,上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:向预测服务端发送终端用户的用户标识,以供预测服务端针对每个用户标识按照以下步骤生成待展示信息的预测值:根据所述用户标识检索出所述终端用户的扩展信息;基于所述扩展信息和预设的预测模型对每条待展示信息生成预测值,其中,所述扩展信息由所述预测服务端从终端获取,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;接收所述预测服务端返回的各个预测值;基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (19)

  1. 一种信息推送的方法,其特征在于,所述方法包括:
    接收应用服务端发送来的终端用户的用户标识;
    根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展信息从终端获取;
    基于所述扩展信息和预先训练的预测模型对各条待展示信息生成预测值,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;
    将所述预测值返回给所述应用服务端,以供所述应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    接收所述应用服务端发送的历史展示信息、待展示信息和多个终端用户针对所述历史展示信息进行的历史操作信息;
    获取所述多个终端用户的扩展信息;
    根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
  3. 根据权利要求2所述的方法,其特征在于,所述根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型包括:
    从所述多个终端用户的扩展信息中分别提取用户特征;
    根据所述用户特征与所述历史操作信息,生成用户特征对于历史操作信息的贡献系数;
    生成基于所述用户特征和所述贡献系数对终端用户的操作信息进行预测的预测模型。
  4. 根据权利要求3所述的方法,其特征在于,所述基于所述扩展 信息和所述预测模型对各条待展示信息生成预测值包括:
    从所述扩展信息中提取用户特征;
    计算各个用户特征的重要度系数;
    基于各个用户特征的所述重要度系数和所述贡献系数计算终端用户的操作信息的预测值。
  5. 根据权利要求1-4中任一所述的方法,其特征在于,所述扩展信息包括以下至少一项:搜索特征、访问特征和位置特征。
  6. 一种信息推送的方法,其特征在于,所述方法包括:
    向预测服务端发送终端用户的用户标识,以供预测服务端针对每个用户标识按照以下步骤生成待展示信息的预测值:根据所述用户标识检索出所述终端用户的扩展信息;基于所述扩展信息和预先训练的预测模型对每条待展示信息生成预测值,其中,所述扩展信息由所述预测服务端从终端获取,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;
    接收所述预测服务端返回的各个预测值;
    基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
  7. 根据权利要求6所述的方法,其特征在于,所述方法还包括:
    获取多个终端用户针对历史展示信息进行的历史操作信息;
    向所述预测服务端发送所述待展示信息、所述历史展示信息和所述历史操作信息,以供所述预测服务端通过以下步骤训练预测模型:获取所述多个终端用户的扩展信息;根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
  8. 根据权利要求6或7所述的方法,其特征在于,所述扩展信息包括以下至少一项:搜索特征、访问特征和位置特征。
  9. 一种信息推送的装置,其特征在于,所述装置包括:
    接收模块,配置用于接收应用服务端发送来的终端用户的用户标识;
    检索模块,配置用于根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展信息从终端获取;
    生成模块,配置用于基于所述扩展信息和预先训练的预测模型对各条待展示信息生成预测值,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;
    返回模块,配置用于将所述预测值返回给所述应用服务端,以供所述应用服务端基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
  10. 根据权利要求9所述的装置,其特征在于,所述装置还包括:
    模型信息接收模块,配置用于接收所述应用服务端发送的历史展示信息、待展示信息和多个终端用户针对所述历史展示信息进行的历史操作信息;
    获取模块,配置用于获取所述多个终端用户的扩展信息;
    模型训练模块,配置用于根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
  11. 根据权利要求10所述的装置,其特征在于,所述模型训练模块包括:
    特征提取单元,配置用于从所述多个终端用户的扩展信息中分别提取用户特征;
    贡献系数生成单元,配置用于根据所述用户特征与所述历史操作信息,生成用户特征对于历史操作信息的贡献系数;
    预测模型生成单元,配置用于生成基于所述用户特征和所述贡献系数对终端用户的操作信息进行预测的预测模型。
  12. 根据权利要求11所述的装置,其特征在于,所述生成模块包 括:
    提取单元,配置用于从所述扩展信息中提取用户特征;
    系数计算单元,配置用于计算各个用户特征的重要度系数;
    预测值计算单元,配置用于基于各个用户特征的所述重要度系数和所述贡献系数计算终端用户的操作信息的预测值。
  13. 根据权利要求9-12中任一所述的装置,其特征在于,所述扩展信息包括以下至少一项:搜索特征、访问特征和位置特征。
  14. 一种信息推送的装置,其特征在于,所述装置包括:
    发送模块,配置用于向预测服务端发送终端用户的用户标识,以供预测服务端针对每个用户标识按照以下步骤生成待展示信息的预测值:根据所述用户标识检索出所述终端用户的扩展信息;基于所述扩展信息和预先训练的预测模型对每条待展示信息生成预测值,其中,所述扩展信息由所述预测服务端从终端获取,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;
    接收模块,配置用于接收所述预测服务端返回的各个预测值;
    推送模块,配置用于基于各个预测值的排序结果选取至少一条待展示信息推送给所述终端用户。
  15. 根据权利要求14所述的装置,其特征在于,所述装置还包括:
    获取模块,配置用于获取多个终端用户针对历史展示信息进行的历史操作信息;
    模型信息发送模块,配置用于向所述预测服务端发送所述待展示信息、所述历史展示信息和所述历史操作信息,以供所述预测服务端通过以下步骤训练预测模型:获取所述多个终端用户的扩展信息;根据所述待展示信息、所述历史展示信息、所述历史操作信息及所述扩展信息训练预测模型。
  16. 根据权利要求14或15所述的装置,其特征在于,所述扩展 信息包括以下至少一项:搜索特征、访问特征和位置特征。
  17. 一种信息推送的系统,其特征在于,所述系统包括终端、预测服务端、应用服务端;
    所述应用服务端,配置用于从所述终端获取终端用户的用户标识并发送给预测服务端;
    所述预测服务端,配置用于接收所述应用服务端发送来的终端用户的用户标识;根据所述用户标识检索出所述终端用户的扩展信息,其中,所述扩展信息从终端获取;基于所述扩展信息和预先训练的预测模型对各条待展示信息生成预测值;将所述预测值返回给所述应用服务端,其中,所述预测值包括终端用户针对各条待展示信息进行操作的概率值;
    所述应用服务端,还配置用于接收所述预测服务端返回的各个预测值;基于各个预测值的排序结果选取至少一条待展示信息发送至所述终端;
    所述终端,配置用于将所述应用服务端发送的至少一条待展示信息推送给所述终端用户。
  18. 一种设备,包括:
    处理器;和
    存储器,
    所述存储器中存储有能够被所述处理器执行的计算机可读指令,在所述计算机可读指令被执行时,所述处理器执行权利要求1至8中任一项所述的方法。
  19. 一种非易失性计算机存储介质,所述计算机存储介质存储有能够被处理器执行的计算机可读指令,当所述计算机可读指令被处理器执行时,所述处理器执行权利要求1至8中任一项所述的方法。
PCT/CN2015/096233 2015-08-31 2015-12-03 信息推送的方法和装置 WO2017035970A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510549839.5 2015-08-31
CN201510549839.5A CN105208113A (zh) 2015-08-31 2015-08-31 信息推送的方法和装置

Publications (1)

Publication Number Publication Date
WO2017035970A1 true WO2017035970A1 (zh) 2017-03-09

Family

ID=54955537

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/096233 WO2017035970A1 (zh) 2015-08-31 2015-12-03 信息推送的方法和装置

Country Status (2)

Country Link
CN (1) CN105208113A (zh)
WO (1) WO2017035970A1 (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109559158A (zh) * 2018-11-06 2019-04-02 北京奇虎科技有限公司 推广信息投放方法、装置、电子设备及可读存储介质
CN110147514A (zh) * 2017-09-08 2019-08-20 阿里巴巴集团控股有限公司 一种资源展示方法、装置及其设备
CN110188908A (zh) * 2018-02-22 2019-08-30 北京京东尚科信息技术有限公司 用户收发物品方式的预测方法和装置
CN110827138A (zh) * 2019-10-31 2020-02-21 北京芯盾时代科技有限公司 一种推送信息确定方法及装置
CN110858377A (zh) * 2018-08-22 2020-03-03 阿里巴巴集团控股有限公司 信息处理方法、页面显示方法、系统及设备
CN111104585A (zh) * 2018-10-25 2020-05-05 北京嘀嘀无限科技发展有限公司 一种问题推荐方法及装置
CN111858922A (zh) * 2019-09-24 2020-10-30 北京嘀嘀无限科技发展有限公司 服务方信息查询方法、装置、电子设备以及存储介质
CN112068854A (zh) * 2019-06-10 2020-12-11 杭州海康威视数字技术股份有限公司 智能设备算法更新系统、智能设备及平台服务器
CN112165514A (zh) * 2020-09-16 2021-01-01 中电信用服务有限公司 一种确定展示内容的系统及方法
CN112199187A (zh) * 2019-07-08 2021-01-08 北京字节跳动网络技术有限公司 内容展示方法、装置、电子设备及计算机可读存储介质
CN112214306A (zh) * 2019-07-11 2021-01-12 北京字节跳动网络技术有限公司 内容展示权重值的计算方法、装置、电子设备及计算机可读存储介质
CN112307966A (zh) * 2020-10-30 2021-02-02 京东方科技集团股份有限公司 事件展示方法及装置、存储介质及电子设备
CN112383877A (zh) * 2018-08-02 2021-02-19 Oppo广东移动通信有限公司 电子装置、服务区的服务订阅方法及相关产品
CN113111117A (zh) * 2021-05-13 2021-07-13 上海寻梦信息技术有限公司 基于地图的收件地址展示方法、系统、设备及存储介质
CN113326454A (zh) * 2020-02-28 2021-08-31 北京沃东天骏信息技术有限公司 展示标签的方法和装置
CN113435197A (zh) * 2021-06-25 2021-09-24 平安国际智慧城市科技股份有限公司 数据推送方法、装置、推送服务器及存储介质
CN113726849A (zh) * 2021-07-20 2021-11-30 浙江吉利控股集团有限公司 一种饮用酒制作方式的共享方法、装置及服务器
TWI786510B (zh) * 2021-01-08 2022-12-11 聚英企業管理顧問股份有限公司 對客戶的熟識度分析裝置
CN115712745A (zh) * 2023-01-09 2023-02-24 荣耀终端有限公司 一种用户标注数据的获取方法、系统及电子设备

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106940703B (zh) * 2016-01-04 2020-09-11 腾讯科技(北京)有限公司 推送信息粗选排序方法及装置
CN107767153B (zh) * 2016-08-16 2022-02-11 腾讯科技(北京)有限公司 一种数据处理方法及装置
CN108287834A (zh) * 2017-01-09 2018-07-17 百度在线网络技术(北京)有限公司 用于推送信息的方法、装置及计算设备
CN106919692B (zh) * 2017-03-07 2021-02-19 阿里巴巴(中国)有限公司 一种推送消息的方法和装置
CN107229728B (zh) * 2017-06-05 2021-11-16 努比亚技术有限公司 基于神经网络的搜索方法、设备及存储介质
CN107291921B (zh) * 2017-06-28 2020-02-07 北京京东尚科信息技术有限公司 信息处理方法及系统
CN107404577B (zh) * 2017-07-20 2019-05-17 维沃移动通信有限公司 一种图像处理方法、移动终端及计算机可读存储介质
CN107465741B (zh) * 2017-08-02 2020-09-04 北京星选科技有限公司 信息推送方法和装置
US10958747B2 (en) * 2017-08-24 2021-03-23 Google Llc Digital component transmission
CN110049079A (zh) * 2018-01-16 2019-07-23 阿里巴巴集团控股有限公司 信息推送及模型训练方法、装置、设备及存储介质
CN110110210B (zh) * 2018-01-22 2024-09-13 腾讯科技(北京)有限公司 推送展示信息的方法和装置
CN108415970B (zh) * 2018-02-08 2019-07-30 北京三快在线科技有限公司 检索结果排序方法、装置、电子设备及存储介质
CN111126649B (zh) * 2018-10-31 2023-08-11 北京字节跳动网络技术有限公司 用于生成信息的方法和装置
CN109460826A (zh) * 2018-10-31 2019-03-12 北京字节跳动网络技术有限公司 用于分发数据的方法、装置和模型更新系统
CN111125502B (zh) * 2018-10-31 2024-02-20 北京字节跳动网络技术有限公司 用于生成信息的方法和装置
CN111340265A (zh) * 2018-12-19 2020-06-26 北京嘀嘀无限科技发展有限公司 司机下线干预方法、装置、电子设备和计算机存储介质
CN111381909B (zh) * 2018-12-27 2022-03-04 北京字节跳动网络技术有限公司 一种页面展示方法、装置、终端设备及存储介质
CN111460270B (zh) * 2019-01-18 2023-06-09 北京字节跳动网络技术有限公司 信息推送方法和装置
CN109636490A (zh) * 2019-01-25 2019-04-16 上海基分文化传播有限公司 广告转化率的实时预测方法、广告评价方法与系统
CN111506643B (zh) * 2019-01-31 2023-09-29 北京沃东天骏信息技术有限公司 用于生成信息的方法、装置和系统
CN110955835A (zh) * 2019-11-28 2020-04-03 重庆市科学技术研究院 一种基于大数据技术的共享平台信息发布系统
CN111026959B (zh) * 2019-11-29 2024-07-05 腾讯科技(深圳)有限公司 一种提示信息推送方法、设备及存储介质
CN113032034B (zh) * 2019-12-06 2024-08-06 北京达佳互联信息技术有限公司 控制应用程序的方法、装置、服务器及存储介质
CN111222923B (zh) * 2020-01-13 2023-12-15 秒针信息技术有限公司 一种判断潜在客户的方法及装置、电子设备和存储介质
CN111369281B (zh) * 2020-02-28 2024-05-28 深圳前海微众银行股份有限公司 线上消息处理方法、装置、设备及可读存储介质
CN112398947B (zh) * 2020-11-18 2022-03-08 腾讯科技(深圳)有限公司 一种信息推送方法、装置、设备及计算机可读存储介质
CN113779455A (zh) * 2021-01-25 2021-12-10 北京沃东天骏信息技术有限公司 用于展示信息的方法和装置
CN117150105B (zh) * 2023-10-27 2023-12-26 四川银亿科技有限公司 一种基于网页的数据采集方法及采集平台

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6981040B1 (en) * 1999-12-28 2005-12-27 Utopy, Inc. Automatic, personalized online information and product services
CN103166930A (zh) * 2011-12-15 2013-06-19 腾讯科技(深圳)有限公司 推送网络信息的方法和系统
CN103294800A (zh) * 2013-05-27 2013-09-11 华为技术有限公司 一种信息推送方法及装置
CN103489117A (zh) * 2012-06-12 2014-01-01 深圳市腾讯计算机系统有限公司 信息投放方法和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102890689B (zh) * 2011-07-22 2017-06-06 北京百度网讯科技有限公司 一种用户兴趣模型的建立方法及系统
CN102279889B (zh) * 2011-08-29 2017-06-30 百度在线网络技术(北京)有限公司 一种基于地理信息的问题推送方法及系统
CN102831199B (zh) * 2012-08-07 2015-07-08 北京奇虎科技有限公司 建立兴趣模型的方法及装置
KR20140098947A (ko) * 2013-01-31 2014-08-11 삼성전자주식회사 광고 제공 시스템, 사용자 단말 및 광고 제공 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6981040B1 (en) * 1999-12-28 2005-12-27 Utopy, Inc. Automatic, personalized online information and product services
CN103166930A (zh) * 2011-12-15 2013-06-19 腾讯科技(深圳)有限公司 推送网络信息的方法和系统
CN103489117A (zh) * 2012-06-12 2014-01-01 深圳市腾讯计算机系统有限公司 信息投放方法和系统
CN103294800A (zh) * 2013-05-27 2013-09-11 华为技术有限公司 一种信息推送方法及装置

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147514A (zh) * 2017-09-08 2019-08-20 阿里巴巴集团控股有限公司 一种资源展示方法、装置及其设备
CN110188908A (zh) * 2018-02-22 2019-08-30 北京京东尚科信息技术有限公司 用户收发物品方式的预测方法和装置
CN112383877A (zh) * 2018-08-02 2021-02-19 Oppo广东移动通信有限公司 电子装置、服务区的服务订阅方法及相关产品
CN110858377B (zh) * 2018-08-22 2024-04-05 阿里巴巴集团控股有限公司 信息处理方法、页面显示方法、系统及设备
CN110858377A (zh) * 2018-08-22 2020-03-03 阿里巴巴集团控股有限公司 信息处理方法、页面显示方法、系统及设备
CN111104585A (zh) * 2018-10-25 2020-05-05 北京嘀嘀无限科技发展有限公司 一种问题推荐方法及装置
CN111104585B (zh) * 2018-10-25 2023-06-02 北京嘀嘀无限科技发展有限公司 一种问题推荐方法及装置
CN109559158A (zh) * 2018-11-06 2019-04-02 北京奇虎科技有限公司 推广信息投放方法、装置、电子设备及可读存储介质
CN112068854A (zh) * 2019-06-10 2020-12-11 杭州海康威视数字技术股份有限公司 智能设备算法更新系统、智能设备及平台服务器
CN112068854B (zh) * 2019-06-10 2023-09-01 杭州海康威视数字技术股份有限公司 智能设备算法更新系统、智能设备及平台服务器
CN112199187A (zh) * 2019-07-08 2021-01-08 北京字节跳动网络技术有限公司 内容展示方法、装置、电子设备及计算机可读存储介质
CN112214306A (zh) * 2019-07-11 2021-01-12 北京字节跳动网络技术有限公司 内容展示权重值的计算方法、装置、电子设备及计算机可读存储介质
CN111858922A (zh) * 2019-09-24 2020-10-30 北京嘀嘀无限科技发展有限公司 服务方信息查询方法、装置、电子设备以及存储介质
CN110827138A (zh) * 2019-10-31 2020-02-21 北京芯盾时代科技有限公司 一种推送信息确定方法及装置
CN110827138B (zh) * 2019-10-31 2022-07-05 北京芯盾时代科技有限公司 一种推送信息确定方法及装置
CN113326454A (zh) * 2020-02-28 2021-08-31 北京沃东天骏信息技术有限公司 展示标签的方法和装置
CN113326454B (zh) * 2020-02-28 2024-05-24 北京沃东天骏信息技术有限公司 展示标签的方法和装置
CN112165514A (zh) * 2020-09-16 2021-01-01 中电信用服务有限公司 一种确定展示内容的系统及方法
CN112165514B (zh) * 2020-09-16 2023-11-03 中电信用服务有限公司 一种确定展示内容的系统及方法
CN112307966A (zh) * 2020-10-30 2021-02-02 京东方科技集团股份有限公司 事件展示方法及装置、存储介质及电子设备
TWI786510B (zh) * 2021-01-08 2022-12-11 聚英企業管理顧問股份有限公司 對客戶的熟識度分析裝置
CN113111117A (zh) * 2021-05-13 2021-07-13 上海寻梦信息技术有限公司 基于地图的收件地址展示方法、系统、设备及存储介质
CN113435197B (zh) * 2021-06-25 2023-01-03 平安国际智慧城市科技股份有限公司 数据推送方法、装置、推送服务器及存储介质
CN113435197A (zh) * 2021-06-25 2021-09-24 平安国际智慧城市科技股份有限公司 数据推送方法、装置、推送服务器及存储介质
CN113726849B (zh) * 2021-07-20 2023-11-24 浙江吉利控股集团有限公司 一种饮用酒制作方式的共享方法、装置及服务器
CN113726849A (zh) * 2021-07-20 2021-11-30 浙江吉利控股集团有限公司 一种饮用酒制作方式的共享方法、装置及服务器
CN115712745A (zh) * 2023-01-09 2023-02-24 荣耀终端有限公司 一种用户标注数据的获取方法、系统及电子设备

Also Published As

Publication number Publication date
CN105208113A (zh) 2015-12-30

Similar Documents

Publication Publication Date Title
WO2017035970A1 (zh) 信息推送的方法和装置
US11252245B2 (en) Information pushing method and device
WO2018192491A1 (zh) 信息推送方法和装置
CN105320766B (zh) 信息推送方法和装置
CN108805594B (zh) 信息推送方法和装置
JP6279756B2 (ja) 通信セッションの状態の保存
WO2018126740A1 (zh) 用于推送信息的方法和装置
AU2016303436A1 (en) Method and system for applying probabilistic topic models to content in a tax environment to improve user satisfaction with a question and answer customer support system
CN110363604B (zh) 页面生成方法和装置
CN108243219B (zh) 信息推送的方法和装置
US9465881B2 (en) User displays using N-way paginated merge of information from diverse sources
TWI579787B (zh) 即時電子優惠券分配系統與方法
JP2016038822A (ja) 抽出装置、抽出方法及び抽出プログラム
CN110019699A (zh) 域间通过语法槽的分类
CN110866040B (zh) 用户画像生成方法、装置和系统
US20140122221A1 (en) Optimizing bidding with multiple campaign types
CN106776707A (zh) 信息推送的方法和装置
US20220224765A1 (en) Method and apparatus for pushing information
CN105488205A (zh) 页面生成方法和装置
JP2016062489A (ja) 情報処理装置、端末装置、情報処理方法及び情報処理プログラム
CN114168843A (zh) 搜索词推荐方法、设备及存储介质
WO2022156589A1 (zh) 一种直播点击率的确定方法和装置
CN113450172B (zh) 一种商品推荐方法和装置
JP2022163634A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US20130035993A1 (en) Methods and systems for online quoting

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: 15902776

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: 15902776

Country of ref document: EP

Kind code of ref document: A1