课程概述
Q&A
1. 什么是神经网络?什么是深度学习?它们和人工智能有何关系?
人工智能的发展经历了逻辑推理、专家系统、机器学习三个阶段。机器学习是人工智能领域中目前最活跃的一个分支,神经网络是机器学习中的一种方法,深度学习又是在神经网络的基础上发展起来的。在最近数年中,计算机视觉、语音识别、自然语言处理、和机器人等领域所取得的惊人的进展,都离不开深度学习,它是这一轮人工智能热潮的核心驱动力量,已经成为人工智能领域最重要的技术之一。深度学习不仅改变了计算领域,也为智能制造、交通物流、医疗健康、文化教育、金融财务、安防警戒、农业、通信、文学/艺术创作等其他多个领域提供了强大的新工具。可以说,深度学习正在、或将要改变科学和人类努力的各个领域。
2. 什么是TensorFlow? 为什么要学习TensorFlow2.0 版本?
TensorFlow就是谷歌公司推出的一款高效的人工智能开源框架,自从2015年11月发布以来,已经成为全世界最广泛使用的深度学习库。很多以前难以实现的大规模人工智能任务,都可以借助它来实现。但是,对于初学者而言,TensorFlow1.x不太容易学习和掌握。
2019年10月正式发布的TensorFlow2.0版本,是对TensorFlow1.x版本彻底的、革命性的改造,它非常的简单、清晰、好用,并且容易扩展,极大地降低了深度学习编程的门槛,使得普通人也能够体验开发人工智能应用程序的乐趣。如果你是刚刚开始接触人工智能领域的小白,那么,现在正是开启学习之路的最佳时机。
3. 为什么要学习这门课?
近年来,随着大数据的快速积累、计算资源的成熟发展、以及学习算法的发展创新,人工智能技术在多个领域取得重大突破,已经成为经济发展的新引擎,被视为推动现代社会进步的主要核心技术力量之一,它正在为农业、医疗、教育、能源、国防等诸多领域提供大量新的发展机遇。
2017年7月20日,国务院印发《新一代人工智能发展规划》,鼓励高校拓宽人工智能专业教育内容,重视人工智能与数学、计算机科学、物理学、生物学、心理学、社会学、法学等学科专业教育的交叉融合,培养“人工智能×专业”复合型人才。因此,任何专业的学生,都应该掌握一些人工智能的知识。
4. 这门课程的主要内容是什么?学习这门课程后具备什么能力?
课程以神经网络与深度学习的理论及其实例为主线,内容包括Python编程基础、多维数组和数据可视化、TensorFlow2.0深度学习框架、回归问题、分类问题、人工神经网络和卷积神经网络。我们将循序渐进、抽丝剥茧的详细介绍算法原理,并为每个重要的理论知识点精心设计了对应的TensorFlow实例,使学习者具备扎实的理论基础和良好的应用能力,能够根据实际任务的需求,合理选择和使用数据,构建、训练和测试模型,并调整模型或参数,优化和改进系统;能够对实验结果进行分析和解释,评估模型精度和误差,具备人工智能应用软件的方案设计和开发能力。
5. 这门课程面向的学习对象?需要有什么基础?
这门课程面向多种学科专业、多层次的学习者。只要你具备以下基础,就可以尝试开始学习:
(1) 高等数学、线性代数、概率论的基本知识。知道导数、梯度、向量、矩阵、概率等基本概念及运算方法。
(2) 学习过“大学计算机基础”或者其他类似的课程,知道计算机系统的基础知识。
(3) 学习过任何一门编程语言。了解程序设计的基本方法,能够正确的编写出基本的练习程序。
6. 课程特色和亮点
(1) 聚焦于神经网络和深度学习,基本理论适度。
在理论方面,力求做到深入浅出、够用就好。另外,我们会把一些比较复杂的理论,或者数学推理的过程,以补充资料的形式,分享给大家,以满足部分学习者更深层次的要求。
(2) 面向实践应用,迭代式程序案例。
为了避免理论与实践脱节,这门课程是以“基本原理+实例”的方式来组织的,每一部分基本原理的后面,都有与之紧密相关的实例。这些实例的设计是从小到大,循序渐进的。通过这样不断的积累和迭代,帮助大家逐渐具备较大规模的智能系统的设计、开发方法能力。
(3)工具环境简单,易于配置和管理
课程实例采用Python语言和tensorflow2.0开发框架实现,开发环境选择Anaconda。这些语言、工具和环境的学习门槛相对来说比较低,非常适合初学者入门。而且它们也都是目前最主流的方法和工具,不仅学习资源丰富,而且非常强大和好用。
7. 每次开课的内容一样吗?学期结束后会关闭课程吗?
我们的课程一直在持续改进中,每个新的学期,我们都会及时总结上一轮开课过程中积累的经验和存在的问题,对课程内容进行适当的调整、更新和补充。
第三次开课中,我们主要更新了以下内容:
(1) 第2讲中 2.2 - 2.7 节,将TensorFlow的版本从2.0升级到2.4,且增加了安装TensorFlow 2.4GPU版本的内容。
(2)增加了11.6、14.5、14.6节的视频,这几节在第二次开课中仅提供了文档。
(3)更新了部分测试题、讨论题和作业题,使得它们和课程的内容更加的贴合,描述也更加严谨规范。
为了便于大家学习,课程结束后我们不会完全关闭课程,仍然可以浏览课程视频和文档,只是无法提交作业、参与课堂讨论。错过了本次课程开课时间的同学,可以先根据视频和文档自主学习,完成并保存作业成果,在下次开课时提交作业、参与讨论。
8. 这门课程都是录播课吗?有直播课吗?
我们计划在11月-12月推出直播课,梳理课程脉络,解析重点和难点,敬请关注。
显示全部
课程大纲
01
人工智能的起源和发展
课时
1.1 人工智能的诞生
1.2 人工智能的发展
1.3 机智过人or技不如人?
02
TensorFlow2.0环境的安装与使用
课时
2.1 开发环境介绍
2.2 Anaconda的下载与安装
2.3 Hello,World
2.4 使用Jupyter Notebook
2.5 包管理和环境管理
2.6 安装TensorFlow2.0
*2.7 安装TensorFlow2.0 GPU版本
03
Python语言基础(1)
课时
3.1 初识Python
3.2 第一个Python程序
3.3 输入和输出
3.4 常量、变量和表达式
3.5 程序控制语句
04
Python语言基础(2)
课时
4.1内置数据结构
4.2 函数和模块
4.3 Python面向对象编程
4.4 文件
4.5 异常处理
4.6 上下文管理器
05
NumPy科学计算库
课时
5.1 多维数组
5.2 创建NumPy数组
5.3 数组运算
5.4 矩阵和随机数
06
Matplotlib数据可视化
课时
6.1 Matplotlib绘图基础
6.2 散点图
6.3 折线图和柱形图
6.4 实例:波士顿房价数据集可视化
6.5 实例:鸢尾花数据集可视化
07
数字图像基础
课时
7.1 数字图像基本概念
7.2 Pillow图像处理库
7.3 实例:手写数字数据集MNIST
08
Tensorflow基础
课时
8.1 Tensorflow2.0特性
8.2 创建张量
8.3 维度变换
8.4 部分采样
8.5 张量运算
*8.6使用GPU
09
回归问题
课时
9.1 机器学习基础
9.2 一元线性回归
9.3 实例:解析法实现一元线性回归
9.4 多元线性回归
9.5 实例:解析法实现多元线性回归
*9.6 实例:三维模型可视化
10
梯度下降法
课时
10.1 梯度下降法基本原理
10.2 实例:梯度下降法实现线性回归问题
10.3 TensorFlow的可训练变量和自动求导机制
10.4 实例:TensorFlow实现梯度下降法
10.5 模型评估
10.6 实例:波士顿房价预测
11
分类问题
课时
11.1 逻辑回归
11.2 实例:实现一元逻辑回归
11.3 线性分类器
11.4 实例:实现多元逻辑回归
11.5 多分类问题
*11.6 实例:实现多分类
12
人工神经网络(1)
课时
12.1 神经元与感知机
12.2 实例:单层神经网络实现鸢尾花分类
12.3 多层神经网络
12.4 误差反向传播算法
12.5 激活函数
12.6 实例:多层神经网络实现鸢尾花分类
13
人工神经网络(2)
课时
13.1 小批量梯度下降
13.2 梯度下降法的优化
13.3 keras和tf.keras
13.4 Sequential模型
13.5 实例:Sequential模型实现手写数字识别
13.6 实例:模型的保存与加载
14
卷积神经网络
课时
14.1 深度学习基础
14.2 图像识别与深度学习
14.3 图像卷积
14.4 卷积神经网络
14.5 实例:卷积神经网络实现手写数字识别
14.6 实例:卷积神经网络识别cifar10图片