基于卷积神经网络的多特征序列数据分类方法Matlab——附代码

文章介绍了如何使用Matlab的深度学习工具箱构建一维卷积神经网络(1DCNN)进行多输入特征的一维向量分类任务,特别是针对文本数据的分类。1DCNN利用局部连接性和权值共享减少计算复杂度,提高特征提取效率。网络架构包括单词嵌入、卷积层、池化层和全连接层,最终实现文本的准确分类。
部署运行你感兴趣的模型镜像

目录

摘要:

传统卷积神经网络:

一维卷积神经网络:

网络的架构定义情况:

网络运行结果:

本文Matlab代码分享: 


摘要:

本文要用到的卷积神经网络(ConvolutionalNeural Network,CNN),主要包含卷积技术以及深度神经网络。区别传统的机器学习,卷积神经网络将特征提取器与机器学习有机的结合了起来。卷积神经网络处理的数据形式,具有局部与整体的关系,并且由低层次特征组合可以形成高层次的特征,还能得到不同特征间的空间相关性。

本文基于Matlab平台与自带的深度学习工具箱(Deep Learing toolbox),构建了一维卷积神经网络,实现多输入特征的一维向量分类任务。(以使用卷积神经网络对文本数据进行分类为参考示例)。代码注释详细,几乎每一行都有说明。

网络的输入为:输入N个特征的一维序列

网络的输出为:输出n类分类标签

传统卷积神经网络:

CNN的基本结构与普通神经网络类似,即基础单元均为具有学习能力的权重和偏置的神经元。CNN独有的两大特性:第一个是局部连接性;第二个是权值共享性。一般在一组有实际意义的数据矩阵中,局部区域内元素的相关性更强,联系更为紧密,而相距较远的各元素间的相关性减弱,联系更为松散。在此基础上,CNN中的局部连接概念应运而生,即单个神经元仅需对数据矩阵的局部区域进行感知,提取数据矩阵的局部特征,然后,在网络的更高层对所有局部特征进行全连接,从而得到全局特征。权值共享性是指同一个数据矩阵中的不同区域共享同一个权值,以此提取数据矩阵中不同空间位置的同一特征。CNN的这两大特点使得网络减少了一定量的权值参数、降低了计算复杂度,同时还能够保证提取特征的准确率。

CNN通常有4个基本组成部分:输入层、卷积层、池化层、全连接层。一般模型结构如图,首先,输入层对输入的数据进行预处理;其次,多个交替连接的卷积层与池化层对输入数据进行特征提取和压缩尺寸之后通过全连接层输出。

一维卷积神经网络:

应用在图像问题上的CNN通常是二维卷积(因为图像有RGB三个通道),而语音问题上的CNN输入是一个矩阵平面,可以用一维卷积。本文就讲讲一维卷积是怎么处理的。所谓一维卷积是指卷积核只在一个方向上移动。具体到语音上,假设一段语音提取特征后是一个M行N列(M表示特征维度,N表示帧数)的矩阵平面,卷积核要在帧的方向上从小到大移动。

上图来自网络,侵删

网络的架构定义情况:

a.将输入大小指定为1,它对应于整数序列输入的通道维度。

b.使用维度为100的单词嵌入来嵌入输入。

c.对于n元分词长度2、3、4和5,创建包含卷积层、批量归一化层、ReLU层、丢弃层和最大池化层的层块。

d.对于每个模块,指定200个大小为1×N的卷积滤波器和一个全局最大池化层。

e.将输入层连接到每个块,并使用串联层串联各块的输出。

f.要对输出进行分类,请包括一个输出大小为K的全连接层、一个softmax层和一个分类层,其中K是类的数量。

网络运行结果:

分类准确率

本文Matlab代码分享: 

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.15

TensorFlow-v2.15

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值