深度学习学习杂记

以下内容基本都是其他博主那里收录来的,随笔而已,如果不合适,联系我随时删

别问思路,思路就是百度到哪儿就是哪儿,问题卡在哪儿就百度哪儿

TensorFlow框架介绍[图+会话+张量+变量OP+API]

主要参考:

人工智能教程第一课 深度学习和计算机视觉TensorFlow入门_办公模板库 素材蛙的博客-CSDN博客


一、深度学习

  • 深度学习是什么

深度学习是机器学习算法的一种,通过模拟人脑实现相应的功能

  • 深度学习应用场景

手机,机器翻译,自动驾驶,语音识别,医疗,安防等。

二、计算机视觉

  • 计算机视觉的定义

让计算机理解图片或者视频中的内容

  • 计算机视觉的任务

图像分类,目标检测,图像分割

  • 计算机视觉的应用场景

人脸识别,视频监控,图片识别分析,辅助驾驶

三、TensorFlow介绍

1、使用tf.data加载数据。 使用tf.data实例化读取训练数据和测试数据

2、模型的建立与调试: 使用动态图模式 Eager Execution 和著名的神经网络高层 API 框架 Keras,结合可视化工具 TensorBoard,简易、快速地建立和调试模型;

3、模型的训练: 支持 CPU / 单 GPU / 单机多卡 GPU / 多机集群 / TPU 训练模型,充分利用海量数据和计算资源进行高效训练;

4、预训练模型调用: 通过 TensorFlow Hub,可以方便地调用预训练完毕的已有成熟模型。

5、模型的部署: 通过 TensorFlow Serving、TensorFlow Lite、TensorFlow.js 等组件,可以将TensorFlow 模型部署到服务器、移动端、嵌入式端等多种使用场景;

机器学习是实现人工智能的一种途径,深度学习是机器学习的一个子集,也就是说深度学习是实现机器学习的一种方法。

这时大家肯定上实机操作,安装参考:

Win10下安装 Tensorflow2(CPU),并在Pycharm中运行 - 哔哩哔哩

pip --default-timeout=10000 install tensorflow==2.6.0

运行有报错,最前面加下:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

张量Tensor

张量是一个多维数组。 与NumPy ndarray对象类似,tf.Tensor对象也具有数据类型和形状。

创建int32类型的0维张量,即标量

rank_0_tensor = tf.constant(4)

print(rank_0_tensor)

创建float32类型的1维张量

rank_1_tensor = tf.constant([2.0, 3.0, 4.0])

print(rank_1_tensor)

创建float16类型的二维张量

rank_2_tensor = tf.constant([[1, 2],

[3, 4],

[5, 6]], dtype=tf.float16)

print(rank_2_tensor)

numpy(Numerical Python)是一个开源的Python数据科学计算库,支持对N维数组和矩阵的操作,用于快速处理任意维度的数组。

numpy库的功能非常聚焦,专注于做好“一件事”。numpy主要使用ndarray来处理N维数组,numpy中的大部分属性和方法都是为ndarray服务的。

Tensor转换成numpy

np.array(rank_2_tensor)

rank_2_tensor.numpy()

矩阵的运算

实在忘记了矩阵咋计算的了,感谢互联网,还是找到了

矩阵的运算及其运算规则

tf.keras介绍

tf.keras是TensorFlow 2.0的高阶API接口,为TensorFlow的代码提供了新的风格和设计模式,大大提升了TF代码的简洁性和复用性,官方也推荐使用tf.keras来进行模型设计和开发。

深度学习实现的主要流程:1.数据获取,2,数据处理,3.模型创建与训练,4 模型测试与评估,5.模型预测

1.导入tf.keras

使用 tf.keras,首先需要在代码开始时导入tf.keras

import tensorflow as tf from tensorflow import keras

2.数据输入

对于小的数据集,可以直接使用numpy格式的数据进行训练、评估模型,对于大型数据集或者要进行跨设备训练时使用tf.data.datasets来进行数据输入。

3.模型构建

  • 简单模型使用Sequential进行构建
  • 复杂模型使用函数式编程来构建
  • 自定义layers

4.训练与评估

  • 配置训练过程:

# 配置优化方法,损失函数和评价指标 model.compile(optimizer=tf.train.AdamOptimizer(0.001), loss='categorical_crossentropy', metrics=['accuracy'])

  • 模型训练

# 指明训练数据集,训练epoch,批次大小和验证集数据 model.fit/fit_generator(dataset, epochs=10, batch_size=3, validation_data=val_dataset, )

  • 模型评估

# 指明评估数据集和批次大小 model.evaluate(x, y, batch_size=32)

  • 模型预测

# 对新的样本进行预测 model.predict(x, batch_size=32)

总结

了解Tensorflow2.0框架的用途及流程

1.使用tf.data加载数据

2、模型的建立与调试

3、模型的训练

4、预训练模型调用

5、模型的部署

知道tf2.0的张量及其操作

张量是多维数组。

1、创建方法:tf.constant()

2、转换为numpy: np.array()或tensor.asnumpy()

3、常用函数:加法,乘法,及各种聚合运算

4、变量:tf.Variable()

知道tf.keras中的相关模块及常用方法

常用模块:models,losses,application等

常用方法:

1、导入tf.keras

2、数据输入

3、模型构建

4、训练与评估

5、回调函数

6、模型的保存与恢复

四、快速入门模型

第一步先安装:

pip --default-timeout=10000 install seaborn -i https://pypi.tuna.tsinghua.edu.cn/simple/

--default-timeout   防超时

-i https://pypi.tuna.tsinghua.edu.cn/simple/   防慢

1.相关的库的导入

# 绘图
import seaborn as sns
# 数值计算
import numpy as np
# sklearn中的相关工具
# 划分训练集和测试集
from sklearn.model_selection import train_test_split
# 逻辑回归
from sklearn.linear_model import LogisticRegressionCV
# tf.keras中使用的相关工具
# 用于模型搭建
from tensorflow.keras.models import Sequential
# 构建模型的层和激活方法
from tensorflow.keras.layers import Dense, Activation
# 数据处理的辅助工具
from tensorflow.keras import utils

原文链接:https://blog.csdn.net/fegus/article/details/124837484

先实现一个试下:(参考这个,很简单的项目,我这个初学菜狗也能看懂)

自己实现黑白图片自动上色AI(一) - 知乎

你可能感兴趣的:(tensorflow,深度学习,学习)