机器学习中训练集和测试集归一化(matlab版) |
您所在的位置:网站首页 › matlab如何将特征向量归一化 › 机器学习中训练集和测试集归一化(matlab版) |
转载自 https://blog.csdn.net/lkj345/article/details/50352385 背景介绍: 归一化后加快了梯度下降求最优解的速度,归一化有可能提高精度。训练集和测试集归一化方法相同。数据集不小,81*132337,81行表示包含81维属性,132337列表示包含132337条训练数据。数据中包含NaN数据。使用matlab中的mapminmax函数,归一化到默认的范围[-1 +1]。为了方便演示,我们以一个简单的矩阵来说明归一化。
针对属性进行归一化的代码 inst = [1 2 3 4; 2 3 4 5; 3 4 5 6]; inst_norm = mapminmax(inst);得到的归一化矩阵如下
针对数据进行归一化的代码 inst = [1 2 3 4; 2 3 4 5; 3 4 5 6]; inst_norm = mapminmax(inst')';得到的归一化矩阵如下
对于一条新的数据,应该先按照训练集的归一化方法进行归一化,再进行分类,比如对于如下一条新数据, 其中settings记录了训练集的归一化方法,得到以下归一化结果,可以参考矩阵(2) mapminmax会跳过NaN数据,最好的方法是归一化之后,将NaN赋值成0。 inst_norm(find(isnan(inst_norm))) = 0;
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |