《TensorFlow2深度学习》阅读笔记1
- 人工智能,机器学习,深度学习的概念以及它们之间的联系与区别
人工智能是指让机器获得像人类一样的智能机制的技术;机器学习是为了解决人类对图片的识别,对语言的理解过程,让机器自动从数据中学习规则的研究学科;在机器学习中,通过神经网络来学习复杂、抽象逻辑的方向,称为神经网络。应用深层神经网络技术在计算机视觉、自然语言处理、机器人等领域取得了重大突破,叫做深度学习,即特指基于深层神经网络实现的模型或算法。

- 机器学习可分为有监督学习,无监督学习,和强化学习三大类
有监督学习:
常见的有线性回归,逻辑回归,支持向量机,随机森林等;
数据集包含了样本𝒙与样本的标签𝒚;算法模型需要学习到映射𝑓𝜃: 𝒙 → 𝒚,其中𝑓𝜃代表模型函数,𝜃为模型的参数。
在训练时,通过计算模型的预测值𝑓𝜃(𝒙)与真实标签𝒚之间的误差来优化网络参数𝜃
无监督学习:
常见的有自编码器,生成对抗网络等;
只有样本𝒙的数据集,算法需要自行发现数据的模态;模型需要学习的映射为𝑓𝜃: 𝒙 → 𝒙,称为自监督学习(Self-supervised Learning)
在训练时,通过计算模型的预测值𝑓𝜃(𝒙)与自身𝒙之间的误差来优化网络参数𝜃
强化学习:
常见算法有DQN,PPO等,通过与环境进行交互来学习解决问题的策略的一类算法
算法需要与环境进行交互,获取环境反馈的滞后的奖励信号,因此并不能通过计算动作与“正确动作”之间的误差来优化网络
- 深度学习特点与应用
数据量,计算力(深度学习非常依赖并行加速计算设备),网络规模(学习到复杂的数据模态),通用智能(自动学习、自我调整)
应用:
1.计算机视觉:图片识别(神经网络的输入为图片数据,输出值为当前样本属于每个类别的概率,通常选取概率值最大的类别作为样本的预测类别。),目标检测(通过算法自动检测出图片中常见物体的大致位置),语义分割(过算法自动分割并识别出图片中的内容)
,视频理解(视频分类,行为检测,视频主体抽取),图片生成(通过学习真实图片的分布,并从学习到的分布中采样而获
得逼真度较高的生成图片)
2.自然语言处理:机器翻译,聊天机器人(如chatGPT)
3.强化学习:虚拟游戏,机器人,自动驾驶
- 深度学习框架
Theano(基于 Python 语言、定位底层运算的计算。已经停止维护)
Scikit-learn(面向机器学习算法的计算库,不支持 GPU 加速,对神经网络相关层实现也较欠缺)
Caffe(主要面向使用卷积神经网络的应用场合,主要开发语言是 C++,也提供 Python 语言等接口,支持 GPU 和 CPU。)
Torch(科学计算库,容易实现自定义网络层)
MXNET(命令式编程和符号式编程混合方式)
PyTorch( Python 作为主要开发语言,命令式编程)
Keras(基于 Theano 和 TensorFlow 等框架提供的底层运算而实现的高层框架)
TensorFlow( TensorFlow 2以动态图优先模式运行,不兼容TensorFlow 1.x 的代码)
TensorFlow 深度学习框架的 3 大核心功能:
1.加速计算
2.自动梯度
在使用 TensorFlow 构建前向计算过程的时候,除了能够获得数值结果,TensorFlow 还
会自动构建计算图,通过 TensorFlow 提供的自动求导的功能,可以不需要手动推导,即可
计算出输出对网络的偏导数。
3.常用神经网络接口
- 开发环境安装(Windows10,NVIDIA GPU,Python)
安装 Python 解释器 Anaconda
安装 CUDA加速库
安装 TensorFlow 框架
安装常用编辑器

浙公网安备 33010602011771号