1.深层、浅层、BP

出现背景 优点 缺点
浅层神经网络 为了解决非线性问题 可以拟合任何函数 参数多,神经元多,需要更多的计算资源和数据
BP算法(对p(label input)建模 为了计算神经网络 损失回传
深度神经网络(>=5) (时代背景数据爆炸,计算资源提升,希望自动学习特征(有个好的初始值)) 1.比浅层更好的表达性(计算单元少,高层可利用低层,高层全局,低层局部,更有语义化),2.层次化地学习特征,3.多层隐变量允许统计上的组合共享;4.有效 -
改进的BP(对p(input)建模 为了让BP适应深度神经网络,建立产生输入的生成式模型,调整参数使得p最大 - -
  • 训练

    • 监督

      • 误差自顶向下,对网络微调
      • 微调特征,使之与问题更相关
    • 非监督
      • 自下向上(greedy layer-wise traing

自动编码器

  • 自动编码器

    • 无监督
    • loss:重构误差(输入,输出)最小–>尽可能复现输入
    • 输入=输出——尽可能复现输入
      • input–encoder–>code–decoder–>output
      • code:输入的特征表达
      • 若有多层,则有多个code,多个不同的表达
    • 网络结构:
      • 三层

        • 输入x->y
        • 隐藏y->z
        • 输出z
      • 公式
        • y=sigmoid(Wx+b)
        • z=sigmoid(W’y+b’)
      • 条件
        • 输入神经元数量=输出(因为要一样
        • 隐藏<输入
          • 想要得到输入的一个压缩表示、抽象表示
    • 简化:W′=WTW'=W^TW′=WT——这样只要训练一组权值向量就可以
      • 再加一个约束,若不考虑sigmoid的话:

        • 若W−1=WTW^{-1}=W^TW−1=WT:正交矩阵,也就是说W是可以训练成正交矩阵的
    • 深度结构
      • 预测时,只看encoder:encoder1–>encoder2–>encoder3
      • 逐层训练(训练时才看解码过程)
        • 将input–encoder1–>code1–decoder1–>input’,训练好后,去除decoder1
        • 将input–>encoder1–>code1–encoder2–>code2–decoder2–>code1’
        • 依次让每一层都得到最小的重构误差,每一层都一个好的表达
    • 监督学习
      • encoder(已经得到了一个很好地表达,有一个好的初始值)+分类器
      • 有监督微调训练
        • 只调整分类器
        • 整体调整(端对端,更好)
    • 扩展(通过增加约束来发现输入数据的结构
      • 稀疏自编码器

        • 约束:限制使得得到的表达code尽量稀疏

          • L1范数项
          • y=wTxy=w^Txy=wTx
          • loss(x,w)=∣∣wy−x∣∣2+λΣj∣yj∣loss(x,w)=||wy-x ||^2+\lambda\Sigma_j|y_j|loss(x,w)=∣∣wy−x∣∣2+λΣj​∣yj​∣–>y长度小,loss要最小化,
          • z=wy
        • 稀疏容易得到更好的表达
      • 降噪自编码器
        • 存在噪声
        • 提高鲁棒性
        • 操作
          • x–>x’:以一定概率分布擦除x中项(置0)
          • x’->y–>z:loss(z,x)做误差迭代—>这样就学习到了x’(破损数据)
          • 破损数据的优点
            • 破损数据训练出来的w噪声小
            • 破损数据一定程度减轻了训练数据与测试数据的代购(去除了噪声)
            • 破损数据不影响记忆(人脑也是如此,虽然是随意擦除)
    • 栈式自编码器的优点
      • 有强大的表达能力
      • 深度神经网络的所有优点
      • 可以获得输入的层次型分组/部分-整体分解结构
        • 学习方式:逐层训练(前一层的输出是后一层的输入–依次训练

深度玻尔兹曼机DBM(deep boltzmann machine(DBM)

网络结构 状态 …目标函数… 特点
Hopfield网络 单层,全连接(有权,无向图)wij=wji,wii=0 1,-1(0),确定性地取1、0 E=−12STωSE=-\frac{1}{2}S^T\omega SE=−21​STωS 1.确定性地接受能量下降方向;2.会达到局部极小(模拟退火解决,以一定概率接受能量上升)
Boltzman机器 p(v)符合玻尔兹曼分布,生成模型,有隐层(与外部无连接),有可见层(输入层、输出层)(与外部有链接,收到外部约束),全连接(同层也有)(有权无向图)wij=wji,wii=0 1(on),0(off),状态满足boltzman分布,以p取1(二值神经元) PαPβ=exp(−(E(Sα)−E(Sβ))/T)\frac{P_\alpha}{P_\beta}=exp(-(E(S^\alpha)-E(S^\beta))/T)Pβ​Pα​​=exp(−(E(Sα)−E(Sβ))/T) 1.接受能量下降,以p(p(si=1)=11+exp(−bi−Σjsjwji)p(s_i=1)=\frac{1}{1+exp(-b_i-\Sigma_js_jw_{ji})}p(si​=1)=1+exp(−bi​−Σj​sj​wji​)1​)接受能量上升(模拟退火)2.训练时间长,3.结构复杂,4.也可能局部极小;5.功能强大
RBM(受限Boltzman机 p(v)符合玻尔兹曼分布,生成模型,区别:同层无连接,其他全连接,可见层1(输入v)、隐藏层1(h,给定可视层下,条件独立)(二部图) vi,hj,{0,1},以p取1(二值神经元) 联合组态能量函数E(v,h;θ)=−Σijwijvihj−Σibivi−Σjajhj,pθ(v,h)=1Z(θ)exp(−E),目标函数log(pθ(v))(极大似然)E(v,h;\theta)=-\Sigma_{ij}w_{ij}v_ih_j-\Sigma_{i}b_{i}v_i-\Sigma_{j}a_{j}h_j, p_\theta(v,h)=\frac{1}{Z(\theta)}exp(-E),目标函数log(p_\theta(v))(极大似然)E(v,h;θ)=−Σij​wij​vi​hj​−Σi​bi​vi​−Σj​aj​hj​,pθ​(v,h)=Z(θ)1​exp(−E),目标函数log(pθ​(v))(极大似然)
DBN 生成模型,多层,顶层无向图(RBM)(hn-1-hn),低层(v<-hn-1),去除上层,下层是个RBM (二值神经元) 从下到上逐层当做RBM训练 低层是单向的与RBM不一致,所以提出了DBM
DBM p(v)符合玻尔兹曼分布,生成模型,多层,全无向图 (二值神经元) 双向,每层需要考虑上下层神经元(多层)E(v,h1,h2;θ)=−vTW1h1−h1TW2h2;p(v)=Σh1,h21Zexp(−E)E(v,h^1,h^2;\theta)=-v^TW^1h^1-h^{1T}W^2h^2;p(v)=\Sigma_{h1,h2}\frac {1}{Z}exp(-E)E(v,h1,h2;θ)=−vTW1h1−h1TW2h2;p(v)=Σh1,h2​Z1​exp(−E) 低层是单向的与RBM不一致,所以提出了DBM
  • Hopfield网络

    • 以确定的方式,确定神经元输出是1/0:
    • 输入>0:1,输入<0:0
  • BM
    • 二值神经元:以不确定性的方式决定输出是1/0

      • sigmoid:p(si=1)=11+exp(−bi−Σjsjwji)p(s_i=1)=\frac{1}{1+exp(-b_i-\Sigma_js_jw_{ji})}p(si​=1)=1+exp(−bi​−Σj​sj​wji​)1​
    • 状态分布;PαPβ=exp(−(E(Sα)−E(Sβ))/T)\frac{P_\alpha}{P_\beta}=exp(-(E(S^\alpha)-E(S^\beta))/T)Pβ​Pα​​=exp(−(E(Sα)−E(Sβ))/T)
    • 状态:Pα=exp(−(E(Sα))/T){P_\alpha}=exp(-(E(S^\alpha))/T)Pα​=exp(−(E(Sα))/T)

  • RBM(生成模型)

    • 二部图,层内无连接,层间全连接
    • 能量函数:E(v,h;θ)=−Σijwijvihj−Σibivi−ΣjajhjE(v,h;\theta)=-\Sigma_{ij}w_{ij}v_ih_j-\Sigma_{i}b_{i}v_i-\Sigma_{j}a_{j}h_jE(v,h;θ)=−Σij​wij​vi​hj​−Σi​bi​vi​−Σj​aj​hj​
    • (v,h)联合分布(满足boltzman):
      • pθ(v,h)=1Z(θ)exp(−E)=1Z(θ)ΠijewijvihjΠiebiviΠjeajhj=exp(−E)Σv,hexp(−E)p_\theta(v,h)=\frac{1}{Z(\theta)}exp(-E)=\frac{1}{Z(\theta)}\Pi_{ij}e^{w_{ij}v_ih_j}\Pi_{i}e^{b_{i}v_i}\Pi_je^{a_{j}h_j} =\frac{exp(-E)}{\Sigma_{v,h}exp(-E)}pθ​(v,h)=Z(θ)1​exp(−E)=Z(θ)1​Πij​ewij​vi​hj​Πi​ebi​vi​Πj​eaj​hj​=Σv,h​exp(−E)exp(−E)​
      • Z(θ)=Σv,hexp(−E)Z(\theta)=\Sigma_{v,h}exp(-E)Z(θ)=Σv,h​exp(−E)
      • ==>可以得到其他分布
        • pθ(v,h)=exp(−E)Σv,hexp(−E)p_\theta(v,h)=\frac{exp(-E)}{\Sigma_{v,h}exp(-E)}pθ​(v,h)=Σv,h​exp(−E)exp(−E)​
        • pθ(v)=Σhexp(−E)Σv,hexp(−E)p_\theta(v)=\frac{\Sigma_{h}exp(-E)}{\Sigma_{v,h}exp(-E)}pθ​(v)=Σv,h​exp(−E)Σh​exp(−E)​
        • pθ(h)=Σvexp(−E)Σv,hexp(−E)p_\theta(h)=\frac{\Sigma_{v}exp(-E)}{\Sigma_{v,h}exp(-E)}pθ​(h)=Σv,h​exp(−E)Σv​exp(−E)​
        • pθ(h∣v)=exp(−E)Σhexp(−E)p_\theta(h|v)=\frac{exp(-E)}{\Sigma_{h}exp(-E)}pθ​(h∣v)=Σh​exp(−E)exp(−E)​
        • pθ(v∣h)=exp(−E)Σvexp(−E)p_\theta(v|h)=\frac{exp(-E)}{\Sigma_{v}exp(-E)}pθ​(v∣h)=Σv​exp(−E)exp(−E)​
    • 目标函数:log(pθ(v))log(p_\theta(v))log(pθ​(v))——极大似然
      • N个样本

        • maxΣi=1Nlog(pθ(v))max \Sigma_{i=1}^N log(p_\theta(v))maxΣi=1N​log(pθ​(v))
      • log(pθ(v))=logΣhexp(−E)−logΣv′,h′exp(−E)log(p_\theta(v))=log{\Sigma_{h}exp(-E)}-log{\Sigma_{v',h'}exp(-E)}log(pθ​(v))=logΣh​exp(−E)−logΣv′,h′​exp(−E)
      • 求导(梯度法、CD算法
        • ∂log(pθ(v))∂θ=Σh(exp(−E)−∂E∂θ)Σhexp(−E)−Σv′,h′(exp(−E)−∂E∂θ)Σv′,h′exp(−E)\frac{\partial {log(p_\theta(v))}}{\partial \theta}=\frac{\Sigma_{h}(exp(-E)\frac{- \partial E}{\partial \theta})}{\Sigma_{h}exp(-E)}-\frac{\Sigma_{v',h'}(exp(-E)\frac{- \partial E}{\partial \theta})}{\Sigma_{v',h'}exp(-E)}∂θ∂log(pθ​(v))​=Σh​exp(−E)Σh​(exp(−E)∂θ−∂E​)​−Σv′,h′​exp(−E)Σv′,h′​(exp(−E)∂θ−∂E​)​
        • =Σh(p(h∣v)−∂E∂θ)−Σv′,h′(p(v′,h′)−∂E∂θ)=\Sigma_h(p(h|v)\frac{- \partial E}{\partial \theta})-\Sigma_{v',h'}(p(v',h')\frac{- \partial E}{\partial \theta})=Σh​(p(h∣v)∂θ−∂E​)−Σv′,h′​(p(v′,h′)∂θ−∂E​)
        • =Ep(h∣v)(−∂E∂θ)−Ep(v′,h′)(−∂E∂θ)=E_{p(h|v)}(\frac{- \partial E}{\partial \theta})-E_{p(v',h')}(\frac{- \partial E}{\partial \theta})=Ep(h∣v)​(∂θ−∂E​)−Ep(v′,h′)​(∂θ−∂E​)(期望)
        • =正面-负面
        • 观测分布:Ep(h∣v)(−∂E∂θ)E_{p(h|v)}(\frac{- \partial E}{\partial \theta})Ep(h∣v)​(∂θ−∂E​):给定观测数据之后,隐变量对于可视层的在这个状态之下的一个期望获得的结果
        • 真实分布$E_{p(v’,h’)}(\frac{- \partial E}{\partial \theta}) $:整体的学习期望,在整个网络,所有变化之下的期望的求导
      • 对于具体的参数W,a,b
        • E=−vTWh−bTv−aThE=-v^TWh-b^Tv-a^ThE=−vTWh−bTv−aTh

          • p(v,h)=1zevTWhebTveaThp(v,h)=\frac{1}{z}e^{v^TWh}e^{b^Tv}e^{a^Th}p(v,h)=z1​evTWhebTveaTh
          • p(h∣v)=Πjp(hj∣v)=Πj=e(aj+Σiwijvi)hj1+e(aj+Σiwijvi)p(h|v)=\Pi_jp(h_j|v)=\Pi_j=\frac{e^{(a_j+\Sigma_iw_{ij} v_i)h_j}}{1+e^{(a_j+\Sigma_iw_{ij}v_i)}}p(h∣v)=Πj​p(hj​∣v)=Πj​=1+e(aj​+Σi​wij​vi​)e(aj​+Σi​wij​vi​)hj​​
          • p(v∣h)=Πjp(vi∣h)=Πi=e(bi+Σjwijhj)vi1+e(bi+Σjwijhj))p(v|h)=\Pi_jp(v_i|h)=\Pi_i=\frac{e^{(b_i+\Sigma_jw_{ij} h_j)v_i}}{1+e^{(b_i+\Sigma_jw_{ij} h_j))}}p(v∣h)=Πj​p(vi​∣h)=Πi​=1+e(bi​+Σj​wij​hj​))e(bi​+Σj​wij​hj​)vi​​
          • −∂E∂wij=−vihj\frac{- \partial E}{\partial w_{ij}}=-v_ih_j∂wij​−∂E​=−vi​hj​
          • −∂E∂bi=−vi\frac{- \partial E}{\partial b_{i}}=-v_i∂bi​−∂E​=−vi​
          • −∂E∂aj=−hj\frac{- \partial E}{\partial a_{j}}=-h_j∂aj​−∂E​=−hj​
        • ∂log(pθ(v))∂θ=Ep(h∣v)(−∂E∂θ)−Ep(v′,h′)(−∂E∂θ)\frac{\partial {log(p_\theta(v))}}{\partial \theta}=E_{p(h|v)}(\frac{- \partial E}{\partial \theta})-E_{p(v',h')}(\frac{- \partial E}{\partial \theta})∂θ∂log(pθ​(v))​=Ep(h∣v)​(∂θ−∂E​)−Ep(v′,h′)​(∂θ−∂E​)
          • ∂log(pθ(v))∂wij=Σhj(p(hj∣v)vihj)−Σv′(p(v′)Σhj′(p(hj′∣v′)vi′hj′))\frac{\partial {log(p_\theta(v))}}{\partial w_{ij}}=\Sigma_{h_j}(p(h_j|v)v_ih_j)-\Sigma_{v'}(p(v')\Sigma_{h'_j}(p(h'_j|v')v'_ih'_j))∂wij​∂log(pθ​(v))​=Σhj​​(p(hj​∣v)vi​hj​)−Σv′​(p(v′)Σhj′​​(p(hj′​∣v′)vi′​hj′​))

            • 进一步简化=p(hj=1∣v)vi−Σv′(p(v′)p(hj′=1∣v′)vi′))=p(h_j=1|v)v_i-\Sigma_{v'}(p(v')p(h_j'=1|v')v'_i))=p(hj​=1∣v)vi​−Σv′​(p(v′)p(hj′​=1∣v′)vi′​))
            • 取值0就没有了,hj=0了都
          • ∂log(pθ(v))∂bi=Σhj(p(hj∣v)vi)−Σv′(p(v′)Σhj′(p(hj′∣v′)vi′))\frac{\partial {log(p_\theta(v))}}{\partial b_{i}}=\Sigma_{h_j}(p(h_j|v)v_i)-\Sigma_{v'}(p(v')\Sigma_{h'_j}(p(h'_j|v')v'_i))∂bi​∂log(pθ​(v))​=Σhj​​(p(hj​∣v)vi​)−Σv′​(p(v′)Σhj′​​(p(hj′​∣v′)vi′​))
            • =vi−Σv′(p(v′)vi′);Σhjp(hj′∣v′)=1=v_i-\Sigma_{v'}(p(v')v'_i);\Sigma_{h_j}p(h_j'|v')=1=vi​−Σv′​(p(v′)vi′​);Σhj​​p(hj′​∣v′)=1
          • ∂log(pθ(v))∂aj=Σhj(p(hj∣v)hj)−Σv′(p(v′)Σhj′(p(hj′∣v′)hj′))\frac{\partial {log(p_\theta(v))}}{\partial a_{j}}=\Sigma_{h_j}(p(h_j|v)h_j)-\Sigma_{v'}(p(v')\Sigma_{h'_j}(p(h'_j|v')h'_j))∂aj​∂log(pθ​(v))​=Σhj​​(p(hj​∣v)hj​)−Σv′​(p(v′)Σhj′​​(p(hj′​∣v′)hj′​))
            • =p(hj=1∣v)−Σv′(p(v′)p(hj′=1∣v′)))=p(h_j=1|v)-\Sigma_{v'}(p(v')p(h_j'=1|v')))=p(hj​=1∣v)−Σv′​(p(v′)p(hj′​=1∣v′)))
        • 计算
          • v是已知的,第一项可以计算,但第二项不好计算
          • 计算第二项:采样:E(f(x))=Σxf(x)p(x)=1Lσxf(x)p(x)E(f(x))=\Sigma_xf(x)p(x)=\frac{1}{L}\sigma_{x~f(x)}p(x)E(f(x))=Σx​f(x)p(x)=L1​σx f(x)​p(x)
            • CD-K采样(与吉布斯采样存在差异

              • v0输入定
              • v0-p(h|v)->h0通过二值神经元计算
                • sigmoid:p(si=1)=11+exp(−bi−Σjsjwji)p(s_i=1)=\frac{1}{1+exp(-b_i-\Sigma_js_jw_{ji})}p(si​=1)=1+exp(−bi​−Σj​sj​wji​)1​
              • h0-p(v|h)->v1(采样)
              • CD-1就已经能够得到足够的精度了
                • $v={v_i},v^{(0)}=vn $
                • 初始化Δwij=0,Δai=0,Δbj=0\Delta w_{ij}=0,\Delta a_i=0,\Delta b_j=0Δwij​=0,Δai​=0,Δbj​=0
                • 迭代:
                  • 所有j,hj(0)p(hj∣v(0))h_j^{(0)}~p(h_j|v^{(0)})hj(0)​ p(hj​∣v(0))
                  • 所有i,vi(0)p(vi∣h(0))v_i^{(0)}~p(v_i|h^{(0)})vi(0)​ p(vi​∣h(0))
                  • 计算梯度取平均值(批处理,每个样本都叠加

国科大高级人工智能3-DNN(BM/RBM/DBN/DBM)相关推荐

  1. 国科大高级人工智能2020-2021年期末试题回顾

    国科大高级人工智能2020-2021年期末试题回顾 题型 选择题 简答题 应用题 附件 题型 题型没有变,仍然为选择题(20道,每道1分),简答题(3道,每道10分),综合应用题(3道,15,15,2 ...

  2. 国科大高级人工智能-总结

    文章目录 1.概论 2. 搜索 A\*最优性 三个传教士与野人 3.神经网络 RBM DBN DBM hopfield比较 结构及特性 逐层贪婪训练与CD BP GAN 4.逻辑 一个永远无法归结结束 ...

  3. 国科大高级人工智能6-GAN

    文章目录 生成式模型的基础:极大似然估计 GANs 最终版本 问题 非饱和博弈 DCGAN 不同类型的GAN conditional GAN 无监督条件GAN--cycle GAN 对抗学习 http ...

  4. 国科大高级人工智能+prml4-CNN

    文章目录 CNN 卷积 padding pooling BP 其他CNN ResNets残差网络-- 图像数据应用 CNN Hebb学习律(无监督 如果两个神经元在同一时刻被激发,则他们之间的联系应该 ...

  5. 国科大高级人工智能笔记1-搜索

    1.搜索问题 搜索问题--对原问题的建模 构成: 状态空间 包含环境中每一个细节 搜索状态:只保留行动需要的细节 后继函数 行动,消耗 初始状态和目标测试 解: 一个行动序列,将初始状态–>目标 ...

  6. 国科大高级人工智能12-博弈

    这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...

  7. 国科大高级人工智能10-强化学习(多臂赌博机、贝尔曼)

    文章目录 多臂赌博机Multi-armed bandit(无状态) 马尔科夫决策过程MDP(markov decision process 1.动态规划 蒙特卡罗方法--不知道环境完整模型情况下 2. ...

  8. 国科大高级人工智能9-模糊数学和遗传算法

    文章目录 1.模糊计算 笛卡尔积.关系 模糊集 连续的隶属度函数 运算 2.evolution 遗传算法 1.模糊计算 why模糊 取得精确数据不可能或很困难 没有必要获取精确数据 模糊性概念:对象从 ...

  9. 国科大高级人工智能8-归结原理和horn子句

    只有一条规则的推理 resolution(消解,归结) CNF(conjunction normal form合取范式 (A∨B)∧(B∨C)(A∨B)∧(B∨C)(A∨B)∧(B∨C) 任何逻辑式都 ...

最新文章

  1. Observable.OnSubscribe 的理解
  2. C#中搜索关键词高亮显示
  3. Codeforces Round #572 (Div. 2)(ABCD1D2E)
  4. Node.js 应用故障排查手册 —— 大纲与常规问题指标简介
  5. mvn 修改所有子项目pom版本
  6. js option keycode
  7. 如何清除BIOS密码
  8. cad工具箱详细讲解_AutoCAD学院派工具箱(XCAD)使用教程(图文解说)
  9. oracle 手动添加分区,Oracle 分区表怎么添加分区
  10. mantis Linux安装教程,CentOS Linux安装mantis
  11. Win7 C盘瘦身 微信文件夹太大WeChat Files
  12. Unhandled exception in al.exe(KERNELBASE.DLL):0xE06D7363:Microsoft C++Exception
  13. Python中的算数运算符
  14. 帝国cms怎么发布php,帝国cms如何投稿
  15. java的四种访问权限_Java四种访问权限
  16. IE浏览DWG的CAD插件
  17. java解析JT808协议
  18. 英语词组的日常积累(有点长,接近300个)
  19. JDK Collections.shuffle(List? list, Random rnd)源码分析
  20. 比亚迪秦Pro修改默认导航为高德地图

热门文章

  1. java excel 导入 加校验_POI实现excel各种验证和导入的思路总结
  2. xmlspy php,XMLSpy使用流程 - tnlzz31985的个人空间 - OSCHINA - 中文开源技术交流社区
  3. 每日一题(40)—— 字符串常量
  4. 【Pytorch神经网络实战案例】21 基于Cora数据集实现Multi_Sample Dropout图卷积网络模型的论文分类
  5. LeetCode 923. 三数之和的多种可能(双指针)
  6. LeetCode 1335. 工作计划的最低难度(DP)
  7. LeetCode 493. 翻转对(归并排序)
  8. python rsa 公钥解密_python使用rsa库做公钥解密(网上别处找不到)
  9. git如何选择性合并_小姐姐用 10 张动图,教会你 Git 命令使用
  10. 代写python代码一般多少钱_代写CO 353课程作业、代做Python程序设计作业、代写Python语言作业...