当前位置:网站首页>知物由学 | 行为时序建模在社交引流黑产识别中的应用
知物由学 | 行为时序建模在社交引流黑产识别中的应用
2022-06-11 12:18:00 【网易易盾】

社交欺诈问题日益凸显
近年来,陌生人社交软件满足了城市青年拓宽社交圈和找陌生人倾诉的需求,但由于其天然的婚恋交友属性,导致成为色情/广告引流、以及杀猪盘/杀鱼盘/杀鸟盘等欺诈类黑产频繁入侵的重灾区。
其中最典型的当属恶意引流。诈骗者通过引流脚本、群控、模拟器、多开软件等软硬件结合,操纵大量垃圾小号在社交平台的私信、个签、评论、发帖等场景进行批量色情/广告引流(如图 1 所示)。

在成功吸引用户关注后,通过分流等方式将用户拉入私人聊天空间或其他平台,最终以诈骗等形式变现。因此,引流往往是欺诈的前奏。一方面大量的违规内容会影响平台的用户体验,另一方面一旦脱离平台的用户被诈骗成功,也会对平台的口碑和形象造成极大的影响,导致用户流失与流量折损。
技术如何解题?
大数据与人工智能技术的出现为反欺诈提供了解决方案。
当前工业界与学术界的组织推出了基于文字、图像、语音、视频等内容方面的检测 API 以及解决方案,然而,仅内容检测手段极易落入疲于应对的局面。例如,黑灰产通过同音词、象形词、拆字、干扰词等简单的对抗手段即可成为文本违规检测的疑难杂症,增加算法成本。
图像方面,OCR 特征掩盖、图片扭曲、牛皮癣干扰等形式带来的隐晦有害内容也一直屡禁不止,如附骨之疽一般,难以根治。
如背景部分所述,黑灰产通过操纵多个平台账号进行批量的脚本引流,以此达到提高曝光量、恶意引流的目的。由于使用了自动化工具,因此跨账号之间难免会表现出节奏和步调一致的规律,并且这种潜在的隐式关联规律是黑产无法掩饰和伪造的。
图2为正常用户群体(上)和引流黑产团伙(下)分别计算行为时序一阶差分后的序列对比图,从中明显可观察到,正常用户的行为是随机而分散的,而引流黑产的行为却在时间维度上体现出了高度的同步性。

据此,为了应对黑产欺诈行为的对抗性,我们提出了基于行为时序建模的引流黑产用户识别方法,结合有监督和无监督模型共同构成风控方案,并在实际业务落地中验证了其有效性。相对于纯内容维度的识别算法,该方法优势在于:
账号行为对抗门槛较高,用户的行为习惯、黑产行为协同关系很难在短期内作出改变,从而有效避开与黑产的直接对抗;
恶意引流话术可以在不同的内容模态之间,如文本、图像、语音、视频聊天,进行随意切换和信息传播,以绕过平台限制策略,这给技术段带来的直接压力就是语义理解成本非常高。此时黑产行为信息是更为本质的特征线索,是“万变”中相对不变的因素。
模型设计
异常用户样本初筛
目前,易盾反垃圾日均过检用户量已达到千万级,其中黑产用户的占比不到 1%,全量用户过检会造成模型结果产出的滞后性,为了提升模型过检的效率,需要对异常用户进行初筛。其次,为了避免长度过短无法表征用户整体行为,以及长度不在一个量纲导致数据分布异常引发的误判,在对异常用户初筛前,我们按照行为时序长度对用户进行分组预处理。
直观上,正常用户的行为时间分布较为随机而分散,一阶差分序列也是存在较大的随机性,区分度较低;引流黑产团伙的行为大多是脚本工具生成,所以用户之间的时序周期、量纲和数理统计值(最大值、最小值、均值、标准差等)均存在高相似性,相较于正常用户来说有较高的区分度。
通过上述特征线索,我们采用孤立森林算法从大规模样本空间中分离出和大多数用户行为模式显著不同的离群用户样本,使得后续的算法流程尽可能只聚焦于异常用户群体。相较于 LOF、DBSCAN 等异常检测算法,孤立森林在风控场景具备较好的普适性,主要优势体现在:
a)异常样本的判断基于集成学习(ensemble)的思想获得,算法识别结果较为稳定,不易受到小扰动而造成结果误判,对抗黑产的鲁棒性较强。
b)孤立森林不需要计算有关距离、密度的指标,可大幅度提升速度,减小系统开销;同时,由于每棵树都是独立生成的,因此可部署在大规模分布式系统上来加速运算,满足风险识别的高时效性要求。
图 3 展示了在几款社交头部产品中的应用效果。经 t-SNE 降维后的时序特征可视化效果。由图可见,通过孤立森林识别的异常/正常用户类簇区分度明显,二者不存在交集。同时,不同类簇具有明显的流形结构,具体每个簇代表什么含义我们没有去展开分析,但可以肯定的是簇中的点具有相似的行为模式。由此,我们得到了相较于大盘数据而言,极小比例异常用户,降低了后续模型检测的计算压力,提升在线检测时效性。

时序频谱特征提取
实际工作中,我们遇到更多的是时序异步相关的问题,而非同步相关性时序,为使得时序特征表达在对抗场景下具有较强的鲁棒性,我们通过傅立叶变换把时序向量变换到频域空间,然后删除在频域空间不重要的分量,因为这些分量往往代表噪声,剩下的分量真正代表了时序向量中关键的信息,只需要用这些关键的浮点数来表示一个行为时序的特征向量就可以了。
图 4 展示了某一黑产团伙发布内容的时序曲线图,其原始时序是呈异步弱相关的,经频谱转换后可发现不同黑产用户之间呈现出高度的行为协同性,因此我们可以在该频谱空间中更好地计算新序列之间相关系数。

具体来说,如果将用户最近一段时间内的行为轨迹视为信号波,其长度为 N 的时序向量就可视为该信号在连续时域上的等间隔采样,那么相当于我们有了一段有限长的离散时间信号。时序向量中的每个元素就对应离散时间上的信号采样值。
更具体而言,一个时序向量 [x0,x1,x2…,xN-1] 表征了在时刻 0,1,…,N-1 上的信号值,快速傅里叶变换 (FFT) 通过以下核心计算公式将在时域上的离散信号 [x0,x1,x2…,xN-1] 转化为在频域上的一组离散信号 [x0,x1,x2…,xN/2-1] ,作为最终的频谱特征,定义为:

行为协同团伙挖掘
由于直接对用户间的频域特征计算相似度的时间复杂度较大,所以先采用无监督聚类算法将特征分布相似的用户划分在一个类别内。这里采用 KMeans 聚类算法对频域特征的均值和标准差相似的样本划分在一个类别里,再针对类内样本两两计算频域特征的相似度,作为用户间的关系权重。
由此,我们便构建了以用户为节点的时序协同关系网,在此之上应用 Fast-Unfolding 、Graph-Cut、Fraudar 等图聚类算法进行黑产团伙挖掘是风控业界的共识做法。在用户风险画像从0到1构建初期,我们也遵循该路线,取得了不错的业务效果。图 5 直观地展示了某客户产品线上真实的团伙案例。结合内容本身的有害性可验证这些子图均为非法利益驱动下的恶意引流团伙,且从 IP/GPS/设备等资源属性上可观察到显著的聚集性和复用性。
为降低资源成本,黑产团伙通常会共用硬件设备。为避开易盾反垃圾系统的内容检测模型、专家规则等,他们交替使用了同音词、象形词、拆字、干扰词等形式,构成极其隐晦的引流信息;而通过用户行为大数据分析手段,这批黑产用户在活跃初期被识别出团伙协同后,其账号/IP/设备 ID 会近实时写入用户标签库并生效在线检测,则中后期不管再出现何种变种模式,都能成功拦截,大大降低了攻防压力。

团伙挖掘成果一方面作为高精度用户风控模型,独立应用于恶意引流内容的在线拦截,另一方面是在业务发展初期作为一种无监督学习方式,可以在无标注样本和无人工介入的前提下自主挖掘并沉淀一批高质量的黑产用户样本库,为后续的模型进阶打下样本基础。
用户行为向量学习
图聚类能够反映黑产行为的成团聚集的拓扑结构,但由于需结合人工经验阈值只能挖掘出其中的冰山一角,即最典型最严重的部分,且不具备泛化能力。如何以点带面牵引出更多的引流黑灰产账号,在通过以上无监督学习方法积累了尽可能多的坏样本之后,我们开始尝试基于有监督学习的扩展方案。
为进一步扩大黑产用户召回,全面推广风险行为模型的业务应用,我们利用上述黑产团伙挖掘的产出作为种子样本,结合神经网络算法学习用户的行为表征向量,在少量标签信息监督的情况下,预测用户是否有引流意图。分类模型的网络结构如图 6 所示。这里重点介绍 LSTM 和 CNN 特征层的设计原理。

首先,考虑到引流刷量行为产生的背后通常是借助了脚本、群控、模拟器等自动化工具,从短时序列来看往往具备一定的序列关联性,从长时序列来看则具备一定的周期性(如图 7 所示),而正常用户的时序则相反,无明显的规律。
鉴于这两类用户群体在长短时观测时间窗内的差异性,我们可通过 LSTM 神经网络的细胞状态有针对性的记录相邻时间点的信息,并结合输入门、遗忘门、输出门提取时序长短时潜在行为向量,用于识别具有相似行为 Embedding 表征的黑产用户。

其次,引流刷量用户的时序数据通常会穿插大量扰动噪声(如图 8 所示),会对分类器的性能带来不利影响。因此通过 LSTM 网络层前置 CNN 卷积神经网络,达到噪声数据滤波的目的,从而降低噪声数据对 LSTM 层向量的干扰,生成更有利于网络训练的特征表示。

此外,为提升模型非线性拟合能力,我们将时序特征与 MLP(多层感知器)抽象后的频谱向量通过 Concatenate 层进行融合。MLP 的网络结构天然就能学习到高阶的特征组合能力,但它是以一种隐式的方式建模特征之间的交互关系。
总结
本文通过分析社交反欺诈中常见的恶意引流行为的方式和特点,提出基于行为时序建模的黑产用户识别方法,通过时域、频谱、时序向量等多通道特征提取,以及无监督和有监督算法相结合的方式,对时序中潜在的行为模式进行学习和建模,从而深度挖掘恶意引流用户背后隐藏的“蛛丝马迹”,提高模型的对抗性和泛化性。
在黑灰产活跃期,图片/文本变种引流拦截量相比单一的内容检测手段提升显著,单模型的查准率和召回率分别达到 95% 和 60%。目前,该方法主要侧重于解决机器刷量类的引流问题。
后续,易盾将持续这部分工作,包括扩展到更多模态的数据源、以及针对真人欺诈的数据和业务特点设计更具通用性的模型结构,以适配更复杂的风控场景,进一步助力社交反欺诈场景下的风险画像技术体系的构建。
边栏推荐
- 9、聊聊ThreadLocal
- flask 框架web开发视频笔记
- Flick grouping sets multidimensional aggregation and setting table state expiration time
- saltstack安装与使用
- 9. Talk about ThreadLocal
- 14、课程总结与回顾
- How does data age in Splunk?
- How can physical stores break through operational difficulties? Take a look at the store operation guide of this physical store applet
- 记一次 mysql 主从不同步问题排查
- .net core 抛异常对性能影响的求证之路
猜你喜欢

11、Synchronized与锁升级

Flink deployment mode and runtime architecture (session mode, single job mode, application mode, jobmanager, taskmanager, yarn mode deployment and runtime architecture)

Secret derrière le seau splunk

JVM optimization

Flink physical partition (random partition, polling partition, rescaling partition, broadcast, global partition, custom partition)

oracle数据库导入数据步骤

9、聊聊ThreadLocal

电商发展的演变

9. Talk about ThreadLocal

mysql的主从复制
随机推荐
UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xc5 in position 13: invalid continuation byte
oracle数据库中 instr函数的用法
FTP server: downloading and using Serv-U
Flink time semantics, watermark, generated watermark, and transmission of watermark
Redis数据类型日常使用场景
YARN 切换ResourceManager(Failed to connect to server:8032 retries get failed due to exceeded maximum)
ftp服務器:serv-u 的下載及使用
中国联通 22春招 群面
How can physical stores break through operational difficulties? Take a look at the store operation guide of this physical store applet
Flink physical partition (random partition, polling partition, rescaling partition, broadcast, global partition, custom partition)
进度条加载
Flink spark vs. Flink
Where is it safer to open an account for soda ash futures? How much is the margin for soda ash futures?
2、CompletableFuture
微信授权获取手机号码
Android 11+ configuring sqlserver2014+
Wechat applet startup page automatically jumps
General O & M structure diagram
Wechat web developers, how to learn web development
Jerry's aicmd_ SET_ BT_ Addr command format [chapter]