1.如何定位挖掘目标?
答:数据挖掘的目的是为了解决所提出的业务问题,因此,只要把所要解决的业务问题加以清晰化,应该不难将之转化为相应的挖掘目标。
2.确定目标后如何选择算法?
答:确立了数据挖掘的目标,就可以基本上明确需要建立什么样的数据挖掘模型了。不同的模型,使用的挖掘算法不同,客户分群常用聚类分析(最常用的是K-means),分类预测模型(如客户流失、客户响应,欺诈检测)则使用决策树、Logistic回归以及神经网络等算法,关联分析(如交叉销售)一般使用经典的Apriori算法。另外,数据本身对挖掘算法的选用有一定的影响,例如K-means算法就对异常值很敏感。
3.算法选择后如何确定变量?
答:我个人认为,变量的选取,特别是衍生变量,需要一定的业务知识,以及对挖掘问题的一个准确的把握。
通常我们研究分析的对象都是客户(或手机号、帐号),所获得的数据大体上有客户基本属性、客户行为数据、客户交易数据等等。一般都需要根据这些数据衍生出新的变量,以支持建模。创建衍生变量,通常依据业务实际情况以及经验判断。目前,使用较广的一种衍生变量的方法是RFM分析。
在建模之前所确定的变量,并不一定是模型最终用来训练的变量,也就是说,并不一定是对模型显著的变量。可以采取一些方法删除一些不显著的变量,例如变量聚类、主成分分析、相关性分析等。当然,也可能会手动删除变量,如看到缺失值占大部分或只有一个值的变量,就可删除该变量。
4.变量确定后如何对挖掘结果进行展示?也就是如何让客户理解挖掘的结果?
答:在建模之后很重要的一步就是结果解释,也就是说,需要将模型结果翻译成让业务人员明白的结果。就SAS软件来说,不同模型得到的模型结果一般不同,就Logistic回归模型来说,模型结果包括:模型参数,以及ROC等几种评估曲线
对应原始宽表,得到新的数据表,其中包含目标变量的预测值。就聚类模型来说,模型结果包括:
模型参数分成几类,各类的特征,以及相应的可视化结果对应原始宽表,得到新的数据表,其中包含模型得出的类标号
5.采样的目的是什么,如何进行模型的数据采样?
答:当可用的数据量非常庞大时,模型训练的效率就会降低,甚至机器崩溃。这时,抽取有代表性的样本来建模是很有必要的。
一般是根据目标变量值的情况来选择,通常使用随机抽样。当然也有系统抽样、欠抽样、过抽样等等。
例如,在不均衡分类模型(如客户流失),一般所感兴趣的目标变量值(即为1,流失)仅占总体的5%左右,这时,可采取过抽样的方法来抽取样本,抽样之后,值为0的个数与值为1的个数之比为1:1,这样就均衡了,建模效果会好一些。当然,一般抽取总体的多少来做样本进行建模,不同行业可能有不同的标准,更多的还是依据过往经验来决定。
6.采样是否是为了得到变量值(连续变量、分类变量)?
答:抽样是为了提高建模效率,并不是为了得到变量值。
7.什么是模型训练?模型训练的结果是否就是得到变量值?
答:在建模过程中,通常采取交叉验证的方法,将数据挖掘宽表拆分成两个(或三个)部分,一个是用来拟合初步的模型,称为训练集,另一个是用来验证模型的准确性,也可用来调整模型;还可以分为三部分,除前面两个数据集之外,还有一个测试集,它是针对模型的错误率的,可以用来得到最终的无偏估计。
一般分为两部分。
所谓模型训练,就是使用训练集的数据来拟合得到一个初步的模型,但这个模型并未经过验证评估。
模型训练的结果,准确来说,是一个模型,一些模型规则。
CIO之家 www.ciozj.com 公众号:imciow