WO2017088688A1 - 一种信息推荐方法及装置 - Google Patents

一种信息推荐方法及装置 Download PDF

Info

Publication number
WO2017088688A1
WO2017088688A1 PCT/CN2016/106016 CN2016106016W WO2017088688A1 WO 2017088688 A1 WO2017088688 A1 WO 2017088688A1 CN 2016106016 W CN2016106016 W CN 2016106016W WO 2017088688 A1 WO2017088688 A1 WO 2017088688A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
recommendation
list
determining
weight
Prior art date
Application number
PCT/CN2016/106016
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 阿里巴巴集团控股有限公司
Priority to EP16867911.6A priority Critical patent/EP3382571A4/en
Priority to SG11201804365VA priority patent/SG11201804365VA/en
Priority to AU2016360122A priority patent/AU2016360122B2/en
Priority to JP2018526895A priority patent/JP6676167B2/ja
Priority to KR1020187017994A priority patent/KR102192863B1/ko
Priority to MYPI2018702011A priority patent/MY186044A/en
Publication of WO2017088688A1 publication Critical patent/WO2017088688A1/zh
Priority to US15/979,946 priority patent/US11507849B2/en
Priority to PH12018501121A priority patent/PH12018501121A1/en
Priority to US16/722,444 priority patent/US20200134478A1/en

Links

Images

Classifications

    • 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/0269Targeted advertisements based on user profile or attribute
    • G06Q30/0271Personalized advertisement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/43Querying
    • G06F16/435Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/635Filtering based on additional data, e.g. user or group profiles
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering

Definitions

  • the present application relates to the field of information technology, and in particular, to a hybrid recommendation method and apparatus.
  • the recommended list of recommendation information is usually calculated by some recommendation algorithms.
  • the former can directly calculate the recommendation list because the user behavior data is not needed, but the recommendation result in the recommendation list cannot be targeted to the user, and the accuracy rate is low. Although the latter can calculate a more accurate recommendation list, the accuracy depends on the accuracy.
  • the amount of user behavior data has limitations.
  • the prior art usually mixes the results of multiple recommendation algorithms, and calculates a mixed recommendation list, wherein the weighted hybrid recommendation method is simple, easy to integrate recommendation algorithm results, and flexible to use. The advantages of high degree have become the commonly used hybrid recommendation method.
  • the recommendation list obtained by the weighted hybrid recommendation method can meet the user's preference, that is, whether the recommendation result in the recommendation list is required by the user, and the core thereof depends on the ratio of each weight in the weighted mixing.
  • the weights are set in the weighted hybrid recommendation method, they are usually set and adjusted by manual observation or experience.
  • the embodiment of the present application provides a method and a device for recommending information, which are used to solve the problem that the recommendation list obtained by manually setting weights in the prior art does not meet the requirements of the user, and the user needs to spend a lot of time searching again, which wastes network resources. Increase the pressure on the server.
  • the weight of each recommendation information group is adjusted, and the recommendation list is re-determined according to the adjusted weight until the determined recommendation list satisfies the recommendation condition, and the information included in the recommendation list is recommended to the user.
  • a behavior determining module configured to determine historical behavior information of the user
  • An information group determining module configured to separately determine a plurality of recommended information groups according to the historical behavior information
  • a mixing module configured to determine a recommendation list according to weights preset for each recommendation information group
  • Determining a recommendation module configured to determine whether the recommendation list satisfies a preset recommendation condition, and if yes, recommend the information included in the recommendation list to the user, and if not, adjust the weight of each recommendation information group And instructing the mixing module to re-determine the recommendation list according to the adjusted weight until the recommendation list determined by the mixing module satisfies the recommendation condition, and recommend information included in the recommendation list to the user.
  • An embodiment of the present application provides a method and a device for recommending information.
  • the method uses different recommendation algorithms to determine a plurality of recommended information groups according to historical behavior information of the user, and determines a recommendation list according to weights corresponding to each recommendation information group. If the recommendation list meets the preset recommendation condition, the weight of the recommendation information group corresponding to the recommendation list is adjusted, and the adjusted recommendation list is obtained, until the obtained recommendation list satisfies the preset recommendation condition, The information in the recommendation list is recommended to the user.
  • the above information recommendation method does not need to manually set the weight of each recommendation information group, and can automatically adjust the weight of each recommendation information group according to the historical behavior data of the user, and obtain a recommendation list that satisfies the user requirement, thereby effectively improving the accuracy of the recommendation list and enabling the user to No need to spend a lot of time searching Cable information also saves network resources and reduces server pressure.
  • FIG. 1 is a process of information recommendation according to an embodiment of the present application
  • FIG. 2 is a schematic structural diagram of an information recommendation apparatus according to an embodiment of the present application.
  • the weighted hybrid recommendation method is still used to obtain the recommendation list, and the weights of each recommendation information group involved in the weighted hybrid recommendation method may be determined by using an optimization algorithm according to the historical behavior information of the user, without manual determination by hands.
  • the accuracy of the recommended list is high, so that the user does not need to spend time searching for information again, which effectively saves network resources and reduces server pressure.
  • FIG. 1 is a process of information recommendation according to an embodiment of the present application, which specifically includes the following steps:
  • S101 Determine historical behavior information of the user.
  • the server in order to save network resources and reduce server pressure, the server needs to recommend the information to the user more accurately and more in line with the user's behavior. This makes the server at least need to determine the user's preferences, needs and other related information, and selectively recommend some information to the user according to the user's preferences, needs and other information. Since such information related to user preferences and needs can be reflected by the user's behavior, the website can select recommendation information according to the user's historical behavior information.
  • the server first needs to determine the historical behavior information of the user.
  • the historical behavior information of the user may be information corresponding to the historical behavior of the user in the server, such as information content and attributes browsed by the user, information content and attributes searched by the user, information content and attributes of the user's attention or collection. Wait, it can be seen that this information is related to the user's preferences, needs and so on.
  • the server may determine historical data of the user during the historical time period according to a preset historical time period. The historical time period can be set as needed, such as the past 3 months.
  • S102 Determine, according to the historical behavior information, a plurality of recommended information groups.
  • the server still uses the weighted hybrid recommendation method to determine the recommendation list that is finally recommended to the user. Therefore, after determining the historical behavior information of the user in step S101, the server may also adopt different recommendations according to the historical behavior information.
  • the algorithm separately determines a plurality of recommended information groups, so that the recommended information groups are subsequently mixed and weighted to obtain a recommendation list.
  • the recommendation algorithm may be a recommendation algorithm based on collaborative filtering, a recommendation algorithm based on content, a recommendation algorithm based on association rules, or a recommendation algorithm based on knowledge, etc., and the recommendation algorithm used to determine the recommendation information group is not here. Make specific limits.
  • each piece of information in each recommendation information group obtained by different recommendation calculation methods obtains a corresponding recommendation weight, that is, each information included in the recommendation information group for each recommendation information group.
  • Each has a recommendation weight relative to the recommendation information group, and each of the information included in one recommendation information group may have the same or different recommendation weights relative to the recommendation information group.
  • the server obtains the historical behavior information of the user I
  • the user-based collaborative filtering recommendation algorithm and the commodity-based collaborative filtering recommendation algorithm are separately calculated according to the historical behavior information, and two recommended information may be separately determined.
  • the present application can determine the recommendation list based on the weights preset for each recommendation information group.
  • the preset weight may be an initial weight preset according to experience or a random initial weight according to a random function, and the weight only represents an initial coefficient, and is not based on the subsequent final recommendation list. Weights.
  • the recommended list is determined according to preset weights for each recommended information group, and specifically:
  • each information may be determined relative to the recommendation information group according to the weight of the recommendation information group and the recommendation weight of each information included in the recommendation information group with respect to the recommendation information group. Child weight.
  • each information included in the recommendation information group has a recommendation weight relative to the recommendation information group, so each information described in the present application may be each information relative to the sub-weight of the recommendation information group. The product of the recommended weight of the recommendation information group and the weight of the recommendation information group.
  • the sum of the sub-weights of the information with respect to each recommendation information group can be determined as the total weight of the information, and finally the recommendation list can be determined according to the total weight of each information.
  • the recommendation list is determined according to the total weight of each information, which may be based on the total weight of each information. After the large to small arrangement, the recommended list of recommendations, in which the total weight information can be considered for priority recommendation to the user. Since the recommendation list is determined based on the total weight of each information, the recommendation list may contain all the information in each recommendation information group. Considering that when there is too much information included in the recommendation list, if all the information in the recommendation list is recommended to the user, it may be difficult for the user to find the required information from the recommendation information, and the information search problem still needs to be performed, so this application In the provided method, the recommendation list may be a recommendation list composed of the first few information in all the information. That is to say, the information in each recommendation information group can be sorted in descending order of the total weight, and the specified number of information is selected in order from the front to the back to form the recommendation list.
  • the weights preset for the two recommended information groups are (0.4, 0.6), that is, the weights for the recommended information group ⁇ and the recommended information group ⁇ are 0.4 and 0.6, respectively.
  • the information respectively included in the recommendation information group ⁇ and the recommendation information group ⁇ , and the recommended weights of each information included in the two recommendation information groups with respect to the two recommendation information groups are as shown in Table 1.
  • the recommendation weight of the information in the recommendation information group ⁇ is 0.9, the recommendation weight in the recommendation information group ⁇ is 0.6, and since the weight of the recommendation information group ⁇ is 0.4, the recommendation The weight of the information group ⁇ is 0.6.
  • the sub-weight of the information relative to the recommendation information group ⁇ is, the sub-weight of the information relative to the recommendation information group ⁇ is, and then the total weight of the information is, that is, the total weight of the commodity A is 0.72.
  • the order of the total weight of each product is further divided into: product A, product O, product M, product G, product C, product T, and commodity F. It is assumed that the preset recommendation list is determined according to the total weight of each information, and after ranking in descending order, the first five pieces of information are selected as the recommendation list, and finally the recommended list is determined as item A, item O, item M. , product G, product C.
  • step S104 Determine whether the recommendation list satisfies a preset recommendation condition, if yes, execute step S105, and if not, perform step S106.
  • the recommendation list has been determined through the above steps S101 to S103. However, since it is not determined whether the information in the recommendation list can meet the user's expectation, the present application also needs to determine whether the recommendation list satisfies the preset. The recommended conditions, and depending on the judgment results, choose different follow-up methods.
  • the accuracy of the recommendation list may be determined according to the user historical behavior information determined in step S101, and it is determined whether the accuracy of the recommendation list is greater than a preset threshold.
  • the accuracy is greater than the threshold, it is determined that the recommendation list satisfies the preset recommendation condition and step S105 is performed, and when the accuracy is not greater than the threshold, it is determined that the recommendation list does not satisfy the preset recommendation condition and is executed.
  • determining the accuracy of the recommendation list may first determine the quantity of information included in the recommendation list and the information in the historical behavior information of the user, and determine the ratio of the quantity to the quantity of information included in the recommendation list. The value of this ratio is taken as the accuracy of the recommendation list.
  • the preset threshold in the server is 0.4
  • the user's historical behavior information is: the user clicks on the product A, the product Q, the product R, the product H, the product M, the commodity F, and the commodity L. Since the information included in the recommendation list determined in step S103 is: item A, item O, item M, item G, item C, information that the information contained in the recommendation list is consistent with the user's historical behavior information may be determined first. It is the commodity A and the commodity M, and the number of the identical information is determined to be 2.
  • the recommendation list includes a total of five pieces of information, it can be further determined that the ratio of the number of the consensus information to the number of information included in the recommendation list is 0.4, and finally the value (ie, 0.4) is used as the accuracy of the recommendation list. . Since the accuracy is not greater than the preset threshold, it is determined that the recommendation list does not satisfy the preset recommendation condition, and step S106 is performed.
  • step S104 if it is determined in step S104 that the recommendation list satisfies the preset condition, it may be determined that the recommendation list has met the requirement of the user, and therefore, step S105 may be performed to recommend the information included in the recommendation list to the user. .
  • the server may adjust the weight of each recommended information group by using a preset optimization algorithm, and re-adjust the adjusted weight as a preset weight, according to the adjusted The weights re-determine the recommendation list until the determined recommendation list satisfies the recommendation condition and recommend the information contained in the recommendation list to the user.
  • the application can automatically adjust the weights of the recommended information groups by using the iterative process of the foregoing steps S103-S106, so that the determined recommendation information can be more accurate and fast, so as to save network resources and reduce server pressure.
  • a preset optimization algorithm may be adopted, and according to at least one of the following iteration information, an adjustment amount for adjusting the weight of each recommendation information group is determined, and according to the determined adjustment amount. , adjust the weight of each recommendation group.
  • the iterative information includes: the adjustment amount of the weight of each recommendation information group, the accuracy of the last determined recommendation list, and the highest accuracy among the accuracy of each recommendation list obtained each time.
  • V K+1 is a weight adjustment value of the K+1th recommendation information group
  • V K is a Kth weight adjustment value
  • W K is an inertia weight of the Kth time
  • C 1 and C 2 are preset constants.
  • rand 1 and rand 2 are random functions with a value space between (0, 1)
  • Pbest is a recommended list determined for the Kth time
  • a recommended list with a higher accuracy is recommended for the K+1th recommended list.
  • the weight of each recommendation information group, Gbest is the weight of each recommendation information group corresponding to the recommendation list with the highest accuracy among all the recommended lists
  • X K is the weight of each recommendation information group corresponding to the recommended list determined by the Kth time. .
  • W K decreases as the number of adjustments K increases, and the formula for specifically determining W K may be
  • W s is a preset initial inertia weight, which can be artificially set according to experience
  • WE is the preset final inertia weight value, or can be artificially set according to experience
  • K is the current adjustment number
  • K max is the preset maximum The number of adjustments.
  • the Pbest in the formula can be determined by comparing the accuracy of the last determined recommendation list in the iteration information with the accuracy of the current recommendation list.
  • Gbest can be determined by comparing the highest accuracy among the accuracy of each recommendation list obtained each time and the accuracy of the recommendation list.
  • the optimization algorithm used in the present application may be a particle swarm algorithm, a genetic algorithm, an ant colony algorithm, an annealing algorithm, etc.
  • This application only uses a particle swarm algorithm as an example, but does not limit which optimization algorithm is used. Determine the amount of weight adjustment for each recommendation group.
  • the adjusted recommendation list may be determined according to the method described in step S103. After determining the adjusted recommendation list, it may be determined according to the method described in step S104 whether the recommendation list satisfies the recommendation condition. If yes, the step S105 is performed to recommend the information in the recommendation list to the user, and if not, the information may be recommended to the user. The method described in the above step S106 is continued until the determined recommendation list satisfies the recommendation condition, and step S105 is performed.
  • step S104 since the accuracy determination of the recommendation list is performed in step S104, it is determined based on the historical behavior information of the user, and as described in the foregoing steps S101 to S103, the recommendation list is also determined according to the historical behavior information of the user, and this is determined.
  • the server uses the same set of information to determine whether the recommended list determined by the set of information is consistent with the set of information. This will result in the accuracy of the determined recommendation list being disturbed and its credibility is not high.
  • the present application may further divide the historical behavior information of the user into test information and reference information before determining a plurality of recommended information groups in step S102.
  • the test information obtained by the partitioning is used to determine the recommendation list according to step S102 and step S103 provided by the present application. That is, in step S102, a plurality of recommendation information groups may be determined by using different recommendation algorithms according to the test information, and the recommendation list is determined through step S103.
  • the divided reference information is used to compare with the recommended information list in step S104 to determine the accuracy of the recommendation letter list. That is, in step S104, the accuracy of the recommendation list can be determined based on the reference information.
  • the reference information is also the historical behavior information of the user, and is different from the historical behavior information of the user determining the recommended list, comparing the reference information can more accurately determine the accuracy of the recommended information list, and the credibility is higher. .
  • a formula may be used. To calculate the accuracy, where P is the accuracy, R is the collection of information in the recommendation list, T is the collection of information contained in the reference information, and u is the accuracy for the user u. It can be seen that the accuracy of the recommendation list determined according to the reference information can be more accurately reflected, and the information contained in the recommendation list is in accordance with the user's needs.
  • the server has divided the history behavior information of the user 1 into test information and reference information in step S102, and the recommendation list determined in step S103 is determined based on the test information.
  • the application may further set a recommendation condition that the number of adjustments reaches a preset number of times, that is, when the number of adjustments of the recommendation list reaches a preset number of recommendations, the information in the recommended list determined by the weight of the determined Gbest is used as Information recommended to the user.
  • the preset recommended number of times may be the maximum adjustment number K max described above.
  • the recommendation list corresponding to Gbest is the most accurate recommendation list among all the recommended lists, the user's needs can be satisfied to some extent, and the server can be prevented from consuming a large amount of resources, and the information cannot be recommended to the user. problem.
  • the recommendation method shown in FIG. 1 provided by the present application may be triggered by some specified operations performed by the user. For example, when the user logs in the account, the method shown in FIG. 1 may be automatically triggered to serve the user. Recommended information. Of course, the above method can also be triggered according to the set time interval, and will not be repeated here.
  • the recommendation method described in this application may be performed by multiple servers, and may be executed by each server in the content distribution network, so that the pressure for executing the recommendation method may be distributed to multiple servers.
  • the embodiment of the present application further provides an information recommendation device, as shown in FIG. 2 .
  • FIG. 2 is a schematic structural diagram of an information recommendation apparatus according to an embodiment of the present application, which specifically includes:
  • the behavior determining module 201 is configured to determine historical behavior information of the user
  • the information group determining module 202 is configured to determine, according to the historical behavior information, a plurality of recommended information groups;
  • a mixing module 203 configured to determine a recommendation list according to weights preset for each recommendation information group
  • the determining recommendation module 204 is configured to determine whether the recommended list satisfies a preset recommendation condition, and if yes, recommend the information included in the recommendation list to the user, and if not, adjust the recommended information group. Weighting, and instructing the mixing module 203 to re-determine the recommendation list according to the adjusted weight until the recommendation list determined by the mixing module 203 satisfies the recommendation condition, and recommend information included in the recommendation list to the user.
  • the information group determining module 202 is further configured to: before determining the plurality of recommended information groups according to the historical behavior information, and dividing the historical behavior information of the user into test information and reference information, where the information group determining module is The 202 is specifically configured to determine, according to the test information, a plurality of recommended information groups by using different recommendation algorithms.
  • the mixing module 203 is specifically configured to: for each recommendation information group, according to the weight of the recommendation information group, and the sub-weight of each information included in the recommendation information group with respect to the recommendation information group, for each information, The recommendation weight of the information with respect to each recommendation information group is determined, the sum of the sub-weights of each information with respect to the recommendation information group is determined, and as the total weight of the information, the recommendation list is determined according to the total weight of each information.
  • the determining and recommending module 204 is configured to determine an accuracy of the recommended list according to the reference information, determine whether the accuracy meets a preset threshold, and if yes, determine that the recommended list meets a preset recommendation. Condition, otherwise, it is determined that the recommendation list does not satisfy the preset recommendation condition.
  • the determining and recommending module 204 is specifically configured to determine, according to at least one of the following iterative information, an adjustment amount for adjusting weights of each recommended information group, and adjust weights of each recommended information group according to the determined adjustment amount;
  • the information includes the adjustment amount of the weight of each recommended information group, the accuracy of the last determined recommendation list, and the highest accuracy among the accuracy of each recommended list obtained each time.
  • the determining recommendation module 204 is further configured to: when the number of times the weights of the recommended information groups are adjusted to a preset number of times, determine a recommendation list with the highest accuracy among the recommended lists obtained each time, and the recommendation list with the highest accuracy is included in the recommendation list. The included information is recommended to the user.
  • the information recommendation apparatus shown in FIG. 2 may be located in a server of various types of websites, and the server may be one or more.
  • the content distribution network may be used to establish a connection between multiple servers.
  • the specific implementation method is not limited in this application.
  • a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • processors CPUs
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
  • RAM random access memory
  • ROM read only memory
  • Memory is an example of a computer readable medium.
  • Computer readable media includes both permanent and non-persistent, removable and non-removable media.
  • Information storage can be implemented by any method or technology.
  • the information can be computer readable instructions, data structures, modules of programs, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
  • computer readable media does not include temporary storage of computer readable media, such as modulated data signals and carrier waves.
  • embodiments of the present application can be provided as a method, system, or computer program product.
  • the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment in combination of software and hardware.
  • the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.

Abstract

提供一种信息推荐方法及装置,该方法确定用户的历史行为信息(S101);根据所述历史行为信息,分别确定若干个推荐信息组(S102);根据针对各推荐信息组预设的权重,确定推荐列表(S103);判断所述推荐列表是否满足预设的推荐条件(S104);若判断为是,则将所述推荐列表中包含的信息推荐给所述用户(S105),若判断为否,则调整各推荐信息组的权重(S106),根据调整后的权重重新确定推荐列表。上述信息推荐方法无需人工设置各推荐信息组的权重,可根据用户的历史行为数据自动调整各推荐信息组的权重,获得满足用户需求的推荐列表,因此可有效提高推荐列表的准确度,使得用户不必再花费大量的时间搜索信息,也节约了网络资源、减轻了服务器压力。

Description

一种信息推荐方法及装置
本申请要求2015年11月25日递交的申请号为201510831206.3发明名称为“一种信息推荐方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及信息技术领域,尤其涉及一种混合推荐方法及装置。
背景技术
随着信息化社会的发展,人们越来越习惯于使用是网络来进行社会活动,如,进行网上购物、通过网上银行缴费、网络即时通讯等。为了提高人们浏览网站时的体验,使用户可以快速找到想浏览的内容,通常提供网上服务的服务供应商,都会根据用户的行为数据在网站主页面上显示一些推荐信息。如,音乐网站向用户推荐歌曲、社交网站向用户推荐好友等。
推荐信息的推荐列表通常通过一些推荐算法计算得来,通常有两类推荐算法:基于信息内容的推荐和基于用户行为的推荐。前者由于不需要用户行为数据即可直接计算出推荐列表,但是推荐列表中的推荐结果不能针对用户喜好,准确率较低,后者虽然可以计算出较为准确的推荐列表,但是其准确度取决于用户的行为数据的多少,具有局限性。为了解决这两种推荐算法的弊端,现有技术中通常混合多种推荐算法的结果,计算得出混合推荐列表,其中,加权混合推荐方法由于其混合方式简单、易于融合推荐算法结果、使用灵活度高等优点成为人们常用的混合推荐方法。
而加权混合推荐方法得到的推荐列表是否能符合用户的喜好,即推荐列表中的推荐结果是否是用户需要的,其核心就取决于加权混合时各权重的配比。但是现有技术中,在对加权混合推荐方法中各权重进行设置时,通常是通过人工观察或者经验来设置、调整的。
这种通过人工观察或经验来进行权重的设置、调整方法,不仅需要耗费大量的人力和时间成本,而且得到的推荐列表的准确度也较差,另外,由于用户的喜好并非固定不变的,而现有方法靠人工经验设置的权重在较长时间内均是固定的,所以当用户喜好改变时,现有方法就不能及时提供对应的信息。所以,现有技术中使用加权混合推荐方法得到的推荐列表难以符合用户的需求,导致用户为了找到自己想获取的信息,需要再次 花费大量时间进行信息搜索,不仅浪费了网络资源,同时也增大了服务器压力。
发明内容
本申请实施例提供一种信息推荐方法及装置,用以解决现有技术中通过人工设置权重而得到的推荐列表不符合用户的需求,导致用户需要花费大量的时间再次进行搜索,浪费网络资源、增大服务器压力的问题。
本申请实施例提供的一种信息推荐的方法,包括:
确定用户的历史行为信息;
根据所述历史行为信息,分别确定若干个推荐信息组;
根据针对各推荐信息组预设的权重,确定推荐列表;
判断所述推荐列表是否满足预设的推荐条件;
若满足,则将所述推荐列表中包含的信息推荐给所述用户;
若不满足,则调整各推荐信息组的权重,并根据调整后的权重重新确定推荐列表,直到确定的推荐列表满足所述推荐条件,并将推荐列表中包含的信息推荐给所述用户为止。
本申请实施例提供的一种信息推荐的装置,包括:
行为确定模块,用于确定用户的历史行为信息;
信息组确定模块,用于根据所述历史行为信息,分别确定若干个推荐信息组;
混合模块,用于根据针对各推荐信息组预设的权重,确定推荐列表;
判断推荐模块,用于判断所述推荐列表是否满足预设的推荐条件,若满足,则将所述推荐列表中包含的信息推荐给所述用户,若不满足,则调整各推荐信息组的权重,并指示所述混合模块根据调整后的权重重新确定推荐列表,直到所述混合模块确定的推荐列表满足所述推荐条件,并将推荐列表中包含的信息推荐给所述用户为止。
本申请实施例提供一种信息推荐的方法及装置,该方法根据用户的历史行为信息,采用不同的推荐算法,分别确定若干个推荐信息组,根据各推荐信息组对应的权重确定推荐列表,当该推荐列表是否满足预设的推荐条件时,对该推荐列表对应的推荐信息组的权重进行调整,并获得调整后的推荐列表,直到得到的推荐列表满足该预设的推荐条件时,将该推荐列表中的信息推荐给用户。上述信息推荐方法无需人工设置各推荐信息组的权重,可根据用户的历史行为数据自动调整各推荐信息组的权重,获得满足用户需求的推荐列表,因此可有效提高推荐列表的准确度,使得用户不必再花费大量的时间搜 索信息,也节约了网络资源、减轻了服务器压力。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种信息推荐的过程;
图2为本申请实施例提供的一种信息推荐装置的结构示意图。
具体实施方式
本申请实施例依然采用加权混合推荐方法得到推荐列表,而加权混合推荐方法中所涉及的各推荐信息组的权重可根据用户的历史行为信息,采用优化算法迭代确定,无需人工凭借经验确定,因此得到的推荐列表的准确性较高,使用户无需再次花费时间进行信息搜索,有效地节省了网络资源,减轻了服务器压力。
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种信息推荐的过程,具体包括以下步骤:
S101:确定用户的历史行为信息。
在本申请实施例中,服务器为了达到节约网络资源、减轻服务器压力的目的,需要推荐给用户的信息更加准确、更加符合用户的行为规律。这就使得该服务器至少需要确定用户的喜好、需求等等相关的信息,并根据该用户的喜好、需求等信息选择性的推荐一些信息给该用户。由于这类与用户喜好、需求相关的信息是可以通过用户的行为反映出来的,所以网站可以根据用户的历史行为信息,来选择推荐信息。
于是,在本申请实施例的步骤S101中,服务器首先需要确定用户的历史行为信息。其中,该用户的历史行为信息可以是,用户在该服务器中的历史行为对应的信息,如:用户浏览的信息内容及属性、用户搜索的信息内容及属性、用户关注或收藏的信息内容及属性等等,可见,这些信息都是与用户的喜好、需求等相关的信息。具体的,服务器可根据预设的历史时间段,确定该用户在该历史时间段内的历史数据。该历史时间段可根据需要进行设定,如过去的3个月等。
S102:根据所述历史行为信息,分别确定若干个推荐信息组。
在本申请实施例中,服务器依然采用加权混合推荐方法来确定最终向用户推荐的推荐列表,所以服务器在步骤S101中确定用户的历史行为信息后,还可根据该历史行为信息,采用不同的推荐算法分别确定若干个推荐信息组,使得后续对各推荐信息组进行混合加权得到推荐列表。其中,所述的推荐算法可以是基于协同过滤的推荐算法、基于内容的推荐算法、基于关联规则的推荐算法或者基于知识的推荐算法等等,确定推荐信息组所采用的推荐算法在此并不做具体限定。
需要说明的是,通过不同的推荐算分别法获得的各推荐信息组中的每一个信息会获取一个对应的推荐权重,即,针对每一个推荐信息组,该推荐信息组中包含的每个信息都具有一个相对于该推荐信息组的推荐权重,一个推荐信息组中包含的各信息相对于该推荐信息组的推荐权重可能相同,也可能不同。
例如,服务器获取了用户I的历史行为信息后,假设根据该历史行为信息,采用了基于用户的协同过滤推荐算法和基于商品的协同过滤推荐算法分别进行计算,则可以分别确定出两个推荐信息组:推荐信息组α和推荐信息组β。这两个推荐信息组由于是使用不同推荐算法得出的,所以其包含的信息也可能不完全一致。
S103:根据针对各推荐信息组预设的权重,确定推荐列表。
由于在步骤S102中已经确定了各推荐信息组,据此,本申请便可以根据针对各推荐信息组预设的权重,确定出推荐列表。其中,所述预设的权重,可以是根据经验预设的一个初始权重或者是根据随机函数获得一个随机的初始权重,这个权重仅仅代表一个初始的系数,并不是后续最终得到推荐列表所基于的权重。
于是在本申请实施例中,根据预设针对各推荐信息组的权重确定出推荐列表,具体可以是:
首先,可针对每个推荐信息组,根据该推荐信息组的权重,以及该推荐信息组中包含的每个信息相对于该推荐信息组的推荐权重,确定每个信息相对于该推荐信息组的子权重。其中,由于该推荐信息组中包含的每个信息都具有一个相对该推荐信息组的推荐权重,所以本申请中所述的每个信息相对于该推荐信息组的子权重,可以是每个信息相对于该推荐信息组的推荐权重与该推荐信息组的权重之乘积。
其次,可以针对每个信息,确定该信息相对于每个推荐信息组的子权重之和,作为该信息的总权重,最后可以根据每个信息的总权重,确定推荐列表。
进一步的,根据每个信息的总权重确定推荐列表,可以是根据每个信息的总权重由 大到小排列后,确定的推荐列表,其中总权重大的信息可以考虑优先推荐给用户。由于该推荐列表是根据每个信息的总权重确定的,所以该推荐列表可以包含各推荐信息组中的全部信息。而考虑到当推荐列表中包含的信息过多时,若将该推荐列表中全部信息都推荐给用户,可能造成用户难以从推荐信息中找到需要的信息,仍然需要进行信息搜索的问题,所以本申请提供的方法中,该推荐列表可以是由全部信息中的前几个信息组成的推荐列表。也就是说,可将各推荐信息组中的信息按照总权重从大到小的顺序排序后,按排序从前到后的顺序选择指定数量的信息,构成该推荐列表。
继续沿用上例,假设针对两个推荐信息组预设的权重是(0.4,0.6),即,针对推荐信息组α和推荐信息组β的权重分别为0.4和0.6。且该推荐信息组α和该推荐信息组β中分别包含的信息,以及这两个推荐信息组中包含的每个信息相对于这两个推荐信息组的推荐权重如表1所示。
Figure PCTCN2016106016-appb-000001
表1
则根据表1,针对商品A,可以确定该信息在推荐信息组α中的推荐权重为0.9、在推荐信息组β的推荐权重为0.6,且由于该推荐信息组α的权重为0.4、该推荐信息组β的权重为0.6。于是,可以进一步确定该信息相对于推荐信息组α的子权重为,该信息相对于推荐信息组β的子权重为,于是该信息的总权重为,即,商品A的总权重为0.72。
所以针对每个商品,确定其总权重时,可以确定各商品的总权重如表2所示。
信息 总权重
商品A 0.72
商品O 0.62
商品M 0.48
商品G 0.34
商品C 0.24
商品T 0.12
商品F 0.12
表2
于是,根据表2所示的各总权重,进一步按各商品总权重从大到小的顺序,排列为:商品A、商品O、商品M、商品G、商品C、商品T、商品F。假设,预设的推荐列表的确定是根据各信息的总权重,按照从大到小的顺序排列后,选取前5个信息作为推荐列表,则最后确定推荐列表为商品A、商品O、商品M、商品G、商品C。
S104:判断所述推荐列表是否满足预设的推荐条件,若满足则执行步骤S105,若不满足则执行步骤S106。
在本申请实施例中,通过上述步骤S101~S103已经确定了推荐列表,但是,由于不能确定该推荐列表中的信息是否能满足用户的期望,所以本申请还需要判断该推荐列表是否满足预设的推荐条件,并根据判断结果的不同,选择不同的后续处理方法。
另外,由于在进行判断时,是要判断该推荐信息列表所包含的信息是否满足用户的期望,这就需要通过用户的历史行为信息来判断。所以,在本申请中可以根据在步骤S101中确定的用户历史行为信息,来确定该推荐列表的准确度,并判断该推荐列表的准确度是否大于预设的阈值。当该准确度大于该阈值时,则判定该推荐列表满足预设的推荐条件并执行步骤S105,而当该准确度不大于该阈值时,则判定该推荐列表不满足预设的推荐条件并执行步骤S106。
具体的,推荐列表的准确度的确定,可以先确定该推荐列表中包含的信息与该用户历史行为信息中一致的信息的数量,再确定该数量占该推荐列表中包含的信息的数量的比例,将该比例的值作为该推荐列表的准确度。
继续沿用上例,假设服务器中预设的阈值是0.4,用户的历史行为信息为:用户点击了商品A、商品Q、商品R、商品H、商品M、商品F和商品L。由于在步骤S103中确定的推荐列表中包含的信息为:商品A、商品O、商品M、商品G、商品C,则可先确定该推荐列表中包含的信息与用户历史行为信息一致的信息,为商品A和商品M,并确定该一致信息的数量为2。由于该推荐列表一共包含有5个信息,所以可以进一步确定,该一致信息的数量占推荐列表中包含信息的数量的比例为0.4,最后将该数值(即,0.4)作为该推荐列表的准确度。由于该准确度不大于预设的阈值,所以判定该推荐列表不满足预设的推荐条件,并执行步骤S106。
S105:将所述推荐列表中包含的信息推荐给所述用户。
在本申请实施例中,若在步骤S104中已经判断推荐列表满足预设的条件,则可以确定该推荐列表已经满足用户的需求,因此可以执行步骤S105将该推荐列表中包含的信息推荐给用户。
S106:调整各推荐信息组的权重,并返回步骤S103。
也即,当步骤S103确定出的推荐列表不满足推荐条件时,服务器可采用预设的优化算法,调整各推荐信息组的权重,并将调整后的权重重新作为预设的权重,根据调整后的权重重新确定推荐列表,直到确定的推荐列表满足所述推荐条件,并将推荐列表中包含的信息推荐给所述用户为止。
本申请可通过上述步骤S103~S106的迭代过程自动的调整各推荐信息组的权重,使得确定的推荐信息可以更加准确、快速,以达到节约网络资源、减轻服务器压力的目的。
具体的,调整各推荐信息组的权重时,可采用预设的优化算法,并根据下述迭代信息中的至少一种,确定调整各推荐信息组的权重的调整量,并根据确定的调整量,调整各推荐信息组的权重。其中,该迭代信息包括:上一次调整各推荐信息组的权重的调整量、上一次确定的推荐列表的准确度、每次得到的各推荐列表的准确度中的最高准确度。
下面以采用的优化算法是粒子群算法为例,对上述调整权重的过程进行说明。服务器可以利用公式VK+1=WK·VK+C1·rand1·(Pbest-XK)+C2·rand2·(Gbest-XK)
确定各推荐信息组的权重的调整量,再利用公式XK+1=XK+VK+1确定调整后的各推荐信息组权重。其中,VK+1为第K+1次推荐信息组的权重调整值、VK为第K次权重调整值、WK为第K次的惯性权重、C1与C2为预设的常数、rand1与rand2为取值空间在(0,1)之间的随机函数、Pbest为第K次确定的推荐列表与第K+1次确定的推荐列表中准确度较高的推荐列表对应的各推荐信息组的权重、Gbest为确定过的所有推荐列表中准确度最高的推荐列表对应的各推荐信息组的权重、XK为第K次确定的推荐列表对应的各推荐信息组的权重。
需要说明的是,惯性权重WK随着调整次数K的增加而减小,具体确定WK的公式可以是
Figure PCTCN2016106016-appb-000002
其中,Ws为预设的初始惯性权重,可人为根据经验设置,We为预设的最后惯性权重值,也可人为根据经验设置,K为当前的调整次数,Kmax是预设的最大调整次数。
由上述公式可见,假设本次调整为第K+1次,则该公式中的Pbest可以通过迭代信息中的上一次确定的推荐列表的准确度和本次推荐列表的准确度经过对比而确定,而Gbest可以通过每次得到的各推荐列表的准确度中的最高准确度和本次推荐列表的准确度经过对比而确定,VK也可以通过迭代信息中的上一次调整各推荐信息组的权重的调整量来确定。于是,可以通过计算确定本次调整量VK+1,进而根据公式XK+1=XK+VK+1,确定本次调整后的各推荐信息组的权重。
另外,需要说明的是,本申请采用的优化算法可以是粒子群算法、遗传算法、蚁群算法、退火算法等,本申请仅以粒子群算法为例说明,但并不限定使用何种优化算法确定各推荐信息组的权重调整量。
在确定了该调整后的各推荐信息组的权重后,就可以依据在步骤S103中所述的方法,确定调整后的推荐列表。当确定调整后的推荐列表后,即可依据在步骤S104中所述的方法判断该推荐列表是否满足推荐条件,若满足则执行步骤S105推荐该推荐列表中的信息给用户,若不满足则可以继续重复上述步骤S106所述的方法,直到确定的推荐列表满足该推荐条件,并执行步骤S105。
另外,由于在步骤S104中进行推荐列表的准确度判断时,是根据用户的历史行为信息判断的,而由前述步骤S101~S103可知,该推荐列表也是根据用户的历史行为信息确定的,这就使得在步骤S104进行判断时,服务器是使用同一组信息来判断由该组信息确定的推荐列表是否与该组信息一致。这就会导致确定的推荐列表的准确度受到干扰,其可信度不高。
所以,为了使确定的推荐列表的准确度更加可信,本申请还可以通过步骤S102确定若干个推荐信息组之前,将该用户的历史行为信息划分为测试信息和参照信息。
则划分得到的该测试信息用于根据本申请提供的步骤S102、步骤S103来确定推荐列表。即,则在步骤S102中,可根据测试信息,采用不同的推荐算法确定若干个推荐信息组,并通过步骤S103确定推荐列表。
划分得到的该参照信息则用于在步骤S104中与该推荐信息列表进行比对,确定该推荐信列表的准确度。即,在步骤S104中,可根据参照信息,确定推荐列表的准确度。
由于该参照信息同样是用户的历史行为信息,且与确定该推荐列表的用户历史行为信息不同,所以以该参照信息做对比可以更加准确的确定推荐信息列表的准确度,其可信度更高。
具体的,在根据参照信息确定推荐列表的准确度时,可以使用公式
Figure PCTCN2016106016-appb-000003
来进行准确度的计算,其中P表示准确度,R表示推荐列表中信息的合集,T表示参照信息中包含的信息的合集,u表示针对用户u的准确度。由此可见,根据参照信息确定的推荐列表准确度能更加准确的反映,推荐列表中包含的信息,有多少是符合用户需求的。
例如,假设服务器已经在步骤S102中将该用户I的历史行为信息划分为测试信息和参照信息,且在步骤S103中确定的推荐列表是根据该测试信息确定的。在本申请中的预设阈值为0.4,则根据该参照信息(如,商品A、商品Q、商品R、商品H、商品M),判断该推荐列表中包含的信息,商品A、商品O、商品M、商品G、商品C的准确度。根据公式
Figure PCTCN2016106016-appb-000004
则可以知道PI=0.4,则准确度不大于预设的阈值,判定该推荐列表不满足预设的推荐条件,需要继续执行步骤S106。
进一步的,通过步骤S103~S106的迭代方法调整各推荐信息组的权重时,有可能出现多次调整后,确定的推荐列表的准确度仍然不大于预设的阈值的情况。这种情况会导致服务器耗费了大量的资源后,仍不能推荐信息给用户的问题。
所以为了避免出现大量重复调整后,确定的推荐列仍然不能满足推荐条件的情况的出现。本申请还可以再设定一个以调整次数是否达到预设次数的推荐条件,即当推荐列表的调整次数达到预设的推荐次数时,将确定的Gbest的权重所确定的推荐列表中的信息作为推荐给用户的信息。具体的,所述预设的推荐次数可以是上述的最大调整次数Kmax
由于Gbest对应的推荐列表是确定的所有推荐列表中准确度最高的推荐列表,因此也可以一定程度上满足用户的需求,且可以避免导致服务器耗费了大量的资源后,也不能推荐信息给用户的问题。
另外,本申请提供的上述如图1所示的推荐方法,可以由用户执行的某些指定操作触发,如,用户在登录账号时,可自动触发如图1所示的方法,用以为该用户推荐信息。当然,也可按照设定的时间间隔触发执行上述方法,这里就不再一一赘述。
需要说明的是,本申请中所述的推荐方法可以采用多服务器执行,具体可以采用内容分发网络中的各服务器执行,使执行该推荐方法的压力可以分摊到多个服务器中。
基于图1所示的信息推荐过程,本申请实施例还提供了一种信息推荐装置,如图2所示。
图2是本申请实施例提供的一种信息推荐装置的结构示意图,具体包括:
行为确定模块201,用于确定用户的历史行为信息;
信息组确定模块202,用于根据所述历史行为信息,分别确定若干个推荐信息组;
混合模块203,用于根据针对各推荐信息组预设的权重,确定推荐列表;
判断推荐模块204,用于判断所述推荐列表是否满足预设的推荐条件,若满足,则将所述推荐列表中包含的信息推荐给所述用户,若不满足,则调整各推荐信息组的权重,并指示所述混合模块203根据调整后的权重重新确定推荐列表,直到所述混合模块203确定的推荐列表满足所述推荐条件,并将推荐列表中包含的信息推荐给所述用户为止。
所述信息组确定模块202,还用于根据所述历史行为信息,分别确定若干个推荐信息组之前,将所述用户的历史行为信息划分为测试信息和参照信息,则所述信息组确定模块202具体用于根据所述测试信息,采用不同的推荐算法确定若干个推荐信息组。
所述混合模块203,具体用于针对每个推荐信息组,根据该推荐信息组的权重,以及该推荐信息组中包含的每个信息相对于该推荐信息组的子权重,针对每个信息,确定该信息相对于每个推荐信息组的推荐权重,确定每个信息相对于该推荐信息组的子权重之和,作为该信息的总权重,根据每个信息的总权重,确定推荐列表。
所述判断推荐模块204,具体用于根据所述参照信息,确定所述推荐列表的准确度,判断所述准确度是否满足大于预设阈值,若是,则判定所述推荐列表满足预设的推荐条件,否则,判定所述推荐列表不满足预设的推荐条件。
所述判断推荐模块204,具体用于根据下述迭代信息中的至少一种,确定调整各推荐信息组的权重的调整量,根据确定的调整量,调整各推荐信息组的权重;所述迭代信息包括:上一次调整各推荐信息组的权重的调整量、上一次确定的推荐列表的准确度、每次得到的各推荐列表的准确度中的最高准确度。
所述判断推荐模块204,还用于当调整各推荐信息组的权重的次数达到预设次数时,确定每次得到的各推荐列表中准确度最高的推荐列表,将准确度最高的推荐列表中包含的信息推荐给所述用户。
具体的,上述如图2所示的信息推荐装置可以位于各类网站的服务器中,该服务器可以是一个也可以是多个。当该服务器为多个的时候,具体还可以采用内容分发网络,建立多个服务器之间的联系,具体的实施方法本申请本不做限定。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

  1. 一种信息推荐方法,其特征在于,包括:
    确定用户的历史行为信息;
    根据所述历史行为信息,分别确定若干个推荐信息组;
    根据针对各推荐信息组预设的权重,确定推荐列表;
    判断所述推荐列表是否满足预设的推荐条件;
    若满足,则将所述推荐列表中包含的信息推荐给所述用户;
    若不满足,则调整各推荐信息组的权重,并根据调整后的权重重新确定推荐列表,直到确定的推荐列表满足所述推荐条件,并将推荐列表中包含的信息推荐给所述用户为止。
  2. 如权利要求1所述的方法,其特征在于,根据所述历史行为信息,分别确定若干个推荐信息组之前,所述方法还包括:
    将所述用户的历史行为信息划分为测试信息和参照信息;
    根据所述历史行为信息,分别确定若干个推荐信息组,具体包括:
    根据所述测试信息,采用不同的推荐算法确定若干个推荐信息组。
  3. 如权利要求1所属的方法,其特征在于,根据针对各推荐信息组预设的权重,确定推荐列表,具体包括:
    针对每个推荐信息组,根据该推荐信息组的权重,以及该推荐信息组中包含的每个信息相对于该推荐信息组的推荐权重,确定每个信息相对于该推荐信息组的子权重;
    针对每个信息,确定该信息相对于每个推荐信息组的子权重之和,作为该信息的总权重;
    根据每个信息的总权重,确定推荐列表。
  4. 如权利要求2所述的方法,其特征在于,判断所述推荐列表是否满足预设的推荐条件,具体包括:
    根据所述参照信息,确定所述推荐列表的准确度;
    判断所述准确度是否满足大于预设阈值;
    若是,则判定所述推荐列表满足预设的推荐条件;
    否则,判定所述推荐列表不满足预设的推荐条件。
  5. 如权利要求4所述的方法,其特征在于,调整各推荐信息组的权重,具体包括:
    根据下述迭代信息中的至少一种,确定调整各推荐信息组的权重的调整量;
    根据确定的调整量,调整各推荐信息组的权重;
    所述迭代信息包括:上一次调整各推荐信息组的权重的调整量、上一次确定的推荐列表的准确度、每次得到的各推荐列表的准确度中的最高准确度。
  6. 如权利要求4所述的方法,其特征在于,所述方法还包括:
    当调整各推荐信息组的权重的次数达到预设次数时,确定每次得到的各推荐列表中准确度最高的推荐列表;
    将准确度最高的推荐列表中包含的信息推荐给所述用户。
  7. 一种信息推荐装置,其特征在于,包括:
    行为确定模块,用于确定用户的历史行为信息;
    信息组确定模块,用于根据所述历史行为信息,分别确定若干个推荐信息组;
    混合模块,用于根据针对各推荐信息组预设的权重,确定推荐列表;
    判断推荐模块,用于判断所述推荐列表是否满足预设的推荐条件,若满足,则将所述推荐列表中包含的信息推荐给所述用户,若不满足,则调整各推荐信息组的权重,并指示所述混合模块根据调整后的权重重新确定推荐列表,直到所述混合模块确定的推荐列表满足所述推荐条件,并将推荐列表中包含的信息推荐给所述用户为止。
  8. 如权利要求7所述的装置,其特征在于,所述信息组确定模块还用于,根据所述历史行为信息,分别确定若干个推荐信息组之前,将所述用户的历史行为信息划分为测试信息和参照信息,则所述信息组确定模块具体用于根据所述测试信息,采用不同的推荐算法确定若干个推荐信息组。
  9. 如权利要求7所述的装置,其特征在于,所述混合模块具体用于,针对每个推荐信息组,根据该推荐信息组的权重,以及该推荐信息组中包含的每个信息相对于该推荐信息组的推荐权重,确定每个信息相对于该推荐信息组的子权重,针对每个信息,确定该信息相对于每个推荐信息组的子权重之和,作为该信息的总权重,根据每个信息的总权重,确定推荐列表。
  10. 如权利要求8所述的装置,其特征在于,所述判断推荐模块具体用于,根据所述参照信息,确定所述推荐列表的准确度,判断所述准确度是否满足大于预设阈值,若是,则判定所述推荐列表满足预设的推荐条件,否则,判定所述推荐列表不满足预设的推荐条件。
  11. 如权利要求10所述的装置,其特征在于,所述判断推荐模块具体用于,根据下述迭代信息中的至少一种,确定调整各推荐信息组的权重的调整量,根据确定的调整 量,调整各推荐信息组的权重;所述迭代信息包括:上一次调整各推荐信息组的权重的调整量、上一次确定的推荐列表的准确度、每次得到的各推荐列表的准确度中的最高准确度。
  12. 如权利要求10所述的装置,其特征在于,所述判断推荐模块还用于,当调整各推荐信息组的权重的次数达到预设次数时,确定每次得到的各推荐列表中准确度最高的推荐列表,将准确度最高的推荐列表中包含的信息推荐给所述用户。
PCT/CN2016/106016 2015-11-25 2016-11-16 一种信息推荐方法及装置 WO2017088688A1 (zh)

Priority Applications (9)

Application Number Priority Date Filing Date Title
EP16867911.6A EP3382571A4 (en) 2015-11-25 2016-11-16 METHOD AND APPARATUS FOR RECOMMENDATION OF INFORMATION
SG11201804365VA SG11201804365VA (en) 2015-11-25 2016-11-16 Information recommendation method and apparatus
AU2016360122A AU2016360122B2 (en) 2015-11-25 2016-11-16 Information recommendation method and apparatus
JP2018526895A JP6676167B2 (ja) 2015-11-25 2016-11-16 情報推薦方法及び装置
KR1020187017994A KR102192863B1 (ko) 2015-11-25 2016-11-16 정보 권고 방법 및 장치
MYPI2018702011A MY186044A (en) 2015-11-25 2016-11-16 Information recommendation method and apparatus
US15/979,946 US11507849B2 (en) 2015-11-25 2018-05-15 Weight-coefficient-based hybrid information recommendation
PH12018501121A PH12018501121A1 (en) 2015-11-25 2018-05-25 Information recommendation method and apparatus
US16/722,444 US20200134478A1 (en) 2015-11-25 2019-12-20 Weight-coefficient-based hybrid information recommendation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510831206.3 2015-11-25
CN201510831206.3A CN106776660A (zh) 2015-11-25 2015-11-25 一种信息推荐方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/979,946 Continuation US11507849B2 (en) 2015-11-25 2018-05-15 Weight-coefficient-based hybrid information recommendation

Publications (1)

Publication Number Publication Date
WO2017088688A1 true WO2017088688A1 (zh) 2017-06-01

Family

ID=58763826

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/106016 WO2017088688A1 (zh) 2015-11-25 2016-11-16 一种信息推荐方法及装置

Country Status (10)

Country Link
US (2) US11507849B2 (zh)
EP (1) EP3382571A4 (zh)
JP (1) JP6676167B2 (zh)
KR (1) KR102192863B1 (zh)
CN (1) CN106776660A (zh)
AU (1) AU2016360122B2 (zh)
MY (1) MY186044A (zh)
PH (1) PH12018501121A1 (zh)
SG (1) SG11201804365VA (zh)
WO (1) WO2017088688A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110321475A (zh) * 2019-05-22 2019-10-11 深圳壹账通智能科技有限公司 数据列表的排序方法、装置、设备及存储介质
KR20200069352A (ko) * 2017-12-29 2020-06-16 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 융합 데이터 처리 방법 및 정보 추천 시스템
CN111798167A (zh) * 2019-10-31 2020-10-20 北京沃东天骏信息技术有限公司 一种仓库补货的方法和装置
CN112633321A (zh) * 2020-11-26 2021-04-09 北京瑞友科技股份有限公司 一种人工智能推荐系统及方法
CN112685598A (zh) * 2019-10-18 2021-04-20 腾讯科技(深圳)有限公司 直播中的礼包推送方法及装置

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776660A (zh) 2015-11-25 2017-05-31 阿里巴巴集团控股有限公司 一种信息推荐方法及装置
JP7041844B2 (ja) * 2018-04-02 2022-03-25 トヨタ自動車株式会社 情報処理装置及びカーシェアリングサービス用の制御プログラム
CN110309417A (zh) * 2018-04-13 2019-10-08 腾讯科技(深圳)有限公司 评价因子的权重确定方法和装置
CN108763318B (zh) * 2018-04-27 2022-04-19 达而观信息科技(上海)有限公司 物品推荐方法和装置
CN108805607A (zh) * 2018-05-02 2018-11-13 开源物联网(广州)有限公司 用户偏好预估系统
CN110473038A (zh) * 2018-05-10 2019-11-19 北京嘀嘀无限科技发展有限公司 一种产品推荐方法、产品推荐系统及计算机设备
CN109785147A (zh) * 2018-10-24 2019-05-21 中国平安人寿保险股份有限公司 险种排序方法及装置、电子设备及计算机可读存储介质
CN109696827B (zh) * 2018-12-28 2021-11-09 西安邮电大学 惯性权重余弦调整粒子群优化算法的pid参数整定方法
CN110188277B (zh) * 2019-05-31 2021-06-25 苏州百智通信息技术有限公司 一种资源的推荐方法及装置
CN112131373A (zh) * 2019-06-25 2020-12-25 杭州海康威视数字技术股份有限公司 信息搜索方法、装置、电子设备及可读存储介质
US20210065276A1 (en) * 2019-08-28 2021-03-04 Fuji Xerox Co., Ltd. Information processing apparatus and non-transitory computer readable medium
CN110532476B (zh) * 2019-09-02 2023-07-07 上海喜马拉雅科技有限公司 一种信息推荐方法、装置、设备及存储介质
CN111127139B (zh) * 2019-12-06 2023-06-27 成都理工大学 一种基于ProbS与HeatS计算模式改进的混合推荐算法
CN111026977B (zh) * 2019-12-17 2022-04-08 腾讯科技(深圳)有限公司 信息推荐方法、装置及存储介质
CN111881341B (zh) * 2020-06-15 2022-11-25 合肥美的电冰箱有限公司 饮食信息推荐方法及装置、电子设备及介质
CN111797318B (zh) * 2020-07-01 2024-02-23 喜大(上海)网络科技有限公司 信息的推荐方法、装置、设备和存储介质
KR102474747B1 (ko) * 2020-07-06 2022-12-05 아주대학교산학협력단 사용자 행동 패턴에 기초하여 상품을 추천하고 추천 상품에 대한 사용자의 선호도 예측 장치 및 방법
CN112035738B (zh) * 2020-08-14 2023-09-26 北京奇艺世纪科技有限公司 一种电子书单推荐方法及装置、电子设备
CN112148980B (zh) * 2020-09-28 2023-11-03 京东科技控股股份有限公司 基于用户点击的物品推荐方法、装置、设备和存储介质
CN112115370A (zh) * 2020-09-29 2020-12-22 贝壳技术有限公司 推荐方法、装置、计算机可读存储介质及电子设备
KR102622258B1 (ko) * 2021-04-16 2024-01-05 주식회사 카카오 개인화된 탐색 로직을 이용한 콘텐츠 제공 방법 및 시스템
CN113179348B (zh) * 2021-04-20 2023-04-07 珠海格力电器股份有限公司 智能设备管理方法、装置、设备及存储介质
CN113298277A (zh) * 2021-04-25 2021-08-24 上海淇玥信息技术有限公司 一种基于目标的连续预约信息推送方法、装置及电子设备
CN113297371A (zh) * 2021-07-28 2021-08-24 北京猿力未来科技有限公司 推荐题目库的生成方法、装置、设备及存储介质
CN114285895B (zh) * 2021-12-22 2024-02-20 赛尔网络有限公司 网络资源推荐方法、装置、电子设备及存储介质
KR102436215B1 (ko) * 2022-03-07 2022-08-25 주식회사 클라우다이크 인공지능 기반의 파일 추천 시스템 및 방법
CN115795072B (zh) * 2023-02-03 2023-05-05 北京数慧时空信息技术有限公司 遥感影像动态混合推荐系统及方法
JP7376035B1 (ja) 2023-04-03 2023-11-08 17Live株式会社 レコメンデーションのためのシステム、方法、及びコンピュータ可読媒体

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101321137A (zh) * 2007-06-07 2008-12-10 音乐会技术公司 分配用户偏好设置给类型中的字段的系统和方法
US20100169328A1 (en) * 2008-12-31 2010-07-01 Strands, Inc. Systems and methods for making recommendations using model-based collaborative filtering with user communities and items collections
CN102880691A (zh) * 2012-09-19 2013-01-16 北京航空航天大学深圳研究院 一种基于用户亲密度的混合推荐系统及方法
CN103778260A (zh) * 2014-03-03 2014-05-07 哈尔滨工业大学 一种个性化微博信息推荐系统和方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090144262A1 (en) * 2007-12-04 2009-06-04 Microsoft Corporation Search query transformation using direct manipulation
KR101030653B1 (ko) * 2009-01-22 2011-04-20 성균관대학교산학협력단 정보 엔트로피를 이용하여 유사도를 보정하는 사용자 기반 협업 필터링 추천 시스템
US20110131077A1 (en) 2009-12-01 2011-06-02 Microsoft Corporation Context-Aware Recommendation Module Using Multiple Models
US8924314B2 (en) 2010-09-28 2014-12-30 Ebay Inc. Search result ranking using machine learning
JP2012190061A (ja) * 2011-03-08 2012-10-04 Sony Corp 情報処理装置、端末装置、情報提示システム、評価スコアの算出方法、及びプログラム
CN102957722A (zh) * 2011-08-24 2013-03-06 苏州工业园区辰烁软件科技有限公司 一种用于生成个性化推荐的网络服务方法及其系统
CN103106208B (zh) * 2011-11-11 2017-09-15 中国移动通信集团公司 一种移动互联网中的流媒体内容推荐方法和系统
CN102902755A (zh) * 2012-09-21 2013-01-30 北京百度网讯科技有限公司 一种对检索结果项的排序进行调整的方法及装置
JP6097126B2 (ja) 2013-04-10 2017-03-15 株式会社Nttドコモ レコメンド情報生成装置及びレコメンド情報生成方法
CN104123284B (zh) * 2013-04-24 2018-01-23 华为技术有限公司 一种推荐的方法及服务器
GB2522890A (en) 2014-02-07 2015-08-12 Music Technology Ltd Dynamic digital media content and associated user pool apparatus and method
CN104978368A (zh) 2014-04-14 2015-10-14 百度在线网络技术(北京)有限公司 一种用于提供推荐信息的方法和装置
CN103971161B (zh) * 2014-05-09 2017-02-01 哈尔滨工程大学 基于柯西分布量子粒子群的混合推荐方法
KR101539182B1 (ko) 2014-09-29 2015-07-29 케이티하이텔 주식회사 셋톱박스의 id별 시청이력을 이용한 tv 데이터방송 홈쇼핑에서의 상품 추천 방법
US20160132601A1 (en) * 2014-11-12 2016-05-12 Microsoft Technology Licensing Hybrid Explanations In Collaborative Filter Based Recommendation System
CN106776660A (zh) 2015-11-25 2017-05-31 阿里巴巴集团控股有限公司 一种信息推荐方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101321137A (zh) * 2007-06-07 2008-12-10 音乐会技术公司 分配用户偏好设置给类型中的字段的系统和方法
US20100169328A1 (en) * 2008-12-31 2010-07-01 Strands, Inc. Systems and methods for making recommendations using model-based collaborative filtering with user communities and items collections
CN102880691A (zh) * 2012-09-19 2013-01-16 北京航空航天大学深圳研究院 一种基于用户亲密度的混合推荐系统及方法
CN103778260A (zh) * 2014-03-03 2014-05-07 哈尔滨工业大学 一种个性化微博信息推荐系统和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3382571A4 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200069352A (ko) * 2017-12-29 2020-06-16 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 융합 데이터 처리 방법 및 정보 추천 시스템
JP2021502651A (ja) * 2017-12-29 2021-01-28 オッポ広東移動通信有限公司Guangdong Oppo Mobile Telecommunications Corp., Ltd. 融合データ処理方法及び情報推薦システム
US11061966B2 (en) 2017-12-29 2021-07-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for processing fusion data and information recommendation system
KR102358604B1 (ko) * 2017-12-29 2022-02-08 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 융합 데이터 처리 방법 및 정보 추천 시스템
JP7052037B2 (ja) 2017-12-29 2022-04-11 オッポ広東移動通信有限公司 融合データ処理方法及び情報推薦システム
CN110321475A (zh) * 2019-05-22 2019-10-11 深圳壹账通智能科技有限公司 数据列表的排序方法、装置、设备及存储介质
CN112685598A (zh) * 2019-10-18 2021-04-20 腾讯科技(深圳)有限公司 直播中的礼包推送方法及装置
CN112685598B (zh) * 2019-10-18 2024-04-26 腾讯科技(深圳)有限公司 直播中的礼包推送方法及装置
CN111798167A (zh) * 2019-10-31 2020-10-20 北京沃东天骏信息技术有限公司 一种仓库补货的方法和装置
CN112633321A (zh) * 2020-11-26 2021-04-09 北京瑞友科技股份有限公司 一种人工智能推荐系统及方法

Also Published As

Publication number Publication date
EP3382571A4 (en) 2019-05-29
KR102192863B1 (ko) 2020-12-22
US11507849B2 (en) 2022-11-22
AU2016360122B2 (en) 2020-07-16
US20200134478A1 (en) 2020-04-30
US20180260716A1 (en) 2018-09-13
MY186044A (en) 2021-06-16
PH12018501121B1 (en) 2019-01-21
PH12018501121A1 (en) 2019-01-21
SG11201804365VA (en) 2018-06-28
KR20180097587A (ko) 2018-08-31
EP3382571A1 (en) 2018-10-03
CN106776660A (zh) 2017-05-31
AU2016360122A1 (en) 2018-07-12
JP6676167B2 (ja) 2020-04-08
JP2018535497A (ja) 2018-11-29

Similar Documents

Publication Publication Date Title
WO2017088688A1 (zh) 一种信息推荐方法及装置
US10552488B2 (en) Social media user recommendation system and method
US11036810B2 (en) System and method for determining quality of cited objects in search results based on the influence of citing subjects
EP2950226A1 (en) New heuristic for optimizing non-convex function for learning to rank
US20160132901A1 (en) Ranking Vendor Data Objects
US20120290551A9 (en) System And Method For Identifying Trending Targets Based On Citations
US9117250B2 (en) Methods and systems for recommending social network connections
US9043397B1 (en) Suggestions from a messaging platform
US10311072B2 (en) System and method for metadata transfer among search entities
US10380121B2 (en) System and method for query temporality analysis
US9436742B1 (en) Ranking search result documents based on user attributes
US20190295106A1 (en) Ranking Vendor Data Objects
US20240152945A1 (en) Customized Merchant Price Ratings
AU2017301075A1 (en) Optimized digital component analysis system
JP5813052B2 (ja) 情報処理装置、方法及びプログラム
US20190034474A1 (en) Resolving Inconsistencies in Information Graphs
US11237693B1 (en) Provisioning serendipitous content recommendations in a targeted content zone
US20140164136A1 (en) Broad matching algorithm for display advertisements
US11113299B2 (en) System and method for metadata transfer among search entities
US20230011804A1 (en) Customized Merchant Price Ratings
WO2023283116A1 (en) Customized merchant price ratings
EP4367623A1 (en) Customized merchant price ratings
JP2015079396A (ja) 情報処理装置、方法及びプログラム

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 11201804365V

Country of ref document: SG

Ref document number: 2018526895

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 12018501121

Country of ref document: PH

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20187017994

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2016867911

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016867911

Country of ref document: EP

Effective date: 20180625

ENP Entry into the national phase

Ref document number: 2016360122

Country of ref document: AU

Date of ref document: 20161116

Kind code of ref document: A