深学实例

本文介绍了如何使用Keras构建神经网络,包括回归、RNN回归、分类和CNN分类。通过示例代码展示了如何使用Sequential模型、LSTM、Dense和TimeDistributed等层,以及训练和评估模型的过程。此外,还提供了详细的教程链接和超参数解释。
摘要由CSDN通过智能技术生成

Keras 下搭建 CNN 和RNN
Keras 是一个兼容 Theano 和 Tensorflow 的神经网络高级包, 用它来组件一个神经网络更加快速, 几条语句就搞定了. 而且广泛的兼容性能使 在 Windows 和 MacOS 或者 Linux 上运行无阻碍。
对比一下用 Keras 搭建下面几个常用神经网络:
回归,RNN回归,分类,CNN分类, RNN分类, 自编码分类
它们的步骤差不多是一样的:
[导入模块并创建数据],[建立模型],[定义优化器],[激活模型],[训练模型],[检验模型],[可视化结果]
除了建立模型其它的步骤都大同小异。
模型代码网址:
https://github.com/MorvanZhou/tutorials/tree/master/kerasTUT
超详细学习视频网址:
https://morvanzhou.github.io/tutorials/machine-learning/keras/

  1. 回归
    对一组数据进行拟合,也就是寻求一条回归直线,如下图所示:

代码如下:

build a neural network from

the 1st layer to the last layer
model = Sequential() model.add(Dense(output_dim=1, input_dim=1))
代码剖析如下:
(1)用 Sequential 建立 model 
(2)用 model.add 添加神经层,添加的是 Dense 全连接神经层。
参数有两个,一个是输入数据和输出数据的维度,本代码的例子中 x 和 y 是一维的。如果需要添加下一个神经层的时候,不用再定义输入的纬度,因为它默认就把前一层的输出作为当前层的输入。在这个例子里,只需要一层就够了。
2. RNN回归
用 sin 函数预测 cos 数据,就是cos 数据可以用正弦函数来进行拟合。如下图所示:

会用到 LSTM 这个神经网络。
代码如下:
model = Sequential()

build a LSTM RNN

model.add(LSTM(    
batch_input_shape=(BATCH_SIZE, TIME_STEPS, INPUT_SIZE),

Or: input_dim=INPUT_SIZE, input_length=TIME_STEPS,    output_dim=CELL_SIZE,    return_sequences=True, # True: output at all steps. False: output as last step.    stateful=True,

True

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值