01
设备指纹的核心技术
设备指纹技术是一个综合性的系统工程,掌握这门技术需要跨越一系列的技术门槛,这也是为什么虽然应用场景广阔,至今市场上此项技术提供者并不多的原因。这里介绍了设备指纹两项关键的技术,大规模在线概率式记录关联和机器学习,让大家对设备指纹有个整体的认识。
大规模在线概率式记录关联
设备指纹的核心任务是,给定两条请求事件,给出这两条请求是否来自同一个设备的判断。了解数据库的人可能会觉得这个有点似曾相识,这很像数据库里的self join。如下图:
SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE T1.a = T2.a;
实际上设备指纹的一项关键技术是概率式记录关联(Probabilistic Record Linkage),它的非概率式版本确定式记录关联(Deterministic Record Linkage)确实和self join很像。对于这项技术的最早的研究与健康医疗数据库相关,其中记录一词也来源于医疗记录。我们以self join举例,看看它的概率式版本。
SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE P(T1.a, T1.b, T2.a, T2.b) > threshold;
我们看到,这里最后一行的匹配条件变了,不再是一个确定的操作符等于号,而是一个介于零和一之间的值。
这里的P(代表概率,probability),是一个关于T1, T2的函数, 计算T1和T2是同一设备的概率。概率式记录关联也因此有时被称为模糊匹配。
设备指纹的原理很简单,那么难点在哪里呢?第一在于设备指纹的典型应用场景反欺诈、营销追踪等都需要实时地给出匹配结果,也就是要在线,这就意味着数据来源不是数据库,而是数据流。
第二,传统的数据库的记录规模往往不是特别大,而在线反欺诈,每一个页面访问(PV)都会产生一条请求,要匹配的请求数,每天至少是亿级的。
熟悉数据库的人都知道,一个一亿条记录的表格self join的复杂度是多高。这还只是简单的确定式的匹配。第三,概率式模型,我会放在后面详细介绍。
所以做好设备指纹的第一步就是建立起一个大规模在线概率式记录关联平台。它牵涉到流数据的处理、分布式内存计算、算法优化、高效的信息搜索等多个环节。
机器学习
早期的设备指纹技术是基于规则的,典型的规则系统是一棵决策树。如果cookie相同,返回true, 否则看IP是否相同,诸如此类的决策逻辑。在此基础上,又衍生出给各项信息赋予权重的打分系统。而这些权重则来自于经验。
对于移动互联网,各种信息数据都在不停地变化,这种经验式的系统根本没有稳定性,也难以维护。对于大规模信息的处理,机器比人更具优势,这也就是在大数据的时代,机器学习流行起来的原因。
对于设备指纹技术,机器学习的方法从数据中学习,让数据说话,摒除了人工规则方法的偏见和不稳定性。但是机器学习的方法也面临一定的挑战,最重要的挑战就是在很多场景下,标注数据是不足的。
近年来,半监督学习的兴起给设备指纹的机器学习带来了新的思路。半监督学习可以认为是监督学习的扩展,与一般监督学习不同的是,监督学习只能在标注数据上训练,而半监督学习可以同时利用标注数据和未标注数据。
生成式模型是一种典型的半监督学习方法,对设备指纹技术有很好的效果。
02
设备指纹的评估指标
设备指纹的本质是记录关联问题,而记录关联从机器学习的角度来看是典型的分类问题。分类问题的评估指标有很多,但并不是所有的指标都适合于对设备指纹的评估,有些甚至是严重误导的,因此有必要在这里对这些指标做一下梳理。常见的指标基本是由以下几个数字计算得出。
常见的分类评估指标有以下几个:
准确度(Accuracy)
准确度(Accuracy)虽然经常被用作分类器评估的指标,在设备指纹的评估中却很少使用。原因是设备指纹的匹配中,正负标注非常不平衡, 分母和分子中的真负(TN)占比例过高,将完全主导最后的准确度值,计算所得准确度总是接近于1, 而毫无意义。同样的问题也出现在分类问题中广为使用的另一指标ROC上。
精确率和召回率
精确率(Precision), 有时也被称为查准率,即被预测为匹配的结果实际确为匹配的概率。
召回率(Recall), 有时也被称为查全率,即一对事实上匹配的设备被正确匹配上的概率。
一种设备指纹技术的精确率和召回率越高越好,但在很多时候,这两项指标很难兼顾。比如在一些电商的场景下,对于精确率的要求很高,以避免误报。但在一些营销的场景下,则是对于召回率的要求很高。
F测度
F测度,或者说F1测度,是一个综合性的指标,它是精确率和召回率的调和平均值。精确率和召回率以相同的权重反映在F测度上。如果对精确率和召回率有所偏好,也可以由广义的Fβ测度给出。其中β越高,则表示召回率的比重越大。常用的两个值为β=2或β=0.5。
不管是精确率,召回率还是F测度,都不计入真负例(TN),其实从下面这个例子就可以看出其中的原因。这是两个数据集A(25条)和B(20条)进行匹配的结果展示,从图中可以看出空的虚线框,即我们正确地作出的非匹配的判断,占绝大多数,但这却是我们最不关心的。
03
设备指纹的应用案例
上海某互金公司位于外滩金融创新试验区,是一家专注为年轻人提供高品质生活方式的互联网金融公司。
客户开发了一款基于H5的小额贷款产品,将其嵌入第三方金融超市发布。在试运营过程中碰到了问题:
(1)部分用户试图利用其他人的身份获得重复授信,虽然后期人工审核能够发现,但正式运营中人工审核无法承担这样的审核量。
(2)由于H5页面发布在第三方金融超市中,用户申请时无法获得稳定的cookie信息,无法从设备的维度自动审核进件。
客户希望能够有一个能够在H5页面中识别重复请求的解决方案。
该客户与猛犸反欺诈合作将猛犸ID系统的SDK嵌入其应用中,在贷款请求事件发生时,向猛犸系统发送请求信息。并通过后台获取消息细节和设备指纹ID(即猛犸ID系统为这些消息赋予的唯一Maxent ID),示意图如下。
在使用猛犸ID系统之前,该客户无法跨应用、跨浏览器识别设备,同样的设备在不同的浏览器或应用中将产生不同的ID。 而猛犸ID系统则能够跨应用,跨浏览器识别设备。
具体来说,对在同一设备上发生的用户行为赋予同一个Maxent ID,可以基于Maxent ID将用户行为按设备进行关联,而且不会因为刷机软件对于设备ID修改而改变。
客户可以基于Maxent ID将同一设备发送的注册请求进行关联。通过统计同一Maxent ID发出的贷款请求数,可以有效的发现重复贷款请求行为。
该客户通过简单的集成工作就成功解决了H5页面设备识别的问题,有效地防范了同一设备反复申请的问题,检测出了7.6%左右的可疑欺诈申请,经过人工对业务数据的检查和电话回访,确认其中90%以上为用户使用多个身份试图骗取多次授信。
结语
在移动互联网日益成为主流的今天,身份欺诈成为在线欺诈的顽疾,欺诈者以移动设备为掩体发动攻击。以设备指纹为核心的设备风险识别相关技术是刺破欺诈者身份伪装的利器。
本文针对设备指纹分别从技术的缘起、流派、工作原理、核心技术难点和评估方法五个方面进行了剖析,希望能够帮助读者更深入的了解设备指纹技术,从而在反欺诈、风险控制等各环节中更好地利用这项技术。
本文来自企鹅号 - 猛犸反欺诈媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文来自企鹅号 - 猛犸反欺诈媒体
如有侵权,请联系 cloudcommunity@tencent.com 删除。