2021夏魔训作业 第三天 2021-07-28

累加、累乘与积分

  1. 将向量下标为偶数的分量 (x2, x4, …) 累加, 写出相应表达式.
    表 达 式 为 : ∑ ( i = 1   a n d   i m o d    2 = 0 ) n x i 表达式为:\sum\limits_{\left(i = 1\ and\ i \mod2=0\right)}^nx_i (i=1 and imod2=0)nxi
  2. 各出一道累加、累乘、积分表达式的习题, 并给出标准答案.
    ∑ i = 1 100 i = 1 + 2 + ⋯ + 100 = 5050 \sum\limits_{i=1}^{100}i=1+2+\dots+100=5050 i=1100i=1+2++100=5050
        int sum = 0;
        for (int i = 1; i <= 100; i++){
            sum += i;
        }

∏ i = 1 10 i = 1 ∗ 2 ∗ ⋯ ∗ 10 = 3628800 \prod\limits_{i=1}^{10}i=1*2*\dots*10=3628800 i=110i=1210=3628800

        int sum = 1;
        for (int i = 1; i <= 100; i++){
            sum += i;
        }

∫ 1 10 ( x 3 + x 2 + 1 x + 1 ) d x = 2844.6051614259272 \int_{1}^{10}\left(x^3+x^2+\frac{1}{x}+1\right)\mathbf{d}x=2844.6051614259272 110(x3+x2+x1+1)dx=2844.6051614259272

        double integration = 0;
        double delta = 0.001;
        for (double x = 1; x <= 10; x += delta){
            integration += (x * x * x + x * x + (1 / x) + 1) * delta;
        }
  1. 你使用过三重累加吗? 描述一下其应用.
    写Demo写过两次,二重累加一般是对二维矩阵进行一定的操作,三重累加可以应用在由二维矩阵作为单个元素组成一系列以为矩阵进行操作时使用。
  2. 给一个常用的定积分, 将手算结果与程序结果对比.
    ∫ 0 1 x d x , 使 用 代 码 计 算 时 , 结 果 为 : 0.4950000000000004 手 动 计 算 时 , ∫ 0 1 x d x = 1 2 x 2 ∣ 0 1 = 1 2 = 0.5 , 代 码 如 下 : \int_{0}^{1}x\mathbf{d}x,使用代码计算时,结果为:0.4950000000000004\\ 手动计算时,\int_{0}^{1}x\mathbf{d}x=\frac{1}{2}x^2\vert_0^1=\frac{1}{2}=0.5,代码如下: 01xdx,使:0.495000000000000401xdx=21x201=21=0.5,:
        double integration = 0;
        double delta = 0.01;
        for (double x = 0; x <= 1; x += delta){
            integration += x * delta;
        }
  1. 自己写一个小例子 ( n = 3 , m = 1 ) (n = 3, m = 1) (n=3,m=1)来验证最小二乘法.
    d e f i : 函 数 表 示 为 : min ⁡ b → ∑ i = 1 n ( y m − y i ) 2 , b 为 系 数 矩 阵 , y m 为 观 测 值 , y i 为 理 论 值 , 其 中 规 则 如 下 : 被 选 择 的 参 数 , 应 该 使 算 出 的 函 数 曲 线 与 观 测 值 之 差 的 平 方 和 最 小 。 defi: 函数表示为:\min\limits_{\overrightarrow{b}}\sum\limits_{i=1}^n\left(y_m-y_i\right)^2,b为系数矩阵,y_m为观测值,y_i为理论值,其中规则如下:被选择的参数,应该使算出的函数曲线与观测值之差的平方和最小。 defi::b mini=1n(ymyi)2bymyi使线
天数股价
12
25
34

可以得出,如下二元一次方程:
{ 2 = b 0 × 1 + b 1 5 = b 0 × 2 + b 1 4 = b 0 × 3 + b 1 , 此 时 令 天 数 组 成 的 矩 阵 为 t , 股 价 组 成 的 矩 阵 为 y , 那 么 要 求 的 参 数 矩 阵 b = min ⁡ b 0 , b 1 ∥ ( t 1 1 t 2 1 ⋮ ⋮ t n 1 ) ( b 0 b 1 ) − ( y 1 y 2 ⋮ y n ) ∥ 2 , 解 的 b 0 = 1 , b 1 = 5 3 , y = x + 5 3 \begin{cases} 2=b_0\times1+b1\\ 5=b_0\times2+b1\\ 4=b_0\times3+b1\\ \end{cases} ,此时令天数组成的矩阵为t,股价组成的矩阵为y,那么要求的参数矩阵b=\min\limits_{b_0,b_1}\left \| \begin{pmatrix} t_1 && 1 \\ t_2 && 1 \\ \vdots&& \vdots \\ t_n && 1 \\ \end{pmatrix}\begin{pmatrix} b_0 \\ b_1 \end{pmatrix} - \begin{pmatrix} y_1 \\ y_2 \\ \vdots\\ y_n\\ \end{pmatrix} \right \|_2,解的b_0=1,b_1=\frac{5}{3},y=x+\frac{5}{3} 2=b0×1+b15=b0×2+b14=b0×3+b1,tyb=b0,b1mint1t2tn111(b0b1)y1y2yn2,b0=1,b1=35,y=x+35

  1. 自己推导一遍, 并描述Logistic 回归的特点 (不少于 5 条).
    1). 可用于分类,其中多分类可以划分为二分类。
    2).激活函数为较常用的Sigmoid,(还包括tanh,ReLU,LeakyReLU, PReLU(Parametric Relu), RReLU)
    3).在无法获得解析解式时,采用了梯度下降,寻找局部最优解。(线性回归问题在求偏导时在一定条件下可以得到解析式)
    4).在累乘时,避免算出的数据过大,采用了求对数的方法,使数据变小便于计算。也可以采用累加的方法。
    5). 这里的分类是根据算出的划分超平面/线,计算离平面的距离,得出概率。

线性回归公式推导:

背景: 在一些情况下,输出值 y y y与输入值 x x x存在一些线性关系,通过一定的训练,可以得到一个代价函数来确定 y y y x x x的关系。
参数:设 x x x一共有 n n n个属性, x ( i ) = [ x 1 ( i ) x 2 ( i ) ⋮ x n ( i ) ] x^{(i)}=\begin{bmatrix}x^{(i)}_1 \\ x^{(i)}_2 \\ \vdots \\ x^{(i)}_n \\ \end{bmatrix} x(i)=x1(i)x2(i)xn(i),完整的输入值 x x x就是一个 n × m n\times m n×m的矩阵, θ = [ θ 1 θ 2 ⋮ θ n ] \theta=\begin{bmatrix}\theta_1 \\ \theta_2 \\ \vdots \\ \theta_n \\ \end{bmatrix} θ=θ1θ2θn表示未知参数, y = [ y 1 y 2 ⋮ y n ] y=\begin{bmatrix}y_1 \\ y_2 \\ \vdots \\ y_n \\ \end{bmatrix} y=y1y2yn表示输出值。可得线性关系: y ( i ) = θ ⊤ x ( i ) + ϵ ( i ) y^{(i)}=\theta^\top x^{(i)}+ \epsilon^{(i)} y(i)=θx(i)+ϵ(i)。其中 ϵ ( i ) \epsilon^{(i)} ϵ(i)是截距(误差项)。
p ( ϵ ( i ) ) = 1 2 π σ e x p ( − ( ϵ ( i ) ) 2 2 σ 2 ) p(\epsilon^{(i)})=\frac{1}{\sqrt{2\pi}\sigma}exp\left(-\frac{(\epsilon^{(i)})^2}{2\sigma^2} \right) p(ϵ(i))=2π σ1exp(2σ2(ϵ(i))2)
y ( i ) = θ ⊤ x ( i ) + ϵ ( i ) y^{(i)}=\mathbf{\theta^{\top}}x^{(i)}+\epsilon^{(i)} y(i)=θx(i)+ϵ(i),代入上式
p ( y ( i ) ∣ x ( i ) ; θ ) = 1 2 π σ e x p ( − ( y ( i ) − θ ⊤ x ( i ) ) 2 2 σ 2 ) p(y^{(i)}|x^{(i)};\theta)= \frac{1}{\sqrt{2\pi}\sigma} exp\left(-\frac{(y^{(i)}-\mathbf{\theta^{\top}}x^{(i)})^{2}}{2\sigma^{2}}\right) p(y(i)x(i);θ)=2π σ1exp(2σ2(y(i)θx(i))2)
希望得到的概率最大,使用到了最大似然估计:
L ( θ ) = ∏ i = 1 m p ( y ( i ) ∣ x ( i ) ; θ ) = ∏ i = 1 m 1 2 π σ e x p ( − ( y ( i ) − θ ⊤ x ( i ) ) 2 2 σ 2 ) L(\theta)=\prod^{m}_{i=1}p(y^{(i)}|x^{(i)};\theta)=\prod^{m}_{i=1}\frac{1}{\sqrt{2\pi}\sigma} exp\left(-\frac{(y^{(i)}-\mathbf{\theta^{\top}}x^{(i)})^{2}}{2\sigma^{2}}\right) L(θ)=i=1mp(y(i)x(i);θ)=i=1m2π σ1exp(2σ2(y(i)θx(i))2)
由于连乘的结果过大,对数的单调性,对两边进行取对数:
ℓ ( θ ) = l o g L ( θ ) = l o g ∏ i = 1 m 1 2 π σ e x p ( − ( y ( i ) − θ ⊤ x ( i ) ) 2 2 σ 2 ) = ∑ i = 1 m l o g 1 2 π σ e x p ( − ( y ( i ) − θ ⊤ x ( i ) ) 2 2 σ 2 ) = m l o g 1 2 π σ − 1 2 σ 2 ∑ i = 1 m ( y ( i ) − θ ⊤ x ( i ) ) 2 \ell(\theta)=logL(\theta)\\=log\prod^{m}_{i=1}\frac{1}{\sqrt{2\pi}\sigma} exp\left(-\frac{(y^{(i)}-\mathbf{\theta^{\top}}x^{(i)})^{2}}{2\sigma^{2}}\right)\\ =\sum^{m}_{i=1}log\frac{1}{\sqrt{2\pi}\sigma} exp\left(-\frac{(y^{(i)}-\mathbf{\theta^{\top}}x^{(i)})^{2}}{2\sigma^{2}}\right)\\=mlog\frac{1}{\sqrt{2\pi}\sigma}-\frac{1}{2\sigma^{2}} \sum^{m}_{i=1}(y^{(i)}-\mathbf{\theta^{\top}}x^{(i)})^{2} (θ)=logL(θ)=logi=1m2π σ1exp(2σ2(y(i)θx(i))2)=i=1mlog2π σ1exp(2σ2(y(i)θx(i))2)=mlog2π σ12σ21i=1m(y(i)θx(i))2,前部分为常数,即只需使 − 1 2 σ 2 ∑ i = 1 m ( y ( i ) − θ ⊤ x ( i ) ) 2 -\frac{1}{2\sigma^{2}}\sum^{m}_{i=1}(y^{(i)}-\mathbf{\theta^{\top}}x^{(i)})^{2} 2σ21i=1m(y(i)θx(i))2最小即可。则代价函数 J ( θ ) = ∑ i = 1 m ( y ( i ) − θ ⊤ x ( i ) ) 2 J(\theta)=\sum^{m}_{i=1}(y^{(i)}-\mathbf{\theta^{\top}}x^{(i)})^{2} J(θ)=i=1m(y(i)θx(i))2,对其求导为: ∇ θ J ( θ ) = [ ∂ J ( θ ) ∂ θ 1 ∂ J ( θ ) ∂ θ 2 ⋮ ∂ J ( θ ) ∂ θ j ] \nabla_{\theta} J(\theta)= \begin{bmatrix} \frac{\partial J(\theta)}{\partial \theta_1}\\ \frac{\partial J(\theta)}{\partial \theta_2}\\ \vdots \\ \frac{\partial J(\theta)}{\partial \theta_j}\\ \end{bmatrix} θJ(θ)=θ1J(θ)θ2J(θ)θjJ(θ),则得到: ∂ J ( θ ) ∂ θ j = ∂ 1 2 ∑ i ( ∑ j θ j x j ( i ) − y ( i ) ) 2 ∂ θ j x j ( i ) = ∑ i ( ∑ j θ j x j ( i ) − y ( i ) ) x j ( i ) = ∑ i x j ( i ) ( θ T x ( i ) − y ( i ) ) \frac{\partial J(\theta)}{\partial \theta_j}=\frac{\partial \frac{1}{2} \sum_{i}\left(\sum_{j}\theta_j x_j^{(i)}-y^{(i)}\right)^2}{\partial \theta_j} x_j^{(i)}\\ =\sum_{i}\left(\sum_{j}\theta_j x_j^{(i)}-y^{(i)}\right)x_j^{(i)}\\=\sum_{i}x_j^{(i)}\left(\theta^T x^{(i)}-y^{(i)}\right) θjJ(θ)=θj21i(jθjxj(i)y(i))2xj(i)=i(jθjxj(i)y(i))xj(i)=ixj(i)(θTx(i)y(i))

Logistic回归公式推导:

引入sigmoid 函数: f ( x ) = 1 1 + e − x f(x)=\frac{1}{1+e^{-x}} f(x)=1+ex1,将变量映射在 ( 0 , 1 ) (0,1) (0,1)之间。用 x , θ x, \theta x,θ构成sigmoid函数的输入,则 h θ ( x ) = 1 1 + e − θ T x h_{\theta}\left(x\right)=\frac{1}{1+e^{-\theta^T x}} hθ(x)=1+eθTx1,当 y y y 0 0 0 1 1 1时,对应的概率函数为:
P ( y ( i ) = 1 ∣ x ( i ) ; θ ) = h θ ( x ( i ) ) , P ( y ( i ) = 0 ∣ x ( i ) ; θ ) = 1 − h θ ( x ( i ) ) P(y^{(i)}=1|x^{(i)};\mathbf{\theta})=h_{\theta}(x^{(i)}),P(y^{(i)}=0|x^{(i)};\mathbf{\theta})=1-h_{\theta}(x^{(i)}) P(y(i)=1x(i);θ)=hθ(x(i)),P(y(i)=0x(i);θ)=1hθ(x(i))
则对于某一个概率: P ( y ( i ) ∣ x ( i ) ; θ ) = ( h θ ( x ( i ) ) ) y ( i ) ( 1 − h θ ( x ( i ) ) ) 1 − y ( i ) P(y^{(i)}|x^{(i)};\mathbf{\theta}) =(h_{\theta}(x^{(i)}))^{y^{(i)}}(1-h_{\theta}(x^{(i)}))^{1-y^{(i)}} P(y(i)x(i);θ)=(hθ(x(i)))y(i)(1hθ(x(i)))1y(i),似然函数 L ( θ ) L(\theta) L(θ)为:
L ( θ ) = ∏ i = 1 m P ( y ( i ) ∣ x ( i ) ; θ ) = ∏ i = 1 m ( h θ ( x ( i ) ) ) y i ( 1 − h θ ( x ( i ) ) ) 1 − y ( i ) L(\theta)=\prod^{m}_{i=1}P(y^{(i)}|x^{(i)};\theta)=\prod^{m}_{i=1}(h_{\theta}(x^{(i)}))^{y^{{i}}}(1-h_{\theta}(x^{(i)}))^{1-y^{(i)}} L(θ)=i=1mP(y(i)x(i);θ)=i=1m(hθ(x(i)))yi(1hθ(x(i)))1y(i),两边取对数, ℓ ( θ ) = log ⁡ L ( θ ) = log ⁡ ( ∏ i = 1 m ( h θ ( x ( i ) ) ) y i ( 1 − h θ ( x ( i ) ) ) 1 − y ( i ) ) = ∑ i = 1 m ( log ⁡ h θ ( x ( i ) ) y ( i ) + log ⁡ ( 1 − h θ ( x ( i ) ) ) ( 1 − y ( i ) ) ) = ∑ i = 1 m ( y ( i ) log ⁡ h θ ( x ( i ) ) + ( 1 − y ( i ) ) log ⁡ ( 1 − h θ ( x ( i ) ) ) ) \ell(\theta)=\log L(\theta)\\ =\log\left(\prod^{m}_{i=1}(h_{\theta}(x^{(i)}))^{y^{{i}}}(1-h_{\theta}(x^{(i)}))^{1-y^{(i)}}\right)\\ =\sum^{m}_{i=1}\left(\log h_{\theta}(x^{(i)})^{y^{(i)}}+\log(1-h_{\theta}(x^{(i)}))^{(1-y^{(i)})}\right)\\ =\sum^{m}_{i=1}\left(y^{(i)}\log h_{\theta}(x^{(i)})+(1-y^{(i)})\log(1-h_{\theta}(x^{(i)}))\right) (θ)=logL(θ)=log(i=1m(hθ(x(i)))yi(1hθ(x(i)))1y(i))=i=1m(loghθ(x(i))y(i)+log(1hθ(x(i)))(1y(i)))=i=1m(y(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))),则代价函数为:
J ( θ ) = − ∑ i = 1 m ( y ( i ) log ⁡ h θ ( x ( i ) ) + ( 1 − y ( i ) ) log ⁡ ( 1 − h θ ( x ( i ) ) ) ) J(\theta)=-\sum^{m}_{i=1}\left(y^{(i)}\log h_{\theta}(x^{(i)})+(1-y^{(i)})\log(1-h_{\theta}(x^{(i)}))\right) J(θ)=i=1m(y(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))),对 h θ ( x ( i ) ) = 1 1 + e − θ T x ( i ) h_{\theta}\left(x^{(i)}\right)=\frac{1}{1+e^{-\theta^T x^{(i)}}} hθ(x(i))=1+eθTx(i)1求偏导,
∂ h θ ( x ( i ) ) ∂ θ j = e − θ T x ( i ) x j ( i ) ( 1 + e − θ T x ( i ) ) 2 1 − ∂ h θ ( x ( i ) ) ∂ θ j = − e − θ T x ( i ) x j ( i ) ( 1 + e − θ T x ( i ) ) 2 \frac{\partial h_{\theta}\left(x^{(i)}\right)}{\partial \theta_{j}}=\frac{e^{-\theta^T x^{(i)}}x_j^{(i)}}{\left(1+e^{-\theta^T x^{(i)}}\right)^2}\\ \frac{1-\partial h_{\theta}\left(x^{(i)}\right)}{\partial \theta_{j}}=-\frac{e^{-\theta^T x^{(i)}}x_j^{(i)}}{\left(1+e^{-\theta^T x^{(i)}}\right)^2} θjhθ(x(i))=(1+eθTx(i))2eθTx(i)xj(i)θj1hθ(x(i))=(1+eθTx(i))2eθTx(i)xj(i),对代价函数关于 θ \theta θ求偏导, ∂ J ( θ ) ∂ θ j = − ∑ i [ y ( i ) e − θ T x ( i ) x j ( i ) 1 + e − θ T x ( i ) − ( 1 − y ( i ) ) x j ( i ) ] = − [ y ( i ) e − θ T x ( i ) 1 + e − θ T x ( i ) x j ( i ) − x j ( i ) 1 + e − θ T x ( i ) + y ( i ) x j ( i ) 1 + e − θ T x ( i ) ] = − ∑ i x j ( i ) ( − 1 1 + e − θ T x ( i ) + y ( i ) ) = x j ( i ) ∑ i ( h θ ( x ( i ) ) − y ( i ) ) \frac{\partial J(\theta)}{\partial \theta_j}=-\sum_{i} \left[y^{(i)}\frac{e^{-\theta^T x^{(i)}}x_j^{(i)}}{1+e^{-\theta^T x^{(i)}}}-(1-y^{(i)})x_j^{(i)}\right]\\ =-\left[y^{(i)}\frac{e^{-\theta^T x^{(i)}}}{1+e^{-\theta^T x^{(i)}}}x_j^{(i)}-\frac{x_j^{(i)}}{1+e^{-\theta^T x^{(i)}}}+y^{(i)}\frac{x_j^{(i)}}{1+e^{-\theta^T x^{(i)}}}\right]\\ =-\sum_{i} x_j^{(i)}\left(-\frac{1}{1+e^{-\theta^T x^{(i)}}}+y^{(i)}\right)\\ =x_j^{(i)}\sum_{i} \left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)\\ θjJ(θ)=i[y(i)1+eθTx(i)eθTx(i)xj(i)(1y(i))xj(i)]=[y(i)1+eθTx(i)eθTx(i)xj(i)1+eθTx(i)xj(i)+y(i)1+eθTx(i)xj(i)]=ixj(i)(1+eθTx(i)1+y(i))=xj(i)i(hθ(x(i))y(i)),矩阵转置形式为:
∇ θ J ( θ ) = [ ∂ J ( θ ) ∂ θ 1 ∂ J ( θ ) ∂ θ 2 ⋮ ∂ J ( θ ) ∂ θ n ] = ∑ i x ( i ) ( h θ ( x ( i ) ) − y ( i ) ) \nabla_{\theta} J(\theta)= \begin{bmatrix} \frac{\partial J(\theta)}{\partial \theta_1}\\ \frac{\partial J(\theta)}{\partial \theta_2}\\ \vdots\\ \frac{\partial J(\theta)}{\partial \theta_n}\\ \end{bmatrix}=\sum_i x^{(i)} \left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right) θJ(θ)=θ1J(θ)θ2J(θ)θnJ(θ)=ix(i)(hθ(x(i))y(i))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值