由于机器学习继续发展,转变各种行业它触及的,它只开始通知世界审计。作为数据科学家和前CPA审计员,我可以理解为什么这是如此。本质上,审计是一个专注于细节的领域,并调查任何例外,而机器学习通常寻求推断广泛的模式。如果审计侧重于分析历史事件,机器学习解决方案往往会预测未来的事件。最后,大多数审计师缺乏必要的教育或编码技能,以便在工作中熟练地试验机器学习。下面我将展示我们如何使用机器学习在优步解决一个特定的审计问题,并通过扩展如何利用我们的方法和架构来解决更大审计业中的其他数据问题。
“嘿内部审计,告诉我一些我不知道的东西?......”
现金中介机构(也是“代理商”)成立,该公司要求作为公司与其他供应商之间的代理商。为什么公司需要这样的中介机构?您的业务可能在某些国家在您需要产品和服务的某些本地供应商中运行,无法通过P2P流程和系统运行。例如,假设您想购买一批鲜花,但花店不能通过公司的应付系统。既定的代理人(实际上在公司的P2P上登上)会为您购买那些批量的花,以现金来自花店。然后,代理商会将该费用项目添加到其下一张法案(为其自己的服务),公司将偿还该代理人。
这只是一个简单而良性的例子。虽然使用这些代理人本身不是非法的,但这种交易的不受控制的扩散易于若干风险。例如,你怎么知道花店在合法销售?你怎么知道花的实际价格?代理人是否正确向公司收费?花店和代理人有利益冲突吗?您是否使用该代理商绕过您自己的兴趣冲突,或者掩盖回扣,贿赂,或者这类费用根本不允许?
在历史上,在优步的情况下,这些代理商被全球当地团队手动从事,并且没有能力发生正在发生的事情。我们知道这些代理人存在,因为我们已经完成了几个欺诈调查,围绕此类案件循环。但是,仍然存在许多问题:我们实际用作代理商的厂商是多少?在哪些类型的病例中使用了哪些案例?和地理位置,这些代理在哪里使用以及正在处理多少?因为没有系统的先例来识别这些代理商,我们发现他们的初步方法是与当地团队询问并建立一种启发式方法。然后,我们将我们的理解翻译成SQL。但是,这种方法被证明是高度限制的。我们认为,代理商与非代理人之间存在更复杂的关系,特别是关于所涉及的潜在特征数量。在SQL中构建许多逻辑门等于每个功能的唯一组合的数量或数学,是不可行的,
(其中n是我们的支出管理平台中可用的功能数量),因此我们假设使用机器学习可以帮助解决问题。
重申,我们只有一个标签数据的一个小样本(来自当地团队的确认代理商)。至于数据源,我们使用了在我们的花费管理平台中摄取数据的表来获取数据和功能,例如交易类型,描述,金额,货币等。
已接受的挑战
数据可用性:
其中一个最大的障碍是我们没有有很多标记或可用的数据。从我们与当地团队的首次询问,我们将477名供应商标记为47名代理商。作为数据科学家,我们知道这些样本不足以训练任何模型。为了增加人口中的记录次数,我们将从供应商扩展到购买订单(POS)的数据集。有关这是如何完成的详细信息,请参阅模型设计部分。
数据标签:
标签主要专注于厂商,实际上是代理商。在侧面,我们无法确认负标签的准确性。Auditors know that positive-confirmations (when someone explicitly tells you whether or not something is correct) are superior to negative-confirmations (when someone is asked to reply only if something doesn’t look right), aside from the added work for the confirmations. To tackle this problem, we should use a recall score as a metric in every evaluation. Depending on the business problems you face, you may want to prioritize other metrics.
研究之旅雷竞技是骗人的
减少维度
一旦我们编码(或单热编码)我们的分类特征,如货币和部门,我们最终拥有近300个功能。这是我们考虑了维度减少的地方,这通常会产生更快的培训时间,更好的模型性能或两者。
我们使用了100个组件的主成分分析(PCA),导致仅解释的差异只有36%。由于三分之一的数据仅给我们略微超过三分之一的解释方差,因此我们似乎需要使用所有功能来捕获完整的图片,因此我们通过模型推出所有可用功能。
实验
型号V1设计和结果
在我们的第一次迭代中,我们使用了K-Collest邻居(KNN)。该功能包括USD金额和四种高风险事务类型的存在。在Po级预测中,K∈{1,3,5,7,9}的准确度约为92%。在供应商级预测中,所实现的最大精度为88%。对于具有最小特征的简单模型,似乎表现良好。但是,请记住,数据在大约1:10的比例中严重不平衡;因此,占基线无效的准确性为91%,我们不能说这个模型做了很多。如果模型只需每次预测大多数类即可,则为NULL精度是。因此,在我们的1:10不平衡数据集中,模型将准确地预测
次数,或91%,如果它只预测0's。
课程学习:在评估模型性能时,请务必对基线进行评估模型。在我们的情况下,我们使用了null精度。
型号V2设计和结果
在我们的第二次迭代中,我们仅使用随机林分类器仅在PO级数据上。其中的目的主要是为了培训一个快速模型,这些模型将为我们提供有关特征重要性的信息以及对这些功能进行分类的感觉。
我们还通过4倍交叉验证观察了95.9%的平均精度分数。突破,我们最终以95.8%的精确度和97.5%的召回。虽然结果看起来很有希望,但我们必须对我们的评估持谨慎态度。要开始,我们假设标有标签供应商交易的所有交易的正标签。不知何故,我们不得不挫伤这个因素。此外,我们需要对供应商的预测,而不是对交易的预测。我们还必须将供应商级别的功能注入到我们的模型中。
在深入潜入预测时,这种随机林模型的初步结果似乎可疑。例如,当我们查看预测供应商的所有交易时,我们无法逻辑地说预测具有与代理类似的属性。
课程学习:虽然预测可能在基线之上,但回顾模型生成这些预测的数据也很重要。此外,我们想记住我们的目标,我们希望预测个人供应商,而不是交易。
最终的建筑设计
为了适应标记和可用数据的缺乏,我们设计了一种双模型架构。
我们的最终架构是为了在交易级数据和供应商级数据中使用功能。这只能通过使用双模型架构来实现,其中一个模型取决于先前模型的预测。
首先,我们构建了一种基于树的模型,无论是随机的森林还是渐变提升决策树。在部署之前调整GBDT和随机林模型。这是第一个模型;它将尝试根据事务级数据进行预测,例如货币,部门,金额和描述。我们将参考此预测作为第一级猜测,在哪个事务显示出现可疑。在调整第一个型号时,我们针对召回得分进行了优化,因为我们希望尽量减少假底片。
仅使用单模架构具有逻辑和技术缺点。首先,我们的目标是预测代理人,而不是交易。单一模型将尝试预测交易,而不是代理商。此外,还有在交易级数据中不能编码的功能,例如每个供应商的不同商品类型的数量。因此,在这个第一级预测之后,下一步是通过供应商聚合结果。我们选择计算从事交易的供应商的唯一实体数量(例如,优步和优步拥有BV是不同的实体),计算每个供应商的唯一事务类型的数量,并采用每个供应商的预测事务的平均值。例如,如果供应商拥有10项交易,并且由第一个模型预测(未标记的8个交易(未标记),则该供应商将在聚合中收到0.80。
最后,支持向量机(SVM)模型将使用所有功能来进行最终预测。在调整SVM模型时,我们针对平衡准确率分数进行了优化,以解释不平衡数据。
我们为什么不使用天真的贝叶斯?这是因为我们不知道先验概率是什么。请记住,我们标记的数据只是一批手工选定的供应商。我们不知道是否构成了所有供应商或交易的5%,10%或50%。因此,我们没有任何理由使用天真的贝父。
模型性能
上述表是80-20分割中供应商数据的培训和验证分数。由于正标签的数量非常小,因此分裂时数据分层。
出于参考,下面是模型安装到整个数据集之后的混淆矩阵。
困惑矩阵显示有希望的结果。然而,通过这种小型样本,我们必须非常小心如何评估这些结果。虽然随机森林-SVM似乎似乎优于其GBDT-SVM对应物,但我们不能完全拆除GBDT-SVM。
以下是验证分数95%的置信区间。尽管每个统计数据的点估计之间存在显着差异,但两种模型之间的置信区间实际上重叠了很多。当我们将模型部署到实时生产并接收更多的列车输入时,置信区间将变窄,点估计将变得更加准确。
如果我们必须评估单模型架构的结果反对双模型架构,请采取交易级别预测的结果并由供应商聚合它们的结果是明智的。对于基准测试,如果任何供应商都有积极的预测,我们将假设供应商是预测的代理人。这种方法可能看起来极端,但实际上,如果我们只预测交易,我们将如何使用预测结果调查疑似供应商。
结论
在评估哪种型号最好中,我们在上面的表3中使用了验证分数作为做出决定的基准。鉴于这些结果,我们将随机森林-SVM架构部署为最终架构,不仅可以用于其性能,而且还用于指数更快的培训和高参考速度。随机森林算法可以在几分钟内执行AquarySearchCV,而GBDT需要6小时才能调谐。授予,随机森林可能已经过度使用,但难以评估当前数据大小。但是,随着新数据进入,我们需要保留和重新调整模型,并相应地重新评估。与此同时,我们根据模型的预测提取了一批供应商,并支持更强大的证据来量化手头的问题的审计。
在这个项目的帮助下,我们能够更加自信地向管理层提供全面的土地,回答问题,例如每个国家的代理商,交易数量,过去三年的进化,以及使用案件。这让我们允许我们在一个问题上阐明了以前没有意识的管理,并为我们提供了良好的见解,了解我们如何从合适的领导者互动解决业务风险。这里开发的方法也可以用于其他审计,并提供进一步的研究。雷竞技是骗人的







