设置

import numpy as np
import tensorflow as tf
from tensorflow import keras

介绍

在训练模型之前准备数据(将其转换为 NumPy 数组或 tf.data.Dataset 对象)。

进行数据预处理,例如 特性归一化 或词汇索引。

使用 Keras Functional API 建立一个将您的数据转化为有用的预测的模型。

使用内置的 Keras fit() 方法训练模型,同时注意检查点,指标监视和容错能力。

根据测试数据评估模型,以及如何将其用于推断新数据。

自定义 fit() 的功能,例如构建GAN。

利用多个 GPU 加快训练速度。

通过超参数调整来优化模型。

在本指南的最后,您将获得指向端到端示例的指引,以巩固这些概念:

  图片分类

  文字分类

  信用卡欺诈检测

1. 数据加载 & 处理

  * 数据加载

    Keras 模型接受三张类型的输入,NumPy arrays, TensorFlow Dataset objects (针对大数据集和GPU优化),Python generators。

    Keras 提供一系列工具帮助把 硬盘上的原始数据 转换为 Dataset,比如:

      tf.keras.preprocessing.image_dataset_from_directory

      tf.keras.preprocessing.text_dataset_from_directory

      tf.data.experimental.make_csv_dataset

  * 使用 Keras 对数据处理

    理想的机器学习模型应是端到端的。一般,尽可能把数据预处理包含进模型,避免不必要的额外影响。理想的模型应该期望输入尽可能接近原始数据的东西:图像模型应该期望RGB像素值在[0,255]范围内,而文本模型应该接受utf-8字符的字符串。这样使用者不需要关注的外部的预处理过程。

    使用 Keras 预处理层。好处是可以被包含进模型,使模型具备可移植性。预处理层包括:

      矢量化文本字符串通过 TextVectorization 层。

      特征归一化通过 Normalization 层。

      图片重新缩放、裁剪,或图像数据增强。

      

      包含状态的预处理层:

      TextVectorization (矢量化)保存将单词或符号映射到整数标记的索引。

      Normalization (标准化)保存了特征的平均值和方差。

       预处理层的状态是通过对训练数据的一个样本(或全部)调用 layer.adapt(data) 来获得的。

2. 使用 Keras 功能API 构建模型

  “模型”是层的有向无(循)环图。你可以将模型看作一个“更大的层”,它包含多个子层,并且可以通过暴露于数据进行训练。

3. 使用 fit() 训练模型

4. 使用 fit() 定制训练步骤

5. 使用 即时执行 调试模型

6. 使用多个 GPUs 加速训练

7. 在设备上同步执行预处理,而在主机CPU上异步执行预处理

8. 通过超参数调优找到最佳模型配置

9. 端到端示例

专业术语参考:

English 中文
arguments         参数               
boolean           布尔               
data augumentation 数据增强           
deep learning     深度学习           
float             浮点数              
Functional API     函数式 API    
Fuzz factor       模糊因子            
input shape       输入尺寸            
index             索引                
int               整数                
layer             层                 
loss function     损失函数            
metrics 评估标准
nD tensor         nD 张量            
Numpy Array Numpy 矩阵
objective 目标
optimizer 优化器
output shape 输出尺寸
regularizer       正则化器            
return 返回
recurrent 循环
Sequential Model 顺序模型
shape 尺寸
target 目标
testing 测试
training 训练
wrapper           封装器  

Tool:ChatAI

Docs:https://keras.io/getting_started/intro_to_keras_for_engineers/

Link:https://www.cnblogs.com/farwish/p/13973938.html

[ML] 工程师使用 Keras 的步骤指引的更多相关文章

  1. 一位ML工程师构建深度神经网络的实用技巧

    一位ML工程师构建深度神经网络的实用技巧 https://mp.weixin.qq.com/s/2gKYtona0Z6szsjaj8c9Vg 作者| Matt H/Daniel R 译者| 婉清 编辑 ...

  2. 机器学习规则:ML工程最佳实践----rules_of_ml section 1【翻译】

    作者:黄永刚 机器学习规则:ML工程最佳实践 本文旨在指引具有机器学习基础知识的工程师等人,更好的从机器学习的实践中收益.介绍一些应用机器学习需要遵循的规则,类似于Google C++ 风格指南等流行 ...

  3. C#中的深度学习(五):在ML.NET中使用预训练模型进行硬币识别

    在本系列的最后,我们将介绍另一种方法,即利用一个预先训练好的CNN来解决我们一直在研究的硬币识别问题. 在这里,我们看一下转移学习,调整预定义的CNN,并使用Model Builder训练我们的硬币识 ...

  4. ubuntu系统theano和keras的安装

    说明:系统是unbuntu14.04LTS,32位的操作系统,以前安装了python3.4,现在想要安装theano和keras.步骤如下: 1,安装pip sudo apt-get install ...

  5. Java工程师的终极书单

    本份Java工程师的终极书单只在专业的Java技术博客–天天编码上发布,没有授权任何网站与个人转载. 坚持阅读好书是学习Java技术的好方式.但是,市面上与Java技术相关的书籍可谓数不胜数,如何从这 ...

  6. Keras Model Sequential模型接口

    Sequential 模型 API 在阅读这片文档前,请先阅读 Keras Sequential 模型指引. Sequential 模型方法 compile compile(optimizer, lo ...

  7. 关于ML.NET v0.6的发布说明

    ML.NET 0.6版本提供了几项令人兴奋的新增功能: 用于构建和使用机器学习模型的新API 我们主要关注的是发布用于构建和使用模型的新ML.NET API的第一次迭代.这些新的,更灵活的API支持新 ...

  8. 微软发布ML.NET 1.0

    原文地址:https://devblogs.microsoft.com/dotnet/announcing-ml-net-1-0/ 我们很高兴地宣布今天发布ML.NET 1.0.  ML.NET是一个 ...

  9. [翻译] 使用 TensorFlow 进行分布式训练

    本文以两篇官方文档为基础来学习TensorFlow如何进行分布式训练,借此进入Strategy世界.

  10. [源码解析] TensorFlow 分布式 DistributedStrategy 之基础篇

    [源码解析] TensorFlow 分布式 DistributedStrategy 之基础篇 目录 [源码解析] TensorFlow 分布式 DistributedStrategy 之基础篇 1. ...

随机推荐

  1. 【UE虚幻引擎】干货!UE修改分辨率的3种方法

    虚幻引擎作为一款实时3D创作工具,在游戏.建筑.影视动画.虚拟仿真等领域受到全球各行各业创作者广泛欢迎,在UE中获取和设置分辨率也是3D创作开发工作中的常用功能.本文介绍了在虚幻引擎中修改分辨率的3种 ...

  2. django项目(博客二)

    扩展1:admin路由分发的本质 路由分发本质 include 可以无限制的 嵌套N多层 url(r'^index/',([],None,None)) 扩展2: 由于url方法第一个参数是正则表达式, ...

  3. CSS(相对定位relative、绝对定位absolute、固定定位fixed、定位应用、元素的显示和隐藏)

    一. 定位(position) 介绍 1.1 为什么使用定位 我们先来看一个效果,同时思考一下用标准流或浮动能否实现类似的效果? 场景1: 某个元素可以自由的在一个盒子内移动位置,并且压住其他盒子. ...

  4. 无力吐槽,uniapp项目外包接单碰上了这样的开发人员

    随着疫情期形式的不断变化,线上线下各个行业都受到冲击.2020年我在家歇息了近4个月:跟很多人一样这一年我失业了,那段时间真的很迷茫,年龄也已过30,加上网上各种"开发人员35岁" ...

  5. 01.Android崩溃Crash封装库

    目录介绍 01.该库具有的功能 02.该库优势分析 03.该库如何使用 04.降低非必要crash 05.异常恢复原理 06.后续的需求说明 07.异常栈轨迹原理 08.部分问题反馈 09.其他内容说 ...

  6. 记录--UNI-APP安卓本地打包详细教程(保姆级)

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 一.开发环境 uni-app 官方文档地址 原生开发者支持 1.Android Studio 下载地址:Android Studio官网 ...

  7. 鸿蒙HarmonyOS实战-ArkUI组件(Flex)

    一.Flex 1.概述 Flex布局它可以让容器中的子元素具有弹性伸缩性.Flex布局是一种二维布局模型,它可以在任意方向上对元素进行排列,并且可以动态地调整元素的大小和位置,以适应不同的屏幕尺寸和设 ...

  8. 绘制三元图、颜色空间图:R语言代码

      本文介绍基于R语言中的Ternary包,绘制三元图(Ternary Plot)的详细方法:其中,我们就以RGB三色分布图为例来具体介绍.   三元图可以从三个不同的角度反映数据的特征,因此在很多领 ...

  9. C# 委托(delegate)本质理解

    代码如下,很简单 namespace Delegate { class Program { delegate void SayHi(); void SayHi_1() { Console.WriteL ...

  10. AXI4的主机协议代码分析

    AXI4的主机协议代码分析 一.模块分析 (1)端口列表 input wire INIT_AXI_TXN, // Asserts when ERROR is detected output reg E ...