序言
PriWe利用众包的权限设置来理解用户隐私的期望,并提供应用程序特定的建议来缓解信息泄露。
介绍
用户长期依赖移动设备,已泄露大量隐私信息。Priwe帮助用户正确快速地建立自己的隐私设置。
已存在相关系统:
Apple有专门的控制菜单,用户可以自己控制每个程序的每项权限开关。
Android有类似细粒度权限控制(详细到记录级别)
设计理由:
根据现有的控制方式。如苹果端的控制菜单,因为用户不能理解相应权限对隐私泄露的意义所以无法进行正确的隐私保护。此外需用户独立完成所有设置对用户来说相对枯燥。
设计方法:
在用户的隐私偏好和对应用的隐私期望方面,了解用户的相似点向用户推荐合适的权限设置。
1>用户更在乎什么(地理位置或者联系人信息)
2>用户对应用的期望(希望应用程序能访问什么,如,地图要访问gps)
设计原理:
用户在某些私人数据/或隐私预期方面有类似偏好,在相关项目中关于隐私设置的决策也类似。
总体路径:
1>使用众包机制来理解用户对移动应用的隐私期望。(由我们来收集大量不同用户数据)
2>将基于项目和基于用户的协作方式结合
3>部署并收集反馈意见。结果显示Priwe能做出最优推荐。
用户的隐私期望
Wesin提出,隐私是个人、团体或机构的要求,以确定自己的时间、方式和程度,并将其与他人的信息联系起来,并被称为信息隐私。
理解隐私期望的概念框架,称为上下文完整性,建议隐私包括适当性和分配性。
恰当性的重点是在给定的背景下,某一特定信息的披露是否合适。
重要思路:
专家:安全方面应有正确选择,将安全性作为优先级。
Priwe:追求可用性和隐私性的平衡,建议牺牲安全程度添加相应可用性。
系统设计
体系结构
设计意图:
1>在手机端做决策
2>在服务器端进行分析众包的过程数据和生成建议
APP需要具备的功能:
1.通过名字自动扫描识别,用户可以相应浏览每个应用的隐私权限设置。
2.Priwe也需要被应用在其他应用上(实现自动设置)
3.程序本身应尽可能少的保存数据访问权限。(不成为隐私风险)
服务关键组件:
1.数据预处理(对于收集到的数据的验证和分类)
2.生成推荐(建议的推荐算法在该组件中)
3.数据库:所有信息被保存在一个内置的数据库中。(包括原始众包数据和处理结果)
推荐系统机制
出发点:
代表用户,从与其同样关切的人那里收集意见
现有传统推荐:消费者————商品(电商)
类似映射:用户————隐私设置
协作式技术:基于内存
优点:
1.非参数算法不用基于假设模型
2.容易被推导到更高阶,易于计算和理解
3.相比其他混合算法更健壮
4.需更少参数(只有少量参数适当调整后可计算更快)
基于项目/基于用户协同过滤
从基于用户和项目两方面计算相似性。
R i,a,g定义:用户i的app a的权限设置g。
将隐私权限做二分变量(0,1)(不许访问,允许访问)
R i,a,g=0定义:用户不愿意分享数据。不许访问。
R i,a,g=1定义:用户允许披露这些信息。允许访问。
基于用户(用户期望):
通过每个用户手机中应用程序对应许可相同设置的数量判断用户相似,根据相似用户的选择生成推荐。
(若用户1,2,3相似,用户1,2开启了某权限,推荐用户3开启相应权限)
对应表示:
因为R i,a,g=0& r i,b,h=0 &r i,c,k=1
R j,a,g=0& r j,b,h=0 &r j,c,k=1
R q,a,g=0 & r q,b,h=0与i,j相同
所以r q,c,k=1
Su(i,j):作为用户i和j的相似度(-1到+1之间,接近1表示更相似)
基于皮尔森相关系数计算
pearson是一个介于-1和1之间的值,用来描述两组线性的数据一同变化移动的趋势。
使用协方差/方差计算两组线性数据相似性。
即:有用户i和用户j的所有app和权限设置数据,使用皮尔森相关系数计算两组数据线性相关程度。
Su(i):用户i的相似集合
应用一个阈值或top-N策略得到相似的用户集合:
将数据库中持有的所有用户与i做相似度计算,结果排序后取前n项作为用户i的相似集合
基于项目(应用期望):
通过每个应用程序对应的权限设置采取一致选择的用户数量判断项目相似,根据用户已有设定的相似项目关联生成推荐。
(若权限g和h相似,当g开放,推荐h开放。)
Si(g,h):隐私权限的相似度,(相似性是基于用户的现有设置)
修正余弦相似度:表示的是用户i已持有的项目平均值,即计算时未被持有的项目不采取置0而是直接忽略。
Si(g):权限g的相似集合:所有许可分别与g计算相似度后排序,取最相似的前N项作为权限g的相似集合。
融合计算
基于概率的相似融合框架,生成更健壮的相似性,克服数据稀疏问题。(实际部署工作中的障碍)
基本思想:根据概率提供不同权重将二者融合分析
基于用户相似定义一个与用户x相似的隐私权限设置集合:
基于项目相似定义一个与许可z相似的隐私权限设置集合:
同时基于用户和项目相似共同定义一个隐私权限设置集合:
因内在特征导致用户偏好不同为了降低影响,删除平均值来恢复收集的隐私设置:
理解:为避免过拟合,删除数据中的特殊值,得到一个标准集合(标准设置)
定义一个样本空间,表示设置未知,0表拒绝,1表允许
定义作为一个给定标准化设定的条件下,用户x对于应用y的许可z的隐私设定的条件概率
Ωx,y,z表示标准函数中已知具体设定的部分。即除去未知设定的集合。
理解:在计算出的标准集合中(既属于用户相关集合又属于项目相关集合),rx,y,z的概率。(不取任何值,只是作为一个集合,后用来得到偏向的不同估值)
引入了两个独立的二元指标I1和I2来表示对集合的依赖
I1=1表示依赖于集合US,而I1=0表示独立
I2=1表示依赖于集合IS,而I2=0表示独立
后便于计算将其转化为两个参数,两个参数的具体值都是从真实世界部署的数据中计算出来的。
考虑不同可能性列出以下:
估计值(在分别不同程度依赖于US,IS,UIS的和中取估计值):
利用用户之间的相似性来计算基于US的可能性
利用许可之间的相似性来计算基于IS的可能性
把概率估计看作是相似函数su(i,x)和si(g,z)的组合
欧氏距离将二者相似度放在空间内转化为综合考虑后的i,a,g和x,y,z的相似度:
分别根据不同条件基准得到不同集合范围(取0.7,取0.5):
协同取得估值生成推荐:
实现
APP
设计需求:
1.应该提供一些用户的输入元素,使用户可以进行权限设置与隐私相关的设置。然后,这些设置将被发送回服务器以生成建议。
2.PriWe应用应该能够应用来自服务器的推荐结果。当用户使用推荐设置时,它可以自动设置隐私权限。它还提供了一些额外的功能来改善用户体验。
3.用户可以浏览他们的智能手机上安装了哪些应用,以及哪些数据访问权限被允许。
(可由Android SDK的标准api完成)
SERVER
三个关键组件:
数据预处理:服务器主要关注于清理和结构化收集的数据
推荐生成:利用前面提到的推荐算法,以数据预处理部分作为输入项,输出一个隐私权限设置列表。
表示和增强:服务器总结收集到的数据并向用户提供一些统计信息,当用户接受了推荐设置后修改权限设置,该隐私权限设置列表相对修正。
服务器部署在IBM服务器上。
三层架构:
应用层:html、javascript和第三方库实现的Web前端
域逻辑层:Java EE体系结构和企业bean机制来分析所收集的数据(为提高系统健壮性和可使用性,web应用程序是构建在spring、Struts和hibernate之上的。推荐算法也在该层)
数据持久化层:所有数据都存储在mysql数据库中。
评估
两个实验:
1.基于用户调查
2.基于真实世界用户期望
准确性(效益)计算:
Accuracy(i)=(参与者设置∩推荐设置)/推荐设置
(为获得更完整的结果将数据分为两组:一组用于培训,另一组用于测试。)
调查评估
设置两组调查:(调查对象选择广泛,结果有说服性)
A组得到对各种应用广泛的参与者的隐私偏好。
B组收集细粒度的参与者对一些特定的移动应用程序在某些隐私权限请求的偏好。
结果表明,基于调查A和调查B的结果比基于A或B调查的结果更好,表明当数据集由更多的众包许可设置组成时,这些建议可以达到更高的准确率。两项调查的结合也能在一定程度上克服数据稀疏问题。
朴素方法的基本原理:
1)根据Google Play Store提供的分类
2)根据一般意义预先确定一些合理的授权权限
3)如果它们属于预先设置的权限组,接受所有的权限请求,否则拒绝。
验证:
通过与基于用户的和基于项目的协作进行比较,进行了k-折交叉验证(k取10)
得到每个测试数据集的PriWe可以达到稳定和高精确度。
参数计算:
由于两个参数的具体值都是从真实世界部署的数据中计算出来的,所以很重要的是稳定性和可伸缩性。
稳定性:参数的最优值不会随着不同集合中的具体数据而发生很大的变化。
可伸缩性:参数的最优值不会随着数据集的大小而发生很大的变化。
这里的最优值被当作一个值,这个值将导致最小的绝对误差(MAE)23
不同大小和内容的子数据集从原始的测试数据集中随机生成,我们计算了我们的推荐结果的平均绝对误差到每个子数据集的不同参数值的实际选择。
图10(a)显示,在不同的数据和不同的数据量下,最优值在0.5左右,最优值是稳定的,并且可以在不同的数据集上得到很好的扩展。
图10(b)给出了参数的结果,表明其最优值也相当稳定,且具有良好的规模。更具体地说,它的最优值是0.7,在所有情况下,即使数据集的内容和大小发生了巨大的变化,我们的推荐算法在等于0.7时总是能达到最小值,
图10(c)中,参与者的数量将如何影响最优值给出结果。结果表明:当数据集的大小很小时,两个参数的最优值将会发生很大的变化。但是,当数据集的大小大于50时,它们的最优值将变得非常稳定,并且将分别保持0.5和0.7。这意味着,我们只需要使用大型初始数据集来学习最优的参数值,并且这种学习的最优值对于以后的实际世界大规模部署是有效的。
小结
现今由于人们在生活,工作,各方面愈加依赖移动设备,人们的各种隐私数据正在面临大量泄露。应用程序获取信息的要求成为数据流出的主要方面,而现有的ios和android系统虽然有一定权限控制功能,但因为用户不能理解部分数据权限对隐私泄露的意义所以无法进行正确的隐私保护。此外需用户独立完成所有设置对用户来说相对枯燥。所以本文提出为用户推荐数据访问许可,从而减少数据泄露问题。
本文设计的推荐系统主要功能是应用程序获取权限的初始化设置推荐,在用户需要进行隐私权限设置时进行预测推荐,并自动应用至应用程序。
本文提到的推荐算法主要思想是将用户期望和应用期望相结合。
设计思路是代替用户收集其他用户手机隐私权限设置情况,上传至服务器根据用户相似度和项目相似度并通过实际数据计算出不同权重融合形成相似设置的条件概率生成预测推荐至手机端。
用户期望偏好:用户更在意的数据类型,用户是否愿意将一些数据访问设置为许可。
应用期望:应用程序为了更好的服务需要获取的数据访问权限。
最后进行调查检验算法推荐准确率,结果显示基于用户或项目的算法准确度并不如二者相融合的准确度,基于安全性的准确度不如基于偏好的准确度,通过对不同人群,性别、年龄、专业背景的分类调查,综合考虑验证数据具有说服性。此方法具有可实现性。
有关精确度提高问题:一些年轻人对他们的移动应用的隐私许可可能没有明确的认识。随着参与者年龄的增长,精确度会逐渐提高。对于有信息技术背景的参与者,对于关注隐私和安全的参与者(大约90%)的推荐的准确性要高于所有被选中的参与者。这可能是因为他们在信息隐私和安全方面的经验提高了他们的意识,帮助他们对手机的隐私权限设置做出适当的选择。
Q1:这个推荐系统和传统淘宝推荐系统的区别
答:
Priwe:
1.推荐角度:
用户隐私偏好角度:用户隐私注重点提升用户使用感
用户对应用的期望:提高应用程序的服务能力
2.数据:
收集用户隐私权限许可设置。
3.算法:
协作式算法:基于内存
User-based&Item-based根据不同权重协同过滤
基于相似性推荐:通过将用户和项目划分相似集合,判断相似条件概率推荐。
关联规则:应用期望相关性,用户偏好相关性
淘宝:
1.推荐角度:
用户角度:提高用户忠诚度帮助用户快速找到商品
网站角度:提高网站销售能力提高成交转化率
2.数据:
用户背景信息:性别、年龄、专业等
用户对商品喜好情况:用户评价,用户收藏等
用户行为:用户搜索关键字、用户浏览、用户页面停留时间、访问次数等
3.算法:
协作式算法:基于模型,基于内存。
Content-based、collaborative-based、association
rules等
基于内容推荐:通过给用户和商品分类、标注Tag,内容匹配
关联规则:类目相关性、商品相关性、人的相关性。
Q2:如何结合用户的隐私偏好和应用期望?
答:
根据概率提供不同权重将二者融合分析。
1.用户的隐私偏好显示于已知的用户的隐私设置数据,通过在云端寻找相似用户(相同设置越多,用户越相似。)来预测用户隐私设置。
2.应用期望相似性是基于用户的现有设置,通过在云端寻找相似项目(对两个设置做同样选择的用户越多,项目的相似性越高。)来预测用户隐私设置。
3.分别在数据库中选取与预测对象相似度最高的数据建立两个相似集合。
3.设定两个参数作为融合二者时不同权重。
4.通过下发调查确定两个参数的最优取值。
5.计算欧氏距离将两种相似度放在空间内转化为综合考虑后的i,a,g和x,y,z的相似度。
6.最后在根据二者权重得到的条件概率中取估值作为推荐。
Q3:这个系统如何用到app预测中?
App预测是基于iknn增量预测模型来预测下一个要使用的app,将采集得到所有实例的会话特征值数据预处理并构建Iknn model增量预测模型。根据计算欧氏距离预测。
这个系统可作为冷启动部分,收集用户的app使用记录,根据用户持有app相似度和使用记录的相似度做融合,根据本地用户存在的app,计算相似度,根据其他用户的使用情况完成预测推荐。
方案:
针对冷启动部分
一开始我们不知道用户的手机使用习惯,所以根据云端手机其他用户的使用情况推荐app。
即在云端找最匹配的推荐。
推荐算法:
①数据:
1.收集用户app持有记录(有哪些app)
2.收集用户app使用数据记录,如时间关联,上下文关系,传感器等(需要获取很多权限,储存大量数据涉及用户隐私性问题)
②处理:
1>用户持有app相同数越多越相似
2>用户app使用频率数据重复率越高越相似。
分别根据现有的数据按以上两方面计算用户间的相似度,并根据相似度排序取top -N建立相似的用户集合。
设置两个参数作为两个权重。将两个用户相似集合做一次融合。
根据相似用户的使用数据做user-based推荐。
基于上下文处理关联度item1-based
当用户使用app同时使用某传感器(使用网易云音乐时耳机接口触发)相同用户越多说明二者关联性越强。根据关联性强度取top-N建立关联item1集合。当测试用户插入耳机时,根据在云端得到耳机和网易云音乐的相似程度推荐启动网易云的app。
基于上下文处理关联度item2-based
当用户打开某APP后接着使用另一款app(当用户开启音乐软件后随即开启读书软件)相同用户越多说明二者关联性越强。建立相似集合后,在云端得到两款app的关联程度,当用户开启音乐软件,则读书软件在推荐列表中。
根据不同权重设置三个参数,使用与priwe中类似的协同过滤的融合框架,计算条件概率,根据概率排序,在前者优先推荐。
计算最优参数并分别检验不同基准得到推荐准确度,对比生成最优结果。
使用k折交叉检验,测试数据预测能达的准确度。
网友评论