一种视频推荐系统中的隐私保护方法和视频推荐方法与流程

文档序号:11518225阅读:369来源:国知局
一种视频推荐系统中的隐私保护方法和视频推荐方法与流程

本发明涉及网络与信息安全技术领域,具体涉及一种视频推荐系统中的隐私保护方法和基于差分隐私的视频推荐方法。



背景技术:

随着互联网的快速发展,越来越多的人喜欢在互联网上浏览和发布各种视频信息,而最新的调查显示视频信息约占了整个互联网流量的76%,而且这个比例还在不断提高。用户在youtobe、爱奇艺、腾讯视频等视频网站浏览视频的同时也产生了大量历史信息,而视频网站通过推荐系统来挖掘这些历史信息对用户进行视频推荐服务的方式,不但提高了服务质量也增加了经济效益。

另一方面,随着用户隐私意识的不断提高,越来越多的用户对推荐系统泄露自己隐私的行为表示担忧,据相关调查显示68%的用户认为现在法律不足以保护其隐私,并要求更严格的隐私法;86%的互联网用户曾经采取主动措施来消除或掩盖其历史记录。

针对推荐服务和用户隐私之间日益紧张的现象,寻求一种既能保证高质量的推荐服务又能保护用户隐私的推荐方法是十分有意义的。

在传统的视频推荐算法(如协同过滤等)中可信的云服务器通过收集所有用户的数据来执行个性化推荐服务,而保护用户隐私的方式大多基于匿名化措施。然而实际中云服务器由于利益的牵涉,片面的认为云服务器是可信任的这一观点往往是不切实际的,而且在将用户数据上传到云服务器端的过程中为了避免中间人攻击等威胁,往往需要通过加密等措施来保障数据的传输安全,这无疑又会增加整个推荐过程中的开销。

为了解决以上问题,文献[y.shenandh.jin.epicrec:towardspracticaldifferentiallyprivateframeworkforpersonalizedrecommendation.incss,pages180-191,2016.]中提出了一种在用户端对用户数据进行差分隐私处理的视频推荐系统,较好的解决了视频推荐服务和隐私保护的冲突问题。该系统的主要算法是:对请求视频推荐服务的用户,取其最近浏览的历史视频记录,将每个视频按类别进行聚类,同时根据用户对每个类别设置的关心级别,对聚类结果添加不同量级的服从拉普拉斯分布的噪声,以上过程均在用户端完成,最后用户端将扰动后的聚类信息发送给云服务器来获得推荐服务。

虽然现有的推荐方案中由于采用了差分隐私保护的策略使得安全性方面得到了较大的提高,但是由于在单个用户端添加噪声,不知道所有用户数据的整体分布情况,导致与直接在云服务段添加噪声的方式相比用户数据的有用性损失较大,难以保证高质量的视频推荐服务。



技术实现要素:

本发明的目的在于提供一种视频推荐系统中的隐私保护方法,以解决现有推荐系统中的隐私保护问题。

本发明的目的还在于提供一种基于差分隐私的视频推荐方法,以对视频推荐过程中的用户隐私进行保护。

为此,本发明一方面提供了一种视频推荐系统中的隐私保护方法,包括以下步骤:步骤一:用户发送视频推荐请求给云服务器,云服务器将相同时间段发送请求的用户组成一个组,然后广播组号给组内所有成员;步骤二:组内用户计算自己最近一次当选为用户代理到现在的时间间隔,时间间隔最大的用户当选为本次的用户代理;步骤三:每位用户根据自己的历史视频浏览记录和评分信息计算出一张用户信息表,加上一个随机id后发送给用户代理;步骤四:用户代理将所有用户的用户信息表组合成一张推荐表,然后在推荐表中添加服从拉普拉斯分布的随机噪声,实现差分隐私处理,然后将扰动后的推荐表发送给云服务器;以及步骤五:云服务器用推荐算法对用户代理发送的推荐表进行视频推荐服务,并将推荐结果返回给用户代理。

根据本发明的另一方面提供了一种基于差分隐私的视频推荐方法,包括以下步骤:

(1)初始化阶段:云服务器对拥有的所有视频资源进行类别划分,每个视频资源可以同时属于多个类别,并且有一个默认的评分,用户端类别和云服务器端中类别数量一致;

(2)用户组选择阶段:云服务器设置一个时间阈值和用户组数量阈值来确定用户组中成员,当同时有多个用户发起视频推荐请求时,第一个用户的请求时间达到阈值或者用户数量达到阈值时,云服务器将停止增加本组成员;

(3)用户历史信息提取阶段:当用户端发送视频推荐请求时,将用户最近的历史视频浏览信息按类别进行聚类,其中用户对每个视频的评分作为聚类的权重参数,若用户没有评分,则使用该视频的默认评分,然后生成一张一维的用户信息表;

(4)用户信息匿名化阶段:用户随机选取一个id,并在用户组中广播,若与其他用户id冲突,则重新选择一个id,然后将id与用户信息表进行组合,

(5)用户代理选取阶段:在用户组中选择一个用户作为用户代理,用户代理选择成功后广播自己的身份,用户组中的用户将自己组合id后的信息表发送给用户代理,用户代理将用户组中的所有用户信息表组合成一张二维的推荐表;

(6)差分隐私处理阶段:在推荐表中添加服从拉普拉斯分布的随机噪声,然后将扰动后的推荐表发送给云服务器;以及

(7)视频推荐阶段:云服务器从用户代理接收到推荐表后,可以根据推荐表中每位用户信息进行推荐服务,生成的推荐结果同样是一张二维表,将推荐表中的用户id与推荐结果表组合后返回给用户代理,用户代理接收到推荐结果后,将推荐结果根据用户id广播给组中的成员。

相对于现有技术中的方案,本发明具有以下优点:

(1)本发明在视频推荐服务的基础上研究了隐私保护问题。现有的视频推荐系统中保护隐私方法主要在云服务器上对用户信息进行匿名化处理,但是寻求可信的云服务器往往是不切实际的,而且将用户数据上传到云服务器端的过程中为了防止“中间人”等攻击,需要额外加密解密等方法来保护信息。针对以上问题,提出了一种保护视频推荐用户的隐私的方法。

(2)本发明有机的结合了匿名化技术和差分隐私技术,利用差分隐私保护来弥补传统视频推荐中隐私保护强度不够的缺点,用匿名化技术弥补了差分隐私保护降低推荐服务质量的问题。

(3)本发明基于差分隐私来保护推荐过程中的用户隐私,在用户端扰动后的用户数据可以直接发送给云服务器,而不需额外的加密解密等操作,大大提高了推荐效率。

(4)本发明中用户端可以根据具体的隐私保护需求,动态调整安全参数ε来控制隐私保护的级别。

由此可见,本发明为解决视频推荐系统中的隐私问题拓展了空间,同时具有良好的实用效果。

除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。

附图说明

构成本申请的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为根据本发明的视频推荐系统中的隐私保护方法的流程图;

图2为根据本发明的基于差分隐私的视频推荐方法的流程图;以及

图3为根据本发明的基于差分隐私的视频推荐方法的功能框图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

如图1所示,本发明的视频推荐系统中的隐私保护方法包括以下步骤:

s101:用户发送视频推荐请求给云服务器,云服务器将相同时间段发送请求的用户组成一个组,然后广播组号给组内所有成员;

s103:组内用户计算自己最近一次当选为用户代理到现在的时间间隔,时间间隔最大的用户当选为本次的用户代理;

s105:每位用户根据自己的历史视频浏览记录和评分信息计算出一张用户信息表,加上一个随机id后发送给用户代理;

s107:用户代理将所有用户的用户信息表组合成一张推荐表,然后在推荐表中添加服从拉普拉斯分布的随机噪声,实现差分隐私处理,然后将扰动后的推荐表发送给云服务器;以及

s109:云服务器用推荐算法对用户代理发送的推荐表进行视频推荐服务,并将推荐结果返回给用户代理。

本发明的隐私保护方法在视频推荐方法中使用,该方法在不改变云端推荐算法的前提下解决了传统推荐算法难以实现对用户个人隐私进行有效保护的问题,同时提供了高质量的视频推荐服务。

结合参照图2和图3,本发明的视频推荐方法包括以下步骤:

(1)初始化阶段。云服务器对拥有的所有视频资源进行类别划分,每个视频资源可以同时属于多个类别,并且有一个默认的评分。用户端类别和云服务器端中类别数量一致。

具体地,考虑在一个视频推荐系统中,云服务器的视频库有k个视频{vj|1,2,…,k},每个视频有一个对应的默认评分pj,所有视频共有c个类别{rj|1,2,…,c},同一个视频可以同时属于多个类别。在本发明中假设所有用户的兴趣爱好短时间内是不改变的。

(2)用户组选择阶段。云服务器设置一个时间阈值和用户组数量阈值来确定用户组中成员。当同时有多个用户发起视频推荐请求时,第一个用户的请求时间达到阈值或者用户数量达到阈值时,云服务器将停止增加该组成员。

具体地,当一个用户ui(i=1,2,…,n)向云服务器发出视频推荐请求时,云服务器需要将用户ui加入一个用户组gi(i=1,2,…,n)中,为此云服务器设置一个时间阈值t和一个用户组数量阈值c。在一个新的用户组中,云服务器从接收到第一个用户的视频推荐请求开始计时,当时间到达阈值t时,停止向用户组gi中添加新用户,或者虽然计时没有达到阈值,但是用户组gi的用户数量达到阈值c时,同样停止添加新用户。确定同一个用户组的所有成员后,云服务器将广播组号gi给所有组员,组员之间通过组号进行通信。

(3)用户历史信息提取阶段。当用户端发送视频推荐请求时,将用户最近的历史视频浏览信息按类别进行聚类,其中用户对每个视频的评分作为聚类的权重参数,若用户没有评分,则使用该视频的默认评分。最后生成一张一维的用户信息表。

具体地,(3.1)统计视频类别

用户ui将根据云服务器提供的视频类别建立一个视频类别统计表,用来统计用户最近浏览的n个视频所属的类别,表示视频vj对应的类别rj,若视频vj对应的类别rj,则对应的值为1,反之为0。

(3.2)生成用户信息表

根据视频类别统计表和用户对每个视频的评分计算用户对每个视频类别的喜好程度其中pj′为用户对视频vj的评分,若用户未评分,则将pj′替换为视频的默认评分pj。

(4)用户信息匿名化阶段。用户随机选取一个id,并在用户组中广播,若与其他用户id冲突,则重新选择一个id。最后将id与用户信息表进行组合。

具体地,用户的信息表生成后,需要选择一个临时的uid来作为身份标识信息,用户随机选择一个6位的随机数并在组内广播,若该id与组内其他成员的id发生冲突,则重新选取。最后将选择的uid与用户信息表进行拼接。

(5)用户代理选取阶段。在用户组中选择一个用户作为用户代理,用户代理选择成功后广播自己的身份,用户组中的用户将自己组合id后的信息表发送给用户代理,用户代理将用户组中的所有用户(包括自己)信息表组合成一张二维的推荐表。

具体地,用户组中每个成员计算自己最近一次当选为用户代理到现在的时间差t,t值最大的用户当选为本次用户组的用户代理。用户代理广播自己的身份后,开始接收组内成员发送的信息表并组合成一个二维的推荐表,最后将自身的信息表随机插入到推荐表中。

(6)差分隐私处理阶段。在推荐表中添加服从拉普拉斯分布的随机噪声,然后将扰动后的推荐表发送给云服务器。具体地,包括以下步骤:

(6.1)选择安全参数ε

本发明中为了更好的保护用户的个人隐私,需要在推荐表中添加服从拉普拉斯分布的随机噪声,使整个算法满足ε-差分隐私。关于差分隐私具体内容,请参考文献[c.dwork.differentialprivacy:asurveyofresults.intamc,pages1–19,2008.]。本发明中用户代理将安全参数ε设置为其中s为用户组中用户总数,c为用户组数量阈值。

(6.2)计算敏感度参数s(f)

令t1、t2为任意一对相邻推荐表,根据敏感度公式有f∈f且f(t)∈r,其中f为查询函数集,f(t)为查询函数f查询表t的结果,r为实数。

(6.3)添加噪声

将推荐表中每个用户对每个视频类别喜好分值hr修改为hr+gi,gi是符合lap(b)分布的随机噪声,其中

(7)视频推荐阶段。云服务器从用户代理接收到推荐表后,可以根据推荐表中每位用户信息进行推荐服务。生成的推荐结果同样是一张二维表,将推荐表中的用户id与推荐结果表组合后返回给用户代理。用户代理接收到推荐结果后,将推荐结果根据用户id广播给组中的成员。

具体地,用户代理将推荐表经差分隐私处理后,发送给云服务器端,云服务器端根据推荐表中用户对每个视频类别的喜好程度找出用户喜好程度较高的几个类别,然后从自己的视频库中选取同类别且评分较高的视频推荐给用户,最后将推荐结果vi′(i=1,…,k)和推荐表中的用户uid进行拼合后返回给用户代理,用户代理接收到推荐结果后,广播给组内所有用户,完成整个推荐过程。

本发明通过引入评分作为权重参数来优化聚类的结果,同时选择一个用户代理来统一将匿名化的用户数据进行差分隐私处理,进一步降低数据扰动所造成的有用性损失,从而保证了高质量的视频推荐结果。

实施例

初始化阶段

假设云服务器有1000000个视频,且每个视频都已经有了默认评分,这里的默认评分通常是网友对该视频的平均评分,所有视频共有14个类别,分别为ri(i=1,…,14),1000000个视频都已被分类,同一个视频可以同时属于多个类别。

用户组选择阶段

假设云服务器端将用户组选择时间阈值设置为1秒,数量阈值设置为10000。一个组号为10的用户组,从第一个用户发起视频推荐请求开始计时,最终确定组内成员数量为5000名,分别编号为ui(i=1,…,5000)。确定组内成员后,云服务器将组号10广播给组内成员。

用户历史信息提取阶段

(3.1)统计视频类别

确定组号后,每个用户需要生成一张视频类别统计表,统计用户最近所浏览的20个视频所属的类别和评分情况,假设用户u1的历史视频记录如表1所示,其中用户评分列中如果用户未对视频评分,则对应评分为空。

表一

(3.2)生成用户信息表

根据公式计算用户u1对每个视频类别的喜好程度,结果为:

u1:{r1(75.7),r2(26.2),r3(88.7),r4(46.5),r5(96.4),...,r14(33.7)}。

(4)用户信息匿名化阶段

用户u1随机选择一个6位id号111111作为身份表示,并将id号和用户信息表拼合,结果为:

111111:{r1(75.7),r2(26.2),r3(88.7),r4(46.5),r5(96.4),...,r14(33.7)}。

(5)用户代理选择阶段

每个用户计算自己最近一次当选用户代理到当前时刻的时间差t并在组内广播,t值最大的用户当选本次的用户代理。本例中假设用户u1为本次的用户代理,u1广播自己的身份后开始接收组内用户拼合后的信息表,按照接收顺序依次链接成一张推荐表,最后将自己的用户信息表随机插入其中,如表2所示。

表二

(6)差分隐私处理阶段

(6.1)计算安全参数ε

本例中安全参数ε由用户代理设置为

(6.2)计算敏感度参数s(f)

由于本方案中表1使用的是聚类的方法来计算用户对每种视频的喜好程度,且增加一条记录或删除一条记录最大影响为14,所以本例中的敏感度参数s(f)=14。

(6.3)添加随机噪声

由上面计算出的参数给表2中的数据添加服从lap(b)的随机噪声。添加噪声之后的推荐表未示出。由于生成噪声有可能是负数,所以最后生成的推荐表中可能会出现负值,但并不影响推荐结果。

(7)视频推荐阶段

用户代理将扰动后的推荐表发送给云服务器端,云服务器端根据具体的推荐算法给用户推荐视频,如表2中可看出用户333333对类别r1和r4喜爱程度较高,故可以推荐同属于r1和r4类别且默认评分较高的视频给用户,最后将推荐结果和用户id拼合后返回给用户代理,用户代理在将结果广播给组内用户,完成整个推荐过程。

安全性分析:本发明所提出的视频推荐系统中的隐私保护方法实现了密码学的安全性,即在整个推荐过程中不会泄露隐私信息给任何参与方。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1