赞
踩
本文仅对双向长短时记忆网络和注意力机制结合的python程序进行解释说明 (以心电图数据的分类识别为例,即输入为一维向量),并不解释其数学原理。
// 导入需要用到的库 import keras.backend as K from keras.layers import Multiply, Dropout, Bidirectional,LSTM from keras.layers.core import * from keras.models import * import matplotlib.pyplot as plt import pandas as pd import numpy as np import h5py as hp import math from keras import optimizers from sklearn.metrics import confusion_matrix import scipy.io as scio // 定义数据加载,这里数据是 .mat格式,有的版本需要直接用loadmat def load_mat(path_data,name_data,dtype='float32'): data=hp.File(path_data) arrays_d={ } for k,v in data.items(): arrays_d[k]=np.array(v) dataArr=np.array(arrays_d[name_data],dtype=dtype) return dataArr // 定义注意力模型 def attention_3d_block(inputs): # inputs.shape = (batch_size, time_steps, input_dim) input_dim = int(inputs.shape[2]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。