zoukankan      html  css  js  c++  java
  • 学习相关

    数据运用:注意对数据先进行random_shuffle(如果数据有一定顺序,下述划分会导致数据范围不全面)
    1)数据7:3划分
    train err/ test err

    2)数据6:2:2划分
    train err/ validation err/ test err
    跑NN是降低train err, 可以理解为获得某个固定的超参数下, NN的model中的最优参数
    对于不同的超参数(一些常数, 权值初始化, model选择等), 比较跑NN后的validation err, 能够找到好的超参数
    由于这个超参数表明了它对validation set好, 但是不表明对其他数据也好, 比如超参数试多了, 可能连着training set和validation set一起overfit了
    所以最后还要再测test err看下模型在unseen data上的表现
    test err不能轻易使用, 比如不能说我看到validation err比较小了, 觉得开心, 就跑去test一下, 发现好像不行, 然后又重新调超参数, 这样test就沦为validation了

    注意当使用regularization时,使用带(lambdasum heta^2)(J)训练,但使用不带的去计算三种err
    实现时不用写俩函数,传参时lambda设成0就好

    算法调整

    目前理解bias / variance
    bias是train err比较大, variance是train err和test err的差距比较大
    bias就比如用直线去拟合一条比较复杂的曲线,连train err都比较大
    variance就比如用非常高次的多项式去拟合并不那么复杂的曲线,能把train err弄得比较小,但波动大,而增加数据可以使假设逐步向曲线靠近,类比泰勒展开每增加一阶导数曲线的变化

    此外learning curve中
    train err增test err减,逼近较快,之后gap较小,train err较大,为high bias + low variance
    train err增test err减,逼近较慢,之后gap较大,train err较小,为low bias + high variance

    1)high bias
    +features(additional or polynomial)
    +hidden layer
    -lambda(lambda过大变成直线)

    2)high variance
    +training set
    +lambda(lambda过小)
    -features

    绘图法

    J-Iter
    train err, test err-training set size (learning curve,每次训练一个training set前缀,测完整的test set)
    err-parameter

    评测指标

    对于01分类问题,以诊断癌症为例(1为癌症)
    precision(P):预测为1的人中有多少真实为1(可以理解为预测准确度)
    recall(R):真实为1的人中有多少被预测为1(可以理解为预测灵敏度)
    F: (2frac {PR}{P+R}) F越大越好(这种公式即并联电阻的总电阻,使P,R都不会太低)

  • 相关阅读:
    vue 解决 打包完iE下空白
    多层josn数据 修改
    vue 初始化data中的数据
    图片查看器(缩放 拖动)
    js 懒加载
    css flex 兼容ios android--商品展示 添加购物车
    领域驱动架构(DDD)建模
    知乎复制文本
    Nlog配置文件
    未能加载文件或程序集“xxx”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集
  • 原文地址:https://www.cnblogs.com/acha/p/11061633.html
Copyright © 2011-2022 走看看