CN112765479A - 一种信息推荐的方法、装置、电子设备和可读存储介质 - Google Patents
一种信息推荐的方法、装置、电子设备和可读存储介质 Download PDFInfo
- Publication number
- CN112765479A CN112765479A CN202110369872.5A CN202110369872A CN112765479A CN 112765479 A CN112765479 A CN 112765479A CN 202110369872 A CN202110369872 A CN 202110369872A CN 112765479 A CN112765479 A CN 112765479A
- Authority
- CN
- China
- Prior art keywords
- application program
- gender
- user
- target
- target user
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Finance (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Accounting & Taxation (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请属于数据处理技术领域,公开了一种信息推荐的方法、装置、电子设备及可读存储介质,该方法包括,获取目标用户的应用程序操作数据;采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别;根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐,提高了信息推荐的准确度。
Description
技术领域
本申请涉及数据处理技术领域,具体而言,涉及一种信息推荐的方法、装置、电子设备和可读存储介质。
背景技术
随着互联网技术的发展,互联网在人们日常的学习、工作和生活中得到广泛的应用。人们日常的各种事务都可以通过互联网来处理和呈现。
现有技术中,服务器通常向不同用户推送相同的信息,使得用户通常会接收到大量的无用信息,给用户带来了不便。
因此,如何向用户进行精准地信息推荐,是一个需要考虑的技术问题。
发明内容
本申请实施例的目的在于提供一种信息推荐的方法、装置、电子设备和可读存储介质,用以在向用户进行信息推荐时,提高信息推荐的准确度。
一方面,提供一种信息推荐的方法,包括:
获取目标用户的应用程序操作数据;
采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别;
根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐;
其中,性别预测模型是基于梯度提升树算法构建的,用于预测用户的性别。
在上述实现过程中,提高了信息推荐的准确度。
较佳的,采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别,包括:
根据应用程序操作数据,建立目标用户的目标稠密矩阵,其中,应用程序操作数据包括目标用户操作各目标应用程序的操作信息;
将目标稠密矩阵,输入至性别预测模型,获得目标用户的预测性别。
在上述实现过程中,对数据进行了数据转换,以便模型处理。
较佳的,在获取目标用户的应用程序操作数据之前,进一步包括:
获取多个用户的训练样本数据,训练样本数据包括用户的应用程序操作数据以及性别样本信息;
根据各用户的训练样本数据,生成稠密矩阵样本;
根据稠密矩阵样本,对初始分类模型进行训练,获得训练好的性别预测模型;
其中,初始分类模型是基于梯度提升树算法构建的。
在上述实现过程中,通过样本数据进行模型训练。
较佳的,根据稠密矩阵样本和性别样本信息,对初始分类模型进行训练,获得训练好的性别预测模型,包括:
将稠密矩阵样本,输入至初始分类模型,获得各用户的预测性别;
采用损失函数,基于根据各用户的预测性别以及相应的性别样本信息,确定预测误差;
根据预测误差,对初始分类模型的参数进行初步调整,获得第一分类模型;
基于获取的各应用程序的权值,从各应用程序中筛选出多个目标应用程序,其中,权值是根据各用户的训练样本数据确定的;
基于各用户的训练样本数据中包含的各目标应用程序对应的操作信息以及性别样本信息,对第一分类模型进行训练,获得训练好的性别预测模型。
在上述实现过程中,去除干扰的应用程序。
较佳的,在将稠密矩阵样本,输入至初始分类模型,获得各用户的预测性别之前,进一步包括:
将稠密矩阵样本进行矩阵转换,获得稀疏矩阵,其中,稀疏矩阵表示稠密矩阵样本中每一非零值在稠密矩阵样本中的位置;
基于稀疏矩阵中各应用程序对应的操作信息,确定各应用程序的权值;
将稀疏矩阵进行矩阵转换,获得稠密矩阵样本。
在上述实现过程中,在预处理过程中,考虑到一些用户可能从来没有使用过某些应用程序,稠密矩阵样本中包含有很多“0”,且对最终预测的准确率没有任何提升,因此,将稠密矩阵样本转换成稀疏矩阵,通过矩阵转换,减少了耗费的存储空间和权值计算的处理时间。
较佳的,根据各应用程序的权值,从各应用程序中筛选出多个目标应用程序,包括:
按照各应用程序的权值,将各应用程序进行排序,获得排序组成的应用程序序列;
循环执行以下步骤,直至获得的应用程序序列中仅包含一个应用程序:从当前获得的应用程序序列中,删除指定数量的应用程序,并存储获得的新的应用程序序列;
分别基于存储的每一新的应用程序序列,以及稠密矩阵样本,对第一分类模型进行训练,获得训练好的第二分类模型;
基于获取的多个用户的验证样本数据,分别对每一个训练好的第二分类模型进行评估,获得相应的预测评估结果;
根据各新的应用程序序列对应的第二分类模型的预测评估结果,从各新的应用程序序列中选取一个新的应用程序序列;
将新的应用程序序列中的各应用程序,确定为目标应用程序。
在上述实现过程中,通过应用程序的权值,去除干扰的应用程序。
较佳的,根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐,包括:
获取目标用户的预测性别的各关联应用程序,各关联应用程序之间的应用关联度;
从应用程序操作数据中,筛选出目标用户的各关联应用程序的操作信息;
根据各关联应用程序的操作信息以及各关联应用程序之间的应用关联度,从目标用户的各关联应用程序中筛选出至少一个目标关联应用程序;
基于至少一个目标关联应用程序,向目标用户进行信息推荐。
在上述实现过程中,提高了信息推荐的准确度。
较佳的,在获取目标用户的预测性别的各关联应用程序,各关联应用程序之间应用关联度之前,进一步包括:
根据各用户的训练样本数据,确定每一应用程序分别与每一性别之间的用户关联度,以及各应用程序两两之间的应用关联度;
根据各应用程序和每一性别之间的用户关联度,分别确定每一性别的关联应用程序。
在上述实现过程中,确定了各属性(即应用程序以及用户性别)之间的关联度。
一方面,提供一种信息推荐的装置,包括:
获取单元,用于获取目标用户的应用程序操作数据;
预测单元,用于采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别;
推荐单元,用于根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐;
其中,性别预测模型是基于梯度提升树算法构建的,用于预测用户的性别。
较佳的,预测单元用于:
根据应用程序操作数据,建立目标用户的目标稠密矩阵,其中,应用程序操作数据包括目标用户操作各目标应用程序的操作信息;
将目标稠密矩阵,输入至性别预测模型,获得目标用户的预测性别。
较佳的,获取单元还用于:
获取多个用户的训练样本数据,训练样本数据包括用户的应用程序操作数据以及性别样本信息;
根据各用户的训练样本数据,生成稠密矩阵样本;
根据稠密矩阵样本,对初始分类模型进行训练,获得训练好的性别预测模型;
其中,初始分类模型是基于梯度提升树算法构建的。
较佳的,获取单元还用于:
将稠密矩阵样本,输入至初始分类模型,获得各用户的预测性别;
采用损失函数,基于根据各用户的预测性别以及相应的性别样本信息,确定预测误差;
根据预测误差,对初始分类模型的参数进行初步调整,获得第一分类模型;
基于获取的各应用程序的权值,从各应用程序中筛选出多个目标应用程序,其中,权值是根据各用户的训练样本数据确定的;
基于各用户的训练样本数据中包含的各目标应用程序对应的操作信息以及性别样本信息,对第一分类模型进行训练,获得训练好的性别预测模型。
较佳的,获取单元还用于:
将稠密矩阵样本进行矩阵转换,获得稀疏矩阵,其中,稀疏矩阵表示稠密矩阵样本中每一非零值在稠密矩阵样本中的位置;
基于稀疏矩阵中各应用程序对应的操作信息,确定各应用程序的权值;
将稀疏矩阵进行矩阵转换,获得稠密矩阵样本。
较佳的,获取单元还用于:
按照各应用程序的权值,将各应用程序进行排序,获得排序组成的应用程序序列;
循环执行以下步骤,直至获得的应用程序序列中仅包含一个应用程序:从当前获得的应用程序序列中,删除指定数量的应用程序,并存储获得的新的应用程序序列;
分别基于存储的每一新的应用程序序列,以及稠密矩阵样本,对第一分类模型进行训练,获得训练好的第二分类模型;
基于获取的多个用户的验证样本数据,分别对每一个训练好的第二分类模型进行评估,获得相应的预测评估结果;
根据各新的应用程序序列对应的第二分类模型的预测评估结果,从各新的应用程序序列中选取一个新的应用程序序列;
将新的应用程序序列中的各应用程序,确定为目标应用程序。
较佳的,推荐单元用于:
获取目标用户的预测性别的各关联应用程序,各关联应用程序之间的应用关联度;
从应用程序操作数据中,筛选出目标用户的各关联应用程序的操作信息;
根据各关联应用程序的操作信息以及各关联应用程序之间的应用关联度,从目标用户的各关联应用程序中筛选出至少一个目标关联应用程序;
基于至少一个目标关联应用程序,向目标用户进行信息推荐。
较佳的,推荐单元还用于:
根据各用户的训练样本数据,确定每一应用程序分别与每一性别之间的用户关联度,以及各应用程序两两之间的应用关联度;
根据各应用程序和每一性别之间的用户关联度,分别确定每一性别的关联应用程序。
一方面,提供了一种电子设备,包括处理器以及存储器,存储器存储有计算机可读取指令,当计算机可读取指令由处理器执行时,运行如上述任一种信息推荐的各种可选实现方式中提供的方法的步骤。
一方面,提供了一种可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时运行如上述任一种信息推荐的各种可选实现方式中提供的方法的步骤。
本申请实施例提供的一种信息推荐的方法、装置、电子设备和可读存储介质中,获取目标用户的应用程序操作数据;采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别;根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐,提高了信息推荐的准确度。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种应用场景示意图;
图2为本申请实施例提供的一种数据预处理的方法的实施流程图;
图3为本申请实施例提供的一种模型训练的方法的流程图;
图4为本申请实施例提供的一种目标应用程序信息示意图;
图5为本申请实施例提供的一种APP id示意图;
图6为本申请实施例提供的一种训练过程示意图;
图7为本申请实施例提供的一种信息推荐的方法的实施流程图;
图8为本申请实施例提供的一种关联度矩阵示例图;
图9为本申请实施例提供的一种信息推荐的方法的架构流程示意图;
图10为本申请实施例提供的一种预测性别对照图;
图11为本申请实施例提供的一种ROC曲线图;
图12为本申请实施例提供的一种学习曲线示例图;
图13为本申请实施例提供的一种信息推荐的装置的结构框图;
图14为本申请实施方式中一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
首先对本申请实施例中涉及的部分用语进行说明,以便于本领域技术人员理解。
终端设备:可以是移动终端、固定终端或便携式终端,例如移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统设备、个人导航设备、个人数字助理、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。还可预见到的是,终端设备能够支持任意类型的针对用户的接口(例如可穿戴设备)等。
服务器:可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务以及大数据和人工智能平台等基础云计算服务的云服务器。
coo矩阵(coo_matrix):是一种稀疏矩阵,不会存储数据中的0,而是将数据中不为0的项以[行,列,值]的形式进行存储,处理包含0较多的数据时,可以将数据先转换成coo矩阵,这样会节省很大的资源开销。
决策树:是一种常见的机器学习方法,基于树结构进行决策,一棵决策树一般包含一个根节点、若干个内部节点和若干个叶节点;叶节点对应于决策结果,其他每个节点则对应于一个属性测试;每个节点包含的样本集合根据属性测试的结果被划分到子节点中;根节点包含样本全集。从根节点到每个叶节点的路径对应了一个判定测试序列,决策树学习的目的是为了产生一棵泛化性能强,及处理未见示例能力强的决策树。
集成学习:通过构建并结合多个学习器来完成学习任务。集成学习一般先产生一组“个体学习器”,再用某种策略将他们结合起来。个体学习器一般由一个现有的学习算法从训练数据产生。集成学习通过将多个学习器进行结合,长可获得比单一学习器显著优越的泛化性能。
提升方法(Boosting)框架:是一族可将弱学习器提升为强学习器的算法。这族算法的工作机制类似:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至学习器数目达到事先指定的值,最后将各基学习器进行加权结合。这一族算法中个体学习器间存在着强依赖关系,通常串行生成。
梯度提升树(Gradient Boosting Decison Tree,GBDT)算法:是由多个回归树作为基学习器的一种Boosting集成学习算法。GBDT采用多棵决策树串行建模。具体过程为,对于第一棵树之后的每一棵决策树,都基于前一棵决策树的输出进行二次建模,整个串行建模过程相当于对预测结果朝目标值进行修正。这个算法在泛化能力和准确性方面都有比较好的表现。
为了在向用户进行信息推荐时,提高信息推荐的准确度,本申请实施例提供了一种信息推荐的方法、装置、电子设备和可读存储介质。
参阅图1所示,为本申请实施例提供的一种应用场景示意图。包括电子设备101和多个用户终端102。其中,电子设备101可以为服务器,也可以为终端设备。用户终端102可以为终端设备。电子设备101和用户终端102之间可以有线连接,也可以无线连接。用户终端102中安装有多个应用程序。当用户操作用户终端102中的应用程序时,应用程序将用户的操作信息上传至电子设备101。
电子设备101用于获取的各用户的原始样本数据,并通过对原始样本数据进行预处理,获得稠密矩阵样本,还用于通过稠密矩阵样本进行模型训练,获得训练好的性别预测模型,还用于通过性别预测模型,获得目标用户的预测性别,并通过用户的预测性别,向目标用户的用户终端102发送推荐信息。
可选的,推荐信息可以为应用程序,也可以为商品等推销网页,还可以为新闻网页等。
具体的,数据预处理时,电子设备101可以采用以下步骤:获取原始样本数据,并对原始样本数据中的文本型变量进行数值化处理,获得训练样本数据;根据各用户的训练样本数据,生成稠密矩阵样本;将稠密矩阵样本进行矩阵转换,获得稀疏矩阵;基于稀疏矩阵中各应用程序对应的操作信息,确定各应用程序的权值;将稀疏矩阵进行矩阵转换,获得稠密矩阵样本。
具体的,模型训练时,电子设备101可以采用以下步骤:根据稠密矩阵样本以及各应用程序的权值,对初始分类模型进行训练,获得训练好的性别预测模型。
具体的,信息推荐时,电子设备101可以采用以下步骤:获取目标用户的应用程序操作数据;采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别;根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐。
本申请实施例中,执行主体可以为电子设备,在进行信息推荐以及模型训练之前,先对原始样本数据进行数据预处理,参阅图2所示,为本申请实施例提供的一种数据预处理的方法的实施流程图。
步骤200:获取多个用户的训练样本数据。
具体的,获取原始样本数据,并对原始样本数据中的文本型变量进行数值化处理,获得训练样本数据。
其中,原始样本数据包括用户操作各应用程序的操作信息以及用户的性别样本信息,例如,原始样本数据包括用户标识信息、应用程序的名称、用户针对各应用程序的操作信息以及用户的性别。训练样本数据包括用户操作各应用程序的操作信息和性别样本信息。例如,训练样本数据包括用户标识信息、应用程序的程序标识信息、用户针对各应用程序的操作信息以及用户的性别。
其中,性别样本信息表示用户的性别,包括男性和女性。本申请实施例中,以将男性作为正样本,女性作为负样本为例进行说明,实际应用中,男性也可以作为负样本,女性也可以作为正样本,在此不作限制。
可选的,操作信息可以为用户在指定时间段内使用应用程序的次数、者时长或者使用时间等。用户标识信息用于标识不同的用户,可以为用户编号以及应用账号信息等,程序标识信息用于标识不同的应用程序,可以为应用程序的编号等。
实际应用中,指定时间段、操作信息、用户标识信息以及程序标识信息均可以根据实际应用场景进行设置,例如,指定时间段可以为1年,在此不作限制。
将APP以及用户针对APP的操作信息作为自变量,并将用户性别作为因变量。其中,APP名称为文本变量,操作信息为连续变量,用户性别为定性变量,包括男性和女性,可选的,可以采用1表示男性,采用0表示女性,参阅表1所示,为一种参数示例表。例如,APP的数量为3154,用户的数量为3579。操作信息为用户在一年内使用APP的操作次数,单位为次,取值范围为1~1544475,则用户一个APP的操作次数越大,表示用户使用该APP的次数越多。
表1
参阅表2所示,为一种原始样本数据示例表。表2中的每一行信息对应一个样本信息,即一个用户的性别以及该用户在一年内(指定时间段)使用的一个应用程序的次数。表2中,id为用户的身份标识(Identification,ID)信息,用于标识不同的用户。app为应用程序(Application,APP)的名称。frep表示用户在一年内使用的应用程序的次数。label表示用户的性别,其中,1表示男性,0表示女性。
表2
参阅表3所示,为一种原始样本数据转换示例表。由于表2中每一行中仅记录了一个用户针对一个应用程序的操作信息以及用户性别,因此,为便于后续的数据处理,将表2的结构进行了转换,获得表3。表3中每一行的信息表示一个用户针对各应用程序的操作信息以及该用户的性别。
表3
由于应用程序的名称为文本型变量,而在分类任务中直接对文本型变量进行操作是比较麻烦的,因此,本申请实施例中,将应用程序的名称进行数值化处理,即分别针对每一应用程序的名称,设置相应的程序标识信息,并可以采用txt文件等方式存储应用程序的名称与程序标识信息之间的对应关系。
参阅表4所示,为一种应用程序名称与程序标识信息的映射关系示意表。表4中,包括各app name(即应用程序名称)以及相应的app id(即程序标识信息)。
表4
参阅表5所示,为一种训练样本数据的示意表。表5中每一行的信息表示一个用户针对各应用程序的操作信息以及该用户的性别。其中,通过程序标识信息表示应用程序。
表5
进一步的,还可以将原始样本数据中的文本型变量进行数值化处理后,将处理后的原始样本数据中的一部分作为训练样本数据,其余部分作为验证样本数据。从而在后续的步骤中,通过训练样本数据进行模型训练,并通过验证样本数据,对训练好的模型进行评估。
例如,将将处理后的原始样本数据中四分之三的数据作为训练样本数据,其余部分作为验证样本数据。
一种实施方式中,采用随机数种子(random_state),从处理后的原始样本数据中选取验证样本数据。
步骤201:根据各用户的训练样本数据,生成稠密矩阵样本。
具体的,根据各用户的训练样本数据,可以生成n行m列的稠密矩阵样本。
其中,稠密矩阵样本中的元素可以采用Aij表示,i、j、n和m均为自然数。
稠密矩阵样本中第0列中的各元素Ai0表示各用户i的用户标识信息,最后一列元素Ai(m-1)表示用户i的性别,第0行中其它各元素即A01…A0j…A0(m-2),表示各应用程序j的程序标识信息。剩余元素表示用户i操作应用程序j的操作信息。
步骤202:将稠密矩阵样本进行矩阵转换,获得稀疏矩阵。
具体的,分别获取稠密矩阵样本中每一不为零的操作信息,在稠密矩阵样本中的位置,即行列值(i,j)。
其中,稀疏矩阵将稠密矩阵样本中每一不为零的操作信息以[行,列,值]的形式进行存储,即[i,j,Aij],表示稠密矩阵样本中每一非零值在稠密矩阵样本中的位置。
例如,将一个三行散列的稠密矩阵样本转换为稀疏矩阵时,稠密矩阵样本中的非零值为1和5,1是第0行第2列,5是第1行第0列,则转换过程如下:
由于应用程序的数量通常较多,因此,生成的相应稠密矩阵样本是一个很大的矩阵(如,列数m为3156),而矩阵较大时,会耗费大量的存储空间以及数据处理时间。本申请实施例中,考虑到一些用户可能从来没有使用过某些app,稠密矩阵样本中包含有很多“0”,且对最终预测的准确率没有任何提升,因此,将稠密矩阵样本转换成稀疏矩阵。
可选的,稀疏矩阵可以为coo矩阵。
其中,coo矩阵,是一种稀疏矩阵,不会存储数据中的0,而是将数据中不为0的项以[行,列,值]的形式进行存储,处理包含0较多的数据时,可以将数据先转换成coo矩阵,这样会节省很大的资源开销。
例如,一个稀疏矩阵为:
这样,将稠密矩阵样本转换的结构进行转换,获得便于机器学习处理的稀疏矩阵,从而通过稀疏矩阵进行数据存储,以及后续的数据处理,减少了占用的存储空间,还可以极大地提升数据处理效率。
步骤203:基于稀疏矩阵中各应用程序对应的操作信息,确定各应用程序的权值。
具体的,各应用程序的权值可以采用以下方式中的任意一种或任意组合:
人工设置,操作信息占比、熵权法、标准离差法以及客观权重赋权法(CriteriaImportance Though Intercrieria Correlation,CRITIC)。
其中,人工设置是指按照经验设置各应用程序的权值。
其中,操作信息占比即一个应用程序的操作信息与各应用程序的操作信息的总和之间的比值。
例如,假设操作信息为用户在一年内使用应用程序的频率,则计算各用户使用各应用程序的次数的第一加和,以及各用户使用一个应用程序的次数的第二加和,并将第二加和与第一加和之间的比值,作为该应用程序的操作信息占比即权值。
实际应用中,也可以采用其它方式确定权值,在此不作限制。
一种实施方式中,可以采用一种编程语言(Python)的一个库(sklearn),确定各应用程序的权值,又由于sklearn库对coo矩阵的处理能力不足,因此,先将coo矩阵转换为csr矩阵,然后,采用sklearn库对csr矩阵进行数据处理,获得各应用程序的权值。
其中,csr矩阵与coo矩阵的结构相似,占用的存储空间以及耗费的时间均较少。
这样,就可以确定各应用程序的权值。
步骤204:将稀疏矩阵进行矩阵转换,获得稠密矩阵样本。
具体的,将稀疏矩阵转换为稠密矩阵样本时,仅需要将空缺的位置填充0即可,耗费的处理资源和时间均较少。
一种实施方式中,将csr矩阵进行矩阵转换,获得稠密矩阵样本。
这样,就可以将获取的原始样本数据进行预处理,获得相应的稠密矩阵样本,以及各应用程序的权值。
本申请实施例中,在获得稠密矩阵样本后,基于梯度提升树算法构建初始分类模型,根据稠密矩阵样本,对初始分类模型进行训练,获得训练好的性别预测模型。参阅图3所示,为本申请实施例提供的一种模型训练的方法的流程图,该方法的具体实施流程如下:
步骤300:将稠密矩阵样本,输入至初始分类模型,获得各用户的预测性别。
具体的,初始分类模型是基于梯度提升树算法构建的。梯度提升树算法是基于集成学习、任意基学习器算法以及损失函数构建的。
可选的,集成学习可以采用Boosting框架,基学习器算法可以采用决策树,损失函数可以采用指数损失函数。实际应用中,梯度提升树算法也可以采用其它方式构建,在此不作限制。
其中,决策树是一种常见的机器学习方法,基于树结构进行决策,一棵决策树一般包含一个根节点、若干个内部节点和若干个叶节点;叶节点对应于决策结果,其他每个节点则对应于一个属性测试;每个节点包含的样本集合根据属性测试的结果被划分到子节点中;根节点包含样本全集。从根节点到每个叶节点的路径对应了一个判定测试序列,决策树学习的目的是为了产生一棵泛化性能强,及处理未见示例能力强的决策树。
集成学习通过构建并结合多个学习器来完成学习任务。集成学习一般先产生一组“个体学习器”,再用某种策略将他们结合起来。个体学习器一般由一个现有的学习算法从训练数据产生。集成学习通过将多个学习器进行结合,长可获得比单一学习器显著优越的泛化性能。
Boosting框架是一族可将弱学习器提升为强学习器的算法。这族算法的工作机制类似:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至学习器数目达到事先指定的值,最后将各基学习器进行加权结合。这一族算法中个体学习器间存在着强依赖关系,通常串行生成。
GBDT算法是由多个回归树作为基学习器的一种Boosting集成学习算法。GBDT采用多棵决策树串行建模。具体过程为,对于第一棵树之后的每一棵决策树,都基于前一棵决策树的输出进行二次建模,整个串行建模过程相当于对预测结果朝目标值进行修正。
步骤301:采用损失函数,基于根据各用户的预测性别以及相应的性别样本信息,确定预测误差。
步骤302:根据预测误差,对初始分类模型的参数进行初步调整,获得第一分类模型。
这样,就可以先采用用户针对各应用程序的所有操作信息对初始分类模型进行初始化,获得初始化后的第一分类模型。
步骤303:基于获取的各应用程序的权值,从各应用程序中筛选出多个目标应用程序。
具体的,执行步骤303时,具体可以采用以下步骤:
S3031:按照各应用程序的权值,将各应用程序进行排序,获得排序组成的应用程序序列。
具体的,按照各应用程序的权值由高到低或由低到高的顺序,将各应用程序进行排序,并基于排序后的各应用程序,生成相应的应用程序序列。
需要说明的是,应用程序的序列中的各应用程序是按照上述排序排列的。
S3032:循环执行以下步骤,直至获得的应用程序序列中仅包含一个应用程序:从当前获得的应用程序序列中,删除指定数量的应用程序,并存储获得的新的应用程序序列。
具体的,执行S3032时,循环执行以下步骤:
步骤a:从当前获得的应用程序序列中,删除指定数量的应用程序,获得一个新的应用程序序列。
具体的,从当前获得的应用程序序列的指定端,删除指定数量的应用程序,获得一个新的应用程序序列。
实际应用中,指定数量可以根据实际应用场景进行设置,例如,指定数量可以为1,在此不作限制。指定端为权值低的一端。
例如,假设应用程序序列中的各应用程序是按照权值由高到低的顺序排序的,因此,末端的应用程序的权值为较低的一端,则从当前获得的应用程序序列的末端,删除一个应用程序,获得一个新的应用程序序列。
由于应用程序的数量可能较多,因此,指定数量可以为多个。
步骤b:存储获得的新的应用程序序列。
这样,每次删除应用程序时,均可以获得一个应用程序序列。
步骤c:判断当前获得的新的应用程序序列中包含的应用程序的数量是否为一个,若是,则停止应用程序的删除流程,否则,执行步骤a。
S3033:分别基于存储的每一新的应用程序序列,以及稠密矩阵样本,对第一分类模型进行训练,获得训练好的第二分类模型。
具体的,分别针对每一新的应用程序序列,执行以下步骤:
根据新的应用程序序列中的各应用程序,对稠密矩阵样本中的数据进行调整,获得调整后的稠密矩阵样本,并通过调整后的稠密矩阵样本,对第一分类模型进行训练,获得训练好的第二分类模型。
其中,对稠密矩阵样本中的数据进行调整时,可以采用以下步骤:
从稠密矩阵样本中去除新的应用程序序列中未包含的各应用程序对应的操作信息,获得调整后的稠密矩阵样本。
其中,与获得第一分类模型的相似原理,获得第二分类模型,在此不做赘述。
S3034:基于获取的多个用户的验证样本数据,分别对每一个训练好的第二分类模型进行评估,获得相应的预测评估结果。
具体的,获取多个用户的验证样本数据,分别针对每一训练好的第二分类模型,执行以下步骤:
步骤a:通过各验证样本数据中的用户操作各应用程序的操作信息,生成验证稠密矩阵。
其中,验证样本数据用于对训练好的模型进行评估。验证样本数据包括用户操作各应用程序的操作信息以及用户的性别样本信息。
一种实施方式中,对任意训练好的模型,均采用同一验证样本数据进行验证,保证了结果的一致性。
步骤b:将验证稠密矩阵输入至训练号的第二分类模型,获得各用户的预测性别。
步骤c:采用损失函数,基于各用户的预测性别和性别样本信息,获得损失值。
步骤d:根据损失值,对第二分类模型进行评估,获得相应的预测评估结果。
进一步的,还可以通过损失值、耗费的预测时间以及拟合程度中的任意一种或任意组合,获得相应的预测评估结果。
一种实施方式中,获取损失值、耗费的预测时间以及拟合程度对应的权重,将损失值、耗费的预测时间以及拟合程度与相应权重进行加权求和,获得相应的评分,作为预测评估结果。
S3035:根据各新的应用程序序列对应的第二分类模型的预测评估结果,从各新的应用程序序列中选取一个新的应用程序序列。
一种实施方式中,选取损失值最小的第二分类模型对应的新的应用程序序列。
一种实施方式中,筛选出符合预设损失范围的损失值对应的第二分类模型,若筛选出多个第二分类模型,则从筛选出的各第二分类模型中,选取预测时间最小的第二分类模型对应的新的应用程序序列。
实际应用中,预设损失范围可以根据实际应用场景进行设置,如,低于0.1,在此不作限制。
一种实施方式中,根据各第二分类模型的评分,选择一个第二分类模型对应的新的应用程序序列。
S3036:将确定出的新的应用程序序列中的各应用程序,确定为目标应用程序。
进一步的,将目标应用程序的权值、目标应用程序的名称以及目标应用程序的程序标识信息三者关联存储。
例如,将目标应用程序的权值、目标应用程序的名称以及目标应用程序的程序标识信息三者关联存储在gender_importance.txt文件中。
参阅图4所示,为本申请实施例提供的一种目标应用程序信息示意图。图4中展示了多个目标应用程序的id、权值以及名称。
步骤304:基于各用户的训练样本数据中包含的各目标应用程序对应的操作信息以及性别样本信息,对第一分类模型进行训练,获得训练好的性别预测模型。
进一步的,由于在上述步骤303中已经基于各用户的训练样本数据中包含的各目标应用程序对应的操作信息以及性别样本信息,对第一分类模型进行训练,获得了相应的第二分类模型,因此,也可以直接将确定出的新的应用程序序列对应的第二分类模型,确定为性别预测模型。
由于一部分app比较小众,下载的人很少,但在训练的过程中还是会考虑到这些小众的app,造成准确率的下降,因此,在机器学习中并不是应用程序的数量越多越好,如果用全部的应用程序进行训练,不但会耗费相当大量的资源,还会因为应用程序的数量过多出现过拟合的现象。由此,本申请实施例中,通过各应用程序的权值,对各应用程序进行筛选,获得多个目标应用程序,从而可以将使用频率较小、会对最后结果造成扰乱的应用程序去除,通过对性别判定影响较大的目标应用程序进行训练。
参阅图5所示,为本申请实施例提供的一种APP id示意图。假设筛选出了80个目标应用程序,图5中为筛选出的各目标应用程序的id。
参阅图6所示,为本申请实施例提供的一种训练过程示意图。图6为采用图5所示的各目标应用程序,进行多轮模型训练后,每一轮模型训练的训练轮数、损失值、拟合程度以及训练用时。可见,随着训练次数的增多,损失值越来越小,拟合程度越来越小,以训练用时越来越小。
在获得训练好的性别预测模型之后,就可以通过性别预测模型预测用户的性别,进而根据用户的性别向用户进行信息推荐。
参阅图7所示,为本申请实施例提供的一种信息推荐的方法的实施流程图,该方法的具体实施流程如下:
步骤700:获取目标用户的应用程序操作数据。
具体的,应用程序操作数据包括目标用户操作各目标应用程序的操作信息。
步骤701:采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别。
具体的,执行步骤701时,可以采用以下步骤:
S7011:根据应用程序操作数据,建立目标用户的目标稠密矩阵。
其中,应用程序操作数据包括目标用户操作各目标应用程序的操作信息。
S7012:将目标稠密矩阵,输入至性别预测模型,获得目标用户的预测性别。
其中,性别预测模型是基于梯度提升树算法构建的,用于预测用户的性别。
步骤702:根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐。
具体的,执行步骤702时,可以采用以下步骤:
S7021:获取目标用户的预测性别的各关联应用程序,各关联应用程序之间的应用关联度。
具体的,在执行S7021之前,预先设置每一性别的关联应用程序。
一种实施方式中,确定每一性别的关联应用程序以及各关联应用程序之间的应用关联度时,可以采用以下步骤:
步骤a:根据各用户的训练样本数据,确定每一应用程序分别与每一性别之间的用户关联度,以及各应用程序两两之间的应用关联度。
一种实施方式中,操作信息为应用程序的使用频率,分别针对每一应用程序执行以下步骤:
根据所有女性用户使用一个应用程序的使用频率的加和,确定女性用户与该应用程序之间的用户关联度。
根据所有男性用户使用一个应用程序的使用频率的加和,确定男性用户与该应用程序之间的用户关联度。
其中,上述加和越大,两者的用户关联度就越大。
一种实施方式中,操作信息为应用程序的操作时间,分别针对每两个应用程序执行以下步骤:
根据两个应用程序的操作时间之间的时间间隔,确定该两个应用程序之间的应用关联度。
其中,时间间隔越小,则两者的应用关联度越大。
参阅图8所示,为本申请实施例提供的一种关联度矩阵示例图。以软件1……软件5以及性别等属性为例对不同应用程序之间的应用关联度,以及性别与应用程序之间的关联度进行说明。从图8中可知,数值越大,说明两个属性之间的关联度就越强,反之,数据越小,则说明两个属性之间的关联度越弱。实际应用场景中,矩阵数值为负,则与女性的关联性较强,否则,与男性的关联性较强。
步骤b:根据各应用程序和每一性别之间的用户关联度,分别确定每一性别的关联应用程序。
一种实施方式中,分别分别针对每一性别,执行以下步骤:
在各应用程序中,筛选出于一个性别之间的用户关联度高于预设关联度阈值的应用程序,作为该性别的关联应用程序。
实际应用中,预设关联度阈值可以根据实际应用场景进行设置,如,0.8,在此不作限制。
S7022:从所应用程序操作数据中,筛选出目标用户的各关联应用程序的操作信息。
S7023:根据各关联应用程序的操作信息以及各关联应用程序之间的第二关联度,从目标用户的各关联应用程序中筛选出至少一个目标关联应用程序。
一种实施方式中,根据关联应用程序的操作信息,将各关联应用程序进行排序,并筛选出第一指定应用数量的目标关联应用程序,并将各关联应用程序中,与目标关联应用程序之间的第二关联度最高的第二指定应用数量的关联应用程序,也作为目标关联应用程序。
实际应用中,第一指定应用数量和第二指定应用数量均可以根据实际应用场景进行设置,如,均为1,在此不作限制。
S7024:基于确定出的至少一个目标关联应用程序,向目标用户进行信息推荐。
一种实施方式中,通过确定出的目标关联应用程序,向目标用户推送该目标关联应用程序的业务信息。
一种实施方式中,获取确定出的目标关联应用程序的历史浏览信息,并向目标用户推送历史浏览信息的关联信息。
参阅图9所示,为本申请实施例提供的一种信息推荐的方法的架构流程示意图。信息推荐方法包括模型训练过程以及信息推荐过程。模型训练过程中,服务器从数据源中获得原始样本数据,并对原始样本数据进行分析,获得训练样本数据,以及通过训练样本数据进行模型训练,获得训练好的性别预测模型。信息推荐过程中,服务器从数据源中获取目标用户的应用程序操作数据,并对应用程序进行数据清洗和数据转换,以及将转换后的应用程序操作数据输入值性别预测模型,获得预测性别,并根据预测性别,向目标用户进行信息推荐。进一步地,服务器还根据目标用户的实际性别以及信息推荐的反馈结果,对性别预测模型进行进一步优化训练。
其中,数据清洗是指对应用程序操作数据的缺失值以及异常值进行清洗。
例如,参阅图10所示,为本申请实施例提供的一种预测性别对照图。图10中,第一列为用户id、第二列为实际用户性别,第三列为预测概率。若预测概率高于0.5,则预测性别为男性,否则为女性。若用户的预测性别和实际性别相同,则说明预测正确,否则,预测错误。
实际应用中,可以采用受试者工作特征曲线 (receiver operatingcharacteristic curve,ROC),对训练的模型进行评估。
例如,参阅图11所示,为本申请实施例提供的一种ROC曲线图。其中,伪阳性率为 X轴,真阳性率定义为 Y 轴。图11中,通过ROC曲线可知模型训练效果较好,曲线下面积(AreaUnder Curve,AUC)=0.90,曲线也较为平滑,说明我们此次训练的效果较为稳定。
其中,真阳性率=(真阳性的数量)/(真阳性的数量+伪阴性的数量)伪阳性率=(伪阳性的数量)/(伪阳性的数量+真阴性的数量)。真阳性是指预测性别为男性且预测正确,伪阴性是指预测性别为女性且预测错误,伪阳性预测性别为男性且预测错误,真阴性是指预测性别为女性且预测正确。
可选的,本申请实施例中,图片可以采用Python的matplotlib和seaborn两个图库绘制,在此不作限制。
参阅图12所示,为本申请实施例提供的一种学习曲线示例图。横坐标为用户数量,纵坐标为分数。第一曲线表示训练得分,训练得分是根据损失值确定的。训练得分越低,表示训练效果越好。第二曲线表示验证得分,验证得分是根据预测评估结果确定的。验证得分越高,则表示预测效果越好。由于充足的训练数据可以降低过拟合风险,也就意味着更好的预测效果。因此,为了考察用户数是否充足,绘制了图12所示的学习曲线。通过图12可以看出在训练用户超过2500个时,验证的准确率就不再有明显提升,说明数据量是比较充分的。
基于同一发明构思,本申请实施例中还提供了一种信息推荐的装置,由于上述装置及设备解决问题的原理与一种信息推荐的方法相似,因此,上述装置的实施可以参见方法的实施,重复之处不再赘述。
如图13所示,其为本申请实施例提供的一种信息推荐的装置的结构示意图,包括:
获取单元1301,用于获取目标用户的应用程序操作数据;
预测单元1302,用于采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别;
推荐单元1303,用于根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐;
其中,性别预测模型是基于梯度提升树算法构建的,用于预测用户的性别。
较佳的,预测单元1302用于:
根据应用程序操作数据,建立目标用户的目标稠密矩阵,其中,应用程序操作数据包括目标用户操作各目标应用程序的操作信息。
将目标稠密矩阵,输入至性别预测模型,获得目标用户的预测性别。
较佳的,获取单元1301还用于:
获取多个用户的训练样本数据,训练样本数据包括用户的应用程序操作数据以及性别样本信息;
根据各用户的训练样本数据,生成稠密矩阵样本;
根据稠密矩阵样本,对初始分类模型进行训练,获得训练好的性别预测模型;
其中,初始分类模型是基于梯度提升树算法构建的。
较佳的,获取单元1301还用于:
将稠密矩阵样本,输入至初始分类模型,获得各用户的预测性别;
采用损失函数,基于根据各用户的预测性别以及相应的性别样本信息,确定预测误差;
根据预测误差,对初始分类模型的参数进行初步调整,获得第一分类模型;
基于获取的各应用程序的权值,从各应用程序中筛选出多个目标应用程序,其中,权值是根据各用户的训练样本数据确定的;
基于各用户的训练样本数据中包含的各目标应用程序对应的操作信息以及性别样本信息,对第一分类模型进行训练,获得训练好的性别预测模型。
较佳的,获取单元1301还用于:
将稠密矩阵样本进行矩阵转换,获得稀疏矩阵,其中,稀疏矩阵表示稠密矩阵样本中每一非零值在稠密矩阵样本中的位置;
基于稀疏矩阵中各应用程序对应的操作信息,确定各应用程序的权值;
将稀疏矩阵进行矩阵转换,获得稠密矩阵样本。
较佳的,获取单元1301还用于:
按照各应用程序的权值,将各应用程序进行排序,获得排序组成的应用程序序列;
循环执行以下步骤,直至获得的应用程序序列中仅包含一个应用程序:从当前获得的应用程序序列中,删除指定数量的应用程序,并存储获得的新的应用程序序列;
分别基于存储的每一新的应用程序序列,以及稠密矩阵样本,对第一分类模型进行训练,获得训练好的第二分类模型;
基于获取的多个用户的验证样本数据,分别对每一个训练好的第二分类模型进行评估,获得相应的预测评估结果;
根据各新的应用程序序列对应的第二分类模型的预测评估结果,从各新的应用程序序列中选取一个新的应用程序序列;
将新的应用程序序列中的各应用程序,确定为目标应用程序。
较佳的,推荐单元1301用于:
获取目标用户的预测性别的各关联应用程序,各关联应用程序之间的应用关联度;
从应用程序操作数据中,筛选出目标用户的各关联应用程序的操作信息;
根据各关联应用程序的操作信息以及各关联应用程序之间的应用关联度,从目标用户的各关联应用程序中筛选出至少一个目标关联应用程序;
基于至少一个目标关联应用程序,向目标用户进行信息推荐。
较佳的,推荐单元1303还用于:
根据各用户的训练样本数据,确定每一应用程序分别与每一性别之间的用户关联度,以及各应用程序两两之间的应用关联度;
根据各应用程序和每一性别之间的用户关联度,分别确定每一性别的关联应用程序。
本申请实施例提供的一种信息推荐的方法、装置、电子设备和可读存储介质中,获取目标用户的应用程序操作数据;采用训练好的性别预测模型,基于应用程序操作数据,对目标用户的性别进行预测,获得目标用户的预测性别;根据目标用户的预测性别以及应用程序操作数据,向目标用户进行信息推荐,提高了信息推荐的准确度。
图14示出了一种电子设备1400的结构示意图。参阅图14所示,电子设备1400包括:处理器1410、存储器1420、电源1430、显示单元1440、输入单元1450。
处理器1410是电子设备1400的控制中心,利用各种接口和线路连接各个部件,通过运行或执行存储在存储器1420内的软件程序和/或数据,执行电子设备1400的各种功能,从而对电子设备1400进行整体监控。
本申请实施例中,处理器1410调用存储器1420中存储的计算机程序时执行如图7中所示的实施例提供的信息推荐的方法。
可选的,处理器1410可包括一个或多个处理单元;优选的,处理器1410可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1410中。在一些实施例中,处理器、存储器、可以在单一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
存储器1420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、各种应用等;存储数据区可存储根据电子设备1400的使用所创建的数据等。此外,存储器1420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件等。
电子设备1400还包括给各个部件供电的电源1430(比如电池),电源可以通过电源管理系统与处理器1410逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗等功能。
显示单元1440可用于显示由用户输入的信息或提供给用户的信息以及电子设备1400的各种菜单等,本发明实施例中主要用于显示电子设备1400中各应用的显示界面以及显示界面中显示的文本、图片等对象。显示单元1440可以包括显示面板1441。显示面板1441可以采用液晶显示屏(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置。
输入单元1450可用于接收用户输入的数字或字符等信息。输入单元1450可包括触控面板1451以及其他输入设备1452。其中,触控面板1451,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触摸笔等任何适合的物体或附件在触控面板1451上或在触控面板1451附近的操作)。
具体的,触控面板1451可以检测用户的触摸操作,并检测触摸操作带来的信号,将这些信号转换成触点坐标,发送给处理器1410,并接收处理器1410发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1451。其他输入设备1452可以包括但不限于物理键盘、功能键(比如音量控制按键、开关机按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
当然,触控面板1451可覆盖显示面板1441,当触控面板1451检测到在其上或附近的触摸操作后,传送给处理器1410以确定触摸事件的类型,随后处理器1410根据触摸事件的类型在显示面板1441上提供相应的视觉输出。虽然在图14中,触控面板1451与显示面板1441是作为两个独立的部件来实现电子设备1400的输入和输出功能,但是在某些实施例中,可以将触控面板1451与显示面板1441集成而实现电子设备1400的输入和输出功能。
电子设备1400还可包括一个或多个传感器,例如压力传感器、重力加速度传感器、接近光传感器等。当然,根据具体应用中的需要,上述电子设备1400还可以包括摄像头等其它部件,由于这些部件不是本申请实施例中重点使用的部件,因此,在图14中没有示出,且不再详述。
本领域技术人员可以理解,图14仅仅是电子设备的举例,并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
本申请实施例中,一种可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使得通信设备可以执行上述实施例中的各个步骤。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本申请时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (18)
1.一种信息推荐的方法,其特征在于,包括:
获取目标用户的应用程序操作数据;
采用训练好的性别预测模型,基于所述应用程序操作数据,对所述目标用户的性别进行预测,获得所述目标用户的预测性别;
根据所述目标用户的预测性别以及所述应用程序操作数据,向所述目标用户进行信息推荐;
其中,所述性别预测模型是基于梯度提升树算法构建的,用于预测用户的性别。
2.如权利要求1所述的方法,其特征在于,采用训练好的性别预测模型,基于所述应用程序操作数据,对所述目标用户的性别进行预测,获得所述目标用户的预测性别,包括:
根据所述应用程序操作数据,建立所述目标用户的目标稠密矩阵,其中,所述应用程序操作数据包括所述目标用户操作各目标应用程序的操作信息;
将所述目标稠密矩阵,输入至所述性别预测模型,获得所述目标用户的预测性别。
3.如权利要求1所述的方法,其特征在于,在获取目标用户的应用程序操作数据之前,进一步包括:
获取多个用户的训练样本数据,所述训练样本数据包括用户的应用程序操作数据以及性别样本信息;
根据各用户的训练样本数据,生成稠密矩阵样本;
根据所述稠密矩阵样本,对初始分类模型进行训练,获得训练好的性别预测模型;
其中,所述初始分类模型是基于梯度提升树算法构建的。
4.如权利要求3所述的方法,其特征在于,根据所述稠密矩阵样本和性别样本信息,对初始分类模型进行训练,获得训练好的性别预测模型,包括:
将所述稠密矩阵样本,输入至所述初始分类模型,获得各用户的预测性别;
采用损失函数,基于根据各用户的预测性别以及相应的性别样本信息,确定预测误差;
根据所述预测误差,对所述初始分类模型的参数进行初步调整,获得第一分类模型;
基于获取的各应用程序的权值,从各应用程序中筛选出多个目标应用程序,其中,所述权值是根据各用户的训练样本数据确定的;
基于各用户的训练样本数据中包含的各目标应用程序对应的操作信息以及性别样本信息,对所述第一分类模型进行训练,获得训练好的性别预测模型。
5.如权利要求4所述的方法,其特征在于,在将所述稠密矩阵样本,输入至所述初始分类模型,获得各用户的预测性别之前,进一步包括:
将所述稠密矩阵样本进行矩阵转换,获得稀疏矩阵,其中,所述稀疏矩阵表示所述稠密矩阵样本中每一非零值在所述稠密矩阵样本中的位置;
基于所述稀疏矩阵中各应用程序对应的操作信息,确定各应用程序的权值;
将所述稀疏矩阵进行矩阵转换,获得稠密矩阵样本。
6.如权利要求5所述的方法,其特征在于,根据各应用程序的权值,从各应用程序中筛选出多个目标应用程序,包括:
按照各应用程序的权值,将各应用程序进行排序,获得排序组成的应用程序序列;
循环执行以下步骤,直至获得的应用程序序列中仅包含一个应用程序:从当前获得的应用程序序列中,删除指定数量的应用程序,并存储获得的新的应用程序序列;
分别基于存储的每一新的应用程序序列,以及所述稠密矩阵样本,对所述第一分类模型进行训练,获得训练好的第二分类模型;
基于获取的多个用户的验证样本数据,分别对每一个训练好的第二分类模型进行评估,获得相应的预测评估结果;
根据各新的应用程序序列对应的第二分类模型的预测评估结果,从各新的应用程序序列中选取一个新的应用程序序列;
将所述新的应用程序序列中的各应用程序,确定为目标应用程序。
7.如权利要求1-6任一项所述的方法,其特征在于,根据所述目标用户的预测性别以及所述应用程序操作数据,向所述目标用户进行信息推荐,包括:
获取所述目标用户的预测性别的各关联应用程序,各关联应用程序之间的应用关联度;
从所述应用程序操作数据中,筛选出所述目标用户的各关联应用程序的操作信息;
根据各关联应用程序的操作信息以及各关联应用程序之间的应用关联度,从所述目标用户的各关联应用程序中筛选出至少一个目标关联应用程序;
基于所述至少一个目标关联应用程序,向所述目标用户进行信息推荐。
8.如权利要求7所述的方法,其特征在于,在获取所述目标用户的预测性别的各关联应用程序,各关联应用程序之间应用关联度之前,进一步包括:
根据各用户的训练样本数据,确定每一应用程序分别与每一性别之间的用户关联度,以及各应用程序两两之间的应用关联度;
根据各应用程序和每一性别之间的用户关联度,分别确定每一性别的关联应用程序。
9.一种信息推荐的装置,其特征在于,包括:
获取单元,用于获取目标用户的应用程序操作数据;
预测单元,用于采用训练好的性别预测模型,基于所述应用程序操作数据,对所述目标用户的性别进行预测,获得所述目标用户的预测性别;
推荐单元,用于根据所述目标用户的预测性别以及所述应用程序操作数据,向所述目标用户进行信息推荐;
其中,所述性别预测模型是基于梯度提升树算法构建的,用于预测用户的性别。
10.如权利要求9所述的装置,其特征在于,所述预测单元用于:
根据所述应用程序操作数据,建立所述目标用户的目标稠密矩阵,其中,所述应用程序操作数据包括所述目标用户操作各目标应用程序的操作信息;
将所述目标稠密矩阵,输入至所述性别预测模型,获得所述目标用户的预测性别。
11.如权利要求9所述的装置,其特征在于,获取单元还用于:
获取多个用户的训练样本数据,所述训练样本数据包括用户的应用程序操作数据以及性别样本信息;
根据各用户的训练样本数据,生成稠密矩阵样本;
根据所述稠密矩阵样本,对初始分类模型进行训练,获得训练好的性别预测模型;
其中,所述初始分类模型是基于梯度提升树算法构建的。
12.如权利要求11所述的装置,其特征在于,获取单元还用于:
将所述稠密矩阵样本,输入至所述初始分类模型,获得各用户的预测性别;
采用损失函数,基于根据各用户的预测性别以及相应的性别样本信息,确定预测误差;
根据所述预测误差,对所述初始分类模型的参数进行初步调整,获得第一分类模型;
基于获取的各应用程序的权值,从各应用程序中筛选出多个目标应用程序,其中,所述权值是根据各用户的训练样本数据确定的;
基于各用户的训练样本数据中包含的各目标应用程序对应的操作信息以及性别样本信息,对所述第一分类模型进行训练,获得训练好的性别预测模型。
13.如权利要求12所述的装置,其特征在于,获取单元还用于:
将所述稠密矩阵样本进行矩阵转换,获得稀疏矩阵,其中,所述稀疏矩阵表示所述稠密矩阵样本中每一非零值在所述稠密矩阵样本中的位置;
基于所述稀疏矩阵中各应用程序对应的操作信息,确定各应用程序的权值;
将所述稀疏矩阵进行矩阵转换,获得稠密矩阵样本。
14.如权利要求13所述的装置,其特征在于,获取单元还用于:
按照各应用程序的权值,将各应用程序进行排序,获得排序组成的应用程序序列;
循环执行以下步骤,直至获得的应用程序序列中仅包含一个应用程序:从当前获得的应用程序序列中,删除指定数量的应用程序,并存储获得的新的应用程序序列;
分别基于存储的每一新的应用程序序列,以及所述稠密矩阵样本,对所述第一分类模型进行训练,获得训练好的第二分类模型;
基于获取的多个用户的验证样本数据,分别对每一个训练好的第二分类模型进行评估,获得相应的预测评估结果;
根据各新的应用程序序列对应的第二分类模型的预测评估结果,从各新的应用程序序列中选取一个新的应用程序序列;
将所述新的应用程序序列中的各应用程序,确定为目标应用程序。
15.如权利要求9-14任一项所述的装置,其特征在于,所述推荐单元用于:
获取所述目标用户的预测性别的各关联应用程序,各关联应用程序之间的应用关联度;
从所述应用程序操作数据中,筛选出所述目标用户的各关联应用程序的操作信息;
根据各关联应用程序的操作信息以及各关联应用程序之间的应用关联度,从所述目标用户的各关联应用程序中筛选出至少一个目标关联应用程序;
基于所述至少一个目标关联应用程序,向所述目标用户进行信息推荐。
16.如权利要求15所述的装置,其特征在于,所述推荐单元还用于:
根据各用户的训练样本数据,确定每一应用程序分别与每一性别之间的用户关联度,以及各应用程序两两之间的应用关联度;
根据各应用程序和每一性别之间的用户关联度,分别确定每一性别的关联应用程序。
17.一种电子设备,其特征在于,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如权利要求1-8任一所述方法。
18.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时运行如权利要求1-8任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110369872.5A CN112765479B (zh) | 2021-04-06 | 2021-04-06 | 一种信息推荐的方法、装置、电子设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110369872.5A CN112765479B (zh) | 2021-04-06 | 2021-04-06 | 一种信息推荐的方法、装置、电子设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112765479A true CN112765479A (zh) | 2021-05-07 |
CN112765479B CN112765479B (zh) | 2021-09-14 |
Family
ID=75691180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110369872.5A Active CN112765479B (zh) | 2021-04-06 | 2021-04-06 | 一种信息推荐的方法、装置、电子设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112765479B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106682686A (zh) * | 2016-12-09 | 2017-05-17 | 北京拓明科技有限公司 | 一种基于手机上网行为的用户性别预测方法 |
CN107885852A (zh) * | 2017-11-13 | 2018-04-06 | 上海交通大学 | 一种基于app使用记录的app推荐方法及系统 |
CN110012060A (zh) * | 2019-02-13 | 2019-07-12 | 平安科技(深圳)有限公司 | 移动终端的信息推送方法、装置、存储介质和服务器 |
KR102117528B1 (ko) * | 2018-12-21 | 2020-06-01 | 아주대학교산학협력단 | 온라인 데이터에 기반한 사용자 특성 예측 장치 및 방법 |
CN111324247A (zh) * | 2020-01-21 | 2020-06-23 | 维沃移动通信有限公司 | 一种信息显示方法及电子设备 |
KR20200082136A (ko) * | 2018-12-28 | 2020-07-08 | 아주대학교산학협력단 | 온라인 데이터에 기반한 사용자 성 정체성 예측 장치 및 방법 |
CN111506801A (zh) * | 2015-09-07 | 2020-08-07 | 阿里巴巴集团控股有限公司 | 一种应用App中子应用的排序方法及装置 |
-
2021
- 2021-04-06 CN CN202110369872.5A patent/CN112765479B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506801A (zh) * | 2015-09-07 | 2020-08-07 | 阿里巴巴集团控股有限公司 | 一种应用App中子应用的排序方法及装置 |
CN106682686A (zh) * | 2016-12-09 | 2017-05-17 | 北京拓明科技有限公司 | 一种基于手机上网行为的用户性别预测方法 |
CN107885852A (zh) * | 2017-11-13 | 2018-04-06 | 上海交通大学 | 一种基于app使用记录的app推荐方法及系统 |
KR102117528B1 (ko) * | 2018-12-21 | 2020-06-01 | 아주대학교산학협력단 | 온라인 데이터에 기반한 사용자 특성 예측 장치 및 방법 |
KR20200082136A (ko) * | 2018-12-28 | 2020-07-08 | 아주대학교산학협력단 | 온라인 데이터에 기반한 사용자 성 정체성 예측 장치 및 방법 |
CN110012060A (zh) * | 2019-02-13 | 2019-07-12 | 平安科技(深圳)有限公司 | 移动终端的信息推送方法、装置、存储介质和服务器 |
CN111324247A (zh) * | 2020-01-21 | 2020-06-23 | 维沃移动通信有限公司 | 一种信息显示方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112765479B (zh) | 2021-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109165249B (zh) | 数据处理模型构建方法、装置、服务器和用户端 | |
JP7206288B2 (ja) | 音楽推薦方法、装置、コンピューティング機器及び媒体 | |
WO2022022152A1 (zh) | 视频片段定位方法、装置、计算机设备及存储介质 | |
CN111506723B (zh) | 问答响应方法、装置、设备及存储介质 | |
US20230102337A1 (en) | Method and apparatus for training recommendation model, computer device, and storage medium | |
US10692017B2 (en) | Systems and methods for predictive document coding using continuous active machine learning | |
CN112632385A (zh) | 课程推荐方法、装置、计算机设备及介质 | |
CN110012060B (zh) | 移动终端的信息推送方法、装置、存储介质和服务器 | |
CN109299344A (zh) | 排序模型的生成方法、搜索结果的排序方法、装置及设备 | |
CN112328909B (zh) | 信息推荐方法、装置、计算机设备及介质 | |
CN108021984A (zh) | 确定机器学习样本的特征重要性的方法及系统 | |
CN111914176B (zh) | 题目的推荐方法及装置 | |
CN109614238A (zh) | 一种目标对象识别方法、装置、系统及可读存储介质 | |
CN110472016B (zh) | 文章推荐方法、装置、电子设备及存储介质 | |
US20190273789A1 (en) | Establishing and utilizing behavioral data thresholds for deep learning and other models to identify users across digital space | |
CN111222557A (zh) | 图像分类方法、装置、存储介质及电子设备 | |
CN113870083A (zh) | 政策匹配的方法、装置、系统、电子设备及可读存储介质 | |
CN111859872A (zh) | 一种文本标注方法和装置 | |
CN112104505A (zh) | 应用推荐方法、装置、服务器和计算机可读存储介质 | |
CN114138977A (zh) | 日志处理方法、装置、计算机设备和存储介质 | |
CN117252564A (zh) | 资源调度方法、装置、计算机设备及存储介质 | |
CN114428842A (zh) | 一种扩充问答库的方法、装置、电子设备及可读存储介质 | |
CN118043802A (zh) | 一种推荐模型训练方法及装置 | |
CN112765479B (zh) | 一种信息推荐的方法、装置、电子设备和可读存储介质 | |
CN116910357A (zh) | 一种数据处理方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |