做网站推广对电脑有什么要求,常见的网络推广方法有哪些,wordpress 爱奇艺插件,石家庄网页设计机构序列模型(Sequence Model) 基于文本内容及其前后信息进行预测 基于目标不同时刻状态进行预测 基于数据历史信息进行预测 序列模型:输入或者输出中包含有序列数据的模型 突出数据的前后序列关系 两大特点: 输入(输出)元素之间是具有顺序关系。不同的顺序,得到的结果应…序列模型(Sequence Model) 基于文本内容及其前后信息进行预测 基于目标不同时刻状态进行预测 基于数据历史信息进行预测 序列模型:输入或者输出中包含有序列数据的模型 突出数据的前后序列关系 两大特点:
输入(输出)元素之间是具有顺序关系。不同的顺序,得到的结果应该是不同的,比如“不吃饭”和“吃饭不”这两个短语意思是不同的输入输出不定长。比如文章生成、聊天机器人循环神经网络(RNN) 前部序列的信息经处理后,作为输入信息传递到后部序列 任务: 自动寻找语句中的人名: 词汇数值化:建立一个词汇-数值一一对应的字典,然后把输入词汇转化数值矩阵 字典生成的另外一种方式
不同类型的RNN模型
RNN常见结构 多输入对多输出、维度相同RNN结构 应用:特定信息识别 应用:情感识别 举例:I feel happy watching the movie 判断:positive 应用:序列数据生成器 举例:文章生成、音乐生成 应用:语言翻译
普通RNN结构缺陷
前部序列信息在传递到后部的同时,信息权重下降,导致重要信息丢失求解过程中梯度消失需要提高前部特定信息的决策权重 长短期记忆网络(LSTM)
忘记门:选择性丢弃a与x中不重要的信息更新门:确定给记忆细胞添加哪些信息输出门:筛选需要输出的信息在网络结构很深(很多层)的情况下,也能保留重要信息解决了普通RNN求解过程中的梯度消失问题双向循环神经网络(BRNN) 做判断时,把后部序列信息也考虑 深层循环神经网络(DRNN) 解决更复杂的序列任务,可以把单层RNN叠起来或者在输出前和普通mlp结构结合使用
实战准备
实战一:RNN实现股价预测
提取序列数据:
def extract_data(data,slide):x=[]y=[]for i in range(len(data)-slide):x.append([a for a in data[i:i+slide]])y.append(data[i+slide])x=np.array(x)x=x.reshape(x.shape[0],x.shape[1],1)return x,y建立普通RNN模型:
from keras.models import Sequential
from keras.layers import Dense,SimpleRNN
model = Sequential()
#增加一个RNN层
model.add(SimpleRNN(units=5,input_shape=(X.shape[1],X.shape[2]),activation='relu'))
#增加输出层
model.add(Dense(units=1,activation='linear'))
model.compile(optimizer='adam',loss='mean_squared_error')实战二:LSTM自动生成文本
文本加载:
rew_data = open('flare').read()
# 移除换行字符'\n'
data = rew_data.replace('\n','').replace('\r','')字符字典建立:
#字符去重
letters = list(set(data))
#建立数字到字符的索引字典
int_to_char = {a:b for a,b in enumerate(letters)}
#建立字符到数字的索引字典
char_to_int = {b:a for a,b