推荐算法的公平性评估方法及ai模型选择方法
技术领域
1.本说明书实施例涉及计算机技术领域,特别涉及一种推荐算法的公平性评估方法及ai模型选择方法。
背景技术:2.随着互联网技术的飞速发展,已促使人们逐步从信息匮乏时代步入了信息过载时代。在信息过载时代,无论是消费者还是生产者都面临着巨大的挑战。以电商平台上的商品信息为例,作为消费者,如何从海量的、品类繁杂的商品中找到自己感兴趣的商品是一件相对困难的事情;作为生产者,如何让自己生产的商品能脱颖而出,受到广大用户的青睐和关注,同样是一件困难的事情。那么推荐系统的诞生则极大地解决了生产者、消费者之间的这种信息传递矛盾。而作为推荐系统基石的推荐算法,其核心在于,基于用户的搜索、点击、浏览等行为信息建模用户的兴趣偏好,一方面辅助用户发现对自己更有价值的信息,另一方面将优质的信息呈现在有相应兴趣偏好的用户面前,从而加速信息的生产、传播、变现,实现消费者、生产者与信息平台之间的多方共赢。
3.然而,人工智能在自动化决策过程中存在的不公平性,甚至是歧视的问题饱受社会争议,不仅引发了人们对算法自动化决策的担忧和质疑,也逐渐引起了社会和公众的广泛关注。因此,开展算法公平性评估、消除算法偏见,在算法全生命周期中是必不可少的步骤。
技术实现要素:4.有鉴于此,本说明书实施例提供了两种推荐算法的公平性评估方法。本说明书一个或者多个实施例同时涉及一种推荐算法的公平性评估装置,一种ai模型选择方法,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
5.根据本说明书实施例的第一方面,提供了一种推荐算法的公平性评估方法,包括:
6.确定目标测评数据,其中,所述目标测评数据包括至少两个维度的测评属性的数据;
7.根据所述测评属性确定至少两个测评对象,以及所述至少两个测评对象的当前位置和当前速度;
8.根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度;
9.根据所述适应度确定所述推荐算法的公平性评估结果。
10.根据本说明书实施例的第二方面,提供了一种推荐算法的公平性评估装置,包括:
11.数据确定模块,被配置为确定目标测评数据,其中,所述目标测评数据包括至少两个维度的测评属性的数据;
12.参数确定模块,被配置为根据所述测评属性确定至少两个测评对象,以及所述至少两个测评对象的当前位置和当前速度;
13.适应度确定模块,被配置为根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度;
14.结果确定模块,被配置为根据所述适应度确定所述推荐算法的公平性评估结果。
15.根据本说明书实施例的第三方面,提供了一种推荐算法的公平性评估方法,包括:
16.根据用户的调用请求为所述用户展示数据交互界面,并接收所述用户通过所述数据交互界面输入的初始测评数据;
17.对所述初始测评数据进行处理,确定目标测评数据,其中,所述目标测评数据包括至少两个维度的测评属性的数据;
18.根据所述测评属性确定至少两个测评对象,以及所述至少两个测评对象的当前位置和当前速度;
19.根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度;
20.根据所述适应度确定所述推荐算法的公平性评估结果,并将所述推荐算法的公平性评估结果通过所述数据交互界面展示给所述用户。
21.根据本说明书实施例的第四方面,提供了一种ai模型选择方法,包括:
22.接收用户通过模型评估交互界面确定的ai模型;
23.根据上述推荐算法的公平性评估方法,对所述ai模型进行公平性评估,获得所述ai模型的公平性评估结果;
24.将所述ai模型的公平性评估结果,通过所述模型评估交互界面展示给所述用户;
25.响应于所述用户针对目标ai模型的选择指令,根据所述目标ai模型执行所述用户的项目需求,
26.其中,所述目标ai模型为所述用户根据所述ai模型的公平性评估结果确定。
27.根据本说明书实施例的第五方面,提供了一种计算设备,包括:
28.存储器和处理器;
29.所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述推荐算法的公平性评估方法的步骤。
30.根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述推荐算法的公平性评估方法的步骤。
31.根据本说明书实施例的第七方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述推荐算法的公平性评估方法的步骤。
32.本说明书一个实施例实现了推荐算法的公平性评估方法及ai模型选择方法,其中,所述方法包括确定目标测评数据,其中,所述目标测评数据包括至少两个维度的测评属性的数据;根据所述测评属性确定至少两个测评对象,以及所述至少两个测评对象的当前位置和当前速度;根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当
前位置和所述当前速度的适应度;根据所述适应度确定所述推荐算法的公平性评估结果。
33.具体的,该方法根据至少两个测评对象,在多维的测评属性上执行自动搜索,通过至少两个测评对象相对于当前位置和当前速度的适应度,快速的定位偏离公平性约束阈值的测评数据,为下一步的推荐算法去偏优化提供测评支撑,具有较强的实用性和可实现性。
附图说明
34.图1是本说明书一个实施例提供的一种推荐算法的公平性评估的具体场景示意图;
35.图2是本说明书一个实施例提供的一种推荐算法的公平性评估方法的流程图;
36.图3是本说明书一个实施例提供的一种推荐算法的公平性评估方法的处理过程流程图;
37.图4是本说明书一个实施例提供的一种推荐算法的公平性评估装置的结构示意图;
38.图5是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
39.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
40.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
41.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
42.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
43.推荐算法:推荐算法是一种信息过滤算法,其通过根据用户的历史行为数据、社交网络信息、个人兴趣爱好建模用户的兴趣偏好,进而从海量的商品或内容中过滤出满足用户偏好的内容进行推荐,从而满足用户的个性化需求。
44.算法公平性:人工智能算法自动化决策独立于人体属性、族别、信仰、地区等受保护的敏感属性(如自然属性和社会属性);也即是,对于受保护的敏感属性,人工智能算法决策对个人或群体不存在因其固有或后天属性所引起的偏见或偏爱。
45.粒子群算法:particle swarm optimization,粒子群算法,亦称粒子群优化算法或鸟群觅食算法,其原理为模拟鸟群觅食,从随机解出发,通过迭代寻找较优解,该算法精度高、收敛快,在解决实际问题中具有优越性。
46.auc:area under curve,是roc曲线下的面积,是一种衡量机器学习模型分类性能的重要且非常常用的指标,其只能用于二分类的情况;auc的本质含义反映的是对于任意一对正负例样本,模型将正样本预测为正例的可能性大于将负例预测为正例的可能性的概率。
47.ndcg:normalized discounted cumulative gain,归一化折损累计增益,这个指标通常是用来衡量和评价排序的准确性。
48.ai:artificial intelligence,人工智能。
49.目前,推荐系统在构建过程中,其推荐算法核心优化目标通常是追求风险最小化,往往更加关注整体的推荐性能和收益,因而导致推荐系统更倾向于拟合多数群体的兴趣偏好,而忽略少数群体的反馈和根本需求。长此以往,推荐算法将丧失对这部分少数群体的代表性,形成归纳偏差,进而产生不公平问题。对于提供信息推荐的平台(如购物平台)而言,推荐算法的不公平性一方面将会极大损害用户体验从而影响平台用户的黏性和长期留存;另一方面,从法律法规和社会监管等层面而言,推荐结果的不公平性将导致全社会无法公平共享推荐系统带来的益处,且将可能面临着合规问题。
50.为了解决推荐算法的不公平问题,当前一些算法公平性评估系统也提出了一系列的公平性指标和测评方法,以发现和量化算法中的不公平性,以期进一步消除偏见和歧视。然而,现有的公平性评估方法主要集中于,通过单一敏感属性划分群体并度量划分后两个群体上的结果差异的方式来评估推荐算法的公平性。这种方法在实际的商用推荐系统中通常不具备商业价值,在实际中,用户既存在敏感自然属性(年岁、人体属性、族别等),也存在敏感社会属性(如地区、信仰、国籍等),甚至还存在多个敏感属性的交互,在这种情况下,基于单一敏感属性的评估方式既无法有效发现不公平性问题,同时在多敏感属性和属性值高维(例如年岁的属性值就会存在约100个)的情况下还存在效率低下的问题。例如当存在10个敏感属性,每个敏感属性有3种不同的属性值时,需要测评的组合方式高达3
10
种,因此该方法同样不具备实用性。
51.为了解决上述公平性评估方法的不足,本说明书实施例提出了一种基于粒子群算法的推荐算法公平性自动化评估方法,通过模拟鸟群觅食,在多维敏感属性上执行自动搜索,以定位偏离公平性约束阈值的少数“弱势”群体,为下一步的推荐算法去偏优化提供测评支撑。该方法参数少、易实现、效率高,且具备较强的实用性和商用价值。该基于粒子群算法的推荐算法公平性自动化评估方法的具体实现如下所述。
52.在本说明书中,提供了两种推荐算法的公平性评估方法,本说明书同时涉及一种推荐算法的公平性评估装置,一种ai模型选择方法,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
53.参见图1,图1示出了根据本说明书一个实施例提供的一种推荐算法的公平性评估的具体场景示意图,具体包括以下步骤。
54.具体的,本说明书实施例提供的推荐算法的公平性评估应用于推荐算法的公平性评估系统,而该推荐算法的公平性评估系统可以实现对任意场景中的任意推荐算法进行公平性评估,例如对商品推荐场景中的商品推荐算法进行公平性评估、对广告推荐场景中的广告推荐算法进行公平性评估、对金融场景中的理财推荐算法进行公平性评估等等。
55.步骤102:接收使用者发送的推荐算法的公平性评估请求。
56.其中,该公平性评估请求中携带有待测评数据以及推荐算法,而该推荐算法可以理解为向用户进行商品推荐的商品推荐算法、向用户进行广告推荐的广告推荐算法、或者向用户进行理财推荐的理财推荐算法等。
57.此外,本说明书实施例中的使用者,可以理解为使用该推荐算法的公平性评估系统,对推荐算法进行公平性评估的用户。
58.具体的,该推荐算法的公平性评估系统包括用户敏感属性配置模块、公平性指标计算模块以及基于粒子群算法的公平性分组评估模块。
59.首先,推荐算法的公平性评估系统在接收使用者发送的推荐算法的公平性评估请求后,调用该用户敏感属性配置模块,使得使用者在该用户敏感属性配置模块配置待测评数据中包含的敏感属性,如人体属性、学历、年岁等;该用户敏感属性配置模块根据使用者的配置将待测评数据中每个用户的敏感属性进行数值化处理,获得目标测评数据。如用“0,1,20”表示一个20岁、男性、白人用户,“1,0,25”表示一个25岁、女性、高中学历用户等。同时,推荐算法的公平性评估系统,根据敏感属性的维度数量,确定多个测评粒子,并随机初始化每个测评粒子的速度和位置;例如敏感属性的维度数量为3个维度:人体属性、学历、年岁,那么可以确定10个测评粒子,并随机初始化每个测评粒子的速度和位置,其中,速度可以理解为步长,如1;位置可以理解为由数值化的敏感属性确定的坐标位,如0,1,20、1,0,25等。
60.其次,推荐算法的公平性评估系统调用公平性指标计算模块计算每个测评粒子的适应度。其中,公平性指标计算模块包括但不限于统计均等、机会均等、不一致影响、选择率等公平性指标,每个测评粒子的适应度为该测评粒子所代表的用户群体与其他用户群体之间的公平性指标的差值或者比值。
61.最后,调用基于粒子群算法的公平性分组评估模块,对于每个测评粒子,比较它的当前位置对应的适应度和它经历过的最好位置的适应度,确定局部较优位置;对于所有的测评粒子,比较每个测评粒子与其他测评粒子的适应度,确定全局较优位置,若全局较优位置的适应度,满足预设适应度阈值,则将该全局较优位置的用户群体作为公平性评估结果进行输出;而若全局较优位置的适应度,不满足该预设适应度阈值,则根据预设算法调整每个测评粒子的位置和速度,再次根据上述方式进行迭代,直至全局较优位置的适应度满足该预设适应度阈值,或者达到预设迭代次数结束。
62.步骤104:将推荐算法的公平性评估结果返回至使用者。
63.其中,该推荐算法的公平性评估结果可以为全局较优位置对应的用户群体,也可以是达到预设迭代次数结束后,给使用者发出的进行预设适应度阈值调整的提示信息等。
64.而在该推荐算法的公平性评估结果为全局较优位置对应的用户群体的情况下,使用者后续在进行推荐算法训练时,则可以有偏向性的增加该用户群体的样本量或者权重值等,以提升该推荐算法的公平性。
65.本说明书实施例提供的推荐算法的公平性评估方法,将粒子群算法和公平性评估相结合,通过模拟鸟群觅食,从随机解(随机分组)出发,基于每个粒子在当前位置上的适应度(即公平性水位)调整粒子的前进方向和速度,实现在多维敏感属性上的群组自动搜索,以定位偏离公平性约束阈值的少数“弱势”群组,从而为下一步的推荐算法去偏优化提供测评支撑。该方法参数少、易实现、效率高,收敛快,有效地解决了公平性评估的有效性问题,
同时极大地降低了测评的时间复杂度,因为具备较强的实用性和商用价值。
66.参见图2,图2示出了根据本说明书一个实施例提供的一种推荐算法的公平性评估方法的流程图,具体包括以下步骤。
67.步骤202:确定目标测评数据。
68.其中,所述目标测评数据包括至少两个维度的测评属性的数据;其中,测评属性可以理解为用户的敏感属性,如职业、人体属性、年岁、学历等。
69.具体的,在该推荐算法的公平性评估方法的应用场景不同,该目标测评数据也不同;例如在该推荐算法的公平性评估方法,应用于对商品推荐算法进行评估的场景中,该目标测评数据可以理解为进行商品购买、商品浏览、商品收藏等用户的、包含至少两个维度的敏感属性的数值化数据。
70.实际应用中,对推荐算法进行公平性评估的使用者,会将待测评的初始测评数据上传至推荐算法的公平性评估系统,然后通过该推荐算法的公平性评估系统的用户敏感属性配置模块配置待测评的敏感属性,推荐算法的公平性评估系统则会根据该使用者配置的敏感属性,从初始测评数据中选择出、具有使用者配置的敏感属性的数据,并对该数据进行数值化处理,以便数值化处理后的数据,能够用于后续的推荐算法公平性评估,提高推荐算法公平性评估的效率以及准确性。具体实现方式如下所述:
71.所述确定目标测评数据,包括:
72.接收初始测评数据,以及确定针对所述初始测评数据的至少两个维度的测评属性;
73.从所述初始测评数据中,确定具有所述至少两个维度的测评属性的数据;
74.对所述具有所述至少两个维度的测评属性的数据进行数值化处理,获得目标测评数据。
75.其中,初始测评数据可以理解为:待对推荐算法进行公平性评估的使用者上传的进行商品购买、商品浏览、商品收藏等用户的用户属性数据,例如用户的年岁、职业、人体属性、爱好、学历等。而初始测评数据的至少两个维度的测评属性,则可以理解为初始测评数据的至少两个维度的敏感属性,如人体属性、年岁、学历等敏感属性。
76.而对具有至少两个维度的测评属性的数据进行数值化处理,则可以理解为,将具有至少两个维度的测评数据的数据转换为计算机可识别的数值化数据,以便后续可以在推荐算法的公平性评估系统,对推荐算法进行公平性评估。
77.具体实施时,对于初始测评数据的输入,可以是用户通过推荐算法的公平性评估系统展示给用户的数据输入界面输入的,也可以是用户在向推荐算法的公平性评估系统发送调用请求时,在调用请求中携带的;具体的可以根据用户自身的实际需求进行确定,提升用户使用体验。具体实现方式如下所述:
78.所述接收初始测评数据,包括:
79.接收用户发送的调用请求中携带的初始测评数据;或者
80.根据用户的调用请求为所述用户展示数据输入界面,并接收所述用户通过所述数据输入界面输入的初始测评数据。
81.其中,调用请求可以理解为用户调用推荐算法的公平性评估系统中的推荐算法的公平性评估方法,以实现对推荐算法的公平性进行评估的请求。
82.此外,针对初始测评数据的至少两个维度的测评属性也可以为:使用者通过该推荐算法的公平性评估系统的用户敏感属性配置模块个性化配置的,通过此种人机交互的方式,根据使用者的需求,对推荐算法相对于某些敏感属性的公平性进行评估,提升用户使用体验。具体实现方式如下所述:
83.所述确定针对所述初始测评数据的至少两个维度的测评属性,包括:
84.确定所述用户通过测评属性配置模块配置的至少两个维度的测评属性。
85.其中,测评属性配置模块可以理解为上述的用户敏感属性配置模块。使用者可以通过该测评属性配置模块进行个性化的测评属性配置。
86.具体的,接收用户输入的初始测评数据,以及所述用户通过测评属性配置模块配置的至少两个维度的测评属性;可以理解为:推荐算法的公平性评估系统接收使用者输入的初始测评数据,以及使用者在测评属性配置模块配置的数据中包含的、至少两个维度的敏感属性,如人体属性、年岁、学历等敏感属性。
87.推荐算法的公平性评估系统在确定使用者配置的至少两个维度的测评属性之后,就可以从初始测评数据中筛选出包含有这些维度的测评属性的数据,并将这些数据进行数值化处理,获得后续参与推荐算法的公平性评估的目标测评数据。
88.步骤204:根据所述测评属性确定至少两个测评对象,以及所述至少两个测评对象的当前位置和当前速度。
89.其中,测评对象可以理解为粒子群算法中的粒子(如上述的测评粒子);测评属性可以理解为敏感属性。那么所述根据所述测评属性确定至少两个测评对象,包括:
90.根据所述测评属性的维度数量确定至少两个测评对象。
91.例如,测评属性的维度数量为10维,那么测评对象则可以设置为5个。
92.实际应用中,测评对象也可以理解为分组条件,分组条件越多,目标测评数据的分类数量就越多,那么后期的计算量就会较大,计算效率就会降低;而分区条件越少,目标测评数据的分类数量相对也会越小,那么虽然会降低后续的计算量,但是相对也会损失计算精确度,因此根据测评属性的维度数量,可以合理的确定测评对象的数量,以使得后续的计算可以在计算量没有那么大的基础上,保证了计算精确度。
93.此外,还可以根据测评属性确定每个测评对象的当前位置和当前速度,例如测评属性包括三个维度“年岁、人体属性、学历”的情况下,当前位置则可以理解为数值化的“年岁、人体属性、学历”形成的坐标位,如“0,1,20”;当前速度则可以理解为每个维度的测评属性的移动步长,例如年岁维度的当前移动速度为0,人体属性维度的当前移动速度为1,学历维度的当前移动速度为1等。
94.步骤206:根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度。
95.其中,适应度可以理解为根据分类后的目标测评数据的公平性指标通过预设算法计算出的值;关于适应度的具体计算过程如下所述:
96.所述根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,包括:
97.根据推荐算法针对分类后的目标测评数据的公平性指标的差值或比值,确定所述
至少两个测评对象相对于所述当前位置和所述当前速度的适应度。
98.具体的,在确定至少两个测评对象之后,则根据每个测评对象对目标测评数据进行分类,再根据推荐算法获取每类目标测评数据的公平性指标,然后根据每类目标测评数据的公平性指标,确定每个测评对象相对于当前位置和当前速度的适应度。具体实现方式如下所述:
99.所述根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对每类目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,包括:
100.根据所述至少两个测评对象中的每个测评对象,对所述目标测评数据进行分类;
101.确定推荐算法针对所述每个测评对象分类后的、每类目标测评数据的公平性指标;
102.根据所述公平性指标,确定所述每个测评对象相对于所述当前位置和所述当前速度的适应度。
103.以至少两个测评对象包括测评对象1、测评对象2和测评对象3为例,分别根据测评对象1、测评对象2和测评对象3对目标测评数据进行分类,再根据推荐算法获得测评对象1分类后的每类目标测评数据的公平性指标、测评对象2分类后的每类目标测评数据的公平性指标、测评对象3分类后的每类目标测评数据的公平性指标;最后,根据测评对象1分类后的每类目标测评数据的公平性指标,确定测评对象1相对于测评对象1的当前位置和当前速度的适应度;根据测评对象2分类后的每类目标测评数据的公平性指标,确定测评对象2相对于测评对象2的当前位置和当前速度的适应度;根据测评对象3分类后的每类目标测评数据的公平性指标,确定测评对象3相对于测评对象3的当前位置和当前速度的适应度。
104.其中,推荐算法针对每类目标测评数据的公平性指标的具体实现方式,可以理解为分别将每类目标测评数据中的每个目标测评数据通过推荐算法(即推荐模型),获得推荐准确率、auc、ndcg等,根据该类中所有目标测评数据的推荐准确率、auc、ndcg等,确定该类目标测评数据的公平性指标。
105.实际应用中,公平性指标一般都是基于一些原子指标进行计算的,该原子指标包括推荐算法的准确性如准确率、auc、ndcg等,推荐结果的多样性和发现性,优质内容的可见性等。本说明书实施例中更侧重群体公平性的评估,即衡量推荐算法在基于敏感属性划分的两个不同群体之间的推荐指标的差异。例如在a群体上的准确率是0.8、在b群体上的准确率是0.9,那么对应的统计均等公平性指标则为:dpd=|0.8-0.9|=0.1,如果算法是公平的,则理论上dpd应该等于0,其他的公平性指标计算逻辑类似。
106.本说明书实施例中,根据每个测评对象分类后的、每类目标测评数据的公平性指标,可以快速且准确的计算,每个测评对象相对于其当前位置和当前速度的适应度。
107.具体的,为了进一步的提高每个测评对象相对于其当前位置和当前速度的适应度的计算效率,可以通过每个测评对象分类后的、每类目标测评数据的公平性指标的差值或者比值,确定每个测评对象相对于其当前位置和当前速度的适应度。具体实现方式如下所述:
108.所述根据所述公平性指标,确定所述每个测评对象相对于所述当前位置和所述当前速度的适应度,包括:
109.根据所述每个测评对象分类后的、每类目标测评数据的公平性指标的差值或者比值,确定所述每个测评对象相对于所述当前位置和所述当前速度的适应度。
110.仍沿用上例,在分别根据测评对象1、测评对象2和测评对象3对目标测评数据进行分类后,则可以根据测评对象1分类后的第一类目标测评数据的公平性指标,与第二类目标测评数据的公平性指标的差值,确定测评对象1相对于测评对象1的当前位置和所述当前速度的适应度;例如,测评对象1为:将年岁大于20岁的用户分为一类,将年岁小于等于20岁的用户分为一类,若目标测评数据包括:“0,1,20”、“1,0,25”的情况下,根据测评对象1对目标测评数据分类后,则会将“0,1,20”分为一类,即第一个用户群体,将“1,0,25”分为一类,即第二个用户群体。最后根据第一用户群体的公平性指标和第二个用户群体的公平性指标的差值,确定测评对象1相对于其当前位置和当前速度的适应度。
111.步骤208:根据所述适应度确定所述推荐算法的公平性评估结果。
112.具体的,在确定每个测评对象相对于其当前位置和当前速度的适应度之后,则可以根据适应度确定推荐算法的公平性评估结果。具体实现方式如下所述:
113.所述根据所述适应度确定所述推荐算法的公平性评估结果,包括:
114.根据所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定全局适应度;
115.根据所述全局适应度与预设适应度阈值之间的关联关系,确定所述全局适应度对应的全局目标位置;
116.根据所述全局目标位置确定所述推荐算法的公平性评估结果。
117.其中,预设适应度阈值为使用者根据需求设置的,本说明书实施例对此不作任何限定。
118.具体实施时,根据至少两个测评对象相对于当前位置和当前速度的适应度,确定全局适应度的实现方式包括至少两种,一种实现方式为:在至少两个测评对象中的所有测评对象均不存在历史位置以及历史速度的情况下(即初始化),根据至少两个测评对象相对于当前位置和当前速度的适应度,实现对全局适应度的计算;另一种实现方式为:在至少两个测评对象中的所有测评对象或者任意一个测评对象存在历史位置以及历史速度的情况下(即非初始化),根据至少两个测评对象相对于当前位置和当前速度的适应度,实现对全局适应度的计算。而无论采用上述任意一种实现方式,计算获得全局适应度之后,均可以根据全局适应度与预设适应度阈值之间的关联关系,确定全局适应度对应的全局目标位置,从而根据全局目标位置确定推荐算法的公平性评估结果,后续使用者即可以根据该公平性评估结果,确定推荐算法对利用哪个用户群体存在不公平性,并且可以根据该推荐算法对该全局目标位置的用户群体的公平性评估指标,对推荐算法进行调优,比如增加该用户群体在推荐算法中的数量或者权重等。
119.具体的,在至少两个测评对象中的所有测评对象均不存在历史位置以及历史速度的情况下,根据至少两个测评对象相对于当前位置和当前速度的适应度,确定全局适应度的实现方式如下所述:
120.所述根据所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定全局适应度,包括:
121.在确定所述至少两个测评对象不存在历史位置以及历史速度的情况下,根据所述
至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定全局适应度。
122.其中,至少两个测评对象不存在历史位置以及历史速度,可以理解为至少两个测评对象中所有的测评对象均不存在历史位置以及历史速度,即至少两个测评对象的当前位置和当前速度,为初始位置和初始速度,不存在历史位置和历史速度。
123.此种情况下,则可以根据至少两个测评对象中每个测评对象相对于其当前位置和当前速度的适应度,确定全局适应度,例如选择最大的适应度作为全局适应度。
124.本说明书实施例提供的推荐算法的公平性评估方法中,在至少两个测评对象中的所有测评对象均不存在历史位置以及历史速度的情况下,则可以根据至少两个测评对象相对于所述当前位置和所述当前速度的适应度,快速的确定出全局适应度,以提高后续的推荐算法的公平性评估结果的获取速度。
125.而在确定全局适应度之后,即可根据全局适应度与预设适应度阈值之间的关联关系,确定该全局适应度对应的全局目标位置,以便后续可以根据全局目标位置准确的确定推荐算法的公平性评估结果。具体实现方式如下所述:
126.所述根据所述全局适应度与预设适应度阈值之间的关联关系,确定所述全局适应度对应的全局目标位置,包括:
127.在所述全局适应度大于等于预设适应度阈值的情况下,确定所述全局适应度对应的全局目标位置。
128.具体的,在获取全局适应度之后,则判断该全局适应度是否大于等于预设适应度阈值,若是,则将该全局适应度对应的当前位置确定为全局目标位置,并根据该全局目标位置确定公平性评估结果。
129.具体实施时,推荐算法的公平性评估系统,在确定所有测评对象均不存在历史位置和历史速度的情况下,根据所有测评对象相对于其当前位置和当前速度的适应度,选取较优的测评对象的适应度作为全局适应度,并且在该全局适应度大于等于预设适应度阈值的情况下,将该全局适应度对应的当前位置确定为全局目标位置,并根据该全局目标位置确定推荐算法的公平性评估结果,例如全局目标位置为“0,1,20”,那么则可以认为“0,1,20”这类用户属于存在不公平性情况的用户群体,此时,根据该全局目标位置确定推荐算法的公平性评估结果包括全局目标位置、以及推荐算法对该全局目标位置的用户群体的公平性评估指标等。
130.后续,使用者可以根据该公平性评估结果,确定推荐算法对利用哪个用户群体存在不公平性,并且可以根据该推荐算法对该全局目标位置的用户群体的公平性评估指标,对推荐算法进行调优,比如增加该用户群体在推荐算法中的数量或者权重等。
131.另一种情况下,在至少两个测评对象存在历史位置以及历史速度的情况下,根据至少两个测评对象相对于当前位置和当前速度的适应度,确定全局适应度的实现方式如下所述:
132.所述根据所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定全局适应度,包括:
133.在确定所述至少两个测评对象存在历史位置以及历史速度的情况下,根据所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度、以及相对于所述当前位置和所述当前速度的适应度,确定所述至少两个测评对象的局部适应度;
134.根据所述至少两个测评对象的局部适应度,确定全局适应度。
135.其中,至少两个测评对象存在历史位置以及历史速度,可以理解为至少两个测评对象中所有的测评对象均存在历史位置以及历史速度,或者至少两个测评对象中的任意一个测评对象存在历史位置以及历史速度。
136.具体的,至少两个测评对象中的任意一个测评对象存在历史位置以及历史速度为例,对确定至少两个测评对象的局部适应度进行详细介绍。具体实现方式如下所述:
137.在确定所述至少两个测评对象中任意一个测评对象存在历史位置以及历史速度的情况下,根据所述任意一个测评对象相对于所述历史位置以及所述历史速度的适应度、以及相对于所述当前位置和所述当前速度的适应度,确定所述任意一个测评对象的局部适应度;
138.根据所述任意一个测评对象的局部适应度以及、其他测评对象相对于所述当前位置和所述当前速度的适应度,全局适应度。
139.实际应用中,由于每次迭代,所有的测评对象均是同时进行的,因此若存在一个测评对象存在历史位置以及历史速度的情况下,基本可以确定每个测评对象均存在历史位置以及历史速度,即每个测评对象的当前位置以及当前速度均非初始位置以及初始速度,每个测评对象均存在上一次迭代时的历史位置和历史速度。
140.那么在每个测评对象均存在上一次迭代时的历史位置和历史速度的情况下,则可以确定每个测评对象也存在相对于其历史位置和历史速度的适应度,而每个测评对象也存在相对于其历史位置和历史速度的适应度的具体计算方式,与每个测评对象相对于其当前位置和当前速度的适应度的具体计算方式相同,在此不再赘述。
141.具体的,在确定每个测评对象相对于历史位置以及历史速度的适应度、以及相对于当前位置和当前速度的适应度的情况下,则可以选取最大适应度作为该测评对象的局部适应度。那么在通过此种方式获取每个测评对象的局部适应度之后,则可以从每个测评对象的局部适应度中选取最大的适应度作为该测评对象的全局适应度。
142.然后,在该全局适应度大于等于预设适应度阈值的情况下,确定该全局适应度对应的全局目标位置,并根据该全局目标位置确定推荐算法的公平性评估结果。该步骤的具体实现方式可以参见上述实施例,在此不再赘述。
143.本说明书实施例中,根据每个测评对象的当前适应度和历史适应度,确定局部较优适应度,再根据每个测评对象的局部较优适应度,确定全局适应度,并根据该全局适应度与预设适应度阈值的关系,快速且准确的确定推荐算法的公平性评估结果。
144.具体的,每个测评对象的局部适应度可以理解为该测评对象的当前较优的适应度,若该测评对象的当前适应度较优,则将该当前适应度确定为局部适应度,若该测评对象的历史适应度中存在最后的适应度,则将该历史的较优的适应度确定为局部适应度,从而保证该局部适应度一直为该测评对象的较优适应度。具体实现方式如下所述:
145.所述根据所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度、以及相对于所述当前位置和所述当前速度的适应度,确定所述至少两个测评对象的局部适应度,包括:
146.在所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度、大于相对于所述当前位置和所述当前速度的适应度的情况下,将所述至少两个测评对象相对于
所述历史位置以及所述历史速度的适应度,确定为所述至少两个测评对象的局部适应度;或者
147.在所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度、小于等于相对于所述当前位置和所述当前速度的适应度的情况下,将所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定为所述至少两个测评对象的局部适应度。
148.仍以某一个测评对象为例,对至少两个测评对象的局部适应度的具体获取方式进行详细说明。
149.在某一个测评对象相对于历史位置以及历史速度的适应度、大于相对于当前位置和当前速度的适应度的情况下,将该测评对象相对于历史位置以及历史速度的适应度,确定为该测评对象的局部适应度;或者
150.在某一个测评对象相对于历史位置以及历史速度的适应度、小于等于相对于当前位置和当前速度的适应度的情况下,将该测评对象相对于当前位置和当前速度的适应度,确定为该测评对象的局部适应度。
151.而在确定全局适应度之后,若该全局适应度小于预设适应度阈值,则说明本次迭代无法找到存在不公平性的用户群体,需要继续通过上述实现步骤进行迭代,直至确定的全局适应度大于等于预设适应度阈值时迭代结束,准确确定推荐算法的公平性评估结果。具体实现方式如下所述:
152.所述根据所述全局适应度与预设适应度阈值之间的关联关系,确定所述全局适应度对应的全局目标位置,包括:
153.在所述全局适应度小于预设适应度阈值的情况下,根据预设调整算法更新所述至少两个测评对象的当前位置和当前速度,并继续执行所述根据所述至少两个测评对象对所述目标测评数据进行分类的步骤;
154.直至所述全局适应度大于等于所述预设适应度阈值,确定所述全局适应度对应的全局目标位置。
155.其中,预设调整算法可以根据实际需求进行设置,例如预设调整算法可以通过如下计算公式1实现:
[0156][0157]
其中,和分别表示第l次迭代时,第i个粒子在第d维敏感属性上的速度和位置;a1和a2为两个加速常数,可基于实际的场景进行配置;rand()为值在(0,1)之间的随机函数,则表示更新后的粒子速度,即第i个粒子在l+1次迭代时的速度,p
id
表示当前位置,p
oid
表示最好位置,p
ogd
表示全局较优解。
[0158]
而第i个粒子在l+1次迭代时的位置可以下述公式2计算所得:
[0159][0160]
具体的,在本次迭代的全局适应度小于预设适应度阈值的情况下,根据预设调整算法、每个测评对象(即粒子)的当前位置以及当前速度,更新每个测评对象的当前位置以
及当前速度,并将更新后的位置和速度重新作为每个测评对象的当前位置以及当前速度,并继续执行根据至少两个测评对象对目标测评数据进行分类的步骤。
[0161]
此时,本次迭代中的至少两个测评对象中的每个测评对象,可以理解为根据更新后的所述每个测评对象的当前位置重新确定的测评对象。例如更新后的测评对象的当前位置为“0,1,28”,则根据该“0,1,28”确定测评对象,如测评对象为:将年岁大于28岁的用户分为一类,将年岁小于等于28岁的用户分为一类,后续即可通过该测评对象对目标测评数据进行分类,再根据推荐算法针对每类目标测评数据的公平性指标,确定每个测评对象相对于当前位置和当前速度的适应度,直至某次迭代中全局适应度大于等于预设适应度阈值的情况下,确定全局适应度对应的全局目标位置,并根据该全局目标位置确定推荐算法的公平性评估结果。
[0162]
实际应用中,每次迭代的测评对象均会根据其更新后的当前位置进行调整,而每次迭代时,对于全局适应度的具体计算方式均可参见上述实施例的介绍,在此不再赘述。
[0163]
本说明书实施例中提供的基于粒子群算法的公平性评估方法,将粒子群算法和公平性评估相结合,通过模拟鸟群觅食,从随机解(随机分组)出发,并基于每个粒子在当前位置上的适应度(即公平性水位)调整粒子的前进方向(即位置)和速度,实现在多维敏感属性上的用户群体自动搜索,以定位偏离公平性约束阈值的少数“弱势”用户群体,从而为下一步的算法去偏优化提供测评支撑,有效地解决了公平性评估的有效性问题,同时极大地降低了测评的时间复杂度。
[0164]
而在更新了每个测评对象的当前位置和当前速度之后,则将更新后的每个测评对象的位置和速度作为下次迭代的当前位置和当前速度,而将更新前的每个测评对象的当前位置和当前速度,作为本次迭代的历史位置和历史速度。通过此种方式调整粒子每次迭代的位置和速度,更好的实现在多维敏感属性上的用户群体自动搜索。其具体实现方式如下所述:
[0165]
所述根据预设调整算法更新所述至少两个测评对象的当前位置和当前速度之后,还包括:
[0166]
将更新前的所述至少两个测评对象的当前位置和当前速度,确定为所述至少两个测评对象的历史位置和历史速度。
[0167]
在另一种可实现场景中,即使全局适应度小于预设适应度阈值,但是当前迭代次数已经超过了预设次数阈值的情况下,也是会结束推荐算法的公平性评估步骤,避免迭代次数过多,造成的计算资源的浪费。具体实现方式如下所述:
[0168]
所述确定全局适应度之后,还包括:
[0169]
在所述全局适应度小于所述预设适应度阈值的情况下,判断当前迭代次数是否满足次数阈值,
[0170]
若是,则输出公平性评估调整策略,
[0171]
若否,则根据预设调整算法更新所述至少两个测评对象的当前位置和当前速度,并继续执行所述根据所述至少两个测评对象对所述目标测评数据进行分类的步骤,直至所述全局适应度大于等于所述预设适应度阈值。
[0172]
并且,确定所述全局适应度对应的全局目标位置,并根据所述全局目标位置确定所述推荐算法的公平性评估结果。
[0173]
其中,次数阈值可以根据实际需求进行设置,比如次数阈值可以是200次或者300次等。
[0174]
具体实施时,该推荐算法的公平性评估方法的结束条件包括但不限于两种,一种为上述的全局适应度大于等于预设适应度阈值的情况下,根据全局适应度对应的全局目标位置,确定推荐算法的公平性评估结果,结束该推荐算法的公平性评估方法;另一种为该实施例中,虽然全局适应度小于预设适应度阈值,但是迭代次数满足次数阈值的情况下,也会结束该推荐算法的公平性评估方法,同时输出公平性评估调整策略,比如提示使用者是否要调整预设适应度阈值或者迭代的次数阈值等。
[0175]
本说明书实施例提供的推荐算法的公平性评估方法,提出了基于粒子群算法的推荐算法公平性评估技术,具体包括:将粒子群算法和公平性评估技术相结合,通过模拟鸟群觅食,从随机分组出发,并基于每个粒子在当前位置上的适应度调整粒子的前进方向和速度,实现在多维敏感属性上的群组自动搜索,以定位偏离公平性约束阈值的少数“弱势”群组,有效地解决了推荐算法公平性测评中存在的多敏感属性交互和敏感属性高维而影响测评有效性和效率的问题。此外,当完成数据接入和基本配置后,本说明书实施例提供的推荐算法的公平性评估方法可完全自动化进行,无需人工介入,相较于基于单一敏感属性的人工分组测评,不仅可以消除因测评人员自身局限性对测评结果有效性的影响,同时还极大地提高了测评的智能化程度并降低了测评成本。
[0176]
因此本说明书实施例提供的推荐算法的公平性评估方法,将适用于电商平台、在线社交平台、在线社交媒体等平台上包括但不限于商品推荐、广告推荐、音视频内容推荐等推荐算法的公平性评估,达到发现并量化推荐算法不公平性的目的,为进一步消除算法偏见并促使推荐算法满足监管合规和提升用户体验提供坚实基础。
[0177]
参见图3,图3示出了本说明书一个实施例提供的一种推荐算法的公平性评估方法的处理过程流程图,具体包括以下步骤。
[0178]
步骤302:接收使用者输入的待测评数据,并调用用户敏感属性配置模块,配置待测评数据中包含的敏感属性;且该用户敏感属性配置模块针对使用者的配置将待测评数据中每个用户的敏感属性进行数值化处理。
[0179]
其中,敏感属性如人体属性、学历、年岁等;该用户敏感属性配置模块针对使用者的配置将待测评数据中每个用户的敏感属性进行数值化处理,如“0,1,20”表示一个20岁的男性白人用户,“1,0,25”表示一个25岁的女性高中学历用户。
[0180]
步骤304:随机确定多个粒子,并初始化每个粒子的当前速度和当前位置。
[0181]
步骤306:调用公平性指标计算模块计算每个粒子的适应度。
[0182]
其中,该公平性指标计算模块包括但不限于统计均等、机会均等、不一致影响、选择率等公平性指标,每个粒子的适应度为该粒子所代表的群体与其他群体之间的公平性指标的差值(最大值-最小值)或比值(最小值/最大值),差值越大,比值越小,则群体之间的差异越明显,对应的群体公平性越差。
[0183]
步骤308:对于粒子群算法中的每个粒子,比较它当前位置对应的适应度和它经历过的最好位置的适应度,如果当前位置的适应度更好,则更新当前位置为最好位置。
[0184]
步骤310:对于每个粒子,比较它当前位置对应的适应度和截止当前整个粒子群经历过的全局最好位置,如果存在更好的适应度,则将对应的位置更新为全局最好位置。
[0185]
步骤312:判断该全局最好位置的适应度是否满足设定适应度阈值,若是,则执行步骤314,若否,则执行步骤316。
[0186]
步骤314:输出全局最好位置以及推荐算法对该全局最好位置的用户群体的公平性评估指标。
[0187]
步骤316:判断本次迭代的迭代次数是否满足预设次数阈值,若是,则执行步骤318,若否,则执行步骤320。
[0188]
步骤318:输出相应的提示。
[0189]
例如提示用户修改预设适应度阈值和/或预设次数阈值等。
[0190]
步骤320:分别基于以下公式调整更新每个粒子的位置和速度,并基于更新的每个粒子的位置和速度重复执行步骤306至步骤318,直到找到满足预设适应度阈值的不公平性群体或预设迭代次数达到了设定的上限。
[0191]
具体地,速度更新公式由上述的公式1实现,第i个粒子在l+1次迭代时的位置则由公式2实现。
[0192]
本说明书实施例提供的推荐算法的公平性评估方法,提出了基于粒子群算法的推荐算法公平性评估技术,具体包括:将粒子群算法和公平性评估技术相结合,通过模拟鸟群觅食,从随机分组出发,并基于每个粒子在当前位置上的适应度调整粒子的前进方向和速度,实现在多维敏感属性上的群组自动搜索,以定位偏离公平性约束阈值的少数“弱势”群组,有效地解决了推荐算法公平性测评中存在的多敏感属性交互和敏感属性高维而影响测评有效性和效率的问题。此外,当完成数据接入和基本配置后,本说明书实施例提供的推荐算法的公平性评估方法可完全自动化进行,无需人工介入,相较于基于单一敏感属性的人工分组测评,不仅可以消除因测评人员自身局限性对测评结果有效性的影响,同时还极大地提高了测评的智能化程度并降低了测评成本。
[0193]
因此本说明书实施例提供的推荐算法的公平性评估方法,将适用于电商平台、在线社交平台、在线社交媒体等平台上包括但不限于商品推荐、广告推荐、音视频内容推荐等推荐算法的公平性评估,达到发现并量化推荐算法不公平性的目的,为进一步消除算法偏见并促使推荐算法满足监管合规和提升用户体验提供坚实基础。
[0194]
与上述方法实施例相对应,本说明书还提供了推荐算法的公平性评估装置实施例,图4示出了本说明书一个实施例提供的一种推荐算法的公平性评估装置的结构示意图。如图4所示,该装置包括:
[0195]
数据确定模块402,被配置为确定目标测评数据,其中,所述目标测评数据包括至少两个维度的测评属性的数据;
[0196]
参数确定模块404,被配置为根据所述测评属性确定至少两个测评对象,以及所述至少两个测评对象的当前位置和当前速度;
[0197]
适应度确定模块406,被配置为根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度;
[0198]
结果确定模块408,被配置为根据所述适应度确定所述推荐算法的公平性评估结果。
[0199]
可选地,所述适应度确定模块406,进一步被配置为:
[0200]
根据推荐算法针对分类后的目标测评数据的公平性指标的差值或比值,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度。
[0201]
可选地,所述结果确定模块408,进一步被配置为:
[0202]
根据所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定全局适应度;
[0203]
根据所述全局适应度与预设适应度阈值之间的关联关系,确定所述全局适应度对应的全局目标位置;
[0204]
根据所述全局目标位置确定所述推荐算法的公平性评估结果。
[0205]
可选地,所述结果确定模块408,进一步被配置为:
[0206]
在确定所述至少两个测评对象不存在历史位置以及历史速度的情况下,根据所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定全局适应度。
[0207]
可选地,所述结果确定模块408,进一步被配置为:
[0208]
在确定所述至少两个测评对象存在历史位置以及历史速度的情况下,根据所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度、以及相对于所述当前位置和所述当前速度的适应度,确定所述至少两个测评对象的局部适应度;
[0209]
根据所述至少两个测评对象的局部适应度,确定全局适应度。
[0210]
可选地,所述结果确定模块408,进一步被配置为:
[0211]
在所述全局适应度大于等于预设适应度阈值的情况下,确定所述全局适应度对应的全局目标位置。
[0212]
可选地,所述结果确定模块408,进一步被配置为:
[0213]
在所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度、大于相对于所述当前位置和所述当前速度的适应度的情况下,将所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度,确定为所述至少两个测评对象的局部适应度;或者
[0214]
在所述至少两个测评对象相对于所述历史位置以及所述历史速度的适应度、小于等于相对于所述当前位置和所述当前速度的适应度的情况下,将所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度,确定为所述至少两个测评对象的局部适应度。
[0215]
可选地,所述结果确定模块408,进一步被配置为:
[0216]
在所述全局适应度小于预设适应度阈值的情况下,根据预设调整算法更新所述至少两个测评对象的当前位置和当前速度,并继续执行所述根据所述至少两个测评对象对所述目标测评数据进行分类的步骤;
[0217]
直至所述全局适应度大于等于所述预设适应度阈值,确定所述全局适应度对应的全局目标位置。
[0218]
可选地,所述装置,还包括:
[0219]
更新模块,被配置为:
[0220]
将更新前的所述至少两个测评对象的当前位置和当前速度,确定为所述至少两个测评对象的历史位置和历史速度。
[0221]
可选地,所述装置,还包括:
[0222]
迭代确定模块,被配置为:
[0223]
在所述全局适应度小于所述预设适应度阈值的情况下,判断当前迭代次数是否满足次数阈值,
[0224]
若是,则输出公平性评估调整策略,
[0225]
若否,则根据预设调整算法更新所述至少两个测评对象的当前位置和当前速度,并继续执行所述根据所述至少两个测评对象对所述目标测评数据进行分类的步骤,直至所述全局适应度大于等于所述预设适应度阈值。
[0226]
可选地,所述数据确定模块402,进一步被配置为:
[0227]
接收初始测评数据,以及确定针对所述初始测评数据的至少两个维度的测评属性;
[0228]
从所述初始测评数据中,确定具有所述至少两个维度的测评属性的数据;
[0229]
对所述具有所述至少两个维度的测评属性的数据进行数值化处理,获得目标测评数据。
[0230]
可选地,所述数据确定模块402,进一步被配置为:
[0231]
接收用户发送的调用请求中携带的初始测评数据;
[0232]
确定所述用户通过测评属性配置模块配置的至少两个维度的测评属性。
[0233]
本说明书实施例提供的推荐算法的公平性评估装置,根据至少两个测评对象,在多维的测评属性上执行自动搜索,通过至少两个测评对象相对于当前位置和当前速度的适应度,快速的定位偏离公平性约束阈值的测评数据,为下一步的推荐算法去偏优化提供测评支撑,具有较强的实用性和可实现性。
[0234]
上述为本实施例的一种推荐算法的公平性评估装置的示意性方案。需要说明的是,该推荐算法的公平性评估装置的技术方案与上述的推荐算法的公平性评估方法的技术方案属于同一构思,推荐算法的公平性评估装置的技术方案未详细描述的细节内容,均可以参见上述推荐算法的公平性评估方法的技术方案的描述。
[0235]
本说明书另一种实施例提供了另一种推荐算法的公平性评估方法,包括:
[0236]
根据用户的调用请求为所述用户展示数据交互界面,并接收所述用户通过所述数据交互界面输入的初始测评数据;
[0237]
对所述初始测评数据进行处理,确定目标测评数据,其中,所述目标测评数据包括至少两个维度的测评属性的数据;
[0238]
根据所述测评属性确定至少两个测评对象,以及所述至少两个测评对象的当前位置和当前速度;
[0239]
根据所述至少两个测评对象对所述目标测评数据进行分类,并根据推荐算法针对分类后的目标测评数据的公平性指标,确定所述至少两个测评对象相对于所述当前位置和所述当前速度的适应度;
[0240]
根据所述适应度确定所述推荐算法的公平性评估结果,并将所述推荐算法的公平性评估结果通过所述数据交互界面展示给所述用户。
[0241]
其中,对初始测评数据进行处理,确定目标测评数据的具体实现方式可以参见上述实施例,在此不再赘述。
[0242]
本说明书实施例提供的推荐算法的公平性评估方法,在接收用户通过数据交互界
面输入的初始测评数据之后,对初始测评数据进行处理获得目标测评数据,根据至少两个测评对象,在目标测评数据多维的测评属性上执行自动搜索,通过至少两个测评对象相对于当前位置和当前速度的适应度,快速的定位偏离公平性约束阈值的测评数据,为下一步的推荐算法去偏优化提供测评支撑,具有较强的实用性和可实现性;并且可以将推荐算法的公平性评估结果通过数据交互界面以可视化的形式展示给用户,提升用户使用体验。
[0243]
另一种实现场景中,可以在根据ai模型进行具体应用执行之前,通过本说明书实施例提供的推荐算法的公平性评估方法对多个ai模型进行公平性评估,获得每个ai模型的公平性评估结果,后续用户则可以根据每个ai模型的评估结果,选择公平性高的ai模型进行具体应用执行,以保证软件执行过程以及执行结果的准确性。具体实现方式如下所述:
[0244]
本说明书实施例提供了一种ai模型选择方法,包括:
[0245]
接收用户通过模型评估交互界面确定的ai模型;
[0246]
根据上述推荐算法的公平性评估方法,对所述ai模型进行公平性评估,获得所述ai模型的公平性评估结果;
[0247]
将所述ai模型的公平性评估结果,通过所述模型评估交互界面展示给所述用户;
[0248]
响应于所述用户针对目标ai模型的选择指令,根据所述目标ai模型执行所述用户的项目需求,
[0249]
其中,所述目标ai模型为所述用户根据所述ai模型的公平性评估结果确定。
[0250]
具体的,ai模型可以理解为人工智能预训练模型,包含了“预训练”和“大模型”两层含义,二者结合产生了一种新的人工智能模式,即模型在大规模数据集上完成了预训练后无需微调,或仅需要少量数据的微调,就能直接支撑各类应用;且该ai模型可以理解为通过上述实施例中的某种推荐算法实现的ai模型。
[0251]
推荐算法的公平性评估方法可以理解为上述实施例中介绍的推荐算法的公平性评估方法,通过上述实施例中的任意一个推荐算法的公平性评估方法,实现对ai模型的公平性评估。
[0252]
具体实施时,在根据ai模型进行项目需求(如图片处理需求或者文字识别需求等)处理之前,接收用户根据项目需求,通过模型评估交互界面选择的ai模型(如从本地的模型调用接口调用的存放在本地的多个ai模型,或者通过其他模型服务调用接口调用的外部的多个ai模型);通过上述实施例提供的任意一种推荐算法的公平性评估方法,对每个ai模型进行公平性评估,获得每个ai模型的公平性评估结果,然后将每个ai模型的公平性评估结果,通过该模型评估交互界面展示给用户;并接收用户根据该每个ai模型的公平性评估结果,从多个ai模型中选择的目标ai模型,根据该目标ai模型执行用户的项目需求,即利用该目标ai模型根据项目需求进行具体处理过程的执行。
[0253]
图5示出了根据本说明书一个实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
[0254]
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域
网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。
[0255]
在本说明书的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
[0256]
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
[0257]
其中,处理器520用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述推荐算法的公平性评估方法的步骤。
[0258]
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的推荐算法的公平性评估方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述推荐算法的公平性评估方法的技术方案的描述。
[0259]
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述推荐算法的公平性评估方法的步骤。
[0260]
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的推荐算法的公平性评估方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述推荐算法的公平性评估方法的技术方案的描述。
[0261]
本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述推荐算法的公平性评估方法的步骤。
[0262]
上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的推荐算法的公平性评估方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述推荐算法的公平性评估方法的技术方案的描述。
[0263]
当然,具体实施时,本说明书实施例提供的上述推荐算法的公平性评估方法,还可以部署在云端、本地、客户端、iot(internet of things,物联网)设备中实施,本说明书实施例对此不作任何限定。
[0264]
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0265]
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所
述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0266]
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
[0267]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0268]
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。