Tensorflow 循环神经网络-时间序列表示

Tensorflow 循环神经网络-时间序列表示_第1张图片

回顾一下卷积神经网络,之前的CNN是由交替的convolution卷积层和池化层组成的,最后输出到数个全连接层和最终的对应激活函数层。

那么接下来从几个实例部分来了解一下循环神经网络。首先是时间序列的信号数据:

Tensorflow 循环神经网络-时间序列表示_第2张图片

Tensorflow 循环神经网络-时间序列表示_第3张图片

这里以一句话为例,多个单词组成的句子,其每个元素单词是依照一定顺序排列的,那么这些单词也依照其顺序依次作为一个输入xt输入到循环神经网络中,那么此时对应t个单词的句子会有t个对应的w和b。

Tensorflow 循环神经网络-时间序列表示_第4张图片

这里定义一下输入的数据形式是[b,seq_len,feature_len], b=batch_size句子的个数,seq_len每个句子的长度,feature_len每个单词用多少维度来表示,如果是以前面的时间序列信号为例,因为时序信号是一维数据,那么这里我们的feature_len = 1如下图所示,其对应含义是每次采样的元素的维数,很明显时序信号是一维的也就是一个点。

Tensorflow 循环神经网络-时间序列表示_第5张图片

Tensorflow 循环神经网络-时间序列表示_第6张图片

Tensorflow 循环神经网络-时间序列表示_第7张图片

下面这张图展示了如何用上述的方法来表示一个单词,这里引入我们常用的one-hot方法

Tensorflow 循环神经网络-时间序列表示_第8张图片

构建的词向量如下所示

Tensorflow 循环神经网络-时间序列表示_第9张图片

这里对每个词进行embedding操作也就是将其映射为一个二维的词向量,这里设置的word_vec为2

Tensorflow 循环神经网络-时间序列表示_第10张图片

Tensorflow 循环神经网络-时间序列表示_第11张图片

关于embedding 层对应的代码实现如下

Tensorflow 循环神经网络-时间序列表示_第12张图片

Tensorflow 循环神经网络-时间序列表示_第13张图片

如此操作完之后,那么我们也可以将图像,文本或者是时序信号进行时序表示了,这是输入循环神经网络的第一步

 

 

 

 

 

 

 

你可能感兴趣的:(机器学习,Python,深度学习,python,神经网络,算法,机器学习)