首页 > 其他分享 >无涯教程-TensorFlow - Keras

无涯教程-TensorFlow - Keras

时间:2023-08-20 13:03:12浏览次数:36  
标签:10 60000 Keras 无涯 Epoch train loss TensorFlow model

Keras易于学习的高级Python库,可在TensorFlow框架上运行,它的重点是理解深度学习技术,如为神经网络创建层,以维护形状和数学细节的概念。框架的创建可以分为以下两种类型-

  • 顺序API
  • 功能API

无涯教程将使用Jupyter Notebook执行和显示输出,如下所示-

步骤1   -  首先执行数据加载和预处理加载的数据以执行深度学习模型。

import warnings
warnings.filterwarnings('ignore')

import numpy as np
np.random.seed(123) # for reproducibility

from keras.models import Sequential
from keras.layers import Flatten, MaxPool2D, Conv2D, Dense, Reshape, Dropout
from keras.utils import np_utils
Using TensorFlow backend.
from keras.datasets import mnist

# 将预混洗的 MNIST 数据加载到训练和测试集中
(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train = X_train.reshape(X_train.shape[0], 28, 28, 1)
X_test = X_test.reshape(X_test.shape[0], 28, 28, 1)
X_train = X_train.astype('float32')
X_test = X_test.astype('float32')
X_train /= 255
X_test /= 255
Y_train = np_utils.to_categorical(y_train, 10)
Y_test = np_utils.to_categorical(y_test, 10)

可以将该步骤定义为"Import libraries and Modules",这意味着所有库和模块都将作为初始步骤导入。

步骤2    -  在这一步中,无涯教程将定义模型架构-

model = Sequential()
model.add(Conv2D(32, 3, 3, activation = 'relu', input_shape = (28,28,1)))
model.add(Conv2D(32, 3, 3, activation = 'relu'))
model.add(MaxPool2D(pool_size = (2,2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(128, activation = 'relu'))
model.add(Dropout(0.5))
model.add(Dense(10, activation = 'softmax'))

步骤3    -  现在让编译指定的模型-

model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])

步骤4    -  现在,将使用训练数据拟合模型-

model.fit(X_train, Y_train, batch_size=32, epochs=10, verbose=1)

创建的迭代的输出如下-

Epoch 1/10 60000/60000 [==============================] - 65s - 
loss: 0.2124 - 
acc: 0.9345 
Epoch 2/10 60000/60000 [==============================] - 62s - 
loss: 0.0893 - 
acc: 0.9740 
Epoch 3/10 60000/60000 [==============================] - 58s - 
loss: 0.0665 - 
acc: 0.9802 
Epoch 4/10 60000/60000 [==============================] - 62s - 
loss: 0.0571 - 
acc: 0.9830 
Epoch 5/10 60000/60000 [==============================] - 62s - 
loss: 0.0474 - 
acc: 0.9855 
Epoch 6/10 60000/60000 [==============================] - 59s -
loss: 0.0416 - 
acc: 0.9871 
Epoch 7/10 60000/60000 [==============================] - 61s - 
loss: 0.0380 - 
acc: 0.9877 
Epoch 8/10 60000/60000 [==============================] - 63s - 
loss: 0.0333 - 
acc: 0.9895 
Epoch 9/10 60000/60000 [==============================] - 64s - 
loss: 0.0325 - 
acc: 0.9898 
Epoch 10/10 60000/60000 [==============================] - 60s - 
loss: 0.0284 - 
acc: 0.9910

参考链接

https://www.learnfk.com/tensorflow/tensorflow-keras.html

标签:10,60000,Keras,无涯,Epoch,train,loss,TensorFlow,model
From: https://blog.51cto.com/u_14033984/7160431

相关文章

  • 无涯教程-TensorFlow - TensorBoard可视化
    TensorFlow包含一个可视化工具,称为TensorBoard,它用于分析数据流图,还用于了解机器学习模型。TensorBoard的重要功能包括查看有关垂直对齐的任何图形的参数和详细信息的不同类型统计的视图。深度神经网络包括多达36,000个节点。TensorBoard帮助将这些节点折叠成块并突出显示相同......
  • 无涯教程-TensorFlow - 递归神经网络
    递归神经网络是一种面向深度学习的算法,它遵循顺序方法。在神经网络中,无涯教程始终假定每个输入和输出都独立于所有其他层。这些类型的神经网络称为递归,因为它们以顺序的方式执行数学计算。表示递归神经网络的示意方法如下所述-实现递归神经网络在本节中,将学习如何使用TensorFl......
  • 无涯教程-TensorFlow - 卷积神经网络
    了解机器学习概念之后,无涯教程现在可以将重点转移到深度学习概念上,深度学习是机器学习的一个分支,被认为是近几十年来研究人员迈出的关键一步。深度学习实现的示例包括图像识别和语音识别等应用。以下是深度神经网络的两种重要类型-卷积神经网络递归神经网络在本章中,将重点介......
  • 无涯教程-TensorFlow - 数学基础
    在TensorFlow中创建基本应用程序之前,了解TensorFlow所需的数学概念非常重要,数学被视为任何机器学习算法的核心,借助于数学的核心概念,定义了针对特定机器学习算法的解决方案。向量(Vector)将连续或离散的数字数组定义为向量,机器学习算法处理固定长度的向量,以产生更好的输出。机......
  • 无涯教程-TensorFlow - 安装步骤
    要安装TensorFlow,在系统中安装"Python"非常重要。从TensorFlow安装开始,Python3.4+被认为是最好的选择。考虑以下步骤在Windows操作系统中安装TensorFlow。第1步 - 确认正在安装的python版本。第2步 - 用户可以选择任何机制在系统中安装TensorFlow。无涯教程建议使用......
  • 无涯教程-TensorFlow - 简介
    TensorFlow是一个开源软件库,用于各种感知和语言理解任务的机器学习。目前被50个团队用于研究和生产许多Google商业产品,如语音识别、Gmail、Google相册和搜索,其中许多产品曾使用过其前任软件DistBelief。TensorFlow最初由谷歌大脑团队开发,用于Google的研究和生产,于2015年11月9日......
  • 无涯教程-Perl - write函数
    描述该函数将格式指定的格式化记录写入FILEHANDLE。如果省略FILEHANDLE,则将输出写入当前选定的默认输出通道。表单处理是自动处理的,按照文件句柄的格式指定,添加新的页面,页眉,页脚等。语法以下是此函数的简单语法-writeFILEHANDLEwrite返回值如果失败,此函数返回0,......
  • 无涯教程-Perl - wantarray函数
    描述如果当前正在执行的函数的context正在寻找列表值,则此函数返回true。在标量context中返回false。语法以下是此函数的简单语法-wantarray返回值如果没有context,则此函数返回undef;如果lvalue需要标量,则该函数返回0。例以下是显示其基本用法的示例代码-#!/usr/bin......
  • 无涯教程-Perl - waitpid函数
    描述该函数等待ID为PID的子进程终止,返回已故进程的进程ID。如果PID不存在,则返回-1。进程的退出状态包含在$?中。可以将标志设置为各种值,这些值等于waitpid()UNIX系统调用使用的值。FLAGS的值为0应该在支持进程的所有操作系统上工作。语法以下是此函数的简单语法-waitpi......
  • 无涯教程-Perl - wait函数
    描述该函数等待子进程终止,返回已故进程的进程ID。进程的退出状态包含在$?中。语法以下是此函数的简单语法-wait返回值如果没有子进程,则此函数返回-1,否则将显示已故进程的进程ID参考链接https://www.learnfk.com/perl/perl-wait.html......