2021-03-22 09:46发布
特征缩放(feature scaling)是预处理阶段的关键步骤,但常常被遗忘。虽然存在决策树和随机森林这种是少数不需要特征缩放的机器学习算法,但对于大部分机器学习算法和优化算法来说,如果特征都在同一范围内,会获得更好的结果。比如梯度下降法。
特征缩放的重要性可以通过一个简单的示例解释。假设我们有两个特征,一个特征的取值范围是[1,10],另一个特征的取值范围是[1,100000]。我们使用Adaline中的平方误差函数,很明显,权重更新时会主要根据第二维度特征,这就使得在权重更新过程中第一个特征的话语权很小。另一个例子是如果kNN算法用欧氏距离作为距离度量,第二维度特征也占据了主要的话语权。
有两种方法能使不同的特征有相同的取值范围:归一化(normalization)和标准化(standardization)。两种方法还是有必要区分一下的。
1. 归一化指的是将特征范围缩放到[0,1],是最小-最大缩放(min-max scaling)的特例。为了得到归一化结果,我们对每一个特征应用最小-最大缩放,计算公式如下:
其中,x n o r m x_{norm}x
norm
是x i x^ix
i
归一化后的结果,x m i n x_{min}x
min
是对应的列特征最小值,x m a x x_{max}x
max
则是最大值。
sklearn中实现了最小-最大缩放,调用MinMaxScaler类即可:
线性变换和极差法(线性归一化) 将原始数据线性化的方法转换到[0 1]的范围,该方法实现对原始数据的等比例缩放。通过利用变量取值的最大值和最小值(或者最大值)将原始数据转换为界于某一特定范围的数据,从而消除量纲和数量级影响,改变变量在分析中的权重来解决不同度量的问题。由于极值化方法在对变量无量纲化过程中仅仅与该变量的最大值和最小值这两个极端值有关,而与其他取值无关,这使得该方法在改变各变量权重时过分依赖两个极端取值。
也不难学,但是要有JAVA的基础
这个要看你在哪个城市就业了,一般来说适合大数据就业的城市不多,一线城市北上广深,甚至在成都找大数据方向的工作都不太好找。如果你学了大数据,刚好也在比较热门的城市,大数据薪资至少也得上万吧。...
自学的话就走很多弯路,需要花费大量时间。如果时间充足可以自学。
人工智能当前有六大研究领域,涉及到计算机视觉、自然语言处理、机器学习、自动推理、知识表示和机器人学,初学者应该选择一个主攻方向,并围绕这个主攻方向来制定学习计划。对于初学者来说,可以从机器学习开始学起,一方面机器学习是打开人工智能知识大门的...
机器学习跟模式识别,统计学习,数据挖掘,计算机视觉,语音识别,自然语言处理等领域有着关系
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的...
先来看一下机器学习的概念,我们提供给电脑样例数据,电脑通过一定的模型自己学习出相应的规则,并且这些规则可以随着数据的输入不断调整。而深度学习,则是一种十分有效的机器学习方法。现在的深度学习主要指的是深度神经网络。神经网络形式上就是一个分层的...
行业里其实都有参合一起用,但是java用的比较多!
机器学习【一】K最近邻算法涉及内容:分类——————数据集生成器、KNN拟合数据多元分类————生成数据集、KNN拟合回归分析————用于回归分析的数据集生成器、KNN拟合、调整近邻数KNN实战—酒的分类————数据集有哪些键、生成训练集和测试集、KNN拟...
java 的优势就是 运行速度快(相比 pure python),python 的优势就是 库多,写起来代码量少
微积分、线性代数、概率论、最优化方法
最多设置5个标签!
特征缩放(feature scaling)是预处理阶段的关键步骤,但常常被遗忘。虽然存在决策树和随机森林这种是少数不需要特征缩放的机器学习算法,但对于大部分机器学习算法和优化算法来说,如果特征都在同一范围内,会获得更好的结果。比如梯度下降法。
特征缩放的重要性可以通过一个简单的示例解释。假设我们有两个特征,一个特征的取值范围是[1,10],另一个特征的取值范围是[1,100000]。我们使用Adaline中的平方误差函数,很明显,权重更新时会主要根据第二维度特征,这就使得在权重更新过程中第一个特征的话语权很小。另一个例子是如果kNN算法用欧氏距离作为距离度量,第二维度特征也占据了主要的话语权。
有两种方法能使不同的特征有相同的取值范围:归一化(normalization)和标准化(standardization)。两种方法还是有必要区分一下的。
1. 归一化指的是将特征范围缩放到[0,1],是最小-最大缩放(min-max scaling)的特例。为了得到归一化结果,我们对每一个特征应用最小-最大缩放,计算公式如下:
其中,x n o r m x_{norm}x
norm
是x i x^ix
i
归一化后的结果,x m i n x_{min}x
min
是对应的列特征最小值,x m a x x_{max}x
max
则是最大值。
sklearn中实现了最小-最大缩放,调用MinMaxScaler类即可:
线性变换和极差法(线性归一化)
将原始数据线性化的方法转换到[0 1]的范围,该方法实现对原始数据的等比例缩放。通过利用变量取值的最大值和最小值(或者最大值)将原始数据转换为界于某一特定范围的数据,从而消除量纲和数量级影响,改变变量在分析中的权重来解决不同度量的问题。由于极值化方法在对变量无量纲化过程中仅仅与该变量的最大值和最小值这两个极端值有关,而与其他取值无关,这使得该方法在改变各变量权重时过分依赖两个极端取值。
相关问题推荐
也不难学,但是要有JAVA的基础
这个要看你在哪个城市就业了,一般来说适合大数据就业的城市不多,一线城市北上广深,甚至在成都找大数据方向的工作都不太好找。如果你学了大数据,刚好也在比较热门的城市,大数据薪资至少也得上万吧。...
自学的话就走很多弯路,需要花费大量时间。如果时间充足可以自学。
人工智能当前有六大研究领域,涉及到计算机视觉、自然语言处理、机器学习、自动推理、知识表示和机器人学,初学者应该选择一个主攻方向,并围绕这个主攻方向来制定学习计划。对于初学者来说,可以从机器学习开始学起,一方面机器学习是打开人工智能知识大门的...
机器学习跟模式识别,统计学习,数据挖掘,计算机视觉,语音识别,自然语言处理等领域有着关系
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的...
先来看一下机器学习的概念,我们提供给电脑样例数据,电脑通过一定的模型自己学习出相应的规则,并且这些规则可以随着数据的输入不断调整。而深度学习,则是一种十分有效的机器学习方法。现在的深度学习主要指的是深度神经网络。神经网络形式上就是一个分层的...
行业里其实都有参合一起用,但是java用的比较多!
机器学习【一】K最近邻算法涉及内容:分类——————数据集生成器、KNN拟合数据多元分类————生成数据集、KNN拟合回归分析————用于回归分析的数据集生成器、KNN拟合、调整近邻数KNN实战—酒的分类————数据集有哪些键、生成训练集和测试集、KNN拟...
java 的优势就是 运行速度快(相比 pure python),python 的优势就是 库多,写起来代码量少
微积分、线性代数、概率论、最优化方法