CN106227881B - 一种信息处理方法及服务器 - Google Patents

一种信息处理方法及服务器 Download PDF

Info

Publication number
CN106227881B
CN106227881B CN201610633431.0A CN201610633431A CN106227881B CN 106227881 B CN106227881 B CN 106227881B CN 201610633431 A CN201610633431 A CN 201610633431A CN 106227881 B CN106227881 B CN 106227881B
Authority
CN
China
Prior art keywords
preset
behavior data
user
row
matrix
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.)
Active
Application number
CN201610633431.0A
Other languages
English (en)
Other versions
CN106227881A (zh
Inventor
黄安埠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201610633431.0A priority Critical patent/CN106227881B/zh
Publication of CN106227881A publication Critical patent/CN106227881A/zh
Application granted granted Critical
Publication of CN106227881B publication Critical patent/CN106227881B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/735Filtering 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例公开了一种信息处理方法及服务器,该方法包括:获取第一用户在终端上执行操作所得到的第一历史行为数据;根据第一历史行为数据进行特征构造,生成第一特征矩阵,该第一特征矩阵用于表征第一用户与第一信息之间的对应关系;根据第一预设规则将第一特征矩阵压缩,生成第二签名矩阵,该第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,该第二历史行为数据为第一历史行为数据经压缩后得到的;根据第二预设规则对第二签名矩阵进行关联度处理,生成第一模型,该第一模型用于表征第二历史行为数据间的关联度;获取第二用户的当前行为数据,将该当前行为数据输入第一模型,得到与第一用户相关联的关联数据。

Description

一种信息处理方法及服务器
技术领域
本发明涉及通信领域中的互联网技术,尤其涉及一种信息处理方法及服务器。
背景技术
随着通信技术的飞速发展,客户端的功能和智能性也越来越丰富,当用户通过客户端在进行业务应用时,如通过客户端安装的视频应用播放视频时,发送播放请求或请求下载视频的请求等等业务请求,服务器会收集这些业务请求,并根据业务请求向该客户端下发关联信息,该客户端就可以通过关联信息智能地为用户推荐相关联的媒体信息(如某一个综艺视频或电视剧视频)或用户信息,从而方便用户选择更多感兴趣的相关媒体信息或具有相同爱好的关联用户的信息,例如,在观看视频时,视频客户端可以根据用户选择的视频类型,通过服务器的判断实现智能推荐与其关联的视频给用户,便于用户选择。于是,如何能够种类繁多的物品大数据中挖掘出有相同兴趣的好友用户或物品是一个需要关注的问题。
现有技术中,服务器通过判断相似度或关联度为用户智能推荐与用户关注或请求相关联的用户或物品。服务器通过先验剪枝的方法,先提前将每个待关联的用户或物品的相似用户或物品候选集固定在一个小范围内,然后在这个小范围内选择与待关联的用户或物品相关联(相似度高)的用户或物品。
然而,采用现有技术的方法,服务器采用先验知识来固定或确定用户或物品候选集,当与用户或物品候选集中的匹配的用户或物品数量较大时,服务器计算相似度的工作量是很大的,需要花费很多的时间导致时间效率较低,并且由于该服务器采用先验知识的有限性和局限性,影响服务器确定相似物品或用户的准确性。
发明内容
为解决上述技术问题,本发明实施例期望提供一种信息处理方法及服务器,能够简化物品间或用户间的关联性的确定,提高确定关联性的时间效率和准确度。
本发明的技术方案是这样实现的:
本发明实施例提供了一种信息处理方法,包括:
获取第一用户在终端上执行操作所得到的第一历史行为数据,所述第一历史行为数据用于表征所述第一用户执行第一信息的记录;
根据所述第一历史行为数据进行特征构造,生成第一特征矩阵,所述第一特征矩阵用于表征所述第一用户与所述第一信息之间的对应关系;
根据第一预设规则将所述第一特征矩阵压缩,生成第二签名矩阵,所述第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,所述第二历史行为数据为所述第一历史行为数据经压缩后得到的;
根据第二预设规则对所述第二签名矩阵进行关联度处理,生成第一模型,所述第一模型用于表征所述第二历史行为数据间的关联度;
获取第二用户的当前行为数据,将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据。
本发明实施例提供了一种服务器,包括:
获取单元,用于获取第一用户在终端上执行操作所得到的第一历史行为数据,所述第一历史行为数据用于表征所述第一用户执行第一信息的记录;
生成单元,用于根据所述第一历史行为数据进行特征构造,生成第一特征矩阵,所述第一特征矩阵用于表征所述第一用户与所述第一信息之间的对应关系;以及根据第一预设规则将所述第一特征矩阵压缩,生成第二签名矩阵,所述第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,所述第二历史行为数据为所述第一历史行为数据经压缩后得到的;及根据第二预设规则对所述第二签名矩阵进行关联度处理,生成第一模型,所述第一模型用于表征所述第二历史行为数据间的关联度;
所述获取单元,还用于获取第二用户的当前行为数据;
接口单元,用于将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据。
本发明实施例提供了一种信息处理方法及服务器,通过获取第一用户在终端上执行操作所得到的第一历史行为数据,该第一历史行为数据用于表征第一用户执行第一信息的记录;根据第一历史行为数据进行特征构造,生成第一特征矩阵,该第一特征矩阵用于表征第一用户与第一信息之间的对应关系;根据第一预设规则将第一特征矩阵压缩,生成第二签名矩阵,该第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,该第二历史行为数据为第一历史行为数据经压缩后得到的;根据第二预设规则对第二签名矩阵进行关联度处理,生成第一模型,该第一模型用于表征第二历史行为数据间的关联度;获取第二用户的当前行为数据,将该当前行为数据输入第一模型,得到与第一用户相关联的关联数据。采用上述技术实现方案,由于服务器通过采用最小哈希的方式将第一特征矩阵进行了压缩,得到第二签名矩阵,并通过对压缩后的第二签名矩阵进行关联度处理,并且上述第一预设规则的压缩的方式在保证关联度精度的情况下的规则,因此,服务器按照上述方案进行关联度处理之后简化物品间或用户间的关联性的确定,减少了计算的工作量,保证了关联度的精度,即提高了确定关联性的时间效率和准确度。
附图说明
图1为本发明实施例提供的一种信息处理方法基于的系统架构的结构示意图;
图2为本发明实施例提供的一种信息处理方法的应用场景示意图一;
图3为本发明实施例提供的一种矩阵中的行类型示意图;
图4为本发明实施例提供的一种信息处理方法的应用场景示意图二;
图5为本发明实施例提供的一种示例性的排列组合与用户物品矩阵的对应关系示意图一;
图6为本发明实施例提供的一个示例性的行压缩完成的示意图一;
图7为本发明实施例提供的一种示例性的排列组合与用户物品矩阵的对应关系示意图二;
图8为本发明实施例提供的一个示例性的行压缩完成的示意图二;
图9为本发明实施例提供的一种示例性的排列组合与用户物品矩阵的对应关系示意图三;
图10为本发明实施例提供的一个示例性的行压缩完成的示意图三;
图11为本发明实施例提供的一个示例性的第二签名矩阵的示意图;
图12为本发明实施例提供的一种示例性的行条化划分示意图;
图13为本发明实施例提供的一种示例性的哈希桶映射示意图;
图14为本发明实施例提供的一种示例性的第二哈希函数曲线与关联数据对的概率曲线图一;
图15为本发明实施例提供的一种示例性的第二哈希函数曲线与关联数据对的概率曲线图二;
图16为本发明实施例提供的一种示例性的第二哈希函数曲线与关联数据对的概率曲线图三;
图17为本发明实施例提供的一种示例性的第二哈希函数曲线与关联数据对的概率曲线图四;
图18为本发明实施例提供的第一应用的使用场景示意图;
图19为本发明实施例提供的歌曲类应用的个性化推荐的场景示意图;
图20为本发明实施例提供的一种实验结果数据图;
图21为本发明实施例提供了一种服务器的结构示意图一;
图22为本发明实施例提供了一种服务器的结构示意图二。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
终端:指移动电子设备,也被称为行动装置(英语:Mobile device)、流动装置、手持装置(handheld device)、可穿戴设备等,是一种基于嵌入式芯片的计算设备,通常有一个小的显示屏幕,触控输入,或是小型的键盘。
模型训练:将人工选择的样本输入给机器学习系统,通过不断调整模型参数,使最终模型对样本识别的准确率达到最优。
用户物品矩阵:用来表征用户使用物品的对应信息的组合矩阵。
签名矩阵(signatute matrix):用h(A)来表示,用来表征把用户物品矩阵经过最小哈希函数压缩后的矩阵。
如图1所示为实现本发明实施例的系统架构,参照图1,示出了一个用于在终端上进行管理各种应用程序(APP,Application)(例如,游戏应用)的客户端与服务器的系统,包括:一个或多个服务器41~4n、终端设备21-25及网络31,网络31中包括路由器,网关等等网络实体,图1中并未体现。终端设备21-25通过有线网络或者无线网络与服务器41~4n进行业务产品信息交互,以便从终端21-25获取通过用户行为产生历史行为数据并传输至服务器41~4n。终端设备的类型如图1所示,包括手机(终端23)、平板电脑或PDA(终端25)、台式机(终端22)、PC机(终端24)、一体机(终端21)等类型。其中,终端设备中安装有各种用户所需的应用功能模块,比如具备娱乐功能的应用(如视频应用,音频播放应用,游戏应用,阅读软件),又如具备服务功能的应用(如地图导航应用、团购应用、拍摄应用等),再者比如设置应用等系统功能。
基于上述图1所示的硬件实体,在本发明实施例提供的信息处理方法中,网络侧服务器可以与终端进行历史行为数据等信息的交互(终端上传历史行为数据至服务器),服务器通过分析每个用户间的关联性,获取关联数据,并将关联数据推送至终端上的客户端中,使得用户在使用相关联的应用或功能时能够获取到相关联用户的一些应用推荐。
需要说明的是,本发明是基于图1提出的下列各实施例的。
实施例一
本发明实施例提供了一种信息处理方法,如图2所示,该方法可以包括:
S101、获取第一用户在终端上执行操作所得到的第一历史行为数据,该第一历史行为数据用于表征第一用户执行第一信息的记录。
需要说明的是,本发明实施例提供的一种信息处理方法的应用前提为:在用户使用终端上客户端上的各种应用或服务等的情况下。
可选的,本发明实施例中的客户端可以为手机管家等管理型应用,其中,客户端的类型或应用的类型本发明实施例不作限制。
可选的,本发明实施例中的第一信息为用户在终端上进行物品的操作的信息,其中,物品可以为各种应用、工具、榜单、服务等,具体的物品的形式本发明实施例不作限制。
需要说明的是,本发明实施例中基于用户的历史行为获取第一用户在终端上执行操作所得到的第一历史行为数据,可以理解为第一用户在终端上执行操作某一物品的第一历史记录,该第一历史记录可以为用户使用该物品的次数、使用时间、使用上述物品的用户的信息、上述物品的使用方式,该物品的分类信息、使用该物品的完成率等基于用户行为产生的历史信息的记录,本发明实施例不限制上述某一物品的第一历史记录的内容形式。
在本发明实施例中,服务器通过用户使用终端上的客户端中的物品后,该服务器基于用户的历史行为获取第一历史记录,该第一历史记录包括第一物品集合中每个物品的历史记录,该第一物品集合为用户使用过的物品所组成的集合。
需要说明的是,第一用户通过在终端上执行操作得到的第一历史行为数据是实时上报至服务器的,该服务器将每个第一用户的行为都记录保存下来存放在数据库中,以便服务器中的数据处理平台在进行关联度处理的时候获取上述第一历史行为数据。
可以理解的是,本发明实施例中的第一用户是指使用终端进行操作的任意用户,可以有多个用户,第一用户为当前使用终端之前,使用过该终端进行操作的用户的统称。
S102、根据第一历史行为数据进行特征构造,生成第一特征矩阵,该第一特征矩阵用于表征第一用户与第一信息之间的对应关系。
服务器获取第一用户在终端上执行操作所得到的第一历史行为数据之后,该服务器可以根据第一历史行为数据进行特征构造,构造出表征第一用户与第一信息之间的对应关系的第一特征矩阵。
需要说明的是,本发明实施例中的第一特征矩阵为用户物品矩阵,该用户物品矩阵用来表征第一用户消费或使用物品的第一信息,即第一用户与第一信息之间的对应关系。
示例性的,本发明实施例中的用户物品矩阵可以由用大写字母A表示,大小为m*n维,其中,n表示列数,代表用户,m为行数,代表物品,矩阵的每个元素取0或1,如果用户u消费了物品i,那么A[u][i]=1,否则,A[u][i]=0。
进一步地,第一特征矩阵的构造可以以行代表用户,以列代表物品;也可以以行代表物品,以列代表用户。关于行和列的代表的意义可以预先设置,该预先设置的原则为以列代表或以行代表待关联的两个对象,具体的实现方式本发明实施例不作限制。
S103、根据第一预设规则将第一特征矩阵压缩,生成第二签名矩阵,该第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,该第二历史行为数据为第一历史行为数据经压缩后得到的。
服务器在生成第一特征矩阵之后,由于第一用户的数量可能会有很多,因此,第一特征矩阵的维数会很大,服务器可以根据第一预设规则对第一特征矩阵,以减少第一特征矩阵维数的方式减少计算工作量,于是,该服务器可以根据第一预设规则将第一特征矩阵压缩,生成第二签名矩阵。具体的,由于第一预设规则可以依据最小哈希函数的方式计算得到,因此,服务器得到的该第二签名矩阵就用于表征第二历史行为数据对应的最小哈希值,该第二历史行为数据为第一历史行为数据经压缩后得到的。
需要说明的是,本发明实施例中的第二签名矩阵在实际中可以是签名矩阵。
示例性的,以压缩第一特征矩阵的行数为例进行说明,签名矩阵(即第二签名矩阵)用h(A)来表示,将m*n维的第一特征矩阵压缩为c*n维的第二签名矩阵,其中,c表示行数,n表示列数,m大于等于1,n大于等于1,c大于等于1、且小于等于m。
可选的,c是一个常数值,具体的数值的确定需要根据业务的实际情况来决定,一般取100-500左右,优选的,c取200。
需要说明的是,假如服务器是将第一特征矩阵的行数进行了相应的压缩,则服务器想要获取用户间的关联度或相似度就以列代表用户,以行代表物品;服务器想要获取物品间的关联度或相似度就以列代表物品,以行代表用户即可。也就是说,本发明实施例提供的一种信息处理方法可以通过不同的压缩规则(第一预设规则)来实现两列向量的相似度或两行向量的相似度。
可以理解的是,第一预设规则可以为根据最小哈希函数来压缩行数的规则,也可以为根据最小哈希函数压缩列数的规则,具体的第一预设规则的选择可以预先设置好,也可以是用户自行进行设置调整的,具体的初始设置为默认状态。
需要说明的是,本发明实施例中,服务器按照第一预设规则对第一特征矩阵进行压缩时,是在保证压缩前后不改变待关联两个对象的相似度的前提下进行的(即将第一特征矩阵压缩完之后不能破坏该第一特征矩阵原有的相似度或关联度)。
进一步地,本发明实施例中采用最小哈希函数的方式对第一特征矩阵的行数或列数进行压缩,可以保证压缩前后不改变待关联两个对象的相似度。再者,本发明实施例提供的一种信息处理方法是基于jaccard相似度作为两两行向量间或两两列向量间(待关联两个对象间)的相似的衡量标准的,由于两个向量越相似,jaccard相似度也越大,因此,本发明实施例提供的一种信息处理方法是保证jaccard相似度越高的两个向量,能成为相似对的概率越大,通过本发明实施例采用的技术方案后,服务器找到的成为相似对概率较大的相似对(两个向量)就是jaccard相似度越高的两个向量。也就是说,例如,对于列向量
Figure BDA0001070053770000091
和列向量
Figure BDA0001070053770000092
每一次的最小哈希行压缩得到的压缩前后值相等的概率恰好等于这两个向量的实际jaccard相似度,即可以保证压缩前后不改变待关联两个对象的相似度。
由于第一预设规则可以压缩行数,也可以压缩列数,下面以服务器压缩行数为例进行证明:在每一次的最小哈希映射过程中,
Figure BDA0001070053770000093
Figure BDA0001070053770000094
的结论,其中,假设任意两列
Figure BDA0001070053770000095
的相似度为s。
证明:为了理解上述结论的原因,必须要对两个集合同一列所对应的所有可能结果进行枚举,对任意两列
Figure BDA0001070053770000096
Figure BDA0001070053770000097
它们对应的相同行有下面三种可能的类型:如下图3所示:
a)、对应的行两列的值均为1,设为X类;
b)、对应的行有一列为1,另一列为0,设为Y类;
c)、对应的行两列都为0,设为Z类。
设X类行的数目为x,Y类行的数目为y,那么可知这两列向量的jaccard相似度为
Figure BDA0001070053770000098
下面来计算
Figure BDA0001070053770000099
Z类对我们的相似度计算没有影响,要想使
Figure BDA00010700537700000910
那么必须首先碰到X类,其概率为也就是从(x+y)个行中抽取x个行,也就是
Figure BDA00010700537700000911
Figure BDA00010700537700000912
成立。
可以理解的是,服务器通过使用最小哈希的方式来压缩第一特征矩阵降低了空间复杂性。
S104、根据第二预设规则对第二签名矩阵进行关联度处理,生成第一模型,该第一模型用于表征第二历史行为数据间的关联度。
服务器生成第二签名矩阵之后,由于该服务器已经将运算量庞大的第一特征矩阵的相似度的计算简化为维数较小的第二签名矩阵的相似度的计算,因此,在该服务器获取或生成第二签名矩阵之后,该服务器就可以根据第二预设规则对第二签名矩阵进行关联度处理了,具体的,本发明实施例中的关联度或相似度的处理是通过求解至少一个待关联两个对象相等的概率就可以了,于是,服务器根据第二预设规则并通过模型训练生成了表征第二历史行为数据间的关联度的第一模型。
需要说明的是,本发明实施例中的第二预设规则可以为预设行条化策略以及第二哈希函数配合使用。
具体的,服务器可以将第二签名矩阵按照预设行条化策略进行划分,根据第二哈希函数遍历每个划分好的行条,以实现通过求解至少有一个待关联两个行条相等的概率来表征该两个待关联行条的相似度,将遍历后的每个行条进行哈希映射,最后经过不断的模型训练,生成第一模型,该第一模型就为最优的求解至少有一个待关联两个行条相等的概率的模型,即表征第二历史行为数据间的关联度的第一模型。
需要说明的是,具体的服务器根据第二预设规则对第二签名矩阵进行关联度处理,生成第一模型的过程将在后续实施例中进行详细地说明。
需要说明的是,预设行条化策略是针对行数压缩而言的,若是服务器要对第一特征矩阵进行列数的压缩时,则相应的应为同样原理和处理方式的预设列条化策略对列进行同样处理。
S105、获取第二用户的当前行为数据,将该当前行为数据输入第一模型,得到与第一用户相关联的关联数据。
服务器在生成第一模型之后,该服务器就已经得到了最优的求解至少有一个待关联两个行条相等的概率的模型了,这时,若服务器获取第二用户的当前行为数据,并将该当前行为数据作为待关联两个对象的其中一个时,将该当前行为数据输入第一模型,就可以得到从第一用户对应的历史行为数据中得与当前行为数据相等的概率的输出结果,即得到了与第一用户相关联的关联数据。
实施例二
本发明实施例提供了一种信息处理方法,如图4所示,该方法可以包括:
S201、服务器获取第一用户在终端上执行操作所得到的第一历史行为数据,该第一历史行为数据用于表征第一用户执行第一信息的记录。
需要说明的是,S201中的服务器获取第一用户在终端上执行操作所得到的第一历史行为数据的描述过程与S101中的描述一致,此处不再赘述。
S202、服务器根据第一历史行为数据进行特征构造,生成第一特征矩阵,该第一特征矩阵用于表征第一用户与第一信息之间的对应关系。
需要说明的是,S202中的服务器根据第一历史行为数据进行特征构造,生成第一特征矩阵的描述过程与S102中的描述一致,此处不再赘述。
S203、服务器根据预设行数c和预设第一哈希函数将所述第一特征矩阵进行行压缩处理,生成与第一特征矩阵的列数n相同的第二签名矩阵,其中,c大于等于1、且n大于等于1。
服务器在生成第一特征矩阵之后,由于第一用户的数量可能会有很多,因此,第一特征矩阵的维数会很大,服务器可以根据第一预设规则对第一特征矩阵,以减少第一特征矩阵维数的方式减少计算工作量,于是,该服务器可以根据第一预设规则将第一特征矩阵压缩,生成第二签名矩阵。具体的,由于第一预设规则可以依据最小哈希函数的方式计算得到,因此,服务器得到的该第二签名矩阵就用于表征第二历史行为数据对应的最小哈希值,该第二历史行为数据为第一历史行为数据经压缩后得到的。
需要说明的是,本发明实施例中的第二签名矩阵在实际中可以是签名矩阵。
示例性的,本发明实施例中以压缩第一特征矩阵的行数为例进行说明,签名矩阵(即第二签名矩阵)用h(A)来表示,将m*n维的第一特征矩阵压缩为c*n维的第二签名矩阵,其中,c表示行数,n表示列数。
可选的,c是一个常数值,具体的数值的确定需要根据业务的实际情况来决定,一般取200左右。
需要说明的是,假如服务器是将第一特征矩阵的行数进行了相应的压缩,则服务器想要获取用户间的关联度或相似度就以列代表用户,以行代表物品;服务器想要获取物品间的关联度或相似度就以列代表物品,以行代表用户即可。也就是说,本发明实施例提供的一种信息处理方法可以通过不同的压缩规则(第一预设规则)来实现两列向量的相似度或两行向量的相似度。
可以理解的是,第一预设规则可以为根据最小哈希函数来压缩行数的规则,也可以为根据最小哈希函数压缩列数的规则,具体的第一预设规则的选择可以预先设置好,也可以是用户自行进行设置调整的,具体的初始设置为默认状态。
需要说明的是,本发明实施例中,服务器按照第一预设规则对第一特征矩阵进行压缩时,是在保证压缩前后不改变待关联两个对象的相似度的前提下进行的(即将第一特征矩阵压缩完之后不能破坏该第一特征矩阵原有的相似度或关联度)。
进一步地,本发明实施例中采用最小哈希函数的方式对第一特征矩阵的行数或列数进行压缩,可以保证压缩前后不改变待关联两个对象的相似度。再者,本发明实施例提供的一种信息处理方法是基于jaccard相似度作为两两行向量间或两两列向量间(待关联两个对象间)的相似的衡量标准的,由于两个向量越相似,jaccard相似度也越大,因此,本发明实施例提供的一种信息处理方法是保证jaccard相似度越高的两个向量,能成为相似对的概率越大,通过本发明实施例采用的技术方案后,服务器找到的成为相似对概率较大的相似对(两个向量)就是jaccard相似度越高的两个向量。也就是说,例如,对于列向量
Figure BDA0001070053770000121
和列向量
Figure BDA0001070053770000122
每一次的最小哈希行压缩得到的压缩前后值相等的概率恰好等于这两个向量的实际jaccard相似度,即可以保证压缩前后不改变待关联两个对象的相似度。
由于第一预设规则可以压缩行数,也可以压缩列数,下面以服务器压缩行数为例进行证明:在每一次的最小哈希映射过程中,
Figure BDA0001070053770000123
Figure BDA0001070053770000124
的结论,其中,假设任意两列
Figure BDA0001070053770000125
的相似度为s。
证明:为了理解上述结论的原因,必须要对两个集合同一列所对应的所有可能结果进行枚举,对任意两列
Figure BDA0001070053770000126
Figure BDA0001070053770000127
它们对应的相同行有下面三种可能的类型:如下图3所示:
a)、对应的行两列的值均为1,设为X类;
b)、对应的行有一列为1,另一列为0,设为Y类;
c)、对应的行两列都为0,设为Z类。
设X类行的数目为x,Y类行的数目为y,那么可知这两列向量的jaccard相似度为
Figure BDA0001070053770000131
下面来计算
Figure BDA0001070053770000132
Z类对我们的相似度计算没有影响,要想使
Figure BDA0001070053770000133
那么必须首先碰到X类,其概率为也就是从(x+y)个行中抽取x个行,也就是
Figure BDA0001070053770000134
Figure BDA0001070053770000135
成立。
下面来详细的说明一下具体的第二签名矩阵的生成方式。假设第一特征矩阵可以由用大写字母A表示,大小为m*n维,其中,n表示列数,代表用户,m为行数,代表物品,m大于等于1,n大于等于1。
服务器根据预设行数c和预设第一哈希函数将第一特征矩阵进行行压缩处理,生成与第一特征矩阵的列数n相同的第二签名矩阵,其中,c大于等于1、且n大于等于1。预设行数c为服务器将第一特征矩阵要压缩到的行数,即为第二签名矩阵的行数。
可选的,第一哈希函数可以为最小哈希函数,如公式(1)所示:
h(j)=k (1);
其中,j为第二签名矩阵的任意一列,k为最小哈希值。服务器把每一个列r映射为一个实数k。
具体的,服务器根据第一特征矩阵的行数m进行随机排列,得到m!个排列组合,其中,m大于c;服务器从m!个排列组合中选择c个排列组合;服务器根据预设第一哈希函数,将c个排列组合分别进行n列最小哈希值的求解,生成c行n列的第二签名矩阵。
详细地,服务器根据预设第一哈希函数,将c个排列组合中的第i个排列组合对应的n列中的每一列的第二历史行为数据映射为一个最小哈希值k,该最小哈希值k为第i个排列组合顺序下每一列中第一个列值为预设阈值对应的行的预设行号,其中,i大于等于1、且小于等于c,k属于1-c中的一个;当i≠c时,服务器进行第i+1个排列组合对应的每一列的最小哈希值k的求解;当i=c时,服务器将映射后的c个n列数值组合成c行n列的第二签名矩阵。
可选的,预设阈值可以为预设的一个数值,具体的由实际设定决定,本发明实施例中将使用过第一物品的第一用户在第一特征矩阵中的值设为1,因此,这里的预设阈值可以为1。
需要说明的是,本发明实施例中可以将第一特征矩阵进行行编号(预设行号),这样服务器获取的m!的排列组合就可以从行编号中体现出来。例如,行编号从1开始编辑,依次以整数顺序进行编号等。
这样的话,本发明实施例中任意一列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为存在历史行为数据(本发明实施例中可以用为1表示,其中,不存在历史行为数据的为0)的行的行编号。
示例性的,服务器生成一个从1到m的随机排列(随机排列是指每次得到的排列结果都不一样),由排列的知识可知,从1到m的随机排列共有m!(m的阶乘)种可能,服务器生成m!(随机排列)就是指从这m的阶乘种可能中任意抽取c个,并分别进行压缩等的c行n列的第二签名矩阵。如当m=3时,共有下面6种行编号(1,2,3)可能的随机排列:
(1,2,3),(1,3,2),(2,1,3),(2,3,1),(3,1,2),(3,2,1)
服务器每次的随机排列都是从上面的6种情况中任意选取,一共进行c次,也就是服务器一共选择了c个随机序列,下面来介绍每次服务器选择一个随机序列后进行行压缩的过程。
假设m=7,n=4,c=3。服务器从m!中选择的第1个排列组合与第一特征矩阵的对应关系如图5所示,由于这里第一列中,为1的行编号2,3,5,4,故最小为1的行编号为2,第二列中为1的行编号有7,6,1,最小的行编号为1,第三列中为1的行编号有2,5,4,最小的行编号为2,第四列中为1的行编号有3,7,6,1,最小的行编号为1,因此,第一列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号2,第二列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号1,第三列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号2,第四列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号1,于是,服务器压缩完成了第二签名矩阵中的第1行,如图6所示。由于i=1,因此,i≠c,于是,服务器进行第i+1(2)个排列组合对应的每一列的最小哈希值k的求解,同理第1行的求解方式,服务器从m!中选择的第2个排列组合与第一特征矩阵的对应关系如图7所示,这样,第一列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号2,第二列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号1,第三列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号4,第四列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号1,于是,服务器压缩完成了第二签名矩阵中的第2行,如图8所示。由于i=2,因此,i≠c,于是,服务器再进行第i+1(3)个排列组合对应的每一列的最小哈希值k的求解,同理第1行的求解方式,服务器从m!中选择的第3个排列组合与第一特征矩阵的对应关系如图9所示,这样,第一列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号2,第二列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号1,第三列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号1,第四列的最小哈希值(k)就是排列转换后的行排列次序下第一个列值为1的行的行编号2,于是,服务器压缩完成了第二签名矩阵中的第3行,如图10所示。此时,i=3,也就是i=c,于是,如图11所示,服务器将映射后的c个n列数值组合成c行n列的第二签名矩阵。也就是说,重复压缩c次后,服务器每一次都把矩阵压缩为1行,因此,经过c次之后就能把用户物品矩阵A(第一特征矩阵)从m*n维压缩为c*n维的签名矩阵(第二签名矩阵)了。
需要说明的是,本步骤是以服务器压缩行数为例进行说明的,本发明实施例还可以以同样的处理方式和原来将列进行压缩来实现另一种方式的压缩。本发明实施例不做限制。
可以理解的是,服务器通过使用最小哈希的方式来压缩第一特征矩阵降低了空间复杂性。
S204、服务器根据预设行条化策略对第二签名矩阵进行行条划分。
S205、服务器根据预设第二哈希函数将经过行条划分后的第二签名矩阵进行哈希映射,生成第一模型。
服务器生成第二签名矩阵之后,由于该服务器已经将运算量庞大的第一特征矩阵的相似度的计算简化为维数较小的第二签名矩阵的相似度的计算,因此,在该服务器获取或生成第二签名矩阵之后,该服务器就可以根据第二预设规则对第二签名矩阵进行关联度处理了,具体的,本发明实施例中的关联度或相似度的处理是通过求解至少一个待关联两个对象相等的概率就可以了,于是,服务器根据第二预设规则并通过模型训练生成了表征第二历史行为数据间的关联度的第一模型。
需要说明的是,本发明实施例中的第二预设规则可以为预设行条化策略以及第二哈希函数配合使用。
具体的,服务器可以将第二签名矩阵按照预设行条化策略进行划分,根据第二哈希函数遍历每个划分好的行条,以实现通过求解至少有一个待关联两个行条相等的概率来表征该两个待关联行条的相似度,将遍历后的每个行条进行哈希映射,最后经过不断的模型训练,生成第一模型,该第一模型就为最优的求解至少有一个待关联两个行条相等的概率的模型,即表征第二历史行为数据间的关联度的第一模型。
详细地,服务器根据预设行条化策略对第二签名矩阵进行行条划分,该服务器根据预设第二哈希函数将经过行条划分后的第二签名矩阵进行哈希映射,生成第一模型。
可选的,第二哈希函数为局部敏感哈希函数。
需要说明的是,本发明实施例中的预设行条化策略r*b=c的策略,如图12所示,服务器可以将为第二签名矩阵划分为b个行条,每个行条有r行构成。如图13所示,服务器根据预设第二哈希函数,遍历经过行条划分后的第二签名矩阵中每个行条,将每个行条中的每一列数值映射到一个哈希桶中。服务器将映射在同一个哈希桶中每两列数值对应的第二历史数据确定为关联数据对;服务器根据关联数据对,生成第一模型。也就是说,服务器遍历每一个行条,把每一个行条的每一列的哈希映射值映射到一个哈希桶中,对每个行条做同样的操作,对于每两列列向量,只要它们有一个行条被映射到相同的哈希桶中,那么我们就说这两个列向量是潜在的可能相似对象,若每列代表用户时,就认为两个列向量对应的两个用户(关联数据对)相似,并通过对r和b的不断的模型训练,得到可以输出关联数据对相等的概率的第一模型。
需要说明的是,预设行条化策略是针对行数压缩而言的,若是服务器要对第一特征矩阵进行列数的压缩时,则相应的应为同样原理和处理方式的预设列条化策略对列进行同样处理。
进一步地,服务器根据第一模型就是输出相关联的两个对象相等的概率的,即相似度。
下面以一个例子说明第一模型。
设用户物品矩阵A中的被压缩前两列
Figure BDA0001070053770000171
Figure BDA0001070053770000172
原来的相似度是sij,根据前面最小哈希的结论:
Figure BDA0001070053770000173
那么可以得出:
每一个行条的r行都相等的概率为sr
每一个行条中至少有一个r行不相等的概率为1-sij r
全部行条都不相等的概率为(1-sij r)b
最后,至少有一个行条相等的概率,也就是能最终被选为相似对(关联数据对)的概率为1-(1-sij r)b,即第一模型。
其中,1-(1-sij r)b是一个S型曲线,它的大小取决于sij,r和b的取值,sij表示两列之间实际的相似度(即
Figure BDA0001070053770000174
的概率,是可以算出来的),b是把签名矩阵划分的行条数,r是每个行条的行数,因此,影响第一模型的主要为r何b的值,下面给出了不同的参数r和b配置下的第二哈希函数分布图,图14、15、16、17中分别给出了压缩行数c(r*b=c)为20,50,100,200的情况下,r和b的选择对学习能力的影响(模型训练)。
由图14可知,当行压缩为20时,不管r和b取多少,其误差都比较大,从图14中可看出只有当
Figure BDA0001070053770000181
Figure BDA0001070053770000182
的实际相似度达到0.4以上时,选择r=2,b=10,才能使得这
Figure BDA0001070053770000183
Figure BDA0001070053770000184
成为关联数据对的概率达到0.8左右,但事实上,在实际工程应用中,实际的相似度很少能超过0.1,因此我们需要更多的行压缩数量。同样的,由图15和16可知,r和b的选取不能完全满足工程的实际应用,总会有漏掉的数据的情况。
而通过图17可以看到当行压缩为200时,效果已经非常好了,取r=2,b=100时,当
Figure BDA0001070053770000185
Figure BDA0001070053770000186
实际相似度仅为0.04左右,通过最小哈希和局部敏感哈希成为关联数据对的概率也能达到0.4左右,基本满足了实际的工程需求。
这里的结论就是:当服务器把用户物品矩阵通过最小哈希压缩为200行的签名矩阵后,对签名矩阵采用局部敏感哈希策略(生成第一模型的过程),取r=2,b=100,那么如果原来
Figure BDA0001070053770000187
Figure BDA0001070053770000188
的相似度是0.04,通过第一模型能被计算出来的概率是0.4,如果原来
Figure BDA0001070053770000189
Figure BDA00010700537700001810
的相似度大于0.1,能被第一模型计算出来的概率已经超过0.8。这是一个很好的概率保证了。
需要说明的是,通过图14、15、16和17可知:在合理的范围内,在c一定时,b越大,第一模型输出的概率的准确度越高。
需要说明的是,r和b的取值还要根据实际应用中相似度的接受度决定,即看实际相似度为多少时才算相似,这样从图14-17中就可以看达到实际相似度时的纵坐标的概率的多少,概率越高表征确定的关联数据对越准确。以图16为例进行说明,假设r*b=100,采用5*20两种方案时,得到下列关联数据对相等的概率:
用户a 用户b 0.7
用户a 用户c 0.5
用户a 用户d 0.45
用户a 用户e 0.4
若实际的相似度要求比较高,比如jaccard相似度(实际相似度)至少要大于0.6才叫相似,那么很明显用户a的相似列表(或关联数据)只有用户b了,于是由图16得出,与用户a关联的关联数据为:
有用户b的概率可能是90%
有用户c的概率可能是50%
有用户d的概率可能是30%
有用户e的概率可能是20%
也就是说,服务器确定出用户a的概率或是关联数据会很少,只有一个,准确率较低。
而采用2*50两种方案时,得到下列关联数据对相等的概率:
用户a 用户b 0.7
用户a 用户c 0.5
用户a 用户d 0.45
用户a 用户e 0.4
若实际的相似度要求比较高,比如jaccard相似度(实际相似度)至少要大于0.6才叫相似,那么很明显用户a的相似列表(或关联数据)有用户b、c、d、e了,于是由图16得出,与用户a关联的关联数据为:
有用户b的概率可能是99%
有用户c的概率可能是99%
有用户d的概率可能是99%
有用户e的概率可能是99%
也就是说,服务器确定出用户a的概率或是关联数据会很多,准确率较高。
S206、服务器获取第二用户的当前行为数据,将该当前行为数据输入第一模型,得到与第一用户相关联的关联数据。
S207、服务器将与当前行为数据相关联的关联数据下发给终端。
S208、终端呈现关联数据至第二用户。
服务器在生成第一模型之后,该服务器就已经得到了最优的求解至少有一个待关联两个行条相等的概率的模型了,这时,若服务器获取第二用户的当前行为数据,并将该当前行为数据作为待关联两个对象的其中一个时,将该当前行为数据输入第一模型,就可以得到从第一用户对应的历史行为数据中得与当前行为数据相等的概率的输出结果,即得到了与第一用户相关联的关联数据,并将服务器将与当前行为数据相关联的关联数据下发给终端,最后终端呈现关联数据至第二用户。
示例性的,如图18所示,本发明实施例提供的信息处理方法可直接用于第一应用中显示发现好友,服务器会根据用户过往的历史行为,如听歌历史或收藏列表来找到其他与该用户有相同兴趣爱好的用户发送给终端,该终端按相似度分数(概率)从高到低排序显示给用户进行选择。
如图19所示,服务器可以把挖掘相似用户应用到个性化推荐中,如个性电台和每日精选这两个个性化产品形态中,服务器先找到与当前用户相似的好友(第一用户),然后根据这些好友的听歌(第一物品)喜好来为该当前用户推送歌曲(终端显示给用户进行选择)。
进一步地,如图20所示为现有技术方案与本发明实施例采用的技术方案的实验数据对比:在hadoop分布式集群中,现有的预处理方案需要将近21个小时的处理时间,而本发明实施例采用的最小哈希和局部敏感哈希的自动学习方法使得时间下降为12个小时,本发明实施例相对现有技术在时间效率上提升43%。
实施例三
如图21所示,本发明实施例提供了一种服务器1,该服务器1可以包括:
获取单元10,用于获取第一用户在终端上执行操作所得到的第一历史行为数据,所述第一历史行为数据用于表征所述第一用户执行第一信息的记录。
生成单元11,用于根据所述第一历史行为数据进行特征构造,生成第一特征矩阵,所述第一特征矩阵用于表征所述第一用户与所述第一信息之间的对应关系;以及根据第一预设规则将所述第一特征矩阵压缩,生成第二签名矩阵,所述第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,所述第二历史行为数据为所述第一历史行为数据经压缩后得到的;及根据第二预设规则对所述第二签名矩阵进行关联度处理,生成第一模型,所述第一模型用于表征所述第二历史行为数据间的关联度。
所述获取单元10,还用于获取第二用户的当前行为数据。
接口单元12,用于将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据。
可选的,所述生成单元11,具体用于根据预设行数c和预设第一哈希函数将所述第一特征矩阵进行行压缩处理,生成与所述第一特征矩阵的列数n相同的所述第二签名矩阵,其中,c大于等于1、且n大于等于1。
可选的,所述服务器1还包括:排列单元13和选择单元14。
所述排列单元13,用于根据所述第一特征矩阵的行数m进行随机排列,得到m!个排列组合,其中,m大于c。
所述选择单元14,用于从所述m!个排列组合中选择c个排列组合。
所述生成单元11,还具体用于根据所述预设第一哈希函数,将所述c个排列组合分别进行n列最小哈希值的求解,生成c行n列的所述第二签名矩阵。
可选的,所述服务器还包括:计算单元15。
所述计算单元15,用于根据所述预设第一哈希函数,将c个排列组合中的第i个排列组合对应的n列中的每一列的所述第二历史行为数据映射为一个最小哈希值k,所述最小哈希值k为所述第i个排列组合顺序下每一列中第一个列值为预设阈值对应的行的预设行号,其中,i大于等于1、且小于等于c,k属于1-c中的一个;以及当i≠c时,进行第i+1个排列组合对应的所述每一列的最小哈希值k的求解。
所述生成单元11,还具体用于当i=c时,将映射后的c个n列数值组合成c行n列的所述第二签名矩阵。
可选的,所述服务器1还包括:划分单元16。
所述划分单元16,用于根据预设行条化策略对所述第二签名矩阵进行行条划分。
所述生成单元11,还具体用于根据预设第二哈希函数将经过行条划分后的所述第二签名矩阵进行哈希映射,生成所述第一模型。
可选的,所述计算单元15,还用于根据预设第二哈希函数,遍历经过行条划分后的所述第二签名矩阵中每个行条,将所述每个行条中的每一列数值映射到一个哈希桶中;将映射在同一个所述哈希桶中每两列数值对应的所述第二历史数据确定为关联数据对。
所述生成单元11,还具体用于根据所述关联数据对,生成所述第一模型。
可选的,所述服务器还包括:发送单元17。
所述发送单元17,用于所述获取第二用户的当前行为数据,将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据之后,将与所述当前行为数据相关联的所述关联数据下发。
需要说明的是,这里的服务器1与前续实施例中的服务器41~4n中的任意一个。
如图22所示,在实际应用中,上述生成单元11、接口单元12、排列单元13和选择单元14都可由位于服务器上的处理器18实现,可以为中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等实现,上述发送单元17可由发送器19实现,上述获取单元10可由接收器110实现,该服务器还包括:存储介质111,该存储介质111、发送器19、接收器110可以通过系统总线112与处理器18连接,其中,存储介质111用于存储可执行程序代码,该程序代码包括计算机操作指令,存储介质111可能包含高速RAM存储器,也可能还包括非易失性存储器,例如,至少一个磁盘存储器。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (15)

1.一种信息处理方法,其特征在于,包括:
获取第一用户在终端上执行操作所得到的第一历史行为数据,所述第一历史行为数据用于表征所述第一用户执行第一信息的记录,所述第一历史行为数据包括所述第一用户使用物品的次数、使用时间、所述物品的使用方式,所述物品的分类信息、使用所述物品的完成率;
根据所述第一历史行为数据进行特征构造,生成第一特征矩阵,所述第一特征矩阵用于表征所述第一用户与所述第一信息之间的对应关系;
根据第一预设规则将所述第一特征矩阵压缩,生成第二签名矩阵,所述第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,所述第二历史行为数据为所述第一历史行为数据经压缩后得到的;所述第一预设规则用于对所述第一特征矩阵中代表用户的行或列进行压缩;
根据第二预设规则对所述第二签名矩阵进行关联度处理,生成第一模型,所述第一模型用于表征所述第二历史行为数据间的关联度;
获取第二用户的当前行为数据,将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据;
其中,所述第二预设规则包括预设行条化策略,所述预设行条化策略中的预设行条数与预设行数通过模型训练得到;在所述第二签名矩阵的行数一定的情况下,所述第一模型输出所述关联数据的概率的准确度与预设行数成正比;所述第二签名矩阵的行数为大于或等于100,且小于或等于500的常数值;
其中,所述获取第二用户的当前行为数据,将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据之后,所述方法还包括:
将与所述当前行为数据相关联的所述关联数据下发至终端;其中,所述关联数据包含与所述第二用户有相同兴趣爱好的用户;所述终端用于通过预设推荐界面,将有相同兴趣爱好的用户向所述第二用户进行展示。
2.根据权利要求1所述的方法,其特征在于,所述根据第一预设规则将所述第一特征矩阵压缩,生成第二签名矩阵,包括:
根据预设行数c和预设第一哈希函数将所述第一特征矩阵进行行压缩处理,生成与所述第一特征矩阵的列数n相同的所述第二签名矩阵,其中,c大于等于1、且n大于等于1。
3.根据权利要求2所述的方法,其特征在于,所述根据预设行数和预设第一哈希函数将所述第一特征矩阵进行行压缩处理,生成与所述第一特征矩阵的列数相同的所述第二签名矩阵,包括:
根据所述第一特征矩阵的行数m进行随机排列,得到个排列组合,其中,m大于c;
从所述
Figure DEST_PATH_IMAGE002
个排列组合中选择c个排列组合;
根据所述预设第一哈希函数,将所述c个排列组合分别进行n列最小哈希值的求解,生成c行n列的所述第二签名矩阵。
4.根据权利要求3所述的方法,其特征在于,所述根据所述预设第一哈希函数,将所述c个排列组合分别进行n列最小哈希值的求解,生成c行n列的所述第二签名矩阵,包括:
根据所述预设第一哈希函数,将c个排列组合中的第i个排列组合对应的n列中的每一列的所述第二历史行为数据映射为一个最小哈希值k,所述最小哈希值k为所述第i个排列组合顺序下每一列中第一个列值为预设阈值对应的行的预设行号,其中,i大于等于1、且小于等于c,k属于1-c中的一个;
当i
Figure DEST_PATH_IMAGE004
时,进行第i+1个排列组合对应的所述每一列的最小哈希值k的求解;
Figure DEST_PATH_IMAGE006
时,将映射后的c个n列数值组合成c行n列的所述第二签名矩阵。
5.根据权利要求1所述的方法,其特征在于,所述根据第二预设规则对所述第二签名矩阵进行关联度处理,生成第一模型,包括:
根据预设行条化策略对所述第二签名矩阵进行行条划分;
根据预设第二哈希函数将经过行条划分后的所述第二签名矩阵进行哈希映射,生成所述第一模型。
6.根据权利要求5所述的方法,其特征在于,所述根据预设第二哈希函数将经过行条划分后的所述第二签名矩阵进行哈希映射,生成所述第一模型,包括:
根据预设第二哈希函数,遍历经过行条划分后的所述第二签名矩阵中每个行条,将所述每个行条中的每一列数值映射到一个哈希桶中;
将映射在同一个所述哈希桶中每两列数值对应的所述第二历史行为数据确定为关联数据对;
根据所述关联数据对,生成所述第一模型。
7.一种服务器,其特征在于,包括:
获取单元,用于获取第一用户在终端上执行操作所得到的第一历史行为数据,所述第一历史行为数据用于表征所述第一用户执行第一信息的记录,所述第一历史行为数据包括所述第一用户使用物品的次数、使用时间、所述物品的使用方式,所述物品的分类信息、使用所述物品的完成率;
生成单元,用于根据所述第一历史行为数据进行特征构造,生成第一特征矩阵,所述第一特征矩阵用于表征所述第一用户与所述第一信息之间的对应关系;以及根据第一预设规则将所述第一特征矩阵压缩,生成第二签名矩阵,所述第二签名矩阵用于表征第二历史行为数据对应的最小哈希值,所述第二历史行为数据为所述第一历史行为数据经压缩后得到的;及根据第二预设规则对所述第二签名矩阵进行关联度处理,生成第一模型,所述第一模型用于表征所述第二历史行为数据间的关联度;所述第二预设规则包括预设行条化策略,所述预设行条化策略中的预设行条数与预设行数通过模型训练得到;在所述第二签名矩阵的行数一定的情况下,所述第一模型输出关联数据的概率的准确度与预设行数成正比;所述第一预设规则用于对所述第一特征矩阵中代表用户的行或列进行压缩;所述第二签名矩阵的行数为大于或等于100,且小于或等于500的常数值;
所述获取单元,还用于获取第二用户的当前行为数据;
接口单元,用于将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据;将与所述当前行为数据相关联的所述关联数据下发至终端;其中,所述关联数据包含与所述第二用户有相同兴趣爱好的用户;所述终端用于通过预设推荐界面,将有相同兴趣爱好的用户向所述第二用户进行展示。
8.根据权利要求7所述的服务器,其特征在于,
所述生成单元,具体用于根据预设行数c和预设第一哈希函数将所述第一特征矩阵进行行压缩处理,生成与所述第一特征矩阵的列数n相同的所述第二签名矩阵,其中,c大于等于1、且n大于等于1。
9.根据权利要求8所述的服务器,其特征在于,所述服务器还包括:排列单元和选择单元;
所述排列单元,用于根据所述第一特征矩阵的行数m进行随机排列,得到
Figure 977047DEST_PATH_IMAGE002
个排列组合,其中,m大于c;
所述选择单元,用于从所述
Figure 549980DEST_PATH_IMAGE002
个排列组合中选择c个排列组合;
所述生成单元,还具体用于根据所述预设第一哈希函数,将所述c个排列组合分别进行n列最小哈希值的求解,生成c行n列的所述第二签名矩阵。
10.根据权利要求9所述的服务器,其特征在于,所述服务器还包括:计算单元;
所述计算单元,用于根据所述预设第一哈希函数,将c个排列组合中的第i个排列组合对应的n列中的每一列的所述第二历史行为数据映射为一个最小哈希值k,所述最小哈希值k为所述第i个排列组合顺序下每一列中第一个列值为预设阈值对应的行的预设行号,其中,i大于等于1、且小于等于c,k属于1-c中的一个;以及当i
Figure 736242DEST_PATH_IMAGE004
时,进行第i+1个排列组合对应的所述每一列的最小哈希值k的求解;
所述生成单元,还具体用于当
Figure 23129DEST_PATH_IMAGE006
时,将映射后的c个n列数值组合成c行n列的所述第二签名矩阵。
11.根据权利要求7所述的服务器,其特征在于,所述服务器还包括:划分单元;
所述划分单元,用于根据预设行条化策略对所述第二签名矩阵进行行条划分;
所述生成单元,还具体用于根据预设第二哈希函数将经过行条划分后的所述第二签名矩阵进行哈希映射,生成所述第一模型。
12.根据权利要求11所述的服务器,其特征在于,所述服务器还包括:计算单元;
所述计算单元,还用于根据预设第二哈希函数,遍历经过行条划分后的所述第二签名矩阵中每个行条,将所述每个行条中的每一列数值映射到一个哈希桶中;将映射在同一个所述哈希桶中每两列数值对应的所述第二历史行为数据确定为关联数据对;
所述生成单元,还具体用于根据所述关联数据对,生成所述第一模型。
13.根据权利要求7所述的服务器,其特征在于,所述服务器还包括:发送单元;
所述发送单元,用于所述获取第二用户的当前行为数据,将所述当前行为数据输入所述第一模型,得到与所述第一用户相关联的关联数据之后,将与所述当前行为数据相关联的所述关联数据下发。
14.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序时,实现权利要求1至6任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,存储有计算机程序,用于被处理器执行时,实现权利要求1至6任一项所述的方法。
CN201610633431.0A 2016-08-04 2016-08-04 一种信息处理方法及服务器 Active CN106227881B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610633431.0A CN106227881B (zh) 2016-08-04 2016-08-04 一种信息处理方法及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610633431.0A CN106227881B (zh) 2016-08-04 2016-08-04 一种信息处理方法及服务器

Publications (2)

Publication Number Publication Date
CN106227881A CN106227881A (zh) 2016-12-14
CN106227881B true CN106227881B (zh) 2021-11-09

Family

ID=57547861

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610633431.0A Active CN106227881B (zh) 2016-08-04 2016-08-04 一种信息处理方法及服务器

Country Status (1)

Country Link
CN (1) CN106227881B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107066602A (zh) * 2017-04-21 2017-08-18 北京搜狐新媒体信息技术有限公司 一种新闻信息推送方法及系统
CN107562533B (zh) * 2017-07-28 2021-08-06 创新先进技术有限公司 一种数据加载处理方法及装置
WO2020204904A1 (en) * 2019-04-01 2020-10-08 Google Llc Learning compressible features
CN113220931B (zh) * 2021-03-24 2023-01-03 西安交通大学 一种歌单多标签推荐方法、系统、设备和存储介质
CN116204177B (zh) * 2023-03-17 2023-10-03 湖北坤盈数字科技有限公司 一种系统业务模块开发耦合组装方法、装置及计算机设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739314B2 (en) * 2005-08-15 2010-06-15 Google Inc. Scalable user clustering based on set similarity
CN102141995B (zh) * 2010-01-29 2013-06-12 国际商业机器公司 简化并行计算系统中的传输的系统与方法
US10504156B2 (en) * 2012-10-23 2019-12-10 Apple Inc. Personalized media stations
CN103605718A (zh) * 2013-11-15 2014-02-26 南京大学 一种基于hadoop的改进的物品推荐方法
CN103902988B (zh) * 2014-04-21 2018-01-30 梁爽 一种基于Modular积图与最大团的草图形状匹配方法
CN105677661A (zh) * 2014-09-30 2016-06-15 华东师范大学 一种检测社交媒体重复数据的方法
CN104966125B (zh) * 2015-05-06 2018-07-24 同济大学 一种社交网络的物品评分及推荐方法
CN104866471B (zh) * 2015-06-05 2017-09-19 南开大学 一种基于局部敏感哈希策略的实例匹配方法

Also Published As

Publication number Publication date
CN106227881A (zh) 2016-12-14

Similar Documents

Publication Publication Date Title
CN106227881B (zh) 一种信息处理方法及服务器
TWI702844B (zh) 用戶特徵的生成方法、裝置、設備及儲存介質
CN108833458B (zh) 一种应用推荐方法、装置、介质及设备
CN108322317B (zh) 一种账号识别关联方法及服务器
CN104053023B (zh) 一种确定视频相似度的方法及装置
CN108521586B (zh) 兼顾时间上下文与隐式反馈的iptv电视节目个性化推荐方法
CN110413867B (zh) 用于内容推荐的方法及系统
CN111339436A (zh) 一种数据识别方法、装置、设备以及可读存储介质
CN104424331A (zh) 数据抽样方法及装置
US11109085B2 (en) Utilizing one hash permutation and populated-value-slot-based densification for generating audience segment trait recommendations
CN103634623A (zh) 一种用于分享目标视频的方法与设备
WO2022007626A1 (zh) 视频内容推荐方法、装置及计算机设备
CN111259195A (zh) 一种视频推荐方法、装置、电子设备及可读存储介质
CN111159563A (zh) 用户兴趣点信息的确定方法、装置、设备及存储介质
CN112100221A (zh) 一种资讯推荐方法、装置、推荐服务器及存储介质
CN108419135B (zh) 相似度确定方法、装置及电子设备
CN111400546A (zh) 一种视频召回方法、视频推荐方法及装置
CN110110172B (zh) 信息展示方法和装置
US20160259494A1 (en) System and method for controlling video thumbnail images
JP2014215685A (ja) レコメンドサーバおよびレコメンドコンテンツ決定方法
EP3871115A1 (en) Data retrieval
CN104954824A (zh) 一种用于进行视频设置的方法、设备与系统
WO2020211840A1 (zh) 物料推荐方法和系统
CN108848152B (zh) 一种对象推荐的方法及服务器
CN113283484A (zh) 改进的特征选择方法、装置及存储介质

Legal Events

Date Code Title Description
C06 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