当前位置: 首页 > 科技观察

行为序列模型在抖音风控中的应用

时间:2023-03-19 20:50:52 科技观察

作者|郑智贤背景行为序列模型相较于传统机器学习的主要优势在于不依赖行为画像特征,不需要很强的专家经验即可挖掘高效特征,提升模型性能,缩短特征工程周期,快速应对黑客攻击。黑产采用刷接口、群控、真实众包等作弊手段,在关注、点赞、评论等核心场景进行攻击。不同的作弊方式在行为顺序上有不同的特点。界面刷屏和群控作弊属于机器作弊,行为序列表现出群相似性和序列周期性/强度性。真人众包主要是通过真人账号进行线下软件分发任务,行为环节具有相对固定的模式。上述作弊手段在行为时序上意义重大,因此时序模型在风控业务中具有很好的实施能力。序列相似度检测的目的是在反作弊场景中。经常发现黑产行为序列中存在重复片段,如11332221133222(数字表示API接口的埋点映射编号),其中1133222为重复片段或不同的黑账号会被发现行为序列的相似度很高。例如账户A的行为序列为135555566,账户B的行为序列为13555666。这是因为黑客利用脚本批量控制账户在账户之间重复动作周期或重复非周期动作,导致一定的黑客行为序列的相似性和周期性。因此,采用序列相似性检测算法来识别黑色产品,相似性检测序列多为单序列。如何定义单个序列?单动作序列是指用户只有一个动作组成一个序列,可以抽象表示为X=(x_1,x_2..x_i..x_n),其中x_i表示一个具体的动作技术方案。以上背景可以概括为以下两种作弊作弊的序列特征:机刷:同一个作弊用户的行为序列片段团伙相似:不同作弊用户的行为序列相似序列相似度检测过程分为三部分:数据预处理、序列相似性检测、着陆处理。机刷和帮派作弊序列识别的区别在于预处理阶段是否对序列进行裁剪,后续的相似度检测和落地处理是否一致。序列相似性检测算法有以下两个过程:聚类:对向量化序列使用聚类算法,筛选出高度聚类的序列。社区发现:对矢量化序列构建图谱(序列相似度计算小于阈值建立边),构建图谱后利用社区发现序列的高聚类群。序列深度模型的目的随着平台反作弊方案的深入,单一场景的非法作弊难以完成,需要在多个动作环节上避免场景拦截方法。单序列动作建模只考虑动作本身和未充分利用的动作上下文信息。例如,用户A两次点赞的时间间隔为1分钟,而用户B两次点赞的时间间隔仅为0.01s。单序列动作建模没有区别。可以有效识别A/B用户行为之间的差异。当用户进行一个动作时,该动作的伴随特征,如设备信息、软件信息、ip信息等,也是非常有意义的。基于以上分析,希望结合用户上下文信息构建多维混合行为序列,完成更有针对性的非法作弊建模。如何从单个序列中导出上下文相关的多维混合序列?如何利用动作上下文信息?为了充分利用动作的上下文信息来识别不同的用户,可以将动作的时间戳作为其特征的一部分,然后通过时间戳之间的差异来描述动作的上下文行动前后;设备、软件、ip等信息,其特征作为context进行处理。上下文特征序列处理1)离散值特征处理如果要描述离散特征序列的相邻变化,则作为离散值相邻变化序列进行处理,一致处理为0,不一致为。这种处理适用于枚举类型较多,强调变化可以识别作弊的序列特征,比如device(device_id)序列。2)连续值特征处理的附加属性都是离散的类别值,但用户设备功率、用户贡献数等特征是连续的。对于此类连续特征,使用功率分桶来离散化和加强分桶。特色突出。3)时间戳特征处理虽然时间戳是一个连续值,可以直接分桶,但是时间间隔的差异对欺骗用户来说更显着,所以采用前后节点时间戳差分桶的方式特征处理技术方案技术架构基于以上技术方案,构建了一套离线一键训练、离线常规预测(天级/小时级)、在线实时预测集成系统。系统界面化操作,参数高度可配置,可在20分钟内训练并上线上下文序列模型。数据:支持自定义特征序列输入,可配置特征处理模块参数:支持自定义模型和模型参数输入功能:支持常规离线预测和编写在线列表系统主要分为三大类:特征构建、在线预测、离线训练部分:特征构建:通过特征平台构建Flink实时序列和Spark离线序列作为在线序列数据的输入。离线训练:TunaLite平台基于SQL的输入训练黑白样本和自定义选择特征处理函数、模型选择和模型参数。离线训练的key,训练完成后上传模型文件到TOS。在线预测:SharkDecisionCenter调用预测服务,传入模型和特征相关参数,返回模型预测结果。除了上面的实时预测链接外,还提供了一个常规的离线预测链接。方法是在SQL中输入套路预测样本,自动生成Dorado套路预测任务,通过Kafka将预测结果写入在线列表进行拦截。当业务场景调用QPS过大时,可以使用该方法实现模型。历史长序列模型目的短时间序列建模有很多更成熟的模型解决方案和实时服务。上面涉及的上下文序列模型属于短时间序列的解决方案。从用户行为画像来看,短期行为序列的缺陷是只能限制步长进行序列建模,只能描述近期的局部序列信息而不能描述全局,导致部分信息丢失.因此,为了完善序列信息,考虑长序列建模。从业务治理的角度来看,短时序方案倾向于解决短链接特征明显或作弊周期短的黑品,无法捕获真人众包等长链接行为或作弊周期长的黑品。技术方案中使用的模型主要参考了阿里妈妈的CTR预估模型MIMN,根据迁移前的风控场景特点对模型进行了简化。模型输入是一系列具有上下文信息的行为。模型的核心模块由MIU(MemoryInductionUnit)和NTM(NeuralTuringMachine)两部分组成,分别输出与记忆相关的M(下图中绿色矩阵)和S(下图中绿色矩阵)信息。BlueMatrix)记忆矩阵,用于存储历史行为序列信息。模型结构技术架构如何进行顺序增量更新?记忆矩阵可以理解为用户行为序列Encoder处理的中间产物,浓缩了用户行为序列迄今为止的所有信息。顺序增量更新的过程是根据t步产生的记忆矩阵和t+1步的行为序列更新得到t+1步的记忆矩阵和t+1步的userembedding,进而得到历史行为序列通过这个循环。用户嵌入。生成的用户嵌入可以在下游用于分类和检索。下游分类任务类Session行为分布特征+行为序列Embedding作为tunalite平台XGboost算法的特征输入,增量召回样本特征为连续作弊,不被短期行为序列模型召回。下游黑库检索任务相似的用户的行为序列嵌入距离比较相似。检索任务是以黑色种子为中心,计算黑色用户行为序列Embedding与其他用户行为序列Embedding的索引距离,选取近似TopN或阈值范围内的用户作为黑色样本扩展。