Graphical Model在收藏夹作弊行为识别上的应用

简介: Graphical Model通常应用在问题本身带有多个相互联系的变量的场景,并提供了一种基于图的表达方式让你去建模这些联系从而挖掘潜在的因果关系。在本文中,我们创新性地将概率图模型应用到了淘宝平台收藏作弊行为检测的任务中,取得了远超传统分类模型的结果(Top1%记录中召回60%的作弊行为)。

总述

Graphical Model通常应用在问题本身带有多个相互联系的变量的场景,并提供了一种基于图的表达方式让你去建模这些联系从而挖掘潜在的因果关系。在本文中,我们创新性地将概率图模型应用到了淘宝平台收藏作弊行为检测的任务中,取得了远超传统分类模型的结果(Top1%记录中召回60%的作弊行为)。本文我们将从作弊行为分析,构建模型,求解模型三个部分对这个工作进行详细介绍。

背景介绍

随着在线购物网站的发展,在线购物正在逐步取代传统的购物方式。2016年普华永道的调查显示54%的购物者每周或每月都会在网上购买商品,其中34%的购物者认为手机是他们主要的购物工具。在购物网站中,搜索引擎是用户找到具体商品,款式或者品牌的主要入口。在搜索引擎的帮助下,用户能够方便地在购物网站上完成一系列加购,收藏,购买行为,而这些用户行为数据本身也蕴含着极大的价值,在优化购物网站的推荐和搜索中扮演了非常重要的角色。“加入收藏夹”作为淘宝一个重要的功能,可以方便用户收藏一些暂时不买的商品。与此同时,商品被“加入收藏夹”的数量,也称作人气,也是淘宝的搜索引擎提供的一种可选的排序策略;且对于默认的综合排序,人气值也常常作为一个参数被引入进去。

为了提升产品或店铺的排名及可见度,部分恶意商家采取虚假的作弊行为以提高销量,主要包括虚假推广行为(收藏、加购和转发)及虚假的评论行为。目前,针对于淘宝作弊活动的地下产业已趋近成熟,尤其是随着众包平台的发展,这些商家可以根据自己的需求,便捷地发布作弊任务,吸引众多的参与者来完成作弊活动,从而快速高效的实现产品或店铺的宣传推广。以虚假收藏为例,恶意商家通过发布任务,快速提高其商品的人气值,从而影响淘宝的推荐和搜索排序策略,进一步提高商品销量。这类借助众包平台的作弊行为能够在短时间内产生大量异常数据,且难以检测,会对用户以及购物网站本身造成恶劣的影响。因此,如何快速有效地找到这些作弊活动,对于淘宝来说非常重要。

作弊活动运作模式

通过调研灰产平台提供的收藏作弊服务,我们总结了如下图所示的作弊模式:
ata_pic1.jpg

首先商家通过平台发布作弊任务,指定商品,搜索关键词,任务时间以及佣金。除了这些基本的信息之外,商家还会提出一些特殊的要求,例如在搜索结果页中浏览超过x分钟,在搜索结果中随机点击y个商品,再点击指定商品进行收藏,有一些任务还需参与者满足一定的等级要求。平台的用户看到任务之后会去申领,根据任务中提出的要求进行搜索,浏览,点击,收藏等一系列动作,最后还需要截图,以便去平台申领佣金。

此类平台的用户,多为兼职刷手,作弊行为只是其在淘宝平台留下的行为的一部分。此外,收藏作为一个隐私行为,无法被大众察觉,缺少类似于“对我有用”、“最佳答案”等显性的指标。因此,这类新兴的作弊任务,很难用已有的方法进行检测。

为了针对此类作弊行为进行识别,我们收集了作弊平台上一个月时间的任务,用于对用户行为进行标注。同时,我们分别从用户属性,商品属性以及行为属性三个角度,对收藏作弊进行了深入分析。我们将这些属性和用户,商品之间的关联关系用Factor Graph模型进行了整合,并基于此设计了一个分类模型来检测可能的收藏作弊行为。

用户、商品以及行为属性对比分析

行为属性分析

首先,我们对作弊收藏行为和正常收藏行为之间的属性差异做了详尽的对比。
ata_pic2.jpg

从加购角度看,作弊收藏行为中带有加购动作的只有6%,而在正常收藏行为中则有8%。这个差异主要是因为极少数的收藏作弊任务中会有加购物车的要求,另外作弊收藏的商品本身也不是用户想要的,自然加购的意愿也就差一些。在搜索过程中,用户可以通过一些筛选条件(发货地,价格区间等)来更有效的找到商品,这里作弊收藏对比正常收藏,使用筛选的比例反而更低一些。对于收藏前是否有其余的商品点击(在当前这次搜索过程中),作弊收藏行为明显高出正常收藏行为很多。这个主要还是因为作弊任务中很多都要求多点几个商品。从时间上看,作弊行为更倾向于发生在周末,这可能是与作弊用户是兼职的有关系。

在下图中,我们对更多的行为属性进行了对比,这其中包括了搜索关键词的长度,搜索结果页浏览深度,搜索结果页停留时间以及点击商品详情页的停留时间。
ata_pic3.png

通过上面的分析,我们可以看到除了前序商品点击之外,其余的多种属性上,作弊收藏行为和正常收藏行为之间的差异性并不大,这也进一步印证了但从行为本身来区分作弊与非作弊是非常困难的。

用户属性分析

在接下去的分析中,我们将收集到的作弊样本涉及的用户定义为作弊用户,其余的用户称为正常用户,类似作弊样本中的商品成为作弊商品,其余的商品成为正常商品。
ata_pic4.jpg

从上表中可以看到,作弊用户的行为(收藏,加购,购买,评论)明显要少于正常用户。这些行为能反映出一个用户在平台上投入的时间,很显然,作弊用户的活跃度远低于正常用户。

ata_pic5.jpg

我们取了其中一个作弊用户,来观察其收藏行为的持续性。结果如上图中展现,作弊用户会在一段持续的时间里(前半个月)收藏一定数量的作弊商品。这个数据说明,作弊用户收藏作弊商品会在某个持续的时间窗口内。

商品属性分析

与用户属性分析类似,我们也对比了作弊商品和正常商品之间的差异性。数据见下表。很明显,作弊商品上的行为数据远低于正常商品,这也反映出,通常只有表现不是很好的商品会寻求作弊,同时这些作弊商品也很难吸引到正常的用户。
ata_pic6.jpg

我们选取了一个作弊商品和一个正常商品,观察它们被收藏的持续性,结果见下图。可以看到,作弊商品上的作弊行为集中在一个很短的时间窗口内,这或许是对应的任务指定的时间。
ata_7.jpg

作弊收藏检测

模型

根据对作弊活动的分析,我们提取了有区分能力的特征,并将提取的特征因素和关联因素统一整合到概率图模型框架中(Activity Factor Graph Model, AFGM),进行虚假收藏活动的识别。

在AFGM模型中,我们一共引入了三方面的特征因素,包括行为特征,用户特征和商品特征,同时引入了基于用户和商品的关联因素,即对于一个固定的时间窗口内,相同用户或者相同商品产生的两条收藏记录建立边的关系,具体模型如下图所示。
ata_8.png

图中,网络G中的一组活动节点 V={A_1, A_2, ..., A_N}被映射到了一组因子节点Y={y_1, y_2, ..., y_N}。G中的活动有一部分是有标签的,因此Y可以被分为有标签的Y_L(训练集), 没有标签的Y_U(测试集)。 AFGM 可以根据训练集中已知的因子节点来推测未知的节点是否是作弊。根据上面对行为属性,用户属性和商品属性的分析,我们定义了以下4种因子:

行为属性因子:f_b (y_i│b_i )表示在给定行为属性向量b_i的情况下,y_i的后验概率。
用户属性因子:f_u (y_i│u_i )表示在给定用户属性向量u_i的情况下,y_i的后验概率。
商品属性因子:f_p (y_i│p_i )表示在给定商品属性向量p_i的情况下,y_i的后验概率。
另外根据前述的发现,作弊商品/用户的作弊行为具有持续性和集中性,所以我们定义了两种相关性因子:
g_u (y_i│C_u (y_i)) 表示基于用户的行为相关性,其中C_u (y_i )是与在概率图中与y_i连接的相关性因子节点的用户集合。
g_p (y_i│C_p (y_i)) 表示基于商品的行为相关性,其中C_p (y_i )是与在概率图中与y_i连接的相关性因子节点的商品集合。

有了这些因子之后,AFGM中的行为概率就可以表达为:
ata_formula_1.png
模型的目标是将P(Y|G)最大化。

模型求解

我们用指数线性函数来定义三个属性因子:
ata_formula_2.png

这里ata_formula_3.png是权重向量,ata_formula_4.png则是特征向量函数。类似的,相关性因子的定义为
ata_formula_5.png
这里,ata_formula_6.png 是权重向量, ata_formula_7.png是示性函数向量。学习AFGM就是去估计一组参数ata_formula_8.png,使得P(Y|G)最大。

为了表述的简洁,我们将一个因子节点y_i的所有因子函数连接在一起,记为
ata_formula_9.png
这样我们可以把P(Y|G)改写成
ata_formula_10.png
由于因子节点集合Y是部分标注的,为了计算这个概率,我们定义Y|Y_L为已知标签集Y_L的前提下,所有节点的标签配置情况。进一步,我们定义log-likelihood目标函数为
ata_9.png
我们用梯度下降算法来求解这个目标函数,其中参数θ的梯度为:
ata_10.png
这里ata_formula_11.png表示在已知标签Y_L的前提下S的期望, ata_formula_12.png 则表示所有标签可能下的S的期望。由于ata_formula_11.pngata_formula_12.png直接计算非常困难,我们利用loopy belief propagation(LBP)算法来求一个近似解。在每次迭代过程中,我们两次运用LBP算法,第一次用于估计位未知节点的边际概率,第二次是用于估计所有节点的边际概率。有了这个边际概率之后,上述的两个期望可以近似为将所有相关节点的边际概率之和。最后根据梯度,我们会不断的更新参数直至收敛。根据学到的参数θ,我们在测试集上再一次用LBP算法估计一个边际概率。这个边际概率就会作为一个节点是否为作弊的预测值。

实验结果

我们将AFGM的结果与Support Vector Machine,Logistic Regression,Random Forest,以及AFGM的三个变种
AFGM-UP:去掉用户因子与商品因子后的模型,用于说明加入用户因子与商品因子的必要性
AFGM-C_u:去掉用户相关性因子后的模型,用于说明加入用户相关性因子的必要性
AFGM-C_p:去掉商品相关性因子后的模型,用于说明加入商品相关性因子的必要性

我们对比Top1%中的作弊召回量:ata_formula_13.png 。同时,我们也是对比了AUC来检查我们的模型是否给予了作弊行为记录一个更高的概率。试验结果如下:
ata_11.png
可以看到,传统方法在作弊检测这个问题上基本上没有效果,而利用概率图模型则均可得到一个较好的结果。相比之下,我们发现即便不考虑商品属性因子和用户属性因子,模型已经能到得到一个很好的结果了,加入这些因子之后只是对最终结果小幅提升。
ata_12.png
上图显示了不同的概率图模型在topk%下的检测效率,可以看到在top10%中,我们就可以检测出近80%的作弊行为,而AFGM与AFGM-UP两种模型的表现非常接近。这个可能是由于相关性因子已经包含了足够的信息用于检测作弊行为。AFGM-CP的表现是四种模型中最差的,这说明商品相关性因子在检测作弊的时候更加重要。

总结

在本文中,我们对淘宝评上的收藏作弊行为从多个角度做了深入的分析,揭示了作弊行为与正常行为之间的差异性。通过这些分析,我们提取了多种特征,并提出了AFGM来推断一次收藏行为是否为作弊。实验结果显示,AFGM在top1%的记录中能召回超过60%的作弊行为。通过不同模型之间的对比,我们也发现商品相关性因子在检测作弊行为时更为重要。尽管我们提出的检测模型具有相当高的效率,但是也得指出目前的算法只能对一个时间周期内的作弊进行整体识别,尚不能对行为进行实时判别,这将是未来的一个研究方向。

目录
相关文章
|
存储 SQL 搜索推荐
业务系统架构实践总结
作者从2015年起至2022年,在业务平台(结算、订购、资金)、集团财务平台(应收应付、账务核算、财资、财务分析、预算)、本地生活财务平台(发票、结算、预算、核算、稽核)所经历的业务系统研发实践的一个总结。1.核心是面向复杂性业务支撑的实践经验(个人概念里的“复杂业务“,大概至少面向5类行业若干业务线且业态差异很大),文章不涉及性能、稳定性、资损防控、大数据离线研发,聚焦在线业务系统架构对多态业务的包容性、开放性、灵活性、可读性。2.文章较多强调”个人”两字,因为仅是我个人在实践上归纳总结的一些方式方法。3.实践经验主要来自两类,一类是接手旧系统,得以见识不一样的设计,文中“见过”特指。
3347 32
|
7月前
|
数据采集 人工智能 算法
AI数字人技术厂商市场格局观察
AI数字人技术正从娱乐迈向多元实用场景,2024年市场规模达41.2亿元,增速超85%。世优科技深耕全栈技术,拥60余项专利,服务千余家品牌,助力政企智能化升级,推动行业向标准化、生态化发展。
|
9月前
|
JSON API Go
房产数据平台安家go获取地区列表数据的API接口
本文介绍如何使用安家go房产数据平台的“获取地区列表”API,通过RESTful接口获取全国省、市、区县等行政区划信息。涵盖API端点、请求参数(如parent_id、分页)、响应格式及Python代码示例,并提供错误处理与缓存优化建议,助力开发者快速集成地理数据功能。
|
9月前
|
存储 人工智能 搜索推荐
阿里云领跑中国向量数据管理公有云服务市场
IDC发布《2024中国向量数据管理公有云服务市场份额》按照索引条数统计,2024年中国向量数据管理公有云服务规模共计4.882万亿条,其中阿里云占比38%,大幅领跑中国市场。
|
人工智能 自然语言处理 搜索推荐
阿里云 AI 搜索开放平台新功能发布:大模型联网能力上线
阿里云 AI 搜索开放平台此次新增了大模型联网能力,通过集成大语言模型(LLM)和联网搜索技术,为用户提供更智能、更全面的搜索体验。
3220 27
|
人工智能 搜索推荐 机器人
挑战未来职场:亲手打造你的AI面试官——基于Agents的模拟面试机器人究竟有多智能?
【10月更文挑战第7天】基于Agent技术,本项目构建了一个AI模拟面试机器人,旨在帮助求职者提升面试表现。通过Python、LangChain和Hugging Face的transformers库,实现了自动提问、即时反馈等功能,提供灵活、个性化的模拟面试体验。相比传统方法,AI模拟面试机器人不受时间和地点限制,能够实时提供反馈,帮助求职者更好地准备面试。
1370 2
|
机器学习/深度学习 人工智能 算法
深入解析图神经网络:Graph Transformer的算法基础与工程实践
Graph Transformer是一种结合了Transformer自注意力机制与图神经网络(GNNs)特点的神经网络模型,专为处理图结构数据而设计。它通过改进的数据表示方法、自注意力机制、拉普拉斯位置编码、消息传递与聚合机制等核心技术,实现了对图中节点间关系信息的高效处理及长程依赖关系的捕捉,显著提升了图相关任务的性能。本文详细解析了Graph Transformer的技术原理、实现细节及应用场景,并通过图书推荐系统的实例,展示了其在实际问题解决中的强大能力。
2313 30
|
算法 定位技术
路径规划算法 - 求解最短路径 - A*(A-Star)算法
路径规划算法 - 求解最短路径 - A*(A-Star)算法
4628 1
|
Linux Shell
26. 【Linux教程】Linux 查看环境变量
26. 【Linux教程】Linux 查看环境变量
1309 1
|
存储 安全 编译器
【C++ 17 泛型容器对比】C++ 深度解析:std::any 与 std::variant 的细微差别
【C++ 17 泛型容器对比】C++ 深度解析:std::any 与 std::variant 的细微差别
1274 1