博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
深度学习框架Keras
阅读量:5292 次
发布时间:2019-06-14

本文共 1734 字,大约阅读时间需要 5 分钟。

Keras

&nbsp 用于构建和训练深度学习模型的高级API。 它用于快速原型设计,高级研究和生产。

优势分析

&nbsp 用户友好---易于操作
&nbsp 模块化和可组合
&nbsp 易于扩展---编写自定义构建块以表达研究的新想法。

使用步骤

1.导入模块

&nbsp import tensorflow as tf
&nbsp from tensorflow import keras
&nbsp keras在TensorFlow 里的实现。这是一个高级API,用于构建和训练模型,同时兼容 TensorFlow 的绝大部分功能。这使得 TensorFlow 更容易使用,且保持 TensorFlow 的灵活性和性能。
&nbsp 保存模型的权重时,默认为 checkpoint 格式。 通过save_format ='h5'使用HDF5。

2.构建模型

(1)keras.Sequential()

&nbsp 通过组装图层来构建模型。
&nbsp model = keras.Sequential()
&nbsp #嵌入层是把正整数(索引)转换为固定大小的稠密向量
&nbsp model.add(keras.layers.Embedding(10000, 16))
&nbsp # 加入平均池化层。经过池化后,(N, 70, 16) -> (N, 16)
&nbsp model.add(keras.layers.GlobalAveragePooling1D())
&nbsp # 加入全连接层。16为输出数量(神经元数量)。
&nbsp model.add(keras.layers.Dense(16, activation=tf.nn.relu))
&nbsp # 加入全连接层。1为输出数量(神经元数量)。
&nbsp model.add(keras.layers.Dense(1, activation=tf.nn.sigmoid))

(2)model.compile()

&nbsp # 编译模型,对模型训练进行相关的配置。
&nbsp model.compile(optimizer=tf.train.AdamOptimizer(), loss='binary_crossentropy', metrics=['accuracy'])

&nbsp 三个重要参数:

&nbsp optimizer:训练过程的优化方法。此参数通过 tf.train 模块的优化方法的实例来指定,比如:AdamOptimizer, RMSPropOptimizer, GradientDescentOptimizer。
&nbsp loss:训练过程中使用的损失函数(通过最小化损失函数来训练模型)。 常见的选择包括:均方误差(mse),categorical_crossentropy和binary_crossentropy。 损失函数由名称或通过从tf.keras.losses模块传递可调用对象来指定。
&nbsp metrics:训练过程中,监测的指标。 指定方法:名称 或 可调用对象 from the tf.keras.metrics 模块。

(3)model.fit()

&nbsp # 进行模型训练。
&nbsp # epochs 训练的轮数,一个完整的训练集为一轮。
&nbsp # batch_size:批次的数量。
&nbsp # validation_data:指定验证集,模型在训练时,就可以使用该验证集进行验证。
&nbsp # verbose:指定训练集的信息显示。
&nbsp # fit 方法返回一个对象。该对象会保存每轮(epoch)训练后的正确率与损失值。
&nbsp history = model.fit(X_train, y_train, epochs=100, batch_size=512,validation_data=(X_test, y_test), verbose=1)

&nbsp 训练结果展示:

1621238-20190510155435505-1365806886.png

转载于:https://www.cnblogs.com/wisteria68/p/10844422.html

你可能感兴趣的文章
python tkinter GUI绘制,以及点击更新显示图片
查看>>
Spark基础脚本入门实践3:Pair RDD开发
查看>>
HDU4405--Aeroplane chess(概率dp)
查看>>
CS0103: The name ‘Scripts’ does not exist in the current context解决方法
查看>>
20130330java基础学习笔记-语句_for循环嵌套练习2
查看>>
Spring面试题
查看>>
窥视SP2010--第一章节--SP2010开发者路线图
查看>>
MVC,MVP 和 MVVM 的图示,区别
查看>>
C语言栈的实现
查看>>
代码为什么需要重构
查看>>
TC SRM 593 DIV1 250
查看>>
SRM 628 DIV2
查看>>
2018-2019-2 20165314『网络对抗技术』Exp5:MSF基础应用
查看>>
统计单词,字符,和行
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
模运算
查看>>
python多线程的使用
查看>>
使用Chrome(PC)调试移动设备上的网页
查看>>
使用gitbash来链接mysql
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>