【机器学习】关于深度学习的一些算法概念整理(一)

数据预处理技术

均值移除( Mean removal)

将数据的每个特征的平均值移除,以保证特征均值为0(即标准化处理)。这样可以消除特征彼此间的偏差(bias)。

示例代码:

import numpy as np
from sklearn import preprocessing

data = np.array([[3, -1.5, 2, -5.4], [0, 4, -0.3, 2.1], [1, 3.3, -1.9, -4.3]])

data_standardized = preprocessing.scale(data)

print("\nMean =", data_standardized.mean(axis = 0))
print("Std deviation =", data_standardized.std(axis = 0))

运行效果:
特征均值几乎是0,而且标准差为1

Mean = [ 5.55111512e-17 -1.11022302e-16 -7.40148683e-17 -7.40148683e-17]
Std deviation = [1. 1. 1. 1.]

范围缩放( Scaling)

数据点中,每个特征的数值范围可能变化很大,因此,将特征的数值范围缩放到合理的大小是非常重要的。

示例代码:

data_scaler = preprocessing.MinMaxScaler(feature_range = (0, 1))
data_scaled = data_scaler.fit_transform(data)

print("\nMin max scaled data = ", data_scaled)

运行效果:
所有数据点的特征值都位于指定的数值范围内。

Min max scaled data =  
[[1.         0.         1.         0.        ]
 [0.         1.         0.41025641 1.        ]
 [0.33333333 0.87272727 0.         0.14666667]]

归一化(Normalization)

数据归一化用于需要对特征向量的值进行调整时,以保证每个特征向量的值都缩放到相同的数值范围。
机器学习中最常用的归一化形式就是将特征向量调整为L1范数,使特征向量的数值之和为1。

示例代码:

data_normalied = preprocessing.normalize(data, norm = 'l1')
print("\nL1 normalized data = ", data_normalied)

运行结果:

L1 normalized data =  
[[ 0.25210084 -0.12605042  0.16806723 -0.45378151]
[ 0.          0.625      -0.046875    0.328125  ]
[ 0.0952381   0.31428571 -0.18095238 -0.40952381]]

这个方法经常用于确保数据点没有因为特征的基本性质而产生较大差异,即确保数据处于同一数量级,提高不同特征数据的可比性

二值化( Binarization)

二值化用于将数值特征向量转换为布尔类型向量

示例代码:

data_binarized = preprocessing.Binarizer(threshold=1.4).transform(data)
print("\nBinarized data = ", data_binarized)

运行结果:

Binarized data =  
[[1. 0. 1. 0.]
 [0. 1. 0. 1.]
 [0. 1. 0. 0.]]

线性回归

回归是估计输入数据与连续值输出数据之间关系的过程
线性回归的目标是提取输入变量与输出变量的关联线性模型,这就要求实际输出与线性方程预测的输出的残差平方和(sum of squares of differences)最小化。这种方法被称为普通最小二乘法(Ordinary Least Squares, OLS)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值