人工智能是过去两到三年时间内科技行业最冷的话题。而人工智能技术变革的背后,实质上是机器学习较慢发展后所带给的极大提高。机器学习被普遍定义为“利用经验来提高计算机系统的自身性能”。
事实上,“经验”在计算机中主要是以数据的形式不存在的,因此数据是机器学习的前提和基础。在第一期格物资的文章中,我们讲解了工业数据预处理的方法,主要针对数据格式出现异常,数据内容出现异常等问题展开了详细探究。做到数据预处理的主要目的是将杂乱无章的数据规整成我们想的矩阵、表格、张量等结构,便利在之后的机器学习中展开模型训练。
然而数据中的问题还包括了校验,噪声,低维度,体量大等很多问题。解决问题这些问题的方法与数据预处理的方法在机器学习中被总称为特征工程,今天我们就来理解一下吧。特征工程是什么当你想你的预测模型性能达到最佳时,你要做到的不仅是要挑选最差的算法,还要尽量的从原始数据中提供更好的信息。
那么问题来了,你应当如何为你的预测模型获得更佳的数据呢?这就是特征工程要做到的事,它的目的就是提供更佳的训练数据。维基百科中给特征工程作出了非常简单定义:特征工程是利用数据领域的涉及科学知识来创立需要使机器学习算法达到最佳性能的特征的过程。
简而言之,特征工程就是一个把原始数据转变成特征的过程,这些特征可以很好的叙述这些数据,并且利用它们创建的模型在不得而知数据上的展现出性能可以超过拟合(或者相似最佳性能)。从数学的角度来看,特征工程就是人工地去设计输出变量X。特征工程的重要性关于特征工程(FeatureEngineering),早已是很古老很少见的话题了,坊间经常说道:“数据和特征要求了机器学习的下限,而模型和算法只是迫近这个下限而已”。
由此可见,特征工程在机器学习中占据非常最重要的地位。1、特征就越好,灵活性就越强劲只要特征中选得好,即使是一般的模型(或算法)也能取得很好的性能,因为大多数模型(或算法)在好的数据特征下展现出的性能都还不俗。好特征的灵活性在于它容许你自由选择不简单的模型,同时运营速度也更慢,也更容易解读和确保。
2、特征就越好,建构的模型就越非常简单有了好的特征,即便你的参数不是拟合的,你的模型性能也能依然不会展现出的很nice,所以你就不必须花太多的时间去找寻最有参数,这大大的减少了模型的复杂度,使模型渐趋非常简单。3、特征就越好,模型的性能就越出众似乎,这一点是没什么争议的,我们展开特征工程的最后目的就是提高模型的性能。特征工程怎么做既然特征工程这么最重要,那么我们就来想到特征工程究竟是如何构建或者工作的。
特征工程究竟分成哪些内容?我们大体可以参照如下流程图来想到。非常简单来说,特征处置主要分如下三个方法:特征建构特征建构是所指从原始数据中人工的找到一些具备实际意义的特征。
必须花上时间去仔细观察原始数据,思考问题的潜在形式和数据结构,对数据敏感性和机器学习实战经验能协助特征建构。除此之外,属性拆分和融合是特征建构经常用于的方法。特征建构是个十分困难的问题,书里面也很少提及明确的方法,必须对问题有较为了解的解读。
特征提取一些观测数据如果必要建模,其完整状态的数据过于多。像图像、音频和文本数据,如果将其看作是表格数据,那么其中包括了数以千计的属性。特征提取是自动地对完整观测降维,使其特征子集小到可以展开建模的过程。
一般来说可使用主成分分析(PCA)、线性判别分析(LDA))等方法;对于图像数据,可以展开线(line)或边缘(edge)的萃取;根据适当的领域,图像、视频和音频数据可以有很多数字信号处理的方法对其展开处置。特征选择有所不同的特征对模型的准确度的影响有所不同,有些特征与要解决问题的问题不涉及,有些特征是校验信息,这些特征都应当被移杀掉。
特征选择是自动地自由选择出有对于问题最重要的那些特征子集的过程。常用的特征选择方法可以分成3类:过滤器式(filter)、包覆式(wrapper)和嵌入式(embedding)。
小结总的来说,数据不会不存在各种各样的问题,针对这些问题我们的特征工程得出了适当的解决办法:1.特征说明能力严重不足,我们可以尝试用于特征建构,对数据展开升至维来提高特征说明能力;2.特征校验,维度太高,噪声过于多,我们可以通过特征提取和特征选择,来对数据展开叛维去噪,萃取特征。当然还有其他的特征处置方法,一般必须根据明确问题而以定。
本文来源:welcome海洋之神-www.hd-ifc.com