Python神经网络

本文介绍了Keras中的关键模块,如Optimizers、Objectives、Activations、Initializations和Layers,并提供了模型编译、训练和评估的详细说明。通过实例展示了如何创建并训练一个神经网络模型,强调了数据预处理和模型性能评估的重要性。
摘要由CSDN通过智能技术生成

Keras里的模块介绍

下面的这个网址讲的很好,可以用来系统学习。
Keras中文文档

Optimizers
Optimizers包含了一些优化的方法,比如最基本的随机梯度下降SGD,另外还有Adagrad、Adadelta、RMSprop、Adam

Objectives
这是目标函数模块,定义了用什么形式来误差优化,keras提供了mean_squared_error/mse :平均方差
mean_absolute_error /mae :绝对误差
Mean absolute percentage error(MAPE) 平均绝对比例误差
Mean Squared Logarithmic Error(msle) 对数误差
squared_hinge,
hinge,
binary_crossentropy,
categorical_crossentropy

Activations
这是激活函数模块,keras提供了linear、sigmoid、hard_sigmoid、tanh、softplus、relu、 softplus,另外softmax也放在Activations模块里(我觉得放在layers模块里更合理些)。此外,像LeakyReLU和 PReLU这种比较新的激活函数,keras在keras.layers.advanced_activations模块里提供。

Initializations
这是参数初始化模块,在添加layer的时候调用init进行初始化。keras提供了uniform、lecun_uniform、normal、orthogonal、zero、glorot_normal、he_normal这几种。

layers
layers模块包含了core、convolutional、recurrent、advanced_activations、normalization、embeddings这几种layer。

其中core里面包含了flatten(CNN的全连接层之前需要把二维特征图flatten成为一维的)、reshape(CNN输入时将一维的向量弄成二维的)、dense(就是隐藏层,dense是稠密的意思),还有其他的就不介绍了。convolutional层基本就是Theano的 Convolution2D的封装。

Preprocessing
这是预处理模块,包括序列数据的处理,文本数据的处理,图像数据的处理。重点看一下图像数据的处理,keras提供了 ImageDataGenerator函数,实现data augmentation,数据集扩增,对图像做一些弹性变换,比如水平翻转,垂直翻转,旋转等。

Models
这是最主要的模块,模型。上面定义了各种基本组件,model是将它们组合起来,下面通过一个实例来说明。

compile(optimizer, loss, class_mode=”categorical”):
参数:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值