当前位置:网站首页>7.Keras开发简介
7.Keras开发简介
2022-08-03 04:05:00 【好名字能更容易让朋友记住】
Keras简介
Keras具有以下特性:
- 相同的代码可以在CPU或GPU上无缝切换运行。
- 具有用户友好的API,便于快速开发深度学习模型的原型。
- 内置支持卷积网络(用于计算机视觉)、循环网络(用于序列处理)以及二者的任意组合。
- 支持任意网络框架:多输入或多输出模型、层共享、模型共享等。这也就是说,Keras能够构建任意深度学习模型,无论是生成式对抗网络还是神经图灵机。
使用Keras开发:概述
典型的Keras工作流程如下:
- 定义训练数据:输入张量和目标张量。
- 定义层组成的网络(或模型),将输入映射到目标。
- 配置学习过程:选择损失函数、优化器和需要监控的指标。
- 调用模型的fit方法在训练数据上进行迭代。
定义模型有两种方法:
- 使用 Sequential 类(仅用于层的线性堆叠,这是目前最常见的网络架构)。
- 函数式API(functional API,用于层组成的有向无环图,让你可以构建任意形式的架构)
二者对比
利用Sequential类定义的两层模型
from keras import models from keras import layers model = models.Sequential() model.add(layers.Dense(32, activation='relu', input_shape=(784,))) model.add(layers.Dense(10, activation='softmax'))使用函数式API定义的相同模型
input_tensor = layers.Input(shape=(784,)) x = layers.Dense(32, activation='relu')(input_tensor) output_tensor = layers.Dense(10, activation='softmax')(x) model = models.Model(inputs=input_tensor, outputs=output_tensor)
一旦定义好了模型架构,使用Sequential模型还是函数式API就不重要了。接下来的步骤都是相同的。
配置学习过程是在编译这一步,你需要指定模型使用的优化器和损失函数,以及训练过程中想要监控的指标。
下面是单一损失函数的例子
from keras import optimizers model.compile(optimizer=optimizers.RMSprop(1r=0.001), loss='mse', metrics=['accuracy'])
最后,学习过程就是通过 fit()方法将输入数据的Numpy数组(和对于的目标数据)传入模型,这一做法与Scikit-Learn即其他机器学习库类似。
model.fit(input_tensor, target_tensor, batch_size=128, epocha=10)
边栏推荐
猜你喜欢
随机推荐
网工知识角|华为网络工程师,华为、华三、思科设备三层交换机如何使用三层接口?命令敲起来
浏览器监听标签页关闭
高等代数_笔记_配方法标准化二次型
Jincang Database Pro*C Migration Guide (3. KingbaseES Pr*oc Compatibility with Oracle Pro*c)
高等代数_证明_不同特征值的特征向量线性无关
Compose the displacement of the view
(一)Nacos注册中心集群环境搭建
记录一些遇见的bug——mapstruct和lombok同时使用时,转换实体类时数据丢失问题
【STM32】入门(三):按键使用-GPIO端口输出控制
汇编题答案
【 original 】 Auto. Js the get and post case
path development介绍
ESP8266-Arduino编程实例-LED点阵驱动(基于Max7219)
这个困扰程序员50年的问题,终于要被解决了?
DC-4靶场搭建及渗透实战详细过程(DC靶场系列)
积分商城可设置的四种兑换商品类型
正则表达式绕过
2022河南萌新联赛第(四)场:郑州轻工业大学 G - 迷宫
v-text指令:设置标签内容
How many moments have you experienced the collapse of electronic engineers?









