[笔记]特徵工程不再难(1)-特徵工程简介

前言

这本书适合拥有python(必备)和机器学习(尤其是scikit-learn)基础知识的读者,即便没有接触过机器学习也没关係,反正google有一大堆资料。

特徵工程的重要性

资料工程师主要工作为负责整理(撷取、清洗、组织)资料,并且将整理过后的资料提供给机器学习工程师,但不代表机器学习工程师就不需要懂得特徵工程哦~整个演算法的建置流程中,整理资料佔了所有工时的88%,演算法编写和调整仅占12%。我的经验是,处理资料远比选择模型还来的重要,就跟厨师主菜一样,再好的厨具和厨艺,如果菜篮里面有很多劣质食材,那也煮不出美味的佳餚。而整个流程中,有81%的人最不喜欢整理资料这个过程。清洗资料有点像是类比转数位(例如:男生女生分别以1和0代表);组织资料则是将原始数据结构修改为俱行列结构的表格形式(简单说就是EXCEL啦);撷取资料虽然书上没提,但以我经验来看应该是指从从环境周选择哪则资料为已用,例如如果要预测室内温度,则湿度、温度、风速、室内人口数就显得很重要,而当前道琼指数、国际油价这种就显得鸡肋。特徵工程就是将原始资料透过转变或提炼,使得更清楚的描述待解决问题的样貌,使得模型能更轻易或者明确的捕捉到脉络并且学习到其规则,进而替代人们(甚至超越)解决相同或者类似的问题,毕竟职场上拿到的资料不像Kaggle一样的乾净。通常我们会将表格中的行(columns)定义为属性;列(rows)定义为观测值。众多属性(attributes)中,总是有些属性的性质与问题有着更强烈的关係,这些高关联性的属性会被称作特徵(features)。

资料和机器学习的基础知识

假设表格中有属性A~Z,监督式学习意旨用属性A~Y(feature)去预测属性Z(response)的值,因此监督式学习大多属于预测(predictive)或者分类(classification);而非监督式学习其实泛指聚类(clustering),也就是根据属性A~Z,将所有观测值分成k类,因此某方面来说非监督式学习是以既有的属性去建立新的属性补充一下,有人说predictive又分为regression和forecasting、前者是假设该问题无时间关係(每一刻的属性互不影响,例如职等与收入);后者则假设问题具有时间关係(冷气持续运转时间与室内温度)

机器学习演算法和特徵工程的评估

我们需要一个客观且明确的指标来评价模型的好坏,虽然我不是很清楚cost function、fitness function、loss function这几个的差别,但各大期刊或者相关书籍都是用遮几个名词来称呼指标的。当我们对原始数据执行了1个或者多个特徵工程,如何评估这次的改善效益是提升还是衰退呢準备好一个机器学习模型取得改善前的模型準确率(accuracy)或者误差值(error),令其为基準(baseline),称作A设定我们的目标改善程度(百分比),称作C执行多种的特徵工程(异步执行或者同步执行),分别记录最终的模型準确率(accuracy)或者误差值(error),称作B计算改善效益(100*(B-A))/A,若大于C则代表有显着提升

对于监督式学习的特徵工程效益评估,通常会採用最简易的机器学习方法作为模型(例如LinearRegression和LogisticRegression)并且搭配5折验证[1]。
採用简易的模型之动机目的在于减少计算上的等候时间以及不会因为高级的模型而发现隐藏模式(有些厉害的模型可以更敏锐地发觉属性和反应间的关係)[2],5折验证是要确保模型準确率具有低变异性[3]。当然该书作者也鼓励读者採用其他模型,只需要遵循第2点的步骤就行。

由于非监督式学习没有所谓的标準答案,因此无法像监督式学习一样用指标来评估特徵工程的改善效益,但可以用轮廓係数(silhouette coefficient)[4],透过每一观察值彼此间的距离来判断该次聚类结果是否适当,越接近1代表越好,越接近-1代表越差。

特徵工程优化的效能不只是提升準确率,有时也会提升真阳性[5]

特徵理解:我的资料集里面有什么?

下一章节的内容摘要,标题后面的叙述是我的臆测资料结构:类比转数位,也就是编码资料的4个等级:猜不透遗漏值:处理NaN和离群值资料分析:猜不透统计描述:应该是指平均值、众数之类的吧数据视觉化:灵魂画师

参考资料

[1] 【机器学习】交叉验证 Cross-Validation
[2] 机器学习演算法的三大陷阱:人类看不到,但 AI 看得一清二楚的「隐藏变数」
[3] 精準大不同!
[4] 聚类评估算法-轮廓系数(Silhouette Coefficient )
[5] 判定检测有多凖的各项指标


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章