基于
VAE
GAN
算法
信用卡
欺诈
检测
模型
严嘉钰
第 30 卷 第 4 期北京电子科技学院学报2022 年 12 月Vol.30 No.4Journal of Beijing Electronic Science and Technology InstituteDec.2022基于 VAE-GAN 算法的信用卡欺诈检测模型严嘉钰 贝世之 章 乐北京电子科技学院,北京市 100070摘 要:信用卡欺诈检测数据集是典型的离群点分布极度不平衡的高维数据集,信用卡交易中被盗刷的交易占比非常小,但每一笔被盗刷的交易都影响重大。针对传统离群点检测算法难以学习到极度不平衡的高维数据集中离群点的分布模式,导致检测率低的问题,本文应用一种基于变分自编码器(Variational Auto-Encoder,VAE)和生成对抗网络(Generative Adversarial Network,GAN)相结合的 VAE-GAN 算法进行无监督学习,算法首先将数据集输入 VAE 型生成器中进行训练,生成大量潜在的离群点,然后令判别器学习正常点与离群点的分类边界,最后将测试数据输入训练后的模型中,将离群值高的测试数据判定为离群点。在信用卡欺诈检测数据集上与现有的无监督学习所得结果相比,VAE-GAN 在尽可能更多地检测出离群值的同时,尽量减少误判,AUC 达到0.9581,Recall 达到0.9118,ACC 为0.9468,优于目前的最优模型,证明 VAE-GAN 算法在信用卡欺诈检测中的优越性。关键词:信用卡欺诈检测;变分自编码器;生成对抗网络;无监督学习中图分类号:TM344.1 文献标识码:A文章编号:1672-464X(2022)4-70-81 作者简介:严嘉钰(2001-),男,信息管理与信息系统专业 2019 级本科生。贝世之(2000-),男,通信作者,信息管理与信息系统专业 2019 级本科生。章 乐(1987-),男,讲师,博士,主要研究方向:深度强化学习,理论计算机科学,计算机视觉。引言 随着人们对美好生活需要的进一步提高,经济市场化程度不断提升,信用卡这一支付手段也日益普及,其为人们带来便利的同时,由伪造、冒用信用卡和伪装持卡人所造成的信用卡欺诈问题也为人民财产安全和市场交易秩序带来了严重危害,因而信用卡欺诈检测也成为亟需解决的主要问题。信用卡欺诈检测,本质上是一个分类问题,就是将信用卡消费行为分为有欺诈风险和无欺诈风险的两类,其重点在于对信用卡交易中的异常数据进行识别。近几年来,随着数据量和计算机计算能力的提升,越来越多的学者开始将机器学习方法应用于信用卡欺诈检测中。莫赞等人1针对传统单个分类器在处理不平衡数据中的局限性,提出对抗生成网络-自适应增强-决策树算法,即 GAN-AdaBoost-DT。Zhang 等人2研究出基于加权支持向量机的信用卡欺诈检测方法,通过加权支持向量机 SVM 算法,提高了异常数据检测性能。陈荣荣等人3采用 XGBoost算法令信用卡欺诈检测的 AUPRC 值更接近 1。Prasetiyo 等人4引用随机森林算法对合成的数据集进行训练和验证,其识别效果比简单的机器学习算法效果更好。Lebichot 等人5运用评估增量学习策略,设计出一种基于评估增量学习策第 30 卷基于 VAE-GAN 算法的信用卡欺诈检测模型 略的信用卡欺诈检测系统,其多样性迁移学习和集成学习方法提高了检测的准确性。琚春华等人6运用 k 最近邻(kNN)分类算法和合成少数类过采样技术(Smote)算法,设计了基于 kNN-Smote-LSTM 的信用卡欺诈检测网络模型,在提升模型性能的同时,克服了生成新样本时的局限性和盲目性。在目前的银行欺诈检测系统中,主要采用的是群体行为分析,即仅通过交易是否满足欺诈行为来判断是否是欺诈交易7,适用机器学习进行检测。而关于用机器学习的方式检测信用卡欺诈行为,有监督的机器学习往往需要大量的人工标注数据,且只能检测同种特征行为的欺诈。在寻找更优的处理方式的过程中,人们寄希望于以无监督的学习方法进行信用卡欺诈检测,即异常检测8。现有的深度异常检测通过使用无监督的深度学习来解决这个挑战,然而在他们之中表征学习与异常检测方法往往是分开的,例如自动编码器中的中间表征和生成对抗网络中的潜在空间,所以它可能产生次优的表征,甚至是不相关的。针对学术界目前的研究成果以及面临的难题,本文通过创新性地结合优势神经网络结构和学习方法,在无监督学习的基础上运用基于 VAE-GAN 的算法训练神经网络,帮助模型学习到更好的判别策略,不断逼近甚至超过现有的最佳结果。Guansong Pang 等人提出了一种名为 Dev-Net9的深度异常检测方法,其通过先为少量带标记的异常数据强制分配得分,然后根据先验概率计算一部分正常数据的得分均值作为基准值,由正常数据与异常数据得分的偏差作为优化目标,使异常数据得分逐渐偏离基准值。该方法与本文方法在相同数据集下有着在 AUC 值上约2%的优势,然而其模型训练时仍需要少量带标签的异常数据,并非真正意义上的无监督学习,因此与本文方法无直接比较性。除此之外,本文的主要贡献如下:1)针对未来可能出现的、当前数据集中所不具备的新型欺诈数据,本文充分运用了更加符合实际情况的无监督学习方法,令模型具备检测出新型欺诈数据的能力;2)利用了信用卡欺诈检测数据集中正常样本数量占比极大、异常样本数量占比极小这一特点,在以无监督方式训练 VAE 型网络重构能力的过程中,由于异常样本的占比极小,其影响可以忽略不计。运用 GAN 对抗获得生成能力更佳的 VAE 型网络时,异常数据经过 VAE 型网络映射后分布位置离正常数据较远这一特点,精确区分出异常数据和正常数据;3)实验表明,针对于信用卡欺诈检测问题,本文在采用无监督学习的情况下,测试结果的AUC 达到 0.9581,Recall 达到 0.9118,ACC 为0.9468。数据集可以从该 url中获取。1 基础知识 对聚类算法的研究是机器学习领域的一个基础且重要的课题,变分自编码器和生成对抗网络是深度神经网络聚类算法的有力工具。本部分将简要介绍变分自编码器和生成对抗网络的基本原理,以及如何结合变分自编码器和生成对抗网络构造信用卡欺诈检测模型。1.1 变分自编码器变分自编码器是由 Kingma 等人10提出的基于变分贝叶斯(Variational Bayes,VB)推断的生成式网络结构,是一种借鉴变分推断原理的深度神经网络,通常作为生成模型,其中含有多个隐藏层,结构上包括编码器和解码器。编码器可以将复杂分布的样本数据投影到简单的隐变量空间,将原始数据 x 转换为潜在特征 z,实现对样本数据的特征提取,编码表示为:z Enc(x)17https:/ 年=q(z x)。解码器可以还原在隐变量空间里取样的数据,将潜在特征 z 重构为新的样本数据 x,解码表示为:x Dec(z)=p(x z)。其中参数、由变分自编码器的神经网络进行更新。由于以上过程中的潜在特征 z 的分布无法直接观测,因此引入变分自编码器的编码过程 q(z x)来代 替 真 实 的 后 验 分 布 p(x z),为 了 使q(z x)和 p(x z)近似相等,变分自编码器使用 KL 散度来衡量两者的相似度,并且通过参数、使 KL 散度最小化11:,=argminDKLqz x()pz x()()=Eqz x()logqz x()-logpx z()+logp(x)(1-1)根据相关文献11的数学推导,可以得到变分自编码器的损失函数通常为:L(,)=-DKLqz x()p(z)()+Eqz x()logpx z()(1-2)其中第一项是变分自编码器的 KL 损失函数,第二项是变分自编码器的重构损失函数,x为原始数据,z 为潜在特征,、为编码器和解码器的分布函数。变分自编码器的作用是通过学习输入样本的潜在特征,然后通过重构数据的方式让输出与输入尽可能相似,这一点与传统的自编码器(Auto-Encoder,AE)有着相似之处,但自编码器主要采用重构误差的方式重构数据,寻找的是单值映射关系,其只能近似地复制,并只能复制与训练数据相似的输入,同时其是自监督算法,并非无监督算法。而变分自编码器更关注原始数据对象的数据分布模式,寻找的是分布映射关系,更适用于生成数据,并且考虑了 KL 损失函数和重构损失函数,使得生成的样本具有更强的泛化能力。变分自编码器能够令输入样本被投影到隐变量空间时尽量满足标准正态分布,易于抽样处理,同时能够有效防止模型过拟合,在信用卡欺诈检测中具有更强的适应性。根据以上性质,本文将测试集输入到训练好的变分自编码器中,变分自编码器将输入数据投射到隐变量空间,由于训练效果好的变分自编码器有较强的“欺骗能力”,因此正常数据在隐变量空间中的分布将会非常贴近原始数据,而分布位置离正常数据较远的数据则可以标记为异常数据。1.2 生成对抗网络生成对抗网络由生成器 G 和判别器 D 组成,生成器 G 的作用是将输入样本映射到近似真实数据空间的隐变量空间之中,生成与输入样本尽可能相似的虚假样本,从而尽可能地“欺骗”判别器 D。判别器 D 是一个二分类器,其作用是判定输入样本是否来自于真实的数据集。生成对抗网络的训练过程是一个博弈的过程,在训练过程中,先训练判别器 D,提高其判别能力,以正确区分真实数据和生成数据,而后训练生成器 G 以混淆当前版本的判别器 D,根据判别器 D 的判别结果进行优化,从而提升生成样本的能力。循环上述过程,交替训练判别器 D和生成器 G,逐渐提高判别器 D 的判别能力和生成器 G 的伪造能力,直到生成器 G 生成的样本接近真实样本,判别器 D 无法判别真实样本和生成样本,达到动态平衡。理论上,当生成数据空间和真实数据空间完全重合时,判别器就无法再区分真实数据和生成数据了,而生成器也达到最优而无法进一步训练,该平衡点被称为纳什均衡12。生成对抗网络的损失函数通常为:LGAN=minGmaxDEx Pdatalog(D)+Ez Pzlog(1-D(G(z)(1-3)其中 Pdata(x)为真实样 本 的 数 据 分 布,Pz(z)为生成样本的数据分布,x 为真实样本,z为服从某一分布的随机变量。信用卡欺诈检测问题的数据维度较大,数据分布极不平衡,数量稀少的异常样本所提供的信息量很难使分类器具有很强的分类能力。生成对抗网络可以通过模仿原始数据生成相似的异27第 30 卷基于 VAE-GAN 算法的信用卡欺诈检测模型 常数据与相似的正常数据,不用收集大量的原始异常数据也可以很好地进行模型训练,非常契合异常数据极少的信用卡欺诈检测问题。因此,将一个变分自编码器作为生成器 G,通过生成对抗网络的判别器 D 提升生成器 G 的映射能力,根据输入样本被映射后的分布位置判定样本正常与否,可以作为信用卡欺诈检测的一个新思路。2 VAE-GAN 算法 根据变分自编码器可以将数据映射到隐变量空间的优势和生成对抗网络可以在博弈的过程中优化生成器 G 和判别器 D 的优势,本文参考 Larsen13等人提出的 VAE-GAN 模型结构,将变分自编码器作为生成对抗网络的生成器 G,与判别器 D 共同训练,共享参数,提出了一种VAE-GAN 算法,将变分自编码器作为最终的判别模型。在采用本文所描述的 VAE-GAN 算法时,训练好的模型具有更强的正常数据生成能力,结合样本空间上的分布差异,能够有效检测出异常数据。2.1 无监督的学习方式常见的有监督或半监督机器学习方法往往需要大量的带标签数据,具体到信用卡欺诈检测领域中,即需要大量的实际欺诈数据作为其训练集。然而,在现实生活中,信用卡交易信息极为庞杂,且随着信息技术的不断发展与普及,数据量将变得更加惊人,相比之下,欺诈数据的数据量极少,而欺诈手法又不断更迭,这些小样本数据的监督学习标签具有较大的局限性,在效果与实用性上差强人意。本文使用无监督的学习方法进行信用卡欺诈检测,其总体流程为:对交易原始数据进行预处理得到特征矩阵;通过 PCA 对特征值进行降维;最后通过本文所提出的算法对降维后的特征矩阵进行