Keras模块简述
来源:互联网 发布:天龙八部穿刺伤害数据 编辑:程序博客网 时间:2024/06/05 09:52
17年8月份第3篇日志;
最近忙里偷闲开始进行一些数据挖掘的探索,不过我还有两年的充电时间,如何高效的利用这两年的时间,提高自己的技能,可以说成为了我实践的中重点。
Keras主要包括14个模块,本文主要对Models、layersInitializations、Activations、Objectives、Optimizers、Preprocessing、metrics共计8个模块分别展开介绍,并通过一个简单的Bp神经网络说明各个模块的作用。
1、Model
包:keras.models
这是Keras中最主要的一个模块,用于对各个组件进行组装 :
from keras.models import Sequentialmodel=Sequential() #初始化模型model.add(...) #可使用add方法组装组件
2、layer
包:keras.layers
该模块主要用于生成神经网络层,包含多种类型,如Core layers、Convolutional layers等
eg:
from keras.layers import Dense #Dense表示Bp层model.add(Dense(input_dim=3,output_dim=5)) #加入隐含层
3、 Initializations
包:keras.initializations
该模块主要负责对模型参数(权重)进行初始化,初始化方法包括:uniform、lecun_uniform、normal、orthogonal、zero、glorot_normal、he_normal等
详细说明:http://keras.io/initializations/
eg:
model.add(Dense(input_dim=3,output_dim=5,init='uniform')) #加入带初始化(uniform)
4、Activations
包:keras.activations、keras.layers.advanced_activations(新激活函数)
该模块主要负责为神经层附加激活函数,如linear、sigmoid、hard_sigmoid、tanh、softplus、relu、 softplus以及LeakyReLU等比较新的激活函数
详细说明:http://keras.io/activations/
eg:
model.add(Dense(input_dim=3,output_dim=5,activation='sigmoid')) 加入带激活函数(sigmoid)的隐含层
或者
model.add(Dense(input_dim=3,output_dim=5)) model.add(Activation('sigmoid'))
5、Objectives
包:keras.objectives
该模块主要负责为神经网络附加损失函数,即目标函数。如mean_squared_error,mean_absolute_error ,squared_hinge,hinge,binary_crossentropy,categorical_crossentropy等,其中binary_crossentropy,categorical_crossentropy是指logloss
注:目标函数的设定是在模型编译阶段
详细说明:http://keras.io/objectives/
eg:
model.compile(loss='binary_crossentropy', optimizer='sgd') #loss是指目标函数
6、Optimizers
包:keras.optimizers
该模块主要负责设定神经网络的优化方法,如sgd。
注:优化函数的设定是在模型编译阶段
详细说明:http://keras.io/optimizers/
eg:
model.compile(loss='binary_crossentropy', optimizer='sgd') #optimizer是指优化方法
7、metrics
包:keras.metrics
与sklearn中metrics包基本相同,主要包含一些如binary_accuracy、mae、mse等的评价方法
eg:
predict=model.predict_classes(test_x) #输出预测结果keras.metrics.binary_accuracy(test_y,predict) #计算预测精度
8、简单的bp神经网络的搭建
from keras.models import Sequential #导入模型from keras.layers import Dense #导入bp层train_x,train_y #训练集test_x,text_y #测试集model=Sequential() #初始化模型model.add(Dense(input_dim=3,output_dim=3,activation='sigmoid',init='uniform'))) #添加一个隐含层,注:只是第一个隐含层需指定input_dimmodel.add(Dense(1,activation='sigmoid')) #添加输出层model.compile(loss='binary_crossentropy', optimizer='sgd') # 编译,指定目标函数与优化方法model.fit(train_x,train_y ) # 模型训练model.evaluate(test_x,text_y ) #模型测试
- Keras模块简述
- Ubuntu安装keras模块
- keras的主要模块介绍
- keras的主要模块介绍
- Keras里的模块介绍
- Drupal常用模块简述
- Drupal常用模块简述
- Spring框架模块简述
- keras学习笔记2——Keras模块概述
- Keras中神经网络可视化模块keras.utils.visualize_util 的安装
- keras学习笔记(1)-Keras的模块架构
- elasticsearch之索引模块简述
- keras
- keras
- keras
- Keras
- keras
- Keras
- Windows 下Hadoop的环境变量配置
- WebRTC中丢包重传机制的实现
- MySQL innodb waiting for table level lock 问题解决
- POJ1363
- Golang Protobuf
- Keras模块简述
- LintCode-字符串置换
- 常见的出现login incorrect有下面几个原因: 1)大小写键盘问题,Ubuntu不认小键盘,所以一定要关掉NumLock,使用字母键盘上面的数字按键进行输入。
- c# 遍历字典
- iOS中socket通信---基于CocoaAsyncSocket实现
- ubuntu安装mysql 时未提示输入密码
- define 与 const 的区别(学习_转录)
- Intellij IDEA 快捷键整理
- 松果