本文属数据工匠原创独家翻译:http://datartisan.com/article/detail/77.html
首先我要祝各位新年快乐。在这篇博文中我将讨论一个机器学习领域经常遇到的问题——分类问题。同时我将介绍一个用来处理该问题的经典算法——Logistic回归模型。
在我之前的博客[machine-learning](https://bayesianquest.wordpress.com/2015/11/22/machine-learning-teaching-a-machine-to-learn/)中,我提到机器学习方法的本质在于预测。在机器学习领域中我们经常会碰到两类预测问题,第一种情况是预测实值变量,比如利用气象学数据来预测降雨量,利用当前的经济形势预测股票价格或者利用市场历史数据预测销售额,这类预测问题我们称之为回归问题。另外一种情况是预测样本属于哪个类别,比如判断某封邮件是否为垃圾邮件,预测潜在客户是否会购买保险,或者手写数字的识别问题。这第二类问题叫做分类问题。前面提到的分类问题是机器学习领域中最常见的问题,因此在本篇博文中我将对分类问题进行一些直观的介绍,并明确分类问题的一些基本设定。
在处理机器学习问题中,我们主要和两类东西打交道。其一是手头的数据,其二是数据的参数。数据和参数之间的作用提供了我们想要的结果——正确的预测。这两者中,原始数据是现成的,参数是我们需要通过已知数据得到的。我们得到正确参数集的能力决定了我们预测的效果。。我将通过一个小案例来阐明该问题。
假设你是保险机构一员,你手中有一大堆消费者数据,你想利用这些数据预测哪些客户更有可能在未来购买健康保险。
为了简化问题,我们假设每个消费者的数据中包含三个变量:
- 消费者的年龄
- 消费者的收入
- 消费者对健康保险产品的倾向性
以下是数据集中某三位顾客的数据:
顾客 | 年龄 | 收入 | 倾向性 |
1 | 22 | 1000 | 1 |
2 | 36 | 5000 | 6 |
3 | 62 | 4500 | 8 |
原图表:
假定我们有基于以往顾客的历史数据得到的一套参数及转换率(即,实际购买保险产品的人数)。我们把参数记为’ W ’,下标表示变量名称,即
一有了数据和参数,我们的下一个任务就是利用这些数据点得出每个潜在客户的评分用以预测。为此,我们把参数和相应的变量相乘,然后找到每一个顾客的加权得分。
顾客 | 年龄 | 收入 | 倾向性 | 总分 |
1 | 22 8 | + 1000 3 | + 1 10 | 3,186 |
2 | 36 8 | + 5000 3 | + 6 10 | 15,348 |
3 | 62 8 | + 4500 3 | + 8 10 | 14,076 |
原图表:
既然有了每个顾客的加权得分,我们可以得出一些结论了。从我们以往的经验来看,如果一个潜在客户的得分超过了14000,他倾向于购买保险。基于此,我们预测第一个顾客不会购买保险,而第二个顾客有很高的几率会购买保险。第三个顾客的得分处于边界线上,稍一努力也可被转化为保险购买者。有了这些预测知识,销售人员可以集中火力游说第二个和第三个顾客以使收益最大化。
在上面这个小例子中,我们可以发现一些有趣的方面,
预测的效果取决于我们如何协调以上三个方面的相互作用。这就是机器学习应用中的主要部分。
建立起背景知识后,在下一部分中我会对这三个方面作更进一步的介绍。下一篇文章我会主要介绍参数估计,敬请期待。
原文作者:tvjoseph
原文链接:https://bayesianquest.wordpress.com/2016/01/11/the-logic-of-logistic-regression/
译者:Fibears