google 机器学习速成课程 笔记2

学习google 机器学习速成课程 笔记2

特征工程

从原始数据中提取特征的过程
如果原始数据为字符串,可以使用One-Hot编码将其转换成特征向量。特征一般为浮点数表示。
将字符串值映射到浮点数
1. 首先,为要表示的 所有特征的 字符串值 定义一个词汇表
2. 然后,使用该词汇表创建one-hot编码,用于将指定字符串值表示为二元矢量,在该矢量中,只有一个元素设为1,其余的元素均为0。该矢量的长度等于词汇表中的元素数
将枚举值映射到浮点数
可以采用0~n的表示方式,不过,机器学习模型通常为每个分类特征表示为单独的布尔值。类似于one-hot,采用这种编码可以方便的处理多分类问题。
良好的特征的特点
1. 避免很少使用的离散特征值
2. 最好具有明确清晰的含义
3. 不要将“神奇”的值和实际数据混为一谈
4. 考虑上游不稳定性
清理数据
1. 缩放特征值,缩放是指将特征值从自然范围转换成标准范围,包含多个特征的时候,缩放有助于梯度下降快速收敛,并帮助模型为每个特征确定合适的权重。如果各个特征的取值变化很大,并且没有进行合适的缩放,会使最后的模型变得很糟糕。常用的缩放特征值的办法是 计算每个值的Z得分

z_score=valuemeanstddev z _ s c o r e = v a l u e − m e a n s t d d e v

mean:均值
stddev:标准差
value:原始值
z_score:z得分
2. 处理极端值
可以 取对数,如果取对数的结果不好看的话,可以 限制最大值为某个数值t,但可能导致t处出现一个小峰,可以忽略。
3. 分箱
采用直方图的形式,连续数值变为离散数值
还可以按照 分数位分箱
特征交叉
利用其他特征乘积创建合成特征的过程称为 特征交叉、特征交叉乘积。使用特征交叉,可以把 非线性学习整合到线性学习中。特征组合是指通过将两个或多个输入特征 相乘来对特征空间中的非线性规律进行编码的合成特征。
若特征向量为x1,x2,则特征组合为 x12,x22,x1x2 x 1 2 , x 2 2 , x 1 ∗ x 2
线性问题:是指的线性可区分问题,指画一条线可以区分不同的类别。
问题:
加利福尼亚州不同城市的房价有很大差异。假设您必须创建一个模型来预测房价。以下哪组特征或特征组合可以反映出特定城市中 roomsPerPerson 与房价之间的关系?
1.一个特征组合: [binned latitude X binned longitude X binned roomsPerPerson]
将分箱纬度与分箱经度组合,可以让模型了解 roomsPerPerson 特定于城市的效果。分箱可防止纬度变化与经度变化产生相同的效果。根据箱的精细程度,此特征组合可以反映出特定于城市、特定于社区,甚至特定于街区的效果。
2.一个特征组合:[latitude X longitude X roomsPerPerson]
在本例中,不建议您组合实值特征。例如,将纬度的实值与 roomsPerPerson 组合后, 一个特征(比如纬度)上发生 10% 的变化就相当于另一个特征(比如 roomsPerPerson)上发生 10% 的变化。
3.三个独立的分箱特征:[binned latitude]、[binned longitude]、[binned roomsPerPerson]
建议您采用分箱方式,因为这样可以让模型了解单个特征内的非线性关系。不过,一个城市存在于多个维度上;因此,要了解特定于城市的关系,需要对纬度与经度进行组合。

正则化,防止模型过拟合

过拟合图片
图中训练集的损失越来越小趋近于0,而测试集的损失后来却有变大的趋势,就是发生了过拟合。
防止过拟合可以采用早停 或者 正则化,目的在于降低模型复杂度
可以降低模型的复杂度来防止过拟合,该原则称为正则化。
不是以最小化损失(经验风险最小化)为目标,而是以最小化损失和复杂度为目标

minimize(Loss(model)+λcomplexity(model)) m i n i m i z e ( L o s s ( m o d e l ) + λ ∗ c o m p l e x i t y ( m o d e l ) )

有两种衡量模型复杂度的办法:
1.将模型复杂度作为模型中所有特征的权重的函数
2.将模型复杂度作为具有非零权重的特征总数的函数
如果模型复杂度是权重的函数,则特征权重的绝对值越高,对模型复杂度的贡献越大,可以采用 L2正则化公式来量化复杂度
complerity(model)=||w||22=w21+w22+...+w2n c o m p l e r i t y ( m o d e l ) = | | w | | 2 2 = w 1 2 + w 2 2 + . . . + w n 2

在这个公式中,接近于0的权重对模型复杂度基本没影响,但是离群值(绝对值比较大的)权重则影响大
λ λ 称为正则化率,通过它来调整正则化项的整体影响
执行正则化可以使权重的平均值接近于0,权重值接近于0,且呈正态(高斯)分
λ λ 过高,欠拟合;过低,过拟合。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值