你知道吗,数学科学家每天都要写很多的代码。一些人说超过60%到70%的时间都用于数据清理、数据处理及格式转化,以便于在之后应用机器学习模型。
应用机器学习模型(包括预处理的阶段)。此文讨论到的内容来源于我参加的过的数百次的机器学习竞赛。请大家注意这里讨论的方法是大体上适用的,当然还有很多被专业人士使用的非常复杂的方法。接下来会使用到python。
数据
在应用机器学习模型之前,所有的数据都必须转换为表格形式。如下图所示,这个过程是最耗时、最困难的部分。
解决机器学习问题有通法!看这一篇就够了
转换完成之后,便可以将这些表格数据灌入机器学习模型。表格数据是在机器学习或是数据挖掘中最常见的数据表示形式。我们有一个数据表,x轴是样本数据,y轴是标签。标签可以是单列可以是多列,取决于问题的形式。我们会用X表示数据,y表示标签。
标签的种类
标签会定义你要解决何种问题,有不同的问题类型。例如:
单列,二进制值(分类问题,一个样本仅属于一个类,并且只有两个类)
单列,实数值(回归问题,只预测一个值)
多列,二进制值(分类问题,一个样本属于一个类,但有两个以上的类)
多列,实数值(回归问题,多个值的预测)
多个标签(分类问题,一个样本可以属于几个类)
评估指标
对于任何类型的机器学习问题,我们都一定要知道如何评估结果,或者说评估指标和目的是什么。举例来说,对于不均衡的二进制分类问题,我们通常选择受试者*特征曲线下面积(ROC
AUC或简单的AUC);对于多标签或多类别的分类问题,我们通常选择分类交叉熵或多类对数损失;对于回归问题,则会选择均方差。
我不会再深入的讲解不同的评估指标,因为根据问题的不同会有很多不同的种类。