人工智能ACA(五)--深度学习基础

一、深度学习概述

1. 深度学习概念

1-1. 深度学习基本概念
  • 深度学习是机器学习的一个分支
  • 基于人工神经网络(模仿人脑结构)
  • 通过多层网络自动学习特征
  • 能够处理复杂的模式识别问题
1-2. 深度学习的优点与缺点

优点

  • 强大的特征学习能力
  • 可以处理复杂问题
  • 准确率高
  • 自动化程度高

缺点

  • 需要大量数据
  • 计算资源要求高
  • 训练时间长
  • 可解释性差
1-3. 深度学习与传统机器学习区别

主要区别在于:传统机器学习是人工进行特征提取,深度学习是通过神经网络从数据里提取特征。

对比维度 机器学习 深度学习
特征提取 • 需要人工设计特征 • 依赖领域专家经验 • 特征工程占据大量工作 • 自动学习特征 • 端到端学习 • 减少人工干预
举例说明 图像识别猫: • 人工定义特征:耳朵形状、胡须特征等 • 手动提取这些特征 • 基于提取的特征进行分类 图像识别猫: • 直接输入原始图像 • 网络自动学习关键特征 • 自动完成特征提取到分类的全过程
数据要求 • 数据量要求相对较小 • 可以处理结构化数据 • 需要大量数据 • 特别适合非结构化数据
计算复杂度 • 计算量较小 • 训练速度快 • 计算量大 • 训练周期长

2. 深度学习框架

2-1 深度学习框架定义

深度学习框架是一个软件库,提供了构建、训练和部署深度学习模型所需的工具和接口。它是连接理论与实践的桥梁,使开发者能够更高效地实现深度学习算法。

2-2 TensorFlow框架

利用数据流图进行数值计算的开源软件库;

可以在众多异构的系统上方便移植;

2-3 Torch 框架

很好的学习RNN途径

2-4 PyTorch 框架
2-5 Caffe框架
2-6 框架的选择
特点 TensorFlow Torch PyTorch Caffe
开发公司/组织 谷歌 (Google) Facebook 人工智能研究院 (FAIR) Facebook 人工智能研究院 (FAIR) 伯克利 AI 研究中心 (BAIR)
首次发布 2015年 2002年(Lua Torch) 2016年 2014年
编程语言 Python、C++、Java、Go 等 Lua Python、C++ C++
模型构建方式 静态计算图(TF 1.x),动态计算图(Eager Execution, TF 2.x) 动态计算图 动态计算图 静态计算图
易用性 中等,使用 Keras 可以简化模型构建 较低,基于 Lua 语言,学习曲线较陡峭 高,API 简洁直观,易于调试 中等,模型定义需编写配置文件
性能 高,支持 GPU 和 TPU,加上分布式训练 中等,性能依赖于 Lua 的效率 高,优化良好的动态计算图,支持 GPU 和分布式训练 高,专注于图像处理任务,优化良好
生态系统 丰富,包含 TensorFlow Hub、TensorFlow Lite、TensorFlow.js 等 较小,社区活跃度不及 PyTorch 和 TensorFlow 丰富,包含 TorchVision、TorchText、TorchServe 等 较小,主要集中在视觉任务
社区和支持 广泛的社区支持,丰富的文档和教程 社区较小,主要集中在研究人员和特定领域 活跃且快速增长的社区,丰富的第三方资源 社区规模较小,主要用于特定应用场景
应用领域 广泛,涵盖计算机视觉、自然语言处理、强化学习等 主要用于计算机视觉和自然语言处理 广泛,涵盖研究和生产环境中的各种应用 主要集中在计算机视觉领域
调试和可视化工具 TensorBoard 提供强大的可视化支持 限制较多,缺乏统一的可视化工具 支持通过第三方工具如 TensorBoardX 进行可视化 基本的可视化工具,功能有限
移动和嵌入式支持 TensorFlow Lite 提供优秀的支持 支持有限,主要依赖第三方集成 支持通过 PyTorch Mobile 支持通过 Caffe2(现已合并入 PyTorch)
学习资源 丰富的官方教程、文档和在线课程 Lua 资源相对较少,需依赖社区贡献 丰富的官方教程、文档和社区资源 资源较少,主要依赖官方文档和社区贡献
扩展性 高,支持自定义操作和模块 高,基于 Lua 可灵活扩展 高,易于定义自定义层和模块 中等,扩展需通过配置文件进行

3 神经网络

3-1 神经网络基础
3-2 神经网络租车

4. 激活函数

4-1 激活函数定义:
  • 激活函数是一种在人工智能神经网络的神经单元桑运行的函数
  • 激活函数是神经网络中引入非线性变换的数学函数
  • 旨在帮助网络学习数据中的复杂模式
  • 负责将神经元节点的输入映射到输出端。
  • 用于决定神经元是否应该被激活。
4-2 常见激活函数:
Sigmoid激活函数

ReLU

Tanh

4-3 sigmoid激活函数
4-4 Tanh激活函数
4-5 ReLU激活函数

二、多层感知机

1. 感知机概述

  1. 多层感知机

2-1 多层感知机概述

多层感知机是一种前馈神经网络,是最基础和经典的深度学习模型之一。

多层感知机由三类层构成:

  • 输入层:接收原始数据
  • 隐藏层:可以有一层或多层,负责特征提取和转换
  • 输出层:产生最终预测结果

多层感知机主要特点:

  • 每层神经元都与下一层全连接
  • 使用非线性激活函数(如ReLU、sigmoid等)
  • 通过反向传播算法训练
  • 可以用于分类和回归问题

3. BP神经网络

类别 说明
基本定义 BP(Back Propagation)神经网络是一种基于误差反向传播算法的多层前馈神经网络
工作原理 前向传播: • 输入数据从输入层向前传递 • 经过隐藏层处理 • 最终在输出层产生结果 反向传播: • 计算实际输出与期望输出的误差 • 误差从输出层向输入层反向传播 • 不断调整网络权重和偏置
学习过程 1. 初始化网络权重和偏置 2. 输入训练样本 3. 计算实际输出 4. 计算误差 5. 反向传播更新参数 6. 重复步骤2-5直到满足条件
主要特点 • 具有非线性映射能力 • 自学习和自适应能力 • 泛化能力强 • 容错性好
关键参数 • 学习率 • 隐藏层数量 • 每层神经元数量 • 激活函数 • 迭代次数
优点 • 适用性广 • 拟合能力强 • 可以解决复杂的非线性问题
缺点 • 可能陷入局部最小值 • 训练时间可能较长 • 网络结构难以确定 • 可能出现过拟合
应用领域 • 模式识别 • 预测分析 • 图像处理 • 语音识别 • 自动控制

三、卷积神经网络

1. 卷积神经网络概述

2. 卷积神经网络层次结构

2-1 输入层
2-2 卷积层
2-3 池化层
2-4 全连接层
2-5 输出层

3. 经典卷积神经网络

4. 卷积神经网络的应用



四、循环神经网络

五、生成对抗网络

六、机器学习PAI平台简单实现

相关推荐
CodeJourney.7 分钟前
ChemBlender:科研绘图创新解决方案
数据库·人工智能·信息可视化·excel
电鱼智能的电小鱼11 分钟前
产线视觉检测设备技术方案:基于EFISH-SCB-RK3588/SAIL-RK3588的国产化替代赛扬N100/N150全场景技术解析
linux·人工智能·嵌入式硬件·计算机视觉·视觉检测·实时音视频
妄想成为master17 分钟前
计算机视觉----基于锚点的车道线检测、从Line-CNN到CLRNet到CLRKDNet 本文所提算法Line-CNN 后续会更新以下全部算法
人工智能·计算机视觉·车道线检测
夜幕龙26 分钟前
LeRobot 项目部署运行逻辑(七)—— ACT 在 Mobile ALOHA 训练与部署
人工智能·深度学习·机器学习
未来之窗软件服务1 小时前
人体肢体渲染-一步几个脚印从头设计数字生命——仙盟创梦IDE
开发语言·ide·人工智能·python·pygame·仙盟创梦ide
Echo``1 小时前
40:相机与镜头选型
开发语言·人工智能·深度学习·计算机视觉·视觉检测
Christo31 小时前
关于在深度聚类中Representation Collapse现象
人工智能·深度学习·算法·机器学习·数据挖掘·embedding·聚类
Apache RocketMQ1 小时前
Apache RocketMQ ACL 2.0 全新升级
人工智能
QX_hao1 小时前
【project】--数据挖掘
人工智能·数据挖掘
showmethetime1 小时前
matlab提取脑电数据的五种频域特征指标数值
前端·人工智能·matlab