机器学习算法-异常值检测(outlier),30 亿个雅虎账户被黑客入侵?

在公众号「python风控模型」里回复关键字:学习资料

机器学习算法-异常值检测(outlier),30 亿个雅虎账户被黑客入侵?_第1张图片

要了解有待通过异常检测解决的问题的范围,只需查看统计数据即可。例如,根据美国银行家协会 (ABA) 的最新数据,到 2016 年,由于欺诈活动,银行业的损失高达 22 亿美元。同样,2016 年,使用 SEPA 发行并在全球范围内获得的卡片进行的欺诈交易总价值达到 18 亿欧元。同年,有 30 亿个雅虎账户被黑客入侵,这是有史以来最大的违规行为之一。

现在让我们来谈谈什么是异常检测作为一个概念。异常是对正常事物流意外发生的事件。因此,使用机器学习进行异常检测 - 是识别数据中的异常模式、事件或观察结果的过程,这些模式、事件或观察与整个信息范围的差异足够大,是可疑的。

除了用于预防欺诈外,异常检测还高度适用于多个领域:医药、制造、交通系统。更具体地说,在医学中,它用于检测损坏或恶意的细胞,在制造中,它可以用于识别结构缺陷、设备工作中的故障根源等。

状态监测和预测性维护

任何机器或设备都有可能的使用寿命和某些健康指标,从它制造的那一刻开始。总结了许多工作中的类似设备的参数后,人们可以得出结论,某天一台机器坏了,或者它的健康指标会下降,严重到足以使其工作不佳。为了防止意外关闭或故障,机器学习专家提供了一种预测性维护技术,该技术使用异常检测作为工具之一。

当工业 4.0 被发明时,一种确保机器可用性的新方法开始发挥作用。由于大约 82% 的公司经历过计划外停机,并考虑到此类事件的成本——一台机器停机每小时约 260,000 美元,很明显必须以某种方式解决这个问题。此外,大约 64% 的计划外停机时间与设备故障(维护不当、缺乏状态跟踪)有关。

用于状态监控和预测性维护的异常检测用例领域非常广泛:

  • 汽车行业
    在这个行业中,跟踪焊接机、铣床中的主轴、激光钻孔机等的状况非常关键。此外,结合汽车工业物联网的机器学习解决方案有助于实时识别裂纹、润滑问题、组装零件的错位等。

  • 钢铁行业
    在这里,状态监控用于监控冷轧机的状态(对于钢材质量尤其重要)。及时检测轧机缺陷有助于采取纠正措施并将负面影响降至最低。

  • 石油和天然气
    石油和天然气并不是最后一个应用预测性维护的行业,但它被用于实时监控海上钻井,也结合物联网。一旦远程处理数据,就可以识别设备的潜在临界状态。

机器学习算法-异常值检测(outlier),30 亿个雅虎账户被黑客入侵?_第2张图片

黑客攻击和欺诈检测

异常检测用例中最受欢迎的领域是与互联网或银行业务相关的任何类型的欺诈活动。自 2015 年以来,随着芯片卡技术的出现,银行卡对欺诈的保护有所增加,每次请求交易时都要求输入 PIN 码。尽管如此,到 2020 年,在线信用卡欺诈预计将高达 320 亿美元。

从 2016 年开始到现在,网络攻击事件层出不穷,威胁着互联网企业和商业网站。即使是雅虎和优步等大公司也都遭受过网络攻击,大约 30 亿个雅虎账户被黑客入侵,优步有超过 5700 万乘客和司机的信息被盗。在全球范围内,Wannacry 病毒感染了大约 150 个国家/地区的 350,000 多台机器,造成了 40 亿美元的损失。

当涉及信用卡欺诈检测或任何网络安全系统漏洞时,机器学习专家可以构建智能机器学习模型,根据交易细节(例如商家、金额、位置、时间等)将交易分为合法或欺诈。

电子商务交易欺诈检测算法

在使用机器学习检测异常时,可以采用两种方式:有监督或无监督。监督代表处理预先标记的数据,例如,如果一个人有一组正常和异常的日志,但这些日志没有被标记为这样,他必须手动为每个日志获得“正常”或“异常”标签。它们,以便算法可以区分它们。无监督方法不需要标记——特殊算法会根据其内部机制假设哪些数据是恶意的,哪些通常是基于其内部机制,例如,大多数互联网连接是正常的,只有少量是欺诈性的,因此出现更罕见的连接类型异常。

使用异常检测来识别金融服务公司的欺诈交易,提供可以使用 Mobile Money(Airtel Money、MTN Mobile Money)、银行卡(Visa Card、Master Card)、钱包支付的各种产品和服务和赊帐(稍后付款)。问题在于很少发生通过公司的非法交易,作为输入,我们有几个月内发生的 150,000 笔交易的数据。

作为常规流程,每个机器学习项目都包括 3 个阶段:

  • 数据收集,预处理

  • 训练模型

  • 模型调参/再训练。

在项目建立时,我们遇到了数据集不平衡的问题,这意味着数据集在其中的两类观测值之间存在显着差异。可以使用大约 9 种方法处理不平衡数据,其中最流行的有 3 种:过采样、欠采样和 SMOTE。在实践中尝试它们,我们得出结论,SMOTE 最适合我们所追求的任务。

如果您有兴趣了解机器学习建模流程,系统化学习Python数据分析与机器学习项目实战

发展历程

一般1000笔交易中可能只有0.1%左右的信用卡欺诈,这使得模型训练的过程非常不平衡。我们通过使用欠采样(随机删除正常交易以尽量减少与欺诈相比的数量)和过采样(复制欺诈样本以制作许多欺诈样本并平衡数量与正常交易)和合成采样或 SMOTE 解决了这个问题(在现有样本的基础上自动生成合成数据样本)。最后一种方法似乎是最有效的,因为它将我们的算法准确度提高了 5%,结果是 85%。

机器学习算法-异常值检测(outlier),30 亿个雅虎账户被黑客入侵?_第3张图片

在数据准备步骤意味着数据平衡之后,下一步是尝试不同的分类方法。受监督的技术是将数据分为以下类别之一:使用逻辑回归、KNN、SVM 和决策树分类器的欺诈或正常交易。在无监督学习算法中,我们使用 One-Class SVM、Isolation Forest、Fitting 和 Local Outlier Factor 在监督中将所有交易分为两类,无需标记。此外,还使用了具有监督和无监督方法的神经网络方法:LSTM 和 MLP(监督)和自动编码器 (AE)、受限玻尔兹曼机 (RBM) 和生成对抗网络 (GAN)。

结论

机器学习异常检测主要用于解决制造、电子商务、银行、零售、石油和天然气、医药等各个行业的网络安全漏洞、在线欺诈检测和预防、预测性维护和状态监控等问题。在众多操作的常规流程中检测不同异常的价值,无论是关于进行信用卡交易还是消除设备工作中的问题,都难以估量,尤其是在预测可能很重要的意外异常时影响企业/业务收入的因素。您对机器学习开发感兴趣吗?请随时与我们联系!

学习QQ群:1026993837,免费领取python机器学习相关学习资料

你可能感兴趣的:(python风控模型,机器学习,算法,人工智能)