清华青年AI自强项目核心内容总结

2023-11-23 20:30

本文主要是介绍清华青年AI自强项目核心内容总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 讲座梗概
    • 第1讲:AI鸟瞰与升级指南
    • 第2讲:机器学习入门
    • 第3讲:经典神经网络
    • 第4讲:深度神经网络
    • 第5讲:卷积神经网络
    • 第6讲:视觉分类任务
    • 第7讲:视觉探测任务
    • 第8讲:实例与调参

本文主要梳理总结学习清华大学青年AI自强项目中的核心知识内容,各位读者可以根据需要按图索骥,enjoy!

讲座梗概


  • 第1讲:AI鸟瞰与升级指南
  • 第2讲:机器学习入门
  • 第3讲:经典神经网络
  • 第4讲:深度神经网络
  • 第5讲:卷积神经网络
  • 第6讲:视觉分类任务
  • 第7讲:视觉探测任务
  • 第8讲:实例与调参

第1讲:AI鸟瞰与升级指南

主要讲了项目背景及当下AI现状,新手学习路径及方法建议。

当前新手学习AI面临的问题:理工科知识不友好,数学门槛过重,解决方案是:

  1. 不讲证明
  2. 以能懂能用为目标,画出知识最小包络
  3. 说人话,减少学术词汇,实例形象易懂

此课程面向对象,适合于对AI感兴趣的任意背景同学,极大降低新手学习入门门槛。有深入了解原理需求的读者可按以下步骤进阶:

  • 学习互助小组,了解入门
  • 做项目,实操领会
  • 打比赛,实战进阶
  • 追论文,发论文,学术前沿

建议学习策略

  • 推荐学习平台:Coursera, github, arxiv, papers with code
  • 理论是用的,不是纯学的,类似英语语言学习,要多与实践结合
  • 内功:算法,外功:代码
  • 找好基友,同道中人讨论前行,连滚带爬往前走
  • 合理追求quick win,设置小目标控制点,感受成就感与前进
  • 设置deadline,人类前进的最大动力

第2讲:机器学习入门

主要讲了机器学习总体框架,以对知识地图有个宏观了解。

  • 大框架:收集数据、选取特征,进行标注,拟合数据,进行预测
  • 小框架:数据矩阵描述,可视化与归一化,决策边界,sigmoid激活函数,损失函数评价模型,梯度下降优化,过拟合与泛化,正则化

结合案例,生动形象地讲解了机器学习常用核心概念:

  • 特征、数据集:数据准备及特征提取思路
  • 归一化:数据预处理,统一量纲,加快收敛
  • 决策边界:进行分类的卡尺
  • 激活函数:进行非线性化处理,增大模型表达能力
  • 损失函数:评价输出结果好坏
  • 梯度下降:回溯更新参数
  • 过拟合、欠拟合和泛化:训练模型经常遇到的效果平衡

第3讲:经典神经网络

主要讲了前向传播和反向传播的概念理解和公式推导,神经网络的广义性(可拟合任意函数)。

此章节为深度学习的理论核心,可根据课件反复研读实验,务必理解透彻。

第4讲:深度神经网络

主要讲了随着神经网络深度的不断叠加,出现的问题与解决方案。

  • 梯度消失、梯度爆炸
    • 解决:换激活函数、更新初始化方法
  • 过拟合
    • 解决:正则化、学习率衰减
  • 数据集样本少
    • 解决:数据增强,人造各种数据或者各种渠道购买更多真实数据
  • 处理大数据的方法
    • 解决:mini batch和batch norm

第5讲:卷积神经网络

主要讲了计算机视觉中核心卷积神经网络的原理、前向传播,广泛应用于分类、探测、语义分割、实例分割、跟踪等任务。

  • 分类:识别整体图片的类别
  • 探测:识别区域图片的类别并框选出类别所处图片位置
  • 跟踪:动态跟踪视频中某一类别的位置,并实时框选出来
  • 语义分割:将整体图片分区域归类,如大地、车、天空、树
  • 实例分割:在语义分割基础上,对归类进一步细分实例化,如车A、车B、树A、树B

概要讲述了在以上任务中,基于卷积神经网络的具体模型设计应用,并练习一个典型卷积神经网络。

第6讲:视觉分类任务

主要讲了分类任务中的IMAGENET挑战赛中涌现出的优秀模型,各种模型的核心工作是做不同姿势的卷积,走两条路:

  • 提高精度
    • LeNet5,起点,CNN,tanh激活
    • AlexNet2012,深度神经网络与大数据的首次触电,用relu加深了网络,用GPU训练起了大数据
    • ZFNet2013,过渡版本,帮AlexNet调了超参,换了卷积参数
    • VGG2014,标准模块加堆叠,换7x7卷积为3x3卷积堆叠,降低了参数量(人懒机器累)
    • GoogleNet2014,inception,变得更宽,1x1卷积压缩通道数,nxn变1xn和nx1卷积核分解,超参变更多(人累机器爽)
    • ResNet2015,打破限制,超越人类。解决加深网络问题,多加一条直连的线,保证无效神经元层直通,此时卷积核参数为0
    • ResNeXt2016,ResNet Plus,融合GoogleNet和VGG更进一层
    • SENet2017,集大成者,这届后比赛停止。Squeeze和Excitation,1X1卷积提取通道的影响,单独接个全连接网络,之后再叠加到下面的卷积网络。
  • 提高效率
    • 参数压缩
      • Deep Compression
        • 效果:VGG,50倍压缩参数,便于端侧运行。
        • 方法:剪枝,聚类压缩量化编码,霍夫曼编码
    • 结构优化
      • MobileNet,ShuffleNet

第7讲:视觉探测任务

主要讲了分类、定位、探测任务的定义,通过将未知化为已知,将探测问题转化为分类问题:两段论方法,先将整体图片进行滑窗选取候选区图,送入分类网络进行判断,从而输出滑窗位置和类别。

探测任务两段论的开山鼻祖是R-CNN网络,在此基础上Fast R-CNN和Faster R-CNN等网络,主要技术手段有:

  • 滑窗:不断从整体图片按设定的参数循环切分选取图片子片段。
  • SS(Selective Search):一种传统机器学习算法,根据相似度合并筛选候选窗,显著减少候选窗个数,输出大概2000个候选窗
  • NMS(Non-Max Suppression):非最大值抑制,即除了最大的都不要,类似于max pooling,进一步减少候选窗
  • 区域映射:根据映射关系直接在FM域进行候选窗特征提取。(Fast R-CNN)
  • ROI:统一输出特征维度(Fast R-CNN)
  • loss融合:利用softmax将位置误差和子框超参等融合一起,形成多任务损失函数(Fast R-CNN)
  • RPN(Range Process Network):区域处理网络替代SS模块,减小候选窗到300个(Faster R-CNN)
  • 训练:将候选窗送入分类网络,分开训练。

探测任务的另一个分支方法是端到端方法,代表作YOLO 2016(You Only Look Once),能有效避免两段论方法存在的问题。主要技术手段:

  • 分而治之:提前划分子区域,对每个区域由目标的label建立特征提取器
  • 输出多维label:有目标的概率、bbox参数、目标属于类比x1的概率、目标属于类别x2的概率…
  • label升级:增加相应的anchor box(不同目标对应的box大小),以解决一个子框内出现多个目标的场景

第8讲:实例与调参

无公开视频资料。

这篇关于清华青年AI自强项目核心内容总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/420549

相关文章

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应