every blog every motto: talk is cheap , show me your code

0. 前言

一起学习,共同进步!
本专栏主要记录为主,部分代码讲解后续完善。

本节实战fashion_mnist 数据集。

1. 代码部分

1. 导入模块

import matplotlib as mpl
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
import sklearn
import pandas as pd
import os
import sys
import time
import tensorflow as tf
from tensorflow import kerasprint(tf.__version__)
print(sys.version_info)
for module in mpl,np,pd,sklearn,tf,keras:print(module.__name__,module.__version__)

2. 读取数据

读取fashion_mnist 的数据集。

fashion_mnist = keras.datasets.fashion_mnist
# print(fashion_mnist)
(x_train_all,y_train_all),(x_test,y_test) = fashion_mnist.load_data()
x_valid,x_train = x_train_all[:5000],x_train_all[5000:]
y_valid,y_train = y_train_all[:5000],y_train_all[5000:]
# 打印格式
print(x_valid.shape,y_valid.shape)
print(x_train.shape,y_train.shape)
print(x_test.shape,y_test.shape)

3. 展示数据

展示第一张图片

# 显示图片示例
def show_single_image(img_arr):plt.imshow(img_arr,cmap='binary')plt.show()show_single_image(x_train[0])


展示多张图片

# 显示多张图片
def show_imgs(n_rows,n_cols,x_data,y_data,class_names):assert len(x_data) == len(y_data)assert n_rows * n_cols < len(x_data)plt.figure(figsize = (n_cols * 1.4,n_rows * 1.6))for row in range(n_rows):for col in range(n_cols):index = n_cols*row + colplt.subplot(n_rows,n_cols,index+1)plt.imshow(x_data[index],cmap="binary",interpolation = 'nearest')plt.axis('off')plt.title(class_names[y_data[index]])plt.show()class_names = ['T-shirt','Trouser','pullover','Dress','Coat','Sandal','Shirt','Sneaker','Bag','Ankle boot']show_imgs(3,5,x_train,y_train,class_names)

4. 构建模型

4.1 创建对象

4.1.1 创建对象(方法一)
# tf.keras.models.Sequential()
# 构建模型# 创建对象
model = keras.models.Sequential()
model.add(keras.layers.Flatten(input_shape=[28,28]))
model.add(keras.layers.Dense(300,activation='sigmoid'))
model.add(keras.layers.Dense(100,activation='sigmoid'))
model.add(keras.layers.Dense(10,activation='softmax'))
4.1.2 创建对象(方法二)
# 另一种写法
model = keras.modells.Sequential([keras.layers.Flatten(input_shape=[28,28]),keras.layers.Dense(300,activation='sigmoid'),keras.layers.Dense(100,activation='sigmoid'),keras.layers.Dense(10,activation='softmax')
])

4.2 编译

#
model.compile(loss='sparse_categorical_crossentropy',optimizer='sgd',metrics=['accuracy'])

5. 显示模型相关参数

5.1 显示层
model.layers

5.2 显示概括

# 概况
model.summary()

6. 开始训练

history = model.fit(x_train,y_train,epochs=10,validation_data=(x_valid,y_valid))

7. 结果展示

7.1 显示history

type(history)

7.2 显示history.history

history.history

7.3 画出损失函数和accury

# 画图
def plot_learning_curves(history):pd.DataFrame(history.history).plot(figsize=(8,5))plt.grid(True)plt.gca().set_ylim(0,1)plt.show()
plot_learning_curves(history)

从零基础入门Tensorflow2.0 ----一、1.1 实战分类模型(fashion_mnsit数据集,数据读取与展示)相关推荐

  1. 视频编码零基础入门(0):零基础,史上最通俗视频编码技术入门

    [来源申明]本文引用了微信公众号"鲜枣课堂"的<视频编码零基础入门>文章内容.为了更好的内容呈现,即时通讯网在引用和收录时内容有改动,转载时请注明原文来源信息,尊重原作 ...

  2. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task5:模型训练与验证

    [天池赛事]零基础入门语义分割-地表建筑物识别 Task1:赛题理解与 baseline(3 天) – 学习主题:理解赛题内容解题流程 – 学习内容:赛题理解.数据读取.比赛 baseline 构建 ...

  3. TensorFlow2.0(二)--Keras构建神经网络分类模型

    Keras构建分类模型 1. tf.keras简介 2. 利用tf.keras构建神经网络分类模型 2.1 导入相应的库 2.2 数据读取与展示 2.3 数据归一化 2.4 构建模型 2.5 模型的编 ...

  4. 零基础入门天池NLP赛事之——新闻文本分类(5)

    基于深度学习的文本分类 一.学习目标: 学习Word2Vec的使用和基础原理 学习使用TextCNN.TextRNN进行文本表示 学习使用HAN网络结构完成文本分类 二.文本表示方法 Part3: 词 ...

  5. 黑客零基础入门教程:「黑客攻防实战从入门到精通(第二版)」堪称黑客入门天花板

    前言 您知道在每天上网时,有多少黑客正在浏览您计算机中的重要数据吗﹖黑客工具的肆意传播,使得即使是稍有点计算机基础的人,就可以使用简单的工具对网络中一些疏于防范的主机进行攻击,在入侵成功之后,对其中的 ...

  6. 零基础入门--中文命名实体识别(BiLSTM+CRF模型,含代码)

    https://github.com/mali19064/LSTM-CRF-pytorch-faster 中文分词 说到命名实体抽取,先要了解一下基于字标注的中文分词. 比如一句话 "我爱北 ...

  7. Task04——零基础入门NLP - 基于深度学习的文本分类1

    学习目标 学习fasttext使用和基本原理 学会使用验证集进行调参

  8. 阿里云天池学习赛-零基础入门数据分析-学术前沿趋势分析(task1)

    阿里云天池学习赛零基础入门数据分析-学术前沿趋势分析 前言 一.赛题描述及数据说明 1:数据集的格式如下: 2:数据集格式举例: 二.task1论文数量统计(数据统计任务):统计2019年全年,计算机 ...

  9. 书籍推荐:零基础入门学习Python

    零基础入门学习Python pdf下载 所属网站分类: 资源下载 > python电子书 作者:goodbody 链接: http://www.pythonheidong.com/blog/ar ...

  10. 0基础能学漫画么?漫画零基础入门教程!

    漫画零基础入门教程!很多人都喜欢看动漫,同时也会幻想成为动漫里的主角,与此同时也会诞生学漫画的想法.不论是你真的想学习漫画,又或出于个人爱好,或职业需要,或为了具备一项自己喜欢的看家本领.我们都要先清 ...

最新文章

  1. js中一些常用的基本函数
  2. Php 与 Json
  3. Devoxx 2012:Java 8 Lambda和并行性,第1部分
  4. Linux 下wifi 驱动开发(三)—— SDIO接口WiFi驱动浅析
  5. SqlServer学习之存储过程
  6. 取文件 shell_webshell文件上传分析溯源
  7. 动态css语言less,less让css具有动态语言的特性
  8. 组态王opc_组态王和西门子S7300、S7400系列PLC通讯的几种配置方案
  9. 永不改变的PCB设计黄金法则
  10. Forking AfterBurn into Maya
  11. MariaDB和MySQL性能测试比较
  12. atitit.导出excel的设计----查询结果 导出为excel的实现java .net php 总结
  13. 易宝支付 -- 微信小程序对接
  14. Windows动态桌面原理
  15. 统计学习方法——机器学习和统计学习
  16. 手机QQ邮箱可以发html邮件么,如何使用手机qq邮箱发送邮件
  17. 从What到How,大数据实战攻略秘笈
  18. 记录Request + BeautifulSoup爬取中国现代诗歌大全网站上的4000+现代诗的过程
  19. video截取视频内容作为封面
  20. 中国历史各王朝的知识点总结记忆

热门文章

  1. linux之FTP服务器安装 一看就会!!!动手还是会!!!
  2. 电脑键盘下划线怎么打_电脑键盘失灵鼠标不动怎么办 键盘失灵鼠标不动解决办法...
  3. Java雨水计量_雨水24小时的降雨量怎么计算?
  4. 如何使用python提高办公效率-提升Python程序运行效率的6个方法
  5. VSCode:vscode设置侧边资源管理器文字大小
  6. Mybatis generator 自动生成代码(实例讲解)
  7. cartographer探秘第四章之代码解析(四) --- 后端优化 --- 约束计算
  8. keras实现Segnet、FCN、U-Net系列分割网络
  9. Asp.net(C#)年月日时分秒毫秒
  10. 【漏洞复现】PHPmyadmin 4.8.1后台Getshell新姿势