应用检索方法、装置、存储介质以及终端与流程

文档序号:14870792发布日期:2018-07-06 23:27阅读:129来源:国知局
本发明涉及互联网
技术领域
,具体而言,本发明涉及一种应用检索方法、装置、存储介质以及终端。
背景技术
:随着技术的发展,各种应用层出不穷,因此在应用商店中会提供一个检索应用的功能,用以用户查找想要的应用。在进行应用检索时,传统技术中的方法一般是通过tf-idf(termfrequency–inversedocumentfrequency)算法实现检索功能,但这种方法只是从内容的角度出发检索内容,效果方面很难保障。技术实现要素:本发明针对现有方式的缺点,提出一种应用检索方法、装置、存储介质以及终端,用以解决现有技术中存在的应用检索效果较差的问题,以提高应用检索的效果。本发明的实施例根据第一个方面,提供了一种应用检索方法,包括步骤:根据第一用户输入的搜索词获得候选应用集;生成用于表征第一用户输入的搜索词与所述候选应用集中各个应用之间关系的各个第一特征;将所述各个第一特征输入预测模型,得到所述候选应用集中各个应用的预估点击率,其中,所述预测模型用于表征特征与应用的预估点击率之间的关联关系;根据所述预估点击率对所述候选应用集中各个应用进行降序排序,按照降序排序后的顺序将所述候选应用集中各个应用展示给第一用户。在一个实施例中,所述得到所述候选应用集中各个应用的预估点击率之前,还包括:获取各个第二用户的历史搜索记录,其中,所述历史搜索记录包括输入的搜索词、基于搜索词获得的各个应用以及各个应用是否下载的信息;生成用于表征各个第二用户输入的搜索词与对应各个应用之间关系的各个第二特征;将所述各个第二特征输入预设模型进行训练,生成预测模型。在一个实施例中,所述第二特征包括相关性特征,通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词,并计算分词在所述当前搜索词中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述当前搜索词的特征向量;对所述当前应用的文本信息进行分词,并计算分词在所述文本信息中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述文本信息的特征向量,其中,所述文本信息包括标题和/或描述信息;将所述当前搜索词的特征向量和所述文本信息的特征向量的夹角的余弦值作为对应的相关性特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性特征。在一个实施例中,所述历史搜索记录还包括各个应用下载的时间;所述第二特征还包括相关性与热度交叉的特征,通过以下步骤生成:根据所述相关性特征对基于所述当前搜索词获得的各个应用进行降序排序,获得所述当前应用在所有应用中的相关性排名;根据所述历史搜索记录统计基于所述当前搜索词获得的各个应用在预设时间内的下载量,根据所述下载量对基于所述当前搜索词获得的各个应用进行降序排序,获得所述当前应用在所有应用中的热度排名;将所述相关性排名和所述热度排名进行交叉,得到对应的相关性和热度交叉的特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性和热度交叉的特征。在一个实施例中,所述第二特征还包括历史收益特征,通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;根据所述历史搜索记录,统计所有输入所述当前搜索词的第二用户中下载所述当前应用的用户数,以及所有输入所述当前搜索词的第二用户的搜索列表中展示所述当前应用的次数;将所述用户数和所述次数的比值作为对应的历史收益特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的历史收益特征。在一个实施例中,所述第二特征还包括精准匹配特征,通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;检测所述当前应用的标题与所述当前搜索词是否完全一致;若是,将第一设定值作为对应的精准匹配特征,否则,将第二设定值作为对应的精准匹配特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的精准匹配特征。在一个实施例中,所述第二特征还包括分词到应用特征,通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词;将由所述当前搜索词的分词与所述当前应用的标题构成的组合作为对应的分词到应用特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的分词到应用特征。在一个实施例中,所述第一特征采用one-hot编码。本发明的实施例根据第二个方面,还提供了一种应用检索装置,包括:候选应用集获得模块,用于根据第一用户输入的搜索词获得候选应用集;第一特征生成模块,用于生成用于表征第一用户输入的搜索词与所述候选应用集中各个应用之间关系的各个第一特征;预估点击率获得模块,用于将所述各个第一特征输入预测模型,得到所述候选应用集中各个应用的预估点击率,其中,所述预测模型用于表征特征与应用的预估点击率之间的关联关系;应用展示模块,用于根据所述预估点击率对所述候选应用集中各个应用进行降序排序,按照降序排序后的顺序将所述候选应用集中各个应用展示给第一用户。本发明的实施例根据第三个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任意一项所述的应用检索方法。本发明的实施例根据第四个方面,还提供了一种终端,所述终端包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现前述任意一项所述的应用检索方法。上述的应用检索方法、装置、存储介质以及终端,首先根据用户输入的搜索词召回各个应用,满足了检索内容匹配度,然后通过将生成的各个第一特征输入预测模型获得各个应用的预估点击率,根据预估点击率确定召回的各个应用的展示顺序,用户根据该展示顺序可以快速找到预估点击率高的应用,提高了用户选择所需应用的效率,在点击率等指标的效果上比传统的tf-idf算法有大幅提升。进一步的,提出一种结合内容、应用热度(相关性与热度交叉的特征)、用户反馈(历史收益特征)的应用检索方式,不仅满足检索内容匹配度,而且在效果上比传统方法有大幅度提升,更好的满足用户的需求。本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。附图说明本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为本发明一个实施例的应用检索方法的流程示意图;图2为本发明一个实施例的应用检索装置的结构示意图;图3为本发明一个实施例的终端的结构示意图。具体实施方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。本
技术领域
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应当理解,本发明中使用的“第一”、“第二”等文字仅用于区分同一技术特征,并不对该技术特征的顺序和数量等进行限定。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。本
技术领域
技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。本
技术领域
技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;pcs(personalcommunicationsservice,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;pda(personaldigitalassistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或gps(globalpositioningsystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是pda、mid(mobileinternetdevice,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。有必要先对本发明的应用场景和原理进行如下的先导性说明。本发明所提供的应用检索方法、装置、存储介质以及终端可以部署在终端中,例如手机、电脑中。用于用户输入搜索词的终端和用于检索应用的终端可以为同一个终端,可以为不同的终端,例如,用户可以在手机中输入搜索词,然后手机将该搜索词发送给服务器以实现应用的检索,服务器将最终的检索结果再反馈给手机,又例如,用户可以在手机中输入搜索词,手机直接根据该搜索词进行应用的检索,并将检索的结果展现在手机屏幕中。本发明分两个部分,第一部分是召回过程,这个过程根据用户u输入的搜索词s初步圈定一批应用作为候选应用集,第二步是精排过程,这个过程是对召回的应用进行二次排序并作为最终的展示结果。下面结合附图对本发明的具体实施方式进行详细介绍。在一个实施例中,如图1所示,一种应用检索方法,包括步骤:s110、根据第一用户输入的搜索词获得候选应用集。该步骤为召回应用的步骤。第一用户为当前需要检索应用的用户。搜索词为用户为了检索应用而输入的词语,例如“消消乐”等,搜索词的个数可以为一个或者多个,搜索词的长度也可以为短词或者长句。第一用户输入搜索词的方式有很多种,例如,第一用户可以通过触摸笔或者手指触摸直接在搜索窗口输入搜索词,也可以通过键盘或者鼠标等在搜索窗口输入搜索词,本发明并不对此作出限定。候选应用集为通过第一用户输入的搜索词而检索到的内容匹配的包含若干个应用的集合。根据输入的搜索词获得候选应用集的方式有很多种,下面结合召回过程采用tf-idf算法为例进行说明。应当理解,本发明并不限制于采用tf-idf算法召回应用。在一个实施例中,所述根据第一用户输入的搜索词获得候选应用集包括:s1101、生成搜索词s的tf-idf向量、应用i的文本信息的tf-idf向量,其中,文本信息包括标题和/或描述信息等等。下面以生成应用i描述信息的tf-idf向量为例进行说明。s1101a、提取手机应用i描述信息的词频特征。提取应用i的词频特征包括步骤:1、对应用i的内容进行分词,可选的,在分词时可以对分词结果进行过滤以保留能反映文本内容的分词。2、统计每个分词出现的概率。3、以每个分词出现的概率作为该分词的权重。即可得到应用i的词频特征向量,记为tfi:tfi={w1:tf1,w2:tf2,w3:tf3,…}例如:“打字最精准、界面最个性化的输入法”语句的分词结果为tfi={打字:0.2,精准:0.2,界面:0.2,个性化:0.2,输入法:0.2}s1101b、计算不同分词的逆文档频率。i表示资源库中所有手机应用的集合iscontaini,j表示分词j是否在应用i中出现,1表示出现了,0表示没有出现idfj表示分词j的逆文档频率,计算公式如下:s1101c、构造应用i描述信息的tf-idf向量。tfidfi,j表示应用i中分词j的tf-idf值,计算公式如下:tfidfi,j=idfj·tfi,j通过上式,就可以得到应用i的tf-idf向量,记为tdfitdfi=(tfidfi,1,tfidfi,2,…)通过类似方法可以得到搜索词的tf-idf向量tdfs,以及应用标题i的tf-idf向量tdfts。如果应用的文本信息还包括其它内容,同样可以采用类似方法得到对应的tf-idf向量。s1102、计算应用i与搜索词s的tf-idf相似性。通过余弦相关系数求相似性,具体的:simtitles,i表示搜索词s与应用i标题的tf-idf相似性siminfos,i表示搜索词s与应用i描述信息i的tf-idf相似性simtitles,i=cos<tdfs,tdfti>siminfos,i=cos<tdfs,tdfi>s1103、圈定应用。通过步骤s1102得到的相似性圈定应用,圈定应用的方式有很多,在一个实施例中,可以将相似性大于一定阈值的应用作为召回的应用,在另一个实施例中,也可以按照相似性从高到低的顺序对各个应用进行排序,然后从相似性最高的应用开始,选取预设数量的应用,作为召回的应用。预设数量可以根据实际需要进行设定。以一个例子进行说明。对于搜索词s通过simtitles,i对全库应用进行降序排序(在实际实践中通过倒排方式把应用分词信息存放到系统中),圈定前300个应用。同理siminfo_(s,i)系数也可以圈定300个应用。可选的,可以将通过两种方式召回的应用组成的集合作为候选应用集,也可以对两种方式召回的应用通过预设规则进行进一步筛选,将筛选后的各个应用组合组成的集合作为候选应用集。s120、生成用于表征第一用户输入的搜索词与所述候选应用集中各个应用之间关系的各个第一特征。步骤s120~步骤s140为精排的步骤。该步骤的第一特征与后续出现的第二特征和特征为同一概念。在一个实施例中,所述第一特征和/或后续出现的第二特征可以采用one-hot编码。one-hot编码即把每个维度离散为0、1形式,例如:年龄维度取值:“儿童”、“少年”、“青年”、“老年”,one-hot编码后就分解为4个特征。应当理解,特征并不限制于该种编码方式,还可以采用其它形式进行编码。可选的,特征包括:精准匹配特征、历史收益特征、相关性特征(包括标题相关性特征和/或描述相关性特征)、分词到应用特征以及相关性与热度交叉的特征中的任意一种或者任意组合。假设第一用户输入的一个搜索词为s,候选应用集中的一个应用为i,下面介绍用于表征搜索词s和应用i之间关系的各个第一特征。特征1:精准匹配特征检测应用i的标题与搜索词s是否完全一致,是则返回特征is_match=第一设定值(例如1),否则返回特征is_match=第二设定值(例如0)。特征2:历史收益特征搜索词与应用的特征ctrs,i为搜索词s对应用i的转换率,表示在搜索词s的搜索列表中,用户下载应用的比例可选的,可以取小数点后3位作为历史收益特征,例如,ctrs,i=0.123。对于历史搜索记录中没有搜索词s到应用i的用户反馈信息情况返回默认特征ctrs,i=null。由于该历史收益特征需要其他用户反馈信息情况,而上述步骤仅能得到第一用户输入的搜索词以及候选应用集,因此第一特征所包含的该历史收益特征ctrs,i=null。特征3:标题相关性特征标题相关性特征是指搜索词s与应用i标题的相关性特征,计算方法和召回过程(步骤s110)一致。simtitles,i=cos<tdfs,tdfti>可选的,取小数点后3为作为标题相关性特征,例如:simtitles,i=0.789。特征4:描述相关性特征描述相关性特征是指搜索词s与应用i描述信息的相关性特征,计算方法和召回过程(步骤s110)一致。siminfos,i=cos<tdfs,tdfi>可选的,取小数点后3为作为特征,例如:siminfos,i=0.123。特征5:分词到应用特征分词到应用特征是指对搜索词s进行分词,每个分词到应用i为一个特征,该过程会生成多个特征。例如:搜索词为“消消游戏”,应用为“开心消消乐”,对搜索词分词为“消消”、“游戏”,则生成两个分词到应用的特征,第1个为“消消&开心消消乐”特征,第2个为“游戏&开心消消乐”。特征6:相关性与热度交叉的特征相关性与热度交叉的特征是指,考虑搜索词s与应用i相关性的同时,考虑应用i的热度。方法如下:计算在基于搜索词s召回的所有应用中应用i与搜索词s的相关性排名,方法是对召回的所有应用按照simtitles,i+siminfos,i降序排序(如果只生成其中一个特征,则无需求和),得到应用i与搜索词s的相关性排名记为relaterns,i。计算在基于搜索词s召回的所有应用中应用i热度排名,方法是对召回的所有应用根据在应用商店中预设时间内(例如最近一周)下载量(如平均下载量)降序排序,得到应用i热度排名记为hotrns,i。把上述两个特征进行交叉得到相关性与热度交叉的特征。例如:relaterns,i=23&hotrns,i=31。由于在该步骤s120中,应用的下载量为空,所以该相关性与热度交叉为空。s130、将所述各个第一特征输入预测模型,得到所述候选应用集中各个应用的预估点击率,其中,所述预测模型用于表征特征与应用的预估点击率之间的关联关系。预测模型用于输入特征,输出应用的预估点击率。预测模型可以事先离线训练好,通过上述步骤得到各个第一特征后,然后通过调用训练好的预测模型对召回的每一个应用预估点击率,就可以得到候选应用集中各个应用的预估点击率。预估点击率为预估的第一用户对某个应用的点击率(即下载率),也即第一用户对某个应用感兴趣的概率。因此,在一个实施例中,所述得到所述候选应用集中各个应用的预估点击率之前,还包括:s080、获取各个第二用户的历史搜索记录,其中,所述历史搜索记录包括输入的搜索词、基于搜索词获得的各个应用以及各个应用是否下载的信息。各个第二用户为先前检索过应用的用户。历史搜索记录为各个第二用户检索时所产生的记录,包括:搜索词,用户在进行检索时输入的词语;应用,根据用户输入的搜索词检索到的应用;是否下载的信息,用户根据输入的搜索词检索到某一个应用时,是否有对该应用进行点击下载,为了描述应用是否下载的信息,可以设置不同数值进行区分,例如为1则表示该应用下载,0则表示该应用只展示(曝光)未下载。另外,如表1所示的收集的历史搜索曝光点击数据(即历史搜索记录),可选的,历史搜索记录还可以包括:用户标识,例如用户在应用商城进行检索时所注册的账号或者用户的设备标识等等;和/或,各个应用下载的时间。表1:历史搜索记录用户标识搜索词应用是否下载下载时间u1s1a10u2s2a11t1……………s090、生成用于表征各个第二用户输入的搜索词与对应各个应用之间关系的各个第二特征。可选的,第二特征包括:精准匹配特征、历史收益特征、相关性特征(包括标题相关性特征和/或描述相关性特征)、分词到应用特征以及相关性与热度交叉的特征中的任意一种或者任意组合。根据历史搜索记录生成各个第二特征的方式与上述生成各个第一特征的方式类似,假设当前搜索词为s,当前应用为i,下面介绍用于表征当前搜索词为s和当前应用为i之间关系的各个第二特征。特征1:精准匹配特征在一个实施例中,精准匹配特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;检测所述当前应用的标题与所述当前搜索词是否完全一致;若是,将第一设定值作为对应的精准匹配特征,否则,将第二设定值作为对应的精准匹配特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的精准匹配特征。检测当前应用i的标题与当前搜索词s是否完全一致,是则返回特征is_match=第一设定值(例如1),否则返回特征is_match=第二设定值(例如0)。特征2:历史收益特征在一个实施例中,历史收益特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;根据所述历史搜索记录,统计所有输入所述当前搜索词的第二用户中下载所述当前应用的用户数,以及所有输入所述当前搜索词的第二用户的搜索列表中展示所述当前应用的次数;将所述用户数和所述次数的比值作为对应的历史收益特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的历史收益特征。根据各个第二用户的行为反馈数据,生成搜索词与应用的特征ctrs,i。搜索词与应用的特征ctrs,i为搜索词s对应用i的转换率,表示在搜索词s的搜索列表中,用户下载应用的比例可选的,可以取小数点后3位作为历史收益特征,例如,ctrs,i=0.123。对于历史搜索记录中没有搜索词s到应用i的用户反馈信息情况返回默认特征ctrs,i=null。特征3:标题相关性特征在一个实施例中,相关性特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词,并计算分词在所述当前搜索词中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述当前搜索词的特征向量;对所述当前应用的文本信息进行分词,并计算分词在所述文本信息中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述文本信息的特征向量,其中,所述文本信息包括标题和/或描述信息;将所述当前搜索词的特征向量和所述文本信息的特征向量的夹角的余弦值作为对应的相关性特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性特征。标题相关性特征只需要将上述步骤中的文本信息替换为标题即可以得到。标题相关性特征是指搜索词s与应用i标题的相关性特征,计算方法和召回过程(步骤s110)一致。simtitles,i=cos<tdfs,tdfti>可选的,取小数点后3为作为标题相关性特征,例如:simtitles,i=0.789。特征4:描述相关性特征在一个实施例中,相关性特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词,并计算分词在所述当前搜索词中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述当前搜索词的特征向量;对所述当前应用的文本信息进行分词,并计算分词在所述文本信息中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述文本信息的特征向量,其中,所述文本信息包括标题和/或描述信息;将所述当前搜索词的特征向量和所述文本信息的特征向量的夹角的余弦值作为对应的相关性特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性特征。描述相关性特征只需要将上述步骤中的文本信息替换为描述信息即可以得到。描述相关性特征是指搜索词s与应用i描述信息的相关性特征,计算方法和召回过程(步骤s110)一致。siminfos,i=cos<tdfs,tdfi>可选的,取小数点后3为作为特征,例如:siminfos,i=0.123。特征5:分词到应用特征在一个实施例中,分词到应用特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词;将由所述当前搜索词的分词与所述当前应用的标题构成的组合作为对应的分词到应用特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的分词到应用特征。分词到应用特征是指对搜索词s进行分词,每个分词到应用i为一个特征,该过程会生成多个特征。例如:搜索词为“消消游戏”,应用为“开心消消乐”,对搜索词切词为“消消”、“游戏”,则生成两个分词到应用的特征,第1个为“消消&开心消消乐”特征,第2个为“游戏&开心消消乐”。特征6:相关性与热度交叉的特征在一个实施例中,相关性与热度交叉的特征通过以下步骤生成:根据所述相关性特征对基于所述当前搜索词获得的各个应用进行降序排序,获得所述当前应用在所有应用中的相关性排名;根据所述历史搜索记录统计基于所述当前搜索词获得的各个应用在预设时间内的下载量,根据所述下载量对基于所述当前搜索词获得的各个应用进行降序排序,获得所述当前应用在所有应用中的热度排名;将所述相关性排名和所述热度排名进行交叉,得到对应的相关性和热度交叉的特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性和热度交叉的特征。相关性与热度交叉的特征是指,考虑搜索词s与应用i相关性的同时,考虑应用i的热度。方法如下:计算在召回的所有应用中应用i与搜索词s的相关性排名,方法是对召回的所有应用按照simtitles,i+siminfos,i(如果只生成其中一个特征,则无需求和)降序排序,得到应用i与搜索词s的相关性排名记为relaterns,i。计算在召回的所有应用中应用i热度排名,方法是对召回的所有应用根据在应用商店中预设时间内(例如最近一周)下载量(如平均下载量)降序排序,得到应用i热度排名记为hotrns,i。把上述两个特征进行交叉得到相关性与热度交叉的特征。例如:relaterns,i=23&hotrns,i=31。s100、将所述各个第二特征输入预设模型进行训练,生成预测模型。生成各个第二特征后,就得到模型特征数据,即训练样本,如表2所示。可选的,预设模型为lr(逻辑斯蒂回归)模型。通过业界常用的lr模型训练算法,对表2数据(训练样本数据)进行训练,即可得到模型参量,即预设模型。表2:训练样本数据s140、根据所述预估点击率对所述候选应用集中各个应用进行降序排序,按照降序排序后的顺序将所述候选应用集中各个应用展示给第一用户。离线训练好的模型对召回的应用候选集中每一个应用预估点击率,根据预估点击率进行降序排序,并返回用户客户端,顺序展示给用户,那么用户就可以快速选取所需要的应用,具有较好的效果。基于同一发明构思,本发明还提供一种应用检索装置,下面结合附图对本发明装置的具体实施方式进行详细介绍。如图2所示,在一个实施例中,一种应用检索装置,包括:候选应用集获得模块110,用于根据第一用户输入的搜索词获得候选应用集。第一用户为当前需要检索应用的用户。搜索词为用户为了检索应用而输入的词语,例如“消消乐”等,搜索词的个数可以为一个或者多个,搜索词的长度也可以为短词或者长句。第一用户输入搜索词的方式有很多种,例如,第一用户可以通过触摸笔或者手指触摸直接在搜索窗口输入搜索词,也可以通过键盘或者鼠标等在搜索窗口输入搜索词,本发明并不对此作出限定。候选应用集为通过第一用户输入的搜索词而检索到的内容匹配的包含若干个应用的集合。根据输入的搜索词获得候选应用集的方式有很多种,例如,在一个实施例中,采用tf-idf算法获得候选应用集。应当理解,本发明并不限制于采用tf-idf算法召回应用。第一特征生成模块120,用于生成用于表征第一用户输入的搜索词与所述候选应用集中各个应用之间关系的各个第一特征。在一个实施例中,所述第一特征和/或后续的第二特征可以采用one-hot编码。one-hot编码即把每个维度离散为0、1形式,例如:年龄维度取值:“儿童”、“少年”、“青年”、“老年”,one-hot编码后就分解为4个特征。应当理解,特征并不限制于该种编码方式,还可以采用其它形式进行编码。可选的,特征包括:精准匹配特征、历史收益特征、相关性特征(包括标题相关性特征和/或描述相关性特征)、分词到应用特征以及相关性与热度交叉的特征中的任意一种或者任意组合。假设第一用户输入的一个搜索词为s,候选应用集中的一个应用为i,下面介绍用于表征搜索词s和应用i之间关系的各个第一特征。特征1:精准匹配特征检测应用i的标题与搜索词s是否完全一致,是则返回特征is_match=第一设定值(例如1),否则返回特征is_match=第二设定值(例如0)。特征2:历史收益特征搜索词与应用的特征ctrs,i为搜索词s对应用i的转换率,表示在搜索词s的搜索列表中,用户下载应用的比例可选的,可以取小数点后3位作为历史收益特征,例如,ctrs,i=0.123。对于历史搜索记录中没有搜索词s到应用i的用户反馈信息情况返回默认特征ctrs,i=null。由于该历史收益特征需要其他用户反馈信息情况,因此在第一特征所包括的历史收益特征ctrs,i=null。特征3:标题相关性特征标题相关性特征是指搜索词s与应用i标题的相关性特征。simtitles,i=cos<tdfs,tdfti>可选的,取小数点后3为作为标题相关性特征,例如:simtitles,i=0.789。特征4:描述相关性特征描述相关性特征是指搜索词s与应用i描述信息的相关性特征。siminfos,i=cos<tdfs,tdfi>可选的,取小数点后3为作为特征,例如:siminfos,i=0.123。特征5:分词到应用特征分词到应用特征是指对搜索词s进行分词,每个分词到应用i为一个特征,该过程会生成多个特征。例如:搜索词为“消消游戏”,应用为“开心消消乐”,对搜索词分词为“消消”、“游戏”,则生成两个分词到应用的特征,第1个为“消消&开心消消乐”特征,第2个为“游戏&开心消消乐”。特征6:相关性与热度交叉的特征相关性与热度交叉的特征是指,考虑搜索词s与应用i相关性的同时,考虑应用i的热度。方法如下:计算在基于搜索词s召回的所有应用中应用i与搜索词s的相关性排名,方法是对召回的所有应用按照simtitles,i+siminfos,i降序排序(如果只生成其中一个特征,则无需求和),得到应用i与搜索词s的相关性排名记为relaterns,i。计算在基于搜索词s召回的所有应用中应用i热度排名,方法是对召回的所有应用根据在应用商店中预设时间内(例如最近一周)下载量(如平均下载量)降序排序,得到应用i热度排名记为hotrns,i。把上述两个特征进行交叉得到相关性与热度交叉的特征。例如:relaterns,i=23&hotrns,i=31。由于应用的下载量为空,所以第一特征所包括的该相关性与热度交叉为空。预估点击率获得模块130,用于将所述各个第一特征输入预测模型,得到所述候选应用集中各个应用的预估点击率,其中,所述预测模型用于表征特征与应用的预估点击率之间的关联关系。预测模型用于输入特征,输出应用的预估点击率。预测模型可以事先离线训练好,通过上述步骤得到各个第一特征后,然后通过调用训练好的预测模型对召回的每一个应用预估点击率,就可以得到候选应用集中各个应用的预估点击率。预估点击率为预估的第一用户对某个应用的点击率(即下载率),也即第一用户对某个应用感兴趣的概率。因此,在一个实施例中,还包括与所述预估点击率模块相连的预测模型生成模块,所述预测模型生成模块用于执行以下操作:a、获取各个第二用户的历史搜索记录,其中,所述历史搜索记录包括输入的搜索词、基于搜索词获得的各个应用以及各个应用是否下载的信息。各个第二用户为先前检索过应用的用户。历史搜索记录为各个第二用户检索时所产生的记录,包括:搜索词,用户在进行检索时输入的词语;应用,根据用户输入的搜索词检索到的应用;是否下载的信息,用户根据输入的搜索词检索到某一个应用时,是否有对该应用进行点击下载,为了描述应用是否下载的信息,可以设置不同数值进行区分,例如为1则表示该应用下载,0则表示该应用只展示(曝光)未下载。另外,如表1所示的收集的历史搜索曝光点击数据(即历史搜索记录),可选的,历史搜索记录还可以包括:用户标识,例如用户在应用商城进行检索时所注册的账号或者用户的设备标识等等;和/或,各个应用下载的时间。b、生成用于表征各个第二用户输入的搜索词与对应各个应用之间关系的各个第二特征。可选的,第二特征包括:精准匹配特征、历史收益特征、相关性特征(包括标题相关性特征和/或描述相关性特征)、分词到应用特征以及相关性与热度交叉的特征中的任意一种或者任意组合。假设当前搜索词为s,当前应用为i,下面介绍用于表征当前搜索词为s和当前应用为i之间关系的各个第二特征。特征1:精准匹配特征在一个实施例中,精准匹配特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;检测所述当前应用的标题与所述当前搜索词是否完全一致;若是,将第一设定值作为对应的精准匹配特征,否则,将第二设定值作为对应的精准匹配特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的精准匹配特征。特征2:历史收益特征在一个实施例中,历史收益特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;根据所述历史搜索记录,统计所有输入所述当前搜索词的第二用户中下载所述当前应用的用户数,以及所有输入所述当前搜索词的第二用户的搜索列表中展示所述当前应用的次数;将所述用户数和所述次数的比值作为对应的历史收益特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的历史收益特征。特征3:标题相关性特征在一个实施例中,相关性特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词,并计算分词在所述当前搜索词中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述当前搜索词的特征向量;对所述当前应用的文本信息进行分词,并计算分词在所述文本信息中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述文本信息的特征向量,其中,所述文本信息包括标题和/或描述信息;将所述当前搜索词的特征向量和所述文本信息的特征向量的夹角的余弦值作为对应的相关性特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性特征。标题相关性特征只需要将上述步骤中的文本信息替换为标题即可以得到。特征4:描述相关性特征在一个实施例中,相关性特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词,并计算分词在所述当前搜索词中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述当前搜索词的特征向量;对所述当前应用的文本信息进行分词,并计算分词在所述文本信息中出现的词频以及逆文档频率,根据词频和逆文档频率获得所述文本信息的特征向量,其中,所述文本信息包括标题和/或描述信息;将所述当前搜索词的特征向量和所述文本信息的特征向量的夹角的余弦值作为对应的相关性特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性特征。描述相关性特征只需要将上述步骤中的文本信息替换为描述信息即可以得到。特征5:分词到应用特征在一个实施例中,分词到应用特征通过以下步骤生成:从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用;对所述当前搜索词进行分词;将由所述当前搜索词的分词与所述当前应用的标题构成的组合作为对应的分词到应用特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的分词到应用特征。特征6:相关性与热度交叉的特征在一个实施例中,相关性与热度交叉的特征通过以下步骤生成:根据所述相关性特征对基于所述当前搜索词获得的各个应用进行降序排序,获得所述当前应用在所有应用中的相关性排名;根据所述历史搜索记录统计基于所述当前搜索词获得的各个应用在预设时间内的下载量,根据所述下载量对基于所述当前搜索词获得的各个应用进行降序排序,获得所述当前应用在所有应用中的热度排名;将所述相关性排名和所述热度排名进行交叉,得到对应的相关性和热度交叉的特征;返回从各个第二用户输入的搜索词中选取一个搜索词作为当前搜索词,从基于所述当前搜索词获得的各个应用中选取一个应用作为当前应用的步骤,直至生成所有的相关性和热度交叉的特征。c、将所述各个第二特征输入预设模型进行训练,生成预测模型。生成各个第二特征后,就得到模型特征数据,即训练样本。可选的,预设模型为lr(逻辑斯蒂回归)模型。通过业界常用的lr模型训练算法,对训练样本数据进行训练,即可得到模型参量,即预设模型。应用展示模块140,用于根据所述预估点击率对所述候选应用集中各个应用进行降序排序,按照降序排序后的顺序将所述候选应用集中各个应用展示给第一用户。离线训练好的模型对召回的应用候选集中每一个应用预估点击率,根据预估点击率进行降序排序,并返回用户客户端,顺序展示给用户,那么用户就可以快速选取所需要的应用,具有较好的效果。在一个实施例中,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任意一项所述的应用检索方法。其中,所述存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd-rom、和磁光盘)、rom(read-onlymemory,只读存储器)、ram(randomaccessmemory,随即存储器)、eprom(erasableprogrammableread-onlymemory,可擦写可编程只读存储器)、eeprom(electricallyerasableprogrammableread-onlymemory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。可以是只读存储器,磁盘或光盘等。在一个实施例中,本发明还提供一种终端,所述终端包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现前述任意一项所述的应用检索方法。如图3所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、pda(personaldigitalassistant,个人数字助理)、pos(pointofsales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:图3示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图3,手机包括:射频(radiofrequency,rf)电路1510、存储器1520、输入单元1530、显示单元1540、传感器1550、音频电路1560、无线保真(wirelessfidelity,wi-fi)模块1570、处理器1580、以及电源1590等部件。本领域技术人员可以理解,图3中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图3对手机的各个构成部件进行具体的介绍:rf电路1510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1580处理;另外,将设计上行的数据发送给基站。通常,rf电路1510包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,lna)、双工器等。此外,rf电路1510还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,gsm)、通用分组无线服务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、长期演进(longtermevolution,lte)、电子邮件、短消息服务(shortmessagingservice,sms)等。存储器1520可用于存储软件程序以及模块,处理器1580通过运行存储在存储器1520的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如应用检索功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如历史搜索数据等)等。此外,存储器1520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入单元1530可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1530可包括触控面板1531以及其他输入设备1532。触控面板1531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1531上或在触控面板1531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1580,并能接收处理器1580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1531。除了触控面板1531,输入单元1530还可以包括其他输入设备1532。具体地,其他输入设备1532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元1540可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1540可包括显示面板1541,可选的,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1541。进一步的,触控面板1531可覆盖显示面板1541,当触控面板1531检测到在其上或附近的触摸操作后,传送给处理器1580以确定触摸事件的类型,随后处理器1580根据触摸事件的类型在显示面板1541上提供相应的视觉输出。虽然在图3中,触控面板1531与显示面板1541是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1531与显示面板1541集成而实现手机的输入和输出功能。手机还可包括至少一种传感器1550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1541的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。音频电路1560、扬声器1561,传声器1562可提供用户与手机之间的音频接口。音频电路1560可将接收到的音频数据转换后的电信号,传输到扬声器1561,由扬声器1561转换为声纹信号输出;另一方面,传声器1562将收集的声纹信号转换为电信号,由音频电路1560接收后转换为音频数据,再将音频数据输出处理器1580处理后,经rf电路1510以发送给比如另一手机,或者将音频数据输出至存储器1520以便进一步处理。wi-fi属于短距离无线传输技术,手机通过wi-fi模块1570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图3示出了wi-fi模块1570,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。处理器1580是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1520内的软件程序和/或模块,以及调用存储在存储器1520内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1580可包括一个或多个处理单元;优选的,处理器1580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1580中。手机还包括给各个部件供电的电源1590(比如电池),优选的,电源可以通过电源管理系统与处理器1580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。上述的应用检索方法、装置、存储介质以及终端,从内容匹配度、应用本身质量及用户反馈三方面入手,建立预测模型进行精排,在点击率、转化率等指标的效果上比传统的tf-idf算法都有大幅提升,更好的满足用户的检索需求。应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。以上所述仅是本发明的部分实施方式,应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1