• 归来的第一天


    侃侃而谈

    离开博园已经许久了,最开始使用博园是本科时候,大学班主任给我们上C++课程时候开启的,那时候还觉得很麻烦,没事写什么博客啊,无聊。
    今年刚刚本科毕业,从福州大学毕业了,现在是华南理工计算机系的一名研究生。从去年的3月份开始准备考研,到12月月底的初试,再到2月份出成绩,然后因为疫情,复试一直拖着拖到了5月份。时间好快,现在已经是2020/9/24, 19:43了。去年一年不负努力,初试第四,复试之后,综合排名第七进入了华南理工大学计算机专业。现在已经开学的第三个礼拜了,也是心血来潮觉得应该写点东西,也不是心血来潮,因为感觉应该记录一下自己的生活、困难和解决办法。


    谈谈遇到的困难

    研究生入学开始,就开启了DL/ML指旅了,最近除了上课都在学习pytorch的模型怎么使用。因为暑假的时候,已经看了吴恩达的ML/DL系列的视频及笔记、西瓜书,但是西瓜书的公式推导看的头疼,实在是只能看看文字的层面。之后还看了深度学习四大名著中的两本:1. Python深度学习(Keras+)2018.08。2. Hands on Machine Learning with Scikit Learn and TensorFlow - 中文版。觉得自己理论知识应该是有一点储备了,加上暑假的时候做了近视激光手术手术,也只看书,没有敲代码,现在在补上自己的代码缺失了。这几天学pytorch框架,学得有点一言难尽,也有点快乐吧。(代码弱鸡、在线哭泣

    有个问题从昨天到今天一直在困扰我,总算在今天解决了


    问题就是:LSTM的参数个数怎么算?

    百度的时候,大多都是一个公式:输入特征m,隐藏层特征是n,有k层,那答案就是4((m+n)m+m)*k,但是我用pytorch组建的一个简单模型,用这个公式算出来的答案是错误的。
    LSTM的模型如下:

    self.lstm = nn.LSTM(input_size=3, hidden_size=3, num_layers=5, batch_first=True)
    

    按照上面的公式的话,我的模型m=3,n=3,k=5。算出来答案应该是4((3+3)3+3)*5=420,但是查看模型的时候显示的是480,那是哪里不对呢?

    我从昨天看各种CSDN博客都没有解决我的问题。最后是在官方API里找到了答案。首先看官网文档的LSTM公式

    可以看出,pytorch的LSTM模型,每个公式里面的偏置值是两个不是一个,所以正确的算法是4((3+3)3+3+3)*5=480,这个时候答案就对了。


    片尾

    其实这个问题困扰了两天了,昨天睡觉前都还在想是为什么,然后怕以后忘记了吧,想着择日不如撞日,从今天再次开启我的博客园,以后做到每周都写两三篇,做做总结,做做计划,加油!

  • 相关阅读:
    Docker实用技巧之更改软件包源提升构建速度
    Jenkins 集群搭建
    Jenkins 无法捕获构建脚本错误问题
    CentOS 7 安装 Jenkins
    CentOS 7 安装 JAVA环境(JDK 1.8)
    CentOS 7 源码编译安装 Nginx
    CentOS 7 源码编译安装 Redis
    CentOS 7 源码编译安装 NodeJS
    Chrome 谷歌浏览器清除HTTPS证书缓存
    IdentityServer4实战
  • 原文地址:https://www.cnblogs.com/nanjibin/p/13726353.html
Copyright © 2020-2023  润新知