在我们评论辩论若何计算a、b、...、z之前,我们须要解决两个当前问题:
机械进修是我们日常接触到典范多产品的经久成长动力,大年夜类似于Apple的Siri和Google的智能助手,到类似于亚马逊的建议你买新产品的推荐引擎,再到Google和Facebook应用的告白排名体系。比来,机械进修又因为“深度进修”的成长开端进入"大众,"视线,包含AlphaGo击败韩国围棋大年夜师李世石,并且在图像辨认和机械翻译范畴宣布了令人印象深刻的新产品。
我们将介绍一些强大年夜的,然则在机械进修中广泛实用的技巧。浏览之后,你应当具备在你本身的范畴着手进行具体机械进修实验的响应常识。
我们结合一个Python扩大的“案例研究”:我们可以若何构建用于检测信用卡欺骗的机械进修模型?(固然我们会应用欺骗检测说话,所做的大年夜部工作是在渺小修改基本上实用于其他分类问题,例如,告白点击猜测。)跟着时光的推移,我们会碰到很多机械进修的关键思惟和术语,包含逻辑回归、决定计划树、随机丛林、正向猜测(True Positive)和负向猜测(False Positive)、交叉验证(cross-validation),以及受试者工作特点(Receiver Operating Characteristic,简称ROC)曲线和曲线以下区域(Area Under the Curve,简称AUC)曲线。
目标:信用卡欺骗
在线发卖产品的企业弗成避免地须要应对讹诈行动。一个典范的讹诈交易,欺骗者应用偷来的信用卡号码去在线网站购买商品。讹诈者稍后会在其他处所以打折情势发卖这些商品,中饱私囊,然老诚业必须承担“退款”成本。你可以大年夜这里获守信用卡欺骗的具体内容。
让我们假设本身是一个电子商务企业,并且已经应对欺骗有一些时光了,我们想要应用机械进修赞助解决问题。更具体地说,每次交易进行时,我们想要去猜测是否可以证实是欺骗者(例如,是否授权的持卡人不是交易人),如许我们可以响应地采取行动。这类机械进修问题被称为分类,因为我们正在做的就是把每笔收入归入讹诈或非讹诈这两类中的个一一类。
欺骗p的概率是线性函数的转换函数L=a x amount + b x card_use_24h + …,看起来如下所示:
对于每一笔汗青付款,我们有一个布尔值指导注解这笔交易是否讹诈(fraudulent),以及一些我们认为可能注解讹诈的其他属性,例如,以美元付出的金额(amount)、卡片开卡国度(card_country),以及这张卡片同一天内涵我们企业的付出次数(card_use_24h)。是以,极有可能我们建立猜测模型的数据看起来如以下CSV所示:
有两个重要的细节我们会在评论辩论里跳过,然则我们须要切记于心,因为它们同样重要,甚至跨越我们在这里介绍的模型构建问题。
起首,肯定我们认为存在欺骗行动的特点是一个数据科学问题。在我们的例子中,我们已经确认付出的金额、这张卡片是在哪个国度发行的,以及以前一天里我们收到的卡片交易次数等作为特点,我们认为这些特点可能可以有效猜测欺骗。一般来说,你将须要花费很多时光查看这些数据,以决定什么是有效的,什么是没有效的。
其次,计算特点值的时刻存在数据基准问题:我们须要所有汗青样本值用于练习模型,然则我们也须要把他们的及时付款值加进来,用以精确地对新的交易参加练习。当你开端担心┞珐骗之前,你已经保持和记录了以前24小时滚动记录的信用卡应用次数,如许如不雅你发明特点是有利于欺骗检测的,你将会须要在临盆情况和批量情况平分别在计算中应用它们。依附于定义的不合特点,结不雅很有可能是不一样的。
这些问题合在一路平日被认为是特点工程,并且平日是工业级机械进修范畴最常涉及(有影响)的部分。
逻辑回归
让我们以一个最根本的模型开端,一个线性模型。我们将会发明系数a、b、...、z,如下
作者介绍
包含所有的示例代码的Jupyter标记、模型练习样本数据可以"浏览原文“的原文链接中找到。
对于每一笔付出,我们会将amount、card_country和card_use_24h的值代入到膳绫擎的公式中,如不雅概率大年夜于0.5,我们会“猜测”这笔付出是讹诈的,反之我们将会猜测它是合法的。
概率(讹诈)须要在0和1之间的一个数字,然则右侧的数量可以随便率性大年夜(绝对值),取决于amount和 card_use_24h的值(如不雅那些特点的值足够大年夜,并且a或者b至少有一个非零)。
我们可以应用如下代码编码card_country成为合适的虚拟变量
card_country不是一个数字,它大年夜很多值中取其一(例如US、AU、GB,以及等等)。这些特点被称为分类的,并且须要在我们可以练习模型之进步行适本地“编码”。
Logit函数
为懂得决问题(1),我们会建立一个称为欺骗者的log-odds模型,而不是直接经由过程p = Probability(fraud)构建模型,所以我们的模型就变成
如不雅一个事宜产生的概率为p,它的可能性是p / (1 - p),这就是为什愦我们称公式左边为“对数几率(log odds)”或者“logit”。
推敲到a、b、...、z这些值和特点,我们可以经由过程反转膳绫擎给出的公式计算猜测欺骗概率,获得以下公式
不推敲线性函数的值,sigmoid映射为一个在0和1之间的数字,这是一个合法的概率。
分类变量
为懂得决问题(2),我们会应用分类变量 card_country(拿N个不合值中的1个)并且扩大到N-1“虚拟”变量。这些新的特点是布尔型格局,card_country = AU、card_country = GB等等。我们只是须要N-1“虚拟”,因为当N-1虚拟值都是false的时刻N值是必定包含的。为了简单起见,让我们假设card_country可以仅仅应用AU、GB和US三个值中的一个。然后我们须要两个虚拟变量去对这个值进行编码,并且我们想要去适配的模型(例如,发明系数值)是:
推荐阅读
整顿磁盘碎片办法一1、先是双击计算机,进入计算机后,看到有已经区分好的盘,选择你要清理的盘(这里以C盘以例),点击右键。3、点击磁盘清理,出面下图的界面,扫描你须要清理的硬盘。4、>>>详细阅读
地址:http://www.17bianji.com/lsqh/34600.html
1/2 1