Part1: 深度学习概述:(链接:结论和深度学习概述)
主要介绍了从专家系统到机器学习、从传统机器学习到深度学习的变化历程,以及深度学习的能与不能。一些名词概念的区别简单总结如下:
1. 专家系统:根据专家人工定义的规则,进行推理判断,解决问题。
机器学习:机器从数据中提取知识自动训练,解决问题。
2. 监督学习:数据标记已知,目的在于学习输入。
无监督学习:数据标记未知,目的在于发现数据中模式或有意义的信息。
半监督学习:部分数据标记已知,是监督学习和无监督学习的混合。
强化学习:数据标记未知但知道与输出目标相关的反馈,适用决策类问题
3. 深度学习的“不能”与解释性:
稳定性低、可调试性差>>找得到 “对症下药” ,出问题快速准确纠错
参数不透明、机器偏见>>看得懂 不再“对牛弹琴”,算法+人的知识体系
增量型差、推理能力差>>留得下 “站在巨人的肩膀上”,越学越聪明
4. 浅层神经网络:
生物神经元、M-P神经元
万有逼近定理:如果一个隐层包含足够多的神经元,三层前馈神经网络(输入-隐层-输出)能以任意任意精度逼近任意预定的连续函数
Part2: 李沐课程学习:(链接:https://link.zhihu.com/?target=http://courses.d2l.ai/zh-v2/)
一、代码练习环境
在谷歌 Colab 上的 Jupyter 笔记本环境完成 pytorch 代码练习,使用方法参考:https://www.cnblogs.com/lfri/p/10471852.html
二、数据操作
导入 torch
import torch
张量:表示由一个数值组成的数组,这个数组可能有多个维度。具有一个轴的张量对应数学上的向量。具有两个轴的张量对应数学上的矩阵。具有两个轴以上的张量没有特殊的数学名称。
使用arange
创建一个行向量x
。这个行向量包含从0开始的前12个整数,默认创建为浮点数。张量中的每个值都称为张量的元素。
x = torch.arange(12)
x.shape#通过张量的
shape
属性来访问张量的形状 (沿每个轴的长度)。x.numel()X = x.reshape(3, 4)