大家好,我是小伍哥。

最近遇到了非常多的人问我,我想学风控算法,有没有法相关的资料,发我想学习下。搞了这么多年风控,一时间竟然不知道如何回答。仔细思索了下,其实这个问题非常难回答,写个例子来回答这个问题。

风控算法对场景和业务目标是强依赖的东西,通用的算法,可以用不同的姿势进行应用,结果截然相反,比如关联规则:大家学的都是啤酒尿不湿,但是实际可以用于风控策略的无监督挖掘和有监督挖掘,看你怎么定义问题了。

下面举一个例子,说明下,风控要学什么算法(每个方法的代码后面给出,先讲讲框架)。下面是用户和视频的点赞交互数据,你拿到这个数据,能做什么样的挖掘呢?

视频ID

点赞用户

点赞时间

video_1

2001234

2021-11-16 00:12:23

video_1

2001235

2021-11-16 00:15:29

video_1

2001236

2021-11-16 00:19:45

video_2

2001234

2021-11-16 00:56:23

video_2

2001235

2021-11-16 00:14:23

video_2

2001236

2021-11-16 00:18:23

video_2

2001987

2021-11-16 00:11:23

video_3

2001234

2021-11-16 00:11:29

video_3

2001235

2021-11-16 00:15:45

video_3

2001236

2021-11-16 00:23:45

video_3

2003798

2021-11-16 00:35:45

一、用户聚类

在用户角度,我们可以把用户点赞的视频当成一个文本序列,然后对文本序列聚类,这样得到的相似浏览行为的用户,就会被聚为一类。用户1的序列为:video_3 video_1 video_2 用户2的序列为:video_2 video_1 video_3 假如我们聚类,不考虑点赞顺序的情况下,用户1和用户2完全相似,考虑顺序的情况下,只有33%的相似。
这里就要用到tf-idf+Dbscan等算法进行聚类了

二、视频聚类

我们把视频和用户反过来,按视频,构建用户ID序列,那是不是就可以得到一个用户序列,用同样的方法,可以对相识视频进行聚类,这种对于众包刷单等场景,非常有用

三、团伙挖掘

我们用用户为点,计算视频的交并集,然后用社群挖掘算法,就可以进行团伙挖掘,得到用户直接的团伙,这种方法也是非常还用的。

当然,反过来,以视频为点,交集用户数作为边,也可以构建视频团伙,得到和聚类类似的效果,但是思路完全不一样。

四、同步行为

这个算是我写的最多的算法了,通过时间的同步性,计算用户直接的关系,然后再进行网络挖掘,效果非常好,简直就是同步行为的天花板算法

五、自然语言处理

用户序列或者视频序列,进行训练Word2Vec,可以得到每个对象的词向量,有了词向量,可以进行序列的聚类,也可以计算用户的相似度,或者视频的相似度。

这也是非常有意思的方法,大家可以试试。

六、node2vec

当然,通过上面的各种方法构建的图网络,我们可以用node2vec算法进行训练,得到节点向量,然后计算相似度或者聚类,得到非常抽象的相似用户,也是非常好的无监督方法

六、图神经网络


有了构图,那图神经网络的方法也是可以用的了,得到更丰富的识别准确率,这里可能就是需要用到标签了,进行有监督算法的训练。

七、所有有监督算法

用户或者视频有了标签,可以ngram后用简单的逻辑回归、决策树算法,也可以计算各种特征用xgb、lgbm、catboost等树模型计算

八、CNN等图片算法

行为数据,也可以转换成行为矩阵,用图片的算法进行分类,之前的文章也写过,也是非常有意思的方法。

写了这么多,一个字,就是任何一个算法都可以用到风控,无论是有监督还是无监督。最难的点是理解每个算法的优点与缺点,并在恰当的场景选用恰当的算法,达到出其不意的效果。