• 吴恩达机器学习笔记


    Logistic 回归(实际上是一种分类算法)

    代价函数的选择:在线性回归模型时,选取所有模型误差的平方和最为代价函数。但是当我们将$h_\theta(x)=\frac{1}{1+e^{-{\theta}^T}}$代入定义了的代价的代价函数中时,我们得到的代价函数将是一个非凸函数。(实际上继续误差平方和作为代价函数也可以)

    这意味着我们的代价函数有许多局部最小值,这将影响梯度下降算法寻找全局最小值。 

    重新定义的代价函数:

     

    梯度下降的计算过程(假设函数中加入了sigma函数,且代价函数的定义也与之前不一样):

    梯度下降的例子:(便于梯度湘江更新过程的理解)

    tips:自己编写梯度下降法进行$\theta$更新是一种选择,但是也可以调用matlab,python中的相关库函数进行调试


     过拟合和欠拟合:

    过拟合:导致模型的泛化能力过差,当特征很多但是训练的数据过少,就会出现过拟合。想象一个极端例子:有800个特征,则需要800个权重(忽略偏置),若值若只有500个数据,则就不能完美的解除每个特征的权重。800个权重,数据只有900个的情况也差不多。

    过拟合解决方法:1、舍弃一些特征信息 (缺点是会损失一部分信息)  2、进行正则化,保留所有的特征,但是减少参数的大小( magnitude


    正则化:

    对于简单的拟合函数$h_\theta=\theta_0+\theta_1x_1+\theta_2x_2^2+\theta_3x_3^3+theta_4x_4^4$(其中没有加上费线性激活g(z),不影响表达),实际上就是高次项使得最后是过拟合。则我们要做的就是使高次项的系数$\theta_3 ,\theta_4$在一定程度上变小,其方法如下:在代价函数后面增加一个惩罚项,如这里的$1000\theta_3^2+10000\theta_4^2$(随便加,只要保证J随着增加项的增大而非常明显的增大即可)。此时,若想要最小化代价函数,则显然$\theta_3 , \theta_4$会被压得很低,接近于0,则高次项系数接近于0,最后结果仍然接近于2次(由$x^2$次数得到)

    实际上,若对所有的项都进行这样的“惩罚”,则最后得到的拟合结果会很平滑,且不容易过拟合。

    因为在实际中,不知道应该缩小哪些参数,所以就会的到$J(\theta)=\frac{1}{2m}[\sum_{i=1}^m(h_{\theta}(x^{(i)})-y^{(i)})^2+\lambda \sum_{i=1}^n\theta_j^2]$

    tis:这里的后一项是正则化项(其中$、lambda$为正则化参数),但不是从$i=0$开始的,并没有给$\theta_0$增加惩罚项,这是约定俗成,但是加上也可以。

    tips:对于正则化参数$\lambda$,设置过大会造成对参数$\theta$抑制过大,造成欠拟合;反之,则欠拟合。正则化参数的选取需格外注意。当然,也有自动选择正则化参数的方法,这节课老师没讲,自行百度

     

    tips:按照普通的梯度下降,则没有$1-\alpha\frac{\lambda}{m}$这一项,而这一项一般都是微微小于1的

    还是有点不懂,之后再看看


    神经网络:

    tips:需要注意的是图中在$x_1$上面填上了一个$x_0$,这个代表的是偏置,这个偏置会通过与$\theta_0$相乘的方式达到和之前偏置一样的效果(其中$\theta$全是1)

    tips:而且,下面公式的上下标也有考虑的进行了反写 如$\theta_{10}^{(1)}$  $(1)$代表了这是第一层的参数,下标$_{10}$代表的是从第0个神经元连接到第一个神经元。将两者结合,则表示,第一层的权重从前一层的第0个神经元接收到结果并进行加权。

    向量化表(以计算第二层的值为例):

    下图的理解 :第1层的编号为2的神经元(实际上是第三个)映射到下一层(第2层)的编号为3的神经元(实际上是第四个),其中$x_2$是第1层编号为2的神经元的输出($x_2$的编号是二,实际上由于人为加入偏置,他实际是第三个神经元的输出)【注意下标的反写


    神经网络的代价函数

  • 相关阅读:
    基于域名的虚拟主机
    用户认证
    部署lnmp
    django开发流程
    sed 和awk的执行方式
    将文本行倒序排列
    《深入理解JAVA虚拟机》----------第二章 JAVA内存区域与内存溢出异常,笔记(上)
    《深入理解JAVA虚拟机》----------第三章 垃圾收集器与内存分配策略,笔记(下)
    《深入理解JAVA虚拟机》----------第三章 垃圾收集器与内存分配策略,笔记(上)
    洛谷P3783 [SDOI2017]天才黑客(前后缀优化建图+虚树+最短路)
  • 原文地址:https://www.cnblogs.com/tianyuzh/p/14046119.html
Copyright © 2020-2023  润新知