zoukankan      html  css  js  c++  java
  • CV 第十课 RNN 上

    http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture10.pdf

    1. 分类

      one - many: one 可能是Image,输出的many可能是sequence of words

      many - one: 可以是情感分析 sequence of words -> sentiment  ; frames of a video -> actions  识别video中的动作

      many to many : 机器翻译 seq of words -> seq of words  ;  Video classification on frame level

    2. RNN也能处理这种情况: fixed input size and fixed output size

      

    3. RNN 的更新: 每一步更新hidden state

      1) 每一步使用的函数 fW,权重W 是相同的

      

        

     4.  Vanilla

      1) 计算图如下 :

        一般的 h0 = 0,每一步将 ht-1 x带入 fW    ht = tanh( Whh ht-1 + Whx Xt)

        其中,在一次RNN运行中,W都是相同的

      2) W的更新

        运行完一次后,进行backpropagation,利用梯度对W进行更新

      3) loss

        运行单次RNN时,我们会得到 t 次 y,每一步都会得到一个loss,like softmax loss ,最后将这些Loss加在一起得到 L

        然后Loss在每一步都计算 local gradient 

        loss.backward()

     

     

     5. 翻译

      1) 可以当时 one to many + many to one 

      2) 将一连串的input encode 成单个 vector    many to one

      3)   单个输入,输出 output sequence 

    6. language modelling 

      1) 例如characters-level 的model ,预测下一个输入的character

       输入: one-hot的编码的h

       预测输出: e (2.2)

       实际最大:  o (4.4)

         措施:  这个时候应该用 softmax loss 来度量我们对预测结果的不满意程度

       2) 

      test time ,选取输出时,可以选取softmax中第一大或者第二大的值。

      在输入为 'h' 向量这里,我们选择softmax中值第二大的作为输出。 因为有时单词都有相同的前缀,图片也是。选取第二大的输出,可以产生大量不同的合理输出序列。

      

      3) 梯度更新的问题:

      

      问题 : 在做一些大样本的模型,如wikipedia的单词时,forward所有的单词计算loss,backward所有的单词计算梯度,才能前进一个learning rate,这样做太缓慢了,模型也不会收敛。

      

    4

      4) 梯度更新的方法:

    7. 模型结果~ 

      用该模型读取一些文本,之后的输出效果非常好,比如莎士比亚形的文章,数学教科书,甚至还有code

      https://gist.github.com/karpathy/d4dee 566867f8291f086

      

  • 相关阅读:
    使用select2插件并添加拼音首字母检索
    sql id 或使用nolock
    .net 开源组件
    EF 创建数据库的策略 codefist加快效率!【not oringin!】
    个人拾遗!数组的拷贝等
    编程拾遗:集合类型的函数,返回值,如果没有,就返回默认集合new,或者 default(T)好一些。
    C# datatable to list
    npoi导出excel 导出List<T>
    display:inline、block、inline-block的区别 摘】
    ie下,jquery为动态添加的节点添加事件,用live
  • 原文地址:https://www.cnblogs.com/ChevisZhang/p/12992649.html
Copyright © 2011-2022 走看看