Keras用于构建和训练深度学习模型的高级API。 它用于快速原型设计,高级研究和生产。优势分析用户友好---易于操作模块化和可组合 易于扩展---编写自定义构建块以表达研究的新想法。 使用步骤1.导入模块import tensorflow as tffrom tensorflow import keras keras在TensorFlow 里的实现。这是一个高级API,用于构建和训练模型,同时兼容 TensorFlow 的绝大部分功能。这使得 TensorFlow 更容易使用,且保持 TensorFlow 的灵活性和性能。 保存模型的权重时,默认为 checkpoint 格式。 通过save_format ='h5'使用HDF5。 2.构建模型(1)keras.Sequential()通过组装图层来构建模型。model = keras.Sequential() #嵌入层是把正整数(索引)转换为固定大小的稠密向量 model.add(keras.layers.Embedding(10000, 16)) # 加入平均池化层。经过池化后,(N, 70, 16) -> (N, 16) model.add(keras.layers.GlobalAveragePooling1D()) # 加入全连接层。16为输出数量(神经元数量)。 model.add(keras.layers.Dense(16, activation=tf.nn.relu)) # 加入全连接层。1为输出数量(神经元数量)。 model.add(keras.layers.Dense(1, activation=tf.nn.sigmoid)) (2)model.compile()# 编译模型,对模型训练进行相关的配置。model.compile(optimizer=tf.train.AdamOptimizer(), loss='binary_crossentropy', metrics=['accuracy']) 三个重要参数:optimizer:训练过程的优化方法。此参数通过 tf.train 模块的优化方法的实例来指定,比如:AdamOptimizer, RMSPropOptimizer, GradientDescentOptimizer。loss:训练过程中使用的损失函数(通过最小化损失函数来训练模型)。 常见的选择包括:均方误差(mse),categorical_crossentropy和binary_crossentropy。 损失函数由名称或通过从tf.keras.losses模块传递可调用对象来指定。 metrics:训练过程中,监测的指标。 指定方法:名称 或 可调用对象 from the tf.keras.metrics 模块。 (3)model.fit()# 进行模型训练。# epochs 训练的轮数,一个完整的训练集为一轮。 # batch_size:批次的数量。 # validation_data:指定验证集,模型在训练时,就可以使用该验证集进行验证。 # verbose:指定训练集的信息显示。 # fit 方法返回一个对象。该对象会保存每轮(epoch)训练后的正确率与损失值。 history = model.fit(X_train, y_train, epochs=100, batch_size=512,validation_data=(X_test, y_test), verbose=1) 训练结果展示: |
相关文章
- 深度学习必备书籍——《Python深度学习 基于Pytorch》
- Pytorch深度学习实战3-7:详解数据加载DataLoader与模型处理
- 深度学习中的学习率设置技巧与实现详解
- 【深度学习】用NumPy和PyTorch分别实现神经网络的反向传播
- Python深度学习实战:人脸关键点(15点)检测pytorch实现
- 【Java学习笔记】<集合框架>定义功能去除ArrayList中的重复元素
- 【Java学习笔记】<集合框架>TreeSet,Comparable,Comparator
- 集合框架map学习笔记一IdentityHashMap
- Java基础学习笔记十七 集合框架(三)之Map
- Java 学习笔记 两大集合框架Map和Collection