1.一种针对Z‑Wave智能设备识别的方法,其特征在于,具体包括以下步骤:构建Z‑Wave网络环境,采集Z‑Wave智能设备无线通信数据;
至少选取帧控制、帧长度、帧间隔、有效荷载作为样本特征值,并根据样本特征值构建特征矩阵;
使用字典特征提取和PCA降维对样本特征矩阵进行处理,得到基于数值的特征矩阵;
输入特征矩阵和设备标签,经过BP神经网络进行训练,得到对应参数学习率、连接权、阈值,并获取样本的实际输出值;
BP神经网络的输出层后连接有相似层,并在相似层计算测试样本实际输出值与设备标签的相似度;
根据已知设备的测试样本和未知设备的测试样本相似度,确定界值,并根据界值判断待识别的设备为已知设备还是未知设备;
其中,已知设备至少包括Z‑Wave智能网关、智能插座、报警器、人体红外传感器;若识别的设备为未知设备,则按照识别时间将未知设备编辑为未知设备1、未知设备2、…、未知设备n。
2.根据权利要求1所述的一种针对Z‑Wave智能设备识别的方法,其特征在于,构建特征矩阵的过程包括:
从采集的Z‑Wave数据包中选取帧控制、帧长度、有效荷载3个字段作为特征值;
从本地设备的心跳数据流中得到帧间隔;
对帧控制、帧长度、有效荷载以及帧间隔进行预处理;
将每一个数据包作为矩阵的列向量,每一行为数据包中的特征的特征值,至少包括帧控制、帧长度、有效荷载以及帧间隔,构建特征矩阵。
3.根据权利要求1所述的一种针对Z‑Wave智能设备识别的方法,其特征在于,使用心跳数据包数据流当次到达时间减去上一次的到达时间作为帧间隔。
4.根据权利要求1所述的一种针对Z‑Wave智能设备识别的方法,其特征在于,BP神经网络进行训练时,参数学习率、连接权、阈值的更新过程包括以下步骤:Δυih=ηehxi
Δωhj=ηgjbh
Δθj=‑ηgj
Δγh=‑ηeh
其中,Δυih为输入层第i个神经元与隐层第h和神经元之间的连接权重,Δωhj为隐层第h个神经元与输出层之间的连接权重,Δθj为输出层第j个神经元的阈值,Δγh为隐层第h个神经的阈值;η为学习率,eh为隐层输出值对权值的梯度,xi为第i个特征值,gj为输出层输出值对权值的梯度,bh为隐层输出值。
5.根据权利要求4所述的一种针对Z‑Wave智能设备识别的方法,其特征在于,隐层输出值对权值的梯度eh表示为:
其中,whj为隐层第h个神经元到第j个输出的权重;l为输出层神经元个数。
6.根据权利要求1所述的一种针对Z‑Wave智能设备识别的方法,其特征在于,样本的实际输出值表示为:
其中,y为实际输出值,f为激活函数,ωi为第i个神经元连接的权重,xi为第i个特征值;
n为输入层神经元个数,θ为阈值。
7.根据权利要求1所述的一种针对Z‑Wave智能设备识别的方法,其特征在于,计算测试样本实际输出值与设备标签的相似度包括:计算样本实际输出值与各个设备标签的误差,并将样本实际输出值与误差值最小的设备标签的比值作为该样本的相似度。
8.根据权利要求7所述的一种针对Z‑Wave智能设备识别的方法,其特征在于,当样本与设备标签的似度大于界值D时,则认为样本为该设备标签对应的智能设备,每对BP神经网络进行一次训练,则对界值进行一次更新,更新过程表示为:D=D+ΔD;
其中,ΔD为每次进行训练后界值的变化量。