技术领域
[0001] 本申请涉及计算机技术领域,特别是涉及一种用户匹配方法。
相关背景技术
[0002] 计算机技术和通信网络技术的快速发展,使得人们的生活方式也越来越智能化和便捷化。比如,现在人们可通过交友软件进行智能匹配,与交友软件推荐的用户进行会话或信息分享等操作,从而进行社交活动。
[0003] 然而,传统的基于交友软件所进行的用户匹配方式,通常都是通过用户的基本资料或对用户进行简单测试所得到的测试结果来进行匹配推荐,常常会产生推荐的用户并不是用户真正感兴趣的用户的情况,导致用户匹配准确率低。
具体实施方式
[0070] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0071] 图1为一个实施例中用户匹配方法的应用环境图。参照图1,该用户匹配方法应用于用户匹配系统。该用户匹配系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0072] 如图2所示,在一个实施例中,提供了一种用户匹配方法。本实施例主要以该方法应用于上述图1中的服务器120来举例说明。参照图2,该用户匹配方法具体包括如下步骤:
[0073] S202,获取与目标用户对应的目标生物特征数据和目标用户偏好数据,以及与候选用户对应的候选生物特征数据和候选用户偏好数据。
[0074] 其中,目标用户是待将其他用户与之进行匹配的用户。候选用户是用于与该目标用户进行匹配的其他用户。可以理解,目标用户和候选用户都可称作用户,在本申请中,“目标”和“候选”仅用于区分不同的用户。比如,当用户触发匹配请求时,该用户就可称作目标用户,区别于该用户的其他用户就可称作候选用户。相应地,当其他用户也触发匹配请求时,该目标用户也可是其他用户的候选用户。本申请实施例中所提及的用户包括计算机中的用户。
[0075] 目标生物特征数据是目标用户的生物特征数据。候选生物特征数据是候选用户的生物特征数据。其中,生物特征数据是人体所固有的生理特征数据或行为特征数据。用户的生物特征数据,比如,用户的声音、图像、或字迹等。用户的行为特征数据,是指用户实施某行为的特征数据,比如用户浏览网页的频次、用户经常和哪一类用户交互、或用户去过的地方等。
[0076] 目标用户偏好数据是反映目标用户的偏好的数据。候选用户偏好数据是反映候选用户的偏好的数据。其中,反映用户偏好的数据具体可以是用户对其他用户的生物特征数据的偏好评价、或基于用户历史行为数据分析得到的用户偏好数据等。
[0077] 具体地,终端可采集用户的生物特征数据、及相应的用户偏好数据并上报至服务器。当服务器收到目标用户触发的匹配请求时,确定与该目标用户不同的其他用户为候选用户。进而服务器可从本地查找与目标用户对应的目标生物特征数据和目标用户偏好数据,以及与候选用户对应的候选生物特征数据和候选用户偏好数据。
[0078] 在一个实施例中,服务器可将与该目标用户不同的所有其他用户均作为候选用户。在另一个实施例中,当用户数量非常多时,在进行目标用户和候选用户的匹配过程中的计算量也是非常大的。为减轻服务器的计算压力,在收到匹配请求时,服务器可依据该目标用户的用户信息进行初步筛选,从与该目标用户不同的其他用户中筛选出与该目标用户的用户信息相匹配的候选用户。其中,用户信息,比如用户头像、用户性别、用户年龄、或用户籍贯等信息。筛选出的候选用户,比如,是与目标用户处于同一年龄段的用户。
[0079] 在一个实施例中,当目标用户触发匹配请求时,服务器可向该目标用户所对应的终端发送信息采集指令,以采集目标用户对应的目标生物特征数据和目标用户偏好数据。
[0080] 在一个实施例中,当用户偏好数据为用户对其他用户的生物特征数据的偏好评价时,用户可通过终端进入用户交互界面,在用户交互界面呈现其他用户的生物特征测试数据。该生物特征测试数据用于测试用户的偏好。用户可通过该交互界面对生物特征测试数据进行偏好测试,终端根据用户的偏好测试结果得到用户偏好数据并上报至服务器。其中,用户可通过该交互界面对生物特征测试数据进行偏好测试,比如,用户可对生物特征测试数据进行打分,打分越高则表示越喜欢,打分越低则表示越不喜欢。
[0081] 在一个实施例中,服务器可搜集终端上报的用户历史行为数据,对用户历史行为数据进行分析,得到用户偏好数据。比如,终端可采集用户的网页浏览信息、定位信息、设备型号、或上线时间段等用户行为数据并上报至服务器,服务器可对用户访问的图像进行频次分析、用户与不同用户在社交网络中的互动、用户常去的位置等信息,以分析用户偏好的人物相貌、性格、或行为等。
[0082] S204,依据目标生物特征数据和候选用户偏好数据,确定目标用户对于候选用户的第一匹配度。
[0083] 具体地,服务器可依据目标生物特征数据和候选用户偏好数据进行匹配度计算,以确定目标用户对于候选用户的第一匹配度。其中,第一匹配度可反映出候选用户对目标用户的喜欢程度。当第一匹配度越高,则说明该候选用户越喜欢该目标用户;当第一匹配度越低,则说明该候选用户越讨厌该目标用户。
[0084] 在一个实施例中,目标生物特征数据的种类与用户偏好数据的种类相匹配,当目标生物特征数据的种类数量多于一种、且候选用户偏好数据的种类数量多于一种时,服务器可依据种类相对应的目标生物特征数据和候选用户偏好数据,确定该种类对应的匹配度。将多于一种的种类各自对应的匹配度进行加权求和,得到第一匹配度。其中,加权求和的系数可依据各种类各自的重要程度进行设置和调整。在一个实施例中,服务器可将多于一种的种类各自对应的匹配度求平均值,将平均值作为第一匹配度。可以理解,对于第二匹配度的计算方式,与第一匹配度的计算方式是相应的,在此不再赘述。
[0085] 在一个实施例中,服务器根据目标生物特征数据和候选生物特征数据各自对应的类别标签,分别确定与目标用户对应的目标标签向量、及与候选用户对应的候选标签向量;根据目标用户偏好数据和候选用户偏好数据,分别确定与目标用户对应的目标用户偏好向量、及与候选用户对应的候选用户偏好向量。所述依据所述目标生物特征数据和所述候选用户偏好数据,确定所述目标用户对于所述候选用户的第一匹配度的步骤,包括:依据所述目标标签向量和所述候选用户偏好向量间的相似度,确定所述目标用户对于所述候选用户的第一匹配度。所述依据所述候选生物特征数据和所述目标用户偏好数据,确定所述候选用户对于所述目标用户的第二匹配度的步骤,包括:依据所述候选标签向量和所述目标用户偏好向量间的相似度,确定所述候选用户对于所述目标用户的第二匹配度。
[0086] 具体地,服务器在进行匹配度计算时,可预先对目标用户及候选用户各自对应的生物特征数据进行分类,得到相应的类别标签。再根据目标用户的目标生物特征数据所对应的类别标签,确定目标用户对应的目标标签向量。根据候选用户的候选生物特征数据所对应的类别标签,确定候选用户对应的候选标签向量。
[0087] 在一个实施例中,根据目标生物特征数据和候选生物特征数据各自对应的类别标签,分别确定与目标用户对应的目标标签向量、及与候选用户对应的候选标签向量的步骤具体包括:分别对目标生物特征数据和候选生物特征数据进行分类,得到与目标用户对应的目标类别标签、及与候选用户对应的候选类别标签;根据目标类别标签,确定与目标用户对应的目标标签向量;根据候选类别标签,确定与候选用户对应的候选标签向量。
[0088] 在一个实施例中,对用户(包括目标用户和候选用户)的生物特征数据进行分类所得到的类别标签有多个,服务器可依据各类别标签出现的频次计算得到该用户对应的标签向量。
[0089] 举例说明,当生物特征数据包括用户图像时,服务器可通过预训练的图像分类模型对用户图像进行分类处理,得到各用户图像所属的类别标签。其中,类别标签比如:御姐、萝莉、甜美系、普通女、小鲜肉、大叔、型男、和普通男等。当该用户上传了多张图像,比如5张,服务器对这5张图像进行分类,得到这5张图像分别对应的类别标签为:大叔、型男、型男、型男、小鲜肉。则该用户对应的图像类别标签为:御姐(0)、萝莉(0)、甜美系(0)、普通女(0)、小鲜肉(0.2)、大叔(0.2)、型男(0.6)、普通男(0)。据此可建立该用户的标签向量:V1=[0,0,0,0,0.2,0.2,0.6,0],其中,该标签向量中每一个数字代表对应的类别标签出现的频率。
[0090] 同样地,当生物特征数据包括用户语音时,服务器可对用户语音进行分类,得到各用户语音所属的类别标签。其中,类别标签比如:御姐音、萝莉音、少女音、森女音、少年音、青叔音、暖男音和公子音等。当该用户上传了多段语音,比如10段,服务器对这10段语音进行分类,得到这10段语音中被分到“御姐音”这一类类别的语音有1段;被分到“萝莉音”这一类别的语音有7段;被分到“少女音”这一类别的语音有2段。则该用户对应的语音类别标签为:御姐音(0.1)、萝莉音(0.7)、少女音(0.2)、森女音(0.0)、少年音(0.0)、青叔音(0.0)、暖男音(0.0)和公子音(0.0)。据此可建立该用户的标签向量为V2=[0.1,0.7,0.2,0.0,0.0,0.0,0.0,0.0]。其中,该标签向量中每一个数字代表对应的类别标签出现的频率。
[0091] 可以理解,通过上述计算方式,即可计算出目标用户及候选用户分别对应的目标类别标签和候选类别标签。该目标类别标签可用户反映该目标用户的部分特征,该候选类别标签可用于反映该候选用户的部分特征。
[0092] 在一个实施例中,当服务器分别对目标生物特征数据和候选生物特征数据进行分类,得到与目标用户对应的目标类别标签、及与候选用户对应的候选类别标签后,可向目标用户对应的终端反馈目标类别标签,向候选用户对应的终端反馈候选类别标签。
[0093] 上述实施例中,通过对生物特征数据进行分类得到类别标签,根据用户对应的类别标签可以准确地确定相应的标签向量,可通过该标签向量来表示该用户。
[0094] 在一个实施例中,服务器可依据用户对不同类别的生物特征数据的喜好程度,确定与用户对应的用户偏好向量。依据目标用户对不同类别的生物特征数据的喜好程度,确定与目标用户对应的目标用户偏好向量。依据候选用户对不同类别的生物特征数据的喜好程度,确定与候选用户对应的候选用户偏好向量。
[0095] 举例说明,当用户偏好数据为用户对其他用户的生物特征数据的偏好评价时,比如,对其他用户的图像依据喜好程度进行打分,打分越高则表示越喜欢,打分越低则表示越讨厌。比如,用户对其他用户的语音进行了打分,服务器可对对应相同类别标签的语音所对应的得分求平均,该平均值作为该类别标签对应的得分。当用户未对某一类别的语音进行打分时,可将该语音对应的偏好权重设为预设值0.5(表示既不偏好也不讨厌)。假设用户语音喜好标签为:御姐音(0.8)、萝莉音(0.1)、少女音(0.8)、森女音(0.2)、少年音(0.5)、青叔音(0.5)、暖男音(0.5)和公子音(0.5)。其中维数为标签的数量,值为用户对标签偏好的权重,权重越大,表示用户对该标签越偏好,越小表示用户对该标签越不偏好。那么,该用户的语音偏好向量U=[0.8,0.1,0.8,0.2,0.5,0.5,0.5,0.5]。
[0096] 当用户偏好数据为服务器对用户历史行为数据进行分析所得到的用户偏好数据时,服务器也可据此建立相应的用户偏好向量。比如,服务器可统计近一个月内用户浏览的其他用户图像时所停留的时长。依据用户浏览其他用户图像时所停留的时长,来判断用户是否偏好该类标签。比如,停留时间越长,则表示用户越喜欢该类标签所对应的用户,则可对应较高的偏好值。这样,服务器可统计用户对属于相同类别标签的用户图像的偏好值,将对应相同类别标签的用户图像的偏好值求平均,该平均值作为该类别标签对应的偏好得分。根据各个类别标签分别对应的偏好得分建立该用户的用户偏好向量。
[0097] 进一步地,服务器可依据目标标签向量和候选用户偏好向量间的相似度,确定目标用户对于候选用户的第一匹配度;依据候选标签向量和目标用户偏好向量间的相似度,确定候选用户对于目标用户的第二匹配度。
[0098] 其中,两向量间的相似度的计算方式,具体可以是计算两向量间的“距离”,两向量间的“距离”的计算方式有多种,比如计算两向量间的欧氏距离、曼哈顿距离、切比雪夫距离、余弦距离、或汉明距离等等。本申请在此不做限定。
[0099] 在一个实施例中,服务器对目标标签向量和候选用户偏好向量中各个维度的权重值相乘后求和,得到第一匹配度。对候选标签向量和目标用户偏好向量中各个维度的权重值相乘后求和,得到第二匹配度。比如,假设目标标签向量为Va=[0.1,0.7,0.2,0.0];候选用户偏好向量为Ub=[0.8,0.1,0.8,0.2];则第一匹配度P1=Va*Ub=0.1*0.8+0.7*0.1+0.2*0.8+0.0*0.2=0.31。相应地,第二匹配度也可按上述方式计算得到。
[0100] 上述实施例中,依据与目标用户对应的目标标签向量和与候选用户对应的候选用户偏好向量间的相似度,即可快速准确地确定第一匹配度,该第一匹配度可反映出该候选用户对该目标用户的喜欢程度;依据与候选用户对应的候选标签向量和与目标用户对应的目标用户偏好向量间的相似度,即可快速准确地确定第二匹配度,该第二匹配度可反映出该目标用户对该候选用户的喜欢程度。
[0101] 在一个实施例中,服务器可分别通过预训练的机器学习模型对目标生物特征数据和候选用户偏好数据进行特征提取,对提取出来的特征进行比对,以确定目标生物特征数据和候选用户偏好数据之间的相似度或差异度。将目标生物特征数据和候选用户偏好数据分别对应的特征间的相似度作为第一匹配度,或者将目标生物特征数据和候选用户偏好数据分别对应的特征间的差异度的反值作为第一匹配度。
[0102] 举例说明,目标生物特征数据具体可以是目标用户的图像。候选用户偏好数据具体可以是候选用户偏向喜欢的类别的用户的偏好图像。服务器可通过预先训练机器学习模型,通过训练好的机器学习模型提取出目标用户的图像的第一图像特征。通过训练好的机器学习模型提取出候选用户对应的偏好图像的第二图像特征。通过计算第一图像特征和第二图像特征间的相似度,来确定目标生物特征数据和候选用户偏好数据的匹配情况,比如,当第一图像特征和第二图像特征间的相似度越大,则表示目标生物特征数据和候选用户偏好数据越匹配,第一匹配度的值就越大;当第一图像特征和第二图像特征间的相似度越小,则表示目标生物特征数据和候选用户偏好数据越不匹配,第一匹配度的值就越小。其中,图像特征间的相似度的计算方式,具体可以是计算表征图像特征的两个向量间的“距离”。
[0103] S206,依据候选生物特征数据和目标用户偏好数据,确定候选用户对于目标用户的第二匹配度。
[0104] 具体地,服务器可依据候选生物特征数据和目标用户偏好数据进行匹配度计算,以确定该候选用户对于该目标用户的第二匹配度。其中,第二匹配度可反映出该目标用户对候选用户的偏好程度。当第二匹配度越高,则说明该目标用户越喜欢该候选用户;当第二匹配度越低,则说明该目标用户越讨厌该候选用户。
[0105] 可以理解,对于步骤S206中,依据候选生物特征数据和目标用户偏好数据,确定候选用户对于目标用户的第二匹配度,其中,第二匹配度的计算方式可参考步骤S204中第一匹配度的计算方式,两者只是计算时的输入数据不同。
[0106] S208,当由第一匹配度和第二匹配度所确定的综合匹配度满足匹配条件时,将候选用户确定为目标用户对应的匹配用户。
[0107] 其中,匹配条件具体可以是综合匹配度大于或等于匹配度阈值,或者将不同候选用户对应的综合匹配度按数值大小顺序排序时,排序名次在预设名次前。具体地,服务器可根据候选用户的第一匹配度和第二匹配度,确定该候选用户的综合匹配度。判断综合匹配度是否满足匹配条件,当满足匹配条件时,则将相应的候选用户确定为该目标用户对应的匹配用户。
[0108] 在一个实施例中,当候选用户的数量为一个时,服务器可根据该目标用户对于该候选用户的第一匹配度,及该候选用户对于该目标用户的第二匹配度,计算得到综合匹配度。当综合匹配度满足匹配条件时,将该候选用户作为该目标用户的匹配用户。
[0109] 在一个实施例中,当候选用户的数量多于一个时,对于每个候选用户,服务器均可计算目标用户对于该候选用户的第一匹配度,及该候选用户对于该目标用户的第二匹配度,再依据计算得到的第一匹配度和第二匹配度,计算该候选用户和该目标用户间的综合匹配度,直到得到各个候选用户分别和目标用户间的综合匹配度。服务器从多于一个的候选用户中,筛选出与目标用户间的综合匹配度满足匹配条件的候选用户,作为该目标用户对应的匹配用户。
[0110] 在一个实施例中,步骤S208具体包括:对候选用户的第一匹配度和第二匹配度进行加权求和计算,得到综合匹配度;当综合匹配度大于或等于匹配度阈值时,将候选用户确定为目标用户对应的匹配用户。
[0111] 具体地,服务器可对候选用户的第一匹配度和第二匹配度进行加权求和计算,得到综合匹配度。再将综合匹配度大于或等于匹配度阈值的候选用户确定为该目标用户对应的匹配用户。其中,加权求和计算中的加权系数可依实际情况设置或调整。
[0112] 比如,假设第一匹配度对应第一加权系数,第二匹配度对应第二加权系数。可设置第一加权系数和第二加权系数都为0.5,以匹配到该目标用户喜欢且喜欢该目标用户的其他用户。或者,服务器也可设置第一加权系数大于第二加权系数,比如第一加权系数为0.6,第二加权系数为0.4,以匹配到更喜欢该目标用户的匹配用户。或者,服务器还可设置第一加权系数小于第二加权系数,比如第一加权系数为0.4,第二加权系数为0.6,以匹配到该目标用户更喜欢的匹配用户。
[0113] 上述实施例中,对候选用户的第一匹配度和第二匹配度进行加权求和计算,得到综合匹配度,当综合匹配度大于或等于匹配度阈值时,将候选用户确定为目标用户对应的匹配用户。这样,进行目标用户和候选用户的相互匹配,可匹配到该目标用户喜欢且喜欢该目标用户的其他用户,大大提高用户匹配的准确率。
[0114] 在一个实施例中,服务器确定的与该目标用户对应的匹配用户的数量可以是一个,也可以是多于一个。服务器可将确定的匹配用户的用户信息发送至该目标用户对应的终端。目标用户可查看相应的用户信息,或根据用户信息与匹配用户进行会话或其他交互动作。
[0115] 上述用户匹配方法,依据目标用户对应的目标生物特征数据和候选用户对应的候选用户偏好数据,可以确定该目标用户对于该候选用户的第一匹配度。相应地,依据该候选用户对应的候选生物特征数据和该目标用户对应的目标用户偏好数据,可以确定该候选用户对于该目标用户的第二匹配度。根据第一匹配度和第二匹配度,从候选用户中筛选出与目标用户匹配的匹配用户。这样,基于对不同用户的生物特征数据和各自的用户偏好数据进行相互匹配,就可使得该目标用户能匹配到该目标用户喜欢且喜欢该目标用户的其他用户,大大提高用户匹配的准确率。
[0116] 在一个实施例中,目标生物特征数据包括目标用户图像,候选生物特征数据包括候选用户图像;分别对目标生物特征数据和候选生物特征数据进行分类,得到与目标用户对应的目标类别标签、及与候选用户对应的候选类别标签的步骤具体包括:将目标用户图像和候选用户图像分别输入至预训练的图像分类模型;通过图像分类模型分别对目标用户图像和候选用户图像进行图像特征提取,并依据提取的图像特征分别确定与目标用户对应的目标类别标签、及与候选用户对应的候选类别标签。
[0117] 其中,图像分类模型是经过训练后具有分类能力的机器学习模型。机器学习英文全称为Machine Learning,简称ML。机器学习模型可通过样本学习具备特征提取与特征识别能力。图像分类模型具体可采用神经网络模型、支持向量机或者逻辑回归模型等。
[0118] 在一个实施例中,图像分类模型可以是由多层互相连接而形成的复杂网络模型,具体可包括卷积层和全连接层。其中,卷积层是卷积神经网络中的特征提取层。卷积层可以是多层,每层卷积层都有对应的卷积核,每层的卷积核可以是多个。卷积层通过卷积核对输入的用户图像进行卷积运算,提取用户图像中的图像特征。全连接层是卷积神经网络中的特征分类层,用于根据学习到的分布式特征映射关系将提取的图像特征映射到相应的类别标签。
[0119] 在一个实施例中,服务器在获取到目标用户图像和候选用户图像后,将目标用户图像和候选用户图像分别输入图像分类模型中,图像分类模型中包括的卷积层逐层对输入的用户图像进行卷积操作,直至图像分类模型中最后一层卷积层完成卷积操作,以提取图像特征,再将提取的图像特征作为全连接层的输入,得到目标用户对应的目标类别标签、及与候选用户对应的候选类别标签。
[0120] 在一个实施例中,开发人员可根据训练样本对分类模型进行训练,以得到带有模型参数的分类性能良好的图像分类模型。其中,训练样本具体可以是用户图像样本,以及与该用户图像样本对应的类别标签。具体可通过人工对用户图像样本进行标注的方式,确定各用户图像样本所对应的类别标签。
[0121] 上述实施例中,通过预训练的图像分类模型,可以准确地对目标用户图像和候选用户图像进行分类,保障了分类的准确性。
[0122] 在一个实施例中,目标生物特征数据包括目标用户语音,候选生物特征数据包括候选用户语音;分别对目标生物特征数据和候选生物特征数据进行分类,得到与目标用户对应的目标类别标签、及与候选用户对应的候选类别标签的步骤具体包括:获取与数量多于一个的类别标签所分别对应的语音特征向量样本;通过高斯混合模型分别确定与目标用户语音对应的目标语音特征向量、及与候选用户语音对应的候选语音特征向量;依据目标语音特征向量与各语音特征向量样本间的相似度,确定目标用户所对应的目标类别标签;依据候选语音特征向量与各语音特征向量样本间的相似度,确定候选用户所对应的候选类别标签。
[0123] 其中,语音特征向量样本是可以用来代表某一类别标签的语音的特征向量。高斯混合模型(Gaussian Mixed Model,GMM)是用高斯概率密度函数精确地量化事物,它是一个将事物分解为若干的基于高斯概率密度函数所形成的模型。
[0124] 具体地,服务器可通过用户语音样本及相对应的类别标签,来确定不同类别标签分别对应的语音特征向量样本。进而通过高斯混合模型分别提取与目标用户语音对应的目标语音特征向量、及与候选用户语音对应的候选语音特征向量。计算目标语音特征向量与各语音特征向量样本间的相似度,以确定该目标用户所对应的目标类别标签。计算候选语音特征向量与各语音特征向量样本间的相似度,以确定该候选用户所对应的候选类别标签。
[0125] 在一个实施例中,获取与数量多于一个的类别标签样本所分别对应的语音特征向量样本的步骤具体包括:获取用户语音样本、及用户语音样本对应的类别标签;通过高斯混合模型,确定与各用户语音样本对应的语音特征向量;将相同类别标签所对应的语音特征向量的均值向量,作为与类别标签对应的语音特征向量样本。
[0126] 具体地,服务器可获取用户语音样本、及各用户语音样本分别对应的类别标签。服务器可通过kaldi工具(一种语音识别的工具包)对用户语音样本进行处理,提取用户语音样本的特征样本。将特征样本输入至GMM模型中训练GMM模型(训练过程为无监督训练)并通过GMM模型输出语音均值超矢量。将该语音均值超矢量输入至IE提取器(i-vector Extractor,IE)中,通过该IE提取器确定与用户语音样本对应的语音特征向量,也称i-vector。将所有用户语音样本对应的i-vector构成训练集合。将训练集合中相同类别标签所对应的i-vector的均值向量,作为与该类别标签对应的语音特征向量样本。其中,将均值向量作为该类别标签对应的语音特征向量样本的过程,可以称作注册,可以理解为注册得到不同类别标签对应的语音特征向量样本。
[0127] 在一个实施例中,IE提取器可通过如下公式计算得到i-vector:M=m+Tw;其中,M是用户语音的超向量;m是高斯混合模型输出的均值超向量;T是全局差异空间矩阵;w是i-vector,也就是语音特征向量。其中,全局差异空间矩阵T,具体可基于最大似然准则,并通过EM算法(Expectation-Maximization algorithm,最大期望算法)进行迭代计算得到。
[0128] 上述实施例中,通过高斯混合模型,可确定与各用户语音样本对应的语音特征向量,再将相同类别标签所对应的语音特征向量的均值向量,作为与类别标签对应的语音特征向量样本。这样,得到的与类别标签对应的语音特征向量样本,就可作为后续对用户语音进行分类的参考,提高对语音分类的准确性。
[0129] 在一个实施例中,当服务器需对目标用户语音及候选用户语音进行分类时,可通过前述实施例中训练好的高斯混合模型来进行处理。以对目标用户语音进行处理得到目标语音特征向量为例进行说明:服务器可通过kaldi工具对目标用户语音进行处理,提取目标用户语音的特征。将提取的特征输入至训练好的GMM模型中得到目标语音均值超矢量。将目标语音均值超矢量输入至IE提取器中,通过该IE提取器确定与目标用户语音对应的目标语音特征向量,也就是i-vector。可以理解,对候选用户语音进行处理得到候选语音特征向量的过程同上述处理过程是一样的,在此不再赘述。
[0130] 进一步地,服务器计算出与目标用户语音对应的目标语音特征向量、及与候选用户语音对应的候选语音特征向量后,可分别将目标语音特征向量与各语音特征向量样本进行相似度计算,以确定目标用户所对应的目标类别标签。分别将候选语音特征向量与各语音特征向量样本进行相似度计算,以确定候选用户所对应的候选类别标签。
[0131] 在一个实施例中,依据目标语音特征向量与各语音特征向量样本间的相似度,确定目标用户所对应的目标类别标签的步骤具体包括:确定目标语音特征向量与各语音特征向量样本间的语音相似度;当语音相似度满足第一相似度差异条件时,确定语音相似度中的最大语音相似度所对应的语音特征向量样本;将确定的语音特征向量样本所对应的类别标签,作为目标用户所对应的目标类别标签。
[0132] 其中,第一相似度差异条件是指最大语音相似度和次大语音相似度的差异值大于或等于预设阈值。其中,最大语音相似度和次大语音相似度的差异值具体可以是差值或者商值等。其中,次大语音相似度是指,将目标语音特征向量与各语音特征向量样本间的语音相似度按数值大小顺序排序时,排名名次在第二的语音相似度。
[0133] 具体地,服务器可计算目标语音特征向量分别与各语音特征向量样本间的余弦距离,根据余弦距离确定目标语音特征向量分别与各语音特征向量样本间的语音相似度。或者,服务器也可通过其他方式计算目标语音特征向量分别与各语音特征向量样本间的语义相似度,在此不做限定。
[0134] 进一步地,当目标语音特征向量与各语音特征向量样本间的语义相似度所组成的相似度集合中,最大语义相似度和次大语义相似度的差异情况越大,则说明该最大语义相似度所对应的语音特征向量样本与目标语音特征向量越接近。因而可将确定的语音特征向量样本所对应的类别标签样本作为该目标用户所对应的目标类别标签。
[0135] 上述实施例中,当目标语音特征向量与各语音特征向量样本间的语音相似度的差异满足第一相似度差异条件时,将该目标用户语音分类到最大语音相似度所对应的语音特征向量样本相应的类别标签。
[0136] 在一个实施例中,该依据目标语音特征向量与各语音特征向量样本间的相似度,确定目标用户所对应的目标类别标签的步骤还包括:当语音相似度满足第二相似度差异条件时,将各语音相似度按按数值大小顺序排序;依据从排序的首个语音相似度起预设数量的语音相似度分别对应的语音特征向量样本,确定复合标签;将复合标签作为目标用户所对应的目标类别标签。
[0137] 其中,第二相似度差异条件具体可以是将各语音相似度按按数值大小顺序排序后,排名名次靠前的预设数量的语音相似度间的两两差异值部分小于预设阈值或均小于预设阈值。其中,语音相似度间的两两差异值具体可以是差值或者商值等。
[0138] 具体地,当语音相似度满足第二相似度差异条件时,说明排名名次靠前的预设数量的语音相似度比较接近,该情况下直接将目标用户语音分类到最大语音相似度所对应的语音特征向量样本相应的类别标签是不太准确的。因而服务器可依据从排序的首个语音相似度起预设数量的语音相似度分别对应的语音特征向量样本,确定复合标签,将目标用户语音分类到复合标签的类别。
[0139] 在一个实施例中,服务器可预先设置与由不同的语音特征向量样本所构成的组合相对应的复合标签。服务器可根据目标语音特征向量与各语音特征向量样本的语音相似度中,两两语音相似度间的差异值是否小于预设阈值来确定与该目标语音特征向量对应的语音特征向量样本组合,从而确定对应的复合标签。
[0140] 举例说明,当语音特征向量样本包括语音特征向量样本1、语音特征向量样本2、和语音特征向量样本3时,由不同的语音特征向量样本所组成的组合也有多种,比如由语音特征向量样本1和语音特征向量样本2所组成的组合1;语音特征向量样本1和语音特征向量样本3所组成的组合2;由语音特征向量样本2和语音特征向量样本3所组成的组合3;语音特征向量样本1、语音特征向量样本2、以及语音特征向量样本3所组成的组合4。服务器可设置组合1对应复合标签1、组合2对应复合标签2、组合3对应复合标签3、以及组合4对应复合标签4。
[0141] 服务器在计算出目标语音特征向量与各语音特征向量样本间的语音相似度时,可将各语音相似度按按数值大小顺序排序。比如,目标语音特征向量与语音特征向量样本1间的语音相似度1最大,排名第一;目标语音特征向量与语音特征向量样本2间的语音相似度2次大,排名第二;目标语音特征向量与语音特征向量样本3间的语音相似度3最小,排名第三。
[0142] 那么可各语音相似度间可存在如下多种情况:当语音相似度1和语音相似度2间的差异值小于预设阈值,其他语音相似度间的差异值大于或等于预设阈值,那么可依据语音特征向量样本1和语音特征向量样本2所组成的组合1确定相对应的复合标签为复合标签1。当语音相似度1和语音相似度2间的差异值小于预设阈值,且语音相似度2和语音相似度3间的差异值小于预设阈值,那么可依据语音特征向量样本1、语音特征向量样本2、及语音特征向量样本3所组成的组合4确定相对应的复合标签为复合标签4。
[0143] 下面以实际应用中的具体情况进行举例说明,当目标用户语音与少女音的语音相似度为最大语音相似度,目标用户语音与御姐音间的语音相似度为次大语音相似度。而最大语音相似度和次大语音相似度很接近,差异值小于预设阈值。此时,无论将该用户语音分类到少女音还是分类到御姐音都是不够准确的。那么可通过设置一种复合音,比如森女音,作为少女音和御姐音的合成音类别,也就是复合标签。可将该目标用户语音分类到该复合标签类别中。
[0144] 上述实施例中,当目标语音特征向量与各语音特征向量样本间的语音相似度的差异满足第二相似度差异条件时,将各语音相似度按数值大小顺序排序,依据从排序的首个语音相似度起预设数量的语音相似度分别对应的语音特征向量样本,确定复合标签,将复合标签作为目标用户所对应的目标类别标签。这样,在实际分类操作中可大大提高语音分类的准确性,并增加了语音分类的适用性,贴合实际情况。
[0145] 关于依据候选语音特征向量与各语音特征向量样本间的相似度,确定候选用户所对应的候选类别标签步骤的具体处理过程,可参考前述实施例中依据目标语音特征向量与各语音特征向量样本间的相似度,确定目标用户所对应的目标类别标签的具体处理过程,在此不再赘述。
[0146] 参考图3,图3为一个实施例中对用户语音进行分类的处理框架图。如图3所示,该语音分类处理共分为训练、注册和测试三个阶段。其中虚线箭头部分表示训练阶段,首先可通过kaldi工具提取用户语音样本的特征(也称训练特征),然后通过训练特征训练GMM模型,接着训练i-vector提取器,并通过训练好的GMM模型和IE提取器输出用户语音样本对应的i-vector,输出训练集的的i-vector。加粗的实线箭头部分为注册阶段,将相同类别标签所对应的i-vector的均值向量,作为与该类别标签对应的语音特征向量样本,也就是图3中的标准音色1、标准音色2和标准音色3。标准音色1、标准音色2和标准音色3分别对应不同的类别标签。
[0147] 黑色未加粗实线箭头部分为测试部分也就是分类部分,首先通过kaldi工具提取用户数据的特征(也称作测试特征),再将提取好的特征通过训练好的GMM模型和IE提取器,得到测试集的i-vector,将测试集的i-vector与三个注册好的标准音色分别进行相似度计算(比如求余弦距离),根据相似度确定相应的匹配分值,匹配分值最高的标准音色所对应的类别标签即为该句测试语音的类别标签。
[0148] 上述实施例中,通过高斯混合模型分别确定与目标用户语音对应的目标语音特征向量、及与候选用户语音对应的候选语音特征向量,在通过将目标语音特征向量、候选语音特征向量分别与各语音特征向量样本进行相似度计算,即可准确地对用户语音进行分类,方便快捷。
[0149] 在一个实施例中,目标生物特征数据包括目标用户图像和目标用户语音;候选生物特征数据包括候选用户图像和候选用户语音;目标用户偏好数据包括目标用户图像偏好数据和目标用户语音偏好数据;候选用户偏好数据包括候选用户图像偏好数据和候选用户语音偏好数据。依据目标生物特征数据和候选用户偏好数据,确定目标用户对于候选用户的第一匹配度的步骤具体包括:依据目标用户图像和候选用户图像偏好数据,确定目标用户对于候选用户的第一图像匹配度;依据目标用户语音和候选用户语音偏好数据,确定目标用户对于候选用户的第一语音匹配度;将第一图像匹配度和第一语音匹配度进行加权求和计算,得到目标用户对于候选用户的第一匹配度。依据候选生物特征数据和目标用户偏好数据,确定候选用户对于目标用户的第二匹配度的步骤具体包括:依据候选用户图像和目标用户图像偏好数据,确定候选用户对于目标用户的第二图像匹配度;依据候选用户语音和目标用户语音偏好数据,确定候选用户对于目标用户的第二语音匹配度;将第二图像匹配度和第二语音匹配度进行加权求和计算,得到候选对于目标用户的第二匹配度。
[0150] 在一个实施例中,生物特征数据具体包括用户图像和用户语音,相应的,用户偏好数据具体包括用户图像偏好数据和用户语音偏好数据。这样,在计算第一匹配时,可分别计算第一图像匹配度和第一语音匹配度,再对第一图像匹配度和第一语音匹配度进行加权求和,得到第一匹配度。在计算第二匹配时,可分别计算第二图像匹配度和第二语音匹配度,再对第二图像匹配度和第二语音匹配度进行加权求和,得到第二匹配度。其中,加权求和的权重系数可依据用户图像和用户声音的偏重程度进行设置和调整,在此不做限定。
[0151] 在一个实施例中,服务器可直接将第一图像匹配度和第一语音匹配度的均值作为第一匹配度;将第二图像匹配度和第二语音匹配度的均值作为第二匹配度。
[0152] 举例说明,设第一图像匹配度Pa1,第一语音匹配度Pb1。则可计算第一匹配度P1=(Pa1+Pb1)/2。相应的,设第二图像匹配度Pa2,第二语音匹配度Pb2。则可计算第二匹配度P2=(Pa2+Pb2)/2。
[0153] 在一个实施例中,服务器可根据目标用户与候选用户间的第一匹配度和第二匹配,计算得到两个用户间的综合匹配度。比如,综合匹配度P3=(P1+P2)/2。从而服务器可依据综合匹配度,从多于一个的候选用户中筛选出与目标用户匹配的匹配用户。
[0154] 在一个实施例中,生物特征数据还包括用户社交打卡数据,用户偏好数据还包括用户偏好打卡数据。其中,用户社交打卡数据具体可以是用户去过某个地方后完成的地理位置打卡行为。用户偏好打卡数据具体可以是用户对不同的打卡位置的偏好数据。这样,服务器还可根据目标用户对应的目标用户社交打卡数据和候选用户对应的候选用户偏好打卡数据,确定目标用户对候选用户的第一打卡匹配度。根据候选用户对应的候选用户社交打卡数据和目标用户对应的目标用户偏好打卡数据,确定候选用户对目标用户的第二打卡匹配度。服务器将第一图像匹配度、第一语音匹配度、第一打卡匹配度进行加权求和计算,得到目标用户对于候选用户的第一匹配度。服务器将第二图像匹配度、第二语音匹配度、第二打卡匹配度进行加权求和计算,得到候选用户对于目标用户的第二匹配度。
[0155] 上述实施例中,依据第一图像匹配度和第一语音匹配度,确定目标用户对于候选用户的第一匹配度。依据第二图像匹配度和第二语音匹配度,确定候选对于目标用户的第二匹配度。这样融合用户图像和用户声音的匹配情况,可使得依据第一匹配度和第二匹配度所确定的综合匹配度更能准确地反映目标用户和候选用户的匹配情况,大大提高了用户匹配的准确性。
[0156] 如图4所示,在一个实施例中,提供了一种用户匹配方法。该用户匹配方法具体可应用于上述图1中的终端110或者服务器120,下面主要以该方法应用于上述图1中的终端110来举例说明。参照图4,该用户匹配方法具体包括如下步骤:
[0157] S402,获取采集的与目标用户对应的生物特征数据。
[0158] 具体地,当终端检测到生物特征数据采集指令时,可调用生物特征采集设备采集目标用户对应的生物特征数据。终端可将采集的生物特征数据存储至本地,当需要时再获取目标用户的生物特征数据。
[0159] 在一个实施例中,当需采集的生物特征数据包括目标用户的用户图像时,终端可调用摄像头采集目标用户的用户图像,或者从本地相册中选择用户图像。当需采集的生物特征数据包括目标用户的用户语音时,终端可调用声音采集装置录制目标用户的用户语音,或者从本地音频数据中选择用户语音。
[0160] S404,当产生用户匹配指令时,获取与目标用户匹配的匹配用户的用户信息;匹配用户所对应的用户偏好数据与目标用户所对应的生物特征数据匹配,匹配用户所对应的生物特征数据与目标用户所对应的用户偏好数据匹配。
[0161] 其中,用户匹配指令是用于触发用户匹配动作的指令。用户信息是匹配用户的身份信息,具体可以是用户图像、或用户名称等。具体地,当在终端产生用户匹配指令时,终端可将该匹配指令发送至服务器。使得服务器依据候选用户所对应的用户偏好数据与目标用户所对应的生物特征数据进行匹配,依据候选用户所对应的生物特征数据与目标用户所对应的用户偏好数据进行匹配,从而从候选用户中筛选出与目标用户匹配的匹配用户。终端可接收服务器反馈的匹配用户的用户信息。
[0162] 在一个实施例中,当终端产生用户匹配指令时,终端可将目标用户对应的生物特征数据(也称目标生物特征数据)上报至服务器。服务器接收到目标生物特征数据后,可获取目标用户对应的用户偏好数据(也称目标用户偏好数据)、候选用户对应的生物特征数据(也称候选生物特征数据)、候选用户对应的用户偏好数据(也称候选用户偏好数据)。进一步地,服务器可依据目标生物特征数据和候选用户偏好数据,确定目标用户对于候选用户的第一匹配度;依据候选生物特征数据和目标用户偏好数据,确定候选用户对于目标用户的第二匹配度;当由候选用户的第一匹配度和第二匹配度所确定的综合匹配度满足匹配条件时,将候选用户确定为目标用户对应的匹配用户。关于上述服务器对候选用户和目标用户进行匹配的详细过程,可参考前述实施例中的描述,在此不再赘述。
[0163] 在一个实施例中,该用户匹配方法还包括获取用户偏好数据的步骤,该步骤具体包:进入用户交互界面,在用户交互界面呈现生物特征测试数据;获取目标用户对生物特征测试数据进行偏好测试所得到的用户偏好数据。
[0164] 具体地,终端可在用户交互界面呈现其他用户的生物特征测试数据。该生物特征测试数据用于测试目标用户的偏好。目标用户可通过该交互界面对生物特征测试数据进行偏好测试,终端根据用户的偏好测试结果得到用户偏好数据并上报至服务器。
[0165] 在一个实施例中,用户对生物特征测试数据进偏好测试具体可以是对其他用户的生物特征测试数据进行打分,比如非常喜欢的打五颗星,非常不喜欢的打一颗星,不喜欢也不讨厌的打2颗星等。这样,终端可根据用户的打分行为,将用户对生物特征数据的偏好情况进行量化,比如,五颗星对应1分,四颗星对应0.8分,三颗星对应0.6分,两颗星对应0.4分,一颗星对应0.2分等。
[0166] 参考图5(a)和图5(b),图5(a)为一个实施例中目标用户对测试用户图像进行偏好测试的界面示意图。在交互界面中,可展示有测试用户图像。该测试用户图像是其他用户的用户图像。目标用户可选中表示“爱心”的图案,选中的“爱心”图案的数量,可对应目标用户对该测试用户图像进行打分的分值,数量越多,则分值越大。在该交互界面中,测试用户图像的下方还可显示其他用户对该测试用户图像进行打分后该测试用户图像的得分,比如7.2分。可以理解,该测试用户图像是不同于目标用户的其他用户的用户图像,相应的,目标用户的用户图像可以作为其他用户的测试用户图像。
[0167] 图5(b)为一个实施例中目标用户对测试用户语音进行偏好测试的界面示意图。在交互界面中,可展示用于播放测试用户语音的播放控件。目标用户可点击该播放控件收听测试用户语音。目标用户可选中表示“爱心”的图案,选中的“爱心”图案的数量,可对应目标用户对该测试用户语音进行打分的分值,,数量越多,则分值越大。在该交互界面中,测试用户语音的下方还可显示其他用户对该测试用户语音进行打分后该测试用户语音的得分,比如9.0分。可以理解,该测试用户语音是不同于目标用户的其他用户的用户语音,相应的,目标用户的用户语音可以作为其他用户的测试用户语音。
[0168] 上述实施例中,可在交互界面获取目标用户对生物特征测试数据进行偏好测试所得到的用户偏好数据,后续在进行用户匹配的过程中,可以基于用户的直观感受,分析用户偏好,进而基于用户的实际情况和用户偏好情况进行相互匹配,大大提高了用户匹配的准确性。
[0169] 在一个实施例中,服务器可搜集终端上报的用户历史行为数据,对用户历史行为数据进行分析,得到用户偏好数据。比如,终端可采集用户的网页浏览信息、定位信息、设备型号、或上线时间段等用户行为数据并上报至服务器,服务器可对用户访问的图像进行频次分析、用户与不同用户在社交网络中的互动、用户常去的位置等信息,以分析用户偏好的人物相貌、性格、或行为等。
[0170] 在一个实施例中,生物特征数据包括用户图像和用户声音;匹配用户所对应的用户偏好数据与目标用户所对应的生物特征数据匹配,包括:匹配用户所对应的用户图像偏好数据与目标用户所对应的用户图像匹配、及匹配用户所对应的用户声音偏好数据与目标用户所对应的用户声音匹配。匹配用户所对应的生物特征数据与目标用户所对应的用户偏好数据匹配,包括:匹配用户所对应的用户图像与目标用户所对应的用户图像偏好数据匹配、及匹配用户所对应的用户声音与目标用户所对应的用户声音偏好数据匹配。
[0171] 同样地,关于服务器如何实现匹配用户所对应的用户图像偏好数据与目标用户所对应的用户图像匹配、及匹配用户所对应的用户声音偏好数据与目标用户所对应的用户声音匹配。以及服务器如何实现匹配用户所对应的用户图像与目标用户所对应的用户图像偏好数据匹配、及匹配用户所对应的用户声音与目标用户所对应的用户声音偏好数据匹配的步骤的详细内容,可参考前述实施例中服务器计算第一图像匹配、计算第一语音匹配度、计算第二图像匹配、及计算第二语音匹配度等内容的描述,在此不再赘述。
[0172] S406,输出匹配用户的用户信息。
[0173] 具体地,终端在获取服务器反馈的匹配用户的用户信息后,输出该用户信息。在一个实施例中,服务器反馈的匹配用户的数量可以是一个也可以多于一个。当服务器反馈的匹配用户的数量多于一个时,终端可根据各匹配用户和目标用户的匹配度的不同在不同的区域展示匹配用户的用户信息。在一个实施例中,终端可突出展示与目标用户的匹配度最高的匹配用户的用户信息,以向目标用户推荐匹配用户。
[0174] 上述用户匹配方法,获取采集的与目标用户对应的生物特征数据,当产生用户匹配指令时,获取与该目标用户匹配的匹配用户的用户信息并输出。其中,该匹配用户所对应的用户偏好数据与该目标用户所对应的生物特征数据匹配,该匹配用户所对应的生物特征数据与该目标用户所对应的用户偏好数据匹配。这样,基于对用户的生物特征数据和用户偏好数据进行相互匹配,就可使得该目标用户能匹配到该目标用户喜欢且喜欢该目标用户的其他用户,大大提高用户匹配的准确率。
[0175] 在一个实施例中,步骤S402,也就是获取采集的与目标用户对应的生物特征数据的步骤具体包括以下步骤:
[0176] S602,进入用户交互界面,在用户交互界面展示生物特征数据采集界面的开启入口。
[0177] 其中,交互界面是用户与计算机设备或其他用户进行交互的界面。开启入口是触发进入生物特征数据采集界面的入口,开启入口具体可以是一个虚拟图标或虚拟按键等。具体地,用户可通过终端进入用户交互界面,在用户交互界面展示生物特征数据采集界面的开启入口。
[0178] 参考图7,图7为一个实施例中用户交互界面的界面示意图。如图7所示,用户交互界面中展示有生物特征数据采集界面的开启入口701。当待采集的生物特征数据为用户图像时,该开启入口可展示为“相机”虚拟图标;当待采集的生物特征数据为用户语音时,该开启入口可展示为“录音”虚拟图标。
[0179] S604,当获取对于开启入口的开启指令时,展示生物特征数据采集界面。
[0180] 具体地,当终端检测到对于开启入口的开启指令时,可从交互界面跳转至生物特征数据采集界面。对于开启入口的开启指令具体可以是当发生作用于该开启入口的预设操作时触发生成的。
[0181] S606,当发生对于生物特征数据采集界面的触发操作时,调用相应的生物特征采集设备采集目标用户的生物特征数据。
[0182] 触发操作是作用于生物特征数据采集界面的预设操作,检测到触发操作将触发调用相应的生物特征采集设备采集目标用户的生物特征数据。触发操作具体可以是触摸操作、光标操作、按键操作或者语音操作。其中,触摸操作可以是触摸点击操作、触摸按压操作或者触摸滑动操作,触摸操作可以是单点触摸操作或者多点触摸操作;光标操作可以是控制光标进行点击的操作或者控制光标进行按压的操作;按键操作可以是虚拟按键操作或者实体按键操作等。
[0183] 具体地,当发生对于生物特征数据采集界面的触发操作时,终端可调用相应的生物特征采集设备采集目标用户的生物特征数据。
[0184] 下面以采集用户图像和采集用户语音来分别举例说明生物特征数据的采集过程。对于用户图像的采集,参考图8(a),图8(a)为一个实施例中用户图像采集界面的界面示意图。当图7中的开启入口为“相机”虚拟图标时,用户可通过点击该“相机”虚拟图标进入图8(a)所示的用户图像采集界面。在用户图像采集界面中,用户可点击“+”图标801,以进入如图8(b)所示的用户图像显示列表。如图8(b)所示,该用户目前并未上传任何用户图像,因而该用户图像显示列表为空。用户可参照8(b)用户图像显示列表界面中的提示语“上传你的照片,看看有多少人会为你心动,记得要单人照+正脸噢”上传用户图像。8(b)中还示出有“照片示例”的超链接,用户可点击该超链接以查阅照片示例。当用户点击图8(b)中的“+”图标802时,可从相册中选择用户图像,或通过摄像头采集用户图像并上传。参考图8(c),图8(c)为一个实施例中用户上传用户头像的界面示意图。当用户点击图8(c)中的取消图标803时,可取消上传该图像,重新进入用户图像采集的流程。用户可通过图8(c)下方的图像评价区域804对自己的图像进行打分,爱心越多表示越喜欢。参考图8(d),图8(d)为一个实施例中完成用户图像上传后的用户图像显示列表的界面示意图。如图8(d)所示,当用户上传了用户图像后,用户图像列表中就可展示用户历史上传的用户图像。在用户图像的右侧可显示其他用户对该用户图像的打分情况。比如“自己评分:0.0”、“颜究员评分:未有人评分”、及“颜究员:0人”。在该图8(d)所示的界面中,仍然可显示添加图像的入口,用户可通过该入口进入添加用户图像的流程。用户还可点击“预览照片”的超链接,以预览用户上传的历史用户图像。
[0185] 对于用户语音的采集,对于用户图像的采集,参考图9(a),图9(a)为一个实施例中用户语音采集界面的界面示意图。当图7中的开启入口为“录音”虚拟图标时,用户可通过点击该“录音”虚拟图标进入图9(a)所示的用户语音采集界面。在用户语音采集界面中,用户可点击“录音”图标901,以进行语音录制。参考图9(b),图9(b)为一个实施例中用户进行语音录制的界面示意图。如图9(b),界面中可显示需录制成语音的文本,用户可参考该文本进行语音录制。用户可点击或按压录音控件902,以调用本地的声音采集设备采集用户语音。当用户松开语音控件902时可完成语音录制,进入图9(c)。图9(c)为一个实施例中用户语音录制完成的界面示意图,在图9(c)的下方显示播放控件903、重录控件904和完成控件905。
用户可点击播放控件903试听刚刚录制的语音数据,点击重录控件返回至9(b)中重新录制语音数据。用户可点击完成控件结束本次语音录制。参考图9(d),图9(d)为一个实施例中完成语音数据上传后的用户语音显示列表界面示意图。如图9(d)所示,当用户上传了用户语音后,用户语音列表中就可展示用户历史上传的用户语音。在用户语音数据的右侧可显示其他用户对该用户语音的打分情况。比如“声音心动值:还没有人心动”、“心动人数:0人”。
在该图9(d)所示的界面中,仍然可显示添加语音的入口,用户可通过该入口进入添加用户语音的流程。图9(d)中还可显示该用户语音对应的类别标签,比如“少年音”。
[0186] 参考图10(a)和图10(b),图10(a)为一个实施例中用户语音分析的界面示意图;图10(b)为一个实施例中语音鉴别结果呈现的示意图。如图10(a)所示,当终端将用户语音上报至服务器,服务器可对用户语音进行分析处理,得到用于语音的类别。在这个过程中,终端就可展示用户语音分析的界面示意图,以等待语音鉴别结果的回传。当终端接收到语音鉴别结果时,跳转至图10(b)所示的界面,呈现语音分类的结果,比如显示该用户语音对应的类别标签为“少年音”。
[0187] 上述实施例中,通过在交互界面中获取对于开启入口的开启指令,以进行生物特征数据采集界面,从而触发生物特征采集设备采集目标用户的生物特征数据,可以方便快捷地采集目标用户的生物特征数据。
[0188] 在一个实施例中,步骤S404,也就是当产生用户匹配指令时,获取与目标用户匹配的匹配用户的用户信息的步骤具体包括:进入用户匹配触发界面,在用户匹配触发界面展示用于触发用户匹配的操作入口;当产生对应于操作入口的触发操作时,发起与目标用户对应的匹配请求;匹配请求,用于触发依据目标用户所对应的目标生物特征数据与候选用户所对应的候选用户偏好数据的第一匹配度,及目标用户所对应的目标用户偏好数据与候选用户所对应的候选生物特征数据的第二匹配度,筛选与目标用户匹配的匹配用户。步骤S406,也就是输出匹配用户的用户信息的步骤包括:进入匹配结果展示界面,在匹配结果展示界面显示匹配用户的用户信息。
[0189] 具体地,参考图11(a),图11(a)为一个实施例中用户匹配触发界面的界面示意图。终端可进入用户匹配触发界面,在该用户匹配触发界面展示用于触发用户匹配的操作入口。操作入口比如图11(a)中的“开始匹配”控件1101。当产生对应于操作入口的触发操作时,终端可向服务器发起与目标用户对应的匹配请求。该匹配请求,用于指示服务器依据目标用户所对应的目标生物特征数据与候选用户所对应的候选用户偏好数据的第一匹配度,及目标用户所对应的目标用户偏好数据与候选用户所对应的候选生物特征数据的第二匹配度,筛选与目标用户匹配的匹配用户。
[0190] 参考图11(b),图11(b)为一个实施例中终端发起与目标用户对应的匹配请求后等待匹配结果的界面示意图。当用户点击图11(a)中的“开始匹配”控件1101后,终端可跳转至图11(b)以等待匹配结果的回传。
[0191] 参考图11(c),图11(c)为一个实施例中匹配结果展示界面的界面示意图。当终端接收到服务器反馈的匹配用户的用户信息后,可在匹配结果展示界面中展示匹配用户的用户信息。参考图11(c),在匹配结果展示界面的中间位置展示的是与目标用户匹配度最高的匹配用户的用户信息,在该匹配用户的用户信息的周围展示其他的匹配用户的用户信息。
[0192] 上述实施例中,通过在用户匹配触发界面展示用于触发用户匹配的操作入口,可以方便快捷地检测对于操作入口的触发操作,以及时的发起匹配请求,提高了用户匹配的操作效率。
[0193] 在一个实施例中,该用户匹配方法还包括当发生对于用户信息的触发操作时,跳转至目标用户与匹配用户进行会话的会话界面的步骤。具体地,终端可检测发生于匹配结果展示界面中的触发操作,当发生对于用户信息的触发操作时,终端可跳转至目标用户与该匹配用户进行会话的会话界面。从而用户可在跳转至的会话界面与相匹配的匹配用户进行会话。
[0194] 上述实施例中,当发生对于用户信息的触发操作时,可直接跳转至目标用户与匹配用户进行会话的会话界面,这样,用户就可直接和系统推荐的匹配用户进行会话,提高了会话效率。
[0195] 在一个实施例中,该用户匹配方法还包括用户评价报告的展示步骤,该步骤具体包括:进入用户评价报告查阅界面;当发生作用于用户评价报告查阅界面的触发操作时,发起用户评价报告查阅请求;用户评价报告查阅请求用于触发依据目标用户对应的生物特征数据和用户偏好数据所生成的用户评价报告;展示用户评价报告。
[0196] 具体地,终端可进入用户评价报告查阅界面,当发生作用于用户评价报告查阅界面的触发操作时,发起用户评价报告查阅请求。终端或者服务器可依据目标用户对应的生物特征数据和用户偏好数据生成用户评价报告。终端展示用户评价报告。
[0197] 在一个实施例中,终端或服务器可对目标用户对应的生物特征数据和用户偏好数据、用户历史行为数据、及用户信息等进行分析,从而生成用户评价报告。
[0198] 参考图12,图12为一个实施例中用户评价报告的内容示意图。如图12所示,该用户评价报告具体可包括与用户相关的关键词,包括其他用户对该用户的图像和语音的评价情况,包括对该用户感兴趣的用户的年龄分布、星座分布、地理位置分布、行业领域分布、及学历分布等。该用户评价报告还可包括基于上述信息分析得到的对于该用户的交友建议等。
[0199] 上述实施例中,提供户评价报告查阅界面,用户可查阅自己的专属评价报告,可以更好地认识自己,提高了用户在匹配交友过程中的趣味性和多样性。
[0200] 参考图13,图13为一个具体实施例中用户匹配方法的时序图。如图13所示,终端上运行有交友软件客户端,用户可通过该客户端触发拍摄指令或语音录制指令,该客户端可选择照片或录制声音并上传至服务器。服务器可对上传的照片和声音分别进行分类处理,得到相应的类别标签。服务器可向客户端反馈该照片或声音分别所属的类别标签。用户可通过该客户端对其他用户上传的照片或声音进行打分,客户端将用户的打分数据上传。服务器分析用户的打分数据,得到能表示用户偏好的用户偏好向量。也就是通过用户的打分行为,对用户喜欢的类别标签所对应维度的权重值增大,反之减少权重值。其他喜欢该用户类别标签的用户,也会增加相应维度的权重值,反之减少权重值。用户可通过客户端触发匹配请求,客户端发送匹配请求至服务器。服务器根据用户喜欢的类别标签对应的权重值,和习惯该用户的类别标签对应的权重值进行匹配度计算,得到匹配用户,并推送给用户。
[0201] 图2为一个实施例中用户匹配方法的流程示意图。应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0202] 如图14所示,在一个实施例中,提供了用户匹配装置1400,包括获取模块1401、确定模块1402、和匹配模块1403。其中:
[0203] 获取模块1401,用于获取与目标用户对应的目标生物特征数据和目标用户偏好数据,以及与候选用户对应的候选生物特征数据和候选用户偏好数据。
[0204] 确定模块1402,用于依据目标生物特征数据和候选用户偏好数据,确定目标用户对于候选用户的第一匹配度。
[0205] 确定模块1402还用于依据候选生物特征数据和目标用户偏好数据,确定候选用户对于目标用户的第二匹配度。
[0206] 匹配模块1403,用于当由第一匹配度和第二匹配度所确定的综合匹配度满足匹配条件时,将候选用户确定为目标用户对应的匹配用户。
[0207] 在一个实施例中,确定模块1402还用于根据目标生物特征数据和候选生物特征数据各自对应的类别标签,分别确定与目标用户对应的目标标签向量、及与候选用户对应的候选标签向量;根据目标用户偏好数据和候选用户偏好数据,分别确定与目标用户对应的目标用户偏好向量、及与候选用户对应的候选用户偏好向量。确定模块1402还用于依据目标标签向量和候选用户偏好向量间的相似度,确定目标用户对于候选用户的第一匹配度;依据候选标签向量和目标用户偏好向量间的相似度,确定候选用户对于目标用户的第二匹配度。
[0208] 在一个实施例中,确定模块1402还用于分别对目标生物特征数据和候选生物特征数据进行分类,得到与目标用户对应的目标类别标签、及与候选用户对应的候选类别标签;根据目标类别标签,确定与目标用户对应的目标标签向量;根据候选类别标签,确定与候选用户对应的候选标签向量。
[0209] 在一个实施例中,目标生物特征数据包括目标用户图像,候选生物特征数据包括候选用户图像;确定模块1402还用于将目标用户图像和候选用户图像分别输入至预训练的图像分类模型;通过图像分类模型分别对目标用户图像和候选用户图像进行图像特征提取,并依据提取的图像特征分别确定与目标用户对应的目标类别标签、及与候选用户对应的候选类别标签。
[0210] 在一个实施例中,目标生物特征数据包括目标用户语音,候选生物特征数据包括候选用户语音;确定模块1402还用于获取与数量多于一个的类别标签所分别对应的语音特征向量样本;通过高斯混合模型分别确定与目标用户语音对应的目标语音特征向量、及与候选用户语音对应的候选语音特征向量;依据目标语音特征向量与各语音特征向量样本间的相似度,确定目标用户所对应的目标类别标签;依据候选语音特征向量与各语音特征向量样本间的相似度,确定候选用户所对应的候选类别标签。
[0211] 在一个实施例中,确定模块1402还用于获取用户语音样本、及用户语音样本对应的类别标签;通过高斯混合模型,确定与各用户语音样本对应的语音特征向量;将相同类别标签所对应的语音特征向量的均值向量,作为与类别标签对应的语音特征向量样本。
[0212] 在一个实施例中,确定模块1402还用于确定目标语音特征向量与各语音特征向量样本间的语音相似度;当语音相似度满足第一相似度差异条件时,确定语音相似度中的最大语音相似度所对应的语音特征向量样本;将确定的语音特征向量样本所对应的类别标签,作为目标用户所对应的目标类别标签。
[0213] 在一个实施例中,确定模块1402还用于当语音相似度满足第二相似度差异条件时,将各所述语音相似度按数值大小顺序排序;依据从排序的首个语音相似度起预设数量的语音相似度分别对应的语音特征向量样本,确定复合标签;将确定的复合标签作为目标用户所对应的目标类别标签。
[0214] 在一个实施例中,目标生物特征数据包括目标用户图像和目标用户语音;候选生物特征数据包括候选用户图像和候选用户语音;目标用户偏好数据包括目标用户图像偏好数据和目标用户语音偏好数据;候选用户偏好数据包括候选用户图像偏好数据和候选用户语音偏好数据。确定模块1402还用于依据目标用户图像和候选用户图像偏好数据,确定目标用户对于候选用户的第一图像匹配度;依据目标用户语音和候选用户语音偏好数据,确定目标用户对于候选用户的第一语音匹配度;将第一图像匹配度和第一语音匹配度进行加权求和计算,得到目标用户对于候选用户的第一匹配度。确定模块1402还用于依据候选用户图像和目标用户图像偏好数据,确定候选用户对于目标用户的第二图像匹配度;依据候选用户语音和目标用户语音偏好数据,确定候选用户对于目标用户的第二语音匹配度;将第二图像匹配度和第二语音匹配度进行加权求和计算,得到候选对于目标用户的第二匹配度。
[0215] 在一个实施例中,匹配模型1403还用于对候选用户的第一匹配度和第二匹配度进行加权求和计算,得到综合匹配度;当综合匹配度大于或等于匹配度阈值时,将候选用户确定为目标用户对应的匹配用户。
[0216] 上述用户匹配装置,依据目标用户对应的目标生物特征数据和候选用户对应的候选用户偏好数据,可以确定该目标用户对于该候选用户的第一匹配度。相应地,依据该候选用户对应的候选生物特征数据和该目标用户对应的目标用户偏好数据,可以确定该候选用户对于该目标用户的第二匹配度。根据第一匹配度和第二匹配度,从候选用户中筛选出与目标用户匹配的匹配用户。这样,基于对不同用户的生物特征数据和各自的用户偏好数据进行相互匹配,就可使得该目标用户能匹配到该目标用户喜欢且喜欢该目标用户的其他用户,大大提高用户匹配的准确率。
[0217] 如图15所示,在一个实施例中,提供了用户匹配装置1500,包括获取模块1501和输出模块1502。其中:
[0218] 获取模块1501,用于获取采集的与目标用户对应的生物特征数据。
[0219] 获取模块1501还用于当产生用户匹配指令时,获取与目标用户匹配的匹配用户的用户信息;匹配用户所对应的用户偏好数据与目标用户所对应的生物特征数据匹配,匹配用户所对应的生物特征数据与目标用户所对应的用户偏好数据匹配。
[0220] 输出模块1502,用于输出匹配用户的用户信息。
[0221] 在一个实施例中,获取模块1501包括展示模块15011和采集模块15012,其中:
[0222] 展示模块15011用于进入用户交互界面,在用户交互界面展示生物特征数据采集界面的开启入口;
[0223] 展示模块15011还用于当获取对于开启入口的开启指令时,展示生物特征数据采集界面。
[0224] 采集模块15012,用于当发生对于生物特征数据采集界面的触发操作时,调用相应的生物特征采集设备采集目标用户的生物特征数据。
[0225] 在一个实施例中,展示模块15011还用于进入用户交互界面,在用户交互界面呈现生物特征测试数据。
[0226] 采集模块15012还用于获取目标用户对生物特征测试数据进行偏好测试所得到的用户偏好数据。
[0227] 在一个实施例中,生物特征数据包括用户图像和用户声音;匹配用户所对应的用户图像偏好数据与目标用户所对应的用户图像匹配、及匹配用户所对应的用户声音偏好数据与目标用户所对应的用户声音匹配。匹配用户所对应的用户图像与目标用户所对应的用户图像偏好数据匹配、及匹配用户所对应的用户声音与目标用户所对应的用户声音偏好数据匹配。
[0228] 在一个实施例中,获取模块1501还用于进入用户匹配触发界面,在用户匹配触发界面展示用于触发用户匹配的操作入口;当产生对应于操作入口的触发操作时,发起与目标用户对应的匹配请求;匹配请求,用于触发依据目标用户所对应的目标生物特征数据与候选用户所对应的候选用户偏好数据的第一匹配度,及目标用户所对应的目标用户偏好数据与候选用户所对应的候选生物特征数据的第二匹配度,筛选与目标用户匹配的匹配用户。输出模块1502还用于进入匹配结果展示界面,在匹配结果展示界面显示匹配用户的用户信息。
[0229] 在一个实施例中,该用户匹配装置还包括跳转模块1503,用于当发生对于用户信息的触发操作时,跳转至目标用户与匹配用户进行会话的会话界面。
[0230] 参考图16,在一个实施例中,该用户匹配装置还包括发送模块1504,用于进入用户评价报告查阅界面;当发生作用于用户评价报告查阅界面的触发操作时,发起用户评价报告查阅请求;用户评价报告查阅请求用于触发依据目标用户对应的生物特征数据和用户偏好数据所生成的用户评价报告。展示模块15011还用于展示用户评价报告。
[0231] 上述用户匹配装置,获取采集的与目标用户对应的生物特征数据,当产生用户匹配指令时,获取与该目标用户匹配的匹配用户的用户信息并输出。其中,该匹配用户所对应的用户偏好数据与该目标用户所对应的生物特征数据匹配,该匹配用户所对应的生物特征数据与该目标用户所对应的用户偏好数据匹配。这样,基于对用户的生物特征数据和用户偏好数据进行相互匹配,就可使得该目标用户能匹配到该目标用户喜欢且喜欢该目标用户的其他用户,大大提高用户匹配的准确率。
[0232] 图17示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110或服务器120。如图17所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现用户匹配方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行用户匹配方法。
[0233] 本领域技术人员可以理解,图17中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0234] 在一个实施例中,本申请提供的用户匹配装置可以实现为一种计算机程序的形式,计算机程序可在如图17所示的计算机设备上运行。计算机设备的存储器中可存储组成该用户匹配装置的各个程序模块,比如,图14所示的获取模块、确定模块和匹配模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的用户匹配方法中的步骤。还比如,图15所示的获取模块和输出模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的用户匹配方法中的步骤。
[0235] 例如,图17所示的计算机设备可以通过如图14所示的用户匹配装置中的获取模块执行步骤S202。计算机设备可通过确定模块执行步骤S204和S206。计算机设备可通过匹配模块执行步骤S208。
[0236] 例如,图17所示的计算机设备可以通过如图15所示的用户匹配装置中的获取模块执行步骤S402和S404。计算机设备可通过输出模块执行步骤S406。
[0237] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述用户匹配方法的步骤。此处用户匹配方法的步骤可以是上述各个实施例的用户匹配方法中的步骤。
[0238] 在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述用户匹配方法的步骤。此处用户匹配方法的步骤可以是上述各个实施例的用户匹配方法中的步骤。
[0239] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0240] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0241] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。