我正在研究欺诈检测系统。在这个领域,新的欺诈行为会定期出现,因此必须不断地向模型中添加新功能。
我想知道处理它的最佳方法是什么(从开发过程的角度来看)?仅仅在特征向量中添加一个新特征并重新训练分类器似乎是一种幼稚的方法,因为重新学习旧特征会花费太多时间。
我正在考虑为每个特征(或几个相关特征)训练分类器,然后将这些分类器的结果与整体分类器相结合。这种方法有什么缺点吗?如何为整体分类器选择算法?
我正在研究欺诈检测系统。在这个领域,新的欺诈行为会定期出现,因此必须不断地向模型中添加新功能。
我想知道处理它的最佳方法是什么(从开发过程的角度来看)?仅仅在特征向量中添加一个新特征并重新训练分类器似乎是一种幼稚的方法,因为重新学习旧特征会花费太多时间。
我正在考虑为每个特征(或几个相关特征)训练分类器,然后将这些分类器的结果与整体分类器相结合。这种方法有什么缺点吗?如何为整体分类器选择算法?
在理想情况下,您保留所有历史数据,并且确实运行一个新模型,该模型具有从历史数据中追溯提取的新特征。我认为花在这上面的计算资源实际上是非常有用的。真的有问题吗?
是的,构建分类器集合并组合它们的结果是一种被广泛接受的技术。您可以仅根据新特征并行构建新模型,并在其预测中取平均值。这应该会增加价值,但是,您永远不会以这种方式捕捉新旧特征之间的交互,因为它们永远不会一起出现在分类器中。
这是一个突然冒出来的想法——如果你使用随机子空间采样(事实上 Sean Owen 已经建议)在每次出现新特征时训练一堆新分类器(使用随机特征子集,包括新的功能集)。您也可以在样本子集上训练这些模型,以节省一些训练时间。
通过这种方式,您可以让新分类器同时具有新旧功能,同时保留旧分类器。您甚至可以使用交叉验证技术来衡量每个分类器的性能,在一段时间后淘汰表现最差的分类器,以避免模型臃肿。
您所描述的属于机器学习中的概念漂移类别。您可能会在此摘要文件中找到有趣且可操作的想法,并且您会在这些幻灯片中找到可能的方法的分类。