数据清理
水果店卖水果要把坏的扔掉,剩下的分好的,一般的,低价处理的出售。
同样,数据集的质量也很重要,所以需要数据清理
缩放特征值是常用数据清理手段之一
它是指将浮点特征值从自然范围(如100到900)转换为标准范围(如0到1或-1到1)
如果某个特征集只包含一个特征,则缩放可以提供的好处几乎没有
但如果特征及包含多个特征,缩放特征可以带来以下优势:
①帮助梯度下降法更快速地收敛
②帮助避免‘NaN陷阱’。如某个值在训练期间超出浮点精确率限制时,就会变成NaN值(not a number,非数),模型中一个数值变成NaN,随后模型中的所有其他数值最终也会因数学运算而变成NaN
③帮助模型为每个特征确定合适的权重。如果没有进行特征缩放,则模型会对范围较大的特征投入过多精力
清查是另一个常用的数据清理手段
我们假定用于训练和测试的所有数据都是值得信赖的。
在现实生活中,数据集中的很多样本是不可靠的,原因有多种:
①遗漏值:张三忘记输入
②重复样本:服务器错误上传两次
③不良标签:张三看串行了,把三花和大胖橘标反了
④不良特征值:张三输入了多余的位数
一旦检测到存在这些问题,需要将相应样本从数据集中移除,从而修正不良样本
要清查数据,可以写代码判断,但不良标签可能不太好排查
后续船长大佬会介绍其他数据清理手段,持续更新ing
逻辑回归与分类阈值
什么是线性回归?什么是逻辑回归?
线性回归是一种回归模型,通过将输入特征进行线性组合输出连续值。
逻辑回归也是一种模型,通过将sigmoid函数应用于线性预测,生成分类问题中每个可能得离散标签值的概率。
(没事我也没懂,举个栗子)
线性回归就是这个
逻辑回归就是这个
逻辑回归返回的是概率,还记得sigmoid函数吗
返回的是一个0到1之间的值,用于表示概率,如我去JJ演唱会的概率是0.9。或转换成二元值,如我会去JJ演唱会
如果某封电子邮件类别预测分数为0.6呢?算垃圾邮件还是不算呢?
为了将逻辑回归值映射到二元类别,就必须指定一个分类阈值(也称为判定阈值)。
如果高于该阈值,表示为垃圾邮件
如果低于该阈值,表示为非垃圾邮件
阈值取决具体问题调整。
(这里注意高于低于表示为什么跟预测内容相关。
比如预测邮件是垃圾邮件,那么就用上述规则
但如果预测邮件不是垃圾邮件,那么就反过来)
静态训练与动态训练
在设计人工智能系统时,要考虑系统采取什么训练方式,用静态训练方式还是动态训练方式?
静态训练是指,在系统发布出去之前,就利用大型数据集将系统给训练好了。
动态训练是指,系统已经发布了,但数据仍然不断地被输入到系统中进行训练。这种方式更像人类。
静态训练、动态训练各有优势。
静态训练更容易被构建和测试,因为模型未发布,训练中出现错误也可以测试修改。
但静态训练容易过时,因为用的都是已有数据,时间久了,可能不适用新的环境。
动态训练需要设计构建复杂的系统使模型可以随着时间推移而适应新加入的训练数据。
动态训练的模型不会过时。
设计系统的时候该怎么选呢?
取决于与系统相关的数据的类型。
如果这类数据不会随着数据的推移发生很大变化,适合用静态训练方式。如识别狗、猫(猫猫狗狗类型固定)