设置

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. 为什么说HTTPS比HTTP安全? HTTPS是如何保证安全的?

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 一.安全特性 在上篇文章中,我们了解到HTTP在通信过程中,存在以下问题: 通信使用明文(不加密),内容可能被窃听 不验证通信方的身份,因 ...

  2. 工作记录:TypeScript从入门到项目实战(进阶篇)

    内置对象的使用 JavaScript中有许多内置对象,可以直接在JavaScript程序中使用,同样的,TypeScript也延续了这些内置对象 全局的对象( global objects )或称标准 ...

  3. C#人脸对比服务(基于虹软人脸识别SDKV4.1封装)

    软件截图   项目截图 部分代码 using System; using System.Collections.Generic; using System.Linq; using System.Tex ...

  4. 聊聊大模型"打字机"效果的背后技术——SSE

    SSE:Server Sent Event:服务器发送事件. Server-Sent Events(SSE)是一种由服务器向客户端推送实时数据的技术.它是构建基于事件的.服务器到客户端的通信的一种方法 ...

  5. KingbaseES V8R6 集群运维案例 -- 脚本部署集群后ssh无法连接

    案例说明: 在kylin V10环境下,通过脚本方式部署KingbaseES V8R6集群后,发现ssh无法连接主机,通过分析发现在脚本部署过程中会对系统环境进行优化配置,在修改了/etc/ssh/s ...

  6. KingabseES例程之巧用QueryMapping解决查询硬解析问题

    什么是QueryMapping KingbaseES Query Mapping 是一种查询映射功能.有过SQL优化经历的人都知道,对于有些SQL性能问题,可能需要涉及到SQL层面的修改,这不仅麻烦, ...

  7. SQL FULL OUTER JOIN 关键字:左右表中所有记录的全连接解析

    SQL RIGHT JOIN关键字 SQL RIGHT JOIN关键字返回右表(table2)中的所有记录以及左表(table1)中的匹配记录.如果没有匹配,则左侧的结果为0条记录. RIGHT JO ...

  8. 设置 BCompare 打开文件时的默认字符编码

    每次比对 .h .cpp 文件,BCompare总是默认以西欧字符编码打开文件,导致中文都变成乱码了,还需要手动的修改文件字符编码,这样才能正常的显示.非常的不方便 然后我们就需要设置默认的字符编码, ...

  9. 行业软件开发商怎样来抢 BI 这块蛋糕?

    随着企业信息化建设的深入,很多机构的生产系统已建设完成,在保证生产的有序进行后,如何更有效地进行经营决策成了管理者面临的最大任务.商业智能(BI)就是在这种背景成为支撑企业经营分析的一大利器. 根据 ...

  10. 重新点亮linux 命令树————文本查看vi和vim[五]

    前言 简单整理一下vi和vim,主要介绍一下四种模式. 正文 四种模式分别是: 正常模式(normal-mode) 插入模式(insert-mode) 命令模式(command-mode) 可视模式( ...