MATLAB用深度学习长短期记忆 (LSTM) 神经网络对智能手机传感器时间序列数据进行分类

简介: MATLAB用深度学习长短期记忆 (LSTM) 神经网络对智能手机传感器时间序列数据进行分类

原文链接:http://tecdat.cn/?p=26318

此示例说明如何使用长短期记忆 (LSTM) 网络对序列数据的每个时间步长进行分类。


要训练深度神经网络对序列数据的每个时间步进行分类,可以使用 _序列对序列 LSTM 网络_。序列_对_序列 LSTM 网络使您能够对序列数据的每个单独时间步进行不同的预测。

此示例使用从佩戴在身上的智能手机获取的传感器数据。该示例训练 LSTM 网络,以在给定时间序列数据的情况下识别佩戴者的活动,这些数据表示三个不同方向的加速度计读数。训练数据包含七个时间序列数据。每个序列具有三个特征并且长度不同。数据集包含六个训练观察和一个测试观察。


加载序列数据

加载人类活动识别数据。该数据包含从佩戴在身上的智能手机获得的七个时间序列的传感器数据。每个序列具有三个特征并且长度不同。这三个特征对应于三个不同方向的加速度计读数。

XTrain

image.png

在图中可视化一个训练序列。绘制第一个训练序列的第一个特征,并根据相应的活动为绘图着色。

figure
for j = 1:numel
    label = classes;
    idx = find
    hold on
    plot
end

image.png


定义 LSTM 网络架构

定义 LSTM 网络架构。将输入指定为大小为 3 的序列(输入数据的特征数)。指定一个具有 200 个隐藏单元的 LSTM 层,并输出完整的序列。最后,通过包括一个大小为 5 的全连接层,然后是一个 softmax 层和一个分类层来指定五个类。

layers = \[ ...
    seuenceutLaer
    lsmLyer
    fulyCnectdyer
    sotmLyer
    clssfcainLyr\];

指定训练选项。将求解器设置为 'adam'。训练 60 个 epoch。

使用指定的训练选项训练 LSTM 网络 trainNetwork。每个 mini-batch 包含整个训练集,因此每个 epoch 更新一次图。序列很长,因此处理每个小批量和更新绘图可能需要一些时间。

image.png

测试 LSTM 网络

加载测试数据并在每个时间步进行分类。

加载测试数据。 XTest 包含一个维度为 3 的单个序列。  YTest is 包含与每个时间步相对应的分类标签序列。

figure
plot
xlabel
legend
title

image.png

使用对测试数据进行分类 。

YPrd = clssif;

或者,您可以使用 一次进行一个时间步长的预测 。通常,与一次一个时间步进行预测相比,对完整序列进行预测会更快。

计算预测的准确性。

ac = sum(YPrd == YTst{1})./nul(YTs{1})

image.png

使用绘图将预测与测试数据进行比较。

plot
hold on
plot
hold off

image.png

相关文章
|
8月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
587 0
|
7月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
8月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
527 2
|
8月前
|
机器学习/深度学习 并行计算 算法
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
194 8
|
7月前
|
机器学习/深度学习 数据采集 存储
概率神经网络的分类预测--基于PNN的变压器故障诊断(Matlab代码实现)
概率神经网络的分类预测--基于PNN的变压器故障诊断(Matlab代码实现)
1038 0
|
8月前
|
机器学习/深度学习 传感器 分布式计算
基于模糊RBF神经网络轨迹跟踪研究(Matlab代码实现)
基于模糊RBF神经网络轨迹跟踪研究(Matlab代码实现)
307 1
|
8月前
|
机器学习/深度学习 移动开发 编解码
基于人工神经网络的类噪声环境声音声学识别(Matlab代码实现)
基于人工神经网络的类噪声环境声音声学识别(Matlab代码实现)
206 1
|
8月前
|
机器学习/深度学习 编解码 并行计算
【创新未发表!】基于BKA算法优化-BP、HO算法优化-BP、CP算法优化-BP、GOOSE算法优化-BP、NRBO算法优化-BP神经网络回归预测比较研究(Matlab代码)
【创新未发表!】基于BKA算法优化-BP、HO算法优化-BP、CP算法优化-BP、GOOSE算法优化-BP、NRBO算法优化-BP神经网络回归预测比较研究(Matlab代码)
495 0
|
8月前
|
机器学习/深度学习 算法 PyTorch
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
360 0
|
8月前
|
机器学习/深度学习 缓存 算法
2025年华为杯A题|通用神经网络处理器下的核内调度问题研究生数学建模|思路、代码、论文|持续更新中....
2025年华为杯A题|通用神经网络处理器下的核内调度问题研究生数学建模|思路、代码、论文|持续更新中....
647 1

热门文章

最新文章