【2021.02.16】pytorch导论
本次学习来源为:https://www.bilibili.com/video/BV1Y7411d7Ys?p=1
人工智能/机器学习实现的功能
由信息推出结论
由抽象推出预测
由算法替代大脑
监督学习:需要已经打上标签的数据集(labeled dataset)
运用到的算法:贪心、穷举、分治、动态规划
四种学习系统的关系
人工智能>机器学习>表示学习>深度学习
机器学习:基于统计
深度学习:机器学习的分支
如何设计一个学习系统
基于规则的系统:输入->手工设计程序->输出
缺点:不够“智能”,规则会越来越多,以至于越来越难维护
经典机器学习:输入->手工特征提取(将其变为向量/张量)->建立映射关系(找到f(x)函数,使得y=f(x))->输出y
表示学习:将特征提取交给机器,获得label,feature和学习器是分开训练的
维度诅咒:feature越多,需要的数据量越大,采样的数据需要足够多
解决方法:高维映射(降低)到低维,节约成本
深度学习:将特征换成简单特征,指出它的简单特征(例如它是一个语音/它是一张照片)->设计一个额外的层用于提取特征->接入到学习器(神经网络)
对整个模型进行训练,端到端的训练
越来越多的应用需要无结构的数据,所以需要用到深度学习
神经网络
神经是分层的,分表层深层
开始只有单层,后来将神经元连接起来,构成人工神经网络
后来有了反向传播的概念,反向传播的核心是“计算图”
计算图的每一步都进行原子计算(单次的加减乘除)
得到结果是一个前馈过程/正向传播
因为每一步都是原子计算,因此可以对每一部进行偏导计算
例如在下图中,求方框中的公式结果,分别算出路径上的偏导,最后通过链式求导的方法得到结果
到达损失函数路径上的导数求和 ,例如其中e对b的偏导,是两条路径之和所得,
而e对a的偏导只有一条路径,所以只需要路径上的两段偏导之积即可得到结果
在图上传播这个导数,一一算出原子计算的偏导