IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 机器学习-LSTM中的几个参数理解 -> 正文阅读

[人工智能]机器学习-LSTM中的几个参数理解

背景介绍

时间序列的处理使用RNN更为有效。但RNN中的一些参数理解起来与CNN差别很大,这篇文章主要梳理一下RNN中LSTM架构的几个关键参数以及如何理解这些参数。

以pytorch为例,我们首先看一下LSTM网络的构建过程

class RNN(nn.Module):
    def __init__(self):
        super(RNN, self).__init__()

        self.rnn = nn.LSTM(
            input_size=1,  
            hidden_size=64, 
            num_layers=1,  
            batch_first=True, 
        )
        self.out = nn.Linear(64, 2) 

    def forward(self, x):
        r_out, (h_n, h_c) = self.rnn(x, None) 
        out = self.out(h_n[0])
        return out

我们使用一个比较简单理解的例子来解释一下这几个主要参数的含义,比如我们用30天的买东西的数据来预测第31天的,每天采集一组数据,这组数据可以表示为

day1 : {面包:5个,泡面3个,火腿肠2个,卤蛋2个,可乐2个}

day2 : {面包:3个,泡面1个,火腿肠2个,卤蛋1个,可乐1个}

以此类推

这里我们可以看到,我们一共有30天的数据,每天的数据包含5个种类?。

input_size

特征的长度,在我们的例子中,就是每一天的数据中包含几个维度,这里就是5。如果是做自然语言处理,那embedding之后的size就是这个input_size。通常数据维度越多可能会使预测更准,但是会带来维度灾难的问题,维度达到某个程度以后,不但性能不一定会提升,还会打来巨大的计算消耗,这里需要使用者自己去权衡。

hidden_size

这个是隐藏层的参数,通常决定了网络的复杂程度,这是一个魔调的参数,比如你用多层感知机,里边有多少个神经元,也是并没有一个最优的值,通常用64,但是不绝对,需要在实际任务的执行中再用。

num_layers

使用几层LSTM

batch_first

这个参数与最终输入网络的格式相关,正常情况下,我们构建好LSTM网络后,输入的X的格式为

X = [SEQ_LEN, BS, input_size]

?这里的SEQ_LEN指的是数据的长度,在这里就是30。BS就是batch_size,当batch_first参数为true以后,输入X的形式就变成了

X = [BS, SEQ_LEN, input_size]

这个东西在训练过程中不要配置错误。

output和h_n的关系

output是每个时间步的输出,h_n 是最后一个时间步的输出,即是 h_n = output[:, -1, :],通常使用这两种都可以,感兴趣的读者可以自己写段代码比较一下。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-12-25 11:10:19  更:2022-12-25 11:11:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 22:22:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码